From 1b4066b100fb4981d85dd424501fdf0dc5caa3ea Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 10 Oct 2024 19:56:50 +0200
Subject: [PATCH 01/88] feat: add new UI elements

---
 .eslintrc.json                                |    16 +-
 .prettierrc                                   |     1 +
 package.json                                  |     7 +-
 pnpm-lock.yaml                                | 12869 +++++++++++-----
 postcss.config.cjs                            |     4 +-
 src/modal/ConnectorButton.svelte              |    12 +-
 src/modal/Modal.svelte                        |   293 +-
 src/modal/components/FallbackMobile.svelte    |    32 +
 src/modal/components/Header.svelte            |    27 +
 src/modal/components/InstallWallet.svelte     |    29 +
 src/modal/components/Line.svelte              |     5 +
 src/modal/components/buttons/Button.svelte    |    22 +
 .../components/buttons/IconButton.svelte      |    19 +
 .../components/buttons/LargeButton.svelte     |    20 +
 src/modal/components/buttons/Link.svelte      |     9 +
 .../components/buttons/WalletButton.svelte    |    28 +
 src/modal/components/icons/CaretIcon.svelte   |     3 +
 src/modal/components/icons/CloseIcon.svelte   |     4 +
 src/modal/components/icons/ReloadIcon.svelte  |     4 +
 .../components/icons/SuccessCheckIcon.svelte  |     4 +
 src/modal/components/icons/WarningIcon.svelte |     3 +
 .../components/icons/brands/AppleIcon.svelte  |     5 +
 .../components/icons/brands/BraveIcon.svelte  |    22 +
 .../components/icons/brands/ChromeIcon.svelte |    16 +
 .../components/icons/brands/EdgeIcon.svelte   |    45 +
 .../icons/brands/FirefoxIcon.svelte           |   110 +
 .../components/icons/brands/PlayStore.svelte  |    33 +
 src/modal/layouts/Connecting.svelte           |    21 +
 .../ExtensionDownloadItem.svelte              |    19 +
 .../ExtensionDownloadList.svelte              |    16 +
 src/modal/layouts/FailedLogin.svelte          |    30 +
 src/modal/layouts/SuccessfulLogin.svelte      |    12 +
 src/modal/layouts/WalletList.svelte           |    13 +
 .../ArgentDownload/ArgentDownload.svelte      |    48 +
 .../ArgentDownload/ArgentDownloadItem.svelte  |    25 +
 .../graphics/ArgentXGraphic.svelte            |    45 +
 .../graphics/MobileGraphic.svelte             |    27 +
 .../layouts/argent/ArgentMobileQR.svelte      |    17 +
 src/modal/layouts/argent/QRCode.svelte        |   469 +
 src/tailwind.css                              |     3 +
 src/theme.css                                 |   282 +-
 tailwind.config.cjs                           |    14 -
 tailwind.config.js                            |    26 +
 vite.config.ts                                |    16 +
 44 files changed, 10929 insertions(+), 3796 deletions(-)
 create mode 100644 src/modal/components/FallbackMobile.svelte
 create mode 100644 src/modal/components/Header.svelte
 create mode 100644 src/modal/components/InstallWallet.svelte
 create mode 100644 src/modal/components/Line.svelte
 create mode 100644 src/modal/components/buttons/Button.svelte
 create mode 100644 src/modal/components/buttons/IconButton.svelte
 create mode 100644 src/modal/components/buttons/LargeButton.svelte
 create mode 100644 src/modal/components/buttons/Link.svelte
 create mode 100644 src/modal/components/buttons/WalletButton.svelte
 create mode 100644 src/modal/components/icons/CaretIcon.svelte
 create mode 100644 src/modal/components/icons/CloseIcon.svelte
 create mode 100644 src/modal/components/icons/ReloadIcon.svelte
 create mode 100644 src/modal/components/icons/SuccessCheckIcon.svelte
 create mode 100644 src/modal/components/icons/WarningIcon.svelte
 create mode 100644 src/modal/components/icons/brands/AppleIcon.svelte
 create mode 100644 src/modal/components/icons/brands/BraveIcon.svelte
 create mode 100644 src/modal/components/icons/brands/ChromeIcon.svelte
 create mode 100644 src/modal/components/icons/brands/EdgeIcon.svelte
 create mode 100644 src/modal/components/icons/brands/FirefoxIcon.svelte
 create mode 100644 src/modal/components/icons/brands/PlayStore.svelte
 create mode 100644 src/modal/layouts/Connecting.svelte
 create mode 100644 src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte
 create mode 100644 src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
 create mode 100644 src/modal/layouts/FailedLogin.svelte
 create mode 100644 src/modal/layouts/SuccessfulLogin.svelte
 create mode 100644 src/modal/layouts/WalletList.svelte
 create mode 100644 src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
 create mode 100644 src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte
 create mode 100644 src/modal/layouts/argent/ArgentDownload/graphics/ArgentXGraphic.svelte
 create mode 100644 src/modal/layouts/argent/ArgentDownload/graphics/MobileGraphic.svelte
 create mode 100644 src/modal/layouts/argent/ArgentMobileQR.svelte
 create mode 100644 src/modal/layouts/argent/QRCode.svelte
 create mode 100644 src/tailwind.css
 delete mode 100644 tailwind.config.cjs
 create mode 100644 tailwind.config.js

diff --git a/.eslintrc.json b/.eslintrc.json
index 66709ac..f71a23c 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -4,13 +4,23 @@
     "es2021": true,
     "node": true
   },
-  "extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
+  "overrides": [
+    {
+      "files": ["*.svelte"],
+      "parser": "svelte-eslint-parser",
+      "parserOptions": {
+        "parser": "@typescript-eslint/parser"
+      }
+    }
+  ],
+  "extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended", "plugin:svelte/recommended"],
   "parser": "@typescript-eslint/parser",
   "parserOptions": {
     "ecmaVersion": "latest",
-    "sourceType": "module"
+    "sourceType": "module",
+    "extraFileExtensions": [".svelte"]
   },
-  "plugins": ["@typescript-eslint"],
+  "plugins": ["@typescript-eslint", "prettier"],
   "rules": {
     "@typescript-eslint/no-explicit-any": "off",
     "@typescript-eslint/no-extra-semi": "off",
diff --git a/.prettierrc b/.prettierrc
index 67ba001..23182d1 100644
--- a/.prettierrc
+++ b/.prettierrc
@@ -1,5 +1,6 @@
 {
   "useTabs": false,
+  "tabWidth": 2,
   "trailingComma": "all",
   "singleQuote": false,
   "semi": false,
diff --git a/package.json b/package.json
index a01af0f..580a8fa 100644
--- a/package.json
+++ b/package.json
@@ -60,6 +60,7 @@
     "dev": "vite build --watch"
   },
   "dependencies": {
+    "@argent/x-ui": "file:../x-ui",
     "@starknet-io/get-starknet": "^4.0.0",
     "@starknet-io/get-starknet-core": "^4.0.0",
     "@starknet-io/types-js": "^0.7.7",
@@ -83,7 +84,8 @@
     "@types/async-retry": "^1.4.5",
     "@types/lodash-es": "^4.17.8",
     "@types/node": "^20.5.7",
-    "@typescript-eslint/eslint-plugin": "^6.5.0",
+    "@typescript-eslint/eslint-plugin": "^6.21.0",
+    "@typescript-eslint/parser": "^8.8.1",
     "@walletconnect/ethereum-provider": "^2.11.0",
     "@walletconnect/jsonrpc-provider": "^1.0.13",
     "@walletconnect/signer-connection": "^2.11.0",
@@ -92,6 +94,8 @@
     "autoprefixer": "^10.4.7",
     "eslint": "^8.48.0",
     "eslint-config-next": "^13.4.19",
+    "eslint-plugin-prettier": "^5.2.1",
+    "eslint-plugin-svelte": "^2.44.1",
     "husky": "^8.0.3",
     "lint-staged": "^14.0.1",
     "postcss": "^8.4.21",
@@ -101,6 +105,7 @@
     "semantic-release": "^21.1.1",
     "svelte": "^4.0.0",
     "svelte-check": "^3.5.1",
+    "svelte-eslint-parser": "^0.41.1",
     "svelte-preprocess": "^5.0.4",
     "tailwindcss": "^3.1.6",
     "tslib": "^2.4.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 8eda2ca..648679f 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -8,6 +8,9 @@ importers:
 
   .:
     dependencies:
+      '@argent/x-ui':
+        specifier: file:../x-ui
+        version: file:../x-ui(cxhmlpreo3ggzh3aziih4sur7e)
       '@starknet-io/get-starknet':
         specifier: ^4.0.0
         version: 4.0.0
@@ -60,9 +63,12 @@ importers:
       '@semantic-release/git':
         specifier: ^10.0.1
         version: 10.0.1(semantic-release@21.1.2(typescript@5.5.4))
+      '@sveltejs/adapter-auto':
+        specifier: ^3.2.5
+        version: 3.2.5(@sveltejs/kit@2.6.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))
       '@sveltejs/vite-plugin-svelte':
         specifier: ^2.2.0
-        version: 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15))
+        version: 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
       '@tsconfig/svelte':
         specifier: ^5.0.0
         version: 5.0.4
@@ -76,11 +82,14 @@ importers:
         specifier: ^20.5.7
         version: 20.14.15
       '@typescript-eslint/eslint-plugin':
-        specifier: ^6.5.0
-        version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)
+        specifier: ^6.21.0
+        version: 6.21.0(@typescript-eslint/parser@8.8.1(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)
+      '@typescript-eslint/parser':
+        specifier: ^8.8.1
+        version: 8.8.1(eslint@8.57.0)(typescript@5.5.4)
       '@walletconnect/ethereum-provider':
         specifier: ^2.11.0
-        version: 2.14.0(react@18.3.1)
+        version: 2.14.0(@types/react@18.3.11)(react@18.3.1)
       '@walletconnect/jsonrpc-provider':
         specifier: ^1.0.13
         version: 1.0.14
@@ -102,6 +111,12 @@ importers:
       eslint-config-next:
         specifier: ^13.4.19
         version: 13.5.6(eslint@8.57.0)(typescript@5.5.4)
+      eslint-plugin-prettier:
+        specifier: ^5.2.1
+        version: 5.2.1(eslint@8.57.0)(prettier@3.3.3)
+      eslint-plugin-svelte:
+        specifier: ^2.44.1
+        version: 2.44.1(eslint@8.57.0)(svelte@4.2.18)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4))
       husky:
         specifier: ^8.0.3
         version: 8.0.3
@@ -129,6 +144,9 @@ importers:
       svelte-check:
         specifier: ^3.5.1
         version: 3.8.5(@babel/core@7.25.2)(postcss-load-config@4.0.2(postcss@8.4.41)(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4)))(postcss@8.4.41)(svelte@4.2.18)
+      svelte-eslint-parser:
+        specifier: ^0.41.1
+        version: 0.41.1(svelte@4.2.18)
       svelte-preprocess:
         specifier: ^5.0.4
         version: 5.1.4(@babel/core@7.25.2)(postcss-load-config@4.0.2(postcss@8.4.41)(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4)))(postcss@8.4.41)(svelte@4.2.18)(typescript@5.5.4)
@@ -143,13 +161,13 @@ importers:
         version: 5.5.4
       vite:
         specifier: ^4.3.8
-        version: 4.5.3(@types/node@20.14.15)
+        version: 4.5.3(@types/node@20.14.15)(terser@5.34.1)
       vite-plugin-dts:
         specifier: ^3.0.0
-        version: 3.9.1(@types/node@20.14.15)(rollup@4.20.0)(typescript@5.5.4)(vite@4.5.3(@types/node@20.14.15))
+        version: 3.9.1(@types/node@20.14.15)(rollup@4.20.0)(typescript@5.5.4)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
       vitest:
         specifier: ^1.6.0
-        version: 1.6.0(@types/node@20.14.15)
+        version: 1.6.0(@types/node@20.14.15)(terser@5.34.1)
       ws:
         specifier: ^8.8.1
         version: 8.18.0
@@ -167,14 +185,68 @@ packages:
     resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
     engines: {node: '>=6.0.0'}
 
+  '@argent/x-multicall@7.1.0':
+    resolution: {integrity: sha512-65y2pXtsjACIYqyjJ75FMbQcnv/5MnONyS3yN+0JgLLNqCEiGrLbGwEZ/E+Esy0qPF1WBqzdx8l3izj5l2zAwQ==}
+    peerDependencies:
+      typescript: ^5.0.0
+
+  '@argent/x-shared@1.39.0':
+    resolution: {integrity: sha512-Gr4siqa0ht6O0BaXwR1UV/waXDWIJSkdUZKjFmkZntQ08+406e9DuV4q1p7del6tQUdeX/JkaXUis6ZbrGm3+w==}
+    peerDependencies:
+      '@scure/base': ^1.1.1
+      '@scure/bip39': ^1.2.1
+      async-retry: ^1.3.3
+      lodash-es: ^4.17.21
+      ua-parser-js: ^1.0.38
+      url-join: ^5.0.0
+      zod: ^3.23.8
+
+  '@argent/x-ui@file:../x-ui':
+    resolution: {directory: ../x-ui, type: directory}
+    peerDependencies:
+      '@argent/x-shared': ^1.39.0
+      '@chakra-ui/react': ^2.8.2
+      '@emotion/react': ^11.11.3
+      '@emotion/styled': ^11.11.0
+      '@scure/bip39': ^1.2.1
+      '@starknet-io/types-js': ^0.7.7
+      '@zxcvbn-ts/core': ^3.0.0
+      '@zxcvbn-ts/language-common': ^2.0.1 || ^3.0.0
+      '@zxcvbn-ts/language-en': ^2.1.0 || ^3.0.0
+      colord: ^2.9.2
+      emittery: ^1.0.1
+      framer-motion: ^11.0.5
+      history: ^5.3.0
+      lightweight-charts: ^4.2.0
+      lodash-es: ^4.17.21
+      object-hash: ^3.0.0
+      popmotion: ^11.0.5
+      react: ^18.0.0
+      react-copy-to-clipboard: ^5.0.4
+      react-dom: ^18.0.0
+      react-router-dom: ^6.0.1
+      react-spring-bottom-sheet: 3.5.0-alpha.0
+      react-virtuoso: ^4.7.2
+      starknet: 6.11.0
+      swr: ^1.3.0
+      zod: ^3.23.8
+
   '@babel/code-frame@7.24.7':
     resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/code-frame@7.25.7':
+    resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/compat-data@7.25.2':
     resolution: {integrity: sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/compat-data@7.25.8':
+    resolution: {integrity: sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/core@7.25.2':
     resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==}
     engines: {node: '>=6.9.0'}
@@ -183,36 +255,127 @@ packages:
     resolution: {integrity: sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/generator@7.25.7':
+    resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==}
+    engines: {node: '>=6.9.0'}
+
+  '@babel/helper-annotate-as-pure@7.25.7':
+    resolution: {integrity: sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA==}
+    engines: {node: '>=6.9.0'}
+
+  '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7':
+    resolution: {integrity: sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/helper-compilation-targets@7.25.2':
     resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/helper-compilation-targets@7.25.7':
+    resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==}
+    engines: {node: '>=6.9.0'}
+
+  '@babel/helper-create-class-features-plugin@7.25.7':
+    resolution: {integrity: sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
+
+  '@babel/helper-create-regexp-features-plugin@7.25.7':
+    resolution: {integrity: sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
+
+  '@babel/helper-define-polyfill-provider@0.6.2':
+    resolution: {integrity: sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==}
+    peerDependencies:
+      '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+
+  '@babel/helper-member-expression-to-functions@7.25.7':
+    resolution: {integrity: sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/helper-module-imports@7.24.7':
     resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/helper-module-imports@7.25.7':
+    resolution: {integrity: sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/helper-module-transforms@7.25.2':
     resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
+  '@babel/helper-module-transforms@7.25.7':
+    resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
+
+  '@babel/helper-optimise-call-expression@7.25.7':
+    resolution: {integrity: sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==}
+    engines: {node: '>=6.9.0'}
+
+  '@babel/helper-plugin-utils@7.25.7':
+    resolution: {integrity: sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==}
+    engines: {node: '>=6.9.0'}
+
+  '@babel/helper-remap-async-to-generator@7.25.7':
+    resolution: {integrity: sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
+
+  '@babel/helper-replace-supers@7.25.7':
+    resolution: {integrity: sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
+
   '@babel/helper-simple-access@7.24.7':
     resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/helper-simple-access@7.25.7':
+    resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==}
+    engines: {node: '>=6.9.0'}
+
+  '@babel/helper-skip-transparent-expression-wrappers@7.25.7':
+    resolution: {integrity: sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/helper-string-parser@7.24.8':
     resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/helper-string-parser@7.25.7':
+    resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/helper-validator-identifier@7.24.7':
     resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/helper-validator-identifier@7.25.7':
+    resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/helper-validator-option@7.24.8':
     resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/helper-validator-option@7.25.7':
+    resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==}
+    engines: {node: '>=6.9.0'}
+
+  '@babel/helper-wrap-function@7.25.7':
+    resolution: {integrity: sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/helpers@7.25.0':
     resolution: {integrity: sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==}
     engines: {node: '>=6.9.0'}
@@ -221,4705 +384,7900 @@ packages:
     resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==}
     engines: {node: '>=6.9.0'}
 
+  '@babel/highlight@7.25.7':
+    resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==}
+    engines: {node: '>=6.9.0'}
+
   '@babel/parser@7.25.3':
     resolution: {integrity: sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==}
     engines: {node: '>=6.0.0'}
     hasBin: true
 
-  '@babel/template@7.25.0':
-    resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==}
+  '@babel/parser@7.25.8':
+    resolution: {integrity: sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==}
+    engines: {node: '>=6.0.0'}
+    hasBin: true
+
+  '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7':
+    resolution: {integrity: sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ==}
     engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
 
-  '@babel/traverse@7.25.3':
-    resolution: {integrity: sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==}
+  '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7':
+    resolution: {integrity: sha512-GDDWeVLNxRIkQTnJn2pDOM1pkCgYdSqPeT1a9vh9yIqu2uzzgw1zcqEb+IJOhy+dTBMlNdThrDIksr2o09qrrQ==}
     engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
 
-  '@babel/types@7.25.2':
-    resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==}
+  '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7':
+    resolution: {integrity: sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA==}
     engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
 
-  '@colors/colors@1.5.0':
-    resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
-    engines: {node: '>=0.1.90'}
+  '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7':
+    resolution: {integrity: sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.13.0
 
-  '@commitlint/cli@17.8.1':
-    resolution: {integrity: sha512-ay+WbzQesE0Rv4EQKfNbSMiJJ12KdKTDzIt0tcK4k11FdsWmtwP0Kp1NWMOUswfIWo6Eb7p7Ln721Nx9FLNBjg==}
-    engines: {node: '>=v14'}
-    hasBin: true
+  '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7':
+    resolution: {integrity: sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
 
-  '@commitlint/config-conventional@17.8.1':
-    resolution: {integrity: sha512-NxCOHx1kgneig3VLauWJcDWS40DVjg7nKOpBEEK9E5fjJpQqLCilcnKkIIjdBH98kEO1q3NpE5NSrZ2kl/QGJg==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-proposal-class-properties@7.18.6':
+    resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==}
+    engines: {node: '>=6.9.0'}
+    deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/config-validator@17.8.1':
-    resolution: {integrity: sha512-UUgUC+sNiiMwkyiuIFR7JG2cfd9t/7MV8VB4TZ+q02ZFkHoduUS4tJGsCBWvBOGD9Btev6IecPMvlWUfJorkEA==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-proposal-export-default-from@7.25.8':
+    resolution: {integrity: sha512-5SLPHA/Gk7lNdaymtSVS9jH77Cs7yuHTR3dYj+9q+M7R7tNLXhNuvnmOfafRIzpWL+dtMibuu1I4ofrc768Gkw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/ensure@17.8.1':
-    resolution: {integrity: sha512-xjafwKxid8s1K23NFpL8JNo6JnY/ysetKo8kegVM7c8vs+kWLP8VrQq+NbhgVlmCojhEDbzQKp4eRXSjVOGsow==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-proposal-nullish-coalescing-operator@7.18.6':
+    resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==}
+    engines: {node: '>=6.9.0'}
+    deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/execute-rule@17.8.1':
-    resolution: {integrity: sha512-JHVupQeSdNI6xzA9SqMF+p/JjrHTcrJdI02PwesQIDCIGUrv04hicJgCcws5nzaoZbROapPs0s6zeVHoxpMwFQ==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-proposal-optional-chaining@7.21.0':
+    resolution: {integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==}
+    engines: {node: '>=6.9.0'}
+    deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/format@17.8.1':
-    resolution: {integrity: sha512-f3oMTyZ84M9ht7fb93wbCKmWxO5/kKSbwuYvS867duVomoOsgrgljkGGIztmT/srZnaiGbaK8+Wf8Ik2tSr5eg==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2':
+    resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/is-ignored@17.8.1':
-    resolution: {integrity: sha512-UshMi4Ltb4ZlNn4F7WtSEugFDZmctzFpmbqvpyxD3la510J+PLcnyhf9chs7EryaRFJMdAKwsEKfNK0jL/QM4g==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-dynamic-import@7.8.3':
+    resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/lint@17.8.1':
-    resolution: {integrity: sha512-aQUlwIR1/VMv2D4GXSk7PfL5hIaFSfy6hSHV94O8Y27T5q+DlDEgd/cZ4KmVI+MWKzFfCTiTuWqjfRSfdRllCA==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-export-default-from@7.25.7':
+    resolution: {integrity: sha512-LRUCsC0YucSjabsmxx6yly8+Q/5mxKdp9gemlpR9ro3bfpcOQOXx/CHivs7QCbjgygd6uQ2GcRfHu1FVax/hgg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/load@17.8.1':
-    resolution: {integrity: sha512-iF4CL7KDFstP1kpVUkT8K2Wl17h2yx9VaR1ztTc8vzByWWcbO/WaKwxsnCOqow9tVAlzPfo1ywk9m2oJ9ucMqA==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-flow@7.25.7':
+    resolution: {integrity: sha512-fyoj6/YdVtlv2ROig/J0fP7hh/wNO1MJGm1NR70Pg7jbkF+jOUL9joorqaCOQh06Y+LfgTagHzC8KqZ3MF782w==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/message@17.8.1':
-    resolution: {integrity: sha512-6bYL1GUQsD6bLhTH3QQty8pVFoETfFQlMn2Nzmz3AOLqRVfNNtXBaSY0dhZ0dM6A2MEq4+2d7L/2LP8TjqGRkA==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-import-assertions@7.25.7':
+    resolution: {integrity: sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/parse@17.8.1':
-    resolution: {integrity: sha512-/wLUickTo0rNpQgWwLPavTm7WbwkZoBy3X8PpkUmlSmQJyWQTj0m6bDjiykMaDt41qcUbfeFfaCvXfiR4EGnfw==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-import-attributes@7.25.7':
+    resolution: {integrity: sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/read@17.8.1':
-    resolution: {integrity: sha512-Fd55Oaz9irzBESPCdMd8vWWgxsW3OWR99wOntBDHgf9h7Y6OOHjWEdS9Xzen1GFndqgyoaFplQS5y7KZe0kO2w==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-jsx@7.25.7':
+    resolution: {integrity: sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/resolve-extends@17.8.1':
-    resolution: {integrity: sha512-W/ryRoQ0TSVXqJrx5SGkaYuAaE/BUontL1j1HsKckvM6e5ZaG0M9126zcwL6peKSuIetJi7E87PRQF8O86EW0Q==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3':
+    resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/rules@17.8.1':
-    resolution: {integrity: sha512-2b7OdVbN7MTAt9U0vKOYKCDsOvESVXxQmrvuVUZ0rGFMCrCPJWWP1GJ7f0lAypbDAhaGb8zqtdOr47192LBrIA==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-optional-chaining@7.8.3':
+    resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/to-lines@17.8.1':
-    resolution: {integrity: sha512-LE0jb8CuR/mj6xJyrIk8VLz03OEzXFgLdivBytoooKO5xLt5yalc8Ma5guTWobw998sbR3ogDd+2jed03CFmJA==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-typescript@7.25.7':
+    resolution: {integrity: sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@commitlint/top-level@17.8.1':
-    resolution: {integrity: sha512-l6+Z6rrNf5p333SHfEte6r+WkOxGlWK4bLuZKbtf/2TXRN+qhrvn1XE63VhD8Oe9oIHQ7F7W1nG2k/TJFhx2yA==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-syntax-unicode-sets-regex@7.18.6':
+    resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
 
-  '@commitlint/types@17.8.1':
-    resolution: {integrity: sha512-PXDQXkAmiMEG162Bqdh9ChML/GJZo6vU+7F03ALKDK8zYc6SuAr47LjG7hGYRqUOz+WK0dU7bQ0xzuqFMdxzeQ==}
-    engines: {node: '>=v14'}
+  '@babel/plugin-transform-arrow-functions@7.25.7':
+    resolution: {integrity: sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@cspotcode/source-map-support@0.8.1':
-    resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
-    engines: {node: '>=12'}
+  '@babel/plugin-transform-async-generator-functions@7.25.8':
+    resolution: {integrity: sha512-9ypqkozyzpG+HxlH4o4gdctalFGIjjdufzo7I2XPda0iBnZ6a+FO0rIEQcdSPXp02CkvGsII1exJhmROPQd5oA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/aix-ppc64@0.21.5':
-    resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
-    engines: {node: '>=12'}
-    cpu: [ppc64]
-    os: [aix]
+  '@babel/plugin-transform-async-to-generator@7.25.7':
+    resolution: {integrity: sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/android-arm64@0.18.20':
-    resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [android]
+  '@babel/plugin-transform-block-scoped-functions@7.25.7':
+    resolution: {integrity: sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/android-arm64@0.21.5':
-    resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [android]
+  '@babel/plugin-transform-block-scoping@7.25.7':
+    resolution: {integrity: sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/android-arm@0.18.20':
-    resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==}
-    engines: {node: '>=12'}
-    cpu: [arm]
-    os: [android]
+  '@babel/plugin-transform-class-properties@7.25.7':
+    resolution: {integrity: sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/android-arm@0.21.5':
-    resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
-    engines: {node: '>=12'}
-    cpu: [arm]
-    os: [android]
+  '@babel/plugin-transform-class-static-block@7.25.8':
+    resolution: {integrity: sha512-e82gl3TCorath6YLf9xUwFehVvjvfqFhdOo4+0iVIVju+6XOi5XHkqB3P2AXnSwoeTX0HBoXq5gJFtvotJzFnQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.12.0
 
-  '@esbuild/android-x64@0.18.20':
-    resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [android]
+  '@babel/plugin-transform-classes@7.25.7':
+    resolution: {integrity: sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/android-x64@0.21.5':
-    resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [android]
+  '@babel/plugin-transform-computed-properties@7.25.7':
+    resolution: {integrity: sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/darwin-arm64@0.18.20':
-    resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [darwin]
+  '@babel/plugin-transform-destructuring@7.25.7':
+    resolution: {integrity: sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/darwin-arm64@0.21.5':
-    resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [darwin]
+  '@babel/plugin-transform-dotall-regex@7.25.7':
+    resolution: {integrity: sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/darwin-x64@0.18.20':
-    resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [darwin]
+  '@babel/plugin-transform-duplicate-keys@7.25.7':
+    resolution: {integrity: sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/darwin-x64@0.21.5':
-    resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [darwin]
+  '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7':
+    resolution: {integrity: sha512-HvS6JF66xSS5rNKXLqkk7L9c/jZ/cdIVIcoPVrnl8IsVpLggTjXs8OWekbLHs/VtYDDh5WXnQyeE3PPUGm22MA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
 
-  '@esbuild/freebsd-arm64@0.18.20':
-    resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [freebsd]
+  '@babel/plugin-transform-dynamic-import@7.25.8':
+    resolution: {integrity: sha512-gznWY+mr4ZQL/EWPcbBQUP3BXS5FwZp8RUOw06BaRn8tQLzN4XLIxXejpHN9Qo8x8jjBmAAKp6FoS51AgkSA/A==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/freebsd-arm64@0.21.5':
-    resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [freebsd]
+  '@babel/plugin-transform-exponentiation-operator@7.25.7':
+    resolution: {integrity: sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/freebsd-x64@0.18.20':
-    resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [freebsd]
+  '@babel/plugin-transform-export-namespace-from@7.25.8':
+    resolution: {integrity: sha512-sPtYrduWINTQTW7FtOy99VCTWp4H23UX7vYcut7S4CIMEXU+54zKX9uCoGkLsWXteyaMXzVHgzWbLfQ1w4GZgw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/freebsd-x64@0.21.5':
-    resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [freebsd]
+  '@babel/plugin-transform-flow-strip-types@7.25.7':
+    resolution: {integrity: sha512-q8Td2PPc6/6I73g96SreSUCKEcwMXCwcXSIAVTyTTN6CpJe0dMj8coxu1fg1T9vfBLi6Rsi6a4ECcFBbKabS5w==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-arm64@0.18.20':
-    resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [linux]
+  '@babel/plugin-transform-for-of@7.25.7':
+    resolution: {integrity: sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-arm64@0.21.5':
-    resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [linux]
+  '@babel/plugin-transform-function-name@7.25.7':
+    resolution: {integrity: sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-arm@0.18.20':
-    resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==}
-    engines: {node: '>=12'}
-    cpu: [arm]
-    os: [linux]
+  '@babel/plugin-transform-json-strings@7.25.8':
+    resolution: {integrity: sha512-4OMNv7eHTmJ2YXs3tvxAfa/I43di+VcF+M4Wt66c88EAED1RoGaf1D64cL5FkRpNL+Vx9Hds84lksWvd/wMIdA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-arm@0.21.5':
-    resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
-    engines: {node: '>=12'}
-    cpu: [arm]
-    os: [linux]
+  '@babel/plugin-transform-literals@7.25.7':
+    resolution: {integrity: sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-ia32@0.18.20':
-    resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==}
-    engines: {node: '>=12'}
-    cpu: [ia32]
-    os: [linux]
+  '@babel/plugin-transform-logical-assignment-operators@7.25.8':
+    resolution: {integrity: sha512-f5W0AhSbbI+yY6VakT04jmxdxz+WsID0neG7+kQZbCOjuyJNdL5Nn4WIBm4hRpKnUcO9lP0eipUhFN12JpoH8g==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-ia32@0.21.5':
-    resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
-    engines: {node: '>=12'}
-    cpu: [ia32]
-    os: [linux]
+  '@babel/plugin-transform-member-expression-literals@7.25.7':
+    resolution: {integrity: sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-loong64@0.18.20':
-    resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==}
-    engines: {node: '>=12'}
-    cpu: [loong64]
-    os: [linux]
+  '@babel/plugin-transform-modules-amd@7.25.7':
+    resolution: {integrity: sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-loong64@0.21.5':
-    resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
-    engines: {node: '>=12'}
-    cpu: [loong64]
-    os: [linux]
+  '@babel/plugin-transform-modules-commonjs@7.25.7':
+    resolution: {integrity: sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-mips64el@0.18.20':
-    resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==}
-    engines: {node: '>=12'}
-    cpu: [mips64el]
-    os: [linux]
+  '@babel/plugin-transform-modules-systemjs@7.25.7':
+    resolution: {integrity: sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-mips64el@0.21.5':
-    resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
-    engines: {node: '>=12'}
-    cpu: [mips64el]
-    os: [linux]
+  '@babel/plugin-transform-modules-umd@7.25.7':
+    resolution: {integrity: sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-ppc64@0.18.20':
-    resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==}
-    engines: {node: '>=12'}
-    cpu: [ppc64]
-    os: [linux]
+  '@babel/plugin-transform-named-capturing-groups-regex@7.25.7':
+    resolution: {integrity: sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
 
-  '@esbuild/linux-ppc64@0.21.5':
-    resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
-    engines: {node: '>=12'}
-    cpu: [ppc64]
-    os: [linux]
+  '@babel/plugin-transform-new-target@7.25.7':
+    resolution: {integrity: sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-riscv64@0.18.20':
-    resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==}
-    engines: {node: '>=12'}
-    cpu: [riscv64]
-    os: [linux]
+  '@babel/plugin-transform-nullish-coalescing-operator@7.25.8':
+    resolution: {integrity: sha512-Z7WJJWdQc8yCWgAmjI3hyC+5PXIubH9yRKzkl9ZEG647O9szl9zvmKLzpbItlijBnVhTUf1cpyWBsZ3+2wjWPQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-riscv64@0.21.5':
-    resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
-    engines: {node: '>=12'}
-    cpu: [riscv64]
-    os: [linux]
+  '@babel/plugin-transform-numeric-separator@7.25.8':
+    resolution: {integrity: sha512-rm9a5iEFPS4iMIy+/A/PiS0QN0UyjPIeVvbU5EMZFKJZHt8vQnasbpo3T3EFcxzCeYO0BHfc4RqooCZc51J86Q==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-s390x@0.18.20':
-    resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==}
-    engines: {node: '>=12'}
-    cpu: [s390x]
-    os: [linux]
+  '@babel/plugin-transform-object-rest-spread@7.25.8':
+    resolution: {integrity: sha512-LkUu0O2hnUKHKE7/zYOIjByMa4VRaV2CD/cdGz0AxU9we+VA3kDDggKEzI0Oz1IroG+6gUP6UmWEHBMWZU316g==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-s390x@0.21.5':
-    resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
-    engines: {node: '>=12'}
-    cpu: [s390x]
-    os: [linux]
+  '@babel/plugin-transform-object-super@7.25.7':
+    resolution: {integrity: sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-x64@0.18.20':
-    resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [linux]
+  '@babel/plugin-transform-optional-catch-binding@7.25.8':
+    resolution: {integrity: sha512-EbQYweoMAHOn7iJ9GgZo14ghhb9tTjgOc88xFgYngifx7Z9u580cENCV159M4xDh3q/irbhSjZVpuhpC2gKBbg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/linux-x64@0.21.5':
-    resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [linux]
+  '@babel/plugin-transform-optional-chaining@7.25.8':
+    resolution: {integrity: sha512-q05Bk7gXOxpTHoQ8RSzGSh/LHVB9JEIkKnk3myAWwZHnYiTGYtbdrYkIsS8Xyh4ltKf7GNUSgzs/6P2bJtBAQg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/netbsd-x64@0.18.20':
-    resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [netbsd]
+  '@babel/plugin-transform-parameters@7.25.7':
+    resolution: {integrity: sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/netbsd-x64@0.21.5':
-    resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [netbsd]
+  '@babel/plugin-transform-private-methods@7.25.7':
+    resolution: {integrity: sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/openbsd-x64@0.18.20':
-    resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [openbsd]
+  '@babel/plugin-transform-private-property-in-object@7.25.8':
+    resolution: {integrity: sha512-8Uh966svuB4V8RHHg0QJOB32QK287NBksJOByoKmHMp1TAobNniNalIkI2i5IPj5+S9NYCG4VIjbEuiSN8r+ow==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/openbsd-x64@0.21.5':
-    resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [openbsd]
+  '@babel/plugin-transform-property-literals@7.25.7':
+    resolution: {integrity: sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/sunos-x64@0.18.20':
-    resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [sunos]
+  '@babel/plugin-transform-react-display-name@7.25.7':
+    resolution: {integrity: sha512-r0QY7NVU8OnrwE+w2IWiRom0wwsTbjx4+xH2RTd7AVdof3uurXOF+/mXHQDRk+2jIvWgSaCHKMgggfvM4dyUGA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/sunos-x64@0.21.5':
-    resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [sunos]
+  '@babel/plugin-transform-react-jsx-self@7.25.7':
+    resolution: {integrity: sha512-JD9MUnLbPL0WdVK8AWC7F7tTG2OS6u/AKKnsK+NdRhUiVdnzyR1S3kKQCaRLOiaULvUiqK6Z4JQE635VgtCFeg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/win32-arm64@0.18.20':
-    resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [win32]
+  '@babel/plugin-transform-react-jsx-source@7.25.7':
+    resolution: {integrity: sha512-S/JXG/KrbIY06iyJPKfxr0qRxnhNOdkNXYBl/rmwgDd72cQLH9tEGkDm/yJPGvcSIUoikzfjMios9i+xT/uv9w==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/win32-arm64@0.21.5':
-    resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [win32]
+  '@babel/plugin-transform-react-jsx@7.25.7':
+    resolution: {integrity: sha512-vILAg5nwGlR9EXE8JIOX4NHXd49lrYbN8hnjffDtoULwpL9hUx/N55nqh2qd0q6FyNDfjl9V79ecKGvFbcSA0Q==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/win32-ia32@0.18.20':
-    resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==}
-    engines: {node: '>=12'}
-    cpu: [ia32]
-    os: [win32]
+  '@babel/plugin-transform-regenerator@7.25.7':
+    resolution: {integrity: sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/win32-ia32@0.21.5':
-    resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
-    engines: {node: '>=12'}
-    cpu: [ia32]
-    os: [win32]
+  '@babel/plugin-transform-reserved-words@7.25.7':
+    resolution: {integrity: sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/win32-x64@0.18.20':
-    resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [win32]
+  '@babel/plugin-transform-runtime@7.25.7':
+    resolution: {integrity: sha512-Y9p487tyTzB0yDYQOtWnC+9HGOuogtP3/wNpun1xJXEEvI6vip59BSBTsHnekZLqxmPcgsrAKt46HAAb//xGhg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@esbuild/win32-x64@0.21.5':
-    resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [win32]
+  '@babel/plugin-transform-shorthand-properties@7.25.7':
+    resolution: {integrity: sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@eslint-community/eslint-utils@4.4.0':
-    resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
-    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+  '@babel/plugin-transform-spread@7.25.7':
+    resolution: {integrity: sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw==}
+    engines: {node: '>=6.9.0'}
     peerDependencies:
-      eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+      '@babel/core': ^7.0.0-0
 
-  '@eslint-community/regexpp@4.11.0':
-    resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==}
-    engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+  '@babel/plugin-transform-sticky-regex@7.25.7':
+    resolution: {integrity: sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@eslint/eslintrc@2.1.4':
-    resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
-    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+  '@babel/plugin-transform-template-literals@7.25.7':
+    resolution: {integrity: sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@eslint/js@8.57.0':
-    resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==}
-    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+  '@babel/plugin-transform-typeof-symbol@7.25.7':
+    resolution: {integrity: sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@humanwhocodes/config-array@0.11.14':
-    resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==}
-    engines: {node: '>=10.10.0'}
-    deprecated: Use @eslint/config-array instead
+  '@babel/plugin-transform-typescript@7.25.7':
+    resolution: {integrity: sha512-VKlgy2vBzj8AmEzunocMun2fF06bsSWV+FvVXohtL6FGve/+L217qhHxRTVGHEDO/YR8IANcjzgJsd04J8ge5Q==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@humanwhocodes/module-importer@1.0.1':
-    resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
-    engines: {node: '>=12.22'}
+  '@babel/plugin-transform-unicode-escapes@7.25.7':
+    resolution: {integrity: sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@humanwhocodes/object-schema@2.0.3':
-    resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==}
-    deprecated: Use @eslint/object-schema instead
+  '@babel/plugin-transform-unicode-property-regex@7.25.7':
+    resolution: {integrity: sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@isaacs/cliui@8.0.2':
-    resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
-    engines: {node: '>=12'}
+  '@babel/plugin-transform-unicode-regex@7.25.7':
+    resolution: {integrity: sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@jest/schemas@29.6.3':
-    resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
-    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+  '@babel/plugin-transform-unicode-sets-regex@7.25.7':
+    resolution: {integrity: sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
 
-  '@jridgewell/gen-mapping@0.3.5':
-    resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
-    engines: {node: '>=6.0.0'}
+  '@babel/preset-env@7.25.8':
+    resolution: {integrity: sha512-58T2yulDHMN8YMUxiLq5YmWUnlDCyY1FsHM+v12VMx+1/FlrUj5tY50iDCpofFQEM8fMYOaY9YRvym2jcjn1Dg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@jridgewell/resolve-uri@3.1.2':
-    resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
-    engines: {node: '>=6.0.0'}
+  '@babel/preset-flow@7.25.7':
+    resolution: {integrity: sha512-q2x3g0YHzo/Ohsr51KOYS/BtZMsvkzVd8qEyhZAyTatYdobfgXCuyppTqTuIhdq5kR/P3nyyVvZ6H5dMc4PnCQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@jridgewell/set-array@1.2.1':
-    resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
-    engines: {node: '>=6.0.0'}
+  '@babel/preset-modules@0.1.6-no-external-plugins':
+    resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0
 
-  '@jridgewell/sourcemap-codec@1.5.0':
-    resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
+  '@babel/preset-typescript@7.25.7':
+    resolution: {integrity: sha512-rkkpaXJZOFN45Fb+Gki0c+KMIglk4+zZXOoMJuyEK8y8Kkc8Jd3BDmP7qPsz0zQMJj+UD7EprF+AqAXcILnexw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@jridgewell/trace-mapping@0.3.25':
-    resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
+  '@babel/register@7.25.7':
+    resolution: {integrity: sha512-qHTd2Rhn/rKhSUwdY6+n98FmwXN+N+zxSVx3zWqRe9INyvTpv+aQ5gDV2+43ACd3VtMBzPPljbb0gZb8u5ma6Q==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  '@jridgewell/trace-mapping@0.3.9':
-    resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
+  '@babel/runtime@7.25.7':
+    resolution: {integrity: sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==}
+    engines: {node: '>=6.9.0'}
 
-  '@lit-labs/ssr-dom-shim@1.2.1':
-    resolution: {integrity: sha512-wx4aBmgeGvFmOKucFKY+8VFJSYZxs9poN3SDNQFF6lT6NrQUnHiPB2PWz2sc4ieEcAaYYzN+1uWahEeTq2aRIQ==}
+  '@babel/template@7.25.0':
+    resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==}
+    engines: {node: '>=6.9.0'}
 
-  '@lit/reactive-element@1.6.3':
-    resolution: {integrity: sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ==}
+  '@babel/template@7.25.7':
+    resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==}
+    engines: {node: '>=6.9.0'}
 
-  '@microsoft/api-extractor-model@7.28.13':
-    resolution: {integrity: sha512-39v/JyldX4MS9uzHcdfmjjfS6cYGAoXV+io8B5a338pkHiSt+gy2eXQ0Q7cGFJ7quSa1VqqlMdlPrB6sLR/cAw==}
+  '@babel/traverse@7.25.3':
+    resolution: {integrity: sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==}
+    engines: {node: '>=6.9.0'}
 
-  '@microsoft/api-extractor@7.43.0':
-    resolution: {integrity: sha512-GFhTcJpB+MI6FhvXEI9b2K0snulNLWHqC/BbcJtyNYcKUiw7l3Lgis5ApsYncJ0leALX7/of4XfmXk+maT111w==}
-    hasBin: true
+  '@babel/traverse@7.25.7':
+    resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==}
+    engines: {node: '>=6.9.0'}
 
-  '@microsoft/tsdoc-config@0.16.2':
-    resolution: {integrity: sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==}
+  '@babel/types@7.25.2':
+    resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==}
+    engines: {node: '>=6.9.0'}
 
-  '@microsoft/tsdoc@0.14.2':
-    resolution: {integrity: sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==}
+  '@babel/types@7.25.8':
+    resolution: {integrity: sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==}
+    engines: {node: '>=6.9.0'}
 
-  '@module-federation/runtime@0.1.21':
-    resolution: {integrity: sha512-/p4BhZ0SnjJuiL0wwu+FebFgIUJ9vM+oCY7CyprUHImyi/Y23ulI61WNWMVrKQGgdMoXQDQCL8RH4EnrVP2ZFw==}
+  '@chakra-ui/anatomy@2.3.4':
+    resolution: {integrity: sha512-fFIYN7L276gw0Q7/ikMMlZxP7mvnjRaWJ7f3Jsf9VtDOi6eAYIBRrhQe6+SZ0PGmoOkRaBc7gSE5oeIbgFFyrw==}
 
-  '@module-federation/sdk@0.1.21':
-    resolution: {integrity: sha512-r7xPiAm+O4e+8Zvw+8b4ToeD0D0VJD004nHmt+Y8r/l98J2eA6di72Vn1FeyjtQbCrFtiMw3ts/dlqtcmIBipw==}
+  '@chakra-ui/hooks@2.4.2':
+    resolution: {integrity: sha512-LRKiVE1oA7afT5tbbSKAy7Uas2xFHE6IkrQdbhWCHmkHBUtPvjQQDgwtnd4IRZPmoEfNGwoJ/MQpwOM/NRTTwA==}
+    peerDependencies:
+      react: '>=18'
 
-  '@motionone/animation@10.18.0':
-    resolution: {integrity: sha512-9z2p5GFGCm0gBsZbi8rVMOAJCtw1WqBTIPw3ozk06gDvZInBPIsQcHgYogEJ4yuHJ+akuW8g1SEIOpTOvYs8hw==}
+  '@chakra-ui/react@2.10.2':
+    resolution: {integrity: sha512-TfIHTqTlxTHYJZBtpiR5EZasPUrLYKJxdbHkdOJb5G1OQ+2c5kKl5XA7c2pMtsEptzb7KxAAIB62t3hxdfWp1w==}
+    peerDependencies:
+      '@emotion/react': '>=11'
+      '@emotion/styled': '>=11'
+      framer-motion: '>=4.0.0'
+      react: '>=18'
+      react-dom: '>=18'
 
-  '@motionone/dom@10.18.0':
-    resolution: {integrity: sha512-bKLP7E0eyO4B2UaHBBN55tnppwRnaE3KFfh3Ps9HhnAkar3Cb69kUCJY9as8LrccVYKgHA+JY5dOQqJLOPhF5A==}
+  '@chakra-ui/styled-system@2.11.2':
+    resolution: {integrity: sha512-y++z2Uop+hjfZX9mbH88F1ikazPv32asD2er56zMJBemUAzweXnHTpiCQbluEDSUDhqmghVZAdb+5L4XLbsRxA==}
 
-  '@motionone/easing@10.18.0':
-    resolution: {integrity: sha512-VcjByo7XpdLS4o9T8t99JtgxkdMcNWD3yHU/n6CLEz3bkmKDRZyYQ/wmSf6daum8ZXqfUAgFeCZSpJZIMxaCzg==}
+  '@chakra-ui/theme-tools@2.2.6':
+    resolution: {integrity: sha512-3UhKPyzKbV3l/bg1iQN9PBvffYp+EBOoYMUaeTUdieQRPFzo2jbYR0lNCxqv8h5aGM/k54nCHU2M/GStyi9F2A==}
+    peerDependencies:
+      '@chakra-ui/styled-system': '>=2.0.0'
 
-  '@motionone/generators@10.18.0':
-    resolution: {integrity: sha512-+qfkC2DtkDj4tHPu+AFKVfR/C30O1vYdvsGYaR13W/1cczPrrcjdvYCj0VLFuRMN+lP1xvpNZHCRNM4fBzn1jg==}
+  '@chakra-ui/theme@3.4.6':
+    resolution: {integrity: sha512-ZwFBLfiMC3URwaO31ONXoKH9k0TX0OW3UjdPF3EQkQpYyrk/fm36GkkzajjtdpWEd7rzDLRsQjPmvwNaSoNDtg==}
+    peerDependencies:
+      '@chakra-ui/styled-system': '>=2.8.0'
 
-  '@motionone/svelte@10.16.4':
-    resolution: {integrity: sha512-zRVqk20lD1xqe+yEDZhMYgftsuHc25+9JSo+r0a0OWUJFocjSV9D/+UGhX4xgJsuwB9acPzXLr20w40VnY2PQA==}
+  '@chakra-ui/utils@2.2.2':
+    resolution: {integrity: sha512-jUPLT0JzRMWxpdzH6c+t0YMJYrvc5CLericgITV3zDSXblkfx3DsYXqU11DJTSGZI9dUKzM1Wd0Wswn4eJwvFQ==}
+    peerDependencies:
+      react: '>=16.8.0'
 
-  '@motionone/types@10.17.1':
-    resolution: {integrity: sha512-KaC4kgiODDz8hswCrS0btrVrzyU2CSQKO7Ps90ibBVSQmjkrt2teqta6/sOG59v7+dPnKMAg13jyqtMKV2yJ7A==}
+  '@colors/colors@1.5.0':
+    resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
+    engines: {node: '>=0.1.90'}
 
-  '@motionone/utils@10.18.0':
-    resolution: {integrity: sha512-3XVF7sgyTSI2KWvTf6uLlBJ5iAgRgmvp3bpuOiQJvInd4nZ19ET8lX5unn30SlmRH7hXbBbH+Gxd0m0klJ3Xtw==}
+  '@commitlint/cli@17.8.1':
+    resolution: {integrity: sha512-ay+WbzQesE0Rv4EQKfNbSMiJJ12KdKTDzIt0tcK4k11FdsWmtwP0Kp1NWMOUswfIWo6Eb7p7Ln721Nx9FLNBjg==}
+    engines: {node: '>=v14'}
+    hasBin: true
 
-  '@motionone/vue@10.16.4':
-    resolution: {integrity: sha512-z10PF9JV6SbjFq+/rYabM+8CVlMokgl8RFGvieSGNTmrkQanfHn+15XBrhG3BgUfvmTeSeyShfOHpG0i9zEdcg==}
-    deprecated: Motion One for Vue is deprecated. Use Oku Motion instead https://oku-ui.com/motion
+  '@commitlint/config-conventional@17.8.1':
+    resolution: {integrity: sha512-NxCOHx1kgneig3VLauWJcDWS40DVjg7nKOpBEEK9E5fjJpQqLCilcnKkIIjdBH98kEO1q3NpE5NSrZ2kl/QGJg==}
+    engines: {node: '>=v14'}
 
-  '@next/eslint-plugin-next@13.5.6':
-    resolution: {integrity: sha512-ng7pU/DDsxPgT6ZPvuprxrkeew3XaRf4LAT4FabaEO/hAbvVx4P7wqnqdbTdDn1kgTvsI4tpIgT4Awn/m0bGbg==}
+  '@commitlint/config-validator@17.8.1':
+    resolution: {integrity: sha512-UUgUC+sNiiMwkyiuIFR7JG2cfd9t/7MV8VB4TZ+q02ZFkHoduUS4tJGsCBWvBOGD9Btev6IecPMvlWUfJorkEA==}
+    engines: {node: '>=v14'}
 
-  '@noble/curves@1.3.0':
-    resolution: {integrity: sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==}
+  '@commitlint/ensure@17.8.1':
+    resolution: {integrity: sha512-xjafwKxid8s1K23NFpL8JNo6JnY/ysetKo8kegVM7c8vs+kWLP8VrQq+NbhgVlmCojhEDbzQKp4eRXSjVOGsow==}
+    engines: {node: '>=v14'}
 
-  '@noble/curves@1.4.2':
-    resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==}
+  '@commitlint/execute-rule@17.8.1':
+    resolution: {integrity: sha512-JHVupQeSdNI6xzA9SqMF+p/JjrHTcrJdI02PwesQIDCIGUrv04hicJgCcws5nzaoZbROapPs0s6zeVHoxpMwFQ==}
+    engines: {node: '>=v14'}
 
-  '@noble/hashes@1.3.3':
-    resolution: {integrity: sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==}
-    engines: {node: '>= 16'}
+  '@commitlint/format@17.8.1':
+    resolution: {integrity: sha512-f3oMTyZ84M9ht7fb93wbCKmWxO5/kKSbwuYvS867duVomoOsgrgljkGGIztmT/srZnaiGbaK8+Wf8Ik2tSr5eg==}
+    engines: {node: '>=v14'}
 
-  '@noble/hashes@1.4.0':
-    resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==}
-    engines: {node: '>= 16'}
+  '@commitlint/is-ignored@17.8.1':
+    resolution: {integrity: sha512-UshMi4Ltb4ZlNn4F7WtSEugFDZmctzFpmbqvpyxD3la510J+PLcnyhf9chs7EryaRFJMdAKwsEKfNK0jL/QM4g==}
+    engines: {node: '>=v14'}
 
-  '@nodelib/fs.scandir@2.1.5':
-    resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
-    engines: {node: '>= 8'}
+  '@commitlint/lint@17.8.1':
+    resolution: {integrity: sha512-aQUlwIR1/VMv2D4GXSk7PfL5hIaFSfy6hSHV94O8Y27T5q+DlDEgd/cZ4KmVI+MWKzFfCTiTuWqjfRSfdRllCA==}
+    engines: {node: '>=v14'}
 
-  '@nodelib/fs.stat@2.0.5':
-    resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
-    engines: {node: '>= 8'}
+  '@commitlint/load@17.8.1':
+    resolution: {integrity: sha512-iF4CL7KDFstP1kpVUkT8K2Wl17h2yx9VaR1ztTc8vzByWWcbO/WaKwxsnCOqow9tVAlzPfo1ywk9m2oJ9ucMqA==}
+    engines: {node: '>=v14'}
 
-  '@nodelib/fs.walk@1.2.8':
-    resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
-    engines: {node: '>= 8'}
+  '@commitlint/message@17.8.1':
+    resolution: {integrity: sha512-6bYL1GUQsD6bLhTH3QQty8pVFoETfFQlMn2Nzmz3AOLqRVfNNtXBaSY0dhZ0dM6A2MEq4+2d7L/2LP8TjqGRkA==}
+    engines: {node: '>=v14'}
 
-  '@octokit/auth-token@4.0.0':
-    resolution: {integrity: sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==}
-    engines: {node: '>= 18'}
+  '@commitlint/parse@17.8.1':
+    resolution: {integrity: sha512-/wLUickTo0rNpQgWwLPavTm7WbwkZoBy3X8PpkUmlSmQJyWQTj0m6bDjiykMaDt41qcUbfeFfaCvXfiR4EGnfw==}
+    engines: {node: '>=v14'}
 
-  '@octokit/core@5.2.0':
-    resolution: {integrity: sha512-1LFfa/qnMQvEOAdzlQymH0ulepxbxnCYAKJZfMci/5XJyIHWgEYnDmgnKakbTh7CH2tFQ5O60oYDvns4i9RAIg==}
-    engines: {node: '>= 18'}
+  '@commitlint/read@17.8.1':
+    resolution: {integrity: sha512-Fd55Oaz9irzBESPCdMd8vWWgxsW3OWR99wOntBDHgf9h7Y6OOHjWEdS9Xzen1GFndqgyoaFplQS5y7KZe0kO2w==}
+    engines: {node: '>=v14'}
 
-  '@octokit/endpoint@9.0.5':
-    resolution: {integrity: sha512-ekqR4/+PCLkEBF6qgj8WqJfvDq65RH85OAgrtnVp1mSxaXF03u2xW/hUdweGS5654IlC0wkNYC18Z50tSYTAFw==}
-    engines: {node: '>= 18'}
+  '@commitlint/resolve-extends@17.8.1':
+    resolution: {integrity: sha512-W/ryRoQ0TSVXqJrx5SGkaYuAaE/BUontL1j1HsKckvM6e5ZaG0M9126zcwL6peKSuIetJi7E87PRQF8O86EW0Q==}
+    engines: {node: '>=v14'}
 
-  '@octokit/graphql@7.1.0':
-    resolution: {integrity: sha512-r+oZUH7aMFui1ypZnAvZmn0KSqAUgE1/tUXIWaqUCa1758ts/Jio84GZuzsvUkme98kv0WFY8//n0J1Z+vsIsQ==}
-    engines: {node: '>= 18'}
+  '@commitlint/rules@17.8.1':
+    resolution: {integrity: sha512-2b7OdVbN7MTAt9U0vKOYKCDsOvESVXxQmrvuVUZ0rGFMCrCPJWWP1GJ7f0lAypbDAhaGb8zqtdOr47192LBrIA==}
+    engines: {node: '>=v14'}
 
-  '@octokit/openapi-types@20.0.0':
-    resolution: {integrity: sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==}
+  '@commitlint/to-lines@17.8.1':
+    resolution: {integrity: sha512-LE0jb8CuR/mj6xJyrIk8VLz03OEzXFgLdivBytoooKO5xLt5yalc8Ma5guTWobw998sbR3ogDd+2jed03CFmJA==}
+    engines: {node: '>=v14'}
 
-  '@octokit/openapi-types@22.2.0':
-    resolution: {integrity: sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==}
+  '@commitlint/top-level@17.8.1':
+    resolution: {integrity: sha512-l6+Z6rrNf5p333SHfEte6r+WkOxGlWK4bLuZKbtf/2TXRN+qhrvn1XE63VhD8Oe9oIHQ7F7W1nG2k/TJFhx2yA==}
+    engines: {node: '>=v14'}
 
-  '@octokit/plugin-paginate-rest@9.2.1':
-    resolution: {integrity: sha512-wfGhE/TAkXZRLjksFXuDZdmGnJQHvtU/joFQdweXUgzo1XwvBCD4o4+75NtFfjfLK5IwLf9vHTfSiU3sLRYpRw==}
-    engines: {node: '>= 18'}
-    peerDependencies:
-      '@octokit/core': '5'
+  '@commitlint/types@17.8.1':
+    resolution: {integrity: sha512-PXDQXkAmiMEG162Bqdh9ChML/GJZo6vU+7F03ALKDK8zYc6SuAr47LjG7hGYRqUOz+WK0dU7bQ0xzuqFMdxzeQ==}
+    engines: {node: '>=v14'}
 
-  '@octokit/plugin-retry@6.0.1':
-    resolution: {integrity: sha512-SKs+Tz9oj0g4p28qkZwl/topGcb0k0qPNX/i7vBKmDsjoeqnVfFUquqrE/O9oJY7+oLzdCtkiWSXLpLjvl6uog==}
-    engines: {node: '>= 18'}
+  '@cspotcode/source-map-support@0.8.1':
+    resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
+    engines: {node: '>=12'}
+
+  '@emotion/babel-plugin@11.12.0':
+    resolution: {integrity: sha512-y2WQb+oP8Jqvvclh8Q55gLUyb7UFvgv7eJfsj7td5TToBrIUtPay2kMrZi4xjq9qw2vD0ZR5fSho0yqoFgX7Rw==}
+
+  '@emotion/cache@11.13.1':
+    resolution: {integrity: sha512-iqouYkuEblRcXmylXIwwOodiEK5Ifl7JcX7o6V4jI3iW4mLXX3dmt5xwBtIkJiQEXFAI+pC8X0i67yiPkH9Ucw==}
+
+  '@emotion/hash@0.9.2':
+    resolution: {integrity: sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==}
+
+  '@emotion/is-prop-valid@1.3.1':
+    resolution: {integrity: sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==}
+
+  '@emotion/memoize@0.9.0':
+    resolution: {integrity: sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==}
+
+  '@emotion/react@11.13.3':
+    resolution: {integrity: sha512-lIsdU6JNrmYfJ5EbUCf4xW1ovy5wKQ2CkPRM4xogziOxH1nXxBSjpC9YqbFAP7circxMfYp+6x676BqWcEiixg==}
     peerDependencies:
-      '@octokit/core': '>=5'
+      '@types/react': '*'
+      react: '>=16.8.0'
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
 
-  '@octokit/plugin-throttling@8.2.0':
-    resolution: {integrity: sha512-nOpWtLayKFpgqmgD0y3GqXafMFuKcA4tRPZIfu7BArd2lEZeb1988nhWhwx4aZWmjDmUfdgVf7W+Tt4AmvRmMQ==}
-    engines: {node: '>= 18'}
+  '@emotion/serialize@1.3.2':
+    resolution: {integrity: sha512-grVnMvVPK9yUVE6rkKfAJlYZgo0cu3l9iMC77V7DW6E1DUIrU68pSEXRmFZFOFB1QFo57TncmOcvcbMDWsL4yA==}
+
+  '@emotion/sheet@1.4.0':
+    resolution: {integrity: sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==}
+
+  '@emotion/styled@11.13.0':
+    resolution: {integrity: sha512-tkzkY7nQhW/zC4hztlwucpT8QEZ6eUzpXDRhww/Eej4tFfO0FxQYWRyg/c5CCXa4d/f174kqeXYjuQRnhzf6dA==}
     peerDependencies:
-      '@octokit/core': ^5.0.0
+      '@emotion/react': ^11.0.0-rc.0
+      '@types/react': '*'
+      react: '>=16.8.0'
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
 
-  '@octokit/request-error@5.1.0':
-    resolution: {integrity: sha512-GETXfE05J0+7H2STzekpKObFe765O5dlAKUTLNGeH+x47z7JjXHfsHKo5z21D/o/IOZTUEI6nyWyR+bZVP/n5Q==}
-    engines: {node: '>= 18'}
+  '@emotion/unitless@0.10.0':
+    resolution: {integrity: sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==}
 
-  '@octokit/request@8.4.0':
-    resolution: {integrity: sha512-9Bb014e+m2TgBeEJGEbdplMVWwPmL1FPtggHQRkV+WVsMggPtEkLKPlcVYm/o8xKLkpJ7B+6N8WfQMtDLX2Dpw==}
-    engines: {node: '>= 18'}
+  '@emotion/use-insertion-effect-with-fallbacks@1.1.0':
+    resolution: {integrity: sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw==}
+    peerDependencies:
+      react: '>=16.8.0'
 
-  '@octokit/types@12.6.0':
-    resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==}
+  '@emotion/utils@1.4.1':
+    resolution: {integrity: sha512-BymCXzCG3r72VKJxaYVwOXATqXIZ85cuvg0YOUDxMGNrKc1DJRZk8MgV5wyXRyEayIMd4FuXJIUgTBXvDNW5cA==}
 
-  '@octokit/types@13.5.0':
-    resolution: {integrity: sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ==}
+  '@emotion/weak-memoize@0.4.0':
+    resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==}
 
-  '@parcel/watcher-android-arm64@2.4.1':
-    resolution: {integrity: sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==}
-    engines: {node: '>= 10.0.0'}
+  '@esbuild/aix-ppc64@0.21.5':
+    resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
+    engines: {node: '>=12'}
+    cpu: [ppc64]
+    os: [aix]
+
+  '@esbuild/android-arm64@0.18.20':
+    resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==}
+    engines: {node: '>=12'}
     cpu: [arm64]
     os: [android]
 
-  '@parcel/watcher-darwin-arm64@2.4.1':
-    resolution: {integrity: sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==}
-    engines: {node: '>= 10.0.0'}
+  '@esbuild/android-arm64@0.21.5':
+    resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
+    engines: {node: '>=12'}
     cpu: [arm64]
-    os: [darwin]
+    os: [android]
 
-  '@parcel/watcher-darwin-x64@2.4.1':
-    resolution: {integrity: sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==}
-    engines: {node: '>= 10.0.0'}
-    cpu: [x64]
-    os: [darwin]
+  '@esbuild/android-arm@0.18.20':
+    resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==}
+    engines: {node: '>=12'}
+    cpu: [arm]
+    os: [android]
 
-  '@parcel/watcher-freebsd-x64@2.4.1':
-    resolution: {integrity: sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==}
-    engines: {node: '>= 10.0.0'}
+  '@esbuild/android-arm@0.21.5':
+    resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
+    engines: {node: '>=12'}
+    cpu: [arm]
+    os: [android]
+
+  '@esbuild/android-x64@0.18.20':
+    resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==}
+    engines: {node: '>=12'}
     cpu: [x64]
-    os: [freebsd]
+    os: [android]
 
-  '@parcel/watcher-linux-arm-glibc@2.4.1':
-    resolution: {integrity: sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==}
-    engines: {node: '>= 10.0.0'}
-    cpu: [arm]
-    os: [linux]
+  '@esbuild/android-x64@0.21.5':
+    resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [android]
 
-  '@parcel/watcher-linux-arm64-glibc@2.4.1':
-    resolution: {integrity: sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==}
-    engines: {node: '>= 10.0.0'}
+  '@esbuild/darwin-arm64@0.18.20':
+    resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==}
+    engines: {node: '>=12'}
     cpu: [arm64]
-    os: [linux]
+    os: [darwin]
 
-  '@parcel/watcher-linux-arm64-musl@2.4.1':
-    resolution: {integrity: sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==}
-    engines: {node: '>= 10.0.0'}
+  '@esbuild/darwin-arm64@0.21.5':
+    resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
+    engines: {node: '>=12'}
     cpu: [arm64]
-    os: [linux]
+    os: [darwin]
 
-  '@parcel/watcher-linux-x64-glibc@2.4.1':
-    resolution: {integrity: sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==}
-    engines: {node: '>= 10.0.0'}
+  '@esbuild/darwin-x64@0.18.20':
+    resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==}
+    engines: {node: '>=12'}
     cpu: [x64]
-    os: [linux]
+    os: [darwin]
 
-  '@parcel/watcher-linux-x64-musl@2.4.1':
-    resolution: {integrity: sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==}
-    engines: {node: '>= 10.0.0'}
+  '@esbuild/darwin-x64@0.21.5':
+    resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
+    engines: {node: '>=12'}
     cpu: [x64]
-    os: [linux]
-
-  '@parcel/watcher-wasm@2.4.1':
-    resolution: {integrity: sha512-/ZR0RxqxU/xxDGzbzosMjh4W6NdYFMqq2nvo2b8SLi7rsl/4jkL8S5stIikorNkdR50oVDvqb/3JT05WM+CRRA==}
-    engines: {node: '>= 10.0.0'}
-    bundledDependencies:
-      - napi-wasm
+    os: [darwin]
 
-  '@parcel/watcher-win32-arm64@2.4.1':
-    resolution: {integrity: sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==}
-    engines: {node: '>= 10.0.0'}
+  '@esbuild/freebsd-arm64@0.18.20':
+    resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==}
+    engines: {node: '>=12'}
     cpu: [arm64]
-    os: [win32]
+    os: [freebsd]
 
-  '@parcel/watcher-win32-ia32@2.4.1':
-    resolution: {integrity: sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==}
-    engines: {node: '>= 10.0.0'}
-    cpu: [ia32]
-    os: [win32]
+  '@esbuild/freebsd-arm64@0.21.5':
+    resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
+    engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [freebsd]
 
-  '@parcel/watcher-win32-x64@2.4.1':
-    resolution: {integrity: sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==}
-    engines: {node: '>= 10.0.0'}
+  '@esbuild/freebsd-x64@0.18.20':
+    resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==}
+    engines: {node: '>=12'}
     cpu: [x64]
-    os: [win32]
-
-  '@parcel/watcher@2.4.1':
-    resolution: {integrity: sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==}
-    engines: {node: '>= 10.0.0'}
-
-  '@pkgjs/parseargs@0.11.0':
-    resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
-    engines: {node: '>=14'}
+    os: [freebsd]
 
-  '@pnpm/config.env-replace@1.1.0':
-    resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==}
-    engines: {node: '>=12.22.0'}
+  '@esbuild/freebsd-x64@0.21.5':
+    resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [freebsd]
 
-  '@pnpm/network.ca-file@1.0.2':
-    resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==}
-    engines: {node: '>=12.22.0'}
+  '@esbuild/linux-arm64@0.18.20':
+    resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==}
+    engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [linux]
 
-  '@pnpm/npm-conf@2.3.1':
-    resolution: {integrity: sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==}
+  '@esbuild/linux-arm64@0.21.5':
+    resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
     engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [linux]
 
-  '@rollup/pluginutils@5.1.0':
-    resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==}
-    engines: {node: '>=14.0.0'}
-    peerDependencies:
-      rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
-    peerDependenciesMeta:
-      rollup:
-        optional: true
+  '@esbuild/linux-arm@0.18.20':
+    resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==}
+    engines: {node: '>=12'}
+    cpu: [arm]
+    os: [linux]
 
-  '@rollup/rollup-android-arm-eabi@4.20.0':
-    resolution: {integrity: sha512-TSpWzflCc4VGAUJZlPpgAJE1+V60MePDQnBd7PPkpuEmOy8i87aL6tinFGKBFKuEDikYpig72QzdT3QPYIi+oA==}
+  '@esbuild/linux-arm@0.21.5':
+    resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
+    engines: {node: '>=12'}
     cpu: [arm]
-    os: [android]
+    os: [linux]
 
-  '@rollup/rollup-android-arm64@4.20.0':
-    resolution: {integrity: sha512-u00Ro/nok7oGzVuh/FMYfNoGqxU5CPWz1mxV85S2w9LxHR8OoMQBuSk+3BKVIDYgkpeOET5yXkx90OYFc+ytpQ==}
-    cpu: [arm64]
-    os: [android]
+  '@esbuild/linux-ia32@0.18.20':
+    resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==}
+    engines: {node: '>=12'}
+    cpu: [ia32]
+    os: [linux]
 
-  '@rollup/rollup-darwin-arm64@4.20.0':
-    resolution: {integrity: sha512-uFVfvzvsdGtlSLuL0ZlvPJvl6ZmrH4CBwLGEFPe7hUmf7htGAN+aXo43R/V6LATyxlKVC/m6UsLb7jbG+LG39Q==}
-    cpu: [arm64]
-    os: [darwin]
+  '@esbuild/linux-ia32@0.21.5':
+    resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
+    engines: {node: '>=12'}
+    cpu: [ia32]
+    os: [linux]
 
-  '@rollup/rollup-darwin-x64@4.20.0':
-    resolution: {integrity: sha512-xbrMDdlev53vNXexEa6l0LffojxhqDTBeL+VUxuuIXys4x6xyvbKq5XqTXBCEUA8ty8iEJblHvFaWRJTk/icAQ==}
-    cpu: [x64]
-    os: [darwin]
+  '@esbuild/linux-loong64@0.18.20':
+    resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==}
+    engines: {node: '>=12'}
+    cpu: [loong64]
+    os: [linux]
 
-  '@rollup/rollup-linux-arm-gnueabihf@4.20.0':
-    resolution: {integrity: sha512-jMYvxZwGmoHFBTbr12Xc6wOdc2xA5tF5F2q6t7Rcfab68TT0n+r7dgawD4qhPEvasDsVpQi+MgDzj2faOLsZjA==}
-    cpu: [arm]
+  '@esbuild/linux-loong64@0.21.5':
+    resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
+    engines: {node: '>=12'}
+    cpu: [loong64]
     os: [linux]
 
-  '@rollup/rollup-linux-arm-musleabihf@4.20.0':
-    resolution: {integrity: sha512-1asSTl4HKuIHIB1GcdFHNNZhxAYEdqML/MW4QmPS4G0ivbEcBr1JKlFLKsIRqjSwOBkdItn3/ZDlyvZ/N6KPlw==}
-    cpu: [arm]
+  '@esbuild/linux-mips64el@0.18.20':
+    resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==}
+    engines: {node: '>=12'}
+    cpu: [mips64el]
     os: [linux]
 
-  '@rollup/rollup-linux-arm64-gnu@4.20.0':
-    resolution: {integrity: sha512-COBb8Bkx56KldOYJfMf6wKeYJrtJ9vEgBRAOkfw6Ens0tnmzPqvlpjZiLgkhg6cA3DGzCmLmmd319pmHvKWWlQ==}
-    cpu: [arm64]
+  '@esbuild/linux-mips64el@0.21.5':
+    resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
+    engines: {node: '>=12'}
+    cpu: [mips64el]
     os: [linux]
 
-  '@rollup/rollup-linux-arm64-musl@4.20.0':
-    resolution: {integrity: sha512-+it+mBSyMslVQa8wSPvBx53fYuZK/oLTu5RJoXogjk6x7Q7sz1GNRsXWjn6SwyJm8E/oMjNVwPhmNdIjwP135Q==}
-    cpu: [arm64]
+  '@esbuild/linux-ppc64@0.18.20':
+    resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==}
+    engines: {node: '>=12'}
+    cpu: [ppc64]
     os: [linux]
 
-  '@rollup/rollup-linux-powerpc64le-gnu@4.20.0':
-    resolution: {integrity: sha512-yAMvqhPfGKsAxHN8I4+jE0CpLWD8cv4z7CK7BMmhjDuz606Q2tFKkWRY8bHR9JQXYcoLfopo5TTqzxgPUjUMfw==}
+  '@esbuild/linux-ppc64@0.21.5':
+    resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
+    engines: {node: '>=12'}
     cpu: [ppc64]
     os: [linux]
 
-  '@rollup/rollup-linux-riscv64-gnu@4.20.0':
-    resolution: {integrity: sha512-qmuxFpfmi/2SUkAw95TtNq/w/I7Gpjurx609OOOV7U4vhvUhBcftcmXwl3rqAek+ADBwSjIC4IVNLiszoj3dPA==}
+  '@esbuild/linux-riscv64@0.18.20':
+    resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==}
+    engines: {node: '>=12'}
     cpu: [riscv64]
     os: [linux]
 
-  '@rollup/rollup-linux-s390x-gnu@4.20.0':
-    resolution: {integrity: sha512-I0BtGXddHSHjV1mqTNkgUZLnS3WtsqebAXv11D5BZE/gfw5KoyXSAXVqyJximQXNvNzUo4GKlCK/dIwXlz+jlg==}
+  '@esbuild/linux-riscv64@0.21.5':
+    resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
+    engines: {node: '>=12'}
+    cpu: [riscv64]
+    os: [linux]
+
+  '@esbuild/linux-s390x@0.18.20':
+    resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==}
+    engines: {node: '>=12'}
     cpu: [s390x]
     os: [linux]
 
-  '@rollup/rollup-linux-x64-gnu@4.20.0':
-    resolution: {integrity: sha512-y+eoL2I3iphUg9tN9GB6ku1FA8kOfmF4oUEWhztDJ4KXJy1agk/9+pejOuZkNFhRwHAOxMsBPLbXPd6mJiCwew==}
-    cpu: [x64]
+  '@esbuild/linux-s390x@0.21.5':
+    resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
+    engines: {node: '>=12'}
+    cpu: [s390x]
     os: [linux]
 
-  '@rollup/rollup-linux-x64-musl@4.20.0':
-    resolution: {integrity: sha512-hM3nhW40kBNYUkZb/r9k2FKK+/MnKglX7UYd4ZUy5DJs8/sMsIbqWK2piZtVGE3kcXVNj3B2IrUYROJMMCikNg==}
+  '@esbuild/linux-x64@0.18.20':
+    resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==}
+    engines: {node: '>=12'}
     cpu: [x64]
     os: [linux]
 
-  '@rollup/rollup-win32-arm64-msvc@4.20.0':
-    resolution: {integrity: sha512-psegMvP+Ik/Bg7QRJbv8w8PAytPA7Uo8fpFjXyCRHWm6Nt42L+JtoqH8eDQ5hRP7/XW2UiIriy1Z46jf0Oa1kA==}
-    cpu: [arm64]
-    os: [win32]
-
-  '@rollup/rollup-win32-ia32-msvc@4.20.0':
-    resolution: {integrity: sha512-GabekH3w4lgAJpVxkk7hUzUf2hICSQO0a/BLFA11/RMxQT92MabKAqyubzDZmMOC/hcJNlc+rrypzNzYl4Dx7A==}
-    cpu: [ia32]
-    os: [win32]
+  '@esbuild/linux-x64@0.21.5':
+    resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [linux]
 
-  '@rollup/rollup-win32-x64-msvc@4.20.0':
-    resolution: {integrity: sha512-aJ1EJSuTdGnM6qbVC4B5DSmozPTqIag9fSzXRNNo+humQLG89XpPgdt16Ia56ORD7s+H8Pmyx44uczDQ0yDzpg==}
+  '@esbuild/netbsd-x64@0.18.20':
+    resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==}
+    engines: {node: '>=12'}
     cpu: [x64]
-    os: [win32]
+    os: [netbsd]
 
-  '@rushstack/eslint-patch@1.10.4':
-    resolution: {integrity: sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==}
+  '@esbuild/netbsd-x64@0.21.5':
+    resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [netbsd]
 
-  '@rushstack/node-core-library@4.0.2':
-    resolution: {integrity: sha512-hyES82QVpkfQMeBMteQUnrhASL/KHPhd7iJ8euduwNJG4mu2GSOKybf0rOEjOm1Wz7CwJEUm9y0yD7jg2C1bfg==}
-    peerDependencies:
-      '@types/node': '*'
-    peerDependenciesMeta:
-      '@types/node':
-        optional: true
+  '@esbuild/openbsd-x64@0.18.20':
+    resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [openbsd]
 
-  '@rushstack/rig-package@0.5.2':
-    resolution: {integrity: sha512-mUDecIJeH3yYGZs2a48k+pbhM6JYwWlgjs2Ca5f2n1G2/kgdgP9D/07oglEGf6mRyXEnazhEENeYTSNDRCwdqA==}
+  '@esbuild/openbsd-x64@0.21.5':
+    resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [openbsd]
 
-  '@rushstack/terminal@0.10.0':
-    resolution: {integrity: sha512-UbELbXnUdc7EKwfH2sb8ChqNgapUOdqcCIdQP4NGxBpTZV2sQyeekuK3zmfQSa/MN+/7b4kBogl2wq0vpkpYGw==}
-    peerDependencies:
-      '@types/node': '*'
-    peerDependenciesMeta:
-      '@types/node':
-        optional: true
+  '@esbuild/sunos-x64@0.18.20':
+    resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [sunos]
 
-  '@rushstack/ts-command-line@4.19.1':
-    resolution: {integrity: sha512-J7H768dgcpG60d7skZ5uSSwyCZs/S2HrWP1Ds8d1qYAyaaeJmpmmLr9BVw97RjFzmQPOYnoXcKA4GkqDCkduQg==}
+  '@esbuild/sunos-x64@0.21.5':
+    resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [sunos]
 
-  '@scure/base@1.1.7':
-    resolution: {integrity: sha512-PPNYBslrLNNUQ/Yad37MHYsNQtK67EhWb6WtSvNLLPo7SdVZgkUjD6Dg+5On7zNwmskf8OX7I7Nx5oN+MIWE0g==}
+  '@esbuild/win32-arm64@0.18.20':
+    resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==}
+    engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [win32]
 
-  '@scure/starknet@1.0.0':
-    resolution: {integrity: sha512-o5J57zY0f+2IL/mq8+AYJJ4Xpc1fOtDhr+mFQKbHnYFmm3WQrC+8zj2HEgxak1a+x86mhmBC1Kq305KUpVf0wg==}
+  '@esbuild/win32-arm64@0.21.5':
+    resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
+    engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [win32]
 
-  '@semantic-release/commit-analyzer@10.0.4':
-    resolution: {integrity: sha512-pFGn99fn8w4/MHE0otb2A/l5kxgOuxaaauIh4u30ncoTJuqWj4hXTgEJ03REqjS+w1R2vPftSsO26WC61yOcpw==}
-    engines: {node: '>=18'}
-    peerDependencies:
-      semantic-release: '>=20.1.0'
+  '@esbuild/win32-ia32@0.18.20':
+    resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==}
+    engines: {node: '>=12'}
+    cpu: [ia32]
+    os: [win32]
 
-  '@semantic-release/error@3.0.0':
-    resolution: {integrity: sha512-5hiM4Un+tpl4cKw3lV4UgzJj+SmfNIDCLLw0TepzQxz9ZGV5ixnqkzIVF+3tp0ZHgcMKE+VNGHJjEeyFG2dcSw==}
-    engines: {node: '>=14.17'}
+  '@esbuild/win32-ia32@0.21.5':
+    resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
+    engines: {node: '>=12'}
+    cpu: [ia32]
+    os: [win32]
 
-  '@semantic-release/error@4.0.0':
-    resolution: {integrity: sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==}
-    engines: {node: '>=18'}
+  '@esbuild/win32-x64@0.18.20':
+    resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [win32]
 
-  '@semantic-release/git@10.0.1':
-    resolution: {integrity: sha512-eWrx5KguUcU2wUPaO6sfvZI0wPafUKAMNC18aXY4EnNcrZL86dEmpNVnC9uMpGZkmZJ9EfCVJBQx4pV4EMGT1w==}
-    engines: {node: '>=14.17'}
-    peerDependencies:
-      semantic-release: '>=18.0.0'
+  '@esbuild/win32-x64@0.21.5':
+    resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [win32]
 
-  '@semantic-release/github@9.2.6':
-    resolution: {integrity: sha512-shi+Lrf6exeNZF+sBhK+P011LSbhmIAoUEgEY6SsxF8irJ+J2stwI5jkyDQ+4gzYyDImzV6LCKdYB9FXnQRWKA==}
-    engines: {node: '>=18'}
+  '@eslint-community/eslint-utils@4.4.0':
+    resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
+    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
     peerDependencies:
-      semantic-release: '>=20.1.0'
+      eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
 
-  '@semantic-release/npm@10.0.6':
-    resolution: {integrity: sha512-DyqHrGE8aUyapA277BB+4kV0C4iMHh3sHzUWdf0jTgp5NNJxVUz76W1f57FB64Ue03him3CBXxFqQD2xGabxow==}
-    engines: {node: '>=18'}
-    peerDependencies:
-      semantic-release: '>=20.1.0'
+  '@eslint-community/regexpp@4.11.0':
+    resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==}
+    engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
 
-  '@semantic-release/release-notes-generator@11.0.7':
-    resolution: {integrity: sha512-T09QB9ImmNx7Q6hY6YnnEbw/rEJ6a+22LBxfZq+pSAXg/OL/k0siwEm5cK4k1f9dE2Z2mPIjJKKohzUm0jbxcQ==}
-    engines: {node: '>=18'}
-    peerDependencies:
-      semantic-release: '>=20.1.0'
+  '@eslint/eslintrc@2.1.4':
+    resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
+    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
 
-  '@sinclair/typebox@0.27.8':
-    resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
+  '@eslint/js@8.57.0':
+    resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==}
+    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
 
-  '@sindresorhus/merge-streams@2.3.0':
-    resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==}
-    engines: {node: '>=18'}
+  '@ethersproject/bytes@5.7.0':
+    resolution: {integrity: sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==}
 
-  '@stablelib/aead@1.0.1':
-    resolution: {integrity: sha512-q39ik6sxGHewqtO0nP4BuSe3db5G1fEJE8ukvngS2gLkBXyy6E7pLubhbYgnkDFv6V8cWaxcE4Xn0t6LWcJkyg==}
+  '@ethersproject/logger@5.7.0':
+    resolution: {integrity: sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==}
 
-  '@stablelib/binary@1.0.1':
-    resolution: {integrity: sha512-ClJWvmL6UBM/wjkvv/7m5VP3GMr9t0osr4yVgLZsLCOz4hGN9gIAFEqnJ0TsSMAN+n840nf2cHZnA5/KFqHC7Q==}
+  '@hapi/hoek@9.3.0':
+    resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==}
 
-  '@stablelib/bytes@1.0.1':
-    resolution: {integrity: sha512-Kre4Y4kdwuqL8BR2E9hV/R5sOrUj6NanZaZis0V6lX5yzqC3hBuVSDXUIBqQv/sCpmuWRiHLwqiT1pqqjuBXoQ==}
+  '@hapi/topo@5.1.0':
+    resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==}
 
-  '@stablelib/chacha20poly1305@1.0.1':
-    resolution: {integrity: sha512-MmViqnqHd1ymwjOQfghRKw2R/jMIGT3wySN7cthjXCBdO+qErNPUBnRzqNpnvIwg7JBCg3LdeCZZO4de/yEhVA==}
+  '@humanwhocodes/config-array@0.11.14':
+    resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==}
+    engines: {node: '>=10.10.0'}
+    deprecated: Use @eslint/config-array instead
 
-  '@stablelib/chacha@1.0.1':
-    resolution: {integrity: sha512-Pmlrswzr0pBzDofdFuVe1q7KdsHKhhU24e8gkEwnTGOmlC7PADzLVxGdn2PoNVBBabdg0l/IfLKg6sHAbTQugg==}
+  '@humanwhocodes/module-importer@1.0.1':
+    resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+    engines: {node: '>=12.22'}
 
-  '@stablelib/constant-time@1.0.1':
-    resolution: {integrity: sha512-tNOs3uD0vSJcK6z1fvef4Y+buN7DXhzHDPqRLSXUel1UfqMB1PWNsnnAezrKfEwTLpN0cGH2p9NNjs6IqeD0eg==}
+  '@humanwhocodes/object-schema@2.0.3':
+    resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==}
+    deprecated: Use @eslint/object-schema instead
 
-  '@stablelib/ed25519@1.0.3':
-    resolution: {integrity: sha512-puIMWaX9QlRsbhxfDc5i+mNPMY+0TmQEskunY1rZEBPi1acBCVQAhnsk/1Hk50DGPtVsZtAWQg4NHGlVaO9Hqg==}
+  '@isaacs/cliui@8.0.2':
+    resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
+    engines: {node: '>=12'}
 
-  '@stablelib/hash@1.0.1':
-    resolution: {integrity: sha512-eTPJc/stDkdtOcrNMZ6mcMK1e6yBbqRBaNW55XA1jU8w/7QdnCF0CmMmOD1m7VSkBR44PWrMHU2l6r8YEQHMgg==}
+  '@isaacs/ttlcache@1.4.1':
+    resolution: {integrity: sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA==}
+    engines: {node: '>=12'}
 
-  '@stablelib/hkdf@1.0.1':
-    resolution: {integrity: sha512-SBEHYE16ZXlHuaW5RcGk533YlBj4grMeg5TooN80W3NpcHRtLZLLXvKyX0qcRFxf+BGDobJLnwkvgEwHIDBR6g==}
+  '@jest/create-cache-key-function@29.7.0':
+    resolution: {integrity: sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  '@stablelib/hmac@1.0.1':
-    resolution: {integrity: sha512-V2APD9NSnhVpV/QMYgCVMIYKiYG6LSqw1S65wxVoirhU/51ACio6D4yDVSwMzuTJXWZoVHbDdINioBwKy5kVmA==}
+  '@jest/environment@29.7.0':
+    resolution: {integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  '@stablelib/int@1.0.1':
-    resolution: {integrity: sha512-byr69X/sDtDiIjIV6m4roLVWnNNlRGzsvxw+agj8CIEazqWGOQp2dTYgQhtyVXV9wpO6WyXRQUzLV/JRNumT2w==}
+  '@jest/fake-timers@29.7.0':
+    resolution: {integrity: sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  '@stablelib/keyagreement@1.0.1':
-    resolution: {integrity: sha512-VKL6xBwgJnI6l1jKrBAfn265cspaWBPAPEc62VBQrWHLqVgNRE09gQ/AnOEyKUWrrqfD+xSQ3u42gJjLDdMDQg==}
+  '@jest/schemas@29.6.3':
+    resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  '@stablelib/poly1305@1.0.1':
-    resolution: {integrity: sha512-1HlG3oTSuQDOhSnLwJRKeTRSAdFNVB/1djy2ZbS35rBSJ/PFqx9cf9qatinWghC2UbfOYD8AcrtbUQl8WoxabA==}
+  '@jest/types@26.6.2':
+    resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==}
+    engines: {node: '>= 10.14.2'}
 
-  '@stablelib/random@1.0.2':
-    resolution: {integrity: sha512-rIsE83Xpb7clHPVRlBj8qNe5L8ISQOzjghYQm/dZ7VaM2KHYwMW5adjQjrzTZCchFnNCNhkwtnOBa9HTMJCI8w==}
+  '@jest/types@29.6.3':
+    resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  '@stablelib/sha256@1.0.1':
-    resolution: {integrity: sha512-GIIH3e6KH+91FqGV42Kcj71Uefd/QEe7Dy42sBTeqppXV95ggCcxLTk39bEr+lZfJmp+ghsR07J++ORkRELsBQ==}
+  '@jridgewell/gen-mapping@0.3.5':
+    resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
+    engines: {node: '>=6.0.0'}
 
-  '@stablelib/sha512@1.0.1':
-    resolution: {integrity: sha512-13gl/iawHV9zvDKciLo1fQ8Bgn2Pvf7OV6amaRVKiq3pjQ3UmEpXxWiAfV8tYjUpeZroBxtyrwtdooQT/i3hzw==}
+  '@jridgewell/resolve-uri@3.1.2':
+    resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
+    engines: {node: '>=6.0.0'}
 
-  '@stablelib/wipe@1.0.1':
-    resolution: {integrity: sha512-WfqfX/eXGiAd3RJe4VU2snh/ZPwtSjLG4ynQ/vYzvghTh7dHFcI1wl+nrkWG6lGhukOxOsUHfv8dUXr58D0ayg==}
+  '@jridgewell/set-array@1.2.1':
+    resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
+    engines: {node: '>=6.0.0'}
 
-  '@stablelib/x25519@1.0.3':
-    resolution: {integrity: sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw==}
+  '@jridgewell/source-map@0.3.6':
+    resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==}
 
-  '@starknet-io/get-starknet-core@4.0.0':
-    resolution: {integrity: sha512-M++JTbMxZJ5wCkw1f4vAXCY3BTlRMdxFScqsIgZonLXD3GKHPyM/pFi/JqorPO1o4RKHLnFX6M7r0izZ/NWpvA==}
+  '@jridgewell/sourcemap-codec@1.5.0':
+    resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
 
-  '@starknet-io/get-starknet@4.0.0':
-    resolution: {integrity: sha512-SmnRzBewS0BVjtKzViSrWXi+SvOnSrj9hnvlx8B3ZnCq9A2NuX8pNI550lDBLl/ilIr587FH2VNAj6jdgsyhJQ==}
+  '@jridgewell/trace-mapping@0.3.25':
+    resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
 
-  '@starknet-io/types-js@0.7.7':
-    resolution: {integrity: sha512-WLrpK7LIaIb8Ymxu6KF/6JkGW1sso988DweWu7p5QY/3y7waBIiPvzh27D9bX5KIJNRDyOoOVoHVEKYUYWZ/RQ==}
+  '@jridgewell/trace-mapping@0.3.9':
+    resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
 
-  '@sveltejs/vite-plugin-svelte-inspector@1.0.4':
-    resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==}
-    engines: {node: ^14.18.0 || >= 16}
-    peerDependencies:
-      '@sveltejs/vite-plugin-svelte': ^2.2.0
-      svelte: ^3.54.0 || ^4.0.0
-      vite: ^4.0.0
+  '@juggle/resize-observer@3.4.0':
+    resolution: {integrity: sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==}
 
-  '@sveltejs/vite-plugin-svelte@2.5.3':
-    resolution: {integrity: sha512-erhNtXxE5/6xGZz/M9eXsmI7Pxa6MS7jyTy06zN3Ck++ldrppOnOlJwHHTsMC7DHDQdgUp4NAc4cDNQ9eGdB/w==}
-    engines: {node: ^14.18.0 || >= 16}
-    peerDependencies:
-      svelte: ^3.54.0 || ^4.0.0 || ^5.0.0-next.0
-      vite: ^4.0.0
+  '@lit-labs/ssr-dom-shim@1.2.1':
+    resolution: {integrity: sha512-wx4aBmgeGvFmOKucFKY+8VFJSYZxs9poN3SDNQFF6lT6NrQUnHiPB2PWz2sc4ieEcAaYYzN+1uWahEeTq2aRIQ==}
 
-  '@trpc/client@10.45.2':
-    resolution: {integrity: sha512-ykALM5kYWTLn1zYuUOZ2cPWlVfrXhc18HzBDyRhoPYN0jey4iQHEFSEowfnhg1RvYnrAVjNBgHNeSAXjrDbGwg==}
-    peerDependencies:
-      '@trpc/server': 10.45.2
+  '@lit/reactive-element@1.6.3':
+    resolution: {integrity: sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ==}
 
-  '@trpc/server@10.45.2':
-    resolution: {integrity: sha512-wOrSThNNE4HUnuhJG6PfDRp4L2009KDVxsd+2VYH8ro6o/7/jwYZ8Uu5j+VaW+mOmc8EHerHzGcdbGNQSAUPgg==}
+  '@microsoft/api-extractor-model@7.28.13':
+    resolution: {integrity: sha512-39v/JyldX4MS9uzHcdfmjjfS6cYGAoXV+io8B5a338pkHiSt+gy2eXQ0Q7cGFJ7quSa1VqqlMdlPrB6sLR/cAw==}
 
-  '@tsconfig/node10@1.0.11':
-    resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==}
+  '@microsoft/api-extractor@7.43.0':
+    resolution: {integrity: sha512-GFhTcJpB+MI6FhvXEI9b2K0snulNLWHqC/BbcJtyNYcKUiw7l3Lgis5ApsYncJ0leALX7/of4XfmXk+maT111w==}
+    hasBin: true
 
-  '@tsconfig/node12@1.0.11':
-    resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==}
+  '@microsoft/tsdoc-config@0.16.2':
+    resolution: {integrity: sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==}
 
-  '@tsconfig/node14@1.0.3':
-    resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==}
+  '@microsoft/tsdoc@0.14.2':
+    resolution: {integrity: sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==}
 
-  '@tsconfig/node16@1.0.4':
-    resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==}
+  '@module-federation/runtime@0.1.21':
+    resolution: {integrity: sha512-/p4BhZ0SnjJuiL0wwu+FebFgIUJ9vM+oCY7CyprUHImyi/Y23ulI61WNWMVrKQGgdMoXQDQCL8RH4EnrVP2ZFw==}
 
-  '@tsconfig/svelte@5.0.4':
-    resolution: {integrity: sha512-BV9NplVgLmSi4mwKzD8BD/NQ8erOY/nUE/GpgWe2ckx+wIQF5RyRirn/QsSSCPeulVpc3RA/iJt6DpfTIZps0Q==}
+  '@module-federation/sdk@0.1.21':
+    resolution: {integrity: sha512-r7xPiAm+O4e+8Zvw+8b4ToeD0D0VJD004nHmt+Y8r/l98J2eA6di72Vn1FeyjtQbCrFtiMw3ts/dlqtcmIBipw==}
 
-  '@types/argparse@1.0.38':
-    resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==}
+  '@motionone/animation@10.18.0':
+    resolution: {integrity: sha512-9z2p5GFGCm0gBsZbi8rVMOAJCtw1WqBTIPw3ozk06gDvZInBPIsQcHgYogEJ4yuHJ+akuW8g1SEIOpTOvYs8hw==}
 
-  '@types/async-retry@1.4.8':
-    resolution: {integrity: sha512-Qup/B5PWLe86yI5I3av6ePGaeQrIHNKCwbsQotD6aHQ6YkHsMUxVZkZsmx/Ry3VZQ6uysHwTjQ7666+k6UjVJA==}
-
-  '@types/estree@1.0.5':
-    resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
-
-  '@types/json-schema@7.0.15':
-    resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+  '@motionone/dom@10.18.0':
+    resolution: {integrity: sha512-bKLP7E0eyO4B2UaHBBN55tnppwRnaE3KFfh3Ps9HhnAkar3Cb69kUCJY9as8LrccVYKgHA+JY5dOQqJLOPhF5A==}
 
-  '@types/json5@0.0.29':
-    resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
+  '@motionone/easing@10.18.0':
+    resolution: {integrity: sha512-VcjByo7XpdLS4o9T8t99JtgxkdMcNWD3yHU/n6CLEz3bkmKDRZyYQ/wmSf6daum8ZXqfUAgFeCZSpJZIMxaCzg==}
 
-  '@types/lodash-es@4.17.12':
-    resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==}
+  '@motionone/generators@10.18.0':
+    resolution: {integrity: sha512-+qfkC2DtkDj4tHPu+AFKVfR/C30O1vYdvsGYaR13W/1cczPrrcjdvYCj0VLFuRMN+lP1xvpNZHCRNM4fBzn1jg==}
 
-  '@types/lodash@4.17.7':
-    resolution: {integrity: sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==}
+  '@motionone/svelte@10.16.4':
+    resolution: {integrity: sha512-zRVqk20lD1xqe+yEDZhMYgftsuHc25+9JSo+r0a0OWUJFocjSV9D/+UGhX4xgJsuwB9acPzXLr20w40VnY2PQA==}
 
-  '@types/minimist@1.2.5':
-    resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==}
+  '@motionone/types@10.17.1':
+    resolution: {integrity: sha512-KaC4kgiODDz8hswCrS0btrVrzyU2CSQKO7Ps90ibBVSQmjkrt2teqta6/sOG59v7+dPnKMAg13jyqtMKV2yJ7A==}
 
-  '@types/node@20.14.15':
-    resolution: {integrity: sha512-Fz1xDMCF/B00/tYSVMlmK7hVeLh7jE5f3B7X1/hmV0MJBwE27KlS7EvD/Yp+z1lm8mVhwV5w+n8jOZG8AfTlKw==}
+  '@motionone/utils@10.18.0':
+    resolution: {integrity: sha512-3XVF7sgyTSI2KWvTf6uLlBJ5iAgRgmvp3bpuOiQJvInd4nZ19ET8lX5unn30SlmRH7hXbBbH+Gxd0m0klJ3Xtw==}
 
-  '@types/node@20.5.1':
-    resolution: {integrity: sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg==}
+  '@motionone/vue@10.16.4':
+    resolution: {integrity: sha512-z10PF9JV6SbjFq+/rYabM+8CVlMokgl8RFGvieSGNTmrkQanfHn+15XBrhG3BgUfvmTeSeyShfOHpG0i9zEdcg==}
+    deprecated: Motion One for Vue is deprecated. Use Oku Motion instead https://oku-ui.com/motion
 
-  '@types/normalize-package-data@2.4.4':
-    resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
+  '@next/eslint-plugin-next@13.5.6':
+    resolution: {integrity: sha512-ng7pU/DDsxPgT6ZPvuprxrkeew3XaRf4LAT4FabaEO/hAbvVx4P7wqnqdbTdDn1kgTvsI4tpIgT4Awn/m0bGbg==}
 
-  '@types/pug@2.0.10':
-    resolution: {integrity: sha512-Sk/uYFOBAB7mb74XcpizmH0KOR2Pv3D2Hmrh1Dmy5BmK3MpdSa5kqZcg6EKBdklU0bFXX9gCfzvpnyUehrPIuA==}
+  '@noble/curves@1.0.0':
+    resolution: {integrity: sha512-2upgEu0iLiDVDZkNLeFV2+ht0BAVgQnEmCk6JsOch9Rp8xfkMCbvbAZlA2pBHQc73dbl+vFOXfqkf4uemdn0bw==}
 
-  '@types/retry@0.12.5':
-    resolution: {integrity: sha512-3xSjTp3v03X/lSQLkczaN9UIEwJMoMCA1+Nb5HfbJEQWogdeQIyVtTvxPXDQjZ5zws8rFQfVfRdz03ARihPJgw==}
+  '@noble/curves@1.3.0':
+    resolution: {integrity: sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==}
 
-  '@types/semver@7.5.8':
-    resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==}
+  '@noble/curves@1.4.2':
+    resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==}
 
-  '@types/trusted-types@2.0.7':
-    resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
+  '@noble/hashes@1.2.0':
+    resolution: {integrity: sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==}
 
-  '@typescript-eslint/eslint-plugin@6.21.0':
-    resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==}
-    engines: {node: ^16.0.0 || >=18.0.0}
-    peerDependencies:
-      '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha
-      eslint: ^7.0.0 || ^8.0.0
-      typescript: '*'
-    peerDependenciesMeta:
-      typescript:
-        optional: true
+  '@noble/hashes@1.3.0':
+    resolution: {integrity: sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==}
 
-  '@typescript-eslint/parser@6.21.0':
-    resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==}
-    engines: {node: ^16.0.0 || >=18.0.0}
-    peerDependencies:
-      eslint: ^7.0.0 || ^8.0.0
-      typescript: '*'
-    peerDependenciesMeta:
-      typescript:
-        optional: true
+  '@noble/hashes@1.3.3':
+    resolution: {integrity: sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==}
+    engines: {node: '>= 16'}
 
-  '@typescript-eslint/scope-manager@6.21.0':
-    resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==}
-    engines: {node: ^16.0.0 || >=18.0.0}
+  '@noble/hashes@1.4.0':
+    resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==}
+    engines: {node: '>= 16'}
 
-  '@typescript-eslint/type-utils@6.21.0':
-    resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==}
-    engines: {node: ^16.0.0 || >=18.0.0}
-    peerDependencies:
-      eslint: ^7.0.0 || ^8.0.0
-      typescript: '*'
-    peerDependenciesMeta:
-      typescript:
-        optional: true
+  '@noble/hashes@1.5.0':
+    resolution: {integrity: sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==}
+    engines: {node: ^14.21.3 || >=16}
 
-  '@typescript-eslint/types@6.21.0':
-    resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==}
-    engines: {node: ^16.0.0 || >=18.0.0}
+  '@noble/secp256k1@1.7.1':
+    resolution: {integrity: sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==}
 
-  '@typescript-eslint/typescript-estree@6.21.0':
-    resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==}
-    engines: {node: ^16.0.0 || >=18.0.0}
-    peerDependencies:
-      typescript: '*'
-    peerDependenciesMeta:
-      typescript:
-        optional: true
+  '@nodelib/fs.scandir@2.1.5':
+    resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+    engines: {node: '>= 8'}
 
-  '@typescript-eslint/utils@6.21.0':
-    resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==}
-    engines: {node: ^16.0.0 || >=18.0.0}
-    peerDependencies:
-      eslint: ^7.0.0 || ^8.0.0
+  '@nodelib/fs.stat@2.0.5':
+    resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+    engines: {node: '>= 8'}
 
-  '@typescript-eslint/visitor-keys@6.21.0':
-    resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==}
-    engines: {node: ^16.0.0 || >=18.0.0}
+  '@nodelib/fs.walk@1.2.8':
+    resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+    engines: {node: '>= 8'}
 
-  '@ungap/structured-clone@1.2.0':
-    resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
+  '@octokit/auth-token@4.0.0':
+    resolution: {integrity: sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==}
+    engines: {node: '>= 18'}
 
-  '@vitest/expect@1.6.0':
-    resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==}
+  '@octokit/core@5.2.0':
+    resolution: {integrity: sha512-1LFfa/qnMQvEOAdzlQymH0ulepxbxnCYAKJZfMci/5XJyIHWgEYnDmgnKakbTh7CH2tFQ5O60oYDvns4i9RAIg==}
+    engines: {node: '>= 18'}
 
-  '@vitest/runner@1.6.0':
-    resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==}
+  '@octokit/endpoint@9.0.5':
+    resolution: {integrity: sha512-ekqR4/+PCLkEBF6qgj8WqJfvDq65RH85OAgrtnVp1mSxaXF03u2xW/hUdweGS5654IlC0wkNYC18Z50tSYTAFw==}
+    engines: {node: '>= 18'}
 
-  '@vitest/snapshot@1.6.0':
-    resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==}
+  '@octokit/graphql@7.1.0':
+    resolution: {integrity: sha512-r+oZUH7aMFui1ypZnAvZmn0KSqAUgE1/tUXIWaqUCa1758ts/Jio84GZuzsvUkme98kv0WFY8//n0J1Z+vsIsQ==}
+    engines: {node: '>= 18'}
 
-  '@vitest/spy@1.6.0':
-    resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==}
+  '@octokit/openapi-types@20.0.0':
+    resolution: {integrity: sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==}
 
-  '@vitest/utils@1.6.0':
-    resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==}
+  '@octokit/openapi-types@22.2.0':
+    resolution: {integrity: sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==}
 
-  '@volar/language-core@1.11.1':
-    resolution: {integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==}
+  '@octokit/plugin-paginate-rest@9.2.1':
+    resolution: {integrity: sha512-wfGhE/TAkXZRLjksFXuDZdmGnJQHvtU/joFQdweXUgzo1XwvBCD4o4+75NtFfjfLK5IwLf9vHTfSiU3sLRYpRw==}
+    engines: {node: '>= 18'}
+    peerDependencies:
+      '@octokit/core': '5'
 
-  '@volar/source-map@1.11.1':
-    resolution: {integrity: sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==}
+  '@octokit/plugin-retry@6.0.1':
+    resolution: {integrity: sha512-SKs+Tz9oj0g4p28qkZwl/topGcb0k0qPNX/i7vBKmDsjoeqnVfFUquqrE/O9oJY7+oLzdCtkiWSXLpLjvl6uog==}
+    engines: {node: '>= 18'}
+    peerDependencies:
+      '@octokit/core': '>=5'
 
-  '@volar/typescript@1.11.1':
-    resolution: {integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==}
+  '@octokit/plugin-throttling@8.2.0':
+    resolution: {integrity: sha512-nOpWtLayKFpgqmgD0y3GqXafMFuKcA4tRPZIfu7BArd2lEZeb1988nhWhwx4aZWmjDmUfdgVf7W+Tt4AmvRmMQ==}
+    engines: {node: '>= 18'}
+    peerDependencies:
+      '@octokit/core': ^5.0.0
 
-  '@vue/compiler-core@3.4.38':
-    resolution: {integrity: sha512-8IQOTCWnLFqfHzOGm9+P8OPSEDukgg3Huc92qSG49if/xI2SAwLHQO2qaPQbjCWPBcQoO1WYfXfTACUrWV3c5A==}
+  '@octokit/request-error@5.1.0':
+    resolution: {integrity: sha512-GETXfE05J0+7H2STzekpKObFe765O5dlAKUTLNGeH+x47z7JjXHfsHKo5z21D/o/IOZTUEI6nyWyR+bZVP/n5Q==}
+    engines: {node: '>= 18'}
 
-  '@vue/compiler-dom@3.4.38':
-    resolution: {integrity: sha512-Osc/c7ABsHXTsETLgykcOwIxFktHfGSUDkb05V61rocEfsFDcjDLH/IHJSNJP+/Sv9KeN2Lx1V6McZzlSb9EhQ==}
+  '@octokit/request@8.4.0':
+    resolution: {integrity: sha512-9Bb014e+m2TgBeEJGEbdplMVWwPmL1FPtggHQRkV+WVsMggPtEkLKPlcVYm/o8xKLkpJ7B+6N8WfQMtDLX2Dpw==}
+    engines: {node: '>= 18'}
 
-  '@vue/language-core@1.8.27':
-    resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==}
-    peerDependencies:
-      typescript: '*'
-    peerDependenciesMeta:
-      typescript:
-        optional: true
+  '@octokit/types@12.6.0':
+    resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==}
 
-  '@vue/shared@3.4.38':
-    resolution: {integrity: sha512-q0xCiLkuWWQLzVrecPb0RMsNWyxICOjPrcrwxTUEHb1fsnvni4dcuyG7RT/Ie7VPTvnjzIaWzRMUBsrqNj/hhw==}
+  '@octokit/types@13.5.0':
+    resolution: {integrity: sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ==}
 
-  '@walletconnect/core@2.14.0':
-    resolution: {integrity: sha512-E/dgBM9q3judXnTfZQ5ILvDpeSdDpabBLsXtYXa3Nyc26cfNplfLJ2nXm9FgtTdhM1nZ7yx4+zDPiXawBRZl2g==}
+  '@parcel/watcher-android-arm64@2.4.1':
+    resolution: {integrity: sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [arm64]
+    os: [android]
 
-  '@walletconnect/environment@1.0.1':
-    resolution: {integrity: sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==}
+  '@parcel/watcher-darwin-arm64@2.4.1':
+    resolution: {integrity: sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [arm64]
+    os: [darwin]
 
-  '@walletconnect/ethereum-provider@2.14.0':
-    resolution: {integrity: sha512-Cc2/DCn85VciA10BrsNWFM//3VC1D8yjwrjfUKjGndLPDz0YIdAxTgYZViIlMjE0lzQC/DMvPYEAnGfW0O1Bwg==}
+  '@parcel/watcher-darwin-x64@2.4.1':
+    resolution: {integrity: sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [x64]
+    os: [darwin]
 
-  '@walletconnect/events@1.0.1':
-    resolution: {integrity: sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ==}
+  '@parcel/watcher-freebsd-x64@2.4.1':
+    resolution: {integrity: sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [x64]
+    os: [freebsd]
 
-  '@walletconnect/heartbeat@1.2.2':
-    resolution: {integrity: sha512-uASiRmC5MwhuRuf05vq4AT48Pq8RMi876zV8rr8cV969uTOzWdB/k+Lj5yI2PBtB1bGQisGen7MM1GcZlQTBXw==}
+  '@parcel/watcher-linux-arm-glibc@2.4.1':
+    resolution: {integrity: sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [arm]
+    os: [linux]
 
-  '@walletconnect/jsonrpc-http-connection@1.0.8':
-    resolution: {integrity: sha512-+B7cRuaxijLeFDJUq5hAzNyef3e3tBDIxyaCNmFtjwnod5AGis3RToNqzFU33vpVcxFhofkpE7Cx+5MYejbMGw==}
+  '@parcel/watcher-linux-arm64-glibc@2.4.1':
+    resolution: {integrity: sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [arm64]
+    os: [linux]
 
-  '@walletconnect/jsonrpc-provider@1.0.14':
-    resolution: {integrity: sha512-rtsNY1XqHvWj0EtITNeuf8PHMvlCLiS3EjQL+WOkxEOA4KPxsohFnBDeyPYiNm4ZvkQdLnece36opYidmtbmow==}
+  '@parcel/watcher-linux-arm64-musl@2.4.1':
+    resolution: {integrity: sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [arm64]
+    os: [linux]
 
-  '@walletconnect/jsonrpc-types@1.0.4':
-    resolution: {integrity: sha512-P6679fG/M+wuWg9TY8mh6xFSdYnFyFjwFelxyISxMDrlbXokorEVXYOxiqEbrU3x1BmBoCAJJ+vtEaEoMlpCBQ==}
+  '@parcel/watcher-linux-x64-glibc@2.4.1':
+    resolution: {integrity: sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [x64]
+    os: [linux]
 
-  '@walletconnect/jsonrpc-utils@1.0.8':
-    resolution: {integrity: sha512-vdeb03bD8VzJUL6ZtzRYsFMq1eZQcM3EAzT0a3st59dyLfJ0wq+tKMpmGH7HlB7waD858UWgfIcudbPFsbzVdw==}
+  '@parcel/watcher-linux-x64-musl@2.4.1':
+    resolution: {integrity: sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [x64]
+    os: [linux]
 
-  '@walletconnect/jsonrpc-ws-connection@1.0.14':
-    resolution: {integrity: sha512-Jsl6fC55AYcbkNVkwNM6Jo+ufsuCQRqViOQ8ZBPH9pRREHH9welbBiszuTLqEJiQcO/6XfFDl6bzCJIkrEi8XA==}
+  '@parcel/watcher-wasm@2.4.1':
+    resolution: {integrity: sha512-/ZR0RxqxU/xxDGzbzosMjh4W6NdYFMqq2nvo2b8SLi7rsl/4jkL8S5stIikorNkdR50oVDvqb/3JT05WM+CRRA==}
+    engines: {node: '>= 10.0.0'}
+    bundledDependencies:
+      - napi-wasm
 
-  '@walletconnect/keyvaluestorage@1.1.1':
-    resolution: {integrity: sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA==}
-    peerDependencies:
-      '@react-native-async-storage/async-storage': 1.x
-    peerDependenciesMeta:
-      '@react-native-async-storage/async-storage':
-        optional: true
+  '@parcel/watcher-win32-arm64@2.4.1':
+    resolution: {integrity: sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [arm64]
+    os: [win32]
 
-  '@walletconnect/logger@2.1.2':
-    resolution: {integrity: sha512-aAb28I3S6pYXZHQm5ESB+V6rDqIYfsnHaQyzFbwUUBFY4H0OXx/YtTl8lvhUNhMMfb9UxbwEBS253TlXUYJWSw==}
+  '@parcel/watcher-win32-ia32@2.4.1':
+    resolution: {integrity: sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [ia32]
+    os: [win32]
 
-  '@walletconnect/modal-core@2.6.2':
-    resolution: {integrity: sha512-cv8ibvdOJQv2B+nyxP9IIFdxvQznMz8OOr/oR/AaUZym4hjXNL/l1a2UlSQBXrVjo3xxbouMxLb3kBsHoYP2CA==}
+  '@parcel/watcher-win32-x64@2.4.1':
+    resolution: {integrity: sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==}
+    engines: {node: '>= 10.0.0'}
+    cpu: [x64]
+    os: [win32]
 
-  '@walletconnect/modal-ui@2.6.2':
-    resolution: {integrity: sha512-rbdstM1HPGvr7jprQkyPggX7rP4XiCG85ZA+zWBEX0dVQg8PpAgRUqpeub4xQKDgY7pY/xLRXSiCVdWGqvG2HA==}
+  '@parcel/watcher@2.4.1':
+    resolution: {integrity: sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==}
+    engines: {node: '>= 10.0.0'}
 
-  '@walletconnect/modal@2.6.2':
-    resolution: {integrity: sha512-eFopgKi8AjKf/0U4SemvcYw9zlLpx9njVN8sf6DAkowC2Md0gPU/UNEbH1Wwj407pEKnEds98pKWib1NN1ACoA==}
+  '@pkgjs/parseargs@0.11.0':
+    resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
+    engines: {node: '>=14'}
 
-  '@walletconnect/relay-api@1.0.10':
-    resolution: {integrity: sha512-tqrdd4zU9VBNqUaXXQASaexklv6A54yEyQQEXYOCr+Jz8Ket0dmPBDyg19LVSNUN2cipAghQc45/KVmfFJ0cYw==}
+  '@pkgr/core@0.1.1':
+    resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==}
+    engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
 
-  '@walletconnect/relay-auth@1.0.4':
-    resolution: {integrity: sha512-kKJcS6+WxYq5kshpPaxGHdwf5y98ZwbfuS4EE/NkQzqrDFm5Cj+dP8LofzWvjrrLkZq7Afy7WrQMXdLy8Sx7HQ==}
+  '@pnpm/config.env-replace@1.1.0':
+    resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==}
+    engines: {node: '>=12.22.0'}
 
-  '@walletconnect/safe-json@1.0.2':
-    resolution: {integrity: sha512-Ogb7I27kZ3LPC3ibn8ldyUr5544t3/STow9+lzz7Sfo808YD7SBWk7SAsdBFlYgP2zDRy2hS3sKRcuSRM0OTmA==}
+  '@pnpm/network.ca-file@1.0.2':
+    resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==}
+    engines: {node: '>=12.22.0'}
 
-  '@walletconnect/sign-client@2.14.0':
-    resolution: {integrity: sha512-UrB3S3eLjPYfBLCN3WJ5u7+WcZ8kFMe/QIDqLf76Jk6TaLwkSUy563LvnSw4KW/kA+/cY1KBSdUDfX1tzYJJXg==}
+  '@pnpm/npm-conf@2.3.1':
+    resolution: {integrity: sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==}
+    engines: {node: '>=12'}
 
-  '@walletconnect/signer-connection@2.14.0':
-    resolution: {integrity: sha512-l9RHZpLxIzLywf1c1DiG6etNO/1s7UChFWZtIplPtb+4V6c+4BDkkrS0L6U/R9rdfboslmiEPYwNypQkPRS9aQ==}
+  '@polka/url@1.0.0-next.28':
+    resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==}
 
-  '@walletconnect/time@1.0.2':
-    resolution: {integrity: sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g==}
+  '@popperjs/core@2.11.8':
+    resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==}
 
-  '@walletconnect/types@2.14.0':
-    resolution: {integrity: sha512-vevMi4jZLJ55vLuFOicQFmBBbLyb+S0sZS4IsaBdZkQflfGIq34HkN13c/KPl4Ye0aoR4/cUcUSitmGIzEQM5g==}
+  '@reach/portal@0.13.2':
+    resolution: {integrity: sha512-g74BnCdtuTGthzzHn2cWW+bcyIYb0iIE/yRsm89i8oNzNgpopbkh9UY8TPbhNlys52h7U60s4kpRTmcq+JqsTA==}
+    peerDependencies:
+      react: ^16.8.0 || 17.x
+      react-dom: ^16.8.0 || 17.x
 
-  '@walletconnect/universal-provider@2.14.0':
-    resolution: {integrity: sha512-Mr8uoTmD6H0+Hh+3gxBu4l3T2uP/nNPR02sVtwEujNum++F727mMk+ifPRIpkVo21V/bvXFEy8sHTs5hqyq5iA==}
+  '@reach/utils@0.13.2':
+    resolution: {integrity: sha512-3ir6cN60zvUrwjOJu7C6jec/samqAeyAB12ZADK+qjnmQPdzSYldrFWwDVV5H0WkhbYXR3uh+eImu13hCetNPQ==}
+    peerDependencies:
+      react: ^16.8.0 || 17.x
+      react-dom: ^16.8.0 || 17.x
 
-  '@walletconnect/utils@2.14.0':
-    resolution: {integrity: sha512-vRVomYQEtEAyCK2c5bzzEvtgxaGGITF8mWuIL+WYSAMyEJLY97mirP2urDucNwcUczwxUgI+no9RiNFbUHreQQ==}
+  '@react-native-community/cli-clean@14.1.0':
+    resolution: {integrity: sha512-/C4j1yntLo6faztNgZnsDtgpGqa6j0+GYrxOY8LqaKAN03OCnoeUUKO6w78dycbYSGglc1xjJg2RZI/M2oF2AA==}
 
-  '@walletconnect/window-getters@1.0.1':
-    resolution: {integrity: sha512-vHp+HqzGxORPAN8gY03qnbTMnhqIwjeRJNOMOAzePRg4xVEEE2WvYsI9G2NMjOknA8hnuYbU3/hwLcKbjhc8+Q==}
+  '@react-native-community/cli-config@14.1.0':
+    resolution: {integrity: sha512-P3FK2rPUJBD1fmQHLgTqpHxsc111pnMdEEFR7KeqprCNz+Qr2QpPxfNy0V7s15tGL5rAv+wpbOGcioIV50EbxA==}
 
-  '@walletconnect/window-metadata@1.0.1':
-    resolution: {integrity: sha512-9koTqyGrM2cqFRW517BPY/iEtUDx2r1+Pwwu5m7sJ7ka79wi3EyqhqcICk/yDmv6jAS1rjKgTKXlEhanYjijcA==}
+  '@react-native-community/cli-debugger-ui@14.1.0':
+    resolution: {integrity: sha512-+YbeCL0wLcBcqDwraJFGsqzcXu9S+bwTVrfImne/4mT6itfe3Oa93yrOVJgNbstrt5pJHuwpU76ZXfXoiuncsg==}
 
-  JSONStream@1.3.5:
-    resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==}
-    hasBin: true
+  '@react-native-community/cli-doctor@14.1.0':
+    resolution: {integrity: sha512-xIf0oQDRKt7lufUenRwcLYdINGc0x1FSXHaHjd7lQDGT5FJnCEYlIkYEDDgAl5tnVJSvM/IL2c6O+mffkNEPzQ==}
 
-  abi-wan-kanabi@2.2.2:
-    resolution: {integrity: sha512-sTCv2HyNIj1x2WFUoc9oL8ZT9liosrL+GoqEGZJK1kDND096CfA7lwx06vLxLWMocQ41FQXO3oliwoh/UZHYdQ==}
-    hasBin: true
+  '@react-native-community/cli-platform-android@14.1.0':
+    resolution: {integrity: sha512-4JnXkAV+ca8XdUhZ7xjgDhXAMwTVjQs8JqiwP7FTYVrayShXy2cBXm/C3HNDoe+oQOF5tPT2SqsDAF2vYTnKiQ==}
 
-  acorn-jsx@5.3.2:
-    resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
-    peerDependencies:
-      acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+  '@react-native-community/cli-platform-apple@14.1.0':
+    resolution: {integrity: sha512-DExd+pZ7hHxXt8I6BBmckeYUxxq7PQ+o4YSmGIeQx0xUpi+f82obBct2WNC3VWU72Jw6obwfoN6Fwe6F7Wxp5Q==}
 
-  acorn-walk@8.3.3:
-    resolution: {integrity: sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==}
-    engines: {node: '>=0.4.0'}
+  '@react-native-community/cli-platform-ios@14.1.0':
+    resolution: {integrity: sha512-ah/ZTiJXUdCVHujyRJ4OmCL5nTq8OWcURcE3UXa1z0sIIiA8io06n+v5n299T9rtPKMwRtVJlQjtO/nbODABPQ==}
 
-  acorn@8.12.1:
-    resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==}
-    engines: {node: '>=0.4.0'}
-    hasBin: true
+  '@react-native-community/cli-server-api@14.1.0':
+    resolution: {integrity: sha512-1k2LBQaYsy9RDWFIfKVne3frOye73O33MV6eYMoRPff7wqxHCrsX1CYJQkmwpgVigZHxYwalHj+Axtu3gpomCA==}
 
-  agent-base@7.1.1:
-    resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==}
-    engines: {node: '>= 14'}
+  '@react-native-community/cli-tools@14.1.0':
+    resolution: {integrity: sha512-r1KxSu2+OSuhWFoE//1UR7aSTXMLww/UYWQprEw4bSo/kvutGX//4r9ywgXSWp+39udpNN4jQpNTHuWhGZd/Bg==}
 
-  aggregate-error@3.1.0:
-    resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
-    engines: {node: '>=8'}
+  '@react-native-community/cli-types@14.1.0':
+    resolution: {integrity: sha512-aJwZI9mGRx3HdP8U4CGhqjt3S4r8GmeOqv4kRagC1UHDk4QNMC+bZ8JgPA4W7FrGiPey+lJQHMDPAXOo51SOUw==}
 
-  aggregate-error@5.0.0:
-    resolution: {integrity: sha512-gOsf2YwSlleG6IjRYG2A7k0HmBMEo6qVNk9Bp/EaLgAJT5ngH6PXbqa4ItvnEwCm/velL5jAnQgsHsWnjhGmvw==}
+  '@react-native-community/cli@14.1.0':
+    resolution: {integrity: sha512-k7aTdKNZIec7WMSqMJn9bDVLWPPOaYmshXcnjWy6t5ItsJnREju9p2azMTR5tXY5uIeynose3cxettbhk2Tbnw==}
     engines: {node: '>=18'}
+    hasBin: true
 
-  ajv@6.12.6:
-    resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+  '@react-native/assets-registry@0.75.4':
+    resolution: {integrity: sha512-WX6/LNHwyjislSFM+h3qQjBiPaXXPJW5ZV4TdgNKb6QOPO0g1KGYRQj44cI2xSpZ3fcWrvQFZfQgSMbVK9Sg7A==}
+    engines: {node: '>=18'}
 
-  ajv@8.17.1:
-    resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==}
+  '@react-native/babel-plugin-codegen@0.75.4':
+    resolution: {integrity: sha512-gu5ZRIdr7+ufi09DJROhfDtbF4biTnCDJqtqcmtsku4cXOXPHE36QbC/vAmKEZ0PMPURBI8lwF2wfaeHLn7gig==}
+    engines: {node: '>=18'}
 
-  ansi-escapes@5.0.0:
-    resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==}
-    engines: {node: '>=12'}
+  '@react-native/babel-preset@0.75.4':
+    resolution: {integrity: sha512-UtyYCDJ3rZIeggyFEfh/q5t/FZ5a1h9F8EI37Nbrwyk/OKPH+1XS4PbHROHJzBARlJwOAfmT75+ovYUO0eakJA==}
+    engines: {node: '>=18'}
+    peerDependencies:
+      '@babel/core': '*'
 
-  ansi-escapes@6.2.1:
-    resolution: {integrity: sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig==}
-    engines: {node: '>=14.16'}
+  '@react-native/codegen@0.75.4':
+    resolution: {integrity: sha512-0FplNAD/S5FUvm8YIn6uyarOcP4jdJPqWz17K4a/Gp2KSsG/JJKEskX3aj5wpePzVfNQl3WyvBJ0whODdCocIA==}
+    engines: {node: '>=18'}
+    peerDependencies:
+      '@babel/preset-env': ^7.1.6
 
-  ansi-regex@5.0.1:
-    resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
-    engines: {node: '>=8'}
+  '@react-native/community-cli-plugin@0.75.4':
+    resolution: {integrity: sha512-k/hevYPjEpW0MNVVyb3v9PJosOP+FzenS7+oqYNLXdEmgTnGHrAtYX9ABrJJgzeJt7I6g8g+RDvm8PSE+tnM5w==}
+    engines: {node: '>=18'}
 
-  ansi-regex@6.0.1:
-    resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
-    engines: {node: '>=12'}
+  '@react-native/debugger-frontend@0.75.4':
+    resolution: {integrity: sha512-QfGurR5hV6bhMPn/6VxS2RomYrPRFGwA03jJr+zKyWHnxDAu5jOqYVyKAktIIbhYe5sPp78QVl1ZYuhcnsRbEw==}
+    engines: {node: '>=18'}
 
-  ansi-styles@3.2.1:
-    resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
-    engines: {node: '>=4'}
+  '@react-native/dev-middleware@0.75.4':
+    resolution: {integrity: sha512-UhyBeQOG2wNcvrUGw3+IBrHBk/lIu7hHGmWt4j8W9Aqv9BwktHKkPyko+5A1yoUeO1O/VDnHWYqWeOejcA9wpQ==}
+    engines: {node: '>=18'}
 
-  ansi-styles@4.3.0:
-    resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
-    engines: {node: '>=8'}
+  '@react-native/gradle-plugin@0.75.4':
+    resolution: {integrity: sha512-kKTmw7cF7p1raT30DC0L6N+xiVXN7dlRy0J+hYPiCRRVHplwgvyS7pszjxfzwXmHFqOxwpxQVI3du8opsma1Mg==}
+    engines: {node: '>=18'}
 
-  ansi-styles@5.2.0:
-    resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
-    engines: {node: '>=10'}
+  '@react-native/js-polyfills@0.75.4':
+    resolution: {integrity: sha512-NF5ID5FjcVHBYk1LQ4JMRjPmxBWEo4yoqW1m6vGOQZPT8D5Qs9afgx3f7gQatxbn3ivMh0FVbLW0zBx6LyxEzA==}
+    engines: {node: '>=18'}
 
-  ansi-styles@6.2.1:
-    resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
-    engines: {node: '>=12'}
+  '@react-native/metro-babel-transformer@0.75.4':
+    resolution: {integrity: sha512-O0WMW/K8Ny/MAAeRebqGEQhrbzcioxcPHZtos+EH2hWeBTEKHQV8fMYYxfYDabpr392qdhSBwg3LlXUD4U3PXQ==}
+    engines: {node: '>=18'}
+    peerDependencies:
+      '@babel/core': '*'
 
-  ansicolors@0.3.2:
-    resolution: {integrity: sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==}
+  '@react-native/normalize-colors@0.75.4':
+    resolution: {integrity: sha512-90QrQDLg0/k9xqYesaKuIkayOSjD+FKa0hsHollbwT5h3kuGMY+lU7UZxnb8tU55Y1PKdvjYxqQsYWI/ql79zA==}
 
-  any-promise@1.3.0:
-    resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
+  '@react-native/virtualized-lists@0.75.4':
+    resolution: {integrity: sha512-iEauRiXjvWG/iOH8bV+9MfepCS+72cuL5rhkrenYZS0NUnDcNjF+wtaoS9+Gx5z1UJOfEXxSmyXRtQJZne8SnA==}
+    engines: {node: '>=18'}
+    peerDependencies:
+      '@types/react': ^18.2.6
+      react: '*'
+      react-native: '*'
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
 
-  anymatch@3.1.3:
-    resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
-    engines: {node: '>= 8'}
+  '@react-spring/animated@9.7.5':
+    resolution: {integrity: sha512-Tqrwz7pIlsSDITzxoLS3n/v/YCUHQdOIKtOJf4yL6kYVSDTSmVK1LI1Q3M/uu2Sx4X3pIWF3xLUhlsA6SPNTNg==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
 
-  arg@4.1.3:
-    resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==}
+  '@react-spring/core@9.7.5':
+    resolution: {integrity: sha512-rmEqcxRcu7dWh7MnCcMXLvrf6/SDlSokLaLTxiPlAYi11nN3B5oiCUAblO72o+9z/87j2uzxa2Inm8UbLjXA+w==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
 
-  arg@5.0.2:
-    resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
+  '@react-spring/konva@9.7.5':
+    resolution: {integrity: sha512-BelrmyY6w0FGoNSEfSJltjQDUoW0Prxf+FzGjyLuLs+V9M9OM/aHnYqOlvQEfQsZx6C/ZiDOn5BZl8iH8SDf+Q==}
+    peerDependencies:
+      konva: '>=2.6'
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+      react-konva: ^16.8.0 || ^16.8.7-0 || ^16.9.0-0 || ^16.10.1-0 || ^16.12.0-0 || ^16.13.0-0 || ^17.0.0-0 || ^17.0.1-0 || ^17.0.2-0 || ^18.0.0-0
 
-  argparse@1.0.10:
-    resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
+  '@react-spring/native@9.7.5':
+    resolution: {integrity: sha512-C1S500BNP1I05MftElyLv2nIqaWQ0MAByOAK/p4vuXcUK3XcjFaAJ385gVLgV2rgKfvkqRoz97PSwbh+ZCETEg==}
+    peerDependencies:
+      react: 16.8.0  || >=17.0.0 || >=18.0.0
+      react-native: '>=0.58'
 
-  argparse@2.0.1:
-    resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+  '@react-spring/rafz@9.7.5':
+    resolution: {integrity: sha512-5ZenDQMC48wjUzPAm1EtwQ5Ot3bLIAwwqP2w2owG5KoNdNHpEJV263nGhCeKKmuA3vG2zLLOdu3or6kuDjA6Aw==}
 
-  argv-formatter@1.0.0:
-    resolution: {integrity: sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==}
+  '@react-spring/shared@9.7.5':
+    resolution: {integrity: sha512-wdtoJrhUeeyD/PP/zo+np2s1Z820Ohr/BbuVYv+3dVLW7WctoiN7std8rISoYoHpUXtbkpesSKuPIw/6U1w1Pw==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
 
-  aria-query@5.1.3:
-    resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==}
+  '@react-spring/three@9.7.5':
+    resolution: {integrity: sha512-RxIsCoQfUqOS3POmhVHa1wdWS0wyHAUway73uRLp3GAL5U2iYVNdnzQsep6M2NZ994BlW8TcKuMtQHUqOsy6WA==}
+    peerDependencies:
+      '@react-three/fiber': '>=6.0'
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+      three: '>=0.126'
 
-  aria-query@5.3.0:
-    resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==}
+  '@react-spring/types@9.7.5':
+    resolution: {integrity: sha512-HVj7LrZ4ReHWBimBvu2SKND3cDVUPWKLqRTmWe/fNY6o1owGOX0cAHbdPDTMelgBlVbrTKrre6lFkhqGZErK/g==}
 
-  array-buffer-byte-length@1.0.1:
-    resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==}
-    engines: {node: '>= 0.4'}
+  '@react-spring/web@9.7.5':
+    resolution: {integrity: sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+      react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
 
-  array-ify@1.0.0:
-    resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==}
+  '@react-spring/zdog@9.7.5':
+    resolution: {integrity: sha512-VV7vmb52wGHgDA1ry6hv+QgxTs78fqjKEQnj+M8hiBg+dwOsTtqqM24ADtc4cMAhPW+eZhVps8ZNKtjt8ouHFA==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+      react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
+      react-zdog: '>=1.0'
+      zdog: '>=1.0'
 
-  array-includes@3.1.8:
-    resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==}
-    engines: {node: '>= 0.4'}
+  '@react-three/fiber@8.17.10':
+    resolution: {integrity: sha512-S6bqa4DqUooEkInYv/W+Jklv2zjSYCXAhm6qKpAQyOXhTEt5gBXnA7W6aoJ0bjmp9pAeaSj/AZUoz1HCSof/uA==}
+    peerDependencies:
+      expo: '>=43.0'
+      expo-asset: '>=8.4'
+      expo-file-system: '>=11.0'
+      expo-gl: '>=11.0'
+      react: '>=18.0'
+      react-dom: '>=18.0'
+      react-native: '>=0.64'
+      three: '>=0.133'
+    peerDependenciesMeta:
+      expo:
+        optional: true
+      expo-asset:
+        optional: true
+      expo-file-system:
+        optional: true
+      expo-gl:
+        optional: true
+      react-dom:
+        optional: true
+      react-native:
+        optional: true
 
-  array-union@2.1.0:
-    resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
-    engines: {node: '>=8'}
+  '@remix-run/router@1.19.2':
+    resolution: {integrity: sha512-baiMx18+IMuD1yyvOGaHM9QrVUPGGG0jC+z+IPHnRJWUAUvaKuWKyE8gjDj2rzv3sz9zOGoRSPgeBVHRhZnBlA==}
+    engines: {node: '>=14.0.0'}
 
-  array.prototype.findlast@1.2.5:
-    resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==}
-    engines: {node: '>= 0.4'}
+  '@rollup/pluginutils@5.1.0':
+    resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==}
+    engines: {node: '>=14.0.0'}
+    peerDependencies:
+      rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+    peerDependenciesMeta:
+      rollup:
+        optional: true
 
-  array.prototype.findlastindex@1.2.5:
-    resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==}
-    engines: {node: '>= 0.4'}
+  '@rollup/rollup-android-arm-eabi@4.20.0':
+    resolution: {integrity: sha512-TSpWzflCc4VGAUJZlPpgAJE1+V60MePDQnBd7PPkpuEmOy8i87aL6tinFGKBFKuEDikYpig72QzdT3QPYIi+oA==}
+    cpu: [arm]
+    os: [android]
 
-  array.prototype.flat@1.3.2:
-    resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
-    engines: {node: '>= 0.4'}
+  '@rollup/rollup-android-arm64@4.20.0':
+    resolution: {integrity: sha512-u00Ro/nok7oGzVuh/FMYfNoGqxU5CPWz1mxV85S2w9LxHR8OoMQBuSk+3BKVIDYgkpeOET5yXkx90OYFc+ytpQ==}
+    cpu: [arm64]
+    os: [android]
 
-  array.prototype.flatmap@1.3.2:
-    resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
-    engines: {node: '>= 0.4'}
+  '@rollup/rollup-darwin-arm64@4.20.0':
+    resolution: {integrity: sha512-uFVfvzvsdGtlSLuL0ZlvPJvl6ZmrH4CBwLGEFPe7hUmf7htGAN+aXo43R/V6LATyxlKVC/m6UsLb7jbG+LG39Q==}
+    cpu: [arm64]
+    os: [darwin]
 
-  array.prototype.tosorted@1.1.4:
-    resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==}
-    engines: {node: '>= 0.4'}
+  '@rollup/rollup-darwin-x64@4.20.0':
+    resolution: {integrity: sha512-xbrMDdlev53vNXexEa6l0LffojxhqDTBeL+VUxuuIXys4x6xyvbKq5XqTXBCEUA8ty8iEJblHvFaWRJTk/icAQ==}
+    cpu: [x64]
+    os: [darwin]
 
-  arraybuffer.prototype.slice@1.0.3:
-    resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==}
-    engines: {node: '>= 0.4'}
+  '@rollup/rollup-linux-arm-gnueabihf@4.20.0':
+    resolution: {integrity: sha512-jMYvxZwGmoHFBTbr12Xc6wOdc2xA5tF5F2q6t7Rcfab68TT0n+r7dgawD4qhPEvasDsVpQi+MgDzj2faOLsZjA==}
+    cpu: [arm]
+    os: [linux]
 
-  arrify@1.0.1:
-    resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==}
-    engines: {node: '>=0.10.0'}
+  '@rollup/rollup-linux-arm-musleabihf@4.20.0':
+    resolution: {integrity: sha512-1asSTl4HKuIHIB1GcdFHNNZhxAYEdqML/MW4QmPS4G0ivbEcBr1JKlFLKsIRqjSwOBkdItn3/ZDlyvZ/N6KPlw==}
+    cpu: [arm]
+    os: [linux]
 
-  assertion-error@1.1.0:
-    resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==}
+  '@rollup/rollup-linux-arm64-gnu@4.20.0':
+    resolution: {integrity: sha512-COBb8Bkx56KldOYJfMf6wKeYJrtJ9vEgBRAOkfw6Ens0tnmzPqvlpjZiLgkhg6cA3DGzCmLmmd319pmHvKWWlQ==}
+    cpu: [arm64]
+    os: [linux]
 
-  ast-types-flow@0.0.8:
-    resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==}
-
-  atomic-sleep@1.0.0:
-    resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==}
-    engines: {node: '>=8.0.0'}
+  '@rollup/rollup-linux-arm64-musl@4.20.0':
+    resolution: {integrity: sha512-+it+mBSyMslVQa8wSPvBx53fYuZK/oLTu5RJoXogjk6x7Q7sz1GNRsXWjn6SwyJm8E/oMjNVwPhmNdIjwP135Q==}
+    cpu: [arm64]
+    os: [linux]
 
-  autoprefixer@10.4.20:
-    resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==}
-    engines: {node: ^10 || ^12 || >=14}
-    hasBin: true
-    peerDependencies:
-      postcss: ^8.1.0
+  '@rollup/rollup-linux-powerpc64le-gnu@4.20.0':
+    resolution: {integrity: sha512-yAMvqhPfGKsAxHN8I4+jE0CpLWD8cv4z7CK7BMmhjDuz606Q2tFKkWRY8bHR9JQXYcoLfopo5TTqzxgPUjUMfw==}
+    cpu: [ppc64]
+    os: [linux]
 
-  available-typed-arrays@1.0.7:
-    resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
-    engines: {node: '>= 0.4'}
+  '@rollup/rollup-linux-riscv64-gnu@4.20.0':
+    resolution: {integrity: sha512-qmuxFpfmi/2SUkAw95TtNq/w/I7Gpjurx609OOOV7U4vhvUhBcftcmXwl3rqAek+ADBwSjIC4IVNLiszoj3dPA==}
+    cpu: [riscv64]
+    os: [linux]
 
-  axe-core@4.10.0:
-    resolution: {integrity: sha512-Mr2ZakwQ7XUAjp7pAwQWRhhK8mQQ6JAaNWSjmjxil0R8BPioMtQsTLOolGYkji1rcL++3dCqZA3zWqpT+9Ew6g==}
-    engines: {node: '>=4'}
+  '@rollup/rollup-linux-s390x-gnu@4.20.0':
+    resolution: {integrity: sha512-I0BtGXddHSHjV1mqTNkgUZLnS3WtsqebAXv11D5BZE/gfw5KoyXSAXVqyJximQXNvNzUo4GKlCK/dIwXlz+jlg==}
+    cpu: [s390x]
+    os: [linux]
 
-  axobject-query@3.1.1:
-    resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==}
+  '@rollup/rollup-linux-x64-gnu@4.20.0':
+    resolution: {integrity: sha512-y+eoL2I3iphUg9tN9GB6ku1FA8kOfmF4oUEWhztDJ4KXJy1agk/9+pejOuZkNFhRwHAOxMsBPLbXPd6mJiCwew==}
+    cpu: [x64]
+    os: [linux]
 
-  axobject-query@4.1.0:
-    resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
-    engines: {node: '>= 0.4'}
+  '@rollup/rollup-linux-x64-musl@4.20.0':
+    resolution: {integrity: sha512-hM3nhW40kBNYUkZb/r9k2FKK+/MnKglX7UYd4ZUy5DJs8/sMsIbqWK2piZtVGE3kcXVNj3B2IrUYROJMMCikNg==}
+    cpu: [x64]
+    os: [linux]
 
-  balanced-match@1.0.2:
-    resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+  '@rollup/rollup-win32-arm64-msvc@4.20.0':
+    resolution: {integrity: sha512-psegMvP+Ik/Bg7QRJbv8w8PAytPA7Uo8fpFjXyCRHWm6Nt42L+JtoqH8eDQ5hRP7/XW2UiIriy1Z46jf0Oa1kA==}
+    cpu: [arm64]
+    os: [win32]
 
-  before-after-hook@2.2.3:
-    resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==}
+  '@rollup/rollup-win32-ia32-msvc@4.20.0':
+    resolution: {integrity: sha512-GabekH3w4lgAJpVxkk7hUzUf2hICSQO0a/BLFA11/RMxQT92MabKAqyubzDZmMOC/hcJNlc+rrypzNzYl4Dx7A==}
+    cpu: [ia32]
+    os: [win32]
 
-  binary-extensions@2.3.0:
-    resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
-    engines: {node: '>=8'}
+  '@rollup/rollup-win32-x64-msvc@4.20.0':
+    resolution: {integrity: sha512-aJ1EJSuTdGnM6qbVC4B5DSmozPTqIag9fSzXRNNo+humQLG89XpPgdt16Ia56ORD7s+H8Pmyx44uczDQ0yDzpg==}
+    cpu: [x64]
+    os: [win32]
 
-  bottleneck@2.19.5:
-    resolution: {integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==}
+  '@rushstack/eslint-patch@1.10.4':
+    resolution: {integrity: sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==}
 
-  bowser@2.11.0:
-    resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==}
+  '@rushstack/node-core-library@4.0.2':
+    resolution: {integrity: sha512-hyES82QVpkfQMeBMteQUnrhASL/KHPhd7iJ8euduwNJG4mu2GSOKybf0rOEjOm1Wz7CwJEUm9y0yD7jg2C1bfg==}
+    peerDependencies:
+      '@types/node': '*'
+    peerDependenciesMeta:
+      '@types/node':
+        optional: true
 
-  brace-expansion@1.1.11:
-    resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
+  '@rushstack/rig-package@0.5.2':
+    resolution: {integrity: sha512-mUDecIJeH3yYGZs2a48k+pbhM6JYwWlgjs2Ca5f2n1G2/kgdgP9D/07oglEGf6mRyXEnazhEENeYTSNDRCwdqA==}
 
-  brace-expansion@2.0.1:
-    resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
+  '@rushstack/terminal@0.10.0':
+    resolution: {integrity: sha512-UbELbXnUdc7EKwfH2sb8ChqNgapUOdqcCIdQP4NGxBpTZV2sQyeekuK3zmfQSa/MN+/7b4kBogl2wq0vpkpYGw==}
+    peerDependencies:
+      '@types/node': '*'
+    peerDependenciesMeta:
+      '@types/node':
+        optional: true
 
-  braces@3.0.3:
-    resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
-    engines: {node: '>=8'}
+  '@rushstack/ts-command-line@4.19.1':
+    resolution: {integrity: sha512-J7H768dgcpG60d7skZ5uSSwyCZs/S2HrWP1Ds8d1qYAyaaeJmpmmLr9BVw97RjFzmQPOYnoXcKA4GkqDCkduQg==}
 
-  browserslist@4.23.3:
-    resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==}
-    engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
-    hasBin: true
+  '@scure/base@1.1.7':
+    resolution: {integrity: sha512-PPNYBslrLNNUQ/Yad37MHYsNQtK67EhWb6WtSvNLLPo7SdVZgkUjD6Dg+5On7zNwmskf8OX7I7Nx5oN+MIWE0g==}
 
-  buffer-crc32@1.0.0:
-    resolution: {integrity: sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==}
-    engines: {node: '>=8.0.0'}
+  '@scure/base@1.1.9':
+    resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==}
 
-  builtin-modules@3.3.0:
-    resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
-    engines: {node: '>=6'}
+  '@scure/bip32@1.1.5':
+    resolution: {integrity: sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==}
 
-  cac@6.7.14:
-    resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
-    engines: {node: '>=8'}
+  '@scure/bip39@1.1.1':
+    resolution: {integrity: sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==}
 
-  call-bind@1.0.7:
-    resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
-    engines: {node: '>= 0.4'}
+  '@scure/bip39@1.4.0':
+    resolution: {integrity: sha512-BEEm6p8IueV/ZTfQLp/0vhw4NPnT9oWf5+28nvmeUICjP99f4vr2d+qc7AVGDDtwRep6ifR43Yed9ERVmiITzw==}
 
-  caller-callsite@2.0.0:
-    resolution: {integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==}
-    engines: {node: '>=4'}
+  '@scure/starknet@1.0.0':
+    resolution: {integrity: sha512-o5J57zY0f+2IL/mq8+AYJJ4Xpc1fOtDhr+mFQKbHnYFmm3WQrC+8zj2HEgxak1a+x86mhmBC1Kq305KUpVf0wg==}
 
-  caller-path@2.0.0:
-    resolution: {integrity: sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==}
-    engines: {node: '>=4'}
+  '@semantic-release/commit-analyzer@10.0.4':
+    resolution: {integrity: sha512-pFGn99fn8w4/MHE0otb2A/l5kxgOuxaaauIh4u30ncoTJuqWj4hXTgEJ03REqjS+w1R2vPftSsO26WC61yOcpw==}
+    engines: {node: '>=18'}
+    peerDependencies:
+      semantic-release: '>=20.1.0'
 
-  callsites@2.0.0:
-    resolution: {integrity: sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==}
-    engines: {node: '>=4'}
+  '@semantic-release/error@3.0.0':
+    resolution: {integrity: sha512-5hiM4Un+tpl4cKw3lV4UgzJj+SmfNIDCLLw0TepzQxz9ZGV5ixnqkzIVF+3tp0ZHgcMKE+VNGHJjEeyFG2dcSw==}
+    engines: {node: '>=14.17'}
 
-  callsites@3.1.0:
-    resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
-    engines: {node: '>=6'}
+  '@semantic-release/error@4.0.0':
+    resolution: {integrity: sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==}
+    engines: {node: '>=18'}
 
-  camelcase-css@2.0.1:
-    resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
-    engines: {node: '>= 6'}
+  '@semantic-release/git@10.0.1':
+    resolution: {integrity: sha512-eWrx5KguUcU2wUPaO6sfvZI0wPafUKAMNC18aXY4EnNcrZL86dEmpNVnC9uMpGZkmZJ9EfCVJBQx4pV4EMGT1w==}
+    engines: {node: '>=14.17'}
+    peerDependencies:
+      semantic-release: '>=18.0.0'
 
-  camelcase-keys@6.2.2:
-    resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==}
-    engines: {node: '>=8'}
+  '@semantic-release/github@9.2.6':
+    resolution: {integrity: sha512-shi+Lrf6exeNZF+sBhK+P011LSbhmIAoUEgEY6SsxF8irJ+J2stwI5jkyDQ+4gzYyDImzV6LCKdYB9FXnQRWKA==}
+    engines: {node: '>=18'}
+    peerDependencies:
+      semantic-release: '>=20.1.0'
 
-  camelcase@5.3.1:
-    resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
-    engines: {node: '>=6'}
+  '@semantic-release/npm@10.0.6':
+    resolution: {integrity: sha512-DyqHrGE8aUyapA277BB+4kV0C4iMHh3sHzUWdf0jTgp5NNJxVUz76W1f57FB64Ue03him3CBXxFqQD2xGabxow==}
+    engines: {node: '>=18'}
+    peerDependencies:
+      semantic-release: '>=20.1.0'
 
-  caniuse-lite@1.0.30001651:
-    resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==}
+  '@semantic-release/release-notes-generator@11.0.7':
+    resolution: {integrity: sha512-T09QB9ImmNx7Q6hY6YnnEbw/rEJ6a+22LBxfZq+pSAXg/OL/k0siwEm5cK4k1f9dE2Z2mPIjJKKohzUm0jbxcQ==}
+    engines: {node: '>=18'}
+    peerDependencies:
+      semantic-release: '>=20.1.0'
 
-  cardinal@2.1.1:
-    resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==}
-    hasBin: true
+  '@sideway/address@4.1.5':
+    resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==}
 
-  chai@4.5.0:
-    resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==}
-    engines: {node: '>=4'}
+  '@sideway/formula@3.0.1':
+    resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==}
 
-  chalk@2.4.2:
-    resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
-    engines: {node: '>=4'}
+  '@sideway/pinpoint@2.0.0':
+    resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==}
 
-  chalk@4.1.2:
-    resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
-    engines: {node: '>=10'}
+  '@sinclair/typebox@0.27.8':
+    resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
 
-  chalk@5.3.0:
-    resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
-    engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+  '@sindresorhus/merge-streams@2.3.0':
+    resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==}
+    engines: {node: '>=18'}
 
-  check-error@1.0.3:
-    resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==}
+  '@sinonjs/commons@3.0.1':
+    resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==}
 
-  chokidar@3.6.0:
-    resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
-    engines: {node: '>= 8.10.0'}
+  '@sinonjs/fake-timers@10.3.0':
+    resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==}
 
-  citty@0.1.6:
-    resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==}
+  '@stablelib/aead@1.0.1':
+    resolution: {integrity: sha512-q39ik6sxGHewqtO0nP4BuSe3db5G1fEJE8ukvngS2gLkBXyy6E7pLubhbYgnkDFv6V8cWaxcE4Xn0t6LWcJkyg==}
 
-  clean-stack@2.2.0:
-    resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
-    engines: {node: '>=6'}
+  '@stablelib/binary@1.0.1':
+    resolution: {integrity: sha512-ClJWvmL6UBM/wjkvv/7m5VP3GMr9t0osr4yVgLZsLCOz4hGN9gIAFEqnJ0TsSMAN+n840nf2cHZnA5/KFqHC7Q==}
 
-  clean-stack@5.2.0:
-    resolution: {integrity: sha512-TyUIUJgdFnCISzG5zu3291TAsE77ddchd0bepon1VVQrKLGKFED4iXFEDQ24mIPdPBbyE16PK3F8MYE1CmcBEQ==}
-    engines: {node: '>=14.16'}
+  '@stablelib/bytes@1.0.1':
+    resolution: {integrity: sha512-Kre4Y4kdwuqL8BR2E9hV/R5sOrUj6NanZaZis0V6lX5yzqC3hBuVSDXUIBqQv/sCpmuWRiHLwqiT1pqqjuBXoQ==}
 
-  cli-cursor@4.0.0:
-    resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  '@stablelib/chacha20poly1305@1.0.1':
+    resolution: {integrity: sha512-MmViqnqHd1ymwjOQfghRKw2R/jMIGT3wySN7cthjXCBdO+qErNPUBnRzqNpnvIwg7JBCg3LdeCZZO4de/yEhVA==}
 
-  cli-table3@0.6.5:
-    resolution: {integrity: sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==}
-    engines: {node: 10.* || >= 12.*}
+  '@stablelib/chacha@1.0.1':
+    resolution: {integrity: sha512-Pmlrswzr0pBzDofdFuVe1q7KdsHKhhU24e8gkEwnTGOmlC7PADzLVxGdn2PoNVBBabdg0l/IfLKg6sHAbTQugg==}
 
-  cli-truncate@3.1.0:
-    resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  '@stablelib/constant-time@1.0.1':
+    resolution: {integrity: sha512-tNOs3uD0vSJcK6z1fvef4Y+buN7DXhzHDPqRLSXUel1UfqMB1PWNsnnAezrKfEwTLpN0cGH2p9NNjs6IqeD0eg==}
 
-  clipboardy@4.0.0:
-    resolution: {integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==}
-    engines: {node: '>=18'}
+  '@stablelib/ed25519@1.0.3':
+    resolution: {integrity: sha512-puIMWaX9QlRsbhxfDc5i+mNPMY+0TmQEskunY1rZEBPi1acBCVQAhnsk/1Hk50DGPtVsZtAWQg4NHGlVaO9Hqg==}
 
-  cliui@6.0.0:
-    resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==}
+  '@stablelib/hash@1.0.1':
+    resolution: {integrity: sha512-eTPJc/stDkdtOcrNMZ6mcMK1e6yBbqRBaNW55XA1jU8w/7QdnCF0CmMmOD1m7VSkBR44PWrMHU2l6r8YEQHMgg==}
 
-  cliui@8.0.1:
-    resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
-    engines: {node: '>=12'}
+  '@stablelib/hkdf@1.0.1':
+    resolution: {integrity: sha512-SBEHYE16ZXlHuaW5RcGk533YlBj4grMeg5TooN80W3NpcHRtLZLLXvKyX0qcRFxf+BGDobJLnwkvgEwHIDBR6g==}
 
-  code-red@1.0.4:
-    resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==}
+  '@stablelib/hmac@1.0.1':
+    resolution: {integrity: sha512-V2APD9NSnhVpV/QMYgCVMIYKiYG6LSqw1S65wxVoirhU/51ACio6D4yDVSwMzuTJXWZoVHbDdINioBwKy5kVmA==}
 
-  color-convert@1.9.3:
-    resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
+  '@stablelib/int@1.0.1':
+    resolution: {integrity: sha512-byr69X/sDtDiIjIV6m4roLVWnNNlRGzsvxw+agj8CIEazqWGOQp2dTYgQhtyVXV9wpO6WyXRQUzLV/JRNumT2w==}
 
-  color-convert@2.0.1:
-    resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
-    engines: {node: '>=7.0.0'}
+  '@stablelib/keyagreement@1.0.1':
+    resolution: {integrity: sha512-VKL6xBwgJnI6l1jKrBAfn265cspaWBPAPEc62VBQrWHLqVgNRE09gQ/AnOEyKUWrrqfD+xSQ3u42gJjLDdMDQg==}
 
-  color-name@1.1.3:
-    resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
+  '@stablelib/poly1305@1.0.1':
+    resolution: {integrity: sha512-1HlG3oTSuQDOhSnLwJRKeTRSAdFNVB/1djy2ZbS35rBSJ/PFqx9cf9qatinWghC2UbfOYD8AcrtbUQl8WoxabA==}
 
-  color-name@1.1.4:
-    resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
-
-  colorette@2.0.20:
-    resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
-
-  commander@11.0.0:
-    resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==}
-    engines: {node: '>=16'}
+  '@stablelib/random@1.0.2':
+    resolution: {integrity: sha512-rIsE83Xpb7clHPVRlBj8qNe5L8ISQOzjghYQm/dZ7VaM2KHYwMW5adjQjrzTZCchFnNCNhkwtnOBa9HTMJCI8w==}
 
-  commander@4.1.1:
-    resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
-    engines: {node: '>= 6'}
+  '@stablelib/sha256@1.0.1':
+    resolution: {integrity: sha512-GIIH3e6KH+91FqGV42Kcj71Uefd/QEe7Dy42sBTeqppXV95ggCcxLTk39bEr+lZfJmp+ghsR07J++ORkRELsBQ==}
 
-  commander@9.5.0:
-    resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==}
-    engines: {node: ^12.20.0 || >=14}
+  '@stablelib/sha512@1.0.1':
+    resolution: {integrity: sha512-13gl/iawHV9zvDKciLo1fQ8Bgn2Pvf7OV6amaRVKiq3pjQ3UmEpXxWiAfV8tYjUpeZroBxtyrwtdooQT/i3hzw==}
 
-  compare-func@2.0.0:
-    resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==}
+  '@stablelib/wipe@1.0.1':
+    resolution: {integrity: sha512-WfqfX/eXGiAd3RJe4VU2snh/ZPwtSjLG4ynQ/vYzvghTh7dHFcI1wl+nrkWG6lGhukOxOsUHfv8dUXr58D0ayg==}
 
-  computeds@0.0.1:
-    resolution: {integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==}
+  '@stablelib/x25519@1.0.3':
+    resolution: {integrity: sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw==}
 
-  concat-map@0.0.1:
-    resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
+  '@starknet-io/get-starknet-core@4.0.0':
+    resolution: {integrity: sha512-M++JTbMxZJ5wCkw1f4vAXCY3BTlRMdxFScqsIgZonLXD3GKHPyM/pFi/JqorPO1o4RKHLnFX6M7r0izZ/NWpvA==}
 
-  confbox@0.1.7:
-    resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==}
+  '@starknet-io/get-starknet@4.0.0':
+    resolution: {integrity: sha512-SmnRzBewS0BVjtKzViSrWXi+SvOnSrj9hnvlx8B3ZnCq9A2NuX8pNI550lDBLl/ilIr587FH2VNAj6jdgsyhJQ==}
 
-  config-chain@1.1.13:
-    resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==}
+  '@starknet-io/types-js@0.7.7':
+    resolution: {integrity: sha512-WLrpK7LIaIb8Ymxu6KF/6JkGW1sso988DweWu7p5QY/3y7waBIiPvzh27D9bX5KIJNRDyOoOVoHVEKYUYWZ/RQ==}
 
-  consola@3.2.3:
-    resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==}
-    engines: {node: ^14.18.0 || >=16.10.0}
+  '@sveltejs/adapter-auto@3.2.5':
+    resolution: {integrity: sha512-27LR+uKccZ62lgq4N/hvyU2G+hTP9fxWEAfnZcl70HnyfAjMSsGk1z/SjAPXNCD1mVJIE7IFu3TQ8cQ/UH3c0A==}
+    peerDependencies:
+      '@sveltejs/kit': ^2.0.0
 
-  conventional-changelog-angular@6.0.0:
-    resolution: {integrity: sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==}
-    engines: {node: '>=14'}
+  '@sveltejs/kit@2.6.4':
+    resolution: {integrity: sha512-qfcbyWw35cy6k9sQ1GUkhuE5qj+PgPKJx3/Aa3+veooWgN0DXZXqMS2PDgpgKDXRIFj6V1KWmMZYYPOhL45lXg==}
+    engines: {node: '>=18.13'}
+    hasBin: true
+    peerDependencies:
+      '@sveltejs/vite-plugin-svelte': ^3.0.0 || ^4.0.0-next.1
+      svelte: ^4.0.0 || ^5.0.0-next.0
+      vite: ^5.0.3
 
-  conventional-changelog-conventionalcommits@6.1.0:
-    resolution: {integrity: sha512-3cS3GEtR78zTfMzk0AizXKKIdN4OvSh7ibNz6/DPbhWWQu7LqE/8+/GqSodV+sywUR2gpJAdP/1JFf4XtN7Zpw==}
-    engines: {node: '>=14'}
+  '@sveltejs/vite-plugin-svelte-inspector@1.0.4':
+    resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==}
+    engines: {node: ^14.18.0 || >= 16}
+    peerDependencies:
+      '@sveltejs/vite-plugin-svelte': ^2.2.0
+      svelte: ^3.54.0 || ^4.0.0
+      vite: ^4.0.0
 
-  conventional-changelog-writer@6.0.1:
-    resolution: {integrity: sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==}
-    engines: {node: '>=14'}
-    hasBin: true
+  '@sveltejs/vite-plugin-svelte@2.5.3':
+    resolution: {integrity: sha512-erhNtXxE5/6xGZz/M9eXsmI7Pxa6MS7jyTy06zN3Ck++ldrppOnOlJwHHTsMC7DHDQdgUp4NAc4cDNQ9eGdB/w==}
+    engines: {node: ^14.18.0 || >= 16}
+    peerDependencies:
+      svelte: ^3.54.0 || ^4.0.0 || ^5.0.0-next.0
+      vite: ^4.0.0
 
-  conventional-commits-filter@3.0.0:
-    resolution: {integrity: sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==}
-    engines: {node: '>=14'}
+  '@trpc/client@10.45.2':
+    resolution: {integrity: sha512-ykALM5kYWTLn1zYuUOZ2cPWlVfrXhc18HzBDyRhoPYN0jey4iQHEFSEowfnhg1RvYnrAVjNBgHNeSAXjrDbGwg==}
+    peerDependencies:
+      '@trpc/server': 10.45.2
 
-  conventional-commits-filter@4.0.0:
-    resolution: {integrity: sha512-rnpnibcSOdFcdclpFwWa+pPlZJhXE7l+XK04zxhbWrhgpR96h33QLz8hITTXbcYICxVr3HZFtbtUAQ+4LdBo9A==}
-    engines: {node: '>=16'}
+  '@trpc/server@10.45.2':
+    resolution: {integrity: sha512-wOrSThNNE4HUnuhJG6PfDRp4L2009KDVxsd+2VYH8ro6o/7/jwYZ8Uu5j+VaW+mOmc8EHerHzGcdbGNQSAUPgg==}
 
-  conventional-commits-parser@4.0.0:
-    resolution: {integrity: sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==}
-    engines: {node: '>=14'}
-    hasBin: true
+  '@tsconfig/node10@1.0.11':
+    resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==}
 
-  conventional-commits-parser@5.0.0:
-    resolution: {integrity: sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==}
-    engines: {node: '>=16'}
-    hasBin: true
+  '@tsconfig/node12@1.0.11':
+    resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==}
 
-  convert-source-map@2.0.0:
-    resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
+  '@tsconfig/node14@1.0.3':
+    resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==}
 
-  cookie-es@1.2.2:
-    resolution: {integrity: sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==}
+  '@tsconfig/node16@1.0.4':
+    resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==}
 
-  core-util-is@1.0.3:
-    resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
+  '@tsconfig/svelte@5.0.4':
+    resolution: {integrity: sha512-BV9NplVgLmSi4mwKzD8BD/NQ8erOY/nUE/GpgWe2ckx+wIQF5RyRirn/QsSSCPeulVpc3RA/iJt6DpfTIZps0Q==}
 
-  cosmiconfig-typescript-loader@4.4.0:
-    resolution: {integrity: sha512-BabizFdC3wBHhbI4kJh0VkQP9GkBfoHPydD0COMce1nJ1kJAB3F2TmJ/I7diULBKtmEWSwEbuN/KDtgnmUUVmw==}
-    engines: {node: '>=v14.21.3'}
-    peerDependencies:
-      '@types/node': '*'
-      cosmiconfig: '>=7'
-      ts-node: '>=10'
-      typescript: '>=4'
+  '@types/argparse@1.0.38':
+    resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==}
 
-  cosmiconfig@5.2.1:
-    resolution: {integrity: sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==}
-    engines: {node: '>=4'}
+  '@types/async-retry@1.4.8':
+    resolution: {integrity: sha512-Qup/B5PWLe86yI5I3av6ePGaeQrIHNKCwbsQotD6aHQ6YkHsMUxVZkZsmx/Ry3VZQ6uysHwTjQ7666+k6UjVJA==}
 
-  cosmiconfig@8.3.6:
-    resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==}
-    engines: {node: '>=14'}
-    peerDependencies:
-      typescript: '>=4.9.5'
-    peerDependenciesMeta:
-      typescript:
-        optional: true
+  '@types/cookie@0.6.0':
+    resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
 
-  create-require@1.1.1:
-    resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==}
+  '@types/debounce@1.2.4':
+    resolution: {integrity: sha512-jBqiORIzKDOToaF63Fm//haOCHuwQuLa2202RK4MozpA6lh93eCBc+/8+wZn5OzjJt3ySdc+74SXWXB55Ewtyw==}
 
-  cross-fetch@3.1.8:
-    resolution: {integrity: sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==}
+  '@types/estree@1.0.5':
+    resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
 
-  cross-spawn@7.0.3:
-    resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
-    engines: {node: '>= 8'}
+  '@types/istanbul-lib-coverage@2.0.6':
+    resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==}
 
-  crossws@0.2.4:
-    resolution: {integrity: sha512-DAxroI2uSOgUKLz00NX6A8U/8EE3SZHmIND+10jkVSaypvyt57J5JEOxAQOL6lQxyzi/wZbTIwssU1uy69h5Vg==}
-    peerDependencies:
-      uWebSockets.js: '*'
-    peerDependenciesMeta:
-      uWebSockets.js:
-        optional: true
+  '@types/istanbul-lib-report@3.0.3':
+    resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==}
 
-  crypto-random-string@4.0.0:
-    resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==}
-    engines: {node: '>=12'}
+  '@types/istanbul-reports@3.0.4':
+    resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==}
 
-  css-tree@2.3.1:
-    resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==}
-    engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
+  '@types/json-schema@7.0.15':
+    resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
 
-  cssesc@3.0.0:
-    resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
-    engines: {node: '>=4'}
-    hasBin: true
+  '@types/json5@0.0.29':
+    resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
 
-  damerau-levenshtein@1.0.8:
-    resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==}
+  '@types/lodash-es@4.17.12':
+    resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==}
 
-  dargs@7.0.0:
-    resolution: {integrity: sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==}
-    engines: {node: '>=8'}
+  '@types/lodash.mergewith@4.6.9':
+    resolution: {integrity: sha512-fgkoCAOF47K7sxrQ7Mlud2TH023itugZs2bUg8h/KzT+BnZNrR2jAOmaokbLunHNnobXVWOezAeNn/lZqwxkcw==}
 
-  data-view-buffer@1.0.1:
-    resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==}
-    engines: {node: '>= 0.4'}
+  '@types/lodash@4.17.7':
+    resolution: {integrity: sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==}
 
-  data-view-byte-length@1.0.1:
-    resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==}
-    engines: {node: '>= 0.4'}
+  '@types/minimist@1.2.5':
+    resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==}
 
-  data-view-byte-offset@1.0.0:
-    resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==}
-    engines: {node: '>= 0.4'}
+  '@types/node-forge@1.3.11':
+    resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==}
 
-  dateformat@3.0.3:
-    resolution: {integrity: sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==}
+  '@types/node@20.14.15':
+    resolution: {integrity: sha512-Fz1xDMCF/B00/tYSVMlmK7hVeLh7jE5f3B7X1/hmV0MJBwE27KlS7EvD/Yp+z1lm8mVhwV5w+n8jOZG8AfTlKw==}
 
-  de-indent@1.0.2:
-    resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==}
+  '@types/node@20.5.1':
+    resolution: {integrity: sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg==}
 
-  debug@3.2.7:
-    resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
-    peerDependencies:
-      supports-color: '*'
-    peerDependenciesMeta:
-      supports-color:
-        optional: true
+  '@types/normalize-package-data@2.4.4':
+    resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
 
-  debug@4.3.4:
-    resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
-    engines: {node: '>=6.0'}
-    peerDependencies:
-      supports-color: '*'
-    peerDependenciesMeta:
-      supports-color:
-        optional: true
+  '@types/parse-json@4.0.2':
+    resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==}
 
-  debug@4.3.6:
-    resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==}
-    engines: {node: '>=6.0'}
-    peerDependencies:
-      supports-color: '*'
-    peerDependenciesMeta:
-      supports-color:
-        optional: true
+  '@types/prop-types@15.7.13':
+    resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==}
 
-  decamelize-keys@1.1.1:
-    resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==}
-    engines: {node: '>=0.10.0'}
+  '@types/pug@2.0.10':
+    resolution: {integrity: sha512-Sk/uYFOBAB7mb74XcpizmH0KOR2Pv3D2Hmrh1Dmy5BmK3MpdSa5kqZcg6EKBdklU0bFXX9gCfzvpnyUehrPIuA==}
 
-  decamelize@1.2.0:
-    resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==}
-    engines: {node: '>=0.10.0'}
+  '@types/react-reconciler@0.26.7':
+    resolution: {integrity: sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==}
 
-  decode-uri-component@0.2.2:
-    resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==}
-    engines: {node: '>=0.10'}
+  '@types/react-reconciler@0.28.8':
+    resolution: {integrity: sha512-SN9c4kxXZonFhbX4hJrZy37yw9e7EIxcpHCxQv5JUS18wDE5ovkQKlqQEkufdJCCMfuI9BnjUJvhYeJ9x5Ra7g==}
 
-  deep-eql@4.1.4:
-    resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==}
-    engines: {node: '>=6'}
+  '@types/react@18.3.11':
+    resolution: {integrity: sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==}
 
-  deep-equal@2.2.3:
-    resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==}
-    engines: {node: '>= 0.4'}
+  '@types/retry@0.12.5':
+    resolution: {integrity: sha512-3xSjTp3v03X/lSQLkczaN9UIEwJMoMCA1+Nb5HfbJEQWogdeQIyVtTvxPXDQjZ5zws8rFQfVfRdz03ARihPJgw==}
 
-  deep-extend@0.6.0:
-    resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
-    engines: {node: '>=4.0.0'}
+  '@types/semver@7.5.8':
+    resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==}
 
-  deep-is@0.1.4:
-    resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+  '@types/stack-utils@2.0.3':
+    resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==}
 
-  deepmerge@4.3.1:
-    resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
-    engines: {node: '>=0.10.0'}
+  '@types/trusted-types@2.0.7':
+    resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
 
-  define-data-property@1.1.4:
-    resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
-    engines: {node: '>= 0.4'}
+  '@types/warning@3.0.3':
+    resolution: {integrity: sha512-D1XC7WK8K+zZEveUPY+cf4+kgauk8N4eHr/XIHXGlGYkHLud6hK9lYfZk1ry1TNh798cZUCgb6MqGEG8DkJt6Q==}
 
-  define-properties@1.2.1:
-    resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
-    engines: {node: '>= 0.4'}
+  '@types/webxr@0.5.20':
+    resolution: {integrity: sha512-JGpU6qiIJQKUuVSKx1GtQnHJGxRjtfGIhzO2ilq43VZZS//f1h1Sgexbdk+Lq+7569a6EYhOWrUpIruR/1Enmg==}
 
-  defu@6.1.4:
-    resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
+  '@types/yargs-parser@21.0.3':
+    resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
 
-  deprecation@2.3.1:
-    resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==}
+  '@types/yargs@15.0.19':
+    resolution: {integrity: sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA==}
 
-  dequal@2.0.3:
-    resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
-    engines: {node: '>=6'}
+  '@types/yargs@17.0.33':
+    resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==}
 
-  destr@2.0.3:
-    resolution: {integrity: sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==}
+  '@typescript-eslint/eslint-plugin@6.21.0':
+    resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==}
+    engines: {node: ^16.0.0 || >=18.0.0}
+    peerDependencies:
+      '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha
+      eslint: ^7.0.0 || ^8.0.0
+      typescript: '*'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  detect-browser@5.3.0:
-    resolution: {integrity: sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==}
+  '@typescript-eslint/parser@6.21.0':
+    resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==}
+    engines: {node: ^16.0.0 || >=18.0.0}
+    peerDependencies:
+      eslint: ^7.0.0 || ^8.0.0
+      typescript: '*'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  detect-indent@6.1.0:
-    resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==}
-    engines: {node: '>=8'}
+  '@typescript-eslint/parser@8.8.1':
+    resolution: {integrity: sha512-hQUVn2Lij2NAxVFEdvIGxT9gP1tq2yM83m+by3whWFsWC+1y8pxxxHUFE1UqDu2VsGi2i6RLcv4QvouM84U+ow==}
+    engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+    peerDependencies:
+      eslint: ^8.57.0 || ^9.0.0
+      typescript: '*'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  detect-libc@1.0.3:
-    resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==}
-    engines: {node: '>=0.10'}
-    hasBin: true
+  '@typescript-eslint/scope-manager@6.21.0':
+    resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==}
+    engines: {node: ^16.0.0 || >=18.0.0}
 
-  detect-newline@2.1.0:
-    resolution: {integrity: sha512-CwffZFvlJffUg9zZA0uqrjQayUTC8ob94pnr5sFwaVv3IOmkfUHcWH+jXaQK3askE51Cqe8/9Ql/0uXNwqZ8Zg==}
-    engines: {node: '>=0.10.0'}
+  '@typescript-eslint/scope-manager@8.8.1':
+    resolution: {integrity: sha512-X4JdU+66Mazev/J0gfXlcC/dV6JI37h+93W9BRYXrSn0hrE64IoWgVkO9MSJgEzoWkxONgaQpICWg8vAN74wlA==}
+    engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
 
-  didyoumean@1.2.2:
-    resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
+  '@typescript-eslint/type-utils@6.21.0':
+    resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==}
+    engines: {node: ^16.0.0 || >=18.0.0}
+    peerDependencies:
+      eslint: ^7.0.0 || ^8.0.0
+      typescript: '*'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  diff-sequences@29.6.3:
-    resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
-    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+  '@typescript-eslint/types@6.21.0':
+    resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==}
+    engines: {node: ^16.0.0 || >=18.0.0}
 
-  diff@4.0.2:
-    resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
-    engines: {node: '>=0.3.1'}
+  '@typescript-eslint/types@8.8.1':
+    resolution: {integrity: sha512-WCcTP4SDXzMd23N27u66zTKMuEevH4uzU8C9jf0RO4E04yVHgQgW+r+TeVTNnO1KIfrL8ebgVVYYMMO3+jC55Q==}
+    engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
 
-  dijkstrajs@1.0.3:
-    resolution: {integrity: sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==}
+  '@typescript-eslint/typescript-estree@6.21.0':
+    resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==}
+    engines: {node: ^16.0.0 || >=18.0.0}
+    peerDependencies:
+      typescript: '*'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  dir-glob@3.0.1:
-    resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
-    engines: {node: '>=8'}
+  '@typescript-eslint/typescript-estree@8.8.1':
+    resolution: {integrity: sha512-A5d1R9p+X+1js4JogdNilDuuq+EHZdsH9MjTVxXOdVFfTJXunKJR/v+fNNyO4TnoOn5HqobzfRlc70NC6HTcdg==}
+    engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+    peerDependencies:
+      typescript: '*'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  dlv@1.1.3:
-    resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
+  '@typescript-eslint/utils@6.21.0':
+    resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==}
+    engines: {node: ^16.0.0 || >=18.0.0}
+    peerDependencies:
+      eslint: ^7.0.0 || ^8.0.0
 
-  doctrine@2.1.0:
-    resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
-    engines: {node: '>=0.10.0'}
+  '@typescript-eslint/visitor-keys@6.21.0':
+    resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==}
+    engines: {node: ^16.0.0 || >=18.0.0}
 
-  doctrine@3.0.0:
-    resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
-    engines: {node: '>=6.0.0'}
+  '@typescript-eslint/visitor-keys@8.8.1':
+    resolution: {integrity: sha512-0/TdC3aeRAsW7MDvYRwEc1Uwm0TIBfzjPFgg60UU2Haj5qsCs9cc3zNgY71edqE3LbWfF/WoZQd3lJoDXFQpag==}
+    engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
 
-  dot-prop@5.3.0:
-    resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==}
-    engines: {node: '>=8'}
+  '@ungap/structured-clone@1.2.0':
+    resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
 
-  duplexer2@0.1.4:
-    resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==}
+  '@vitest/expect@1.6.0':
+    resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==}
 
-  duplexify@4.1.3:
-    resolution: {integrity: sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==}
+  '@vitest/runner@1.6.0':
+    resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==}
 
-  eastasianwidth@0.2.0:
-    resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
+  '@vitest/snapshot@1.6.0':
+    resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==}
 
-  electron-to-chromium@1.5.7:
-    resolution: {integrity: sha512-6FTNWIWMxMy/ZY6799nBlPtF1DFDQ6VQJ7yyDP27SJNt5lwtQ5ufqVvHylb3fdQefvRcgA3fKcFMJi9OLwBRNw==}
+  '@vitest/spy@1.6.0':
+    resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==}
 
-  emoji-regex@8.0.0:
-    resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
+  '@vitest/utils@1.6.0':
+    resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==}
 
-  emoji-regex@9.2.2:
-    resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
+  '@volar/language-core@1.11.1':
+    resolution: {integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==}
 
-  encode-utf8@1.0.3:
-    resolution: {integrity: sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==}
+  '@volar/source-map@1.11.1':
+    resolution: {integrity: sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==}
 
-  end-of-stream@1.4.4:
-    resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
+  '@volar/typescript@1.11.1':
+    resolution: {integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==}
 
-  enhanced-resolve@5.17.1:
-    resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==}
-    engines: {node: '>=10.13.0'}
+  '@vue/compiler-core@3.4.38':
+    resolution: {integrity: sha512-8IQOTCWnLFqfHzOGm9+P8OPSEDukgg3Huc92qSG49if/xI2SAwLHQO2qaPQbjCWPBcQoO1WYfXfTACUrWV3c5A==}
 
-  entities@4.5.0:
-    resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
-    engines: {node: '>=0.12'}
+  '@vue/compiler-dom@3.4.38':
+    resolution: {integrity: sha512-Osc/c7ABsHXTsETLgykcOwIxFktHfGSUDkb05V61rocEfsFDcjDLH/IHJSNJP+/Sv9KeN2Lx1V6McZzlSb9EhQ==}
 
-  env-ci@9.1.1:
-    resolution: {integrity: sha512-Im2yEWeF4b2RAMAaWvGioXk6m0UNaIjD8hj28j2ij5ldnIFrDQT0+pzDvpbRkcjurhXhf/AsBKv8P2rtmGi9Aw==}
-    engines: {node: ^16.14 || >=18}
+  '@vue/language-core@1.8.27':
+    resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==}
+    peerDependencies:
+      typescript: '*'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  error-ex@1.3.2:
-    resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
+  '@vue/shared@3.4.38':
+    resolution: {integrity: sha512-q0xCiLkuWWQLzVrecPb0RMsNWyxICOjPrcrwxTUEHb1fsnvni4dcuyG7RT/Ie7VPTvnjzIaWzRMUBsrqNj/hhw==}
 
-  es-abstract@1.23.3:
-    resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==}
-    engines: {node: '>= 0.4'}
+  '@walletconnect/core@2.14.0':
+    resolution: {integrity: sha512-E/dgBM9q3judXnTfZQ5ILvDpeSdDpabBLsXtYXa3Nyc26cfNplfLJ2nXm9FgtTdhM1nZ7yx4+zDPiXawBRZl2g==}
 
-  es-define-property@1.0.0:
-    resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
-    engines: {node: '>= 0.4'}
+  '@walletconnect/environment@1.0.1':
+    resolution: {integrity: sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==}
 
-  es-errors@1.3.0:
-    resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
-    engines: {node: '>= 0.4'}
+  '@walletconnect/ethereum-provider@2.14.0':
+    resolution: {integrity: sha512-Cc2/DCn85VciA10BrsNWFM//3VC1D8yjwrjfUKjGndLPDz0YIdAxTgYZViIlMjE0lzQC/DMvPYEAnGfW0O1Bwg==}
 
-  es-get-iterator@1.1.3:
-    resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==}
+  '@walletconnect/events@1.0.1':
+    resolution: {integrity: sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ==}
 
-  es-iterator-helpers@1.0.19:
-    resolution: {integrity: sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==}
-    engines: {node: '>= 0.4'}
+  '@walletconnect/heartbeat@1.2.2':
+    resolution: {integrity: sha512-uASiRmC5MwhuRuf05vq4AT48Pq8RMi876zV8rr8cV969uTOzWdB/k+Lj5yI2PBtB1bGQisGen7MM1GcZlQTBXw==}
 
-  es-object-atoms@1.0.0:
-    resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==}
-    engines: {node: '>= 0.4'}
+  '@walletconnect/jsonrpc-http-connection@1.0.8':
+    resolution: {integrity: sha512-+B7cRuaxijLeFDJUq5hAzNyef3e3tBDIxyaCNmFtjwnod5AGis3RToNqzFU33vpVcxFhofkpE7Cx+5MYejbMGw==}
 
-  es-set-tostringtag@2.0.3:
-    resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==}
-    engines: {node: '>= 0.4'}
+  '@walletconnect/jsonrpc-provider@1.0.14':
+    resolution: {integrity: sha512-rtsNY1XqHvWj0EtITNeuf8PHMvlCLiS3EjQL+WOkxEOA4KPxsohFnBDeyPYiNm4ZvkQdLnece36opYidmtbmow==}
 
-  es-shim-unscopables@1.0.2:
-    resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==}
+  '@walletconnect/jsonrpc-types@1.0.4':
+    resolution: {integrity: sha512-P6679fG/M+wuWg9TY8mh6xFSdYnFyFjwFelxyISxMDrlbXokorEVXYOxiqEbrU3x1BmBoCAJJ+vtEaEoMlpCBQ==}
 
-  es-to-primitive@1.2.1:
-    resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
-    engines: {node: '>= 0.4'}
+  '@walletconnect/jsonrpc-utils@1.0.8':
+    resolution: {integrity: sha512-vdeb03bD8VzJUL6ZtzRYsFMq1eZQcM3EAzT0a3st59dyLfJ0wq+tKMpmGH7HlB7waD858UWgfIcudbPFsbzVdw==}
 
-  es6-promise@3.3.1:
-    resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==}
+  '@walletconnect/jsonrpc-ws-connection@1.0.14':
+    resolution: {integrity: sha512-Jsl6fC55AYcbkNVkwNM6Jo+ufsuCQRqViOQ8ZBPH9pRREHH9welbBiszuTLqEJiQcO/6XfFDl6bzCJIkrEi8XA==}
 
-  esbuild@0.18.20:
-    resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==}
-    engines: {node: '>=12'}
-    hasBin: true
+  '@walletconnect/keyvaluestorage@1.1.1':
+    resolution: {integrity: sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA==}
+    peerDependencies:
+      '@react-native-async-storage/async-storage': 1.x
+    peerDependenciesMeta:
+      '@react-native-async-storage/async-storage':
+        optional: true
 
-  esbuild@0.21.5:
-    resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
-    engines: {node: '>=12'}
-    hasBin: true
+  '@walletconnect/logger@2.1.2':
+    resolution: {integrity: sha512-aAb28I3S6pYXZHQm5ESB+V6rDqIYfsnHaQyzFbwUUBFY4H0OXx/YtTl8lvhUNhMMfb9UxbwEBS253TlXUYJWSw==}
 
-  escalade@3.1.2:
-    resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
-    engines: {node: '>=6'}
+  '@walletconnect/modal-core@2.6.2':
+    resolution: {integrity: sha512-cv8ibvdOJQv2B+nyxP9IIFdxvQznMz8OOr/oR/AaUZym4hjXNL/l1a2UlSQBXrVjo3xxbouMxLb3kBsHoYP2CA==}
 
-  escape-string-regexp@1.0.5:
-    resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
-    engines: {node: '>=0.8.0'}
+  '@walletconnect/modal-ui@2.6.2':
+    resolution: {integrity: sha512-rbdstM1HPGvr7jprQkyPggX7rP4XiCG85ZA+zWBEX0dVQg8PpAgRUqpeub4xQKDgY7pY/xLRXSiCVdWGqvG2HA==}
 
-  escape-string-regexp@4.0.0:
-    resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
-    engines: {node: '>=10'}
+  '@walletconnect/modal@2.6.2':
+    resolution: {integrity: sha512-eFopgKi8AjKf/0U4SemvcYw9zlLpx9njVN8sf6DAkowC2Md0gPU/UNEbH1Wwj407pEKnEds98pKWib1NN1ACoA==}
 
-  escape-string-regexp@5.0.0:
-    resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
-    engines: {node: '>=12'}
+  '@walletconnect/relay-api@1.0.10':
+    resolution: {integrity: sha512-tqrdd4zU9VBNqUaXXQASaexklv6A54yEyQQEXYOCr+Jz8Ket0dmPBDyg19LVSNUN2cipAghQc45/KVmfFJ0cYw==}
 
-  eslint-config-next@13.5.6:
-    resolution: {integrity: sha512-o8pQsUHTo9aHqJ2YiZDym5gQAMRf7O2HndHo/JZeY7TDD+W4hk6Ma8Vw54RHiBeb7OWWO5dPirQB+Is/aVQ7Kg==}
-    peerDependencies:
-      eslint: ^7.23.0 || ^8.0.0
-      typescript: '>=3.3.1'
-    peerDependenciesMeta:
-      typescript:
-        optional: true
+  '@walletconnect/relay-auth@1.0.4':
+    resolution: {integrity: sha512-kKJcS6+WxYq5kshpPaxGHdwf5y98ZwbfuS4EE/NkQzqrDFm5Cj+dP8LofzWvjrrLkZq7Afy7WrQMXdLy8Sx7HQ==}
 
-  eslint-import-resolver-node@0.3.9:
-    resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
+  '@walletconnect/safe-json@1.0.2':
+    resolution: {integrity: sha512-Ogb7I27kZ3LPC3ibn8ldyUr5544t3/STow9+lzz7Sfo808YD7SBWk7SAsdBFlYgP2zDRy2hS3sKRcuSRM0OTmA==}
 
-  eslint-import-resolver-typescript@3.6.1:
-    resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
-    engines: {node: ^14.18.0 || >=16.0.0}
-    peerDependencies:
-      eslint: '*'
-      eslint-plugin-import: '*'
-
-  eslint-module-utils@2.8.1:
-    resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==}
-    engines: {node: '>=4'}
-    peerDependencies:
-      '@typescript-eslint/parser': '*'
-      eslint: '*'
-      eslint-import-resolver-node: '*'
-      eslint-import-resolver-typescript: '*'
-      eslint-import-resolver-webpack: '*'
-    peerDependenciesMeta:
-      '@typescript-eslint/parser':
-        optional: true
-      eslint:
-        optional: true
-      eslint-import-resolver-node:
-        optional: true
-      eslint-import-resolver-typescript:
-        optional: true
-      eslint-import-resolver-webpack:
-        optional: true
+  '@walletconnect/sign-client@2.14.0':
+    resolution: {integrity: sha512-UrB3S3eLjPYfBLCN3WJ5u7+WcZ8kFMe/QIDqLf76Jk6TaLwkSUy563LvnSw4KW/kA+/cY1KBSdUDfX1tzYJJXg==}
 
-  eslint-plugin-import@2.29.1:
-    resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
-    engines: {node: '>=4'}
-    peerDependencies:
-      '@typescript-eslint/parser': '*'
-      eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
-    peerDependenciesMeta:
-      '@typescript-eslint/parser':
-        optional: true
+  '@walletconnect/signer-connection@2.14.0':
+    resolution: {integrity: sha512-l9RHZpLxIzLywf1c1DiG6etNO/1s7UChFWZtIplPtb+4V6c+4BDkkrS0L6U/R9rdfboslmiEPYwNypQkPRS9aQ==}
 
-  eslint-plugin-jsx-a11y@6.9.0:
-    resolution: {integrity: sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==}
-    engines: {node: '>=4.0'}
-    peerDependencies:
-      eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
+  '@walletconnect/time@1.0.2':
+    resolution: {integrity: sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g==}
 
-  eslint-plugin-react-hooks@4.6.2:
-    resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==}
-    engines: {node: '>=10'}
-    peerDependencies:
-      eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
+  '@walletconnect/types@2.14.0':
+    resolution: {integrity: sha512-vevMi4jZLJ55vLuFOicQFmBBbLyb+S0sZS4IsaBdZkQflfGIq34HkN13c/KPl4Ye0aoR4/cUcUSitmGIzEQM5g==}
 
-  eslint-plugin-react@7.35.0:
-    resolution: {integrity: sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==}
-    engines: {node: '>=4'}
-    peerDependencies:
-      eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
+  '@walletconnect/universal-provider@2.14.0':
+    resolution: {integrity: sha512-Mr8uoTmD6H0+Hh+3gxBu4l3T2uP/nNPR02sVtwEujNum++F727mMk+ifPRIpkVo21V/bvXFEy8sHTs5hqyq5iA==}
 
-  eslint-scope@7.2.2:
-    resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
-    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+  '@walletconnect/utils@2.14.0':
+    resolution: {integrity: sha512-vRVomYQEtEAyCK2c5bzzEvtgxaGGITF8mWuIL+WYSAMyEJLY97mirP2urDucNwcUczwxUgI+no9RiNFbUHreQQ==}
 
-  eslint-visitor-keys@3.4.3:
-    resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
-    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+  '@walletconnect/window-getters@1.0.1':
+    resolution: {integrity: sha512-vHp+HqzGxORPAN8gY03qnbTMnhqIwjeRJNOMOAzePRg4xVEEE2WvYsI9G2NMjOknA8hnuYbU3/hwLcKbjhc8+Q==}
 
-  eslint@8.57.0:
-    resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==}
-    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
-    hasBin: true
+  '@walletconnect/window-metadata@1.0.1':
+    resolution: {integrity: sha512-9koTqyGrM2cqFRW517BPY/iEtUDx2r1+Pwwu5m7sJ7ka79wi3EyqhqcICk/yDmv6jAS1rjKgTKXlEhanYjijcA==}
 
-  espree@9.6.1:
-    resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
-    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+  '@xstate/react@1.6.3':
+    resolution: {integrity: sha512-NCUReRHPGvvCvj2yLZUTfR0qVp6+apc8G83oXSjN4rl89ZjyujiKrTff55bze/HrsvCsP/sUJASf2n0nzMF1KQ==}
+    peerDependencies:
+      '@xstate/fsm': ^1.0.0
+      react: ^16.8.0 || ^17.0.0
+      xstate: ^4.11.0
+    peerDependenciesMeta:
+      '@xstate/fsm':
+        optional: true
+      xstate:
+        optional: true
 
-  esprima@4.0.1:
-    resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
-    engines: {node: '>=4'}
-    hasBin: true
+  '@zag-js/dom-query@0.31.1':
+    resolution: {integrity: sha512-oiuohEXAXhBxpzzNm9k2VHGEOLC1SXlXSbRPcfBZ9so5NRQUA++zCE7cyQJqGLTZR0t3itFLlZqDbYEXRrefwg==}
 
-  esquery@1.6.0:
-    resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
-    engines: {node: '>=0.10'}
+  '@zag-js/element-size@0.31.1':
+    resolution: {integrity: sha512-4T3yvn5NqqAjhlP326Fv+w9RqMIBbNN9H72g5q2ohwzhSgSfZzrKtjL4rs9axY/cw9UfMfXjRjEE98e5CMq7WQ==}
 
-  esrecurse@4.3.0:
-    resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
-    engines: {node: '>=4.0'}
+  '@zag-js/focus-visible@0.31.1':
+    resolution: {integrity: sha512-dbLksz7FEwyFoANbpIlNnd3bVm0clQSUsnP8yUVQucStZPsuWjCrhL2jlAbGNrTrahX96ntUMXHb/sM68TibFg==}
 
-  estraverse@5.3.0:
-    resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
-    engines: {node: '>=4.0'}
+  '@zxcvbn-ts/core@3.0.4':
+    resolution: {integrity: sha512-aQeiT0F09FuJaAqNrxynlAwZ2mW/1MdXakKWNmGM1Qp/VaY6CnB/GfnMS2T8gB2231Esp1/maCWd8vTG4OuShw==}
 
-  estree-walker@2.0.2:
-    resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+  '@zxcvbn-ts/language-common@3.0.4':
+    resolution: {integrity: sha512-viSNNnRYtc7ULXzxrQIVUNwHAPSXRtoIwy/Tq4XQQdIknBzw4vz36lQLF6mvhMlTIlpjoN/Z1GFu/fwiAlUSsw==}
 
-  estree-walker@3.0.3:
-    resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
+  '@zxcvbn-ts/language-en@3.0.2':
+    resolution: {integrity: sha512-Zp+zL+I6Un2Bj0tRXNs6VUBq3Djt+hwTwUz4dkt2qgsQz47U0/XthZ4ULrT/RxjwJRl5LwiaKOOZeOtmixHnjg==}
 
-  esutils@2.0.3:
-    resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
-    engines: {node: '>=0.10.0'}
+  JSONStream@1.3.5:
+    resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==}
+    hasBin: true
 
-  eventemitter3@5.0.1:
-    resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
+  abi-wan-kanabi@2.2.2:
+    resolution: {integrity: sha512-sTCv2HyNIj1x2WFUoc9oL8ZT9liosrL+GoqEGZJK1kDND096CfA7lwx06vLxLWMocQ41FQXO3oliwoh/UZHYdQ==}
+    hasBin: true
 
-  events@3.3.0:
-    resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
-    engines: {node: '>=0.8.x'}
+  abort-controller@3.0.0:
+    resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
+    engines: {node: '>=6.5'}
 
-  execa@5.1.1:
-    resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
-    engines: {node: '>=10'}
+  accepts@1.3.8:
+    resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
+    engines: {node: '>= 0.6'}
 
-  execa@7.2.0:
-    resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==}
-    engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0}
+  acorn-jsx@5.3.2:
+    resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+    peerDependencies:
+      acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
 
-  execa@8.0.1:
-    resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
-    engines: {node: '>=16.17'}
+  acorn-walk@8.3.3:
+    resolution: {integrity: sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==}
+    engines: {node: '>=0.4.0'}
 
-  fast-deep-equal@3.1.3:
-    resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+  acorn@8.12.1:
+    resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==}
+    engines: {node: '>=0.4.0'}
+    hasBin: true
 
-  fast-glob@3.3.2:
-    resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
-    engines: {node: '>=8.6.0'}
+  agent-base@7.1.1:
+    resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==}
+    engines: {node: '>= 14'}
 
-  fast-json-stable-stringify@2.1.0:
-    resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+  aggregate-error@3.1.0:
+    resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
+    engines: {node: '>=8'}
 
-  fast-levenshtein@2.0.6:
-    resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
+  aggregate-error@5.0.0:
+    resolution: {integrity: sha512-gOsf2YwSlleG6IjRYG2A7k0HmBMEo6qVNk9Bp/EaLgAJT5ngH6PXbqa4ItvnEwCm/velL5jAnQgsHsWnjhGmvw==}
+    engines: {node: '>=18'}
 
-  fast-redact@3.5.0:
-    resolution: {integrity: sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==}
-    engines: {node: '>=6'}
+  ajv@6.12.6:
+    resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
 
-  fast-uri@3.0.1:
-    resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==}
+  ajv@8.17.1:
+    resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==}
 
-  fastq@1.17.1:
-    resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
+  anser@1.4.10:
+    resolution: {integrity: sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==}
 
-  fetch-cookie@3.0.1:
-    resolution: {integrity: sha512-ZGXe8Y5Z/1FWqQ9q/CrJhkUD73DyBU9VF0hBQmEO/wPHe4A9PKTjplFDLeFX8aOsYypZUcX5Ji/eByn3VCVO3Q==}
+  ansi-escapes@5.0.0:
+    resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==}
+    engines: {node: '>=12'}
 
-  figures@2.0.0:
-    resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==}
-    engines: {node: '>=4'}
+  ansi-escapes@6.2.1:
+    resolution: {integrity: sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig==}
+    engines: {node: '>=14.16'}
 
-  figures@5.0.0:
-    resolution: {integrity: sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==}
-    engines: {node: '>=14'}
+  ansi-fragments@0.2.1:
+    resolution: {integrity: sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==}
 
-  file-entry-cache@6.0.1:
-    resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
-    engines: {node: ^10.12.0 || >=12.0.0}
+  ansi-regex@4.1.1:
+    resolution: {integrity: sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==}
+    engines: {node: '>=6'}
 
-  fill-range@7.1.1:
-    resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
+  ansi-regex@5.0.1:
+    resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
     engines: {node: '>=8'}
 
-  filter-obj@1.1.0:
-    resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==}
-    engines: {node: '>=0.10.0'}
-
-  find-line-column@0.5.2:
-    resolution: {integrity: sha512-eNhNkDt5RbxY4X++JwyDURP62FYhV1bh9LF4dfOiwpVCTk5vvfEANhnui5ypUEELGR02QZSrWFtaTgd4ulW5tw==}
-
-  find-root@1.1.0:
-    resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==}
+  ansi-regex@6.0.1:
+    resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
+    engines: {node: '>=12'}
 
-  find-up@2.1.0:
-    resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==}
+  ansi-styles@3.2.1:
+    resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
     engines: {node: '>=4'}
 
-  find-up@4.1.0:
-    resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
+  ansi-styles@4.3.0:
+    resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
     engines: {node: '>=8'}
 
-  find-up@5.0.0:
-    resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
+  ansi-styles@5.2.0:
+    resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
     engines: {node: '>=10'}
 
-  find-up@6.3.0:
-    resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
-  find-versions@5.1.0:
-    resolution: {integrity: sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==}
+  ansi-styles@6.2.1:
+    resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
     engines: {node: '>=12'}
 
-  flat-cache@3.2.0:
-    resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==}
-    engines: {node: ^10.12.0 || >=12.0.0}
+  ansicolors@0.3.2:
+    resolution: {integrity: sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==}
 
-  flatted@3.3.1:
-    resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
+  any-promise@1.3.0:
+    resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
 
-  for-each@0.3.3:
-    resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
+  anymatch@3.1.3:
+    resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
+    engines: {node: '>= 8'}
 
-  foreground-child@3.3.0:
-    resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==}
-    engines: {node: '>=14'}
+  appdirsjs@1.2.7:
+    resolution: {integrity: sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw==}
 
-  fraction.js@4.3.7:
-    resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
+  arg@4.1.3:
+    resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==}
 
-  from2@2.3.0:
-    resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==}
+  arg@5.0.2:
+    resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
 
-  fs-extra@10.1.0:
-    resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
-    engines: {node: '>=12'}
+  argparse@1.0.10:
+    resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
 
-  fs-extra@11.2.0:
-    resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==}
-    engines: {node: '>=14.14'}
+  argparse@2.0.1:
+    resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
 
-  fs-extra@7.0.1:
-    resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==}
-    engines: {node: '>=6 <7 || >=8'}
+  argv-formatter@1.0.0:
+    resolution: {integrity: sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==}
 
-  fs.realpath@1.0.0:
-    resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
+  aria-hidden@1.2.4:
+    resolution: {integrity: sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==}
+    engines: {node: '>=10'}
 
-  fsevents@2.3.3:
-    resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
-    engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
-    os: [darwin]
+  aria-query@5.1.3:
+    resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==}
 
-  function-bind@1.1.2:
-    resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
+  aria-query@5.3.0:
+    resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==}
 
-  function.prototype.name@1.1.6:
-    resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
+  array-buffer-byte-length@1.0.1:
+    resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==}
     engines: {node: '>= 0.4'}
 
-  functions-have-names@1.2.3:
-    resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
+  array-ify@1.0.0:
+    resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==}
 
-  gensync@1.0.0-beta.2:
-    resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
-    engines: {node: '>=6.9.0'}
+  array-includes@3.1.8:
+    resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==}
+    engines: {node: '>= 0.4'}
 
-  get-caller-file@2.0.5:
-    resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
-    engines: {node: 6.* || 8.* || >= 10.*}
+  array-union@2.1.0:
+    resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
+    engines: {node: '>=8'}
 
-  get-func-name@2.0.2:
-    resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==}
+  array.prototype.findlast@1.2.5:
+    resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==}
+    engines: {node: '>= 0.4'}
 
-  get-intrinsic@1.2.4:
-    resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
+  array.prototype.findlastindex@1.2.5:
+    resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==}
     engines: {node: '>= 0.4'}
 
-  get-port-please@3.1.2:
-    resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==}
+  array.prototype.flat@1.3.2:
+    resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
+    engines: {node: '>= 0.4'}
 
-  get-starknet-core@4.0.0:
-    resolution: {integrity: sha512-6pLmidQZkC3wZsrHY99grQHoGpuuXqkbSP65F8ov1/JsEI8DDLkhsAuLCKFzNOK56cJp+f1bWWfTJ57e9r5eqQ==}
+  array.prototype.flatmap@1.3.2:
+    resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
+    engines: {node: '>= 0.4'}
 
-  get-stream@6.0.1:
-    resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
-    engines: {node: '>=10'}
+  array.prototype.tosorted@1.1.4:
+    resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==}
+    engines: {node: '>= 0.4'}
 
-  get-stream@7.0.1:
-    resolution: {integrity: sha512-3M8C1EOFN6r8AMUhwUAACIoXZJEOufDU5+0gFFN5uNs6XYOralD2Pqkl7m046va6x77FwposWXbAhPPIOus7mQ==}
-    engines: {node: '>=16'}
+  arraybuffer.prototype.slice@1.0.3:
+    resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==}
+    engines: {node: '>= 0.4'}
 
-  get-stream@8.0.1:
-    resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
-    engines: {node: '>=16'}
+  arrify@1.0.1:
+    resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==}
+    engines: {node: '>=0.10.0'}
 
-  get-symbol-description@1.0.2:
-    resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==}
-    engines: {node: '>= 0.4'}
+  asap@2.0.6:
+    resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==}
 
-  get-tsconfig@4.7.6:
-    resolution: {integrity: sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA==}
+  assertion-error@1.1.0:
+    resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==}
 
-  git-log-parser@1.2.1:
-    resolution: {integrity: sha512-PI+sPDvHXNPl5WNOErAK05s3j0lgwUzMN6o8cyQrDaKfT3qd7TmNJKeXX+SknI5I0QhG5fVPAEwSY4tRGDtYoQ==}
+  ast-types-flow@0.0.8:
+    resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==}
 
-  git-raw-commits@2.0.11:
-    resolution: {integrity: sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==}
-    engines: {node: '>=10'}
-    hasBin: true
+  ast-types@0.15.2:
+    resolution: {integrity: sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==}
+    engines: {node: '>=4'}
 
-  glob-parent@5.1.2:
-    resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
-    engines: {node: '>= 6'}
+  astral-regex@1.0.0:
+    resolution: {integrity: sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==}
+    engines: {node: '>=4'}
 
-  glob-parent@6.0.2:
-    resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
-    engines: {node: '>=10.13.0'}
+  async-limiter@1.0.1:
+    resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==}
 
-  glob@10.4.5:
-    resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
-    hasBin: true
+  async-retry@1.3.3:
+    resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==}
 
-  glob@7.1.7:
-    resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==}
-    deprecated: Glob versions prior to v9 are no longer supported
+  atomic-sleep@1.0.0:
+    resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==}
+    engines: {node: '>=8.0.0'}
 
-  glob@7.2.3:
-    resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
-    deprecated: Glob versions prior to v9 are no longer supported
+  autoprefixer@10.4.20:
+    resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==}
+    engines: {node: ^10 || ^12 || >=14}
+    hasBin: true
+    peerDependencies:
+      postcss: ^8.1.0
 
-  global-dirs@0.1.1:
-    resolution: {integrity: sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==}
-    engines: {node: '>=4'}
+  available-typed-arrays@1.0.7:
+    resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
+    engines: {node: '>= 0.4'}
 
-  globals@11.12.0:
-    resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
+  axe-core@4.10.0:
+    resolution: {integrity: sha512-Mr2ZakwQ7XUAjp7pAwQWRhhK8mQQ6JAaNWSjmjxil0R8BPioMtQsTLOolGYkji1rcL++3dCqZA3zWqpT+9Ew6g==}
     engines: {node: '>=4'}
 
-  globals@13.24.0:
-    resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
-    engines: {node: '>=8'}
+  axobject-query@3.1.1:
+    resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==}
 
-  globalthis@1.0.4:
-    resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
+  axobject-query@4.1.0:
+    resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
     engines: {node: '>= 0.4'}
 
-  globby@11.1.0:
-    resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
-    engines: {node: '>=10'}
-
-  globby@14.0.2:
-    resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==}
-    engines: {node: '>=18'}
+  babel-core@7.0.0-bridge.0:
+    resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
 
-  gopd@1.0.1:
-    resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
+  babel-plugin-macros@3.1.0:
+    resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==}
+    engines: {node: '>=10', npm: '>=6'}
 
-  graceful-fs@4.2.10:
-    resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
+  babel-plugin-polyfill-corejs2@0.4.11:
+    resolution: {integrity: sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==}
+    peerDependencies:
+      '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
 
-  graceful-fs@4.2.11:
-    resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
+  babel-plugin-polyfill-corejs3@0.10.6:
+    resolution: {integrity: sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==}
+    peerDependencies:
+      '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
 
-  graphemer@1.4.0:
-    resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+  babel-plugin-polyfill-regenerator@0.6.2:
+    resolution: {integrity: sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==}
+    peerDependencies:
+      '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
 
-  h3@1.12.0:
-    resolution: {integrity: sha512-Zi/CcNeWBXDrFNlV0hUBJQR9F7a96RjMeAZweW/ZWkR9fuXrMcvKnSA63f/zZ9l0GgQOZDVHGvXivNN9PWOwhA==}
+  babel-plugin-transform-flow-enums@0.0.2:
+    resolution: {integrity: sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==}
 
-  handlebars@4.7.8:
-    resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==}
-    engines: {node: '>=0.4.7'}
-    hasBin: true
+  balanced-match@1.0.2:
+    resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
 
-  hard-rejection@2.1.0:
-    resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==}
-    engines: {node: '>=6'}
+  base64-js@1.5.1:
+    resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
 
-  has-bigints@1.0.2:
-    resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
+  before-after-hook@2.2.3:
+    resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==}
 
-  has-flag@3.0.0:
-    resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
-    engines: {node: '>=4'}
+  bignumber.js@9.1.2:
+    resolution: {integrity: sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==}
 
-  has-flag@4.0.0:
-    resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
+  binary-extensions@2.3.0:
+    resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
     engines: {node: '>=8'}
 
-  has-property-descriptors@1.0.2:
-    resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
+  bl@4.1.0:
+    resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}
 
-  has-proto@1.0.3:
-    resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
-    engines: {node: '>= 0.4'}
+  bn.js@4.12.0:
+    resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==}
 
-  has-symbols@1.0.3:
-    resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
-    engines: {node: '>= 0.4'}
+  bn.js@5.2.1:
+    resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==}
 
-  has-tostringtag@1.0.2:
-    resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
-    engines: {node: '>= 0.4'}
+  body-scroll-lock@3.1.5:
+    resolution: {integrity: sha512-Yi1Xaml0EvNA0OYWxXiYNqY24AfWkbA6w5vxE7GWxtKfzIbZM+Qw+aSmkgsbWzbHiy/RCSkUZBplVxTA+E4jJg==}
 
-  hasown@2.0.2:
-    resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
-    engines: {node: '>= 0.4'}
+  bottleneck@2.19.5:
+    resolution: {integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==}
 
-  he@1.2.0:
-    resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
-    hasBin: true
+  bowser@2.11.0:
+    resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==}
 
-  hey-listen@1.0.8:
-    resolution: {integrity: sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==}
+  brace-expansion@1.1.11:
+    resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
 
-  hook-std@3.0.0:
-    resolution: {integrity: sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  brace-expansion@2.0.1:
+    resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
 
-  hosted-git-info@2.8.9:
-    resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
+  braces@3.0.3:
+    resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
+    engines: {node: '>=8'}
 
-  hosted-git-info@4.1.0:
-    resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==}
-    engines: {node: '>=10'}
+  brorand@1.1.0:
+    resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==}
 
-  hosted-git-info@7.0.2:
-    resolution: {integrity: sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==}
-    engines: {node: ^16.14.0 || >=18.0.0}
+  browserslist@4.23.3:
+    resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==}
+    engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+    hasBin: true
 
-  http-proxy-agent@7.0.2:
-    resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==}
-    engines: {node: '>= 14'}
+  browserslist@4.24.0:
+    resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==}
+    engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+    hasBin: true
 
-  http-shutdown@1.2.2:
-    resolution: {integrity: sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==}
-    engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
+  bser@2.1.1:
+    resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==}
 
-  https-proxy-agent@7.0.5:
-    resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==}
-    engines: {node: '>= 14'}
+  buffer-crc32@1.0.0:
+    resolution: {integrity: sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==}
+    engines: {node: '>=8.0.0'}
 
-  human-signals@2.1.0:
-    resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
-    engines: {node: '>=10.17.0'}
+  buffer-from@1.1.2:
+    resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
 
-  human-signals@4.3.1:
-    resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==}
-    engines: {node: '>=14.18.0'}
+  buffer@5.7.1:
+    resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
 
-  human-signals@5.0.0:
-    resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
-    engines: {node: '>=16.17.0'}
+  buffer@6.0.3:
+    resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
 
-  husky@8.0.3:
-    resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==}
-    engines: {node: '>=14'}
-    hasBin: true
+  builtin-modules@3.3.0:
+    resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
+    engines: {node: '>=6'}
 
-  idb-keyval@6.2.1:
-    resolution: {integrity: sha512-8Sb3veuYCyrZL+VBt9LJfZjLUPWVvqn8tG28VqYNFCo43KHcKuq+b4EiXGeuaLAQWL2YmyDgMp2aSpH9JHsEQg==}
+  bytes@3.0.0:
+    resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==}
+    engines: {node: '>= 0.8'}
 
-  ignore@5.3.2:
-    resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
-    engines: {node: '>= 4'}
+  cac@6.7.14:
+    resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
+    engines: {node: '>=8'}
 
-  import-fresh@2.0.0:
-    resolution: {integrity: sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==}
+  call-bind@1.0.7:
+    resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
+    engines: {node: '>= 0.4'}
+
+  caller-callsite@2.0.0:
+    resolution: {integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==}
     engines: {node: '>=4'}
 
-  import-fresh@3.3.0:
-    resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
-    engines: {node: '>=6'}
+  caller-path@2.0.0:
+    resolution: {integrity: sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==}
+    engines: {node: '>=4'}
 
-  import-from@4.0.0:
-    resolution: {integrity: sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==}
-    engines: {node: '>=12.2'}
+  callsites@2.0.0:
+    resolution: {integrity: sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==}
+    engines: {node: '>=4'}
 
-  import-lazy@4.0.0:
-    resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==}
-    engines: {node: '>=8'}
+  callsites@3.1.0:
+    resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+    engines: {node: '>=6'}
 
-  import-sort-config@6.0.0:
-    resolution: {integrity: sha512-FJpF2F3+30JXqH1rJKeajxoSCHCueai3/0ntDN4y3GJL5pjnLDt/VjCy5FzjH7u0NHnllL/zVEf1wfmsVxJlPQ==}
+  camelcase-css@2.0.1:
+    resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
+    engines: {node: '>= 6'}
 
-  import-sort-parser-babylon@6.0.0:
-    resolution: {integrity: sha512-NyShTiNhTh4Vy7kJUVe6CuvOaQAzzfSIT72wtp3CzGjz8bHjNj59DCAjncuviicmDOgVAgmLuSh1WMcLYAMWGg==}
+  camelcase-keys@6.2.2:
+    resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==}
+    engines: {node: '>=8'}
 
-  import-sort-parser-typescript@6.0.0:
-    resolution: {integrity: sha512-pgxnr3I156DonupQriNsgDb2zJN9TxrqCCIN1rwT/6SDO1rkJb+a0fjqshCjlgacTSA92oPAp1eAwmQUeZi3dw==}
+  camelcase@5.3.1:
+    resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
+    engines: {node: '>=6'}
 
-  import-sort-parser@6.0.0:
-    resolution: {integrity: sha512-H5L+d6HnqHvThB0GmAA3/43Sv74oCwL0iMk3/ixOv0LRJ69rCyHXeG/+UadMHrD2FefEmgPIWboEPAG7gsQrkA==}
+  camelcase@6.3.0:
+    resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
+    engines: {node: '>=10'}
 
-  import-sort-style@6.0.0:
-    resolution: {integrity: sha512-z0H5PKs7YoDeKxNYXv2AA1mjjZFY07fjeNCXUdTM3ymJtWeeEoTm8CQkFm2l+KPZoMczIvdwzJpWkkOamBnsPw==}
+  caniuse-lite@1.0.30001651:
+    resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==}
 
-  import-sort@6.0.0:
-    resolution: {integrity: sha512-XUwSQMGAGmcW/wfshFE0gXgb1NPF6ibbQD6wDr3KRDykZf/lZj0jf58Bwa02xNb8EE59oz7etFe9OHnJocUW5Q==}
+  caniuse-lite@1.0.30001667:
+    resolution: {integrity: sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==}
 
-  imurmurhash@0.1.4:
-    resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
-    engines: {node: '>=0.8.19'}
+  cardinal@2.1.1:
+    resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==}
+    hasBin: true
 
-  indent-string@4.0.0:
-    resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
-    engines: {node: '>=8'}
+  chai@4.5.0:
+    resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==}
+    engines: {node: '>=4'}
 
-  indent-string@5.0.0:
-    resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==}
-    engines: {node: '>=12'}
+  chalk@2.4.2:
+    resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
+    engines: {node: '>=4'}
 
-  inflight@1.0.6:
-    resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
-    deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
+  chalk@4.1.2:
+    resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
+    engines: {node: '>=10'}
 
-  inherits@2.0.4:
-    resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
+  chalk@5.3.0:
+    resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
+    engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
 
-  ini@1.3.8:
-    resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
+  check-error@1.0.3:
+    resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==}
 
-  internal-slot@1.0.7:
-    resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==}
-    engines: {node: '>= 0.4'}
+  chokidar@3.6.0:
+    resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
+    engines: {node: '>= 8.10.0'}
 
-  into-stream@7.0.0:
-    resolution: {integrity: sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==}
-    engines: {node: '>=12'}
+  chrome-launcher@0.15.2:
+    resolution: {integrity: sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ==}
+    engines: {node: '>=12.13.0'}
+    hasBin: true
 
-  iron-webcrypto@1.2.1:
-    resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==}
+  chromium-edge-launcher@0.2.0:
+    resolution: {integrity: sha512-JfJjUnq25y9yg4FABRRVPmBGWPZZi+AQXT4mxupb67766/0UlhG8PAZCz6xzEMXTbW3CsSoE8PcCWA49n35mKg==}
 
-  is-arguments@1.1.1:
-    resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==}
-    engines: {node: '>= 0.4'}
+  ci-info@2.0.0:
+    resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==}
 
-  is-array-buffer@3.0.4:
-    resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==}
-    engines: {node: '>= 0.4'}
+  ci-info@3.9.0:
+    resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==}
+    engines: {node: '>=8'}
 
-  is-arrayish@0.2.1:
-    resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
+  citty@0.1.6:
+    resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==}
 
-  is-async-function@2.0.0:
-    resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==}
-    engines: {node: '>= 0.4'}
+  clean-stack@2.2.0:
+    resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
+    engines: {node: '>=6'}
 
-  is-bigint@1.0.4:
-    resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
+  clean-stack@5.2.0:
+    resolution: {integrity: sha512-TyUIUJgdFnCISzG5zu3291TAsE77ddchd0bepon1VVQrKLGKFED4iXFEDQ24mIPdPBbyE16PK3F8MYE1CmcBEQ==}
+    engines: {node: '>=14.16'}
 
-  is-binary-path@2.1.0:
-    resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
+  cli-cursor@3.1.0:
+    resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
     engines: {node: '>=8'}
 
-  is-boolean-object@1.1.2:
-    resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
-    engines: {node: '>= 0.4'}
+  cli-cursor@4.0.0:
+    resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
 
-  is-builtin-module@3.2.1:
-    resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
+  cli-spinners@2.9.2:
+    resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==}
     engines: {node: '>=6'}
 
-  is-callable@1.2.7:
-    resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
-    engines: {node: '>= 0.4'}
+  cli-table3@0.6.5:
+    resolution: {integrity: sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==}
+    engines: {node: 10.* || >= 12.*}
 
-  is-core-module@2.15.0:
-    resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==}
-    engines: {node: '>= 0.4'}
+  cli-truncate@3.1.0:
+    resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
 
-  is-data-view@1.0.1:
-    resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==}
-    engines: {node: '>= 0.4'}
+  clipboardy@4.0.0:
+    resolution: {integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==}
+    engines: {node: '>=18'}
 
-  is-date-object@1.0.5:
-    resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
-    engines: {node: '>= 0.4'}
+  cliui@6.0.0:
+    resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==}
 
-  is-directory@0.3.1:
-    resolution: {integrity: sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==}
-    engines: {node: '>=0.10.0'}
+  cliui@8.0.1:
+    resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
+    engines: {node: '>=12'}
 
-  is-docker@3.0.0:
-    resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-    hasBin: true
+  clone-deep@4.0.1:
+    resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==}
+    engines: {node: '>=6'}
 
-  is-extglob@2.1.1:
-    resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
-    engines: {node: '>=0.10.0'}
+  clone@1.0.4:
+    resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
+    engines: {node: '>=0.8'}
 
-  is-finalizationregistry@1.0.2:
-    resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==}
+  code-red@1.0.4:
+    resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==}
 
-  is-fullwidth-code-point@3.0.0:
-    resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
-    engines: {node: '>=8'}
+  color-convert@1.9.3:
+    resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
 
-  is-fullwidth-code-point@4.0.0:
-    resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==}
-    engines: {node: '>=12'}
+  color-convert@2.0.1:
+    resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
+    engines: {node: '>=7.0.0'}
 
-  is-generator-function@1.0.10:
-    resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==}
-    engines: {node: '>= 0.4'}
+  color-name@1.1.3:
+    resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
 
-  is-glob@4.0.3:
-    resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
-    engines: {node: '>=0.10.0'}
+  color-name@1.1.4:
+    resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
 
-  is-inside-container@1.0.0:
-    resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
-    engines: {node: '>=14.16'}
-    hasBin: true
+  color2k@2.0.3:
+    resolution: {integrity: sha512-zW190nQTIoXcGCaU08DvVNFTmQhUpnJfVuAKfWqUQkflXKpaDdpaYoM0iluLS9lgJNHyBF58KKA2FBEwkD7wog==}
 
-  is-map@2.0.3:
-    resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==}
-    engines: {node: '>= 0.4'}
+  colord@2.9.3:
+    resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
 
-  is-negative-zero@2.0.3:
-    resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
-    engines: {node: '>= 0.4'}
+  colorette@1.4.0:
+    resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==}
 
-  is-number-object@1.0.7:
-    resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
-    engines: {node: '>= 0.4'}
+  colorette@2.0.20:
+    resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
 
-  is-number@7.0.0:
-    resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
-    engines: {node: '>=0.12.0'}
+  command-exists@1.2.9:
+    resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==}
 
-  is-obj@2.0.0:
-    resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==}
-    engines: {node: '>=8'}
+  commander@11.0.0:
+    resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==}
+    engines: {node: '>=16'}
 
-  is-path-inside@3.0.3:
-    resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
-    engines: {node: '>=8'}
+  commander@2.20.3:
+    resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
 
-  is-plain-obj@1.1.0:
-    resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==}
-    engines: {node: '>=0.10.0'}
+  commander@4.1.1:
+    resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
+    engines: {node: '>= 6'}
 
-  is-promise@4.0.0:
-    resolution: {integrity: sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==}
+  commander@9.5.0:
+    resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==}
+    engines: {node: ^12.20.0 || >=14}
 
-  is-reference@3.0.2:
-    resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==}
+  commondir@1.0.1:
+    resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==}
 
-  is-regex@1.1.4:
-    resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
-    engines: {node: '>= 0.4'}
+  compare-func@2.0.0:
+    resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==}
 
-  is-set@2.0.3:
-    resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==}
-    engines: {node: '>= 0.4'}
+  compressible@2.0.18:
+    resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==}
+    engines: {node: '>= 0.6'}
 
-  is-shared-array-buffer@1.0.3:
-    resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==}
-    engines: {node: '>= 0.4'}
+  compression@1.7.4:
+    resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==}
+    engines: {node: '>= 0.8.0'}
 
-  is-stream@2.0.1:
-    resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
-    engines: {node: '>=8'}
+  computeds@0.0.1:
+    resolution: {integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==}
 
-  is-stream@3.0.0:
-    resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  concat-map@0.0.1:
+    resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
 
-  is-string@1.0.7:
-    resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
-    engines: {node: '>= 0.4'}
+  confbox@0.1.7:
+    resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==}
 
-  is-symbol@1.0.4:
-    resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
-    engines: {node: '>= 0.4'}
+  config-chain@1.1.13:
+    resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==}
 
-  is-text-path@1.0.1:
-    resolution: {integrity: sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==}
-    engines: {node: '>=0.10.0'}
+  connect@3.7.0:
+    resolution: {integrity: sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==}
+    engines: {node: '>= 0.10.0'}
 
-  is-text-path@2.0.0:
-    resolution: {integrity: sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==}
-    engines: {node: '>=8'}
+  consola@3.2.3:
+    resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==}
+    engines: {node: ^14.18.0 || >=16.10.0}
 
-  is-typed-array@1.1.13:
-    resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==}
-    engines: {node: '>= 0.4'}
+  conventional-changelog-angular@6.0.0:
+    resolution: {integrity: sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==}
+    engines: {node: '>=14'}
 
-  is-unicode-supported@1.3.0:
-    resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==}
-    engines: {node: '>=12'}
+  conventional-changelog-conventionalcommits@6.1.0:
+    resolution: {integrity: sha512-3cS3GEtR78zTfMzk0AizXKKIdN4OvSh7ibNz6/DPbhWWQu7LqE/8+/GqSodV+sywUR2gpJAdP/1JFf4XtN7Zpw==}
+    engines: {node: '>=14'}
 
-  is-weakmap@2.0.2:
-    resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==}
-    engines: {node: '>= 0.4'}
+  conventional-changelog-writer@6.0.1:
+    resolution: {integrity: sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==}
+    engines: {node: '>=14'}
+    hasBin: true
 
-  is-weakref@1.0.2:
-    resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
+  conventional-commits-filter@3.0.0:
+    resolution: {integrity: sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==}
+    engines: {node: '>=14'}
 
-  is-weakset@2.0.3:
-    resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==}
-    engines: {node: '>= 0.4'}
+  conventional-commits-filter@4.0.0:
+    resolution: {integrity: sha512-rnpnibcSOdFcdclpFwWa+pPlZJhXE7l+XK04zxhbWrhgpR96h33QLz8hITTXbcYICxVr3HZFtbtUAQ+4LdBo9A==}
+    engines: {node: '>=16'}
 
-  is-wsl@3.1.0:
-    resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==}
+  conventional-commits-parser@4.0.0:
+    resolution: {integrity: sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==}
+    engines: {node: '>=14'}
+    hasBin: true
+
+  conventional-commits-parser@5.0.0:
+    resolution: {integrity: sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==}
     engines: {node: '>=16'}
+    hasBin: true
 
-  is64bit@2.0.0:
-    resolution: {integrity: sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==}
-    engines: {node: '>=18'}
+  convert-source-map@1.9.0:
+    resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
 
-  isarray@1.0.0:
-    resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
+  convert-source-map@2.0.0:
+    resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
 
-  isarray@2.0.5:
-    resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
+  cookie-es@1.2.2:
+    resolution: {integrity: sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==}
 
-  isexe@2.0.0:
-    resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+  cookie@0.6.0:
+    resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==}
+    engines: {node: '>= 0.6'}
 
-  isomorphic-fetch@3.0.0:
-    resolution: {integrity: sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==}
+  copy-to-clipboard@3.3.3:
+    resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==}
 
-  isomorphic-unfetch@3.1.0:
-    resolution: {integrity: sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==}
+  core-js-compat@3.38.1:
+    resolution: {integrity: sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==}
 
-  issue-parser@6.0.0:
-    resolution: {integrity: sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==}
-    engines: {node: '>=10.13'}
+  core-util-is@1.0.3:
+    resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
 
-  iterator.prototype@1.1.2:
-    resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==}
+  cosmiconfig-typescript-loader@4.4.0:
+    resolution: {integrity: sha512-BabizFdC3wBHhbI4kJh0VkQP9GkBfoHPydD0COMce1nJ1kJAB3F2TmJ/I7diULBKtmEWSwEbuN/KDtgnmUUVmw==}
+    engines: {node: '>=v14.21.3'}
+    peerDependencies:
+      '@types/node': '*'
+      cosmiconfig: '>=7'
+      ts-node: '>=10'
+      typescript: '>=4'
 
-  jackspeak@3.4.3:
-    resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
+  cosmiconfig@5.2.1:
+    resolution: {integrity: sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==}
+    engines: {node: '>=4'}
 
-  java-properties@1.0.2:
-    resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==}
-    engines: {node: '>= 0.6.0'}
+  cosmiconfig@7.1.0:
+    resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==}
+    engines: {node: '>=10'}
 
-  jiti@1.21.6:
-    resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==}
-    hasBin: true
+  cosmiconfig@8.3.6:
+    resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==}
+    engines: {node: '>=14'}
+    peerDependencies:
+      typescript: '>=4.9.5'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  jju@1.4.0:
-    resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==}
+  cosmiconfig@9.0.0:
+    resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==}
+    engines: {node: '>=14'}
+    peerDependencies:
+      typescript: '>=4.9.5'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  js-tokens@4.0.0:
-    resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
+  create-require@1.1.1:
+    resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==}
 
-  js-tokens@9.0.0:
-    resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==}
+  cross-fetch@3.1.8:
+    resolution: {integrity: sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==}
 
-  js-yaml@3.14.1:
-    resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
-    hasBin: true
+  cross-spawn@7.0.3:
+    resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
+    engines: {node: '>= 8'}
 
-  js-yaml@4.1.0:
-    resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
-    hasBin: true
+  crossws@0.2.4:
+    resolution: {integrity: sha512-DAxroI2uSOgUKLz00NX6A8U/8EE3SZHmIND+10jkVSaypvyt57J5JEOxAQOL6lQxyzi/wZbTIwssU1uy69h5Vg==}
+    peerDependencies:
+      uWebSockets.js: '*'
+    peerDependenciesMeta:
+      uWebSockets.js:
+        optional: true
 
-  jsesc@2.5.2:
-    resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
+  crypto-random-string@4.0.0:
+    resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==}
+    engines: {node: '>=12'}
+
+  css-tree@2.3.1:
+    resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==}
+    engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
+
+  cssesc@3.0.0:
+    resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
     engines: {node: '>=4'}
     hasBin: true
 
-  json-buffer@3.0.1:
-    resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+  csstype@3.1.3:
+    resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
 
-  json-parse-better-errors@1.0.2:
-    resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==}
+  damerau-levenshtein@1.0.8:
+    resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==}
 
-  json-parse-even-better-errors@2.3.1:
-    resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
+  dargs@7.0.0:
+    resolution: {integrity: sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==}
+    engines: {node: '>=8'}
 
-  json-parse-even-better-errors@3.0.2:
-    resolution: {integrity: sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==}
-    engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+  data-view-buffer@1.0.1:
+    resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==}
+    engines: {node: '>= 0.4'}
 
-  json-schema-traverse@0.4.1:
-    resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+  data-view-byte-length@1.0.1:
+    resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==}
+    engines: {node: '>= 0.4'}
 
-  json-schema-traverse@1.0.0:
-    resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
+  data-view-byte-offset@1.0.0:
+    resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==}
+    engines: {node: '>= 0.4'}
 
-  json-stable-stringify-without-jsonify@1.0.1:
-    resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+  dataloader@2.2.2:
+    resolution: {integrity: sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g==}
 
-  json-stringify-safe@5.0.1:
-    resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==}
+  dateformat@3.0.3:
+    resolution: {integrity: sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==}
 
-  json5@1.0.2:
-    resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
-    hasBin: true
+  dayjs@1.11.13:
+    resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==}
 
-  json5@2.2.3:
-    resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
-    engines: {node: '>=6'}
-    hasBin: true
+  de-indent@1.0.2:
+    resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==}
 
-  jsonfile@4.0.0:
-    resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
+  debounce@1.2.1:
+    resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==}
 
-  jsonfile@6.1.0:
-    resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
+  debug@2.6.9:
+    resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==}
+    peerDependencies:
+      supports-color: '*'
+    peerDependenciesMeta:
+      supports-color:
+        optional: true
 
-  jsonparse@1.3.1:
-    resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==}
-    engines: {'0': node >= 0.2.0}
+  debug@3.2.7:
+    resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
+    peerDependencies:
+      supports-color: '*'
+    peerDependenciesMeta:
+      supports-color:
+        optional: true
 
-  jsx-ast-utils@3.3.5:
-    resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==}
-    engines: {node: '>=4.0'}
+  debug@4.3.4:
+    resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
+    engines: {node: '>=6.0'}
+    peerDependencies:
+      supports-color: '*'
+    peerDependenciesMeta:
+      supports-color:
+        optional: true
 
-  keyv@4.5.4:
-    resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+  debug@4.3.6:
+    resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==}
+    engines: {node: '>=6.0'}
+    peerDependencies:
+      supports-color: '*'
+    peerDependenciesMeta:
+      supports-color:
+        optional: true
 
-  keyvaluestorage-interface@1.0.0:
-    resolution: {integrity: sha512-8t6Q3TclQ4uZynJY9IGr2+SsIGwK9JHcO6ootkHCGA0CrQCRy+VkouYNO2xicET6b9al7QKzpebNow+gkpCL8g==}
+  decamelize-keys@1.1.1:
+    resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==}
+    engines: {node: '>=0.10.0'}
 
-  kind-of@6.0.3:
-    resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
+  decamelize@1.2.0:
+    resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==}
     engines: {node: '>=0.10.0'}
 
-  kleur@4.1.5:
-    resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
-    engines: {node: '>=6'}
+  decode-uri-component@0.2.2:
+    resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==}
+    engines: {node: '>=0.10'}
 
-  kolorist@1.8.0:
-    resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
+  deep-eql@4.1.4:
+    resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==}
+    engines: {node: '>=6'}
 
-  language-subtag-registry@0.3.23:
-    resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==}
+  deep-equal@2.2.3:
+    resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==}
+    engines: {node: '>= 0.4'}
 
-  language-tags@1.0.9:
-    resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==}
-    engines: {node: '>=0.10'}
-
-  levn@0.4.1:
-    resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
-    engines: {node: '>= 0.8.0'}
-
-  lilconfig@2.1.0:
-    resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
-    engines: {node: '>=10'}
+  deep-extend@0.6.0:
+    resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
+    engines: {node: '>=4.0.0'}
 
-  lilconfig@3.1.2:
-    resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==}
-    engines: {node: '>=14'}
+  deep-is@0.1.4:
+    resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
 
-  lines-and-columns@1.2.4:
-    resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
+  deepmerge@4.3.1:
+    resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
+    engines: {node: '>=0.10.0'}
 
-  lines-and-columns@2.0.4:
-    resolution: {integrity: sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  defaults@1.0.4:
+    resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
 
-  lint-staged@14.0.1:
-    resolution: {integrity: sha512-Mw0cL6HXnHN1ag0mN/Dg4g6sr8uf8sn98w2Oc1ECtFto9tvRF7nkXGJRbx8gPlHyoR0pLyBr2lQHbWwmUHe1Sw==}
-    engines: {node: ^16.14.0 || >=18.0.0}
-    hasBin: true
+  define-data-property@1.1.4:
+    resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
+    engines: {node: '>= 0.4'}
 
-  listhen@1.7.2:
-    resolution: {integrity: sha512-7/HamOm5YD9Wb7CFgAZkKgVPA96WwhcTQoqtm2VTZGVbVVn3IWKRBTgrU7cchA3Q8k9iCsG8Osoi9GX4JsGM9g==}
-    hasBin: true
+  define-properties@1.2.1:
+    resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
+    engines: {node: '>= 0.4'}
 
-  listr2@6.6.1:
-    resolution: {integrity: sha512-+rAXGHh0fkEWdXBmX+L6mmfmXmXvDGEKzkjxO+8mP3+nI/r/CWznVBvsibXdxda9Zz0OW2e2ikphN3OwCT/jSg==}
-    engines: {node: '>=16.0.0'}
-    peerDependencies:
-      enquirer: '>= 2.3.0 < 3'
-    peerDependenciesMeta:
-      enquirer:
-        optional: true
+  defu@6.1.4:
+    resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
 
-  lit-element@3.3.3:
-    resolution: {integrity: sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==}
+  denodeify@1.2.1:
+    resolution: {integrity: sha512-KNTihKNmQENUZeKu5fzfpzRqR5S2VMp4gl9RFHiWzj9DfvYQPMJ6XHKNaQxaGCXwPk6y9yme3aUoaiAe+KX+vg==}
 
-  lit-html@2.8.0:
-    resolution: {integrity: sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q==}
+  depd@2.0.0:
+    resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
+    engines: {node: '>= 0.8'}
 
-  lit@2.8.0:
-    resolution: {integrity: sha512-4Sc3OFX9QHOJaHbmTMk28SYgVxLN3ePDjg7hofEft2zWlehFL3LiAuapWc4U/kYwMYJSh2hTCPZ6/LIC7ii0MA==}
+  deprecation@2.3.1:
+    resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==}
 
-  load-json-file@4.0.0:
-    resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==}
-    engines: {node: '>=4'}
+  dequal@2.0.3:
+    resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
+    engines: {node: '>=6'}
 
-  local-pkg@0.5.0:
-    resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==}
-    engines: {node: '>=14'}
+  destr@2.0.3:
+    resolution: {integrity: sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==}
 
-  locate-character@3.0.0:
-    resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==}
+  destroy@1.2.0:
+    resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
+    engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
 
-  locate-path@2.0.0:
-    resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==}
-    engines: {node: '>=4'}
+  detect-browser@5.3.0:
+    resolution: {integrity: sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==}
 
-  locate-path@5.0.0:
-    resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
+  detect-indent@6.1.0:
+    resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==}
     engines: {node: '>=8'}
 
-  locate-path@6.0.0:
-    resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
-    engines: {node: '>=10'}
-
-  locate-path@7.2.0:
-    resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
-  lodash-es@4.17.21:
-    resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
+  detect-libc@1.0.3:
+    resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==}
+    engines: {node: '>=0.10'}
+    hasBin: true
 
-  lodash.camelcase@4.3.0:
-    resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==}
+  detect-newline@2.1.0:
+    resolution: {integrity: sha512-CwffZFvlJffUg9zZA0uqrjQayUTC8ob94pnr5sFwaVv3IOmkfUHcWH+jXaQK3askE51Cqe8/9Ql/0uXNwqZ8Zg==}
+    engines: {node: '>=0.10.0'}
 
-  lodash.capitalize@4.2.1:
-    resolution: {integrity: sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==}
+  detect-node-es@1.1.0:
+    resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==}
 
-  lodash.escaperegexp@4.1.2:
-    resolution: {integrity: sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==}
+  devalue@5.1.1:
+    resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==}
 
-  lodash.get@4.4.2:
-    resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==}
+  didyoumean@1.2.2:
+    resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
 
-  lodash.isequal@4.5.0:
-    resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==}
+  diff-sequences@29.6.3:
+    resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  lodash.isfunction@3.0.9:
-    resolution: {integrity: sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==}
+  diff@4.0.2:
+    resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
+    engines: {node: '>=0.3.1'}
 
-  lodash.ismatch@4.4.0:
-    resolution: {integrity: sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==}
+  dijkstrajs@1.0.3:
+    resolution: {integrity: sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==}
 
-  lodash.isplainobject@4.0.6:
-    resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==}
+  dir-glob@3.0.1:
+    resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
+    engines: {node: '>=8'}
 
-  lodash.isstring@4.0.1:
-    resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==}
+  dlv@1.1.3:
+    resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
 
-  lodash.kebabcase@4.1.1:
-    resolution: {integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==}
+  doctrine@2.1.0:
+    resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
+    engines: {node: '>=0.10.0'}
 
-  lodash.merge@4.6.2:
-    resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+  doctrine@3.0.0:
+    resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
+    engines: {node: '>=6.0.0'}
 
-  lodash.mergewith@4.6.2:
-    resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==}
+  dot-prop@5.3.0:
+    resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==}
+    engines: {node: '>=8'}
 
-  lodash.snakecase@4.1.1:
-    resolution: {integrity: sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==}
+  duplexer2@0.1.4:
+    resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==}
 
-  lodash.startcase@4.4.0:
-    resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==}
+  duplexify@4.1.3:
+    resolution: {integrity: sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==}
 
-  lodash.uniq@4.5.0:
-    resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==}
+  eastasianwidth@0.2.0:
+    resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
 
-  lodash.uniqby@4.7.0:
-    resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==}
+  ee-first@1.1.1:
+    resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
 
-  lodash.upperfirst@4.3.1:
-    resolution: {integrity: sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==}
+  electron-to-chromium@1.5.35:
+    resolution: {integrity: sha512-hOSRInrIDm0Brzp4IHW2F/VM+638qOL2CzE0DgpnGzKW27C95IqqeqgKz/hxHGnvPxvQGpHUGD5qRVC9EZY2+A==}
 
-  lodash@4.17.21:
-    resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
+  electron-to-chromium@1.5.7:
+    resolution: {integrity: sha512-6FTNWIWMxMy/ZY6799nBlPtF1DFDQ6VQJ7yyDP27SJNt5lwtQ5ufqVvHylb3fdQefvRcgA3fKcFMJi9OLwBRNw==}
 
-  log-update@5.0.1:
-    resolution: {integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  elliptic@6.5.7:
+    resolution: {integrity: sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==}
 
-  loose-envify@1.4.0:
-    resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
-    hasBin: true
+  emittery@1.0.3:
+    resolution: {integrity: sha512-tJdCJitoy2lrC2ldJcqN4vkqJ00lT+tOWNT1hBJjO/3FDMJa5TTIiYGCKGkn/WfCyOzUMObeohbVTj00fhiLiA==}
+    engines: {node: '>=14.16'}
 
-  lossless-json@4.0.1:
-    resolution: {integrity: sha512-l0L+ppmgPDnb+JGxNLndPtJZGNf6+ZmVaQzoxQm3u6TXmhdnsA+YtdVR8DjzZd/em58686CQhOFDPewfJ4l7MA==}
+  emoji-regex@8.0.0:
+    resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
 
-  loupe@2.3.7:
-    resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==}
+  emoji-regex@9.2.2:
+    resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
 
-  lru-cache@10.4.3:
-    resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
+  encode-utf8@1.0.3:
+    resolution: {integrity: sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==}
 
-  lru-cache@5.1.1:
-    resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
+  encodeurl@1.0.2:
+    resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==}
+    engines: {node: '>= 0.8'}
 
-  lru-cache@6.0.0:
-    resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
-    engines: {node: '>=10'}
+  encodeurl@2.0.0:
+    resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==}
+    engines: {node: '>= 0.8'}
 
-  magic-string@0.30.11:
-    resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==}
+  end-of-stream@1.4.4:
+    resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
 
-  make-error@1.3.6:
-    resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==}
+  enhanced-resolve@5.17.1:
+    resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==}
+    engines: {node: '>=10.13.0'}
 
-  map-obj@1.0.1:
-    resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==}
-    engines: {node: '>=0.10.0'}
+  entities@4.5.0:
+    resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
+    engines: {node: '>=0.12'}
 
-  map-obj@4.3.0:
-    resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==}
-    engines: {node: '>=8'}
+  env-ci@9.1.1:
+    resolution: {integrity: sha512-Im2yEWeF4b2RAMAaWvGioXk6m0UNaIjD8hj28j2ij5ldnIFrDQT0+pzDvpbRkcjurhXhf/AsBKv8P2rtmGi9Aw==}
+    engines: {node: ^16.14 || >=18}
 
-  marked-terminal@5.2.0:
-    resolution: {integrity: sha512-Piv6yNwAQXGFjZSaiNljyNFw7jKDdGrw70FSbtxEyldLsyeuV5ZHm/1wW++kWbrOF1VPnUgYOhB2oLL0ZpnekA==}
-    engines: {node: '>=14.13.1 || >=16.0.0'}
-    peerDependencies:
-      marked: ^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0
+  env-paths@2.2.1:
+    resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
+    engines: {node: '>=6'}
 
-  marked@5.1.2:
-    resolution: {integrity: sha512-ahRPGXJpjMjwSOlBoTMZAK7ATXkli5qCPxZ21TG44rx1KEo44bii4ekgTDQPNRQ4Kh7JMb9Ub1PVk1NxRSsorg==}
-    engines: {node: '>= 16'}
+  envinfo@7.14.0:
+    resolution: {integrity: sha512-CO40UI41xDQzhLB1hWyqUKgFhs250pNcGbyGKe1l/e4FSaI/+YE4IMG76GDt0In67WLPACIITC+sOi08x4wIvg==}
+    engines: {node: '>=4'}
     hasBin: true
 
-  mdn-data@2.0.30:
-    resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
+  error-ex@1.3.2:
+    resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
 
-  meow@12.1.1:
-    resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==}
-    engines: {node: '>=16.10'}
+  error-stack-parser@2.1.4:
+    resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==}
 
-  meow@8.1.2:
-    resolution: {integrity: sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==}
-    engines: {node: '>=10'}
+  errorhandler@1.5.1:
+    resolution: {integrity: sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==}
+    engines: {node: '>= 0.8'}
 
-  merge-stream@2.0.0:
-    resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
+  es-abstract@1.23.3:
+    resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==}
+    engines: {node: '>= 0.4'}
 
-  merge2@1.4.1:
-    resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
-    engines: {node: '>= 8'}
+  es-define-property@1.0.0:
+    resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
+    engines: {node: '>= 0.4'}
 
-  micromatch@4.0.5:
-    resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
-    engines: {node: '>=8.6'}
+  es-errors@1.3.0:
+    resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
+    engines: {node: '>= 0.4'}
 
-  micromatch@4.0.7:
-    resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==}
-    engines: {node: '>=8.6'}
+  es-get-iterator@1.1.3:
+    resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==}
 
-  mime@3.0.0:
-    resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==}
-    engines: {node: '>=10.0.0'}
-    hasBin: true
+  es-iterator-helpers@1.0.19:
+    resolution: {integrity: sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==}
+    engines: {node: '>= 0.4'}
 
-  mime@4.0.4:
-    resolution: {integrity: sha512-v8yqInVjhXyqP6+Kw4fV3ZzeMRqEW6FotRsKXjRS5VMTNIuXsdRoAvklpoRgSqXm6o9VNH4/C0mgedko9DdLsQ==}
-    engines: {node: '>=16'}
+  es-object-atoms@1.0.0:
+    resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==}
+    engines: {node: '>= 0.4'}
+
+  es-set-tostringtag@2.0.3:
+    resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==}
+    engines: {node: '>= 0.4'}
+
+  es-shim-unscopables@1.0.2:
+    resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==}
+
+  es-to-primitive@1.2.1:
+    resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
+    engines: {node: '>= 0.4'}
+
+  es6-promise@3.3.1:
+    resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==}
+
+  esbuild@0.18.20:
+    resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==}
+    engines: {node: '>=12'}
     hasBin: true
 
-  mimic-fn@2.1.0:
-    resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
+  esbuild@0.21.5:
+    resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
+    engines: {node: '>=12'}
+    hasBin: true
+
+  escalade@3.1.2:
+    resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
     engines: {node: '>=6'}
 
-  mimic-fn@4.0.0:
-    resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
-    engines: {node: '>=12'}
+  escape-html@1.0.3:
+    resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
 
-  min-indent@1.0.1:
-    resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
-    engines: {node: '>=4'}
+  escape-string-regexp@1.0.5:
+    resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
+    engines: {node: '>=0.8.0'}
 
-  minimatch@3.0.8:
-    resolution: {integrity: sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==}
+  escape-string-regexp@2.0.0:
+    resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==}
+    engines: {node: '>=8'}
 
-  minimatch@3.1.2:
-    resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+  escape-string-regexp@4.0.0:
+    resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
+    engines: {node: '>=10'}
 
-  minimatch@9.0.3:
-    resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
-    engines: {node: '>=16 || 14 >=14.17'}
+  escape-string-regexp@5.0.0:
+    resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
+    engines: {node: '>=12'}
 
-  minimatch@9.0.5:
-    resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
-    engines: {node: '>=16 || 14 >=14.17'}
+  eslint-compat-utils@0.5.1:
+    resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==}
+    engines: {node: '>=12'}
+    peerDependencies:
+      eslint: '>=6.0.0'
 
-  minimist-options@4.1.0:
-    resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==}
-    engines: {node: '>= 6'}
+  eslint-config-next@13.5.6:
+    resolution: {integrity: sha512-o8pQsUHTo9aHqJ2YiZDym5gQAMRf7O2HndHo/JZeY7TDD+W4hk6Ma8Vw54RHiBeb7OWWO5dPirQB+Is/aVQ7Kg==}
+    peerDependencies:
+      eslint: ^7.23.0 || ^8.0.0
+      typescript: '>=3.3.1'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
 
-  minimist@1.2.8:
-    resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
+  eslint-import-resolver-node@0.3.9:
+    resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
 
-  minipass@7.1.2:
-    resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
-    engines: {node: '>=16 || 14 >=14.17'}
+  eslint-import-resolver-typescript@3.6.1:
+    resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
+    engines: {node: ^14.18.0 || >=16.0.0}
+    peerDependencies:
+      eslint: '*'
+      eslint-plugin-import: '*'
 
-  mkdirp@0.5.6:
-    resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
-    hasBin: true
+  eslint-module-utils@2.8.1:
+    resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==}
+    engines: {node: '>=4'}
+    peerDependencies:
+      '@typescript-eslint/parser': '*'
+      eslint: '*'
+      eslint-import-resolver-node: '*'
+      eslint-import-resolver-typescript: '*'
+      eslint-import-resolver-webpack: '*'
+    peerDependenciesMeta:
+      '@typescript-eslint/parser':
+        optional: true
+      eslint:
+        optional: true
+      eslint-import-resolver-node:
+        optional: true
+      eslint-import-resolver-typescript:
+        optional: true
+      eslint-import-resolver-webpack:
+        optional: true
 
-  mlly@1.7.1:
-    resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==}
+  eslint-plugin-import@2.29.1:
+    resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
+    engines: {node: '>=4'}
+    peerDependencies:
+      '@typescript-eslint/parser': '*'
+      eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
+    peerDependenciesMeta:
+      '@typescript-eslint/parser':
+        optional: true
 
-  modify-values@1.0.1:
-    resolution: {integrity: sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==}
-    engines: {node: '>=0.10.0'}
+  eslint-plugin-jsx-a11y@6.9.0:
+    resolution: {integrity: sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==}
+    engines: {node: '>=4.0'}
+    peerDependencies:
+      eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
 
-  motion@10.16.2:
-    resolution: {integrity: sha512-p+PurYqfUdcJZvtnmAqu5fJgV2kR0uLFQuBKtLeFVTrYEVllI99tiOTSefVNYuip9ELTEkepIIDftNdze76NAQ==}
+  eslint-plugin-prettier@5.2.1:
+    resolution: {integrity: sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==}
+    engines: {node: ^14.18.0 || >=16.0.0}
+    peerDependencies:
+      '@types/eslint': '>=8.0.0'
+      eslint: '>=8.0.0'
+      eslint-config-prettier: '*'
+      prettier: '>=3.0.0'
+    peerDependenciesMeta:
+      '@types/eslint':
+        optional: true
+      eslint-config-prettier:
+        optional: true
 
-  mri@1.2.0:
-    resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
+  eslint-plugin-react-hooks@4.6.2:
+    resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==}
+    engines: {node: '>=10'}
+    peerDependencies:
+      eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
+
+  eslint-plugin-react@7.35.0:
+    resolution: {integrity: sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==}
     engines: {node: '>=4'}
+    peerDependencies:
+      eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
 
-  ms@2.1.2:
-    resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
+  eslint-plugin-svelte@2.44.1:
+    resolution: {integrity: sha512-w6wkoJPw1FJKFtM/2oln21rlu5+HTd2CSkkzhm32A+trNoW2EYQqTQAbDTU6k2GI/6Vh64rBHYQejqEgDld7fw==}
+    engines: {node: ^14.17.0 || >=16.0.0}
+    peerDependencies:
+      eslint: ^7.0.0 || ^8.0.0-0 || ^9.0.0-0
+      svelte: ^3.37.0 || ^4.0.0 || ^5.0.0-next.191
+    peerDependenciesMeta:
+      svelte:
+        optional: true
 
-  ms@2.1.3:
-    resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
+  eslint-scope@7.2.2:
+    resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
+    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
 
-  muggle-string@0.3.1:
-    resolution: {integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==}
+  eslint-visitor-keys@3.4.3:
+    resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
+    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
 
-  multiformats@9.9.0:
-    resolution: {integrity: sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==}
+  eslint@8.57.0:
+    resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==}
+    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+    hasBin: true
 
-  mz@2.7.0:
-    resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
+  esm-env@1.0.0:
+    resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==}
 
-  nanoid@3.3.7:
-    resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
-    engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+  espree@9.6.1:
+    resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
+    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+  esprima@4.0.1:
+    resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
+    engines: {node: '>=4'}
     hasBin: true
 
-  natural-compare@1.4.0:
-    resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+  esquery@1.6.0:
+    resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
+    engines: {node: '>=0.10'}
 
-  neo-async@2.6.2:
-    resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
+  esrecurse@4.3.0:
+    resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+    engines: {node: '>=4.0'}
 
-  nerf-dart@1.0.0:
-    resolution: {integrity: sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g==}
+  estraverse@5.3.0:
+    resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
+    engines: {node: '>=4.0'}
 
-  node-addon-api@7.1.1:
-    resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==}
+  estree-walker@2.0.2:
+    resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
 
-  node-emoji@1.11.0:
-    resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==}
+  estree-walker@3.0.3:
+    resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
 
-  node-fetch-native@1.6.4:
-    resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==}
+  esutils@2.0.3:
+    resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
+    engines: {node: '>=0.10.0'}
 
-  node-fetch@2.7.0:
-    resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
-    engines: {node: 4.x || >=6.0.0}
-    peerDependencies:
-      encoding: ^0.1.0
-    peerDependenciesMeta:
-      encoding:
-        optional: true
+  etag@1.8.1:
+    resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
+    engines: {node: '>= 0.6'}
 
-  node-forge@1.3.1:
-    resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==}
-    engines: {node: '>= 6.13.0'}
+  ethereum-cryptography@1.2.0:
+    resolution: {integrity: sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==}
 
-  node-releases@2.0.18:
-    resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==}
+  event-target-shim@5.0.1:
+    resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==}
+    engines: {node: '>=6'}
 
-  normalize-package-data@2.5.0:
-    resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
+  eventemitter3@5.0.1:
+    resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
 
-  normalize-package-data@3.0.3:
-    resolution: {integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==}
+  events@3.3.0:
+    resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
+    engines: {node: '>=0.8.x'}
+
+  execa@5.1.1:
+    resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
     engines: {node: '>=10'}
 
-  normalize-package-data@6.0.2:
-    resolution: {integrity: sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==}
-    engines: {node: ^16.14.0 || >=18.0.0}
+  execa@7.2.0:
+    resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==}
+    engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0}
 
-  normalize-path@3.0.0:
-    resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
-    engines: {node: '>=0.10.0'}
+  execa@8.0.1:
+    resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
+    engines: {node: '>=16.17'}
 
-  normalize-range@0.1.2:
-    resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
-    engines: {node: '>=0.10.0'}
+  exponential-backoff@3.1.1:
+    resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==}
 
-  normalize-url@8.0.1:
-    resolution: {integrity: sha512-IO9QvjUMWxPQQhs60oOu10CRkWCiZzSUkzbXGGV9pviYl1fXYcvkzQ5jV9z8Y6un8ARoVRl4EtC6v6jNqbaJ/w==}
-    engines: {node: '>=14.16'}
+  fancy-canvas@2.1.0:
+    resolution: {integrity: sha512-nifxXJ95JNLFR2NgRV4/MxVP45G9909wJTEKz5fg/TZS20JJZA6hfgRVh/bC9bwl2zBtBNcYPjiBE4njQHVBwQ==}
 
-  npm-run-path@4.0.1:
-    resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
-    engines: {node: '>=8'}
-
-  npm-run-path@5.3.0:
-    resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
-  npm@9.9.3:
-    resolution: {integrity: sha512-Z1l+rcQ5kYb17F3hHtO601arEpvdRYnCLtg8xo3AGtyj3IthwaraEOexI9903uANkifFbqHC8hT53KIrozWg8A==}
-    engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
-    hasBin: true
-    bundledDependencies:
-      - '@isaacs/string-locale-compare'
-      - '@npmcli/arborist'
-      - '@npmcli/config'
-      - '@npmcli/fs'
-      - '@npmcli/map-workspaces'
-      - '@npmcli/package-json'
-      - '@npmcli/promise-spawn'
-      - '@npmcli/run-script'
-      - abbrev
-      - archy
-      - cacache
-      - chalk
-      - ci-info
-      - cli-columns
-      - cli-table3
-      - columnify
-      - fastest-levenshtein
-      - fs-minipass
-      - glob
-      - graceful-fs
-      - hosted-git-info
-      - ini
-      - init-package-json
-      - is-cidr
-      - json-parse-even-better-errors
-      - libnpmaccess
-      - libnpmdiff
-      - libnpmexec
-      - libnpmfund
-      - libnpmhook
-      - libnpmorg
-      - libnpmpack
-      - libnpmpublish
-      - libnpmsearch
-      - libnpmteam
-      - libnpmversion
-      - make-fetch-happen
-      - minimatch
-      - minipass
-      - minipass-pipeline
-      - ms
-      - node-gyp
-      - nopt
-      - normalize-package-data
-      - npm-audit-report
-      - npm-install-checks
-      - npm-package-arg
-      - npm-pick-manifest
-      - npm-profile
-      - npm-registry-fetch
-      - npm-user-validate
-      - npmlog
-      - p-map
-      - pacote
-      - parse-conflict-json
-      - proc-log
-      - qrcode-terminal
-      - read
-      - semver
-      - sigstore
-      - spdx-expression-parse
-      - ssri
-      - supports-color
-      - tar
-      - text-table
-      - tiny-relative-date
-      - treeverse
-      - validate-npm-package-name
-      - which
-      - write-file-atomic
+  fast-deep-equal@3.1.3:
+    resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
 
-  object-assign@4.1.1:
-    resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
-    engines: {node: '>=0.10.0'}
+  fast-diff@1.3.0:
+    resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
 
-  object-hash@3.0.0:
-    resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
-    engines: {node: '>= 6'}
+  fast-glob@3.3.2:
+    resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
+    engines: {node: '>=8.6.0'}
 
-  object-inspect@1.13.2:
-    resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==}
-    engines: {node: '>= 0.4'}
+  fast-json-stable-stringify@2.1.0:
+    resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
 
-  object-is@1.1.6:
-    resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==}
-    engines: {node: '>= 0.4'}
+  fast-levenshtein@2.0.6:
+    resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
 
-  object-keys@1.1.1:
-    resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
-    engines: {node: '>= 0.4'}
+  fast-redact@3.5.0:
+    resolution: {integrity: sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==}
+    engines: {node: '>=6'}
 
-  object.assign@4.1.5:
-    resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
-    engines: {node: '>= 0.4'}
+  fast-uri@3.0.1:
+    resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==}
 
-  object.entries@1.1.8:
-    resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==}
-    engines: {node: '>= 0.4'}
+  fast-xml-parser@4.5.0:
+    resolution: {integrity: sha512-/PlTQCI96+fZMAOLMZK4CWG1ItCbfZ/0jx7UIJFChPNrx7tcEgerUgWbeieCM9MfHInUDyK8DWYZ+YrywDJuTg==}
+    hasBin: true
 
-  object.fromentries@2.0.8:
-    resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==}
-    engines: {node: '>= 0.4'}
+  fastest-levenshtein@1.0.16:
+    resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==}
+    engines: {node: '>= 4.9.1'}
 
-  object.groupby@1.0.3:
-    resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==}
-    engines: {node: '>= 0.4'}
+  fastq@1.17.1:
+    resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
 
-  object.values@1.2.0:
-    resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==}
-    engines: {node: '>= 0.4'}
+  fb-watchman@2.0.2:
+    resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==}
 
-  ofetch@1.3.4:
-    resolution: {integrity: sha512-KLIET85ik3vhEfS+3fDlc/BAZiAp+43QEC/yCo5zkNoY2YaKvNkOaFr/6wCFgFH1kuYQM5pMNi0Tg8koiIemtw==}
+  fetch-cookie@3.0.1:
+    resolution: {integrity: sha512-ZGXe8Y5Z/1FWqQ9q/CrJhkUD73DyBU9VF0hBQmEO/wPHe4A9PKTjplFDLeFX8aOsYypZUcX5Ji/eByn3VCVO3Q==}
 
-  ohash@1.1.3:
-    resolution: {integrity: sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==}
+  figures@2.0.0:
+    resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==}
+    engines: {node: '>=4'}
 
-  on-exit-leak-free@0.2.0:
-    resolution: {integrity: sha512-dqaz3u44QbRXQooZLTUKU41ZrzYrcvLISVgbrzbyCMxpmSLJvZ3ZamIJIZ29P6OhZIkNIQKosdeM6t1LYbA9hg==}
+  figures@5.0.0:
+    resolution: {integrity: sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==}
+    engines: {node: '>=14'}
 
-  once@1.4.0:
-    resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
+  file-entry-cache@6.0.1:
+    resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
+    engines: {node: ^10.12.0 || >=12.0.0}
 
-  onetime@5.1.2:
-    resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
-    engines: {node: '>=6'}
+  fill-range@7.1.1:
+    resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
+    engines: {node: '>=8'}
 
-  onetime@6.0.0:
-    resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
-    engines: {node: '>=12'}
+  filter-obj@1.1.0:
+    resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==}
+    engines: {node: '>=0.10.0'}
 
-  optionator@0.9.4:
-    resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
-    engines: {node: '>= 0.8.0'}
+  finalhandler@1.1.2:
+    resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==}
+    engines: {node: '>= 0.8'}
 
-  p-each-series@3.0.0:
-    resolution: {integrity: sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw==}
-    engines: {node: '>=12'}
+  find-cache-dir@2.1.0:
+    resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==}
+    engines: {node: '>=6'}
 
-  p-filter@4.1.0:
-    resolution: {integrity: sha512-37/tPdZ3oJwHaS3gNJdenCDB3Tz26i9sjhnguBtvN0vYlRIiDNnvTWkuh+0hETV9rLPdJ3rlL3yVOYPIAnM8rw==}
-    engines: {node: '>=18'}
+  find-line-column@0.5.2:
+    resolution: {integrity: sha512-eNhNkDt5RbxY4X++JwyDURP62FYhV1bh9LF4dfOiwpVCTk5vvfEANhnui5ypUEELGR02QZSrWFtaTgd4ulW5tw==}
 
-  p-is-promise@3.0.0:
-    resolution: {integrity: sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==}
-    engines: {node: '>=8'}
+  find-root@1.1.0:
+    resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==}
 
-  p-limit@1.3.0:
-    resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==}
+  find-up@2.1.0:
+    resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==}
     engines: {node: '>=4'}
 
-  p-limit@2.3.0:
-    resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
+  find-up@3.0.0:
+    resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==}
     engines: {node: '>=6'}
 
-  p-limit@3.1.0:
-    resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+  find-up@4.1.0:
+    resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
+    engines: {node: '>=8'}
+
+  find-up@5.0.0:
+    resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
     engines: {node: '>=10'}
 
-  p-limit@4.0.0:
-    resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
+  find-up@6.3.0:
+    resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==}
     engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
 
-  p-limit@5.0.0:
-    resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==}
-    engines: {node: '>=18'}
+  find-versions@5.1.0:
+    resolution: {integrity: sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==}
+    engines: {node: '>=12'}
 
-  p-locate@2.0.0:
-    resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==}
-    engines: {node: '>=4'}
+  flat-cache@3.2.0:
+    resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==}
+    engines: {node: ^10.12.0 || >=12.0.0}
 
-  p-locate@4.1.0:
-    resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
-    engines: {node: '>=8'}
+  flatted@3.3.1:
+    resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
 
-  p-locate@5.0.0:
-    resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
-    engines: {node: '>=10'}
+  flow-enums-runtime@0.0.6:
+    resolution: {integrity: sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==}
 
-  p-locate@6.0.0:
-    resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  flow-parser@0.247.1:
+    resolution: {integrity: sha512-DHwcm06fWbn2Z6uFD3NaBZ5lMOoABIQ4asrVA80IWvYjjT5WdbghkUOL1wIcbLcagnFTdCZYOlSNnKNp/xnRZQ==}
+    engines: {node: '>=0.4.0'}
 
-  p-map@7.0.2:
-    resolution: {integrity: sha512-z4cYYMMdKHzw4O5UkWJImbZynVIo0lSGTXc7bzB1e/rrDqkgGUNysK/o4bTr+0+xKvvLoTyGqYC4Fgljy9qe1Q==}
-    engines: {node: '>=18'}
+  focus-lock@1.3.5:
+    resolution: {integrity: sha512-QFaHbhv9WPUeLYBDe/PAuLKJ4Dd9OPvKs9xZBr3yLXnUrDNaVXKu2baDBXe3naPY30hgHYSsf2JW4jzas2mDEQ==}
+    engines: {node: '>=10'}
 
-  p-reduce@2.1.0:
-    resolution: {integrity: sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==}
-    engines: {node: '>=8'}
+  focus-trap@6.9.4:
+    resolution: {integrity: sha512-v2NTsZe2FF59Y+sDykKY+XjqZ0cPfhq/hikWVL88BqLivnNiEffAsac6rP6H45ff9wG9LL5ToiDqrLEP9GX9mw==}
 
-  p-reduce@3.0.0:
-    resolution: {integrity: sha512-xsrIUgI0Kn6iyDYm9StOpOeK29XM1aboGji26+QEortiFST1hGZaUQOLhtEbqHErPpGW/aSz6allwK2qcptp0Q==}
-    engines: {node: '>=12'}
+  for-each@0.3.3:
+    resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
 
-  p-try@1.0.0:
-    resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==}
-    engines: {node: '>=4'}
+  foreground-child@3.3.0:
+    resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==}
+    engines: {node: '>=14'}
 
-  p-try@2.2.0:
-    resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
-    engines: {node: '>=6'}
+  fraction.js@4.3.7:
+    resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
 
-  package-json-from-dist@1.0.0:
-    resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==}
+  framer-motion@11.11.7:
+    resolution: {integrity: sha512-89CgILOXPeG3L7ymOTGrLmf8IiKubYLUN/QkYgQuLvehAHfqgwJbLfCnhuyRI4WTds1TXkUp67A7IJrgRY/j1w==}
+    peerDependencies:
+      '@emotion/is-prop-valid': '*'
+      react: ^18.0.0
+      react-dom: ^18.0.0
+    peerDependenciesMeta:
+      '@emotion/is-prop-valid':
+        optional: true
+      react:
+        optional: true
+      react-dom:
+        optional: true
 
-  pako@2.1.0:
-    resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==}
+  framesync@6.1.2:
+    resolution: {integrity: sha512-jBTqhX6KaQVDyus8muwZbBeGGP0XgujBRbQ7gM7BRdS3CadCZIHiawyzYLnafYcvZIh5j8WE7cxZKFn7dXhu9g==}
 
-  parent-module@1.0.1:
-    resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
-    engines: {node: '>=6'}
+  fresh@0.5.2:
+    resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
+    engines: {node: '>= 0.6'}
 
-  parse-json@4.0.0:
-    resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==}
-    engines: {node: '>=4'}
-
-  parse-json@5.2.0:
-    resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
-    engines: {node: '>=8'}
+  from2@2.3.0:
+    resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==}
 
-  parse-json@7.1.1:
-    resolution: {integrity: sha512-SgOTCX/EZXtZxBE5eJ97P4yGM5n37BwRU+YMsH4vNzFqJV/oWFXXCmwFlgWUM4PrakybVOueJJ6pwHqSVhTFDw==}
-    engines: {node: '>=16'}
+  fs-extra@10.1.0:
+    resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
+    engines: {node: '>=12'}
 
-  path-browserify@1.0.1:
-    resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
+  fs-extra@11.2.0:
+    resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==}
+    engines: {node: '>=14.14'}
 
-  path-exists@3.0.0:
-    resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==}
-    engines: {node: '>=4'}
+  fs-extra@7.0.1:
+    resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==}
+    engines: {node: '>=6 <7 || >=8'}
 
-  path-exists@4.0.0:
-    resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
-    engines: {node: '>=8'}
+  fs-extra@8.1.0:
+    resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==}
+    engines: {node: '>=6 <7 || >=8'}
 
-  path-exists@5.0.0:
-    resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  fs.realpath@1.0.0:
+    resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
 
-  path-is-absolute@1.0.1:
-    resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
-    engines: {node: '>=0.10.0'}
+  fsevents@2.3.3:
+    resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+    engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+    os: [darwin]
 
-  path-key@3.1.1:
-    resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
-    engines: {node: '>=8'}
+  function-bind@1.1.2:
+    resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
 
-  path-key@4.0.0:
-    resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
-    engines: {node: '>=12'}
+  function.prototype.name@1.1.6:
+    resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
+    engines: {node: '>= 0.4'}
 
-  path-parse@1.0.7:
-    resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
+  functions-have-names@1.2.3:
+    resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
 
-  path-scurry@1.11.1:
-    resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
-    engines: {node: '>=16 || 14 >=14.18'}
+  gensync@1.0.0-beta.2:
+    resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
+    engines: {node: '>=6.9.0'}
 
-  path-type@4.0.0:
-    resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
-    engines: {node: '>=8'}
+  get-caller-file@2.0.5:
+    resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
+    engines: {node: 6.* || 8.* || >= 10.*}
 
-  path-type@5.0.0:
-    resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==}
-    engines: {node: '>=12'}
+  get-func-name@2.0.2:
+    resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==}
 
-  pathe@1.1.2:
-    resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==}
+  get-intrinsic@1.2.4:
+    resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
+    engines: {node: '>= 0.4'}
 
-  pathval@1.1.1:
-    resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
+  get-nonce@1.0.1:
+    resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==}
+    engines: {node: '>=6'}
 
-  periscopic@3.1.0:
-    resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==}
+  get-port-please@3.1.2:
+    resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==}
 
-  picocolors@1.0.1:
-    resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==}
+  get-starknet-core@4.0.0:
+    resolution: {integrity: sha512-6pLmidQZkC3wZsrHY99grQHoGpuuXqkbSP65F8ov1/JsEI8DDLkhsAuLCKFzNOK56cJp+f1bWWfTJ57e9r5eqQ==}
 
-  picomatch@2.3.1:
-    resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
-    engines: {node: '>=8.6'}
+  get-stream@6.0.1:
+    resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
+    engines: {node: '>=10'}
 
-  pidtree@0.6.0:
-    resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
-    engines: {node: '>=0.10'}
-    hasBin: true
+  get-stream@7.0.1:
+    resolution: {integrity: sha512-3M8C1EOFN6r8AMUhwUAACIoXZJEOufDU5+0gFFN5uNs6XYOralD2Pqkl7m046va6x77FwposWXbAhPPIOus7mQ==}
+    engines: {node: '>=16'}
 
-  pify@2.3.0:
-    resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
-    engines: {node: '>=0.10.0'}
+  get-stream@8.0.1:
+    resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
+    engines: {node: '>=16'}
 
-  pify@3.0.0:
-    resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==}
-    engines: {node: '>=4'}
+  get-symbol-description@1.0.2:
+    resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==}
+    engines: {node: '>= 0.4'}
 
-  pino-abstract-transport@0.5.0:
-    resolution: {integrity: sha512-+KAgmVeqXYbTtU2FScx1XS3kNyfZ5TrXY07V96QnUSFqo2gAqlvmaxH67Lj7SWazqsMabf+58ctdTcBgnOLUOQ==}
+  get-tsconfig@4.7.6:
+    resolution: {integrity: sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA==}
 
-  pino-std-serializers@4.0.0:
-    resolution: {integrity: sha512-cK0pekc1Kjy5w9V2/n+8MkZwusa6EyyxfeQCB799CQRhRt/CqYKiWs5adeu8Shve2ZNffvfC/7J64A2PJo1W/Q==}
+  git-log-parser@1.2.1:
+    resolution: {integrity: sha512-PI+sPDvHXNPl5WNOErAK05s3j0lgwUzMN6o8cyQrDaKfT3qd7TmNJKeXX+SknI5I0QhG5fVPAEwSY4tRGDtYoQ==}
 
-  pino@7.11.0:
-    resolution: {integrity: sha512-dMACeu63HtRLmCG8VKdy4cShCPKaYDR4youZqoSWLxl5Gu99HUw8bw75thbPv9Nip+H+QYX8o3ZJbTdVZZ2TVg==}
+  git-raw-commits@2.0.11:
+    resolution: {integrity: sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==}
+    engines: {node: '>=10'}
     hasBin: true
 
-  pirates@4.0.6:
-    resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
+  glob-parent@5.1.2:
+    resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
     engines: {node: '>= 6'}
 
-  pkg-conf@2.1.0:
-    resolution: {integrity: sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==}
-    engines: {node: '>=4'}
-
-  pkg-types@1.1.3:
-    resolution: {integrity: sha512-+JrgthZG6m3ckicaOB74TwQ+tBWsFl3qVQg7mN8ulwSOElJ7gBhKzj2VkCPnZ4NlF6kEquYU+RIYNVAvzd54UA==}
-
-  pngjs@5.0.0:
-    resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==}
+  glob-parent@6.0.2:
+    resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
     engines: {node: '>=10.13.0'}
 
-  possible-typed-array-names@1.0.0:
-    resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==}
-    engines: {node: '>= 0.4'}
-
-  postcss-import@15.1.0:
-    resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
-    engines: {node: '>=14.0.0'}
-    peerDependencies:
-      postcss: ^8.0.0
-
-  postcss-js@4.0.1:
-    resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==}
-    engines: {node: ^12 || ^14 || >= 16}
-    peerDependencies:
-      postcss: ^8.4.21
+  glob@10.4.5:
+    resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
+    hasBin: true
 
-  postcss-load-config@4.0.2:
-    resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==}
-    engines: {node: '>= 14'}
-    peerDependencies:
-      postcss: '>=8.0.9'
-      ts-node: '>=9.0.0'
-    peerDependenciesMeta:
-      postcss:
-        optional: true
-      ts-node:
-        optional: true
+  glob@7.1.7:
+    resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==}
+    deprecated: Glob versions prior to v9 are no longer supported
 
-  postcss-nested@6.2.0:
-    resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==}
-    engines: {node: '>=12.0'}
-    peerDependencies:
-      postcss: ^8.2.14
+  glob@7.2.3:
+    resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
+    deprecated: Glob versions prior to v9 are no longer supported
 
-  postcss-selector-parser@6.1.2:
-    resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
+  global-dirs@0.1.1:
+    resolution: {integrity: sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==}
     engines: {node: '>=4'}
 
-  postcss-value-parser@4.2.0:
-    resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
-
-  postcss@8.4.41:
-    resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==}
-    engines: {node: ^10 || ^12 || >=14}
+  globals@11.12.0:
+    resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
+    engines: {node: '>=4'}
 
-  prelude-ls@1.2.1:
-    resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
-    engines: {node: '>= 0.8.0'}
+  globals@13.24.0:
+    resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
+    engines: {node: '>=8'}
 
-  prettier-plugin-import-sort@0.0.7:
-    resolution: {integrity: sha512-O0KlUSq+lwvh+UiN3wZDT6wWkf7TNxTVv2/XXE5KqpRNbFJq3nRg2ftzBYFFO8QGpdWIrOB0uCTCtFjIxmVKQw==}
-    peerDependencies:
-      prettier: '>= 2.0'
+  globalthis@1.0.4:
+    resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
+    engines: {node: '>= 0.4'}
 
-  prettier@3.3.3:
-    resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==}
-    engines: {node: '>=14'}
-    hasBin: true
+  globalyzer@0.1.0:
+    resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==}
 
-  pretty-format@29.7.0:
-    resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
-    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+  globby@11.1.0:
+    resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
+    engines: {node: '>=10'}
 
-  process-nextick-args@2.0.1:
-    resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
+  globby@14.0.2:
+    resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==}
+    engines: {node: '>=18'}
 
-  process-warning@1.0.0:
-    resolution: {integrity: sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q==}
+  globrex@0.1.2:
+    resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
 
-  prop-types@15.8.1:
-    resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
+  gopd@1.0.1:
+    resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
 
-  proto-list@1.2.4:
-    resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
+  graceful-fs@4.2.10:
+    resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
 
-  proxy-compare@2.5.1:
-    resolution: {integrity: sha512-oyfc0Tx87Cpwva5ZXezSp5V9vht1c7dZBhvuV/y3ctkgMVUmiAGDVeeB0dKhGSyT0v1ZTEQYpe/RXlBVBNuCLA==}
+  graceful-fs@4.2.11:
+    resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
 
-  psl@1.9.0:
-    resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
+  graphemer@1.4.0:
+    resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
 
-  punycode@2.3.1:
-    resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
-    engines: {node: '>=6'}
+  h3@1.12.0:
+    resolution: {integrity: sha512-Zi/CcNeWBXDrFNlV0hUBJQR9F7a96RjMeAZweW/ZWkR9fuXrMcvKnSA63f/zZ9l0GgQOZDVHGvXivNN9PWOwhA==}
 
-  qrcode@1.5.3:
-    resolution: {integrity: sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==}
-    engines: {node: '>=10.13.0'}
+  handlebars@4.7.8:
+    resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==}
+    engines: {node: '>=0.4.7'}
     hasBin: true
 
-  query-string@7.1.3:
-    resolution: {integrity: sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==}
+  hard-rejection@2.1.0:
+    resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==}
     engines: {node: '>=6'}
 
-  querystringify@2.2.0:
-    resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==}
-
-  queue-microtask@1.2.3:
-    resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+  has-bigints@1.0.2:
+    resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
 
-  quick-format-unescaped@4.0.4:
-    resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==}
+  has-flag@3.0.0:
+    resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
+    engines: {node: '>=4'}
 
-  quick-lru@4.0.1:
-    resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==}
+  has-flag@4.0.0:
+    resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
     engines: {node: '>=8'}
 
-  radix3@1.1.2:
-    resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==}
+  has-property-descriptors@1.0.2:
+    resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
 
-  rc@1.2.8:
-    resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
-    hasBin: true
+  has-proto@1.0.3:
+    resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
+    engines: {node: '>= 0.4'}
 
-  react-is@16.13.1:
-    resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
+  has-symbols@1.0.3:
+    resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
+    engines: {node: '>= 0.4'}
 
-  react-is@18.3.1:
-    resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==}
+  has-tostringtag@1.0.2:
+    resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
+    engines: {node: '>= 0.4'}
 
-  react@18.3.1:
-    resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==}
-    engines: {node: '>=0.10.0'}
+  hash.js@1.1.7:
+    resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==}
 
-  read-cache@1.0.0:
-    resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
+  hasown@2.0.2:
+    resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
+    engines: {node: '>= 0.4'}
 
-  read-pkg-up@10.1.0:
-    resolution: {integrity: sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==}
-    engines: {node: '>=16'}
+  he@1.2.0:
+    resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
+    hasBin: true
 
-  read-pkg-up@7.0.1:
-    resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
-    engines: {node: '>=8'}
+  hermes-estree@0.22.0:
+    resolution: {integrity: sha512-FLBt5X9OfA8BERUdc6aZS36Xz3rRuB0Y/mfocSADWEJfomc1xfene33GdyAmtTkKTBXTN/EgAy+rjTKkkZJHlw==}
 
-  read-pkg@5.2.0:
-    resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
-    engines: {node: '>=8'}
+  hermes-estree@0.23.1:
+    resolution: {integrity: sha512-eT5MU3f5aVhTqsfIReZ6n41X5sYn4IdQL0nvz6yO+MMlPxw49aSARHLg/MSehQftyjnrE8X6bYregzSumqc6cg==}
 
-  read-pkg@8.1.0:
-    resolution: {integrity: sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==}
-    engines: {node: '>=16'}
+  hermes-parser@0.22.0:
+    resolution: {integrity: sha512-gn5RfZiEXCsIWsFGsKiykekktUoh0PdFWYocXsUdZIyWSckT6UIyPcyyUIPSR3kpnELWeK3n3ztAse7Mat6PSA==}
 
-  readable-stream@2.3.8:
-    resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
+  hermes-parser@0.23.1:
+    resolution: {integrity: sha512-oxl5h2DkFW83hT4DAUJorpah8ou4yvmweUzLJmmr6YV2cezduCdlil1AvU/a/xSsAFo4WUcNA4GoV5Bvq6JffA==}
 
-  readable-stream@3.6.2:
-    resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
-    engines: {node: '>= 6'}
+  hey-listen@1.0.8:
+    resolution: {integrity: sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==}
 
-  readdirp@3.6.0:
-    resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
-    engines: {node: '>=8.10.0'}
+  history@5.3.0:
+    resolution: {integrity: sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ==}
 
-  real-require@0.1.0:
-    resolution: {integrity: sha512-r/H9MzAWtrv8aSVjPCMFpDMl5q66GqtmmRkRjpHTsp4zBAa+snZyiQNlMONiUmEJcsnaw0wCauJ2GWODr/aFkg==}
-    engines: {node: '>= 12.13.0'}
+  hmac-drbg@1.0.1:
+    resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==}
 
-  redent@3.0.0:
-    resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==}
-    engines: {node: '>=8'}
+  hoist-non-react-statics@3.3.2:
+    resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
 
-  redeyed@2.1.1:
-    resolution: {integrity: sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==}
+  hook-std@3.0.0:
+    resolution: {integrity: sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
 
-  reflect.getprototypeof@1.0.6:
-    resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==}
-    engines: {node: '>= 0.4'}
+  hosted-git-info@2.8.9:
+    resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
 
-  regexp.prototype.flags@1.5.2:
-    resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==}
-    engines: {node: '>= 0.4'}
+  hosted-git-info@4.1.0:
+    resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==}
+    engines: {node: '>=10'}
 
-  registry-auth-token@5.0.2:
-    resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==}
-    engines: {node: '>=14'}
+  hosted-git-info@7.0.2:
+    resolution: {integrity: sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==}
+    engines: {node: ^16.14.0 || >=18.0.0}
 
-  require-directory@2.1.1:
-    resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
-    engines: {node: '>=0.10.0'}
+  http-errors@2.0.0:
+    resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
+    engines: {node: '>= 0.8'}
 
-  require-from-string@2.0.2:
-    resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
-    engines: {node: '>=0.10.0'}
+  http-proxy-agent@7.0.2:
+    resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==}
+    engines: {node: '>= 14'}
 
-  require-main-filename@2.0.0:
-    resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==}
+  http-shutdown@1.2.2:
+    resolution: {integrity: sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==}
+    engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
 
-  requires-port@1.0.0:
-    resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
+  https-proxy-agent@7.0.5:
+    resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==}
+    engines: {node: '>= 14'}
 
-  resolve-from@3.0.0:
-    resolution: {integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==}
-    engines: {node: '>=4'}
+  human-signals@2.1.0:
+    resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
+    engines: {node: '>=10.17.0'}
 
-  resolve-from@4.0.0:
-    resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
-    engines: {node: '>=4'}
+  human-signals@4.3.1:
+    resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==}
+    engines: {node: '>=14.18.0'}
 
-  resolve-from@5.0.0:
-    resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
-    engines: {node: '>=8'}
+  human-signals@5.0.0:
+    resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
+    engines: {node: '>=16.17.0'}
 
-  resolve-global@1.0.0:
-    resolution: {integrity: sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==}
-    engines: {node: '>=8'}
+  husky@8.0.3:
+    resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==}
+    engines: {node: '>=14'}
+    hasBin: true
 
-  resolve-pkg-maps@1.0.0:
-    resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
+  idb-keyval@6.2.1:
+    resolution: {integrity: sha512-8Sb3veuYCyrZL+VBt9LJfZjLUPWVvqn8tG28VqYNFCo43KHcKuq+b4EiXGeuaLAQWL2YmyDgMp2aSpH9JHsEQg==}
 
-  resolve@1.19.0:
-    resolution: {integrity: sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==}
+  ieee754@1.2.1:
+    resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
 
-  resolve@1.22.8:
-    resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
-    hasBin: true
+  ignore@5.3.2:
+    resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
+    engines: {node: '>= 4'}
 
-  resolve@2.0.0-next.5:
-    resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==}
+  image-size@1.1.1:
+    resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==}
+    engines: {node: '>=16.x'}
     hasBin: true
 
-  restore-cursor@4.0.0:
-    resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  import-fresh@2.0.0:
+    resolution: {integrity: sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==}
+    engines: {node: '>=4'}
 
-  reusify@1.0.4:
-    resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
-    engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+  import-fresh@3.3.0:
+    resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
+    engines: {node: '>=6'}
 
-  rfdc@1.4.1:
-    resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
+  import-from@4.0.0:
+    resolution: {integrity: sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==}
+    engines: {node: '>=12.2'}
 
-  rimraf@2.7.1:
-    resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==}
-    deprecated: Rimraf versions prior to v4 are no longer supported
-    hasBin: true
+  import-lazy@4.0.0:
+    resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==}
+    engines: {node: '>=8'}
 
-  rimraf@3.0.2:
-    resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
-    deprecated: Rimraf versions prior to v4 are no longer supported
-    hasBin: true
+  import-meta-resolve@4.1.0:
+    resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==}
 
-  rollup@3.29.4:
-    resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==}
-    engines: {node: '>=14.18.0', npm: '>=8.0.0'}
-    hasBin: true
+  import-sort-config@6.0.0:
+    resolution: {integrity: sha512-FJpF2F3+30JXqH1rJKeajxoSCHCueai3/0ntDN4y3GJL5pjnLDt/VjCy5FzjH7u0NHnllL/zVEf1wfmsVxJlPQ==}
 
-  rollup@4.20.0:
-    resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==}
-    engines: {node: '>=18.0.0', npm: '>=8.0.0'}
-    hasBin: true
+  import-sort-parser-babylon@6.0.0:
+    resolution: {integrity: sha512-NyShTiNhTh4Vy7kJUVe6CuvOaQAzzfSIT72wtp3CzGjz8bHjNj59DCAjncuviicmDOgVAgmLuSh1WMcLYAMWGg==}
 
-  run-parallel@1.2.0:
-    resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+  import-sort-parser-typescript@6.0.0:
+    resolution: {integrity: sha512-pgxnr3I156DonupQriNsgDb2zJN9TxrqCCIN1rwT/6SDO1rkJb+a0fjqshCjlgacTSA92oPAp1eAwmQUeZi3dw==}
 
-  sade@1.8.1:
-    resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
-    engines: {node: '>=6'}
+  import-sort-parser@6.0.0:
+    resolution: {integrity: sha512-H5L+d6HnqHvThB0GmAA3/43Sv74oCwL0iMk3/ixOv0LRJ69rCyHXeG/+UadMHrD2FefEmgPIWboEPAG7gsQrkA==}
 
-  safe-array-concat@1.1.2:
-    resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==}
-    engines: {node: '>=0.4'}
+  import-sort-style@6.0.0:
+    resolution: {integrity: sha512-z0H5PKs7YoDeKxNYXv2AA1mjjZFY07fjeNCXUdTM3ymJtWeeEoTm8CQkFm2l+KPZoMczIvdwzJpWkkOamBnsPw==}
 
-  safe-buffer@5.1.2:
-    resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
+  import-sort@6.0.0:
+    resolution: {integrity: sha512-XUwSQMGAGmcW/wfshFE0gXgb1NPF6ibbQD6wDr3KRDykZf/lZj0jf58Bwa02xNb8EE59oz7etFe9OHnJocUW5Q==}
 
-  safe-buffer@5.2.1:
-    resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
+  imurmurhash@0.1.4:
+    resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
+    engines: {node: '>=0.8.19'}
 
-  safe-regex-test@1.0.3:
-    resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==}
-    engines: {node: '>= 0.4'}
+  indent-string@4.0.0:
+    resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
+    engines: {node: '>=8'}
 
-  safe-stable-stringify@2.4.3:
-    resolution: {integrity: sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==}
-    engines: {node: '>=10'}
+  indent-string@5.0.0:
+    resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==}
+    engines: {node: '>=12'}
 
-  sander@0.5.1:
-    resolution: {integrity: sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==}
+  inflight@1.0.6:
+    resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
+    deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
 
-  semantic-release@21.1.2:
-    resolution: {integrity: sha512-kz76azHrT8+VEkQjoCBHE06JNQgTgsC4bT8XfCzb7DHcsk9vG3fqeMVik8h5rcWCYi2Fd+M3bwA7BG8Z8cRwtA==}
-    engines: {node: '>=18'}
-    hasBin: true
+  inherits@2.0.4:
+    resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
 
-  semver-diff@4.0.0:
-    resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==}
-    engines: {node: '>=12'}
+  ini@1.3.8:
+    resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
 
-  semver-regex@4.0.5:
-    resolution: {integrity: sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==}
+  internal-slot@1.0.7:
+    resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==}
+    engines: {node: '>= 0.4'}
+
+  into-stream@7.0.0:
+    resolution: {integrity: sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==}
     engines: {node: '>=12'}
 
-  semver@5.7.2:
-    resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==}
-    hasBin: true
-
-  semver@6.3.1:
-    resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
-    hasBin: true
+  invariant@2.2.4:
+    resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==}
 
-  semver@7.5.4:
-    resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
-    engines: {node: '>=10'}
-    hasBin: true
+  iron-webcrypto@1.2.1:
+    resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==}
 
-  semver@7.6.3:
-    resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
-    engines: {node: '>=10'}
-    hasBin: true
+  is-arguments@1.1.1:
+    resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==}
+    engines: {node: '>= 0.4'}
 
-  set-blocking@2.0.0:
-    resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==}
+  is-array-buffer@3.0.4:
+    resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==}
+    engines: {node: '>= 0.4'}
 
-  set-cookie-parser@2.7.0:
-    resolution: {integrity: sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==}
+  is-arrayish@0.2.1:
+    resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
 
-  set-function-length@1.2.2:
-    resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
+  is-async-function@2.0.0:
+    resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==}
     engines: {node: '>= 0.4'}
 
-  set-function-name@2.0.2:
-    resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==}
-    engines: {node: '>= 0.4'}
+  is-bigint@1.0.4:
+    resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
 
-  shebang-command@2.0.0:
-    resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
+  is-binary-path@2.1.0:
+    resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
     engines: {node: '>=8'}
 
-  shebang-regex@3.0.0:
-    resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
-    engines: {node: '>=8'}
+  is-boolean-object@1.1.2:
+    resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
+    engines: {node: '>= 0.4'}
 
-  side-channel@1.0.6:
-    resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
+  is-builtin-module@3.2.1:
+    resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
+    engines: {node: '>=6'}
+
+  is-callable@1.2.7:
+    resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
     engines: {node: '>= 0.4'}
 
-  siginfo@2.0.0:
-    resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
+  is-core-module@2.15.0:
+    resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==}
+    engines: {node: '>= 0.4'}
 
-  signal-exit@3.0.7:
-    resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
+  is-data-view@1.0.1:
+    resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==}
+    engines: {node: '>= 0.4'}
 
-  signal-exit@4.1.0:
-    resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
-    engines: {node: '>=14'}
+  is-date-object@1.0.5:
+    resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
+    engines: {node: '>= 0.4'}
 
-  signale@1.4.0:
-    resolution: {integrity: sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==}
-    engines: {node: '>=6'}
+  is-directory@0.3.1:
+    resolution: {integrity: sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==}
+    engines: {node: '>=0.10.0'}
 
-  slash@3.0.0:
-    resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
+  is-docker@2.2.1:
+    resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
     engines: {node: '>=8'}
+    hasBin: true
 
-  slash@5.1.0:
-    resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==}
-    engines: {node: '>=14.16'}
+  is-docker@3.0.0:
+    resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+    hasBin: true
 
-  slice-ansi@5.0.0:
-    resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==}
-    engines: {node: '>=12'}
+  is-extglob@2.1.1:
+    resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
+    engines: {node: '>=0.10.0'}
 
-  sonic-boom@2.8.0:
-    resolution: {integrity: sha512-kuonw1YOYYNOve5iHdSahXPOK49GqwA+LZhI6Wz/l0rP57iKyXXIHaRagOBHAPmGwJC6od2Z9zgvZ5loSgMlVg==}
+  is-finalizationregistry@1.0.2:
+    resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==}
 
-  sorcery@0.11.1:
-    resolution: {integrity: sha512-o7npfeJE6wi6J9l0/5LKshFzZ2rMatRiCDwYeDQaOzqdzRJwALhX7mk/A/ecg6wjMu7wdZbmXfD2S/vpOg0bdQ==}
-    hasBin: true
+  is-fullwidth-code-point@2.0.0:
+    resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==}
+    engines: {node: '>=4'}
 
-  source-map-js@1.2.0:
-    resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==}
-    engines: {node: '>=0.10.0'}
+  is-fullwidth-code-point@3.0.0:
+    resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
+    engines: {node: '>=8'}
 
-  source-map@0.6.1:
-    resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
-    engines: {node: '>=0.10.0'}
+  is-fullwidth-code-point@4.0.0:
+    resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==}
+    engines: {node: '>=12'}
 
-  spawn-error-forwarder@1.0.0:
-    resolution: {integrity: sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g==}
+  is-generator-function@1.0.10:
+    resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==}
+    engines: {node: '>= 0.4'}
 
-  spdx-correct@3.2.0:
-    resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
+  is-glob@4.0.3:
+    resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
+    engines: {node: '>=0.10.0'}
 
-  spdx-exceptions@2.5.0:
-    resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
+  is-inside-container@1.0.0:
+    resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
+    engines: {node: '>=14.16'}
+    hasBin: true
 
-  spdx-expression-parse@3.0.1:
-    resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
+  is-interactive@1.0.0:
+    resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==}
+    engines: {node: '>=8'}
 
-  spdx-license-ids@3.0.18:
-    resolution: {integrity: sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==}
+  is-map@2.0.3:
+    resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==}
+    engines: {node: '>= 0.4'}
 
-  split-on-first@1.1.0:
-    resolution: {integrity: sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==}
-    engines: {node: '>=6'}
+  is-negative-zero@2.0.3:
+    resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
+    engines: {node: '>= 0.4'}
 
-  split2@1.0.0:
-    resolution: {integrity: sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==}
+  is-number-object@1.0.7:
+    resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
+    engines: {node: '>= 0.4'}
 
-  split2@3.2.2:
-    resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==}
+  is-number@7.0.0:
+    resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
+    engines: {node: '>=0.12.0'}
 
-  split2@4.2.0:
-    resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
-    engines: {node: '>= 10.x'}
+  is-obj@2.0.0:
+    resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==}
+    engines: {node: '>=8'}
 
-  split@1.0.1:
-    resolution: {integrity: sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==}
+  is-path-inside@3.0.3:
+    resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
+    engines: {node: '>=8'}
 
-  sprintf-js@1.0.3:
-    resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
+  is-plain-obj@1.1.0:
+    resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==}
+    engines: {node: '>=0.10.0'}
 
-  stackback@0.0.2:
-    resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
+  is-plain-object@2.0.4:
+    resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==}
+    engines: {node: '>=0.10.0'}
 
-  starknet@6.11.0:
-    resolution: {integrity: sha512-u50KrGDi9fbu1Ogu7ynwF/tSeFlp3mzOg1/Y5x50tYFICImo3OfY4lOz9OtYDk404HK4eUujKkhov9tG7GAKlg==}
+  is-promise@4.0.0:
+    resolution: {integrity: sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==}
 
-  std-env@3.7.0:
-    resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==}
+  is-reference@3.0.2:
+    resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==}
 
-  stop-iteration-iterator@1.0.0:
-    resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==}
+  is-regex@1.1.4:
+    resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
     engines: {node: '>= 0.4'}
 
-  stream-combiner2@1.1.1:
-    resolution: {integrity: sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==}
+  is-set@2.0.3:
+    resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==}
+    engines: {node: '>= 0.4'}
 
-  stream-shift@1.0.3:
-    resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==}
+  is-shared-array-buffer@1.0.3:
+    resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==}
+    engines: {node: '>= 0.4'}
 
-  strict-uri-encode@2.0.0:
-    resolution: {integrity: sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==}
-    engines: {node: '>=4'}
+  is-stream@2.0.1:
+    resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
+    engines: {node: '>=8'}
 
-  string-argv@0.3.2:
-    resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
-    engines: {node: '>=0.6.19'}
+  is-stream@3.0.0:
+    resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
 
-  string-width@4.2.3:
-    resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
-    engines: {node: '>=8'}
+  is-string@1.0.7:
+    resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
+    engines: {node: '>= 0.4'}
 
-  string-width@5.1.2:
-    resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
-    engines: {node: '>=12'}
+  is-symbol@1.0.4:
+    resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
+    engines: {node: '>= 0.4'}
 
-  string.prototype.includes@2.0.0:
-    resolution: {integrity: sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==}
+  is-text-path@1.0.1:
+    resolution: {integrity: sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==}
+    engines: {node: '>=0.10.0'}
 
-  string.prototype.matchall@4.0.11:
-    resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==}
+  is-text-path@2.0.0:
+    resolution: {integrity: sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==}
+    engines: {node: '>=8'}
+
+  is-typed-array@1.1.13:
+    resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==}
     engines: {node: '>= 0.4'}
 
-  string.prototype.repeat@1.0.0:
-    resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==}
+  is-unicode-supported@0.1.0:
+    resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
+    engines: {node: '>=10'}
 
-  string.prototype.trim@1.2.9:
-    resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==}
+  is-unicode-supported@1.3.0:
+    resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==}
+    engines: {node: '>=12'}
+
+  is-weakmap@2.0.2:
+    resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==}
     engines: {node: '>= 0.4'}
 
-  string.prototype.trimend@1.0.8:
-    resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==}
+  is-weakref@1.0.2:
+    resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
 
-  string.prototype.trimstart@1.0.8:
-    resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
+  is-weakset@2.0.3:
+    resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==}
     engines: {node: '>= 0.4'}
 
-  string_decoder@1.1.1:
-    resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
+  is-wsl@1.1.0:
+    resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==}
+    engines: {node: '>=4'}
 
-  string_decoder@1.3.0:
-    resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
+  is-wsl@2.2.0:
+    resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
+    engines: {node: '>=8'}
 
-  strip-ansi@6.0.1:
-    resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
-    engines: {node: '>=8'}
-
-  strip-ansi@7.1.0:
-    resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
-    engines: {node: '>=12'}
+  is-wsl@3.1.0:
+    resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==}
+    engines: {node: '>=16'}
 
-  strip-bom@3.0.0:
-    resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
-    engines: {node: '>=4'}
+  is64bit@2.0.0:
+    resolution: {integrity: sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==}
+    engines: {node: '>=18'}
 
-  strip-final-newline@2.0.0:
-    resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
-    engines: {node: '>=6'}
+  isarray@1.0.0:
+    resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
 
-  strip-final-newline@3.0.0:
-    resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
-    engines: {node: '>=12'}
+  isarray@2.0.5:
+    resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
 
-  strip-indent@3.0.0:
-    resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
-    engines: {node: '>=8'}
+  isexe@2.0.0:
+    resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
 
-  strip-json-comments@2.0.1:
-    resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==}
+  isobject@3.0.1:
+    resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==}
     engines: {node: '>=0.10.0'}
 
-  strip-json-comments@3.1.1:
-    resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
-    engines: {node: '>=8'}
+  isomorphic-fetch@3.0.0:
+    resolution: {integrity: sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==}
 
-  strip-literal@2.1.0:
-    resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==}
+  isomorphic-unfetch@3.1.0:
+    resolution: {integrity: sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==}
 
-  sucrase@3.35.0:
-    resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
-    engines: {node: '>=16 || 14 >=14.17'}
-    hasBin: true
+  issue-parser@6.0.0:
+    resolution: {integrity: sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==}
+    engines: {node: '>=10.13'}
 
-  supports-color@5.5.0:
-    resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
-    engines: {node: '>=4'}
+  iterator.prototype@1.1.2:
+    resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==}
 
-  supports-color@7.2.0:
-    resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
-    engines: {node: '>=8'}
+  its-fine@1.2.5:
+    resolution: {integrity: sha512-fXtDA0X0t0eBYAGLVM5YsgJGsJ5jEmqZEPrGbzdf5awjv0xE7nqv3TVnvtUF060Tkes15DbDAKW/I48vsb6SyA==}
+    peerDependencies:
+      react: '>=18.0'
 
-  supports-color@8.1.1:
-    resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
-    engines: {node: '>=10'}
+  jackspeak@3.4.3:
+    resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
 
-  supports-hyperlinks@2.3.0:
-    resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==}
-    engines: {node: '>=8'}
+  java-properties@1.0.2:
+    resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==}
+    engines: {node: '>= 0.6.0'}
 
-  supports-preserve-symlinks-flag@1.0.0:
-    resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
-    engines: {node: '>= 0.4'}
+  jest-environment-node@29.7.0:
+    resolution: {integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  svelte-check@3.8.5:
-    resolution: {integrity: sha512-3OGGgr9+bJ/+1nbPgsvulkLC48xBsqsgtc8Wam281H4G9F5v3mYGa2bHRsPuwHC5brKl4AxJH95QF73kmfihGQ==}
-    hasBin: true
-    peerDependencies:
-      svelte: ^3.55.0 || ^4.0.0-next.0 || ^4.0.0 || ^5.0.0-next.0
+  jest-get-type@29.6.3:
+    resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  svelte-forms@2.3.1:
-    resolution: {integrity: sha512-ExX9PM0JgvdOWlHl2ztD7XzLNPOPt9U5hBKV8sUAisMfcYWpPRnyz+6EFmh35BOBGJJmuhTDBGm5/7seLjOTIA==}
+  jest-message-util@29.7.0:
+    resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  svelte-hmr@0.15.3:
-    resolution: {integrity: sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==}
-    engines: {node: ^12.20 || ^14.13.1 || >= 16}
-    peerDependencies:
-      svelte: ^3.19.0 || ^4.0.0
+  jest-mock@29.7.0:
+    resolution: {integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  svelte-preprocess@5.1.4:
-    resolution: {integrity: sha512-IvnbQ6D6Ao3Gg6ftiM5tdbR6aAETwjhHV+UKGf5bHGYR69RQvF1ho0JKPcbUON4vy4R7zom13jPjgdOWCQ5hDA==}
-    engines: {node: '>= 16.0.0'}
-    peerDependencies:
-      '@babel/core': ^7.10.2
-      coffeescript: ^2.5.1
-      less: ^3.11.3 || ^4.0.0
-      postcss: ^7 || ^8
-      postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 || ^5.0.0
-      pug: ^3.0.0
-      sass: ^1.26.8
-      stylus: ^0.55.0
-      sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0
-      svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0 || ^5.0.0-next.0
-      typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0'
-    peerDependenciesMeta:
-      '@babel/core':
-        optional: true
-      coffeescript:
-        optional: true
-      less:
-        optional: true
-      postcss:
-        optional: true
-      postcss-load-config:
-        optional: true
-      pug:
-        optional: true
-      sass:
-        optional: true
-      stylus:
-        optional: true
-      sugarss:
-        optional: true
-      typescript:
-        optional: true
+  jest-util@29.7.0:
+    resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  svelte@4.2.18:
-    resolution: {integrity: sha512-d0FdzYIiAePqRJEb90WlJDkjUEx42xhivxN8muUBmfZnP+tzUgz12DJ2hRJi8sIHCME7jeK1PTMgKPSfTd8JrA==}
-    engines: {node: '>=16'}
+  jest-validate@29.7.0:
+    resolution: {integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  system-architecture@0.1.0:
-    resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==}
-    engines: {node: '>=18'}
+  jest-worker@29.7.0:
+    resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  tailwindcss@3.4.10:
-    resolution: {integrity: sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w==}
-    engines: {node: '>=14.0.0'}
+  jiti@1.21.6:
+    resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==}
     hasBin: true
 
-  tapable@2.2.1:
-    resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
-    engines: {node: '>=6'}
-
-  temp-dir@3.0.0:
-    resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==}
-    engines: {node: '>=14.16'}
+  jju@1.4.0:
+    resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==}
 
-  tempy@3.1.0:
-    resolution: {integrity: sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==}
-    engines: {node: '>=14.16'}
+  joi@17.13.3:
+    resolution: {integrity: sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==}
 
-  text-extensions@1.9.0:
-    resolution: {integrity: sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==}
-    engines: {node: '>=0.10'}
+  js-tokens@4.0.0:
+    resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
 
-  text-extensions@2.4.0:
-    resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==}
-    engines: {node: '>=8'}
+  js-tokens@9.0.0:
+    resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==}
 
-  text-table@0.2.0:
-    resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
+  js-yaml@3.14.1:
+    resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
+    hasBin: true
 
-  thenify-all@1.6.0:
-    resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
-    engines: {node: '>=0.8'}
+  js-yaml@4.1.0:
+    resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
+    hasBin: true
 
-  thenify@3.3.1:
-    resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
+  jsc-android@250231.0.0:
+    resolution: {integrity: sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw==}
 
-  thread-stream@0.15.2:
-    resolution: {integrity: sha512-UkEhKIg2pD+fjkHQKyJO3yoIvAP3N6RlNFt2dUhcS1FGvCD1cQa1M/PGknCLFIyZdtJOWQjejp7bdNqmN7zwdA==}
+  jsc-safe-url@0.2.4:
+    resolution: {integrity: sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q==}
 
-  through2@2.0.5:
-    resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==}
+  jscodeshift@0.14.0:
+    resolution: {integrity: sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==}
+    hasBin: true
+    peerDependencies:
+      '@babel/preset-env': ^7.1.6
 
-  through2@4.0.2:
-    resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==}
+  jsesc@2.5.2:
+    resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
+    engines: {node: '>=4'}
+    hasBin: true
 
-  through@2.3.8:
-    resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
+  jsesc@3.0.2:
+    resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
+    engines: {node: '>=6'}
+    hasBin: true
 
-  tinybench@2.9.0:
-    resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
+  json-bigint@1.0.0:
+    resolution: {integrity: sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==}
 
-  tinypool@0.8.4:
-    resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==}
-    engines: {node: '>=14.0.0'}
+  json-buffer@3.0.1:
+    resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
 
-  tinyspy@2.2.1:
-    resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==}
-    engines: {node: '>=14.0.0'}
+  json-parse-better-errors@1.0.2:
+    resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==}
 
-  to-fast-properties@2.0.0:
-    resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
-    engines: {node: '>=4'}
+  json-parse-even-better-errors@2.3.1:
+    resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
 
-  to-regex-range@5.0.1:
-    resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
-    engines: {node: '>=8.0'}
+  json-parse-even-better-errors@3.0.2:
+    resolution: {integrity: sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==}
+    engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
 
-  tough-cookie@4.1.4:
-    resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==}
-    engines: {node: '>=6'}
+  json-schema-traverse@0.4.1:
+    resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
 
-  tr46@0.0.3:
-    resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
+  json-schema-traverse@1.0.0:
+    resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
 
-  traverse@0.6.8:
-    resolution: {integrity: sha512-aXJDbk6SnumuaZSANd21XAo15ucCDE38H4fkqiGsc3MhCK+wOlZvLP9cB/TvpHT0mOyWgC4Z8EwRlzqYSUzdsA==}
-    engines: {node: '>= 0.4'}
+  json-stable-stringify-without-jsonify@1.0.1:
+    resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
 
-  trim-newlines@3.0.1:
-    resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==}
-    engines: {node: '>=8'}
+  json-stringify-safe@5.0.1:
+    resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==}
 
-  trpc-browser@1.4.2:
-    resolution: {integrity: sha512-A4p5LtEiI81fEBi/RduirnXx6MrbKab+qpu9lzYONVEVHeWkXzmIzGlG2gfowWgBmxtKKjku8F3fZTrPxl93Gw==}
-    peerDependencies:
-      '@trpc/client': ^10.0.0
-      '@trpc/server': ^10.0.0
+  json5@1.0.2:
+    resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
+    hasBin: true
 
-  ts-api-utils@1.3.0:
-    resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==}
-    engines: {node: '>=16'}
-    peerDependencies:
-      typescript: '>=4.2.0'
+  json5@2.2.3:
+    resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
+    engines: {node: '>=6'}
+    hasBin: true
 
-  ts-interface-checker@0.1.13:
-    resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
+  jsonfile@4.0.0:
+    resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
 
-  ts-mixer@6.0.4:
-    resolution: {integrity: sha512-ufKpbmrugz5Aou4wcr5Wc1UUFWOLhq+Fm6qa6P0w0K5Qw2yhaUoiWszhCVuNQyNwrlGiscHOmqYoAox1PtvgjA==}
+  jsonfile@6.1.0:
+    resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
 
-  ts-node@10.9.2:
-    resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
-    hasBin: true
-    peerDependencies:
-      '@swc/core': '>=1.2.50'
-      '@swc/wasm': '>=1.2.50'
-      '@types/node': '*'
-      typescript: '>=2.7'
-    peerDependenciesMeta:
-      '@swc/core':
-        optional: true
-      '@swc/wasm':
-        optional: true
+  jsonparse@1.3.1:
+    resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==}
+    engines: {'0': node >= 0.2.0}
 
-  tsconfig-paths@3.15.0:
-    resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==}
+  jsx-ast-utils@3.3.5:
+    resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==}
+    engines: {node: '>=4.0'}
 
-  tslib@1.14.1:
-    resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
+  keyv@4.5.4:
+    resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
 
-  tslib@2.6.3:
-    resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==}
+  keyvaluestorage-interface@1.0.0:
+    resolution: {integrity: sha512-8t6Q3TclQ4uZynJY9IGr2+SsIGwK9JHcO6ootkHCGA0CrQCRy+VkouYNO2xicET6b9al7QKzpebNow+gkpCL8g==}
 
-  type-check@0.4.0:
-    resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
-    engines: {node: '>= 0.8.0'}
+  kind-of@6.0.3:
+    resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
+    engines: {node: '>=0.10.0'}
 
-  type-detect@4.1.0:
-    resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==}
-    engines: {node: '>=4'}
+  kleur@3.0.3:
+    resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
+    engines: {node: '>=6'}
 
-  type-fest@0.18.1:
-    resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==}
-    engines: {node: '>=10'}
+  kleur@4.1.5:
+    resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
+    engines: {node: '>=6'}
 
-  type-fest@0.20.2:
-    resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
-    engines: {node: '>=10'}
+  known-css-properties@0.34.0:
+    resolution: {integrity: sha512-tBECoUqNFbyAY4RrbqsBQqDFpGXAEbdD5QKr8kACx3+rnArmuuR22nKQWKazvp07N9yjTyDZaw/20UIH8tL9DQ==}
 
-  type-fest@0.6.0:
-    resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
-    engines: {node: '>=8'}
+  kolorist@1.8.0:
+    resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
 
-  type-fest@0.8.1:
-    resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
-    engines: {node: '>=8'}
+  konva@9.3.15:
+    resolution: {integrity: sha512-6jceV1u75a41Fwky7HIg7Xr092sn9g+emE/F4KrkNey9j5IwM/No91z4g13P9kbh0NePzC20YvfyGVS5EzliUA==}
 
-  type-fest@1.4.0:
-    resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
-    engines: {node: '>=10'}
+  language-subtag-registry@0.3.23:
+    resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==}
 
-  type-fest@2.19.0:
-    resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
-    engines: {node: '>=12.20'}
+  language-tags@1.0.9:
+    resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==}
+    engines: {node: '>=0.10'}
 
-  type-fest@3.13.1:
-    resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==}
-    engines: {node: '>=14.16'}
+  leven@3.1.0:
+    resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
+    engines: {node: '>=6'}
 
-  type-fest@4.24.0:
-    resolution: {integrity: sha512-spAaHzc6qre0TlZQQ2aA/nGMe+2Z/wyGk5Z+Ru2VUfdNwT6kWO6TjevOlpebsATEG1EIQ2sOiDszud3lO5mt/Q==}
-    engines: {node: '>=16'}
+  levn@0.4.1:
+    resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
+    engines: {node: '>= 0.8.0'}
 
-  typed-array-buffer@1.0.2:
-    resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==}
-    engines: {node: '>= 0.4'}
+  lighthouse-logger@1.4.2:
+    resolution: {integrity: sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==}
 
-  typed-array-byte-length@1.0.1:
-    resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==}
-    engines: {node: '>= 0.4'}
+  lightweight-charts@4.2.1:
+    resolution: {integrity: sha512-nE2zCZ5Gp7KZbVHUJi6QhQLkYRvYyxsQTnSLEXIFmc8iHOFBT4rk/Dbyecq+CLW59FNuoCPNOYjZnS63/uHDrA==}
 
-  typed-array-byte-offset@1.0.2:
-    resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==}
-    engines: {node: '>= 0.4'}
+  lilconfig@2.1.0:
+    resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
+    engines: {node: '>=10'}
 
-  typed-array-length@1.0.6:
-    resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==}
-    engines: {node: '>= 0.4'}
+  lilconfig@3.1.2:
+    resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==}
+    engines: {node: '>=14'}
 
-  typescript@3.9.10:
-    resolution: {integrity: sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==}
-    engines: {node: '>=4.2.0'}
-    hasBin: true
+  lines-and-columns@1.2.4:
+    resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
 
-  typescript@5.4.2:
-    resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==}
-    engines: {node: '>=14.17'}
+  lines-and-columns@2.0.4:
+    resolution: {integrity: sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+  lint-staged@14.0.1:
+    resolution: {integrity: sha512-Mw0cL6HXnHN1ag0mN/Dg4g6sr8uf8sn98w2Oc1ECtFto9tvRF7nkXGJRbx8gPlHyoR0pLyBr2lQHbWwmUHe1Sw==}
+    engines: {node: ^16.14.0 || >=18.0.0}
     hasBin: true
 
-  typescript@5.5.4:
-    resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==}
-    engines: {node: '>=14.17'}
+  listhen@1.7.2:
+    resolution: {integrity: sha512-7/HamOm5YD9Wb7CFgAZkKgVPA96WwhcTQoqtm2VTZGVbVVn3IWKRBTgrU7cchA3Q8k9iCsG8Osoi9GX4JsGM9g==}
     hasBin: true
 
-  ufo@1.5.4:
-    resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==}
+  listr2@6.6.1:
+    resolution: {integrity: sha512-+rAXGHh0fkEWdXBmX+L6mmfmXmXvDGEKzkjxO+8mP3+nI/r/CWznVBvsibXdxda9Zz0OW2e2ikphN3OwCT/jSg==}
+    engines: {node: '>=16.0.0'}
+    peerDependencies:
+      enquirer: '>= 2.3.0 < 3'
+    peerDependenciesMeta:
+      enquirer:
+        optional: true
 
-  uglify-js@3.19.2:
-    resolution: {integrity: sha512-S8KA6DDI47nQXJSi2ctQ629YzwOVs+bQML6DAtvy0wgNdpi+0ySpQK0g2pxBq2xfF2z3YCscu7NNA8nXT9PlIQ==}
-    engines: {node: '>=0.8.0'}
-    hasBin: true
+  lit-element@3.3.3:
+    resolution: {integrity: sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==}
 
-  uint8arrays@3.1.0:
-    resolution: {integrity: sha512-ei5rfKtoRO8OyOIor2Rz5fhzjThwIHJZ3uyDPnDHTXbP0aMQ1RN/6AI5B5d9dBxJOU+BvOAk7ZQ1xphsX8Lrog==}
+  lit-html@2.8.0:
+    resolution: {integrity: sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q==}
 
-  unbox-primitive@1.0.2:
-    resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
+  lit@2.8.0:
+    resolution: {integrity: sha512-4Sc3OFX9QHOJaHbmTMk28SYgVxLN3ePDjg7hofEft2zWlehFL3LiAuapWc4U/kYwMYJSh2hTCPZ6/LIC7ii0MA==}
 
-  uncrypto@0.1.3:
-    resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
+  load-json-file@4.0.0:
+    resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==}
+    engines: {node: '>=4'}
 
-  undici-types@5.26.5:
-    resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
+  local-pkg@0.5.0:
+    resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==}
+    engines: {node: '>=14'}
 
-  unenv@1.10.0:
-    resolution: {integrity: sha512-wY5bskBQFL9n3Eca5XnhH6KbUo/tfvkwm9OpcdCvLaeA7piBNbavbOKJySEwQ1V0RH6HvNlSAFRTpvTqgKRQXQ==}
+  locate-character@3.0.0:
+    resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==}
 
-  unfetch@4.2.0:
-    resolution: {integrity: sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==}
+  locate-path@2.0.0:
+    resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==}
+    engines: {node: '>=4'}
 
-  unicorn-magic@0.1.0:
-    resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==}
-    engines: {node: '>=18'}
+  locate-path@3.0.0:
+    resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==}
+    engines: {node: '>=6'}
 
-  unique-string@3.0.0:
-    resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==}
-    engines: {node: '>=12'}
+  locate-path@5.0.0:
+    resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
+    engines: {node: '>=8'}
 
-  universal-user-agent@6.0.1:
-    resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==}
+  locate-path@6.0.0:
+    resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
+    engines: {node: '>=10'}
 
-  universalify@0.1.2:
-    resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
-    engines: {node: '>= 4.0.0'}
+  locate-path@7.2.0:
+    resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
 
-  universalify@0.2.0:
-    resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==}
-    engines: {node: '>= 4.0.0'}
+  lodash-es@4.17.21:
+    resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
 
-  universalify@2.0.1:
-    resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
-    engines: {node: '>= 10.0.0'}
+  lodash.camelcase@4.3.0:
+    resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==}
 
-  unstorage@1.10.2:
-    resolution: {integrity: sha512-cULBcwDqrS8UhlIysUJs2Dk0Mmt8h7B0E6mtR+relW9nZvsf/u4SkAYyNliPiPW7XtFNb5u3IUMkxGxFTTRTgQ==}
-    peerDependencies:
-      '@azure/app-configuration': ^1.5.0
-      '@azure/cosmos': ^4.0.0
-      '@azure/data-tables': ^13.2.2
-      '@azure/identity': ^4.0.1
-      '@azure/keyvault-secrets': ^4.8.0
-      '@azure/storage-blob': ^12.17.0
-      '@capacitor/preferences': ^5.0.7
-      '@netlify/blobs': ^6.5.0 || ^7.0.0
-      '@planetscale/database': ^1.16.0
-      '@upstash/redis': ^1.28.4
-      '@vercel/kv': ^1.0.1
-      idb-keyval: ^6.2.1
-      ioredis: ^5.3.2
-    peerDependenciesMeta:
-      '@azure/app-configuration':
-        optional: true
-      '@azure/cosmos':
-        optional: true
-      '@azure/data-tables':
-        optional: true
-      '@azure/identity':
-        optional: true
-      '@azure/keyvault-secrets':
-        optional: true
-      '@azure/storage-blob':
-        optional: true
-      '@capacitor/preferences':
-        optional: true
-      '@netlify/blobs':
-        optional: true
-      '@planetscale/database':
-        optional: true
-      '@upstash/redis':
-        optional: true
-      '@vercel/kv':
-        optional: true
-      idb-keyval:
-        optional: true
-      ioredis:
-        optional: true
+  lodash.capitalize@4.2.1:
+    resolution: {integrity: sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==}
 
-  untun@0.1.3:
-    resolution: {integrity: sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==}
-    hasBin: true
+  lodash.debounce@4.0.8:
+    resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
 
-  update-browserslist-db@1.1.0:
-    resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==}
-    hasBin: true
-    peerDependencies:
-      browserslist: '>= 4.21.0'
+  lodash.escaperegexp@4.1.2:
+    resolution: {integrity: sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==}
 
-  uqr@0.1.2:
-    resolution: {integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==}
+  lodash.get@4.4.2:
+    resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==}
 
-  uri-js@4.4.1:
-    resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+  lodash.isequal@4.5.0:
+    resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==}
 
-  url-join@4.0.1:
-    resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==}
+  lodash.isfunction@3.0.9:
+    resolution: {integrity: sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==}
 
-  url-join@5.0.0:
-    resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==}
-    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+  lodash.ismatch@4.4.0:
+    resolution: {integrity: sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==}
 
-  url-parse@1.5.10:
-    resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
+  lodash.isplainobject@4.0.6:
+    resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==}
 
-  use-sync-external-store@1.2.0:
-    resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==}
-    peerDependencies:
-      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+  lodash.isstring@4.0.1:
+    resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==}
 
-  util-deprecate@1.0.2:
-    resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+  lodash.kebabcase@4.1.1:
+    resolution: {integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==}
 
-  v8-compile-cache-lib@3.0.1:
-    resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==}
+  lodash.merge@4.6.2:
+    resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
 
-  validate-npm-package-license@3.0.4:
-    resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
+  lodash.mergewith@4.6.2:
+    resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==}
 
-  validator@13.12.0:
-    resolution: {integrity: sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==}
-    engines: {node: '>= 0.10'}
+  lodash.snakecase@4.1.1:
+    resolution: {integrity: sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==}
 
-  valtio@1.11.2:
-    resolution: {integrity: sha512-1XfIxnUXzyswPAPXo1P3Pdx2mq/pIqZICkWN60Hby0d9Iqb+MEIpqgYVlbflvHdrp2YR/q3jyKWRPJJ100yxaw==}
-    engines: {node: '>=12.20.0'}
-    peerDependencies:
-      '@types/react': '>=16.8'
-      react: '>=16.8'
-    peerDependenciesMeta:
-      '@types/react':
-        optional: true
-      react:
-        optional: true
+  lodash.startcase@4.4.0:
+    resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==}
 
-  vite-node@1.6.0:
-    resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==}
-    engines: {node: ^18.0.0 || >=20.0.0}
-    hasBin: true
+  lodash.throttle@4.1.1:
+    resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==}
 
-  vite-plugin-dts@3.9.1:
-    resolution: {integrity: sha512-rVp2KM9Ue22NGWB8dNtWEr+KekN3rIgz1tWD050QnRGlriUCmaDwa7qA5zDEjbXg5lAXhYMSBJtx3q3hQIJZSg==}
-    engines: {node: ^14.18.0 || >=16.0.0}
-    peerDependencies:
-      typescript: '*'
-      vite: '*'
-    peerDependenciesMeta:
-      vite:
-        optional: true
+  lodash.uniq@4.5.0:
+    resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==}
 
-  vite@4.5.3:
-    resolution: {integrity: sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==}
-    engines: {node: ^14.18.0 || >=16.0.0}
-    hasBin: true
-    peerDependencies:
-      '@types/node': '>= 14'
-      less: '*'
-      lightningcss: ^1.21.0
-      sass: '*'
-      stylus: '*'
-      sugarss: '*'
-      terser: ^5.4.0
-    peerDependenciesMeta:
-      '@types/node':
-        optional: true
-      less:
-        optional: true
-      lightningcss:
-        optional: true
-      sass:
-        optional: true
-      stylus:
-        optional: true
-      sugarss:
-        optional: true
-      terser:
-        optional: true
+  lodash.uniqby@4.7.0:
+    resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==}
 
-  vite@5.4.0:
-    resolution: {integrity: sha512-5xokfMX0PIiwCMCMb9ZJcMyh5wbBun0zUzKib+L65vAZ8GY9ePZMXxFrHbr/Kyll2+LSCY7xtERPpxkBDKngwg==}
-    engines: {node: ^18.0.0 || >=20.0.0}
-    hasBin: true
-    peerDependencies:
-      '@types/node': ^18.0.0 || >=20.0.0
-      less: '*'
-      lightningcss: ^1.21.0
-      sass: '*'
-      sass-embedded: '*'
-      stylus: '*'
-      sugarss: '*'
-      terser: ^5.4.0
-    peerDependenciesMeta:
-      '@types/node':
-        optional: true
-      less:
-        optional: true
-      lightningcss:
-        optional: true
-      sass:
-        optional: true
-      sass-embedded:
-        optional: true
-      stylus:
-        optional: true
-      sugarss:
-        optional: true
-      terser:
-        optional: true
+  lodash.upperfirst@4.3.1:
+    resolution: {integrity: sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==}
 
-  vitefu@0.2.5:
-    resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==}
-    peerDependencies:
-      vite: ^3.0.0 || ^4.0.0 || ^5.0.0
-    peerDependenciesMeta:
-      vite:
-        optional: true
+  lodash@4.17.21:
+    resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
 
-  vitest@1.6.0:
-    resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==}
-    engines: {node: ^18.0.0 || >=20.0.0}
-    hasBin: true
-    peerDependencies:
-      '@edge-runtime/vm': '*'
-      '@types/node': ^18.0.0 || >=20.0.0
-      '@vitest/browser': 1.6.0
-      '@vitest/ui': 1.6.0
-      happy-dom: '*'
-      jsdom: '*'
-    peerDependenciesMeta:
-      '@edge-runtime/vm':
-        optional: true
-      '@types/node':
-        optional: true
-      '@vitest/browser':
-        optional: true
-      '@vitest/ui':
-        optional: true
-      happy-dom:
-        optional: true
-      jsdom:
-        optional: true
+  log-symbols@4.1.0:
+    resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
+    engines: {node: '>=10'}
 
-  vue-template-compiler@2.7.16:
-    resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==}
+  log-update@5.0.1:
+    resolution: {integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
 
-  vue-tsc@1.8.27:
-    resolution: {integrity: sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==}
+  logkitty@0.7.1:
+    resolution: {integrity: sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==}
     hasBin: true
-    peerDependencies:
-      typescript: '*'
 
-  webidl-conversions@3.0.1:
-    resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
+  loose-envify@1.4.0:
+    resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
+    hasBin: true
 
-  whatwg-fetch@3.6.20:
-    resolution: {integrity: sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==}
+  lossless-json@2.0.11:
+    resolution: {integrity: sha512-BP0vn+NGYvzDielvBZaFain/wgeJ1hTvURCqtKvhr1SCPePdaaTanmmcplrHfEJSJOUql7hk4FHwToNJjWRY3g==}
 
-  whatwg-url@5.0.0:
-    resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
+  lossless-json@4.0.1:
+    resolution: {integrity: sha512-l0L+ppmgPDnb+JGxNLndPtJZGNf6+ZmVaQzoxQm3u6TXmhdnsA+YtdVR8DjzZd/em58686CQhOFDPewfJ4l7MA==}
 
-  which-boxed-primitive@1.0.2:
-    resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
+  loupe@2.3.7:
+    resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==}
 
-  which-builtin-type@1.1.4:
-    resolution: {integrity: sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==}
-    engines: {node: '>= 0.4'}
+  lru-cache@10.4.3:
+    resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
 
-  which-collection@1.0.2:
-    resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==}
-    engines: {node: '>= 0.4'}
+  lru-cache@5.1.1:
+    resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
 
-  which-module@2.0.1:
-    resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==}
+  lru-cache@6.0.0:
+    resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
+    engines: {node: '>=10'}
 
-  which-typed-array@1.1.15:
-    resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==}
-    engines: {node: '>= 0.4'}
+  magic-string@0.30.11:
+    resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==}
 
-  which@2.0.2:
-    resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
-    engines: {node: '>= 8'}
-    hasBin: true
+  make-dir@2.1.0:
+    resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==}
+    engines: {node: '>=6'}
 
-  why-is-node-running@2.3.0:
-    resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==}
+  make-error@1.3.6:
+    resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==}
+
+  makeerror@1.0.12:
+    resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==}
+
+  map-obj@1.0.1:
+    resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==}
+    engines: {node: '>=0.10.0'}
+
+  map-obj@4.3.0:
+    resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==}
     engines: {node: '>=8'}
+
+  marked-terminal@5.2.0:
+    resolution: {integrity: sha512-Piv6yNwAQXGFjZSaiNljyNFw7jKDdGrw70FSbtxEyldLsyeuV5ZHm/1wW++kWbrOF1VPnUgYOhB2oLL0ZpnekA==}
+    engines: {node: '>=14.13.1 || >=16.0.0'}
+    peerDependencies:
+      marked: ^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0
+
+  marked@5.1.2:
+    resolution: {integrity: sha512-ahRPGXJpjMjwSOlBoTMZAK7ATXkli5qCPxZ21TG44rx1KEo44bii4ekgTDQPNRQ4Kh7JMb9Ub1PVk1NxRSsorg==}
+    engines: {node: '>= 16'}
     hasBin: true
 
-  word-wrap@1.2.5:
-    resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
-    engines: {node: '>=0.10.0'}
+  marky@1.2.5:
+    resolution: {integrity: sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==}
 
-  wordwrap@1.0.0:
-    resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==}
+  mdn-data@2.0.30:
+    resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
 
-  wrap-ansi@6.2.0:
-    resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
-    engines: {node: '>=8'}
+  memoize-one@5.2.1:
+    resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==}
 
-  wrap-ansi@7.0.0:
-    resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
+  meow@12.1.1:
+    resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==}
+    engines: {node: '>=16.10'}
+
+  meow@8.1.2:
+    resolution: {integrity: sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==}
     engines: {node: '>=10'}
 
-  wrap-ansi@8.1.0:
-    resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
-    engines: {node: '>=12'}
+  merge-stream@2.0.0:
+    resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
 
-  wrappy@1.0.2:
-    resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+  merge2@1.4.1:
+    resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
+    engines: {node: '>= 8'}
 
-  ws@7.5.10:
-    resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==}
-    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
+  metro-babel-transformer@0.80.12:
+    resolution: {integrity: sha512-YZziRs0MgA3pzCkkvOoQRXjIoVjvrpi/yRlJnObyIvMP6lFdtyG4nUGIwGY9VXnBvxmXD6mPY2e+NSw6JAyiRg==}
+    engines: {node: '>=18'}
 
-  ws@8.18.0:
-    resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==}
+  metro-cache-key@0.80.12:
+    resolution: {integrity: sha512-o4BspKnugg/pE45ei0LGHVuBJXwRgruW7oSFAeSZvBKA/sGr0UhOGY3uycOgWInnS3v5yTTfiBA9lHlNRhsvGA==}
+    engines: {node: '>=18'}
+
+  metro-cache@0.80.12:
+    resolution: {integrity: sha512-p5kNHh2KJ0pbQI/H7ZBPCEwkyNcSz7OUkslzsiIWBMPQGFJ/xArMwkV7I+GJcWh+b4m6zbLxE5fk6fqbVK1xGA==}
+    engines: {node: '>=18'}
+
+  metro-config@0.80.12:
+    resolution: {integrity: sha512-4rwOWwrhm62LjB12ytiuR5NgK1ZBNr24/He8mqCsC+HXZ+ATbrewLNztzbAZHtFsrxP4D4GLTGgh96pCpYLSAQ==}
+    engines: {node: '>=18'}
+
+  metro-core@0.80.12:
+    resolution: {integrity: sha512-QqdJ/yAK+IpPs2HU/h5v2pKEdANBagSsc6DRSjnwSyJsCoHlmyJKCaCJ7KhWGx+N4OHxh37hoA8fc2CuZbx0Fw==}
+    engines: {node: '>=18'}
+
+  metro-file-map@0.80.12:
+    resolution: {integrity: sha512-sYdemWSlk66bWzW2wp79kcPMzwuG32x1ZF3otI0QZTmrnTaaTiGyhE66P1z6KR4n2Eu5QXiABa6EWbAQv0r8bw==}
+    engines: {node: '>=18'}
+
+  metro-minify-terser@0.80.12:
+    resolution: {integrity: sha512-muWzUw3y5k+9083ZoX9VaJLWEV2Jcgi+Oan0Mmb/fBNMPqP9xVDuy4pOMn/HOiGndgfh/MK7s4bsjkyLJKMnXQ==}
+    engines: {node: '>=18'}
+
+  metro-resolver@0.80.12:
+    resolution: {integrity: sha512-PR24gYRZnYHM3xT9pg6BdbrGbM/Cu1TcyIFBVlAk7qDAuHkUNQ1nMzWumWs+kwSvtd9eZGzHoucGJpTUEeLZAw==}
+    engines: {node: '>=18'}
+
+  metro-runtime@0.80.12:
+    resolution: {integrity: sha512-LIx7+92p5rpI0i6iB4S4GBvvLxStNt6fF0oPMaUd1Weku7jZdfkCZzmrtDD9CSQ6EPb0T9NUZoyXIxlBa3wOCw==}
+    engines: {node: '>=18'}
+
+  metro-source-map@0.80.12:
+    resolution: {integrity: sha512-o+AXmE7hpvM8r8MKsx7TI21/eerYYy2DCDkWfoBkv+jNkl61khvDHlQn0cXZa6lrcNZiZkl9oHSMcwLLIrFmpw==}
+    engines: {node: '>=18'}
+
+  metro-symbolicate@0.80.12:
+    resolution: {integrity: sha512-/dIpNdHksXkGHZXARZpL7doUzHqSNxgQ8+kQGxwpJuHnDhGkENxB5PS2QBaTDdEcmyTMjS53CN1rl9n1gR6fmw==}
+    engines: {node: '>=18'}
+    hasBin: true
+
+  metro-transform-plugins@0.80.12:
+    resolution: {integrity: sha512-WQWp00AcZvXuQdbjQbx1LzFR31IInlkCDYJNRs6gtEtAyhwpMMlL2KcHmdY+wjDO9RPcliZ+Xl1riOuBecVlPA==}
+    engines: {node: '>=18'}
+
+  metro-transform-worker@0.80.12:
+    resolution: {integrity: sha512-KAPFN1y3eVqEbKLx1I8WOarHPqDMUa8WelWxaJCNKO/yHCP26zELeqTJvhsQup+8uwB6EYi/sp0b6TGoh6lOEA==}
+    engines: {node: '>=18'}
+
+  metro@0.80.12:
+    resolution: {integrity: sha512-1UsH5FzJd9quUsD1qY+zUG4JY3jo3YEMxbMYH9jT6NK3j4iORhlwTK8fYTfAUBhDKjgLfKjAh7aoazNE23oIRA==}
+    engines: {node: '>=18'}
+    hasBin: true
+
+  micro-starknet@0.2.3:
+    resolution: {integrity: sha512-6XBcC+GerlwJSR4iA0VaeXtS2wrayWFcA4PEzrJPMuFmWCaUtuGIq5K/DB5F/XgnL54/zl2Bxo690Lj7mYVA8A==}
+
+  micromatch@4.0.5:
+    resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
+    engines: {node: '>=8.6'}
+
+  micromatch@4.0.7:
+    resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==}
+    engines: {node: '>=8.6'}
+
+  mime-db@1.52.0:
+    resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+    engines: {node: '>= 0.6'}
+
+  mime-db@1.53.0:
+    resolution: {integrity: sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg==}
+    engines: {node: '>= 0.6'}
+
+  mime-types@2.1.35:
+    resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+    engines: {node: '>= 0.6'}
+
+  mime@1.6.0:
+    resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==}
+    engines: {node: '>=4'}
+    hasBin: true
+
+  mime@2.6.0:
+    resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==}
+    engines: {node: '>=4.0.0'}
+    hasBin: true
+
+  mime@3.0.0:
+    resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==}
     engines: {node: '>=10.0.0'}
+    hasBin: true
+
+  mime@4.0.4:
+    resolution: {integrity: sha512-v8yqInVjhXyqP6+Kw4fV3ZzeMRqEW6FotRsKXjRS5VMTNIuXsdRoAvklpoRgSqXm6o9VNH4/C0mgedko9DdLsQ==}
+    engines: {node: '>=16'}
+    hasBin: true
+
+  mimic-fn@2.1.0:
+    resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
+    engines: {node: '>=6'}
+
+  mimic-fn@4.0.0:
+    resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
+    engines: {node: '>=12'}
+
+  min-indent@1.0.1:
+    resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
+    engines: {node: '>=4'}
+
+  minimalistic-assert@1.0.1:
+    resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
+
+  minimalistic-crypto-utils@1.0.1:
+    resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==}
+
+  minimatch@3.0.8:
+    resolution: {integrity: sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==}
+
+  minimatch@3.1.2:
+    resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+
+  minimatch@9.0.3:
+    resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
+    engines: {node: '>=16 || 14 >=14.17'}
+
+  minimatch@9.0.5:
+    resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
+    engines: {node: '>=16 || 14 >=14.17'}
+
+  minimist-options@4.1.0:
+    resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==}
+    engines: {node: '>= 6'}
+
+  minimist@1.2.8:
+    resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
+
+  minipass@7.1.2:
+    resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
+    engines: {node: '>=16 || 14 >=14.17'}
+
+  mkdirp@0.5.6:
+    resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
+    hasBin: true
+
+  mkdirp@1.0.4:
+    resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==}
+    engines: {node: '>=10'}
+    hasBin: true
+
+  mlly@1.7.1:
+    resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==}
+
+  modify-values@1.0.1:
+    resolution: {integrity: sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==}
+    engines: {node: '>=0.10.0'}
+
+  motion@10.16.2:
+    resolution: {integrity: sha512-p+PurYqfUdcJZvtnmAqu5fJgV2kR0uLFQuBKtLeFVTrYEVllI99tiOTSefVNYuip9ELTEkepIIDftNdze76NAQ==}
+
+  mri@1.2.0:
+    resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
+    engines: {node: '>=4'}
+
+  mrmime@2.0.0:
+    resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==}
+    engines: {node: '>=10'}
+
+  ms@2.0.0:
+    resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
+
+  ms@2.1.2:
+    resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
+
+  ms@2.1.3:
+    resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
+
+  muggle-string@0.3.1:
+    resolution: {integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==}
+
+  multiformats@9.9.0:
+    resolution: {integrity: sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==}
+
+  mz@2.7.0:
+    resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
+
+  nanoid@3.3.7:
+    resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
+    engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+    hasBin: true
+
+  natural-compare@1.4.0:
+    resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+
+  negotiator@0.6.3:
+    resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
+    engines: {node: '>= 0.6'}
+
+  neo-async@2.6.2:
+    resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
+
+  nerf-dart@1.0.0:
+    resolution: {integrity: sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g==}
+
+  nocache@3.0.4:
+    resolution: {integrity: sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw==}
+    engines: {node: '>=12.0.0'}
+
+  node-abort-controller@3.1.1:
+    resolution: {integrity: sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==}
+
+  node-addon-api@7.1.1:
+    resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==}
+
+  node-dir@0.1.17:
+    resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==}
+    engines: {node: '>= 0.10.5'}
+
+  node-emoji@1.11.0:
+    resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==}
+
+  node-fetch-native@1.6.4:
+    resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==}
+
+  node-fetch@2.7.0:
+    resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
+    engines: {node: 4.x || >=6.0.0}
     peerDependencies:
-      bufferutil: ^4.0.1
-      utf-8-validate: '>=5.0.2'
+      encoding: ^0.1.0
     peerDependenciesMeta:
-      bufferutil:
-        optional: true
-      utf-8-validate:
+      encoding:
         optional: true
 
-  xtend@4.0.2:
-    resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
-    engines: {node: '>=0.4'}
+  node-forge@1.3.1:
+    resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==}
+    engines: {node: '>= 6.13.0'}
+
+  node-int64@0.4.0:
+    resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==}
+
+  node-releases@2.0.18:
+    resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==}
+
+  node-stream-zip@1.15.0:
+    resolution: {integrity: sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==}
+    engines: {node: '>=0.12.0'}
+
+  normalize-package-data@2.5.0:
+    resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
+
+  normalize-package-data@3.0.3:
+    resolution: {integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==}
+    engines: {node: '>=10'}
+
+  normalize-package-data@6.0.2:
+    resolution: {integrity: sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==}
+    engines: {node: ^16.14.0 || >=18.0.0}
+
+  normalize-path@3.0.0:
+    resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
+    engines: {node: '>=0.10.0'}
+
+  normalize-range@0.1.2:
+    resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
+    engines: {node: '>=0.10.0'}
+
+  normalize-url@8.0.1:
+    resolution: {integrity: sha512-IO9QvjUMWxPQQhs60oOu10CRkWCiZzSUkzbXGGV9pviYl1fXYcvkzQ5jV9z8Y6un8ARoVRl4EtC6v6jNqbaJ/w==}
+    engines: {node: '>=14.16'}
+
+  npm-run-path@4.0.1:
+    resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
+    engines: {node: '>=8'}
+
+  npm-run-path@5.3.0:
+    resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+  npm@9.9.3:
+    resolution: {integrity: sha512-Z1l+rcQ5kYb17F3hHtO601arEpvdRYnCLtg8xo3AGtyj3IthwaraEOexI9903uANkifFbqHC8hT53KIrozWg8A==}
+    engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+    hasBin: true
+    bundledDependencies:
+      - '@isaacs/string-locale-compare'
+      - '@npmcli/arborist'
+      - '@npmcli/config'
+      - '@npmcli/fs'
+      - '@npmcli/map-workspaces'
+      - '@npmcli/package-json'
+      - '@npmcli/promise-spawn'
+      - '@npmcli/run-script'
+      - abbrev
+      - archy
+      - cacache
+      - chalk
+      - ci-info
+      - cli-columns
+      - cli-table3
+      - columnify
+      - fastest-levenshtein
+      - fs-minipass
+      - glob
+      - graceful-fs
+      - hosted-git-info
+      - ini
+      - init-package-json
+      - is-cidr
+      - json-parse-even-better-errors
+      - libnpmaccess
+      - libnpmdiff
+      - libnpmexec
+      - libnpmfund
+      - libnpmhook
+      - libnpmorg
+      - libnpmpack
+      - libnpmpublish
+      - libnpmsearch
+      - libnpmteam
+      - libnpmversion
+      - make-fetch-happen
+      - minimatch
+      - minipass
+      - minipass-pipeline
+      - ms
+      - node-gyp
+      - nopt
+      - normalize-package-data
+      - npm-audit-report
+      - npm-install-checks
+      - npm-package-arg
+      - npm-pick-manifest
+      - npm-profile
+      - npm-registry-fetch
+      - npm-user-validate
+      - npmlog
+      - p-map
+      - pacote
+      - parse-conflict-json
+      - proc-log
+      - qrcode-terminal
+      - read
+      - semver
+      - sigstore
+      - spdx-expression-parse
+      - ssri
+      - supports-color
+      - tar
+      - text-table
+      - tiny-relative-date
+      - treeverse
+      - validate-npm-package-name
+      - which
+      - write-file-atomic
+
+  nullthrows@1.1.1:
+    resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==}
+
+  ob1@0.80.12:
+    resolution: {integrity: sha512-VMArClVT6LkhUGpnuEoBuyjG9rzUyEzg4PDkav6wK1cLhOK02gPCYFxoiB4mqVnrMhDpIzJcrGNAMVi9P+hXrw==}
+    engines: {node: '>=18'}
+
+  object-assign@4.1.1:
+    resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+    engines: {node: '>=0.10.0'}
+
+  object-hash@3.0.0:
+    resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
+    engines: {node: '>= 6'}
+
+  object-inspect@1.13.2:
+    resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==}
+    engines: {node: '>= 0.4'}
+
+  object-is@1.1.6:
+    resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==}
+    engines: {node: '>= 0.4'}
+
+  object-keys@1.1.1:
+    resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
+    engines: {node: '>= 0.4'}
+
+  object.assign@4.1.5:
+    resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
+    engines: {node: '>= 0.4'}
+
+  object.entries@1.1.8:
+    resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==}
+    engines: {node: '>= 0.4'}
+
+  object.fromentries@2.0.8:
+    resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==}
+    engines: {node: '>= 0.4'}
+
+  object.groupby@1.0.3:
+    resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==}
+    engines: {node: '>= 0.4'}
+
+  object.values@1.2.0:
+    resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==}
+    engines: {node: '>= 0.4'}
+
+  ofetch@1.3.4:
+    resolution: {integrity: sha512-KLIET85ik3vhEfS+3fDlc/BAZiAp+43QEC/yCo5zkNoY2YaKvNkOaFr/6wCFgFH1kuYQM5pMNi0Tg8koiIemtw==}
+
+  ohash@1.1.3:
+    resolution: {integrity: sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==}
+
+  on-exit-leak-free@0.2.0:
+    resolution: {integrity: sha512-dqaz3u44QbRXQooZLTUKU41ZrzYrcvLISVgbrzbyCMxpmSLJvZ3ZamIJIZ29P6OhZIkNIQKosdeM6t1LYbA9hg==}
+
+  on-finished@2.3.0:
+    resolution: {integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==}
+    engines: {node: '>= 0.8'}
+
+  on-finished@2.4.1:
+    resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==}
+    engines: {node: '>= 0.8'}
+
+  on-headers@1.0.2:
+    resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==}
+    engines: {node: '>= 0.8'}
+
+  once@1.4.0:
+    resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
+
+  onetime@5.1.2:
+    resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
+    engines: {node: '>=6'}
+
+  onetime@6.0.0:
+    resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
+    engines: {node: '>=12'}
+
+  open@6.4.0:
+    resolution: {integrity: sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==}
+    engines: {node: '>=8'}
+
+  open@7.4.2:
+    resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==}
+    engines: {node: '>=8'}
+
+  optionator@0.9.4:
+    resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
+    engines: {node: '>= 0.8.0'}
+
+  ora@5.4.1:
+    resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==}
+    engines: {node: '>=10'}
+
+  p-each-series@3.0.0:
+    resolution: {integrity: sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw==}
+    engines: {node: '>=12'}
+
+  p-filter@4.1.0:
+    resolution: {integrity: sha512-37/tPdZ3oJwHaS3gNJdenCDB3Tz26i9sjhnguBtvN0vYlRIiDNnvTWkuh+0hETV9rLPdJ3rlL3yVOYPIAnM8rw==}
+    engines: {node: '>=18'}
+
+  p-is-promise@3.0.0:
+    resolution: {integrity: sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==}
+    engines: {node: '>=8'}
+
+  p-limit@1.3.0:
+    resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==}
+    engines: {node: '>=4'}
+
+  p-limit@2.3.0:
+    resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
+    engines: {node: '>=6'}
+
+  p-limit@3.1.0:
+    resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+    engines: {node: '>=10'}
+
+  p-limit@4.0.0:
+    resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+  p-limit@5.0.0:
+    resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==}
+    engines: {node: '>=18'}
+
+  p-locate@2.0.0:
+    resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==}
+    engines: {node: '>=4'}
+
+  p-locate@3.0.0:
+    resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==}
+    engines: {node: '>=6'}
+
+  p-locate@4.1.0:
+    resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
+    engines: {node: '>=8'}
+
+  p-locate@5.0.0:
+    resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
+    engines: {node: '>=10'}
+
+  p-locate@6.0.0:
+    resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+  p-map@7.0.2:
+    resolution: {integrity: sha512-z4cYYMMdKHzw4O5UkWJImbZynVIo0lSGTXc7bzB1e/rrDqkgGUNysK/o4bTr+0+xKvvLoTyGqYC4Fgljy9qe1Q==}
+    engines: {node: '>=18'}
+
+  p-reduce@2.1.0:
+    resolution: {integrity: sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==}
+    engines: {node: '>=8'}
+
+  p-reduce@3.0.0:
+    resolution: {integrity: sha512-xsrIUgI0Kn6iyDYm9StOpOeK29XM1aboGji26+QEortiFST1hGZaUQOLhtEbqHErPpGW/aSz6allwK2qcptp0Q==}
+    engines: {node: '>=12'}
+
+  p-try@1.0.0:
+    resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==}
+    engines: {node: '>=4'}
+
+  p-try@2.2.0:
+    resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
+    engines: {node: '>=6'}
+
+  package-json-from-dist@1.0.0:
+    resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==}
+
+  pako@2.1.0:
+    resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==}
+
+  parent-module@1.0.1:
+    resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
+    engines: {node: '>=6'}
+
+  parse-json@4.0.0:
+    resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==}
+    engines: {node: '>=4'}
+
+  parse-json@5.2.0:
+    resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
+    engines: {node: '>=8'}
+
+  parse-json@7.1.1:
+    resolution: {integrity: sha512-SgOTCX/EZXtZxBE5eJ97P4yGM5n37BwRU+YMsH4vNzFqJV/oWFXXCmwFlgWUM4PrakybVOueJJ6pwHqSVhTFDw==}
+    engines: {node: '>=16'}
+
+  parseurl@1.3.3:
+    resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
+    engines: {node: '>= 0.8'}
+
+  path-browserify@1.0.1:
+    resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
+
+  path-exists@3.0.0:
+    resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==}
+    engines: {node: '>=4'}
+
+  path-exists@4.0.0:
+    resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
+    engines: {node: '>=8'}
+
+  path-exists@5.0.0:
+    resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+  path-is-absolute@1.0.1:
+    resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
+    engines: {node: '>=0.10.0'}
+
+  path-key@3.1.1:
+    resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
+    engines: {node: '>=8'}
+
+  path-key@4.0.0:
+    resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
+    engines: {node: '>=12'}
+
+  path-parse@1.0.7:
+    resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
+
+  path-scurry@1.11.1:
+    resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
+    engines: {node: '>=16 || 14 >=14.18'}
+
+  path-type@4.0.0:
+    resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
+    engines: {node: '>=8'}
+
+  path-type@5.0.0:
+    resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==}
+    engines: {node: '>=12'}
+
+  pathe@1.1.2:
+    resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==}
+
+  pathval@1.1.1:
+    resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
+
+  periscopic@3.1.0:
+    resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==}
+
+  picocolors@1.0.1:
+    resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==}
+
+  picomatch@2.3.1:
+    resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
+    engines: {node: '>=8.6'}
+
+  pidtree@0.6.0:
+    resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
+    engines: {node: '>=0.10'}
+    hasBin: true
+
+  pify@2.3.0:
+    resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
+    engines: {node: '>=0.10.0'}
+
+  pify@3.0.0:
+    resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==}
+    engines: {node: '>=4'}
+
+  pify@4.0.1:
+    resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==}
+    engines: {node: '>=6'}
+
+  pino-abstract-transport@0.5.0:
+    resolution: {integrity: sha512-+KAgmVeqXYbTtU2FScx1XS3kNyfZ5TrXY07V96QnUSFqo2gAqlvmaxH67Lj7SWazqsMabf+58ctdTcBgnOLUOQ==}
+
+  pino-std-serializers@4.0.0:
+    resolution: {integrity: sha512-cK0pekc1Kjy5w9V2/n+8MkZwusa6EyyxfeQCB799CQRhRt/CqYKiWs5adeu8Shve2ZNffvfC/7J64A2PJo1W/Q==}
+
+  pino@7.11.0:
+    resolution: {integrity: sha512-dMACeu63HtRLmCG8VKdy4cShCPKaYDR4youZqoSWLxl5Gu99HUw8bw75thbPv9Nip+H+QYX8o3ZJbTdVZZ2TVg==}
+    hasBin: true
+
+  pirates@4.0.6:
+    resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
+    engines: {node: '>= 6'}
+
+  pkg-conf@2.1.0:
+    resolution: {integrity: sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==}
+    engines: {node: '>=4'}
+
+  pkg-dir@3.0.0:
+    resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==}
+    engines: {node: '>=6'}
+
+  pkg-types@1.1.3:
+    resolution: {integrity: sha512-+JrgthZG6m3ckicaOB74TwQ+tBWsFl3qVQg7mN8ulwSOElJ7gBhKzj2VkCPnZ4NlF6kEquYU+RIYNVAvzd54UA==}
+
+  pngjs@5.0.0:
+    resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==}
+    engines: {node: '>=10.13.0'}
+
+  popmotion@11.0.5:
+    resolution: {integrity: sha512-la8gPM1WYeFznb/JqF4GiTkRRPZsfaj2+kCxqQgr2MJylMmIKUwBfWW8Wa5fml/8gmtlD5yI01MP1QCZPWmppA==}
+
+  possible-typed-array-names@1.0.0:
+    resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==}
+    engines: {node: '>= 0.4'}
+
+  postcss-import@15.1.0:
+    resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
+    engines: {node: '>=14.0.0'}
+    peerDependencies:
+      postcss: ^8.0.0
+
+  postcss-js@4.0.1:
+    resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==}
+    engines: {node: ^12 || ^14 || >= 16}
+    peerDependencies:
+      postcss: ^8.4.21
+
+  postcss-load-config@3.1.4:
+    resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
+    engines: {node: '>= 10'}
+    peerDependencies:
+      postcss: '>=8.0.9'
+      ts-node: '>=9.0.0'
+    peerDependenciesMeta:
+      postcss:
+        optional: true
+      ts-node:
+        optional: true
+
+  postcss-load-config@4.0.2:
+    resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==}
+    engines: {node: '>= 14'}
+    peerDependencies:
+      postcss: '>=8.0.9'
+      ts-node: '>=9.0.0'
+    peerDependenciesMeta:
+      postcss:
+        optional: true
+      ts-node:
+        optional: true
+
+  postcss-nested@6.2.0:
+    resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==}
+    engines: {node: '>=12.0'}
+    peerDependencies:
+      postcss: ^8.2.14
+
+  postcss-safe-parser@6.0.0:
+    resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==}
+    engines: {node: '>=12.0'}
+    peerDependencies:
+      postcss: ^8.3.3
+
+  postcss-scss@4.0.9:
+    resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==}
+    engines: {node: '>=12.0'}
+    peerDependencies:
+      postcss: ^8.4.29
+
+  postcss-selector-parser@6.1.2:
+    resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
+    engines: {node: '>=4'}
+
+  postcss-value-parser@4.2.0:
+    resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
+
+  postcss@8.4.41:
+    resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==}
+    engines: {node: ^10 || ^12 || >=14}
+
+  prelude-ls@1.2.1:
+    resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
+    engines: {node: '>= 0.8.0'}
+
+  prettier-linter-helpers@1.0.0:
+    resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==}
+    engines: {node: '>=6.0.0'}
+
+  prettier-plugin-import-sort@0.0.7:
+    resolution: {integrity: sha512-O0KlUSq+lwvh+UiN3wZDT6wWkf7TNxTVv2/XXE5KqpRNbFJq3nRg2ftzBYFFO8QGpdWIrOB0uCTCtFjIxmVKQw==}
+    peerDependencies:
+      prettier: '>= 2.0'
+
+  prettier@3.3.3:
+    resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==}
+    engines: {node: '>=14'}
+    hasBin: true
+
+  pretty-format@26.6.2:
+    resolution: {integrity: sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==}
+    engines: {node: '>= 10'}
+
+  pretty-format@29.7.0:
+    resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
+  process-nextick-args@2.0.1:
+    resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
+
+  process-warning@1.0.0:
+    resolution: {integrity: sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q==}
+
+  promise@8.3.0:
+    resolution: {integrity: sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==}
+
+  prompts@2.4.2:
+    resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
+    engines: {node: '>= 6'}
+
+  prop-types@15.8.1:
+    resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
+
+  proto-list@1.2.4:
+    resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
+
+  proxy-compare@2.5.1:
+    resolution: {integrity: sha512-oyfc0Tx87Cpwva5ZXezSp5V9vht1c7dZBhvuV/y3ctkgMVUmiAGDVeeB0dKhGSyT0v1ZTEQYpe/RXlBVBNuCLA==}
+
+  psl@1.9.0:
+    resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
+
+  punycode@2.3.1:
+    resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
+    engines: {node: '>=6'}
+
+  qrcode@1.5.3:
+    resolution: {integrity: sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==}
+    engines: {node: '>=10.13.0'}
+    hasBin: true
+
+  query-string@7.1.3:
+    resolution: {integrity: sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==}
+    engines: {node: '>=6'}
+
+  querystringify@2.2.0:
+    resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==}
+
+  queue-microtask@1.2.3:
+    resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+
+  queue@6.0.2:
+    resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==}
+
+  quick-format-unescaped@4.0.4:
+    resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==}
+
+  quick-lru@4.0.1:
+    resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==}
+    engines: {node: '>=8'}
+
+  radix3@1.1.2:
+    resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==}
+
+  range-parser@1.2.1:
+    resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==}
+    engines: {node: '>= 0.6'}
+
+  rc@1.2.8:
+    resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
+    hasBin: true
+
+  react-clientside-effect@1.2.6:
+    resolution: {integrity: sha512-XGGGRQAKY+q25Lz9a/4EPqom7WRjz3z9R2k4jhVKA/puQFH/5Nt27vFZYql4m4NVNdUvX8PS3O7r/Zzm7cjUlg==}
+    peerDependencies:
+      react: ^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0
+
+  react-copy-to-clipboard@5.1.0:
+    resolution: {integrity: sha512-k61RsNgAayIJNoy9yDsYzDe/yAZAzEbEgcz3DZMhF686LEyukcE1hzurxe85JandPUG+yTfGVFzuEw3xt8WP/A==}
+    peerDependencies:
+      react: ^15.3.0 || 16 || 17 || 18
+
+  react-devtools-core@5.3.2:
+    resolution: {integrity: sha512-crr9HkVrDiJ0A4zot89oS0Cgv0Oa4OG1Em4jit3P3ZxZSKPMYyMjfwMqgcJna9o625g8oN87rBm8SWWrSTBZxg==}
+
+  react-dom@18.3.1:
+    resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==}
+    peerDependencies:
+      react: ^18.3.1
+
+  react-fast-compare@3.2.2:
+    resolution: {integrity: sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==}
+
+  react-focus-lock@2.13.2:
+    resolution: {integrity: sha512-T/7bsofxYqnod2xadvuwjGKHOoL5GH7/EIPI5UyEvaU/c2CcphvGI371opFtuY/SYdbMsNiuF4HsHQ50nA/TKQ==}
+    peerDependencies:
+      '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
+
+  react-is@16.13.1:
+    resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
+
+  react-is@17.0.2:
+    resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==}
+
+  react-is@18.3.1:
+    resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==}
+
+  react-konva@18.2.10:
+    resolution: {integrity: sha512-ohcX1BJINL43m4ynjZ24MxFI1syjBdrXhqVxYVDw2rKgr3yuS0x/6m1Y2Z4sl4T/gKhfreBx8KHisd0XC6OT1g==}
+    peerDependencies:
+      konva: ^8.0.1 || ^7.2.5 || ^9.0.0
+      react: '>=18.0.0'
+      react-dom: '>=18.0.0'
+
+  react-native@0.75.4:
+    resolution: {integrity: sha512-Jehg4AMNIAXu9cn0/1jbTCoNg3tc+t6EekwucCalN8YoRmxGd/PY6osQTI/5fSAM40JQ4O8uv8Qg09Ycpb5sxQ==}
+    engines: {node: '>=18'}
+    hasBin: true
+    peerDependencies:
+      '@types/react': ^18.2.6
+      react: ^18.2.0
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
+
+  react-reconciler@0.27.0:
+    resolution: {integrity: sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==}
+    engines: {node: '>=0.10.0'}
+    peerDependencies:
+      react: ^18.0.0
+
+  react-reconciler@0.29.2:
+    resolution: {integrity: sha512-zZQqIiYgDCTP/f1N/mAR10nJGrPD2ZR+jDSEsKWJHYC7Cm2wodlwbR3upZRdC3cjIjSlTLNVyO7Iu0Yy7t2AYg==}
+    engines: {node: '>=0.10.0'}
+    peerDependencies:
+      react: ^18.3.1
+
+  react-refresh@0.14.2:
+    resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==}
+    engines: {node: '>=0.10.0'}
+
+  react-remove-scroll-bar@2.3.6:
+    resolution: {integrity: sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==}
+    engines: {node: '>=10'}
+    peerDependencies:
+      '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
+
+  react-remove-scroll@2.6.0:
+    resolution: {integrity: sha512-I2U4JVEsQenxDAKaVa3VZ/JeJZe0/2DxPWL8Tj8yLKctQJQiZM52pn/GWFpSp8dftjM3pSAHVJZscAnC/y+ySQ==}
+    engines: {node: '>=10'}
+    peerDependencies:
+      '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
+
+  react-router-dom@6.26.2:
+    resolution: {integrity: sha512-z7YkaEW0Dy35T3/QKPYB1LjMK2R1fxnHO8kWpUMTBdfVzZrWOiY9a7CtN8HqdWtDUWd5FY6Dl8HFsqVwH4uOtQ==}
+    engines: {node: '>=14.0.0'}
+    peerDependencies:
+      react: '>=16.8'
+      react-dom: '>=16.8'
+
+  react-router@6.26.2:
+    resolution: {integrity: sha512-tvN1iuT03kHgOFnLPfLJ8V95eijteveqdOSk+srqfePtQvqCExB8eHOYnlilbOcyJyKnYkr1vJvf7YqotAJu1A==}
+    engines: {node: '>=14.0.0'}
+    peerDependencies:
+      react: '>=16.8'
+
+  react-spring-bottom-sheet@3.5.0-alpha.0:
+    resolution: {integrity: sha512-iCuv+qq/2kIHLs75Z/5Tgh9/tc0hklFn/CW6XDX0GA2IKqZP/kYky+/yN1BJCD74dtnL6Dx3p+Seu1ifVnf2xQ==}
+    peerDependencies:
+      react: ^16.14.0 || 17 || 18
+
+  react-spring@9.7.4:
+    resolution: {integrity: sha512-ypxdsOwmCfbDZGTBRyBo7eLjF55xNFN86e/QkflZ1Rfo8QMzVjCAWocrEEbsuFKkQAg2RRdhNkinWJ6BpCvJoQ==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+      react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
+
+  react-style-singleton@2.2.1:
+    resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==}
+    engines: {node: '>=10'}
+    peerDependencies:
+      '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
+
+  react-use-gesture@8.0.1:
+    resolution: {integrity: sha512-CXzUNkulUdgouaAlvAsC5ZVo0fi9KGSBSk81WrE4kOIcJccpANe9zZkAYr5YZZhqpicIFxitsrGVS4wmoMun9A==}
+    deprecated: This package is no longer maintained. Please use @use-gesture/react instead
+    peerDependencies:
+      react: '>= 16.8.0'
+
+  react-virtuoso@4.10.4:
+    resolution: {integrity: sha512-G/gprhTbK+lzMxoo/iStcZxVEGph/cIhc3WANEpt92RuMw+LiCZOmBfKoeoZOHlm/iyftTrDJhGaTCpxyucnkQ==}
+    engines: {node: '>=10'}
+    peerDependencies:
+      react: '>=16 || >=17 || >= 18'
+      react-dom: '>=16 || >=17 || >= 18'
+
+  react-zdog@1.2.2:
+    resolution: {integrity: sha512-Ix7ALha91aOEwiHuxumCeYbARS5XNpc/w0v145oGkM6poF/CvhKJwzLhM5sEZbtrghMA+psAhOJkCTzJoseicA==}
+
+  react@18.3.1:
+    resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==}
+    engines: {node: '>=0.10.0'}
+
+  read-cache@1.0.0:
+    resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
+
+  read-pkg-up@10.1.0:
+    resolution: {integrity: sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==}
+    engines: {node: '>=16'}
+
+  read-pkg-up@7.0.1:
+    resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
+    engines: {node: '>=8'}
+
+  read-pkg@5.2.0:
+    resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
+    engines: {node: '>=8'}
+
+  read-pkg@8.1.0:
+    resolution: {integrity: sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==}
+    engines: {node: '>=16'}
+
+  readable-stream@2.3.8:
+    resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
+
+  readable-stream@3.6.2:
+    resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
+    engines: {node: '>= 6'}
+
+  readdirp@3.6.0:
+    resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
+    engines: {node: '>=8.10.0'}
+
+  readline@1.3.0:
+    resolution: {integrity: sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==}
+
+  real-require@0.1.0:
+    resolution: {integrity: sha512-r/H9MzAWtrv8aSVjPCMFpDMl5q66GqtmmRkRjpHTsp4zBAa+snZyiQNlMONiUmEJcsnaw0wCauJ2GWODr/aFkg==}
+    engines: {node: '>= 12.13.0'}
+
+  recast@0.21.5:
+    resolution: {integrity: sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==}
+    engines: {node: '>= 4'}
+
+  redent@3.0.0:
+    resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==}
+    engines: {node: '>=8'}
+
+  redeyed@2.1.1:
+    resolution: {integrity: sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==}
+
+  reflect.getprototypeof@1.0.6:
+    resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==}
+    engines: {node: '>= 0.4'}
+
+  regenerate-unicode-properties@10.2.0:
+    resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==}
+    engines: {node: '>=4'}
+
+  regenerate@1.4.2:
+    resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==}
+
+  regenerator-runtime@0.13.11:
+    resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==}
+
+  regenerator-runtime@0.14.1:
+    resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
+
+  regenerator-transform@0.15.2:
+    resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==}
+
+  regexp.prototype.flags@1.5.2:
+    resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==}
+    engines: {node: '>= 0.4'}
+
+  regexpu-core@6.1.1:
+    resolution: {integrity: sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==}
+    engines: {node: '>=4'}
+
+  registry-auth-token@5.0.2:
+    resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==}
+    engines: {node: '>=14'}
+
+  regjsgen@0.8.0:
+    resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==}
+
+  regjsparser@0.11.1:
+    resolution: {integrity: sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ==}
+    hasBin: true
+
+  require-directory@2.1.1:
+    resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
+    engines: {node: '>=0.10.0'}
+
+  require-from-string@2.0.2:
+    resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
+    engines: {node: '>=0.10.0'}
+
+  require-main-filename@2.0.0:
+    resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==}
+
+  requires-port@1.0.0:
+    resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
+
+  resize-observer-polyfill@1.5.1:
+    resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==}
+
+  resolve-from@3.0.0:
+    resolution: {integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==}
+    engines: {node: '>=4'}
+
+  resolve-from@4.0.0:
+    resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
+    engines: {node: '>=4'}
+
+  resolve-from@5.0.0:
+    resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
+    engines: {node: '>=8'}
+
+  resolve-global@1.0.0:
+    resolution: {integrity: sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==}
+    engines: {node: '>=8'}
+
+  resolve-pkg-maps@1.0.0:
+    resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
+
+  resolve@1.19.0:
+    resolution: {integrity: sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==}
+
+  resolve@1.22.8:
+    resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
+    hasBin: true
+
+  resolve@2.0.0-next.5:
+    resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==}
+    hasBin: true
+
+  restore-cursor@3.1.0:
+    resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
+    engines: {node: '>=8'}
+
+  restore-cursor@4.0.0:
+    resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+  retry@0.13.1:
+    resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==}
+    engines: {node: '>= 4'}
+
+  reusify@1.0.4:
+    resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
+    engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+
+  rfdc@1.4.1:
+    resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
+
+  rimraf@2.6.3:
+    resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==}
+    deprecated: Rimraf versions prior to v4 are no longer supported
+    hasBin: true
+
+  rimraf@2.7.1:
+    resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==}
+    deprecated: Rimraf versions prior to v4 are no longer supported
+    hasBin: true
+
+  rimraf@3.0.2:
+    resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
+    deprecated: Rimraf versions prior to v4 are no longer supported
+    hasBin: true
+
+  rollup@3.29.4:
+    resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==}
+    engines: {node: '>=14.18.0', npm: '>=8.0.0'}
+    hasBin: true
+
+  rollup@4.20.0:
+    resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==}
+    engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+    hasBin: true
+
+  run-parallel@1.2.0:
+    resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+
+  sade@1.8.1:
+    resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
+    engines: {node: '>=6'}
+
+  safe-array-concat@1.1.2:
+    resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==}
+    engines: {node: '>=0.4'}
+
+  safe-buffer@5.1.2:
+    resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
+
+  safe-buffer@5.2.1:
+    resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
+
+  safe-regex-test@1.0.3:
+    resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==}
+    engines: {node: '>= 0.4'}
+
+  safe-stable-stringify@2.4.3:
+    resolution: {integrity: sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==}
+    engines: {node: '>=10'}
+
+  sander@0.5.1:
+    resolution: {integrity: sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==}
+
+  scheduler@0.21.0:
+    resolution: {integrity: sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==}
+
+  scheduler@0.23.2:
+    resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==}
+
+  scheduler@0.24.0-canary-efb381bbf-20230505:
+    resolution: {integrity: sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA==}
+
+  selfsigned@2.4.1:
+    resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==}
+    engines: {node: '>=10'}
+
+  semantic-release@21.1.2:
+    resolution: {integrity: sha512-kz76azHrT8+VEkQjoCBHE06JNQgTgsC4bT8XfCzb7DHcsk9vG3fqeMVik8h5rcWCYi2Fd+M3bwA7BG8Z8cRwtA==}
+    engines: {node: '>=18'}
+    hasBin: true
+
+  semver-diff@4.0.0:
+    resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==}
+    engines: {node: '>=12'}
+
+  semver-regex@4.0.5:
+    resolution: {integrity: sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==}
+    engines: {node: '>=12'}
+
+  semver@5.7.2:
+    resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==}
+    hasBin: true
+
+  semver@6.3.1:
+    resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
+    hasBin: true
+
+  semver@7.5.4:
+    resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
+    engines: {node: '>=10'}
+    hasBin: true
+
+  semver@7.6.3:
+    resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
+    engines: {node: '>=10'}
+    hasBin: true
+
+  send@0.19.0:
+    resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==}
+    engines: {node: '>= 0.8.0'}
+
+  serialize-error@2.1.0:
+    resolution: {integrity: sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==}
+    engines: {node: '>=0.10.0'}
+
+  serve-static@1.16.2:
+    resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==}
+    engines: {node: '>= 0.8.0'}
+
+  set-blocking@2.0.0:
+    resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==}
+
+  set-cookie-parser@2.7.0:
+    resolution: {integrity: sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==}
+
+  set-function-length@1.2.2:
+    resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
+    engines: {node: '>= 0.4'}
+
+  set-function-name@2.0.2:
+    resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==}
+    engines: {node: '>= 0.4'}
+
+  setprototypeof@1.2.0:
+    resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
+
+  shallow-clone@3.0.1:
+    resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==}
+    engines: {node: '>=8'}
+
+  shebang-command@2.0.0:
+    resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
+    engines: {node: '>=8'}
+
+  shebang-regex@3.0.0:
+    resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
+    engines: {node: '>=8'}
+
+  shell-quote@1.8.1:
+    resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==}
+
+  side-channel@1.0.6:
+    resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
+    engines: {node: '>= 0.4'}
+
+  siginfo@2.0.0:
+    resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
+
+  signal-exit@3.0.7:
+    resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
+
+  signal-exit@4.1.0:
+    resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
+    engines: {node: '>=14'}
+
+  signale@1.4.0:
+    resolution: {integrity: sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==}
+    engines: {node: '>=6'}
+
+  sirv@2.0.4:
+    resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==}
+    engines: {node: '>= 10'}
+
+  sisteransi@1.0.5:
+    resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
+
+  slash@3.0.0:
+    resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
+    engines: {node: '>=8'}
+
+  slash@5.1.0:
+    resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==}
+    engines: {node: '>=14.16'}
+
+  slice-ansi@2.1.0:
+    resolution: {integrity: sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==}
+    engines: {node: '>=6'}
+
+  slice-ansi@5.0.0:
+    resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==}
+    engines: {node: '>=12'}
+
+  sonic-boom@2.8.0:
+    resolution: {integrity: sha512-kuonw1YOYYNOve5iHdSahXPOK49GqwA+LZhI6Wz/l0rP57iKyXXIHaRagOBHAPmGwJC6od2Z9zgvZ5loSgMlVg==}
+
+  sorcery@0.11.1:
+    resolution: {integrity: sha512-o7npfeJE6wi6J9l0/5LKshFzZ2rMatRiCDwYeDQaOzqdzRJwALhX7mk/A/ecg6wjMu7wdZbmXfD2S/vpOg0bdQ==}
+    hasBin: true
+
+  source-map-js@1.2.0:
+    resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==}
+    engines: {node: '>=0.10.0'}
+
+  source-map-support@0.5.21:
+    resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
+
+  source-map@0.5.7:
+    resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==}
+    engines: {node: '>=0.10.0'}
+
+  source-map@0.6.1:
+    resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
+    engines: {node: '>=0.10.0'}
+
+  spawn-error-forwarder@1.0.0:
+    resolution: {integrity: sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g==}
+
+  spdx-correct@3.2.0:
+    resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
+
+  spdx-exceptions@2.5.0:
+    resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
+
+  spdx-expression-parse@3.0.1:
+    resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
+
+  spdx-license-ids@3.0.18:
+    resolution: {integrity: sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==}
+
+  split-on-first@1.1.0:
+    resolution: {integrity: sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==}
+    engines: {node: '>=6'}
+
+  split2@1.0.0:
+    resolution: {integrity: sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==}
+
+  split2@3.2.2:
+    resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==}
+
+  split2@4.2.0:
+    resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
+    engines: {node: '>= 10.x'}
+
+  split@1.0.1:
+    resolution: {integrity: sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==}
+
+  sprintf-js@1.0.3:
+    resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
+
+  stack-utils@2.0.6:
+    resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==}
+    engines: {node: '>=10'}
+
+  stackback@0.0.2:
+    resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
+
+  stackframe@1.3.4:
+    resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==}
+
+  stacktrace-parser@0.1.10:
+    resolution: {integrity: sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==}
+    engines: {node: '>=6'}
+
+  starknet@4.4.0:
+    resolution: {integrity: sha512-e/LaLbi9M3ByUq/YJw7VLN6axwHSEF4I3lAJ7s6MkI4aXmeSG771Qid+kNAcXsF+Z7HYtuuYz+eImSSjR0r7bA==}
+
+  starknet@5.25.0:
+    resolution: {integrity: sha512-ja5pV610voxTCw/MzXhZoZcwe+XZ5RVWkpa/Fhxsy0OP635DxKDbnPQSKCLWXmSi/BkfkpeefXXv4IUvYJo4kw==}
+
+  starknet@6.11.0:
+    resolution: {integrity: sha512-u50KrGDi9fbu1Ogu7ynwF/tSeFlp3mzOg1/Y5x50tYFICImo3OfY4lOz9OtYDk404HK4eUujKkhov9tG7GAKlg==}
+
+  statuses@1.5.0:
+    resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==}
+    engines: {node: '>= 0.6'}
+
+  statuses@2.0.1:
+    resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==}
+    engines: {node: '>= 0.8'}
+
+  std-env@3.7.0:
+    resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==}
+
+  stop-iteration-iterator@1.0.0:
+    resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==}
+    engines: {node: '>= 0.4'}
+
+  stream-combiner2@1.1.1:
+    resolution: {integrity: sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==}
+
+  stream-shift@1.0.3:
+    resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==}
+
+  strict-uri-encode@2.0.0:
+    resolution: {integrity: sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==}
+    engines: {node: '>=4'}
+
+  string-argv@0.3.2:
+    resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
+    engines: {node: '>=0.6.19'}
+
+  string-width@4.2.3:
+    resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
+    engines: {node: '>=8'}
+
+  string-width@5.1.2:
+    resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
+    engines: {node: '>=12'}
+
+  string.prototype.includes@2.0.0:
+    resolution: {integrity: sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==}
+
+  string.prototype.matchall@4.0.11:
+    resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==}
+    engines: {node: '>= 0.4'}
+
+  string.prototype.repeat@1.0.0:
+    resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==}
+
+  string.prototype.trim@1.2.9:
+    resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==}
+    engines: {node: '>= 0.4'}
+
+  string.prototype.trimend@1.0.8:
+    resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==}
+
+  string.prototype.trimstart@1.0.8:
+    resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
+    engines: {node: '>= 0.4'}
+
+  string_decoder@1.1.1:
+    resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
+
+  string_decoder@1.3.0:
+    resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
+
+  strip-ansi@5.2.0:
+    resolution: {integrity: sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==}
+    engines: {node: '>=6'}
+
+  strip-ansi@6.0.1:
+    resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
+    engines: {node: '>=8'}
+
+  strip-ansi@7.1.0:
+    resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
+    engines: {node: '>=12'}
+
+  strip-bom@3.0.0:
+    resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
+    engines: {node: '>=4'}
+
+  strip-final-newline@2.0.0:
+    resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
+    engines: {node: '>=6'}
+
+  strip-final-newline@3.0.0:
+    resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
+    engines: {node: '>=12'}
+
+  strip-indent@3.0.0:
+    resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
+    engines: {node: '>=8'}
+
+  strip-json-comments@2.0.1:
+    resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==}
+    engines: {node: '>=0.10.0'}
+
+  strip-json-comments@3.1.1:
+    resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
+    engines: {node: '>=8'}
+
+  strip-literal@2.1.0:
+    resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==}
+
+  strnum@1.0.5:
+    resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==}
+
+  style-value-types@5.1.2:
+    resolution: {integrity: sha512-Vs9fNreYF9j6W2VvuDTP7kepALi7sk0xtk2Tu8Yxi9UoajJdEVpNpCov0HsLTqXvNGKX+Uv09pkozVITi1jf3Q==}
+
+  stylis@4.2.0:
+    resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==}
+
+  sucrase@3.35.0:
+    resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
+    engines: {node: '>=16 || 14 >=14.17'}
+    hasBin: true
+
+  sudo-prompt@9.2.1:
+    resolution: {integrity: sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==}
+
+  supports-color@5.5.0:
+    resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
+    engines: {node: '>=4'}
+
+  supports-color@7.2.0:
+    resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
+    engines: {node: '>=8'}
+
+  supports-color@8.1.1:
+    resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
+    engines: {node: '>=10'}
+
+  supports-hyperlinks@2.3.0:
+    resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==}
+    engines: {node: '>=8'}
+
+  supports-preserve-symlinks-flag@1.0.0:
+    resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
+    engines: {node: '>= 0.4'}
+
+  suspend-react@0.1.3:
+    resolution: {integrity: sha512-aqldKgX9aZqpoDp3e8/BZ8Dm7x1pJl+qI3ZKxDN0i/IQTWUwBx/ManmlVJ3wowqbno6c2bmiIfs+Um6LbsjJyQ==}
+    peerDependencies:
+      react: '>=17.0'
+
+  svelte-check@3.8.5:
+    resolution: {integrity: sha512-3OGGgr9+bJ/+1nbPgsvulkLC48xBsqsgtc8Wam281H4G9F5v3mYGa2bHRsPuwHC5brKl4AxJH95QF73kmfihGQ==}
+    hasBin: true
+    peerDependencies:
+      svelte: ^3.55.0 || ^4.0.0-next.0 || ^4.0.0 || ^5.0.0-next.0
+
+  svelte-eslint-parser@0.41.1:
+    resolution: {integrity: sha512-08ndI6zTghzI8SuJAFpvMbA/haPSGn3xz19pjre19yYMw8Nw/wQJ2PrZBI/L8ijGTgtkWCQQiLLy+Z1tfaCwNA==}
+    engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+    peerDependencies:
+      svelte: ^3.37.0 || ^4.0.0 || ^5.0.0-next.191
+    peerDependenciesMeta:
+      svelte:
+        optional: true
+
+  svelte-forms@2.3.1:
+    resolution: {integrity: sha512-ExX9PM0JgvdOWlHl2ztD7XzLNPOPt9U5hBKV8sUAisMfcYWpPRnyz+6EFmh35BOBGJJmuhTDBGm5/7seLjOTIA==}
+
+  svelte-hmr@0.15.3:
+    resolution: {integrity: sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==}
+    engines: {node: ^12.20 || ^14.13.1 || >= 16}
+    peerDependencies:
+      svelte: ^3.19.0 || ^4.0.0
+
+  svelte-preprocess@5.1.4:
+    resolution: {integrity: sha512-IvnbQ6D6Ao3Gg6ftiM5tdbR6aAETwjhHV+UKGf5bHGYR69RQvF1ho0JKPcbUON4vy4R7zom13jPjgdOWCQ5hDA==}
+    engines: {node: '>= 16.0.0'}
+    peerDependencies:
+      '@babel/core': ^7.10.2
+      coffeescript: ^2.5.1
+      less: ^3.11.3 || ^4.0.0
+      postcss: ^7 || ^8
+      postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 || ^5.0.0
+      pug: ^3.0.0
+      sass: ^1.26.8
+      stylus: ^0.55.0
+      sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0
+      svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0 || ^5.0.0-next.0
+      typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0'
+    peerDependenciesMeta:
+      '@babel/core':
+        optional: true
+      coffeescript:
+        optional: true
+      less:
+        optional: true
+      postcss:
+        optional: true
+      postcss-load-config:
+        optional: true
+      pug:
+        optional: true
+      sass:
+        optional: true
+      stylus:
+        optional: true
+      sugarss:
+        optional: true
+      typescript:
+        optional: true
+
+  svelte@4.2.18:
+    resolution: {integrity: sha512-d0FdzYIiAePqRJEb90WlJDkjUEx42xhivxN8muUBmfZnP+tzUgz12DJ2hRJi8sIHCME7jeK1PTMgKPSfTd8JrA==}
+    engines: {node: '>=16'}
+
+  swr@1.3.0:
+    resolution: {integrity: sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw==}
+    peerDependencies:
+      react: ^16.11.0 || ^17.0.0 || ^18.0.0
+
+  synckit@0.9.2:
+    resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==}
+    engines: {node: ^14.18.0 || >=16.0.0}
+
+  system-architecture@0.1.0:
+    resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==}
+    engines: {node: '>=18'}
+
+  tabbable@5.3.3:
+    resolution: {integrity: sha512-QD9qKY3StfbZqWOPLp0++pOrAVb/HbUi5xCc8cUo4XjP19808oaMiDzn0leBY5mCespIBM0CIZePzZjgzR83kA==}
+
+  tailwindcss@3.4.10:
+    resolution: {integrity: sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w==}
+    engines: {node: '>=14.0.0'}
+    hasBin: true
+
+  tapable@2.2.1:
+    resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
+    engines: {node: '>=6'}
+
+  temp-dir@3.0.0:
+    resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==}
+    engines: {node: '>=14.16'}
+
+  temp@0.8.4:
+    resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==}
+    engines: {node: '>=6.0.0'}
+
+  tempy@3.1.0:
+    resolution: {integrity: sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==}
+    engines: {node: '>=14.16'}
+
+  terser@5.34.1:
+    resolution: {integrity: sha512-FsJZ7iZLd/BXkz+4xrRTGJ26o/6VTjQytUk8b8OxkwcD2I+79VPJlz7qss1+zE7h8GNIScFqXcDyJ/KqBYZFVA==}
+    engines: {node: '>=10'}
+    hasBin: true
+
+  text-extensions@1.9.0:
+    resolution: {integrity: sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==}
+    engines: {node: '>=0.10'}
+
+  text-extensions@2.4.0:
+    resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==}
+    engines: {node: '>=8'}
+
+  text-table@0.2.0:
+    resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
+
+  thenify-all@1.6.0:
+    resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
+    engines: {node: '>=0.8'}
+
+  thenify@3.3.1:
+    resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
+
+  thread-stream@0.15.2:
+    resolution: {integrity: sha512-UkEhKIg2pD+fjkHQKyJO3yoIvAP3N6RlNFt2dUhcS1FGvCD1cQa1M/PGknCLFIyZdtJOWQjejp7bdNqmN7zwdA==}
+
+  three@0.169.0:
+    resolution: {integrity: sha512-Ed906MA3dR4TS5riErd4QBsRGPcx+HBDX2O5yYE5GqJeFQTPU+M56Va/f/Oph9X7uZo3W3o4l2ZhBZ6f6qUv0w==}
+
+  throat@5.0.0:
+    resolution: {integrity: sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==}
+
+  through2@2.0.5:
+    resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==}
+
+  through2@4.0.2:
+    resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==}
+
+  through@2.3.8:
+    resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
+
+  tiny-glob@0.2.9:
+    resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==}
+
+  tinybench@2.9.0:
+    resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
+
+  tinypool@0.8.4:
+    resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==}
+    engines: {node: '>=14.0.0'}
+
+  tinyspy@2.2.1:
+    resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==}
+    engines: {node: '>=14.0.0'}
+
+  tmpl@1.0.5:
+    resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==}
+
+  to-fast-properties@2.0.0:
+    resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
+    engines: {node: '>=4'}
+
+  to-regex-range@5.0.1:
+    resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
+    engines: {node: '>=8.0'}
+
+  toggle-selection@1.0.6:
+    resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==}
+
+  toidentifier@1.0.1:
+    resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==}
+    engines: {node: '>=0.6'}
+
+  totalist@3.0.1:
+    resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
+    engines: {node: '>=6'}
+
+  tough-cookie@4.1.4:
+    resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==}
+    engines: {node: '>=6'}
+
+  tr46@0.0.3:
+    resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
+
+  traverse@0.6.8:
+    resolution: {integrity: sha512-aXJDbk6SnumuaZSANd21XAo15ucCDE38H4fkqiGsc3MhCK+wOlZvLP9cB/TvpHT0mOyWgC4Z8EwRlzqYSUzdsA==}
+    engines: {node: '>= 0.4'}
+
+  trim-newlines@3.0.1:
+    resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==}
+    engines: {node: '>=8'}
+
+  trpc-browser@1.4.2:
+    resolution: {integrity: sha512-A4p5LtEiI81fEBi/RduirnXx6MrbKab+qpu9lzYONVEVHeWkXzmIzGlG2gfowWgBmxtKKjku8F3fZTrPxl93Gw==}
+    peerDependencies:
+      '@trpc/client': ^10.0.0
+      '@trpc/server': ^10.0.0
+
+  ts-api-utils@1.3.0:
+    resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==}
+    engines: {node: '>=16'}
+    peerDependencies:
+      typescript: '>=4.2.0'
+
+  ts-custom-error@3.3.1:
+    resolution: {integrity: sha512-5OX1tzOjxWEgsr/YEUWSuPrQ00deKLh6D7OTWcvNHm12/7QPyRh8SYpyWvA4IZv8H/+GQWQEh/kwo95Q9OVW1A==}
+    engines: {node: '>=14.0.0'}
+
+  ts-interface-checker@0.1.13:
+    resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
+
+  ts-mixer@6.0.4:
+    resolution: {integrity: sha512-ufKpbmrugz5Aou4wcr5Wc1UUFWOLhq+Fm6qa6P0w0K5Qw2yhaUoiWszhCVuNQyNwrlGiscHOmqYoAox1PtvgjA==}
+
+  ts-node@10.9.2:
+    resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
+    hasBin: true
+    peerDependencies:
+      '@swc/core': '>=1.2.50'
+      '@swc/wasm': '>=1.2.50'
+      '@types/node': '*'
+      typescript: '>=2.7'
+    peerDependenciesMeta:
+      '@swc/core':
+        optional: true
+      '@swc/wasm':
+        optional: true
+
+  tsconfig-paths@3.15.0:
+    resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==}
+
+  tslib@1.14.1:
+    resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
+
+  tslib@2.4.0:
+    resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==}
+
+  tslib@2.6.3:
+    resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==}
+
+  type-check@0.4.0:
+    resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
+    engines: {node: '>= 0.8.0'}
+
+  type-detect@4.0.8:
+    resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
+    engines: {node: '>=4'}
+
+  type-detect@4.1.0:
+    resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==}
+    engines: {node: '>=4'}
+
+  type-fest@0.18.1:
+    resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==}
+    engines: {node: '>=10'}
+
+  type-fest@0.20.2:
+    resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
+    engines: {node: '>=10'}
+
+  type-fest@0.6.0:
+    resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
+    engines: {node: '>=8'}
+
+  type-fest@0.7.1:
+    resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==}
+    engines: {node: '>=8'}
+
+  type-fest@0.8.1:
+    resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
+    engines: {node: '>=8'}
+
+  type-fest@1.4.0:
+    resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
+    engines: {node: '>=10'}
+
+  type-fest@2.19.0:
+    resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
+    engines: {node: '>=12.20'}
+
+  type-fest@3.13.1:
+    resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==}
+    engines: {node: '>=14.16'}
+
+  type-fest@4.24.0:
+    resolution: {integrity: sha512-spAaHzc6qre0TlZQQ2aA/nGMe+2Z/wyGk5Z+Ru2VUfdNwT6kWO6TjevOlpebsATEG1EIQ2sOiDszud3lO5mt/Q==}
+    engines: {node: '>=16'}
+
+  typed-array-buffer@1.0.2:
+    resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==}
+    engines: {node: '>= 0.4'}
+
+  typed-array-byte-length@1.0.1:
+    resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==}
+    engines: {node: '>= 0.4'}
+
+  typed-array-byte-offset@1.0.2:
+    resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==}
+    engines: {node: '>= 0.4'}
+
+  typed-array-length@1.0.6:
+    resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==}
+    engines: {node: '>= 0.4'}
+
+  typescript@3.9.10:
+    resolution: {integrity: sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==}
+    engines: {node: '>=4.2.0'}
+    hasBin: true
+
+  typescript@5.4.2:
+    resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==}
+    engines: {node: '>=14.17'}
+    hasBin: true
+
+  typescript@5.5.4:
+    resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==}
+    engines: {node: '>=14.17'}
+    hasBin: true
+
+  ua-parser-js@1.0.39:
+    resolution: {integrity: sha512-k24RCVWlEcjkdOxYmVJgeD/0a1TiSpqLg+ZalVGV9lsnr4yqu0w7tX/x2xX6G4zpkgQnRf89lxuZ1wsbjXM8lw==}
+    hasBin: true
+
+  ufo@1.5.4:
+    resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==}
+
+  uglify-js@3.19.2:
+    resolution: {integrity: sha512-S8KA6DDI47nQXJSi2ctQ629YzwOVs+bQML6DAtvy0wgNdpi+0ySpQK0g2pxBq2xfF2z3YCscu7NNA8nXT9PlIQ==}
+    engines: {node: '>=0.8.0'}
+    hasBin: true
+
+  uint8arrays@3.1.0:
+    resolution: {integrity: sha512-ei5rfKtoRO8OyOIor2Rz5fhzjThwIHJZ3uyDPnDHTXbP0aMQ1RN/6AI5B5d9dBxJOU+BvOAk7ZQ1xphsX8Lrog==}
+
+  unbox-primitive@1.0.2:
+    resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
+
+  uncrypto@0.1.3:
+    resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
+
+  undici-types@5.26.5:
+    resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
+
+  unenv@1.10.0:
+    resolution: {integrity: sha512-wY5bskBQFL9n3Eca5XnhH6KbUo/tfvkwm9OpcdCvLaeA7piBNbavbOKJySEwQ1V0RH6HvNlSAFRTpvTqgKRQXQ==}
+
+  unfetch@4.2.0:
+    resolution: {integrity: sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==}
+
+  unicode-canonical-property-names-ecmascript@2.0.1:
+    resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==}
+    engines: {node: '>=4'}
+
+  unicode-match-property-ecmascript@2.0.0:
+    resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==}
+    engines: {node: '>=4'}
+
+  unicode-match-property-value-ecmascript@2.2.0:
+    resolution: {integrity: sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==}
+    engines: {node: '>=4'}
+
+  unicode-property-aliases-ecmascript@2.1.0:
+    resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==}
+    engines: {node: '>=4'}
+
+  unicorn-magic@0.1.0:
+    resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==}
+    engines: {node: '>=18'}
+
+  unique-string@3.0.0:
+    resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==}
+    engines: {node: '>=12'}
+
+  universal-user-agent@6.0.1:
+    resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==}
+
+  universalify@0.1.2:
+    resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
+    engines: {node: '>= 4.0.0'}
+
+  universalify@0.2.0:
+    resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==}
+    engines: {node: '>= 4.0.0'}
+
+  universalify@2.0.1:
+    resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
+    engines: {node: '>= 10.0.0'}
+
+  unpipe@1.0.0:
+    resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
+    engines: {node: '>= 0.8'}
+
+  unstorage@1.10.2:
+    resolution: {integrity: sha512-cULBcwDqrS8UhlIysUJs2Dk0Mmt8h7B0E6mtR+relW9nZvsf/u4SkAYyNliPiPW7XtFNb5u3IUMkxGxFTTRTgQ==}
+    peerDependencies:
+      '@azure/app-configuration': ^1.5.0
+      '@azure/cosmos': ^4.0.0
+      '@azure/data-tables': ^13.2.2
+      '@azure/identity': ^4.0.1
+      '@azure/keyvault-secrets': ^4.8.0
+      '@azure/storage-blob': ^12.17.0
+      '@capacitor/preferences': ^5.0.7
+      '@netlify/blobs': ^6.5.0 || ^7.0.0
+      '@planetscale/database': ^1.16.0
+      '@upstash/redis': ^1.28.4
+      '@vercel/kv': ^1.0.1
+      idb-keyval: ^6.2.1
+      ioredis: ^5.3.2
+    peerDependenciesMeta:
+      '@azure/app-configuration':
+        optional: true
+      '@azure/cosmos':
+        optional: true
+      '@azure/data-tables':
+        optional: true
+      '@azure/identity':
+        optional: true
+      '@azure/keyvault-secrets':
+        optional: true
+      '@azure/storage-blob':
+        optional: true
+      '@capacitor/preferences':
+        optional: true
+      '@netlify/blobs':
+        optional: true
+      '@planetscale/database':
+        optional: true
+      '@upstash/redis':
+        optional: true
+      '@vercel/kv':
+        optional: true
+      idb-keyval:
+        optional: true
+      ioredis:
+        optional: true
+
+  untun@0.1.3:
+    resolution: {integrity: sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==}
+    hasBin: true
+
+  update-browserslist-db@1.1.0:
+    resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==}
+    hasBin: true
+    peerDependencies:
+      browserslist: '>= 4.21.0'
+
+  uqr@0.1.2:
+    resolution: {integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==}
+
+  uri-js@4.4.1:
+    resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+
+  url-join@4.0.1:
+    resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==}
+
+  url-join@5.0.0:
+    resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==}
+    engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+  url-parse@1.5.10:
+    resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
+
+  use-callback-ref@1.3.2:
+    resolution: {integrity: sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==}
+    engines: {node: '>=10'}
+    peerDependencies:
+      '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
+
+  use-isomorphic-layout-effect@1.1.2:
+    resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==}
+    peerDependencies:
+      '@types/react': '*'
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
+
+  use-sidecar@1.1.2:
+    resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==}
+    engines: {node: '>=10'}
+    peerDependencies:
+      '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
+
+  use-subscription@1.8.2:
+    resolution: {integrity: sha512-yC2ShScvQ1lAGRp5Y6pz1MqBIU81REfJ/sQIe16BCgKK9mRlZCnU90uY0alKsN6e/Next0vXTsvH3HbAfdH68w==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+
+  use-sync-external-store@1.2.0:
+    resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+
+  use-sync-external-store@1.2.2:
+    resolution: {integrity: sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0
+
+  util-deprecate@1.0.2:
+    resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+
+  utils-merge@1.0.1:
+    resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==}
+    engines: {node: '>= 0.4.0'}
+
+  v8-compile-cache-lib@3.0.1:
+    resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==}
+
+  validate-npm-package-license@3.0.4:
+    resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
+
+  validator@13.12.0:
+    resolution: {integrity: sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==}
+    engines: {node: '>= 0.10'}
+
+  valtio@1.11.2:
+    resolution: {integrity: sha512-1XfIxnUXzyswPAPXo1P3Pdx2mq/pIqZICkWN60Hby0d9Iqb+MEIpqgYVlbflvHdrp2YR/q3jyKWRPJJ100yxaw==}
+    engines: {node: '>=12.20.0'}
+    peerDependencies:
+      '@types/react': '>=16.8'
+      react: '>=16.8'
+    peerDependenciesMeta:
+      '@types/react':
+        optional: true
+      react:
+        optional: true
+
+  vary@1.1.2:
+    resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
+    engines: {node: '>= 0.8'}
+
+  vite-node@1.6.0:
+    resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==}
+    engines: {node: ^18.0.0 || >=20.0.0}
+    hasBin: true
+
+  vite-plugin-dts@3.9.1:
+    resolution: {integrity: sha512-rVp2KM9Ue22NGWB8dNtWEr+KekN3rIgz1tWD050QnRGlriUCmaDwa7qA5zDEjbXg5lAXhYMSBJtx3q3hQIJZSg==}
+    engines: {node: ^14.18.0 || >=16.0.0}
+    peerDependencies:
+      typescript: '*'
+      vite: '*'
+    peerDependenciesMeta:
+      vite:
+        optional: true
+
+  vite@4.5.3:
+    resolution: {integrity: sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==}
+    engines: {node: ^14.18.0 || >=16.0.0}
+    hasBin: true
+    peerDependencies:
+      '@types/node': '>= 14'
+      less: '*'
+      lightningcss: ^1.21.0
+      sass: '*'
+      stylus: '*'
+      sugarss: '*'
+      terser: ^5.4.0
+    peerDependenciesMeta:
+      '@types/node':
+        optional: true
+      less:
+        optional: true
+      lightningcss:
+        optional: true
+      sass:
+        optional: true
+      stylus:
+        optional: true
+      sugarss:
+        optional: true
+      terser:
+        optional: true
+
+  vite@5.4.0:
+    resolution: {integrity: sha512-5xokfMX0PIiwCMCMb9ZJcMyh5wbBun0zUzKib+L65vAZ8GY9ePZMXxFrHbr/Kyll2+LSCY7xtERPpxkBDKngwg==}
+    engines: {node: ^18.0.0 || >=20.0.0}
+    hasBin: true
+    peerDependencies:
+      '@types/node': ^18.0.0 || >=20.0.0
+      less: '*'
+      lightningcss: ^1.21.0
+      sass: '*'
+      sass-embedded: '*'
+      stylus: '*'
+      sugarss: '*'
+      terser: ^5.4.0
+    peerDependenciesMeta:
+      '@types/node':
+        optional: true
+      less:
+        optional: true
+      lightningcss:
+        optional: true
+      sass:
+        optional: true
+      sass-embedded:
+        optional: true
+      stylus:
+        optional: true
+      sugarss:
+        optional: true
+      terser:
+        optional: true
+
+  vitefu@0.2.5:
+    resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==}
+    peerDependencies:
+      vite: ^3.0.0 || ^4.0.0 || ^5.0.0
+    peerDependenciesMeta:
+      vite:
+        optional: true
+
+  vitest@1.6.0:
+    resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==}
+    engines: {node: ^18.0.0 || >=20.0.0}
+    hasBin: true
+    peerDependencies:
+      '@edge-runtime/vm': '*'
+      '@types/node': ^18.0.0 || >=20.0.0
+      '@vitest/browser': 1.6.0
+      '@vitest/ui': 1.6.0
+      happy-dom: '*'
+      jsdom: '*'
+    peerDependenciesMeta:
+      '@edge-runtime/vm':
+        optional: true
+      '@types/node':
+        optional: true
+      '@vitest/browser':
+        optional: true
+      '@vitest/ui':
+        optional: true
+      happy-dom:
+        optional: true
+      jsdom:
+        optional: true
+
+  vlq@1.0.1:
+    resolution: {integrity: sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==}
+
+  vue-template-compiler@2.7.16:
+    resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==}
+
+  vue-tsc@1.8.27:
+    resolution: {integrity: sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==}
+    hasBin: true
+    peerDependencies:
+      typescript: '*'
+
+  walker@1.0.8:
+    resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==}
+
+  warning@4.0.3:
+    resolution: {integrity: sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==}
+
+  wcwidth@1.0.1:
+    resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
+
+  webidl-conversions@3.0.1:
+    resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
+
+  whatwg-fetch@3.6.20:
+    resolution: {integrity: sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==}
+
+  whatwg-url@5.0.0:
+    resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
+
+  which-boxed-primitive@1.0.2:
+    resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
+
+  which-builtin-type@1.1.4:
+    resolution: {integrity: sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==}
+    engines: {node: '>= 0.4'}
+
+  which-collection@1.0.2:
+    resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==}
+    engines: {node: '>= 0.4'}
+
+  which-module@2.0.1:
+    resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==}
+
+  which-typed-array@1.1.15:
+    resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==}
+    engines: {node: '>= 0.4'}
+
+  which@2.0.2:
+    resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
+    engines: {node: '>= 8'}
+    hasBin: true
+
+  why-is-node-running@2.3.0:
+    resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==}
+    engines: {node: '>=8'}
+    hasBin: true
+
+  word-wrap@1.2.5:
+    resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
+    engines: {node: '>=0.10.0'}
+
+  wordwrap@1.0.0:
+    resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==}
+
+  wrap-ansi@6.2.0:
+    resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
+    engines: {node: '>=8'}
+
+  wrap-ansi@7.0.0:
+    resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
+    engines: {node: '>=10'}
+
+  wrap-ansi@8.1.0:
+    resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
+    engines: {node: '>=12'}
+
+  wrappy@1.0.2:
+    resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+
+  write-file-atomic@2.4.3:
+    resolution: {integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==}
+
+  ws@6.2.3:
+    resolution: {integrity: sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==}
+    peerDependencies:
+      bufferutil: ^4.0.1
+      utf-8-validate: ^5.0.2
+    peerDependenciesMeta:
+      bufferutil:
+        optional: true
+      utf-8-validate:
+        optional: true
+
+  ws@7.5.10:
+    resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==}
+    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
+
+  ws@8.18.0:
+    resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==}
+    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
+
+  xstate@4.38.3:
+    resolution: {integrity: sha512-SH7nAaaPQx57dx6qvfcIgqKRXIh4L0A1iYEqim4s1u7c9VoCgzZc+63FY90AKU4ZzOC2cfJzTnpO4zK7fCUzzw==}
+
+  xtend@4.0.2:
+    resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
+    engines: {node: '>=0.4'}
+
+  y18n@4.0.3:
+    resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==}
+
+  y18n@5.0.8:
+    resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
+    engines: {node: '>=10'}
+
+  yallist@3.1.1:
+    resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
+
+  yallist@4.0.0:
+    resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
+
+  yaml@1.10.2:
+    resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
+    engines: {node: '>= 6'}
+
+  yaml@2.3.1:
+    resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==}
+    engines: {node: '>= 14'}
+
+  yaml@2.5.0:
+    resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==}
+    engines: {node: '>= 14'}
+    hasBin: true
+
+  yargs-parser@18.1.3:
+    resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==}
+    engines: {node: '>=6'}
+
+  yargs-parser@20.2.9:
+    resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
+    engines: {node: '>=10'}
+
+  yargs-parser@21.1.1:
+    resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
+    engines: {node: '>=12'}
+
+  yargs@15.4.1:
+    resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==}
+    engines: {node: '>=8'}
+
+  yargs@17.7.2:
+    resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
+    engines: {node: '>=12'}
+
+  yn@3.1.1:
+    resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==}
+    engines: {node: '>=6'}
+
+  yocto-queue@0.1.0:
+    resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
+    engines: {node: '>=10'}
+
+  yocto-queue@1.1.1:
+    resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==}
+    engines: {node: '>=12.20'}
+
+  z-schema@5.0.5:
+    resolution: {integrity: sha512-D7eujBWkLa3p2sIpJA0d1pr7es+a7m0vFAnZLlCEKq/Ij2k0MLi9Br2UPxoxdYystm5K1yeBGzub0FlYUEWj2Q==}
+    engines: {node: '>=8.0.0'}
+    hasBin: true
+
+  zdog@1.1.3:
+    resolution: {integrity: sha512-raRj6r0gPzopFm5XWBJZr/NuV4EEnT4iE+U3dp5FV5pCb588Gmm3zLIp/j9yqqcMiHH8VNQlerLTgOqL7krh6w==}
+
+  zod@3.23.8:
+    resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
+
+  zustand@3.7.2:
+    resolution: {integrity: sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==}
+    engines: {node: '>=12.7.0'}
+    peerDependencies:
+      react: '>=16.8'
+    peerDependenciesMeta:
+      react:
+        optional: true
+
+snapshots:
+
+  '@alloc/quick-lru@5.2.0': {}
+
+  '@ampproject/remapping@2.3.0':
+    dependencies:
+      '@jridgewell/gen-mapping': 0.3.5
+      '@jridgewell/trace-mapping': 0.3.25
+
+  '@argent/x-multicall@7.1.0(typescript@5.5.4)':
+    dependencies:
+      dataloader: 2.2.2
+      typescript: 5.5.4
+
+  '@argent/x-shared@1.39.0(@scure/base@1.1.9)(@scure/bip39@1.4.0)(async-retry@1.3.3)(lodash-es@4.17.21)(typescript@5.5.4)(ua-parser-js@1.0.39)(url-join@5.0.0)(zod@3.23.8)':
+    dependencies:
+      '@argent/x-multicall': 7.1.0(typescript@5.5.4)
+      '@noble/hashes': 1.5.0
+      '@scure/base': 1.1.9
+      '@scure/bip39': 1.4.0
+      '@starknet-io/types-js': 0.7.7
+      async-retry: 1.3.3
+      big-decimal-number: bignumber.js@9.1.2
+      lodash-es: 4.17.21
+      micro-starknet: 0.2.3
+      starknet: 6.11.0
+      starknet4-deprecated: starknet@4.4.0
+      starknet5: starknet@5.25.0
+      ua-parser-js: 1.0.39
+      url-join: 5.0.0
+      zod: 3.23.8
+    transitivePeerDependencies:
+      - encoding
+      - typescript
+
+  '@argent/x-ui@file:../x-ui(cxhmlpreo3ggzh3aziih4sur7e)':
+    dependencies:
+      '@argent/x-shared': 1.39.0(@scure/base@1.1.9)(@scure/bip39@1.4.0)(async-retry@1.3.3)(lodash-es@4.17.21)(typescript@5.5.4)(ua-parser-js@1.0.39)(url-join@5.0.0)(zod@3.23.8)
+      '@chakra-ui/react': 2.10.2(@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1))(@types/react@18.3.11)(react@18.3.1))(@types/react@18.3.11)(framer-motion@11.11.7(@emotion/is-prop-valid@1.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+      '@emotion/react': 11.13.3(@types/react@18.3.11)(react@18.3.1)
+      '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1))(@types/react@18.3.11)(react@18.3.1)
+      '@scure/bip39': 1.4.0
+      '@starknet-io/types-js': 0.7.7
+      '@zxcvbn-ts/core': 3.0.4
+      '@zxcvbn-ts/language-common': 3.0.4
+      '@zxcvbn-ts/language-en': 3.0.2
+      colord: 2.9.3
+      emittery: 1.0.3
+      framer-motion: 11.11.7(@emotion/is-prop-valid@1.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+      history: 5.3.0
+      lightweight-charts: 4.2.1
+      lodash-es: 4.17.21
+      object-hash: 3.0.0
+      popmotion: 11.0.5
+      react: 18.3.1
+      react-copy-to-clipboard: 5.1.0(react@18.3.1)
+      react-dom: 18.3.1(react@18.3.1)
+      react-router-dom: 6.26.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+      react-spring-bottom-sheet: 3.5.0-alpha.0(@react-three/fiber@8.17.10(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)(three@0.169.0))(@types/react@18.3.11)(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react-konva@18.2.10(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react-zdog@1.2.2)(react@18.3.1)(three@0.169.0)(zdog@1.1.3)
+      react-virtuoso: 4.10.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+      starknet: 6.11.0
+      swr: 1.3.0(react@18.3.1)
+      zod: 3.23.8
+
+  '@babel/code-frame@7.24.7':
+    dependencies:
+      '@babel/highlight': 7.24.7
+      picocolors: 1.0.1
+
+  '@babel/code-frame@7.25.7':
+    dependencies:
+      '@babel/highlight': 7.25.7
+      picocolors: 1.0.1
+
+  '@babel/compat-data@7.25.2': {}
+
+  '@babel/compat-data@7.25.8': {}
+
+  '@babel/core@7.25.2':
+    dependencies:
+      '@ampproject/remapping': 2.3.0
+      '@babel/code-frame': 7.24.7
+      '@babel/generator': 7.25.0
+      '@babel/helper-compilation-targets': 7.25.2
+      '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2)
+      '@babel/helpers': 7.25.0
+      '@babel/parser': 7.25.3
+      '@babel/template': 7.25.0
+      '@babel/traverse': 7.25.3
+      '@babel/types': 7.25.2
+      convert-source-map: 2.0.0
+      debug: 4.3.6
+      gensync: 1.0.0-beta.2
+      json5: 2.2.3
+      semver: 6.3.1
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/generator@7.25.0':
+    dependencies:
+      '@babel/types': 7.25.2
+      '@jridgewell/gen-mapping': 0.3.5
+      '@jridgewell/trace-mapping': 0.3.25
+      jsesc: 2.5.2
+
+  '@babel/generator@7.25.7':
+    dependencies:
+      '@babel/types': 7.25.8
+      '@jridgewell/gen-mapping': 0.3.5
+      '@jridgewell/trace-mapping': 0.3.25
+      jsesc: 3.0.2
+
+  '@babel/helper-annotate-as-pure@7.25.7':
+    dependencies:
+      '@babel/types': 7.25.8
+
+  '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7':
+    dependencies:
+      '@babel/traverse': 7.25.7
+      '@babel/types': 7.25.8
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-compilation-targets@7.25.2':
+    dependencies:
+      '@babel/compat-data': 7.25.2
+      '@babel/helper-validator-option': 7.24.8
+      browserslist: 4.23.3
+      lru-cache: 5.1.1
+      semver: 6.3.1
+
+  '@babel/helper-compilation-targets@7.25.7':
+    dependencies:
+      '@babel/compat-data': 7.25.8
+      '@babel/helper-validator-option': 7.25.7
+      browserslist: 4.24.0
+      lru-cache: 5.1.1
+      semver: 6.3.1
+
+  '@babel/helper-create-class-features-plugin@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-annotate-as-pure': 7.25.7
+      '@babel/helper-member-expression-to-functions': 7.25.7
+      '@babel/helper-optimise-call-expression': 7.25.7
+      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
+      '@babel/traverse': 7.25.7
+      semver: 6.3.1
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-create-regexp-features-plugin@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-annotate-as-pure': 7.25.7
+      regexpu-core: 6.1.1
+      semver: 6.3.1
+
+  '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-compilation-targets': 7.25.7
+      '@babel/helper-plugin-utils': 7.25.7
+      debug: 4.3.6
+      lodash.debounce: 4.0.8
+      resolve: 1.22.8
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-member-expression-to-functions@7.25.7':
+    dependencies:
+      '@babel/traverse': 7.25.7
+      '@babel/types': 7.25.8
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-module-imports@7.24.7':
+    dependencies:
+      '@babel/traverse': 7.25.3
+      '@babel/types': 7.25.2
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-module-imports@7.25.7':
+    dependencies:
+      '@babel/traverse': 7.25.7
+      '@babel/types': 7.25.8
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-module-imports': 7.24.7
+      '@babel/helper-simple-access': 7.24.7
+      '@babel/helper-validator-identifier': 7.24.7
+      '@babel/traverse': 7.25.3
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-module-transforms@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-module-imports': 7.25.7
+      '@babel/helper-simple-access': 7.25.7
+      '@babel/helper-validator-identifier': 7.25.7
+      '@babel/traverse': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-optimise-call-expression@7.25.7':
+    dependencies:
+      '@babel/types': 7.25.8
+
+  '@babel/helper-plugin-utils@7.25.7': {}
+
+  '@babel/helper-remap-async-to-generator@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-annotate-as-pure': 7.25.7
+      '@babel/helper-wrap-function': 7.25.7
+      '@babel/traverse': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-replace-supers@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-member-expression-to-functions': 7.25.7
+      '@babel/helper-optimise-call-expression': 7.25.7
+      '@babel/traverse': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-simple-access@7.24.7':
+    dependencies:
+      '@babel/traverse': 7.25.3
+      '@babel/types': 7.25.2
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-simple-access@7.25.7':
+    dependencies:
+      '@babel/traverse': 7.25.7
+      '@babel/types': 7.25.8
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-skip-transparent-expression-wrappers@7.25.7':
+    dependencies:
+      '@babel/traverse': 7.25.7
+      '@babel/types': 7.25.8
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helper-string-parser@7.24.8': {}
+
+  '@babel/helper-string-parser@7.25.7': {}
+
+  '@babel/helper-validator-identifier@7.24.7': {}
+
+  '@babel/helper-validator-identifier@7.25.7': {}
+
+  '@babel/helper-validator-option@7.24.8': {}
+
+  '@babel/helper-validator-option@7.25.7': {}
+
+  '@babel/helper-wrap-function@7.25.7':
+    dependencies:
+      '@babel/template': 7.25.7
+      '@babel/traverse': 7.25.7
+      '@babel/types': 7.25.8
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/helpers@7.25.0':
+    dependencies:
+      '@babel/template': 7.25.0
+      '@babel/types': 7.25.2
+
+  '@babel/highlight@7.24.7':
+    dependencies:
+      '@babel/helper-validator-identifier': 7.24.7
+      chalk: 2.4.2
+      js-tokens: 4.0.0
+      picocolors: 1.0.1
+
+  '@babel/highlight@7.25.7':
+    dependencies:
+      '@babel/helper-validator-identifier': 7.25.7
+      chalk: 2.4.2
+      js-tokens: 4.0.0
+      picocolors: 1.0.1
+
+  '@babel/parser@7.25.3':
+    dependencies:
+      '@babel/types': 7.25.2
+
+  '@babel/parser@7.25.8':
+    dependencies:
+      '@babel/types': 7.25.8
+
+  '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/traverse': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
+      '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.25.2)
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/traverse': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-proposal-export-default-from@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2)
+
+  '@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
+      '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2)
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+
+  '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-syntax-export-default-from@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-syntax-flow@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-syntax-import-assertions@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-syntax-import-attributes@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-syntax-jsx@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-syntax-typescript@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-arrow-functions@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-async-generator-functions@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.2)
+      '@babel/traverse': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-transform-async-to-generator@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-module-imports': 7.25.7
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.2)
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-transform-block-scoped-functions@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-block-scoping@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-class-properties@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-transform-class-static-block@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-transform-classes@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-annotate-as-pure': 7.25.7
+      '@babel/helper-compilation-targets': 7.25.7
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.2)
+      '@babel/traverse': 7.25.7
+      globals: 11.12.0
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-transform-computed-properties@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/template': 7.25.7
+
+  '@babel/plugin-transform-destructuring@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-dotall-regex@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-duplicate-keys@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-dynamic-import@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-exponentiation-operator@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.7
+      '@babel/helper-plugin-utils': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-transform-export-namespace-from@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-flow-strip-types@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/plugin-syntax-flow': 7.25.7(@babel/core@7.25.2)
+
+  '@babel/plugin-transform-for-of@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-transform-function-name@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-compilation-targets': 7.25.7
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/traverse': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/plugin-transform-json-strings@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-literals@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  y18n@4.0.3:
-    resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==}
+  '@babel/plugin-transform-logical-assignment-operators@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  y18n@5.0.8:
-    resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
-    engines: {node: '>=10'}
+  '@babel/plugin-transform-member-expression-literals@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  yallist@3.1.1:
-    resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
+  '@babel/plugin-transform-modules-amd@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
 
-  yallist@4.0.0:
-    resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
+  '@babel/plugin-transform-modules-commonjs@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-simple-access': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
 
-  yaml@2.3.1:
-    resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==}
-    engines: {node: '>= 14'}
+  '@babel/plugin-transform-modules-systemjs@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-validator-identifier': 7.25.7
+      '@babel/traverse': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
 
-  yaml@2.5.0:
-    resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==}
-    engines: {node: '>= 14'}
-    hasBin: true
+  '@babel/plugin-transform-modules-umd@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
 
-  yargs-parser@18.1.3:
-    resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==}
-    engines: {node: '>=6'}
+  '@babel/plugin-transform-named-capturing-groups-regex@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
 
-  yargs-parser@20.2.9:
-    resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
-    engines: {node: '>=10'}
+  '@babel/plugin-transform-new-target@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  yargs-parser@21.1.1:
-    resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
-    engines: {node: '>=12'}
+  '@babel/plugin-transform-nullish-coalescing-operator@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  yargs@15.4.1:
-    resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==}
-    engines: {node: '>=8'}
+  '@babel/plugin-transform-numeric-separator@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  yargs@17.7.2:
-    resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
-    engines: {node: '>=12'}
+  '@babel/plugin-transform-object-rest-spread@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-compilation-targets': 7.25.7
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.2)
 
-  yn@3.1.1:
-    resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==}
-    engines: {node: '>=6'}
+  '@babel/plugin-transform-object-super@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.2)
+    transitivePeerDependencies:
+      - supports-color
 
-  yocto-queue@0.1.0:
-    resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
-    engines: {node: '>=10'}
+  '@babel/plugin-transform-optional-catch-binding@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  yocto-queue@1.1.1:
-    resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==}
-    engines: {node: '>=12.20'}
+  '@babel/plugin-transform-optional-chaining@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
 
-  z-schema@5.0.5:
-    resolution: {integrity: sha512-D7eujBWkLa3p2sIpJA0d1pr7es+a7m0vFAnZLlCEKq/Ij2k0MLi9Br2UPxoxdYystm5K1yeBGzub0FlYUEWj2Q==}
-    engines: {node: '>=8.0.0'}
-    hasBin: true
+  '@babel/plugin-transform-parameters@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  zod@3.23.8:
-    resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
+  '@babel/plugin-transform-private-methods@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
 
-snapshots:
+  '@babel/plugin-transform-private-property-in-object@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-annotate-as-pure': 7.25.7
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+    transitivePeerDependencies:
+      - supports-color
 
-  '@alloc/quick-lru@5.2.0': {}
+  '@babel/plugin-transform-property-literals@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  '@ampproject/remapping@2.3.0':
+  '@babel/plugin-transform-react-display-name@7.25.7(@babel/core@7.25.2)':
     dependencies:
-      '@jridgewell/gen-mapping': 0.3.5
-      '@jridgewell/trace-mapping': 0.3.25
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  '@babel/code-frame@7.24.7':
+  '@babel/plugin-transform-react-jsx-self@7.25.7(@babel/core@7.25.2)':
     dependencies:
-      '@babel/highlight': 7.24.7
-      picocolors: 1.0.1
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  '@babel/compat-data@7.25.2': {}
+  '@babel/plugin-transform-react-jsx-source@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
 
-  '@babel/core@7.25.2':
+  '@babel/plugin-transform-react-jsx@7.25.7(@babel/core@7.25.2)':
     dependencies:
-      '@ampproject/remapping': 2.3.0
-      '@babel/code-frame': 7.24.7
-      '@babel/generator': 7.25.0
-      '@babel/helper-compilation-targets': 7.25.2
-      '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2)
-      '@babel/helpers': 7.25.0
-      '@babel/parser': 7.25.3
-      '@babel/template': 7.25.0
-      '@babel/traverse': 7.25.3
-      '@babel/types': 7.25.2
-      convert-source-map: 2.0.0
-      debug: 4.3.6
-      gensync: 1.0.0-beta.2
-      json5: 2.2.3
-      semver: 6.3.1
+      '@babel/core': 7.25.2
+      '@babel/helper-annotate-as-pure': 7.25.7
+      '@babel/helper-module-imports': 7.25.7
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/plugin-syntax-jsx': 7.25.7(@babel/core@7.25.2)
+      '@babel/types': 7.25.8
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/generator@7.25.0':
+  '@babel/plugin-transform-regenerator@7.25.7(@babel/core@7.25.2)':
     dependencies:
-      '@babel/types': 7.25.2
-      '@jridgewell/gen-mapping': 0.3.5
-      '@jridgewell/trace-mapping': 0.3.25
-      jsesc: 2.5.2
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      regenerator-transform: 0.15.2
 
-  '@babel/helper-compilation-targets@7.25.2':
+  '@babel/plugin-transform-reserved-words@7.25.7(@babel/core@7.25.2)':
     dependencies:
-      '@babel/compat-data': 7.25.2
-      '@babel/helper-validator-option': 7.24.8
-      browserslist: 4.23.3
-      lru-cache: 5.1.1
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-runtime@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-module-imports': 7.25.7
+      '@babel/helper-plugin-utils': 7.25.7
+      babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.2)
+      babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.2)
+      babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.2)
       semver: 6.3.1
+    transitivePeerDependencies:
+      - supports-color
 
-  '@babel/helper-module-imports@7.24.7':
+  '@babel/plugin-transform-shorthand-properties@7.25.7(@babel/core@7.25.2)':
     dependencies:
-      '@babel/traverse': 7.25.3
-      '@babel/types': 7.25.2
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-spread@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)':
+  '@babel/plugin-transform-sticky-regex@7.25.7(@babel/core@7.25.2)':
     dependencies:
       '@babel/core': 7.25.2
-      '@babel/helper-module-imports': 7.24.7
-      '@babel/helper-simple-access': 7.24.7
-      '@babel/helper-validator-identifier': 7.24.7
-      '@babel/traverse': 7.25.3
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-template-literals@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-typeof-symbol@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-typescript@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-annotate-as-pure': 7.25.7
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
+      '@babel/plugin-syntax-typescript': 7.25.7(@babel/core@7.25.2)
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-simple-access@7.24.7':
+  '@babel/plugin-transform-unicode-escapes@7.25.7(@babel/core@7.25.2)':
     dependencies:
-      '@babel/traverse': 7.25.3
-      '@babel/types': 7.25.2
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-unicode-property-regex@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-unicode-regex@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/plugin-transform-unicode-sets-regex@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2)
+      '@babel/helper-plugin-utils': 7.25.7
+
+  '@babel/preset-env@7.25.8(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/compat-data': 7.25.8
+      '@babel/core': 7.25.2
+      '@babel/helper-compilation-targets': 7.25.7
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-validator-option': 7.25.7
+      '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2)
+      '@babel/plugin-syntax-import-assertions': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.2)
+      '@babel/plugin-transform-arrow-functions': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-async-generator-functions': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-async-to-generator': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-block-scoped-functions': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-block-scoping': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-class-properties': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-class-static-block': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-classes': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-computed-properties': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-destructuring': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-dotall-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-duplicate-keys': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-dynamic-import': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-exponentiation-operator': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-export-namespace-from': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-for-of': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-function-name': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-json-strings': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-literals': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-logical-assignment-operators': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-member-expression-literals': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-modules-amd': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-modules-systemjs': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-modules-umd': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-new-target': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-nullish-coalescing-operator': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-numeric-separator': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-object-rest-spread': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-object-super': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-optional-catch-binding': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-private-methods': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-private-property-in-object': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-property-literals': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-regenerator': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-reserved-words': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-shorthand-properties': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-spread': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-sticky-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-template-literals': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-typeof-symbol': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-unicode-escapes': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-unicode-property-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-unicode-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-unicode-sets-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.2)
+      babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.2)
+      babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.2)
+      babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.2)
+      core-js-compat: 3.38.1
+      semver: 6.3.1
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-string-parser@7.24.8': {}
+  '@babel/preset-flow@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-validator-option': 7.25.7
+      '@babel/plugin-transform-flow-strip-types': 7.25.7(@babel/core@7.25.2)
 
-  '@babel/helper-validator-identifier@7.24.7': {}
+  '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/types': 7.25.8
+      esutils: 2.0.3
 
-  '@babel/helper-validator-option@7.24.8': {}
+  '@babel/preset-typescript@7.25.7(@babel/core@7.25.2)':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-validator-option': 7.25.7
+      '@babel/plugin-syntax-jsx': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-typescript': 7.25.7(@babel/core@7.25.2)
+    transitivePeerDependencies:
+      - supports-color
 
-  '@babel/helpers@7.25.0':
+  '@babel/register@7.25.7(@babel/core@7.25.2)':
     dependencies:
-      '@babel/template': 7.25.0
-      '@babel/types': 7.25.2
+      '@babel/core': 7.25.2
+      clone-deep: 4.0.1
+      find-cache-dir: 2.1.0
+      make-dir: 2.1.0
+      pirates: 4.0.6
+      source-map-support: 0.5.21
 
-  '@babel/highlight@7.24.7':
+  '@babel/runtime@7.25.7':
     dependencies:
-      '@babel/helper-validator-identifier': 7.24.7
-      chalk: 2.4.2
-      js-tokens: 4.0.0
-      picocolors: 1.0.1
+      regenerator-runtime: 0.14.1
 
-  '@babel/parser@7.25.3':
+  '@babel/template@7.25.0':
     dependencies:
+      '@babel/code-frame': 7.24.7
+      '@babel/parser': 7.25.3
       '@babel/types': 7.25.2
 
-  '@babel/template@7.25.0':
+  '@babel/template@7.25.7':
+    dependencies:
+      '@babel/code-frame': 7.25.7
+      '@babel/parser': 7.25.8
+      '@babel/types': 7.25.8
+
+  '@babel/traverse@7.25.3':
     dependencies:
       '@babel/code-frame': 7.24.7
+      '@babel/generator': 7.25.0
       '@babel/parser': 7.25.3
+      '@babel/template': 7.25.0
       '@babel/types': 7.25.2
+      debug: 4.3.6
+      globals: 11.12.0
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/traverse@7.25.7':
+    dependencies:
+      '@babel/code-frame': 7.25.7
+      '@babel/generator': 7.25.7
+      '@babel/parser': 7.25.8
+      '@babel/template': 7.25.7
+      '@babel/types': 7.25.8
+      debug: 4.3.6
+      globals: 11.12.0
+    transitivePeerDependencies:
+      - supports-color
+
+  '@babel/types@7.25.2':
+    dependencies:
+      '@babel/helper-string-parser': 7.24.8
+      '@babel/helper-validator-identifier': 7.24.7
+      to-fast-properties: 2.0.0
+
+  '@babel/types@7.25.8':
+    dependencies:
+      '@babel/helper-string-parser': 7.25.7
+      '@babel/helper-validator-identifier': 7.25.7
+      to-fast-properties: 2.0.0
+
+  '@chakra-ui/anatomy@2.3.4': {}
+
+  '@chakra-ui/hooks@2.4.2(react@18.3.1)':
+    dependencies:
+      '@chakra-ui/utils': 2.2.2(react@18.3.1)
+      '@zag-js/element-size': 0.31.1
+      copy-to-clipboard: 3.3.3
+      framesync: 6.1.2
+      react: 18.3.1
+
+  '@chakra-ui/react@2.10.2(@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1))(@types/react@18.3.11)(react@18.3.1))(@types/react@18.3.11)(framer-motion@11.11.7(@emotion/is-prop-valid@1.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+    dependencies:
+      '@chakra-ui/hooks': 2.4.2(react@18.3.1)
+      '@chakra-ui/styled-system': 2.11.2(react@18.3.1)
+      '@chakra-ui/theme': 3.4.6(@chakra-ui/styled-system@2.11.2(react@18.3.1))(react@18.3.1)
+      '@chakra-ui/utils': 2.2.2(react@18.3.1)
+      '@emotion/react': 11.13.3(@types/react@18.3.11)(react@18.3.1)
+      '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1))(@types/react@18.3.11)(react@18.3.1)
+      '@popperjs/core': 2.11.8
+      '@zag-js/focus-visible': 0.31.1
+      aria-hidden: 1.2.4
+      framer-motion: 11.11.7(@emotion/is-prop-valid@1.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
+      react-fast-compare: 3.2.2
+      react-focus-lock: 2.13.2(@types/react@18.3.11)(react@18.3.1)
+      react-remove-scroll: 2.6.0(@types/react@18.3.11)(react@18.3.1)
+    transitivePeerDependencies:
+      - '@types/react'
+
+  '@chakra-ui/styled-system@2.11.2(react@18.3.1)':
+    dependencies:
+      '@chakra-ui/utils': 2.2.2(react@18.3.1)
+      csstype: 3.1.3
+    transitivePeerDependencies:
+      - react
+
+  '@chakra-ui/theme-tools@2.2.6(@chakra-ui/styled-system@2.11.2(react@18.3.1))(react@18.3.1)':
+    dependencies:
+      '@chakra-ui/anatomy': 2.3.4
+      '@chakra-ui/styled-system': 2.11.2(react@18.3.1)
+      '@chakra-ui/utils': 2.2.2(react@18.3.1)
+      color2k: 2.0.3
+    transitivePeerDependencies:
+      - react
 
-  '@babel/traverse@7.25.3':
+  '@chakra-ui/theme@3.4.6(@chakra-ui/styled-system@2.11.2(react@18.3.1))(react@18.3.1)':
     dependencies:
-      '@babel/code-frame': 7.24.7
-      '@babel/generator': 7.25.0
-      '@babel/parser': 7.25.3
-      '@babel/template': 7.25.0
-      '@babel/types': 7.25.2
-      debug: 4.3.6
-      globals: 11.12.0
+      '@chakra-ui/anatomy': 2.3.4
+      '@chakra-ui/styled-system': 2.11.2(react@18.3.1)
+      '@chakra-ui/theme-tools': 2.2.6(@chakra-ui/styled-system@2.11.2(react@18.3.1))(react@18.3.1)
+      '@chakra-ui/utils': 2.2.2(react@18.3.1)
     transitivePeerDependencies:
-      - supports-color
+      - react
 
-  '@babel/types@7.25.2':
+  '@chakra-ui/utils@2.2.2(react@18.3.1)':
     dependencies:
-      '@babel/helper-string-parser': 7.24.8
-      '@babel/helper-validator-identifier': 7.24.7
-      to-fast-properties: 2.0.0
+      '@types/lodash.mergewith': 4.6.9
+      lodash.mergewith: 4.6.2
+      react: 18.3.1
 
   '@colors/colors@1.5.0':
     optional: true
@@ -4986,7 +8344,7 @@ snapshots:
       '@types/node': 20.5.1
       chalk: 4.1.2
       cosmiconfig: 8.3.6(typescript@5.5.4)
-      cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4))(typescript@5.5.4)
+      cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4))(typescript@5.5.4)
       lodash.isplainobject: 4.0.6
       lodash.merge: 4.6.2
       lodash.uniq: 4.5.0
@@ -5044,6 +8402,89 @@ snapshots:
     dependencies:
       '@jridgewell/trace-mapping': 0.3.9
 
+  '@emotion/babel-plugin@11.12.0':
+    dependencies:
+      '@babel/helper-module-imports': 7.25.7
+      '@babel/runtime': 7.25.7
+      '@emotion/hash': 0.9.2
+      '@emotion/memoize': 0.9.0
+      '@emotion/serialize': 1.3.2
+      babel-plugin-macros: 3.1.0
+      convert-source-map: 1.9.0
+      escape-string-regexp: 4.0.0
+      find-root: 1.1.0
+      source-map: 0.5.7
+      stylis: 4.2.0
+    transitivePeerDependencies:
+      - supports-color
+
+  '@emotion/cache@11.13.1':
+    dependencies:
+      '@emotion/memoize': 0.9.0
+      '@emotion/sheet': 1.4.0
+      '@emotion/utils': 1.4.1
+      '@emotion/weak-memoize': 0.4.0
+      stylis: 4.2.0
+
+  '@emotion/hash@0.9.2': {}
+
+  '@emotion/is-prop-valid@1.3.1':
+    dependencies:
+      '@emotion/memoize': 0.9.0
+
+  '@emotion/memoize@0.9.0': {}
+
+  '@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1)':
+    dependencies:
+      '@babel/runtime': 7.25.7
+      '@emotion/babel-plugin': 11.12.0
+      '@emotion/cache': 11.13.1
+      '@emotion/serialize': 1.3.2
+      '@emotion/use-insertion-effect-with-fallbacks': 1.1.0(react@18.3.1)
+      '@emotion/utils': 1.4.1
+      '@emotion/weak-memoize': 0.4.0
+      hoist-non-react-statics: 3.3.2
+      react: 18.3.1
+    optionalDependencies:
+      '@types/react': 18.3.11
+    transitivePeerDependencies:
+      - supports-color
+
+  '@emotion/serialize@1.3.2':
+    dependencies:
+      '@emotion/hash': 0.9.2
+      '@emotion/memoize': 0.9.0
+      '@emotion/unitless': 0.10.0
+      '@emotion/utils': 1.4.1
+      csstype: 3.1.3
+
+  '@emotion/sheet@1.4.0': {}
+
+  '@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1))(@types/react@18.3.11)(react@18.3.1)':
+    dependencies:
+      '@babel/runtime': 7.25.7
+      '@emotion/babel-plugin': 11.12.0
+      '@emotion/is-prop-valid': 1.3.1
+      '@emotion/react': 11.13.3(@types/react@18.3.11)(react@18.3.1)
+      '@emotion/serialize': 1.3.2
+      '@emotion/use-insertion-effect-with-fallbacks': 1.1.0(react@18.3.1)
+      '@emotion/utils': 1.4.1
+      react: 18.3.1
+    optionalDependencies:
+      '@types/react': 18.3.11
+    transitivePeerDependencies:
+      - supports-color
+
+  '@emotion/unitless@0.10.0': {}
+
+  '@emotion/use-insertion-effect-with-fallbacks@1.1.0(react@18.3.1)':
+    dependencies:
+      react: 18.3.1
+
+  '@emotion/utils@1.4.1': {}
+
+  '@emotion/weak-memoize@0.4.0': {}
+
   '@esbuild/aix-ppc64@0.21.5':
     optional: true
 
@@ -5202,6 +8643,18 @@ snapshots:
 
   '@eslint/js@8.57.0': {}
 
+  '@ethersproject/bytes@5.7.0':
+    dependencies:
+      '@ethersproject/logger': 5.7.0
+
+  '@ethersproject/logger@5.7.0': {}
+
+  '@hapi/hoek@9.3.0': {}
+
+  '@hapi/topo@5.1.0':
+    dependencies:
+      '@hapi/hoek': 9.3.0
+
   '@humanwhocodes/config-array@0.11.14':
     dependencies:
       '@humanwhocodes/object-schema': 2.0.3
@@ -5223,10 +8676,49 @@ snapshots:
       wrap-ansi: 8.1.0
       wrap-ansi-cjs: wrap-ansi@7.0.0
 
+  '@isaacs/ttlcache@1.4.1': {}
+
+  '@jest/create-cache-key-function@29.7.0':
+    dependencies:
+      '@jest/types': 29.6.3
+
+  '@jest/environment@29.7.0':
+    dependencies:
+      '@jest/fake-timers': 29.7.0
+      '@jest/types': 29.6.3
+      '@types/node': 20.14.15
+      jest-mock: 29.7.0
+
+  '@jest/fake-timers@29.7.0':
+    dependencies:
+      '@jest/types': 29.6.3
+      '@sinonjs/fake-timers': 10.3.0
+      '@types/node': 20.14.15
+      jest-message-util: 29.7.0
+      jest-mock: 29.7.0
+      jest-util: 29.7.0
+
   '@jest/schemas@29.6.3':
     dependencies:
       '@sinclair/typebox': 0.27.8
 
+  '@jest/types@26.6.2':
+    dependencies:
+      '@types/istanbul-lib-coverage': 2.0.6
+      '@types/istanbul-reports': 3.0.4
+      '@types/node': 20.14.15
+      '@types/yargs': 15.0.19
+      chalk: 4.1.2
+
+  '@jest/types@29.6.3':
+    dependencies:
+      '@jest/schemas': 29.6.3
+      '@types/istanbul-lib-coverage': 2.0.6
+      '@types/istanbul-reports': 3.0.4
+      '@types/node': 20.14.15
+      '@types/yargs': 17.0.33
+      chalk: 4.1.2
+
   '@jridgewell/gen-mapping@0.3.5':
     dependencies:
       '@jridgewell/set-array': 1.2.1
@@ -5237,6 +8729,11 @@ snapshots:
 
   '@jridgewell/set-array@1.2.1': {}
 
+  '@jridgewell/source-map@0.3.6':
+    dependencies:
+      '@jridgewell/gen-mapping': 0.3.5
+      '@jridgewell/trace-mapping': 0.3.25
+
   '@jridgewell/sourcemap-codec@1.5.0': {}
 
   '@jridgewell/trace-mapping@0.3.25':
@@ -5249,6 +8746,8 @@ snapshots:
       '@jridgewell/resolve-uri': 3.1.2
       '@jridgewell/sourcemap-codec': 1.5.0
 
+  '@juggle/resize-observer@3.4.0': {}
+
   '@lit-labs/ssr-dom-shim@1.2.1': {}
 
   '@lit/reactive-element@1.6.3':
@@ -5345,6 +8844,10 @@ snapshots:
     dependencies:
       glob: 7.1.7
 
+  '@noble/curves@1.0.0':
+    dependencies:
+      '@noble/hashes': 1.3.0
+
   '@noble/curves@1.3.0':
     dependencies:
       '@noble/hashes': 1.3.3
@@ -5353,10 +8856,18 @@ snapshots:
     dependencies:
       '@noble/hashes': 1.4.0
 
+  '@noble/hashes@1.2.0': {}
+
+  '@noble/hashes@1.3.0': {}
+
   '@noble/hashes@1.3.3': {}
 
   '@noble/hashes@1.4.0': {}
 
+  '@noble/hashes@1.5.0': {}
+
+  '@noble/secp256k1@1.7.1': {}
+
   '@nodelib/fs.scandir@2.1.5':
     dependencies:
       '@nodelib/fs.stat': 2.0.5
@@ -5438,78 +8949,459 @@ snapshots:
   '@parcel/watcher-android-arm64@2.4.1':
     optional: true
 
-  '@parcel/watcher-darwin-arm64@2.4.1':
-    optional: true
+  '@parcel/watcher-darwin-arm64@2.4.1':
+    optional: true
+
+  '@parcel/watcher-darwin-x64@2.4.1':
+    optional: true
+
+  '@parcel/watcher-freebsd-x64@2.4.1':
+    optional: true
+
+  '@parcel/watcher-linux-arm-glibc@2.4.1':
+    optional: true
+
+  '@parcel/watcher-linux-arm64-glibc@2.4.1':
+    optional: true
+
+  '@parcel/watcher-linux-arm64-musl@2.4.1':
+    optional: true
+
+  '@parcel/watcher-linux-x64-glibc@2.4.1':
+    optional: true
+
+  '@parcel/watcher-linux-x64-musl@2.4.1':
+    optional: true
+
+  '@parcel/watcher-wasm@2.4.1':
+    dependencies:
+      is-glob: 4.0.3
+      micromatch: 4.0.7
+
+  '@parcel/watcher-win32-arm64@2.4.1':
+    optional: true
+
+  '@parcel/watcher-win32-ia32@2.4.1':
+    optional: true
+
+  '@parcel/watcher-win32-x64@2.4.1':
+    optional: true
+
+  '@parcel/watcher@2.4.1':
+    dependencies:
+      detect-libc: 1.0.3
+      is-glob: 4.0.3
+      micromatch: 4.0.7
+      node-addon-api: 7.1.1
+    optionalDependencies:
+      '@parcel/watcher-android-arm64': 2.4.1
+      '@parcel/watcher-darwin-arm64': 2.4.1
+      '@parcel/watcher-darwin-x64': 2.4.1
+      '@parcel/watcher-freebsd-x64': 2.4.1
+      '@parcel/watcher-linux-arm-glibc': 2.4.1
+      '@parcel/watcher-linux-arm64-glibc': 2.4.1
+      '@parcel/watcher-linux-arm64-musl': 2.4.1
+      '@parcel/watcher-linux-x64-glibc': 2.4.1
+      '@parcel/watcher-linux-x64-musl': 2.4.1
+      '@parcel/watcher-win32-arm64': 2.4.1
+      '@parcel/watcher-win32-ia32': 2.4.1
+      '@parcel/watcher-win32-x64': 2.4.1
+
+  '@pkgjs/parseargs@0.11.0':
+    optional: true
+
+  '@pkgr/core@0.1.1': {}
+
+  '@pnpm/config.env-replace@1.1.0': {}
+
+  '@pnpm/network.ca-file@1.0.2':
+    dependencies:
+      graceful-fs: 4.2.10
+
+  '@pnpm/npm-conf@2.3.1':
+    dependencies:
+      '@pnpm/config.env-replace': 1.1.0
+      '@pnpm/network.ca-file': 1.0.2
+      config-chain: 1.1.13
+
+  '@polka/url@1.0.0-next.28': {}
+
+  '@popperjs/core@2.11.8': {}
+
+  '@reach/portal@0.13.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+    dependencies:
+      '@reach/utils': 0.13.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
+      tslib: 2.6.3
+
+  '@reach/utils@0.13.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+    dependencies:
+      '@types/warning': 3.0.3
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
+      tslib: 2.6.3
+      warning: 4.0.3
+
+  '@react-native-community/cli-clean@14.1.0':
+    dependencies:
+      '@react-native-community/cli-tools': 14.1.0
+      chalk: 4.1.2
+      execa: 5.1.1
+      fast-glob: 3.3.2
+
+  '@react-native-community/cli-config@14.1.0(typescript@5.5.4)':
+    dependencies:
+      '@react-native-community/cli-tools': 14.1.0
+      chalk: 4.1.2
+      cosmiconfig: 9.0.0(typescript@5.5.4)
+      deepmerge: 4.3.1
+      fast-glob: 3.3.2
+      joi: 17.13.3
+    transitivePeerDependencies:
+      - typescript
+
+  '@react-native-community/cli-debugger-ui@14.1.0':
+    dependencies:
+      serve-static: 1.16.2
+    transitivePeerDependencies:
+      - supports-color
+
+  '@react-native-community/cli-doctor@14.1.0(typescript@5.5.4)':
+    dependencies:
+      '@react-native-community/cli-config': 14.1.0(typescript@5.5.4)
+      '@react-native-community/cli-platform-android': 14.1.0
+      '@react-native-community/cli-platform-apple': 14.1.0
+      '@react-native-community/cli-platform-ios': 14.1.0
+      '@react-native-community/cli-tools': 14.1.0
+      chalk: 4.1.2
+      command-exists: 1.2.9
+      deepmerge: 4.3.1
+      envinfo: 7.14.0
+      execa: 5.1.1
+      node-stream-zip: 1.15.0
+      ora: 5.4.1
+      semver: 7.6.3
+      strip-ansi: 5.2.0
+      wcwidth: 1.0.1
+      yaml: 2.5.0
+    transitivePeerDependencies:
+      - typescript
+
+  '@react-native-community/cli-platform-android@14.1.0':
+    dependencies:
+      '@react-native-community/cli-tools': 14.1.0
+      chalk: 4.1.2
+      execa: 5.1.1
+      fast-glob: 3.3.2
+      fast-xml-parser: 4.5.0
+      logkitty: 0.7.1
+
+  '@react-native-community/cli-platform-apple@14.1.0':
+    dependencies:
+      '@react-native-community/cli-tools': 14.1.0
+      chalk: 4.1.2
+      execa: 5.1.1
+      fast-glob: 3.3.2
+      fast-xml-parser: 4.5.0
+      ora: 5.4.1
+
+  '@react-native-community/cli-platform-ios@14.1.0':
+    dependencies:
+      '@react-native-community/cli-platform-apple': 14.1.0
+
+  '@react-native-community/cli-server-api@14.1.0':
+    dependencies:
+      '@react-native-community/cli-debugger-ui': 14.1.0
+      '@react-native-community/cli-tools': 14.1.0
+      compression: 1.7.4
+      connect: 3.7.0
+      errorhandler: 1.5.1
+      nocache: 3.0.4
+      pretty-format: 26.6.2
+      serve-static: 1.16.2
+      ws: 6.2.3
+    transitivePeerDependencies:
+      - bufferutil
+      - supports-color
+      - utf-8-validate
+
+  '@react-native-community/cli-tools@14.1.0':
+    dependencies:
+      appdirsjs: 1.2.7
+      chalk: 4.1.2
+      execa: 5.1.1
+      find-up: 5.0.0
+      mime: 2.6.0
+      open: 6.4.0
+      ora: 5.4.1
+      semver: 7.6.3
+      shell-quote: 1.8.1
+      sudo-prompt: 9.2.1
+
+  '@react-native-community/cli-types@14.1.0':
+    dependencies:
+      joi: 17.13.3
+
+  '@react-native-community/cli@14.1.0(typescript@5.5.4)':
+    dependencies:
+      '@react-native-community/cli-clean': 14.1.0
+      '@react-native-community/cli-config': 14.1.0(typescript@5.5.4)
+      '@react-native-community/cli-debugger-ui': 14.1.0
+      '@react-native-community/cli-doctor': 14.1.0(typescript@5.5.4)
+      '@react-native-community/cli-server-api': 14.1.0
+      '@react-native-community/cli-tools': 14.1.0
+      '@react-native-community/cli-types': 14.1.0
+      chalk: 4.1.2
+      commander: 9.5.0
+      deepmerge: 4.3.1
+      execa: 5.1.1
+      find-up: 5.0.0
+      fs-extra: 8.1.0
+      graceful-fs: 4.2.11
+      prompts: 2.4.2
+      semver: 7.6.3
+    transitivePeerDependencies:
+      - bufferutil
+      - supports-color
+      - typescript
+      - utf-8-validate
+
+  '@react-native/assets-registry@0.75.4': {}
+
+  '@react-native/babel-plugin-codegen@0.75.4(@babel/preset-env@7.25.8(@babel/core@7.25.2))':
+    dependencies:
+      '@react-native/codegen': 0.75.4(@babel/preset-env@7.25.8(@babel/core@7.25.2))
+    transitivePeerDependencies:
+      - '@babel/preset-env'
+      - supports-color
+
+  '@react-native/babel-preset@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/plugin-proposal-export-default-from': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2)
+      '@babel/plugin-syntax-export-default-from': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-syntax-flow': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2)
+      '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2)
+      '@babel/plugin-transform-arrow-functions': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-async-generator-functions': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-async-to-generator': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-block-scoping': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-class-properties': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-classes': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-computed-properties': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-destructuring': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-flow-strip-types': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-for-of': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-function-name': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-literals': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-logical-assignment-operators': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-nullish-coalescing-operator': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-numeric-separator': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-object-rest-spread': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-optional-catch-binding': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-private-methods': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-private-property-in-object': 7.25.8(@babel/core@7.25.2)
+      '@babel/plugin-transform-react-display-name': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-react-jsx': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-react-jsx-self': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-react-jsx-source': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-regenerator': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-runtime': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-shorthand-properties': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-spread': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-sticky-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-typescript': 7.25.7(@babel/core@7.25.2)
+      '@babel/plugin-transform-unicode-regex': 7.25.7(@babel/core@7.25.2)
+      '@babel/template': 7.25.7
+      '@react-native/babel-plugin-codegen': 0.75.4(@babel/preset-env@7.25.8(@babel/core@7.25.2))
+      babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.25.2)
+      react-refresh: 0.14.2
+    transitivePeerDependencies:
+      - '@babel/preset-env'
+      - supports-color
+
+  '@react-native/codegen@0.75.4(@babel/preset-env@7.25.8(@babel/core@7.25.2))':
+    dependencies:
+      '@babel/parser': 7.25.8
+      '@babel/preset-env': 7.25.8(@babel/core@7.25.2)
+      glob: 7.2.3
+      hermes-parser: 0.22.0
+      invariant: 2.2.4
+      jscodeshift: 0.14.0(@babel/preset-env@7.25.8(@babel/core@7.25.2))
+      mkdirp: 0.5.6
+      nullthrows: 1.1.1
+      yargs: 17.7.2
+    transitivePeerDependencies:
+      - supports-color
+
+  '@react-native/community-cli-plugin@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))':
+    dependencies:
+      '@react-native-community/cli-server-api': 14.1.0
+      '@react-native-community/cli-tools': 14.1.0
+      '@react-native/dev-middleware': 0.75.4
+      '@react-native/metro-babel-transformer': 0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))
+      chalk: 4.1.2
+      execa: 5.1.1
+      metro: 0.80.12
+      metro-config: 0.80.12
+      metro-core: 0.80.12
+      node-fetch: 2.7.0
+      readline: 1.3.0
+    transitivePeerDependencies:
+      - '@babel/core'
+      - '@babel/preset-env'
+      - bufferutil
+      - encoding
+      - supports-color
+      - utf-8-validate
+
+  '@react-native/debugger-frontend@0.75.4': {}
 
-  '@parcel/watcher-darwin-x64@2.4.1':
-    optional: true
+  '@react-native/dev-middleware@0.75.4':
+    dependencies:
+      '@isaacs/ttlcache': 1.4.1
+      '@react-native/debugger-frontend': 0.75.4
+      chrome-launcher: 0.15.2
+      chromium-edge-launcher: 0.2.0
+      connect: 3.7.0
+      debug: 2.6.9
+      node-fetch: 2.7.0
+      nullthrows: 1.1.1
+      open: 7.4.2
+      selfsigned: 2.4.1
+      serve-static: 1.16.2
+      ws: 6.2.3
+    transitivePeerDependencies:
+      - bufferutil
+      - encoding
+      - supports-color
+      - utf-8-validate
 
-  '@parcel/watcher-freebsd-x64@2.4.1':
-    optional: true
+  '@react-native/gradle-plugin@0.75.4': {}
 
-  '@parcel/watcher-linux-arm-glibc@2.4.1':
-    optional: true
+  '@react-native/js-polyfills@0.75.4': {}
 
-  '@parcel/watcher-linux-arm64-glibc@2.4.1':
-    optional: true
+  '@react-native/metro-babel-transformer@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))':
+    dependencies:
+      '@babel/core': 7.25.2
+      '@react-native/babel-preset': 0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))
+      hermes-parser: 0.22.0
+      nullthrows: 1.1.1
+    transitivePeerDependencies:
+      - '@babel/preset-env'
+      - supports-color
 
-  '@parcel/watcher-linux-arm64-musl@2.4.1':
-    optional: true
+  '@react-native/normalize-colors@0.75.4': {}
 
-  '@parcel/watcher-linux-x64-glibc@2.4.1':
-    optional: true
+  '@react-native/virtualized-lists@0.75.4(@types/react@18.3.11)(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)':
+    dependencies:
+      invariant: 2.2.4
+      nullthrows: 1.1.1
+      react: 18.3.1
+      react-native: 0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4)
+    optionalDependencies:
+      '@types/react': 18.3.11
 
-  '@parcel/watcher-linux-x64-musl@2.4.1':
-    optional: true
+  '@react-spring/animated@9.7.5(react@18.3.1)':
+    dependencies:
+      '@react-spring/shared': 9.7.5(react@18.3.1)
+      '@react-spring/types': 9.7.5
+      react: 18.3.1
 
-  '@parcel/watcher-wasm@2.4.1':
+  '@react-spring/core@9.7.5(react@18.3.1)':
     dependencies:
-      is-glob: 4.0.3
-      micromatch: 4.0.7
+      '@react-spring/animated': 9.7.5(react@18.3.1)
+      '@react-spring/shared': 9.7.5(react@18.3.1)
+      '@react-spring/types': 9.7.5
+      react: 18.3.1
 
-  '@parcel/watcher-win32-arm64@2.4.1':
-    optional: true
+  '@react-spring/konva@9.7.5(konva@9.3.15)(react-konva@18.2.10(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)':
+    dependencies:
+      '@react-spring/animated': 9.7.5(react@18.3.1)
+      '@react-spring/core': 9.7.5(react@18.3.1)
+      '@react-spring/shared': 9.7.5(react@18.3.1)
+      '@react-spring/types': 9.7.5
+      konva: 9.3.15
+      react: 18.3.1
+      react-konva: 18.2.10(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
 
-  '@parcel/watcher-win32-ia32@2.4.1':
-    optional: true
+  '@react-spring/native@9.7.5(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)':
+    dependencies:
+      '@react-spring/animated': 9.7.5(react@18.3.1)
+      '@react-spring/core': 9.7.5(react@18.3.1)
+      '@react-spring/shared': 9.7.5(react@18.3.1)
+      '@react-spring/types': 9.7.5
+      react: 18.3.1
+      react-native: 0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4)
 
-  '@parcel/watcher-win32-x64@2.4.1':
-    optional: true
+  '@react-spring/rafz@9.7.5': {}
 
-  '@parcel/watcher@2.4.1':
+  '@react-spring/shared@9.7.5(react@18.3.1)':
     dependencies:
-      detect-libc: 1.0.3
-      is-glob: 4.0.3
-      micromatch: 4.0.7
-      node-addon-api: 7.1.1
-    optionalDependencies:
-      '@parcel/watcher-android-arm64': 2.4.1
-      '@parcel/watcher-darwin-arm64': 2.4.1
-      '@parcel/watcher-darwin-x64': 2.4.1
-      '@parcel/watcher-freebsd-x64': 2.4.1
-      '@parcel/watcher-linux-arm-glibc': 2.4.1
-      '@parcel/watcher-linux-arm64-glibc': 2.4.1
-      '@parcel/watcher-linux-arm64-musl': 2.4.1
-      '@parcel/watcher-linux-x64-glibc': 2.4.1
-      '@parcel/watcher-linux-x64-musl': 2.4.1
-      '@parcel/watcher-win32-arm64': 2.4.1
-      '@parcel/watcher-win32-ia32': 2.4.1
-      '@parcel/watcher-win32-x64': 2.4.1
+      '@react-spring/rafz': 9.7.5
+      '@react-spring/types': 9.7.5
+      react: 18.3.1
 
-  '@pkgjs/parseargs@0.11.0':
-    optional: true
+  '@react-spring/three@9.7.5(@react-three/fiber@8.17.10(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)(three@0.169.0))(react@18.3.1)(three@0.169.0)':
+    dependencies:
+      '@react-spring/animated': 9.7.5(react@18.3.1)
+      '@react-spring/core': 9.7.5(react@18.3.1)
+      '@react-spring/shared': 9.7.5(react@18.3.1)
+      '@react-spring/types': 9.7.5
+      '@react-three/fiber': 8.17.10(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)(three@0.169.0)
+      react: 18.3.1
+      three: 0.169.0
 
-  '@pnpm/config.env-replace@1.1.0': {}
+  '@react-spring/types@9.7.5': {}
 
-  '@pnpm/network.ca-file@1.0.2':
+  '@react-spring/web@9.7.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
     dependencies:
-      graceful-fs: 4.2.10
+      '@react-spring/animated': 9.7.5(react@18.3.1)
+      '@react-spring/core': 9.7.5(react@18.3.1)
+      '@react-spring/shared': 9.7.5(react@18.3.1)
+      '@react-spring/types': 9.7.5
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
 
-  '@pnpm/npm-conf@2.3.1':
+  '@react-spring/zdog@9.7.5(react-dom@18.3.1(react@18.3.1))(react-zdog@1.2.2)(react@18.3.1)(zdog@1.1.3)':
     dependencies:
-      '@pnpm/config.env-replace': 1.1.0
-      '@pnpm/network.ca-file': 1.0.2
-      config-chain: 1.1.13
+      '@react-spring/animated': 9.7.5(react@18.3.1)
+      '@react-spring/core': 9.7.5(react@18.3.1)
+      '@react-spring/shared': 9.7.5(react@18.3.1)
+      '@react-spring/types': 9.7.5
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
+      react-zdog: 1.2.2
+      zdog: 1.1.3
+
+  '@react-three/fiber@8.17.10(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)(three@0.169.0)':
+    dependencies:
+      '@babel/runtime': 7.25.7
+      '@types/debounce': 1.2.4
+      '@types/react-reconciler': 0.26.7
+      '@types/webxr': 0.5.20
+      base64-js: 1.5.1
+      buffer: 6.0.3
+      debounce: 1.2.1
+      its-fine: 1.2.5(react@18.3.1)
+      react: 18.3.1
+      react-reconciler: 0.27.0(react@18.3.1)
+      scheduler: 0.21.0
+      suspend-react: 0.1.3(react@18.3.1)
+      three: 0.169.0
+      zustand: 3.7.2(react@18.3.1)
+    optionalDependencies:
+      react-dom: 18.3.1(react@18.3.1)
+      react-native: 0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4)
+
+  '@remix-run/router@1.19.2': {}
 
   '@rollup/pluginutils@5.1.0(rollup@4.20.0)':
     dependencies:
@@ -5603,6 +9495,24 @@ snapshots:
 
   '@scure/base@1.1.7': {}
 
+  '@scure/base@1.1.9': {}
+
+  '@scure/bip32@1.1.5':
+    dependencies:
+      '@noble/hashes': 1.2.0
+      '@noble/secp256k1': 1.7.1
+      '@scure/base': 1.1.9
+
+  '@scure/bip39@1.1.1':
+    dependencies:
+      '@noble/hashes': 1.2.0
+      '@scure/base': 1.1.9
+
+  '@scure/bip39@1.4.0':
+    dependencies:
+      '@noble/hashes': 1.5.0
+      '@scure/base': 1.1.9
+
   '@scure/starknet@1.0.0':
     dependencies:
       '@noble/curves': 1.3.0
@@ -5694,10 +9604,26 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
+  '@sideway/address@4.1.5':
+    dependencies:
+      '@hapi/hoek': 9.3.0
+
+  '@sideway/formula@3.0.1': {}
+
+  '@sideway/pinpoint@2.0.0': {}
+
   '@sinclair/typebox@0.27.8': {}
 
   '@sindresorhus/merge-streams@2.3.0': {}
 
+  '@sinonjs/commons@3.0.1':
+    dependencies:
+      type-detect: 4.0.8
+
+  '@sinonjs/fake-timers@10.3.0':
+    dependencies:
+      '@sinonjs/commons': 3.0.1
+
   '@stablelib/aead@1.0.1': {}
 
   '@stablelib/binary@1.0.1':
@@ -5790,26 +9716,49 @@ snapshots:
 
   '@starknet-io/types-js@0.7.7': {}
 
-  '@sveltejs/vite-plugin-svelte-inspector@1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15))':
+  '@sveltejs/adapter-auto@3.2.5(@sveltejs/kit@2.6.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))':
+    dependencies:
+      '@sveltejs/kit': 2.6.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
+      import-meta-resolve: 4.1.0
+
+  '@sveltejs/kit@2.6.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))':
     dependencies:
-      '@sveltejs/vite-plugin-svelte': 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15))
+      '@sveltejs/vite-plugin-svelte': 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
+      '@types/cookie': 0.6.0
+      cookie: 0.6.0
+      devalue: 5.1.1
+      esm-env: 1.0.0
+      import-meta-resolve: 4.1.0
+      kleur: 4.1.5
+      magic-string: 0.30.11
+      mrmime: 2.0.0
+      sade: 1.8.1
+      set-cookie-parser: 2.7.0
+      sirv: 2.0.4
+      svelte: 4.2.18
+      tiny-glob: 0.2.9
+      vite: 4.5.3(@types/node@20.14.15)(terser@5.34.1)
+
+  '@sveltejs/vite-plugin-svelte-inspector@1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))':
+    dependencies:
+      '@sveltejs/vite-plugin-svelte': 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
       debug: 4.3.6
       svelte: 4.2.18
-      vite: 4.5.3(@types/node@20.14.15)
+      vite: 4.5.3(@types/node@20.14.15)(terser@5.34.1)
     transitivePeerDependencies:
       - supports-color
 
-  '@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15))':
+  '@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))':
     dependencies:
-      '@sveltejs/vite-plugin-svelte-inspector': 1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15))
+      '@sveltejs/vite-plugin-svelte-inspector': 1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
       debug: 4.3.6
       deepmerge: 4.3.1
       kleur: 4.1.5
       magic-string: 0.30.11
       svelte: 4.2.18
       svelte-hmr: 0.15.3(svelte@4.2.18)
-      vite: 4.5.3(@types/node@20.14.15)
-      vitefu: 0.2.5(vite@4.5.3(@types/node@20.14.15))
+      vite: 4.5.3(@types/node@20.14.15)(terser@5.34.1)
+      vitefu: 0.2.5(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
     transitivePeerDependencies:
       - supports-color
 
@@ -5835,8 +9784,22 @@ snapshots:
     dependencies:
       '@types/retry': 0.12.5
 
+  '@types/cookie@0.6.0': {}
+
+  '@types/debounce@1.2.4': {}
+
   '@types/estree@1.0.5': {}
 
+  '@types/istanbul-lib-coverage@2.0.6': {}
+
+  '@types/istanbul-lib-report@3.0.3':
+    dependencies:
+      '@types/istanbul-lib-coverage': 2.0.6
+
+  '@types/istanbul-reports@3.0.4':
+    dependencies:
+      '@types/istanbul-lib-report': 3.0.3
+
   '@types/json-schema@7.0.15': {}
 
   '@types/json5@0.0.29': {}
@@ -5845,10 +9808,18 @@ snapshots:
     dependencies:
       '@types/lodash': 4.17.7
 
+  '@types/lodash.mergewith@4.6.9':
+    dependencies:
+      '@types/lodash': 4.17.7
+
   '@types/lodash@4.17.7': {}
 
   '@types/minimist@1.2.5': {}
 
+  '@types/node-forge@1.3.11':
+    dependencies:
+      '@types/node': 20.14.15
+
   '@types/node@20.14.15':
     dependencies:
       undici-types: 5.26.5
@@ -5857,18 +9828,51 @@ snapshots:
 
   '@types/normalize-package-data@2.4.4': {}
 
+  '@types/parse-json@4.0.2': {}
+
+  '@types/prop-types@15.7.13': {}
+
   '@types/pug@2.0.10': {}
 
+  '@types/react-reconciler@0.26.7':
+    dependencies:
+      '@types/react': 18.3.11
+
+  '@types/react-reconciler@0.28.8':
+    dependencies:
+      '@types/react': 18.3.11
+
+  '@types/react@18.3.11':
+    dependencies:
+      '@types/prop-types': 15.7.13
+      csstype: 3.1.3
+
   '@types/retry@0.12.5': {}
 
   '@types/semver@7.5.8': {}
 
+  '@types/stack-utils@2.0.3': {}
+
   '@types/trusted-types@2.0.7': {}
 
-  '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)':
+  '@types/warning@3.0.3': {}
+
+  '@types/webxr@0.5.20': {}
+
+  '@types/yargs-parser@21.0.3': {}
+
+  '@types/yargs@15.0.19':
+    dependencies:
+      '@types/yargs-parser': 21.0.3
+
+  '@types/yargs@17.0.33':
+    dependencies:
+      '@types/yargs-parser': 21.0.3
+
+  '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@8.8.1(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)':
     dependencies:
       '@eslint-community/regexpp': 4.11.0
-      '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
+      '@typescript-eslint/parser': 8.8.1(eslint@8.57.0)(typescript@5.5.4)
       '@typescript-eslint/scope-manager': 6.21.0
       '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
       '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
@@ -5898,11 +9902,29 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
+  '@typescript-eslint/parser@8.8.1(eslint@8.57.0)(typescript@5.5.4)':
+    dependencies:
+      '@typescript-eslint/scope-manager': 8.8.1
+      '@typescript-eslint/types': 8.8.1
+      '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.5.4)
+      '@typescript-eslint/visitor-keys': 8.8.1
+      debug: 4.3.6
+      eslint: 8.57.0
+    optionalDependencies:
+      typescript: 5.5.4
+    transitivePeerDependencies:
+      - supports-color
+
   '@typescript-eslint/scope-manager@6.21.0':
     dependencies:
       '@typescript-eslint/types': 6.21.0
       '@typescript-eslint/visitor-keys': 6.21.0
 
+  '@typescript-eslint/scope-manager@8.8.1':
+    dependencies:
+      '@typescript-eslint/types': 8.8.1
+      '@typescript-eslint/visitor-keys': 8.8.1
+
   '@typescript-eslint/type-utils@6.21.0(eslint@8.57.0)(typescript@5.5.4)':
     dependencies:
       '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.4)
@@ -5917,6 +9939,8 @@ snapshots:
 
   '@typescript-eslint/types@6.21.0': {}
 
+  '@typescript-eslint/types@8.8.1': {}
+
   '@typescript-eslint/typescript-estree@6.21.0(typescript@5.5.4)':
     dependencies:
       '@typescript-eslint/types': 6.21.0
@@ -5932,6 +9956,21 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
+  '@typescript-eslint/typescript-estree@8.8.1(typescript@5.5.4)':
+    dependencies:
+      '@typescript-eslint/types': 8.8.1
+      '@typescript-eslint/visitor-keys': 8.8.1
+      debug: 4.3.6
+      fast-glob: 3.3.2
+      is-glob: 4.0.3
+      minimatch: 9.0.5
+      semver: 7.6.3
+      ts-api-utils: 1.3.0(typescript@5.5.4)
+    optionalDependencies:
+      typescript: 5.5.4
+    transitivePeerDependencies:
+      - supports-color
+
   '@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.5.4)':
     dependencies:
       '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
@@ -5951,6 +9990,11 @@ snapshots:
       '@typescript-eslint/types': 6.21.0
       eslint-visitor-keys: 3.4.3
 
+  '@typescript-eslint/visitor-keys@8.8.1':
+    dependencies:
+      '@typescript-eslint/types': 8.8.1
+      eslint-visitor-keys: 3.4.3
+
   '@ungap/structured-clone@1.2.0': {}
 
   '@vitest/expect@1.6.0':
@@ -6066,13 +10110,13 @@ snapshots:
     dependencies:
       tslib: 1.14.1
 
-  '@walletconnect/ethereum-provider@2.14.0(react@18.3.1)':
+  '@walletconnect/ethereum-provider@2.14.0(@types/react@18.3.11)(react@18.3.1)':
     dependencies:
       '@walletconnect/jsonrpc-http-connection': 1.0.8
       '@walletconnect/jsonrpc-provider': 1.0.14
       '@walletconnect/jsonrpc-types': 1.0.4
       '@walletconnect/jsonrpc-utils': 1.0.8
-      '@walletconnect/modal': 2.6.2(react@18.3.1)
+      '@walletconnect/modal': 2.6.2(@types/react@18.3.11)(react@18.3.1)
       '@walletconnect/sign-client': 2.14.0
       '@walletconnect/types': 2.14.0
       '@walletconnect/universal-provider': 2.14.0
@@ -6171,16 +10215,16 @@ snapshots:
       '@walletconnect/safe-json': 1.0.2
       pino: 7.11.0
 
-  '@walletconnect/modal-core@2.6.2(react@18.3.1)':
+  '@walletconnect/modal-core@2.6.2(@types/react@18.3.11)(react@18.3.1)':
     dependencies:
-      valtio: 1.11.2(react@18.3.1)
+      valtio: 1.11.2(@types/react@18.3.11)(react@18.3.1)
     transitivePeerDependencies:
       - '@types/react'
       - react
 
-  '@walletconnect/modal-ui@2.6.2(react@18.3.1)':
+  '@walletconnect/modal-ui@2.6.2(@types/react@18.3.11)(react@18.3.1)':
     dependencies:
-      '@walletconnect/modal-core': 2.6.2(react@18.3.1)
+      '@walletconnect/modal-core': 2.6.2(@types/react@18.3.11)(react@18.3.1)
       lit: 2.8.0
       motion: 10.16.2
       qrcode: 1.5.3
@@ -6188,10 +10232,10 @@ snapshots:
       - '@types/react'
       - react
 
-  '@walletconnect/modal@2.6.2(react@18.3.1)':
+  '@walletconnect/modal@2.6.2(@types/react@18.3.11)(react@18.3.1)':
     dependencies:
-      '@walletconnect/modal-core': 2.6.2(react@18.3.1)
-      '@walletconnect/modal-ui': 2.6.2(react@18.3.1)
+      '@walletconnect/modal-core': 2.6.2(@types/react@18.3.11)(react@18.3.1)
+      '@walletconnect/modal-ui': 2.6.2(@types/react@18.3.11)(react@18.3.1)
     transitivePeerDependencies:
       - '@types/react'
       - react
@@ -6370,6 +10414,32 @@ snapshots:
       '@walletconnect/window-getters': 1.0.1
       tslib: 1.14.1
 
+  '@xstate/react@1.6.3(@types/react@18.3.11)(react@18.3.1)(xstate@4.38.3)':
+    dependencies:
+      react: 18.3.1
+      use-isomorphic-layout-effect: 1.1.2(@types/react@18.3.11)(react@18.3.1)
+      use-subscription: 1.8.2(react@18.3.1)
+    optionalDependencies:
+      xstate: 4.38.3
+    transitivePeerDependencies:
+      - '@types/react'
+
+  '@zag-js/dom-query@0.31.1': {}
+
+  '@zag-js/element-size@0.31.1': {}
+
+  '@zag-js/focus-visible@0.31.1':
+    dependencies:
+      '@zag-js/dom-query': 0.31.1
+
+  '@zxcvbn-ts/core@3.0.4':
+    dependencies:
+      fastest-levenshtein: 1.0.16
+
+  '@zxcvbn-ts/language-common@3.0.4': {}
+
+  '@zxcvbn-ts/language-en@3.0.2': {}
+
   JSONStream@1.3.5:
     dependencies:
       jsonparse: 1.3.1
@@ -6382,6 +10452,15 @@ snapshots:
       fs-extra: 10.1.0
       yargs: 17.7.2
 
+  abort-controller@3.0.0:
+    dependencies:
+      event-target-shim: 5.0.1
+
+  accepts@1.3.8:
+    dependencies:
+      mime-types: 2.1.35
+      negotiator: 0.6.3
+
   acorn-jsx@5.3.2(acorn@8.12.1):
     dependencies:
       acorn: 8.12.1
@@ -6422,12 +10501,22 @@ snapshots:
       json-schema-traverse: 1.0.0
       require-from-string: 2.0.2
 
+  anser@1.4.10: {}
+
   ansi-escapes@5.0.0:
     dependencies:
       type-fest: 1.4.0
 
   ansi-escapes@6.2.1: {}
 
+  ansi-fragments@0.2.1:
+    dependencies:
+      colorette: 1.4.0
+      slice-ansi: 2.1.0
+      strip-ansi: 5.2.0
+
+  ansi-regex@4.1.1: {}
+
   ansi-regex@5.0.1: {}
 
   ansi-regex@6.0.1: {}
@@ -6453,6 +10542,8 @@ snapshots:
       normalize-path: 3.0.0
       picomatch: 2.3.1
 
+  appdirsjs@1.2.7: {}
+
   arg@4.1.3: {}
 
   arg@5.0.2: {}
@@ -6465,6 +10556,10 @@ snapshots:
 
   argv-formatter@1.0.0: {}
 
+  aria-hidden@1.2.4:
+    dependencies:
+      tslib: 2.6.3
+
   aria-query@5.1.3:
     dependencies:
       deep-equal: 2.2.3
@@ -6544,10 +10639,24 @@ snapshots:
 
   arrify@1.0.1: {}
 
+  asap@2.0.6: {}
+
   assertion-error@1.1.0: {}
 
   ast-types-flow@0.0.8: {}
 
+  ast-types@0.15.2:
+    dependencies:
+      tslib: 2.6.3
+
+  astral-regex@1.0.0: {}
+
+  async-limiter@1.0.1: {}
+
+  async-retry@1.3.3:
+    dependencies:
+      retry: 0.13.1
+
   atomic-sleep@1.0.0: {}
 
   autoprefixer@10.4.20(postcss@8.4.41):
@@ -6572,12 +10681,68 @@ snapshots:
 
   axobject-query@4.1.0: {}
 
+  babel-core@7.0.0-bridge.0(@babel/core@7.25.2):
+    dependencies:
+      '@babel/core': 7.25.2
+
+  babel-plugin-macros@3.1.0:
+    dependencies:
+      '@babel/runtime': 7.25.7
+      cosmiconfig: 7.1.0
+      resolve: 1.22.8
+
+  babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.2):
+    dependencies:
+      '@babel/compat-data': 7.25.8
+      '@babel/core': 7.25.2
+      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2)
+      semver: 6.3.1
+    transitivePeerDependencies:
+      - supports-color
+
+  babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.25.2):
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2)
+      core-js-compat: 3.38.1
+    transitivePeerDependencies:
+      - supports-color
+
+  babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.25.2):
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2)
+    transitivePeerDependencies:
+      - supports-color
+
+  babel-plugin-transform-flow-enums@0.0.2(@babel/core@7.25.2):
+    dependencies:
+      '@babel/plugin-syntax-flow': 7.25.7(@babel/core@7.25.2)
+    transitivePeerDependencies:
+      - '@babel/core'
+
   balanced-match@1.0.2: {}
 
+  base64-js@1.5.1: {}
+
   before-after-hook@2.2.3: {}
 
+  bignumber.js@9.1.2: {}
+
   binary-extensions@2.3.0: {}
 
+  bl@4.1.0:
+    dependencies:
+      buffer: 5.7.1
+      inherits: 2.0.4
+      readable-stream: 3.6.2
+
+  bn.js@4.12.0: {}
+
+  bn.js@5.2.1: {}
+
+  body-scroll-lock@3.1.5: {}
+
   bottleneck@2.19.5: {}
 
   bowser@2.11.0: {}
@@ -6595,6 +10760,8 @@ snapshots:
     dependencies:
       fill-range: 7.1.1
 
+  brorand@1.1.0: {}
+
   browserslist@4.23.3:
     dependencies:
       caniuse-lite: 1.0.30001651
@@ -6602,10 +10769,35 @@ snapshots:
       node-releases: 2.0.18
       update-browserslist-db: 1.1.0(browserslist@4.23.3)
 
+  browserslist@4.24.0:
+    dependencies:
+      caniuse-lite: 1.0.30001667
+      electron-to-chromium: 1.5.35
+      node-releases: 2.0.18
+      update-browserslist-db: 1.1.0(browserslist@4.24.0)
+
+  bser@2.1.1:
+    dependencies:
+      node-int64: 0.4.0
+
   buffer-crc32@1.0.0: {}
 
+  buffer-from@1.1.2: {}
+
+  buffer@5.7.1:
+    dependencies:
+      base64-js: 1.5.1
+      ieee754: 1.2.1
+
+  buffer@6.0.3:
+    dependencies:
+      base64-js: 1.5.1
+      ieee754: 1.2.1
+
   builtin-modules@3.3.0: {}
 
+  bytes@3.0.0: {}
+
   cac@6.7.14: {}
 
   call-bind@1.0.7:
@@ -6638,8 +10830,12 @@ snapshots:
 
   camelcase@5.3.1: {}
 
+  camelcase@6.3.0: {}
+
   caniuse-lite@1.0.30001651: {}
 
+  caniuse-lite@1.0.30001667: {}
+
   cardinal@2.1.1:
     dependencies:
       ansicolors: 0.3.2
@@ -6684,6 +10880,30 @@ snapshots:
     optionalDependencies:
       fsevents: 2.3.3
 
+  chrome-launcher@0.15.2:
+    dependencies:
+      '@types/node': 20.14.15
+      escape-string-regexp: 4.0.0
+      is-wsl: 2.2.0
+      lighthouse-logger: 1.4.2
+    transitivePeerDependencies:
+      - supports-color
+
+  chromium-edge-launcher@0.2.0:
+    dependencies:
+      '@types/node': 20.14.15
+      escape-string-regexp: 4.0.0
+      is-wsl: 2.2.0
+      lighthouse-logger: 1.4.2
+      mkdirp: 1.0.4
+      rimraf: 3.0.2
+    transitivePeerDependencies:
+      - supports-color
+
+  ci-info@2.0.0: {}
+
+  ci-info@3.9.0: {}
+
   citty@0.1.6:
     dependencies:
       consola: 3.2.3
@@ -6694,10 +10914,16 @@ snapshots:
     dependencies:
       escape-string-regexp: 5.0.0
 
+  cli-cursor@3.1.0:
+    dependencies:
+      restore-cursor: 3.1.0
+
   cli-cursor@4.0.0:
     dependencies:
       restore-cursor: 4.0.0
 
+  cli-spinners@2.9.2: {}
+
   cli-table3@0.6.5:
     dependencies:
       string-width: 4.2.3
@@ -6727,6 +10953,14 @@ snapshots:
       strip-ansi: 6.0.1
       wrap-ansi: 7.0.0
 
+  clone-deep@4.0.1:
+    dependencies:
+      is-plain-object: 2.0.4
+      kind-of: 6.0.3
+      shallow-clone: 3.0.1
+
+  clone@1.0.4: {}
+
   code-red@1.0.4:
     dependencies:
       '@jridgewell/sourcemap-codec': 1.5.0
@@ -6747,20 +10981,47 @@ snapshots:
 
   color-name@1.1.4: {}
 
+  color2k@2.0.3: {}
+
+  colord@2.9.3: {}
+
+  colorette@1.4.0: {}
+
   colorette@2.0.20: {}
 
+  command-exists@1.2.9: {}
+
   commander@11.0.0: {}
 
+  commander@2.20.3: {}
+
   commander@4.1.1: {}
 
-  commander@9.5.0:
-    optional: true
+  commander@9.5.0: {}
+
+  commondir@1.0.1: {}
 
   compare-func@2.0.0:
     dependencies:
       array-ify: 1.0.0
       dot-prop: 5.3.0
 
+  compressible@2.0.18:
+    dependencies:
+      mime-db: 1.53.0
+
+  compression@1.7.4:
+    dependencies:
+      accepts: 1.3.8
+      bytes: 3.0.0
+      compressible: 2.0.18
+      debug: 2.6.9
+      on-headers: 1.0.2
+      safe-buffer: 5.1.2
+      vary: 1.1.2
+    transitivePeerDependencies:
+      - supports-color
+
   computeds@0.0.1: {}
 
   concat-map@0.0.1: {}
@@ -6772,6 +11033,15 @@ snapshots:
       ini: 1.3.8
       proto-list: 1.2.4
 
+  connect@3.7.0:
+    dependencies:
+      debug: 2.6.9
+      finalhandler: 1.1.2
+      parseurl: 1.3.3
+      utils-merge: 1.0.1
+    transitivePeerDependencies:
+      - supports-color
+
   consola@3.2.3: {}
 
   conventional-changelog-angular@6.0.0:
@@ -6813,13 +11083,25 @@ snapshots:
       meow: 12.1.1
       split2: 4.2.0
 
+  convert-source-map@1.9.0: {}
+
   convert-source-map@2.0.0: {}
 
   cookie-es@1.2.2: {}
 
+  cookie@0.6.0: {}
+
+  copy-to-clipboard@3.3.3:
+    dependencies:
+      toggle-selection: 1.0.6
+
+  core-js-compat@3.38.1:
+    dependencies:
+      browserslist: 4.24.0
+
   core-util-is@1.0.3: {}
 
-  cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4))(typescript@5.5.4):
+  cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4))(typescript@5.5.4):
     dependencies:
       '@types/node': 20.5.1
       cosmiconfig: 8.3.6(typescript@5.5.4)
@@ -6833,6 +11115,14 @@ snapshots:
       js-yaml: 3.14.1
       parse-json: 4.0.0
 
+  cosmiconfig@7.1.0:
+    dependencies:
+      '@types/parse-json': 4.0.2
+      import-fresh: 3.3.0
+      parse-json: 5.2.0
+      path-type: 4.0.0
+      yaml: 1.10.2
+
   cosmiconfig@8.3.6(typescript@5.5.4):
     dependencies:
       import-fresh: 3.3.0
@@ -6842,6 +11132,15 @@ snapshots:
     optionalDependencies:
       typescript: 5.5.4
 
+  cosmiconfig@9.0.0(typescript@5.5.4):
+    dependencies:
+      env-paths: 2.2.1
+      import-fresh: 3.3.0
+      js-yaml: 4.1.0
+      parse-json: 5.2.0
+    optionalDependencies:
+      typescript: 5.5.4
+
   create-require@1.1.1: {}
 
   cross-fetch@3.1.8:
@@ -6869,6 +11168,8 @@ snapshots:
 
   cssesc@3.0.0: {}
 
+  csstype@3.1.3: {}
+
   damerau-levenshtein@1.0.8: {}
 
   dargs@7.0.0: {}
@@ -6891,10 +11192,20 @@ snapshots:
       es-errors: 1.3.0
       is-data-view: 1.0.1
 
+  dataloader@2.2.2: {}
+
   dateformat@3.0.3: {}
 
+  dayjs@1.11.13: {}
+
   de-indent@1.0.2: {}
 
+  debounce@1.2.1: {}
+
+  debug@2.6.9:
+    dependencies:
+      ms: 2.0.0
+
   debug@3.2.7:
     dependencies:
       ms: 2.1.3
@@ -6947,6 +11258,10 @@ snapshots:
 
   deepmerge@4.3.1: {}
 
+  defaults@1.0.4:
+    dependencies:
+      clone: 1.0.4
+
   define-data-property@1.1.4:
     dependencies:
       es-define-property: 1.0.0
@@ -6961,12 +11276,18 @@ snapshots:
 
   defu@6.1.4: {}
 
+  denodeify@1.2.1: {}
+
+  depd@2.0.0: {}
+
   deprecation@2.3.1: {}
 
   dequal@2.0.3: {}
 
   destr@2.0.3: {}
 
+  destroy@1.2.0: {}
+
   detect-browser@5.3.0: {}
 
   detect-indent@6.1.0: {}
@@ -6975,6 +11296,10 @@ snapshots:
 
   detect-newline@2.1.0: {}
 
+  detect-node-es@1.1.0: {}
+
+  devalue@5.1.1: {}
+
   didyoumean@1.2.2: {}
 
   diff-sequences@29.6.3: {}
@@ -7014,14 +11339,34 @@ snapshots:
 
   eastasianwidth@0.2.0: {}
 
+  ee-first@1.1.1: {}
+
+  electron-to-chromium@1.5.35: {}
+
   electron-to-chromium@1.5.7: {}
 
+  elliptic@6.5.7:
+    dependencies:
+      bn.js: 4.12.0
+      brorand: 1.1.0
+      hash.js: 1.1.7
+      hmac-drbg: 1.0.1
+      inherits: 2.0.4
+      minimalistic-assert: 1.0.1
+      minimalistic-crypto-utils: 1.0.1
+
+  emittery@1.0.3: {}
+
   emoji-regex@8.0.0: {}
 
   emoji-regex@9.2.2: {}
 
   encode-utf8@1.0.3: {}
 
+  encodeurl@1.0.2: {}
+
+  encodeurl@2.0.0: {}
+
   end-of-stream@1.4.4:
     dependencies:
       once: 1.4.0
@@ -7038,10 +11383,23 @@ snapshots:
       execa: 7.2.0
       java-properties: 1.0.2
 
+  env-paths@2.2.1: {}
+
+  envinfo@7.14.0: {}
+
   error-ex@1.3.2:
     dependencies:
       is-arrayish: 0.2.1
 
+  error-stack-parser@2.1.4:
+    dependencies:
+      stackframe: 1.3.4
+
+  errorhandler@1.5.1:
+    dependencies:
+      accepts: 1.3.8
+      escape-html: 1.0.3
+
   es-abstract@1.23.3:
     dependencies:
       array-buffer-byte-length: 1.0.1
@@ -7201,12 +11559,21 @@ snapshots:
 
   escalade@3.1.2: {}
 
+  escape-html@1.0.3: {}
+
   escape-string-regexp@1.0.5: {}
 
+  escape-string-regexp@2.0.0: {}
+
   escape-string-regexp@4.0.0: {}
 
   escape-string-regexp@5.0.0: {}
 
+  eslint-compat-utils@0.5.1(eslint@8.57.0):
+    dependencies:
+      eslint: 8.57.0
+      semver: 7.6.3
+
   eslint-config-next@13.5.6(eslint@8.57.0)(typescript@5.5.4):
     dependencies:
       '@next/eslint-plugin-next': 13.5.6
@@ -7215,7 +11582,7 @@ snapshots:
       eslint: 8.57.0
       eslint-import-resolver-node: 0.3.9
       eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
-      eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
+      eslint-plugin-import: 2.29.1(@typescript-eslint/parser@8.8.1(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)
       eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
       eslint-plugin-react: 7.35.0(eslint@8.57.0)
       eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0)
@@ -7238,8 +11605,8 @@ snapshots:
       debug: 4.3.6
       enhanced-resolve: 5.17.1
       eslint: 8.57.0
-      eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0)
-      eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
+      eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
+      eslint-plugin-import: 2.29.1(@typescript-eslint/parser@8.8.1(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)
       fast-glob: 3.3.2
       get-tsconfig: 4.7.6
       is-core-module: 2.15.0
@@ -7250,7 +11617,7 @@ snapshots:
       - eslint-import-resolver-webpack
       - supports-color
 
-  eslint-module-utils@2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0):
+  eslint-module-utils@2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
     dependencies:
       debug: 3.2.7
     optionalDependencies:
@@ -7261,7 +11628,17 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
+  eslint-module-utils@2.8.1(@typescript-eslint/parser@8.8.1(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0):
+    dependencies:
+      debug: 3.2.7
+    optionalDependencies:
+      '@typescript-eslint/parser': 8.8.1(eslint@8.57.0)(typescript@5.5.4)
+      eslint: 8.57.0
+      eslint-import-resolver-node: 0.3.9
+    transitivePeerDependencies:
+      - supports-color
+
+  eslint-plugin-import@2.29.1(@typescript-eslint/parser@8.8.1(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0):
     dependencies:
       array-includes: 3.1.8
       array.prototype.findlastindex: 1.2.5
@@ -7271,7 +11648,7 @@ snapshots:
       doctrine: 2.1.0
       eslint: 8.57.0
       eslint-import-resolver-node: 0.3.9
-      eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0)
+      eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.8.1(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0)
       hasown: 2.0.2
       is-core-module: 2.15.0
       is-glob: 4.0.3
@@ -7282,7 +11659,7 @@ snapshots:
       semver: 6.3.1
       tsconfig-paths: 3.15.0
     optionalDependencies:
-      '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
+      '@typescript-eslint/parser': 8.8.1(eslint@8.57.0)(typescript@5.5.4)
     transitivePeerDependencies:
       - eslint-import-resolver-typescript
       - eslint-import-resolver-webpack
@@ -7308,6 +11685,13 @@ snapshots:
       safe-regex-test: 1.0.3
       string.prototype.includes: 2.0.0
 
+  eslint-plugin-prettier@5.2.1(eslint@8.57.0)(prettier@3.3.3):
+    dependencies:
+      eslint: 8.57.0
+      prettier: 3.3.3
+      prettier-linter-helpers: 1.0.0
+      synckit: 0.9.2
+
   eslint-plugin-react-hooks@4.6.2(eslint@8.57.0):
     dependencies:
       eslint: 8.57.0
@@ -7334,6 +11718,25 @@ snapshots:
       string.prototype.matchall: 4.0.11
       string.prototype.repeat: 1.0.0
 
+  eslint-plugin-svelte@2.44.1(eslint@8.57.0)(svelte@4.2.18)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4)):
+    dependencies:
+      '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
+      '@jridgewell/sourcemap-codec': 1.5.0
+      eslint: 8.57.0
+      eslint-compat-utils: 0.5.1(eslint@8.57.0)
+      esutils: 2.0.3
+      known-css-properties: 0.34.0
+      postcss: 8.4.41
+      postcss-load-config: 3.1.4(postcss@8.4.41)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4))
+      postcss-safe-parser: 6.0.0(postcss@8.4.41)
+      postcss-selector-parser: 6.1.2
+      semver: 7.6.3
+      svelte-eslint-parser: 0.41.1(svelte@4.2.18)
+    optionalDependencies:
+      svelte: 4.2.18
+    transitivePeerDependencies:
+      - ts-node
+
   eslint-scope@7.2.2:
     dependencies:
       esrecurse: 4.3.0
@@ -7384,6 +11787,8 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
+  esm-env@1.0.0: {}
+
   espree@9.6.1:
     dependencies:
       acorn: 8.12.1
@@ -7410,6 +11815,17 @@ snapshots:
 
   esutils@2.0.3: {}
 
+  etag@1.8.1: {}
+
+  ethereum-cryptography@1.2.0:
+    dependencies:
+      '@noble/hashes': 1.2.0
+      '@noble/secp256k1': 1.7.1
+      '@scure/bip32': 1.1.5
+      '@scure/bip39': 1.1.1
+
+  event-target-shim@5.0.1: {}
+
   eventemitter3@5.0.1: {}
 
   events@3.3.0: {}
@@ -7450,8 +11866,14 @@ snapshots:
       signal-exit: 4.1.0
       strip-final-newline: 3.0.0
 
+  exponential-backoff@3.1.1: {}
+
+  fancy-canvas@2.1.0: {}
+
   fast-deep-equal@3.1.3: {}
 
+  fast-diff@1.3.0: {}
+
   fast-glob@3.3.2:
     dependencies:
       '@nodelib/fs.stat': 2.0.5
@@ -7468,10 +11890,20 @@ snapshots:
 
   fast-uri@3.0.1: {}
 
+  fast-xml-parser@4.5.0:
+    dependencies:
+      strnum: 1.0.5
+
+  fastest-levenshtein@1.0.16: {}
+
   fastq@1.17.1:
     dependencies:
       reusify: 1.0.4
 
+  fb-watchman@2.0.2:
+    dependencies:
+      bser: 2.1.1
+
   fetch-cookie@3.0.1:
     dependencies:
       set-cookie-parser: 2.7.0
@@ -7496,6 +11928,24 @@ snapshots:
 
   filter-obj@1.1.0: {}
 
+  finalhandler@1.1.2:
+    dependencies:
+      debug: 2.6.9
+      encodeurl: 1.0.2
+      escape-html: 1.0.3
+      on-finished: 2.3.0
+      parseurl: 1.3.3
+      statuses: 1.5.0
+      unpipe: 1.0.0
+    transitivePeerDependencies:
+      - supports-color
+
+  find-cache-dir@2.1.0:
+    dependencies:
+      commondir: 1.0.1
+      make-dir: 2.1.0
+      pkg-dir: 3.0.0
+
   find-line-column@0.5.2: {}
 
   find-root@1.1.0: {}
@@ -7504,6 +11954,10 @@ snapshots:
     dependencies:
       locate-path: 2.0.0
 
+  find-up@3.0.0:
+    dependencies:
+      locate-path: 3.0.0
+
   find-up@4.1.0:
     dependencies:
       locate-path: 5.0.0
@@ -7531,6 +11985,18 @@ snapshots:
 
   flatted@3.3.1: {}
 
+  flow-enums-runtime@0.0.6: {}
+
+  flow-parser@0.247.1: {}
+
+  focus-lock@1.3.5:
+    dependencies:
+      tslib: 2.6.3
+
+  focus-trap@6.9.4:
+    dependencies:
+      tabbable: 5.3.3
+
   for-each@0.3.3:
     dependencies:
       is-callable: 1.2.7
@@ -7542,6 +12008,20 @@ snapshots:
 
   fraction.js@4.3.7: {}
 
+  framer-motion@11.11.7(@emotion/is-prop-valid@1.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+    dependencies:
+      tslib: 2.6.3
+    optionalDependencies:
+      '@emotion/is-prop-valid': 1.3.1
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
+
+  framesync@6.1.2:
+    dependencies:
+      tslib: 2.4.0
+
+  fresh@0.5.2: {}
+
   from2@2.3.0:
     dependencies:
       inherits: 2.0.4
@@ -7565,6 +12045,12 @@ snapshots:
       jsonfile: 4.0.0
       universalify: 0.1.2
 
+  fs-extra@8.1.0:
+    dependencies:
+      graceful-fs: 4.2.11
+      jsonfile: 4.0.0
+      universalify: 0.1.2
+
   fs.realpath@1.0.0: {}
 
   fsevents@2.3.3:
@@ -7595,6 +12081,8 @@ snapshots:
       has-symbols: 1.0.3
       hasown: 2.0.2
 
+  get-nonce@1.0.1: {}
+
   get-port-please@3.1.2: {}
 
   get-starknet-core@4.0.0:
@@ -7684,6 +12172,8 @@ snapshots:
       define-properties: 1.2.1
       gopd: 1.0.1
 
+  globalyzer@0.1.0: {}
+
   globby@11.1.0:
     dependencies:
       array-union: 2.1.0
@@ -7702,6 +12192,8 @@ snapshots:
       slash: 5.1.0
       unicorn-magic: 0.1.0
 
+  globrex@0.1.2: {}
+
   gopd@1.0.1:
     dependencies:
       get-intrinsic: 1.2.4
@@ -7756,14 +12248,45 @@ snapshots:
     dependencies:
       has-symbols: 1.0.3
 
+  hash.js@1.1.7:
+    dependencies:
+      inherits: 2.0.4
+      minimalistic-assert: 1.0.1
+
   hasown@2.0.2:
     dependencies:
       function-bind: 1.1.2
 
   he@1.2.0: {}
 
+  hermes-estree@0.22.0: {}
+
+  hermes-estree@0.23.1: {}
+
+  hermes-parser@0.22.0:
+    dependencies:
+      hermes-estree: 0.22.0
+
+  hermes-parser@0.23.1:
+    dependencies:
+      hermes-estree: 0.23.1
+
   hey-listen@1.0.8: {}
 
+  history@5.3.0:
+    dependencies:
+      '@babel/runtime': 7.25.7
+
+  hmac-drbg@1.0.1:
+    dependencies:
+      hash.js: 1.1.7
+      minimalistic-assert: 1.0.1
+      minimalistic-crypto-utils: 1.0.1
+
+  hoist-non-react-statics@3.3.2:
+    dependencies:
+      react-is: 16.13.1
+
   hook-std@3.0.0: {}
 
   hosted-git-info@2.8.9: {}
@@ -7776,6 +12299,14 @@ snapshots:
     dependencies:
       lru-cache: 10.4.3
 
+  http-errors@2.0.0:
+    dependencies:
+      depd: 2.0.0
+      inherits: 2.0.4
+      setprototypeof: 1.2.0
+      statuses: 2.0.1
+      toidentifier: 1.0.1
+
   http-proxy-agent@7.0.2:
     dependencies:
       agent-base: 7.1.1
@@ -7802,8 +12333,14 @@ snapshots:
 
   idb-keyval@6.2.1: {}
 
+  ieee754@1.2.1: {}
+
   ignore@5.3.2: {}
 
+  image-size@1.1.1:
+    dependencies:
+      queue: 6.0.2
+
   import-fresh@2.0.0:
     dependencies:
       caller-path: 2.0.0
@@ -7818,6 +12355,8 @@ snapshots:
 
   import-lazy@4.0.0: {}
 
+  import-meta-resolve@4.1.0: {}
+
   import-sort-config@6.0.0:
     dependencies:
       cosmiconfig: 5.2.1
@@ -7877,6 +12416,10 @@ snapshots:
       from2: 2.3.0
       p-is-promise: 3.0.0
 
+  invariant@2.2.4:
+    dependencies:
+      loose-envify: 1.4.0
+
   iron-webcrypto@1.2.1: {}
 
   is-arguments@1.1.1:
@@ -7928,6 +12471,8 @@ snapshots:
 
   is-directory@0.3.1: {}
 
+  is-docker@2.2.1: {}
+
   is-docker@3.0.0: {}
 
   is-extglob@2.1.1: {}
@@ -7936,6 +12481,8 @@ snapshots:
     dependencies:
       call-bind: 1.0.7
 
+  is-fullwidth-code-point@2.0.0: {}
+
   is-fullwidth-code-point@3.0.0: {}
 
   is-fullwidth-code-point@4.0.0: {}
@@ -7952,6 +12499,8 @@ snapshots:
     dependencies:
       is-docker: 3.0.0
 
+  is-interactive@1.0.0: {}
+
   is-map@2.0.3: {}
 
   is-negative-zero@2.0.3: {}
@@ -7968,6 +12517,10 @@ snapshots:
 
   is-plain-obj@1.1.0: {}
 
+  is-plain-object@2.0.4:
+    dependencies:
+      isobject: 3.0.1
+
   is-promise@4.0.0: {}
 
   is-reference@3.0.2:
@@ -8009,6 +12562,8 @@ snapshots:
     dependencies:
       which-typed-array: 1.1.15
 
+  is-unicode-supported@0.1.0: {}
+
   is-unicode-supported@1.3.0: {}
 
   is-weakmap@2.0.2: {}
@@ -8022,6 +12577,12 @@ snapshots:
       call-bind: 1.0.7
       get-intrinsic: 1.2.4
 
+  is-wsl@1.1.0: {}
+
+  is-wsl@2.2.0:
+    dependencies:
+      is-docker: 2.2.1
+
   is-wsl@3.1.0:
     dependencies:
       is-inside-container: 1.0.0
@@ -8036,6 +12597,8 @@ snapshots:
 
   isexe@2.0.0: {}
 
+  isobject@3.0.1: {}
+
   isomorphic-fetch@3.0.0:
     dependencies:
       node-fetch: 2.7.0
@@ -8066,6 +12629,11 @@ snapshots:
       reflect.getprototypeof: 1.0.6
       set-function-name: 2.0.2
 
+  its-fine@1.2.5(react@18.3.1):
+    dependencies:
+      '@types/react-reconciler': 0.28.8
+      react: 18.3.1
+
   jackspeak@3.4.3:
     dependencies:
       '@isaacs/cliui': 8.0.2
@@ -8074,10 +12642,72 @@ snapshots:
 
   java-properties@1.0.2: {}
 
+  jest-environment-node@29.7.0:
+    dependencies:
+      '@jest/environment': 29.7.0
+      '@jest/fake-timers': 29.7.0
+      '@jest/types': 29.6.3
+      '@types/node': 20.14.15
+      jest-mock: 29.7.0
+      jest-util: 29.7.0
+
+  jest-get-type@29.6.3: {}
+
+  jest-message-util@29.7.0:
+    dependencies:
+      '@babel/code-frame': 7.25.7
+      '@jest/types': 29.6.3
+      '@types/stack-utils': 2.0.3
+      chalk: 4.1.2
+      graceful-fs: 4.2.11
+      micromatch: 4.0.7
+      pretty-format: 29.7.0
+      slash: 3.0.0
+      stack-utils: 2.0.6
+
+  jest-mock@29.7.0:
+    dependencies:
+      '@jest/types': 29.6.3
+      '@types/node': 20.14.15
+      jest-util: 29.7.0
+
+  jest-util@29.7.0:
+    dependencies:
+      '@jest/types': 29.6.3
+      '@types/node': 20.14.15
+      chalk: 4.1.2
+      ci-info: 3.9.0
+      graceful-fs: 4.2.11
+      picomatch: 2.3.1
+
+  jest-validate@29.7.0:
+    dependencies:
+      '@jest/types': 29.6.3
+      camelcase: 6.3.0
+      chalk: 4.1.2
+      jest-get-type: 29.6.3
+      leven: 3.1.0
+      pretty-format: 29.7.0
+
+  jest-worker@29.7.0:
+    dependencies:
+      '@types/node': 20.14.15
+      jest-util: 29.7.0
+      merge-stream: 2.0.0
+      supports-color: 8.1.1
+
   jiti@1.21.6: {}
 
   jju@1.4.0: {}
 
+  joi@17.13.3:
+    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
+
   js-tokens@4.0.0: {}
 
   js-tokens@9.0.0: {}
@@ -8091,8 +12721,43 @@ snapshots:
     dependencies:
       argparse: 2.0.1
 
+  jsc-android@250231.0.0: {}
+
+  jsc-safe-url@0.2.4: {}
+
+  jscodeshift@0.14.0(@babel/preset-env@7.25.8(@babel/core@7.25.2)):
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/parser': 7.25.8
+      '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.25.2)
+      '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.25.2)
+      '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.25.2)
+      '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.25.2)
+      '@babel/preset-env': 7.25.8(@babel/core@7.25.2)
+      '@babel/preset-flow': 7.25.7(@babel/core@7.25.2)
+      '@babel/preset-typescript': 7.25.7(@babel/core@7.25.2)
+      '@babel/register': 7.25.7(@babel/core@7.25.2)
+      babel-core: 7.0.0-bridge.0(@babel/core@7.25.2)
+      chalk: 4.1.2
+      flow-parser: 0.247.1
+      graceful-fs: 4.2.11
+      micromatch: 4.0.7
+      neo-async: 2.6.2
+      node-dir: 0.1.17
+      recast: 0.21.5
+      temp: 0.8.4
+      write-file-atomic: 2.4.3
+    transitivePeerDependencies:
+      - supports-color
+
   jsesc@2.5.2: {}
 
+  jsesc@3.0.2: {}
+
+  json-bigint@1.0.0:
+    dependencies:
+      bignumber.js: 9.1.2
+
   json-buffer@3.0.1: {}
 
   json-parse-better-errors@1.0.2: {}
@@ -8142,21 +12807,40 @@ snapshots:
 
   kind-of@6.0.3: {}
 
+  kleur@3.0.3: {}
+
   kleur@4.1.5: {}
 
+  known-css-properties@0.34.0: {}
+
   kolorist@1.8.0: {}
 
+  konva@9.3.15: {}
+
   language-subtag-registry@0.3.23: {}
 
   language-tags@1.0.9:
     dependencies:
       language-subtag-registry: 0.3.23
 
+  leven@3.1.0: {}
+
   levn@0.4.1:
     dependencies:
       prelude-ls: 1.2.1
       type-check: 0.4.0
 
+  lighthouse-logger@1.4.2:
+    dependencies:
+      debug: 2.6.9
+      marky: 1.2.5
+    transitivePeerDependencies:
+      - supports-color
+
+  lightweight-charts@4.2.1:
+    dependencies:
+      fancy-canvas: 2.1.0
+
   lilconfig@2.1.0: {}
 
   lilconfig@3.1.2: {}
@@ -8248,6 +12932,11 @@ snapshots:
       p-locate: 2.0.0
       path-exists: 3.0.0
 
+  locate-path@3.0.0:
+    dependencies:
+      p-locate: 3.0.0
+      path-exists: 3.0.0
+
   locate-path@5.0.0:
     dependencies:
       p-locate: 4.1.0
@@ -8266,6 +12955,8 @@ snapshots:
 
   lodash.capitalize@4.2.1: {}
 
+  lodash.debounce@4.0.8: {}
+
   lodash.escaperegexp@4.1.2: {}
 
   lodash.get@4.4.2: {}
@@ -8290,6 +12981,8 @@ snapshots:
 
   lodash.startcase@4.4.0: {}
 
+  lodash.throttle@4.1.1: {}
+
   lodash.uniq@4.5.0: {}
 
   lodash.uniqby@4.7.0: {}
@@ -8298,6 +12991,11 @@ snapshots:
 
   lodash@4.17.21: {}
 
+  log-symbols@4.1.0:
+    dependencies:
+      chalk: 4.1.2
+      is-unicode-supported: 0.1.0
+
   log-update@5.0.1:
     dependencies:
       ansi-escapes: 5.0.0
@@ -8306,10 +13004,18 @@ snapshots:
       strip-ansi: 7.1.0
       wrap-ansi: 8.1.0
 
+  logkitty@0.7.1:
+    dependencies:
+      ansi-fragments: 0.2.1
+      dayjs: 1.11.13
+      yargs: 15.4.1
+
   loose-envify@1.4.0:
     dependencies:
       js-tokens: 4.0.0
 
+  lossless-json@2.0.11: {}
+
   lossless-json@4.0.1: {}
 
   loupe@2.3.7:
@@ -8330,8 +13036,17 @@ snapshots:
     dependencies:
       '@jridgewell/sourcemap-codec': 1.5.0
 
+  make-dir@2.1.0:
+    dependencies:
+      pify: 4.0.1
+      semver: 5.7.2
+
   make-error@1.3.6: {}
 
+  makeerror@1.0.12:
+    dependencies:
+      tmpl: 1.0.5
+
   map-obj@1.0.1: {}
 
   map-obj@4.3.0: {}
@@ -8348,8 +13063,12 @@ snapshots:
 
   marked@5.1.2: {}
 
+  marky@1.2.5: {}
+
   mdn-data@2.0.30: {}
 
+  memoize-one@5.2.1: {}
+
   meow@12.1.1: {}
 
   meow@8.1.2:
@@ -8370,6 +13089,189 @@ snapshots:
 
   merge2@1.4.1: {}
 
+  metro-babel-transformer@0.80.12:
+    dependencies:
+      '@babel/core': 7.25.2
+      flow-enums-runtime: 0.0.6
+      hermes-parser: 0.23.1
+      nullthrows: 1.1.1
+    transitivePeerDependencies:
+      - supports-color
+
+  metro-cache-key@0.80.12:
+    dependencies:
+      flow-enums-runtime: 0.0.6
+
+  metro-cache@0.80.12:
+    dependencies:
+      exponential-backoff: 3.1.1
+      flow-enums-runtime: 0.0.6
+      metro-core: 0.80.12
+
+  metro-config@0.80.12:
+    dependencies:
+      connect: 3.7.0
+      cosmiconfig: 5.2.1
+      flow-enums-runtime: 0.0.6
+      jest-validate: 29.7.0
+      metro: 0.80.12
+      metro-cache: 0.80.12
+      metro-core: 0.80.12
+      metro-runtime: 0.80.12
+    transitivePeerDependencies:
+      - bufferutil
+      - supports-color
+      - utf-8-validate
+
+  metro-core@0.80.12:
+    dependencies:
+      flow-enums-runtime: 0.0.6
+      lodash.throttle: 4.1.1
+      metro-resolver: 0.80.12
+
+  metro-file-map@0.80.12:
+    dependencies:
+      anymatch: 3.1.3
+      debug: 2.6.9
+      fb-watchman: 2.0.2
+      flow-enums-runtime: 0.0.6
+      graceful-fs: 4.2.11
+      invariant: 2.2.4
+      jest-worker: 29.7.0
+      micromatch: 4.0.7
+      node-abort-controller: 3.1.1
+      nullthrows: 1.1.1
+      walker: 1.0.8
+    optionalDependencies:
+      fsevents: 2.3.3
+    transitivePeerDependencies:
+      - supports-color
+
+  metro-minify-terser@0.80.12:
+    dependencies:
+      flow-enums-runtime: 0.0.6
+      terser: 5.34.1
+
+  metro-resolver@0.80.12:
+    dependencies:
+      flow-enums-runtime: 0.0.6
+
+  metro-runtime@0.80.12:
+    dependencies:
+      '@babel/runtime': 7.25.7
+      flow-enums-runtime: 0.0.6
+
+  metro-source-map@0.80.12:
+    dependencies:
+      '@babel/traverse': 7.25.7
+      '@babel/types': 7.25.8
+      flow-enums-runtime: 0.0.6
+      invariant: 2.2.4
+      metro-symbolicate: 0.80.12
+      nullthrows: 1.1.1
+      ob1: 0.80.12
+      source-map: 0.5.7
+      vlq: 1.0.1
+    transitivePeerDependencies:
+      - supports-color
+
+  metro-symbolicate@0.80.12:
+    dependencies:
+      flow-enums-runtime: 0.0.6
+      invariant: 2.2.4
+      metro-source-map: 0.80.12
+      nullthrows: 1.1.1
+      source-map: 0.5.7
+      through2: 2.0.5
+      vlq: 1.0.1
+    transitivePeerDependencies:
+      - supports-color
+
+  metro-transform-plugins@0.80.12:
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/generator': 7.25.7
+      '@babel/template': 7.25.7
+      '@babel/traverse': 7.25.7
+      flow-enums-runtime: 0.0.6
+      nullthrows: 1.1.1
+    transitivePeerDependencies:
+      - supports-color
+
+  metro-transform-worker@0.80.12:
+    dependencies:
+      '@babel/core': 7.25.2
+      '@babel/generator': 7.25.7
+      '@babel/parser': 7.25.8
+      '@babel/types': 7.25.8
+      flow-enums-runtime: 0.0.6
+      metro: 0.80.12
+      metro-babel-transformer: 0.80.12
+      metro-cache: 0.80.12
+      metro-cache-key: 0.80.12
+      metro-minify-terser: 0.80.12
+      metro-source-map: 0.80.12
+      metro-transform-plugins: 0.80.12
+      nullthrows: 1.1.1
+    transitivePeerDependencies:
+      - bufferutil
+      - supports-color
+      - utf-8-validate
+
+  metro@0.80.12:
+    dependencies:
+      '@babel/code-frame': 7.25.7
+      '@babel/core': 7.25.2
+      '@babel/generator': 7.25.7
+      '@babel/parser': 7.25.8
+      '@babel/template': 7.25.7
+      '@babel/traverse': 7.25.7
+      '@babel/types': 7.25.8
+      accepts: 1.3.8
+      chalk: 4.1.2
+      ci-info: 2.0.0
+      connect: 3.7.0
+      debug: 2.6.9
+      denodeify: 1.2.1
+      error-stack-parser: 2.1.4
+      flow-enums-runtime: 0.0.6
+      graceful-fs: 4.2.11
+      hermes-parser: 0.23.1
+      image-size: 1.1.1
+      invariant: 2.2.4
+      jest-worker: 29.7.0
+      jsc-safe-url: 0.2.4
+      lodash.throttle: 4.1.1
+      metro-babel-transformer: 0.80.12
+      metro-cache: 0.80.12
+      metro-cache-key: 0.80.12
+      metro-config: 0.80.12
+      metro-core: 0.80.12
+      metro-file-map: 0.80.12
+      metro-resolver: 0.80.12
+      metro-runtime: 0.80.12
+      metro-source-map: 0.80.12
+      metro-symbolicate: 0.80.12
+      metro-transform-plugins: 0.80.12
+      metro-transform-worker: 0.80.12
+      mime-types: 2.1.35
+      nullthrows: 1.1.1
+      serialize-error: 2.1.0
+      source-map: 0.5.7
+      strip-ansi: 6.0.1
+      throat: 5.0.0
+      ws: 7.5.10
+      yargs: 17.7.2
+    transitivePeerDependencies:
+      - bufferutil
+      - supports-color
+      - utf-8-validate
+
+  micro-starknet@0.2.3:
+    dependencies:
+      '@noble/curves': 1.0.0
+      '@noble/hashes': 1.3.3
+
   micromatch@4.0.5:
     dependencies:
       braces: 3.0.3
@@ -8380,6 +13282,18 @@ snapshots:
       braces: 3.0.3
       picomatch: 2.3.1
 
+  mime-db@1.52.0: {}
+
+  mime-db@1.53.0: {}
+
+  mime-types@2.1.35:
+    dependencies:
+      mime-db: 1.52.0
+
+  mime@1.6.0: {}
+
+  mime@2.6.0: {}
+
   mime@3.0.0: {}
 
   mime@4.0.4: {}
@@ -8390,6 +13304,10 @@ snapshots:
 
   min-indent@1.0.1: {}
 
+  minimalistic-assert@1.0.1: {}
+
+  minimalistic-crypto-utils@1.0.1: {}
+
   minimatch@3.0.8:
     dependencies:
       brace-expansion: 1.1.11
@@ -8420,6 +13338,8 @@ snapshots:
     dependencies:
       minimist: 1.2.8
 
+  mkdirp@1.0.4: {}
+
   mlly@1.7.1:
     dependencies:
       acorn: 8.12.1
@@ -8440,6 +13360,10 @@ snapshots:
 
   mri@1.2.0: {}
 
+  mrmime@2.0.0: {}
+
+  ms@2.0.0: {}
+
   ms@2.1.2: {}
 
   ms@2.1.3: {}
@@ -8458,12 +13382,22 @@ snapshots:
 
   natural-compare@1.4.0: {}
 
+  negotiator@0.6.3: {}
+
   neo-async@2.6.2: {}
 
   nerf-dart@1.0.0: {}
 
+  nocache@3.0.4: {}
+
+  node-abort-controller@3.1.1: {}
+
   node-addon-api@7.1.1: {}
 
+  node-dir@0.1.17:
+    dependencies:
+      minimatch: 3.1.2
+
   node-emoji@1.11.0:
     dependencies:
       lodash: 4.17.21
@@ -8476,8 +13410,12 @@ snapshots:
 
   node-forge@1.3.1: {}
 
+  node-int64@0.4.0: {}
+
   node-releases@2.0.18: {}
 
+  node-stream-zip@1.15.0: {}
+
   normalize-package-data@2.5.0:
     dependencies:
       hosted-git-info: 2.8.9
@@ -8514,6 +13452,12 @@ snapshots:
 
   npm@9.9.3: {}
 
+  nullthrows@1.1.1: {}
+
+  ob1@0.80.12:
+    dependencies:
+      flow-enums-runtime: 0.0.6
+
   object-assign@4.1.1: {}
 
   object-hash@3.0.0: {}
@@ -8569,6 +13513,16 @@ snapshots:
 
   on-exit-leak-free@0.2.0: {}
 
+  on-finished@2.3.0:
+    dependencies:
+      ee-first: 1.1.1
+
+  on-finished@2.4.1:
+    dependencies:
+      ee-first: 1.1.1
+
+  on-headers@1.0.2: {}
+
   once@1.4.0:
     dependencies:
       wrappy: 1.0.2
@@ -8581,6 +13535,15 @@ snapshots:
     dependencies:
       mimic-fn: 4.0.0
 
+  open@6.4.0:
+    dependencies:
+      is-wsl: 1.1.0
+
+  open@7.4.2:
+    dependencies:
+      is-docker: 2.2.1
+      is-wsl: 2.2.0
+
   optionator@0.9.4:
     dependencies:
       deep-is: 0.1.4
@@ -8590,6 +13553,18 @@ snapshots:
       type-check: 0.4.0
       word-wrap: 1.2.5
 
+  ora@5.4.1:
+    dependencies:
+      bl: 4.1.0
+      chalk: 4.1.2
+      cli-cursor: 3.1.0
+      cli-spinners: 2.9.2
+      is-interactive: 1.0.0
+      is-unicode-supported: 0.1.0
+      log-symbols: 4.1.0
+      strip-ansi: 6.0.1
+      wcwidth: 1.0.1
+
   p-each-series@3.0.0: {}
 
   p-filter@4.1.0:
@@ -8622,6 +13597,10 @@ snapshots:
     dependencies:
       p-limit: 1.3.0
 
+  p-locate@3.0.0:
+    dependencies:
+      p-limit: 2.3.0
+
   p-locate@4.1.0:
     dependencies:
       p-limit: 2.3.0
@@ -8672,6 +13651,8 @@ snapshots:
       lines-and-columns: 2.0.4
       type-fest: 3.13.1
 
+  parseurl@1.3.3: {}
+
   path-browserify@1.0.1: {}
 
   path-exists@3.0.0: {}
@@ -8717,6 +13698,8 @@ snapshots:
 
   pify@3.0.0: {}
 
+  pify@4.0.1: {}
+
   pino-abstract-transport@0.5.0:
     dependencies:
       duplexify: 4.1.3
@@ -8745,6 +13728,10 @@ snapshots:
       find-up: 2.1.0
       load-json-file: 4.0.0
 
+  pkg-dir@3.0.0:
+    dependencies:
+      find-up: 3.0.0
+
   pkg-types@1.1.3:
     dependencies:
       confbox: 0.1.7
@@ -8753,6 +13740,13 @@ snapshots:
 
   pngjs@5.0.0: {}
 
+  popmotion@11.0.5:
+    dependencies:
+      framesync: 6.1.2
+      hey-listen: 1.0.8
+      style-value-types: 5.1.2
+      tslib: 2.4.0
+
   possible-typed-array-names@1.0.0: {}
 
   postcss-import@15.1.0(postcss@8.4.41):
@@ -8767,6 +13761,14 @@ snapshots:
       camelcase-css: 2.0.1
       postcss: 8.4.41
 
+  postcss-load-config@3.1.4(postcss@8.4.41)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4)):
+    dependencies:
+      lilconfig: 2.1.0
+      yaml: 1.10.2
+    optionalDependencies:
+      postcss: 8.4.41
+      ts-node: 10.9.2(@types/node@20.5.1)(typescript@5.5.4)
+
   postcss-load-config@4.0.2(postcss@8.4.41)(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4)):
     dependencies:
       lilconfig: 3.1.2
@@ -8780,6 +13782,14 @@ snapshots:
       postcss: 8.4.41
       postcss-selector-parser: 6.1.2
 
+  postcss-safe-parser@6.0.0(postcss@8.4.41):
+    dependencies:
+      postcss: 8.4.41
+
+  postcss-scss@4.0.9(postcss@8.4.41):
+    dependencies:
+      postcss: 8.4.41
+
   postcss-selector-parser@6.1.2:
     dependencies:
       cssesc: 3.0.0
@@ -8795,6 +13805,10 @@ snapshots:
 
   prelude-ls@1.2.1: {}
 
+  prettier-linter-helpers@1.0.0:
+    dependencies:
+      fast-diff: 1.3.0
+
   prettier-plugin-import-sort@0.0.7(prettier@3.3.3):
     dependencies:
       import-sort: 6.0.0
@@ -8805,66 +13819,303 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  prettier@3.3.3: {}
-
-  pretty-format@29.7.0:
+  prettier@3.3.3: {}
+
+  pretty-format@26.6.2:
+    dependencies:
+      '@jest/types': 26.6.2
+      ansi-regex: 5.0.1
+      ansi-styles: 4.3.0
+      react-is: 17.0.2
+
+  pretty-format@29.7.0:
+    dependencies:
+      '@jest/schemas': 29.6.3
+      ansi-styles: 5.2.0
+      react-is: 18.3.1
+
+  process-nextick-args@2.0.1: {}
+
+  process-warning@1.0.0: {}
+
+  promise@8.3.0:
+    dependencies:
+      asap: 2.0.6
+
+  prompts@2.4.2:
+    dependencies:
+      kleur: 3.0.3
+      sisteransi: 1.0.5
+
+  prop-types@15.8.1:
+    dependencies:
+      loose-envify: 1.4.0
+      object-assign: 4.1.1
+      react-is: 16.13.1
+
+  proto-list@1.2.4: {}
+
+  proxy-compare@2.5.1: {}
+
+  psl@1.9.0: {}
+
+  punycode@2.3.1: {}
+
+  qrcode@1.5.3:
+    dependencies:
+      dijkstrajs: 1.0.3
+      encode-utf8: 1.0.3
+      pngjs: 5.0.0
+      yargs: 15.4.1
+
+  query-string@7.1.3:
+    dependencies:
+      decode-uri-component: 0.2.2
+      filter-obj: 1.1.0
+      split-on-first: 1.1.0
+      strict-uri-encode: 2.0.0
+
+  querystringify@2.2.0: {}
+
+  queue-microtask@1.2.3: {}
+
+  queue@6.0.2:
+    dependencies:
+      inherits: 2.0.4
+
+  quick-format-unescaped@4.0.4: {}
+
+  quick-lru@4.0.1: {}
+
+  radix3@1.1.2: {}
+
+  range-parser@1.2.1: {}
+
+  rc@1.2.8:
+    dependencies:
+      deep-extend: 0.6.0
+      ini: 1.3.8
+      minimist: 1.2.8
+      strip-json-comments: 2.0.1
+
+  react-clientside-effect@1.2.6(react@18.3.1):
+    dependencies:
+      '@babel/runtime': 7.25.7
+      react: 18.3.1
+
+  react-copy-to-clipboard@5.1.0(react@18.3.1):
+    dependencies:
+      copy-to-clipboard: 3.3.3
+      prop-types: 15.8.1
+      react: 18.3.1
+
+  react-devtools-core@5.3.2:
+    dependencies:
+      shell-quote: 1.8.1
+      ws: 7.5.10
+    transitivePeerDependencies:
+      - bufferutil
+      - utf-8-validate
+
+  react-dom@18.3.1(react@18.3.1):
+    dependencies:
+      loose-envify: 1.4.0
+      react: 18.3.1
+      scheduler: 0.23.2
+
+  react-fast-compare@3.2.2: {}
+
+  react-focus-lock@2.13.2(@types/react@18.3.11)(react@18.3.1):
+    dependencies:
+      '@babel/runtime': 7.25.7
+      focus-lock: 1.3.5
+      prop-types: 15.8.1
+      react: 18.3.1
+      react-clientside-effect: 1.2.6(react@18.3.1)
+      use-callback-ref: 1.3.2(@types/react@18.3.11)(react@18.3.1)
+      use-sidecar: 1.1.2(@types/react@18.3.11)(react@18.3.1)
+    optionalDependencies:
+      '@types/react': 18.3.11
+
+  react-is@16.13.1: {}
+
+  react-is@17.0.2: {}
+
+  react-is@18.3.1: {}
+
+  react-konva@18.2.10(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+    dependencies:
+      '@types/react-reconciler': 0.28.8
+      its-fine: 1.2.5(react@18.3.1)
+      konva: 9.3.15
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
+      react-reconciler: 0.29.2(react@18.3.1)
+      scheduler: 0.23.2
+
+  react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4):
+    dependencies:
+      '@jest/create-cache-key-function': 29.7.0
+      '@react-native-community/cli': 14.1.0(typescript@5.5.4)
+      '@react-native-community/cli-platform-android': 14.1.0
+      '@react-native-community/cli-platform-ios': 14.1.0
+      '@react-native/assets-registry': 0.75.4
+      '@react-native/codegen': 0.75.4(@babel/preset-env@7.25.8(@babel/core@7.25.2))
+      '@react-native/community-cli-plugin': 0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))
+      '@react-native/gradle-plugin': 0.75.4
+      '@react-native/js-polyfills': 0.75.4
+      '@react-native/normalize-colors': 0.75.4
+      '@react-native/virtualized-lists': 0.75.4(@types/react@18.3.11)(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)
+      abort-controller: 3.0.0
+      anser: 1.4.10
+      ansi-regex: 5.0.1
+      base64-js: 1.5.1
+      chalk: 4.1.2
+      commander: 9.5.0
+      event-target-shim: 5.0.1
+      flow-enums-runtime: 0.0.6
+      glob: 7.2.3
+      invariant: 2.2.4
+      jest-environment-node: 29.7.0
+      jsc-android: 250231.0.0
+      memoize-one: 5.2.1
+      metro-runtime: 0.80.12
+      metro-source-map: 0.80.12
+      mkdirp: 0.5.6
+      nullthrows: 1.1.1
+      pretty-format: 26.6.2
+      promise: 8.3.0
+      react: 18.3.1
+      react-devtools-core: 5.3.2
+      react-refresh: 0.14.2
+      regenerator-runtime: 0.13.11
+      scheduler: 0.24.0-canary-efb381bbf-20230505
+      semver: 7.6.3
+      stacktrace-parser: 0.1.10
+      whatwg-fetch: 3.6.20
+      ws: 6.2.3
+      yargs: 17.7.2
+    optionalDependencies:
+      '@types/react': 18.3.11
+    transitivePeerDependencies:
+      - '@babel/core'
+      - '@babel/preset-env'
+      - bufferutil
+      - encoding
+      - supports-color
+      - typescript
+      - utf-8-validate
+
+  react-reconciler@0.27.0(react@18.3.1):
     dependencies:
-      '@jest/schemas': 29.6.3
-      ansi-styles: 5.2.0
-      react-is: 18.3.1
-
-  process-nextick-args@2.0.1: {}
-
-  process-warning@1.0.0: {}
+      loose-envify: 1.4.0
+      react: 18.3.1
+      scheduler: 0.21.0
 
-  prop-types@15.8.1:
+  react-reconciler@0.29.2(react@18.3.1):
     dependencies:
       loose-envify: 1.4.0
-      object-assign: 4.1.1
-      react-is: 16.13.1
-
-  proto-list@1.2.4: {}
-
-  proxy-compare@2.5.1: {}
-
-  psl@1.9.0: {}
+      react: 18.3.1
+      scheduler: 0.23.2
 
-  punycode@2.3.1: {}
+  react-refresh@0.14.2: {}
 
-  qrcode@1.5.3:
+  react-remove-scroll-bar@2.3.6(@types/react@18.3.11)(react@18.3.1):
     dependencies:
-      dijkstrajs: 1.0.3
-      encode-utf8: 1.0.3
-      pngjs: 5.0.0
-      yargs: 15.4.1
+      react: 18.3.1
+      react-style-singleton: 2.2.1(@types/react@18.3.11)(react@18.3.1)
+      tslib: 2.6.3
+    optionalDependencies:
+      '@types/react': 18.3.11
 
-  query-string@7.1.3:
+  react-remove-scroll@2.6.0(@types/react@18.3.11)(react@18.3.1):
     dependencies:
-      decode-uri-component: 0.2.2
-      filter-obj: 1.1.0
-      split-on-first: 1.1.0
-      strict-uri-encode: 2.0.0
-
-  querystringify@2.2.0: {}
-
-  queue-microtask@1.2.3: {}
+      react: 18.3.1
+      react-remove-scroll-bar: 2.3.6(@types/react@18.3.11)(react@18.3.1)
+      react-style-singleton: 2.2.1(@types/react@18.3.11)(react@18.3.1)
+      tslib: 2.6.3
+      use-callback-ref: 1.3.2(@types/react@18.3.11)(react@18.3.1)
+      use-sidecar: 1.1.2(@types/react@18.3.11)(react@18.3.1)
+    optionalDependencies:
+      '@types/react': 18.3.11
 
-  quick-format-unescaped@4.0.4: {}
+  react-router-dom@6.26.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+    dependencies:
+      '@remix-run/router': 1.19.2
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
+      react-router: 6.26.2(react@18.3.1)
 
-  quick-lru@4.0.1: {}
+  react-router@6.26.2(react@18.3.1):
+    dependencies:
+      '@remix-run/router': 1.19.2
+      react: 18.3.1
 
-  radix3@1.1.2: {}
+  react-spring-bottom-sheet@3.5.0-alpha.0(@react-three/fiber@8.17.10(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)(three@0.169.0))(@types/react@18.3.11)(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react-konva@18.2.10(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react-zdog@1.2.2)(react@18.3.1)(three@0.169.0)(zdog@1.1.3):
+    dependencies:
+      '@juggle/resize-observer': 3.4.0
+      '@reach/portal': 0.13.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+      '@xstate/react': 1.6.3(@types/react@18.3.11)(react@18.3.1)(xstate@4.38.3)
+      body-scroll-lock: 3.1.5
+      focus-trap: 6.9.4
+      react: 18.3.1
+      react-spring: 9.7.4(@react-three/fiber@8.17.10(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)(three@0.169.0))(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react-konva@18.2.10(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react-zdog@1.2.2)(react@18.3.1)(three@0.169.0)(zdog@1.1.3)
+      react-use-gesture: 8.0.1(react@18.3.1)
+      xstate: 4.38.3
+    transitivePeerDependencies:
+      - '@react-three/fiber'
+      - '@types/react'
+      - '@xstate/fsm'
+      - konva
+      - react-dom
+      - react-konva
+      - react-native
+      - react-zdog
+      - three
+      - zdog
+
+  react-spring@9.7.4(@react-three/fiber@8.17.10(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)(three@0.169.0))(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react-konva@18.2.10(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react-zdog@1.2.2)(react@18.3.1)(three@0.169.0)(zdog@1.1.3):
+    dependencies:
+      '@react-spring/core': 9.7.5(react@18.3.1)
+      '@react-spring/konva': 9.7.5(konva@9.3.15)(react-konva@18.2.10(konva@9.3.15)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
+      '@react-spring/native': 9.7.5(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)
+      '@react-spring/three': 9.7.5(@react-three/fiber@8.17.10(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.25.2)(@babel/preset-env@7.25.8(@babel/core@7.25.2))(@types/react@18.3.11)(react@18.3.1)(typescript@5.5.4))(react@18.3.1)(three@0.169.0))(react@18.3.1)(three@0.169.0)
+      '@react-spring/web': 9.7.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+      '@react-spring/zdog': 9.7.5(react-dom@18.3.1(react@18.3.1))(react-zdog@1.2.2)(react@18.3.1)(zdog@1.1.3)
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
+    transitivePeerDependencies:
+      - '@react-three/fiber'
+      - konva
+      - react-konva
+      - react-native
+      - react-zdog
+      - three
+      - zdog
+
+  react-style-singleton@2.2.1(@types/react@18.3.11)(react@18.3.1):
+    dependencies:
+      get-nonce: 1.0.1
+      invariant: 2.2.4
+      react: 18.3.1
+      tslib: 2.6.3
+    optionalDependencies:
+      '@types/react': 18.3.11
 
-  rc@1.2.8:
+  react-use-gesture@8.0.1(react@18.3.1):
     dependencies:
-      deep-extend: 0.6.0
-      ini: 1.3.8
-      minimist: 1.2.8
-      strip-json-comments: 2.0.1
+      react: 18.3.1
 
-  react-is@16.13.1: {}
+  react-virtuoso@4.10.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+    dependencies:
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
 
-  react-is@18.3.1: {}
+  react-zdog@1.2.2:
+    dependencies:
+      react: 18.3.1
+      react-dom: 18.3.1(react@18.3.1)
+      resize-observer-polyfill: 1.5.1
 
   react@18.3.1:
     dependencies:
@@ -8920,8 +14171,17 @@ snapshots:
     dependencies:
       picomatch: 2.3.1
 
+  readline@1.3.0: {}
+
   real-require@0.1.0: {}
 
+  recast@0.21.5:
+    dependencies:
+      ast-types: 0.15.2
+      esprima: 4.0.1
+      source-map: 0.6.1
+      tslib: 2.6.3
+
   redent@3.0.0:
     dependencies:
       indent-string: 4.0.0
@@ -8941,6 +14201,20 @@ snapshots:
       globalthis: 1.0.4
       which-builtin-type: 1.1.4
 
+  regenerate-unicode-properties@10.2.0:
+    dependencies:
+      regenerate: 1.4.2
+
+  regenerate@1.4.2: {}
+
+  regenerator-runtime@0.13.11: {}
+
+  regenerator-runtime@0.14.1: {}
+
+  regenerator-transform@0.15.2:
+    dependencies:
+      '@babel/runtime': 7.25.7
+
   regexp.prototype.flags@1.5.2:
     dependencies:
       call-bind: 1.0.7
@@ -8948,10 +14222,25 @@ snapshots:
       es-errors: 1.3.0
       set-function-name: 2.0.2
 
+  regexpu-core@6.1.1:
+    dependencies:
+      regenerate: 1.4.2
+      regenerate-unicode-properties: 10.2.0
+      regjsgen: 0.8.0
+      regjsparser: 0.11.1
+      unicode-match-property-ecmascript: 2.0.0
+      unicode-match-property-value-ecmascript: 2.2.0
+
   registry-auth-token@5.0.2:
     dependencies:
       '@pnpm/npm-conf': 2.3.1
 
+  regjsgen@0.8.0: {}
+
+  regjsparser@0.11.1:
+    dependencies:
+      jsesc: 3.0.2
+
   require-directory@2.1.1: {}
 
   require-from-string@2.0.2: {}
@@ -8960,6 +14249,8 @@ snapshots:
 
   requires-port@1.0.0: {}
 
+  resize-observer-polyfill@1.5.1: {}
+
   resolve-from@3.0.0: {}
 
   resolve-from@4.0.0: {}
@@ -8989,15 +14280,26 @@ snapshots:
       path-parse: 1.0.7
       supports-preserve-symlinks-flag: 1.0.0
 
+  restore-cursor@3.1.0:
+    dependencies:
+      onetime: 5.1.2
+      signal-exit: 3.0.7
+
   restore-cursor@4.0.0:
     dependencies:
       onetime: 5.1.2
       signal-exit: 3.0.7
 
+  retry@0.13.1: {}
+
   reusify@1.0.4: {}
 
   rfdc@1.4.1: {}
 
+  rimraf@2.6.3:
+    dependencies:
+      glob: 7.2.3
+
   rimraf@2.7.1:
     dependencies:
       glob: 7.2.3
@@ -9066,6 +14368,23 @@ snapshots:
       mkdirp: 0.5.6
       rimraf: 2.7.1
 
+  scheduler@0.21.0:
+    dependencies:
+      loose-envify: 1.4.0
+
+  scheduler@0.23.2:
+    dependencies:
+      loose-envify: 1.4.0
+
+  scheduler@0.24.0-canary-efb381bbf-20230505:
+    dependencies:
+      loose-envify: 1.4.0
+
+  selfsigned@2.4.1:
+    dependencies:
+      '@types/node-forge': 1.3.11
+      node-forge: 1.3.1
+
   semantic-release@21.1.2(typescript@5.5.4):
     dependencies:
       '@semantic-release/commit-analyzer': 10.0.4(semantic-release@21.1.2(typescript@5.5.4))
@@ -9116,6 +14435,35 @@ snapshots:
 
   semver@7.6.3: {}
 
+  send@0.19.0:
+    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
+    transitivePeerDependencies:
+      - supports-color
+
+  serialize-error@2.1.0: {}
+
+  serve-static@1.16.2:
+    dependencies:
+      encodeurl: 2.0.0
+      escape-html: 1.0.3
+      parseurl: 1.3.3
+      send: 0.19.0
+    transitivePeerDependencies:
+      - supports-color
+
   set-blocking@2.0.0: {}
 
   set-cookie-parser@2.7.0: {}
@@ -9136,12 +14484,20 @@ snapshots:
       functions-have-names: 1.2.3
       has-property-descriptors: 1.0.2
 
+  setprototypeof@1.2.0: {}
+
+  shallow-clone@3.0.1:
+    dependencies:
+      kind-of: 6.0.3
+
   shebang-command@2.0.0:
     dependencies:
       shebang-regex: 3.0.0
 
   shebang-regex@3.0.0: {}
 
+  shell-quote@1.8.1: {}
+
   side-channel@1.0.6:
     dependencies:
       call-bind: 1.0.7
@@ -9161,10 +14517,24 @@ snapshots:
       figures: 2.0.0
       pkg-conf: 2.1.0
 
+  sirv@2.0.4:
+    dependencies:
+      '@polka/url': 1.0.0-next.28
+      mrmime: 2.0.0
+      totalist: 3.0.1
+
+  sisteransi@1.0.5: {}
+
   slash@3.0.0: {}
 
   slash@5.1.0: {}
 
+  slice-ansi@2.1.0:
+    dependencies:
+      ansi-styles: 3.2.1
+      astral-regex: 1.0.0
+      is-fullwidth-code-point: 2.0.0
+
   slice-ansi@5.0.0:
     dependencies:
       ansi-styles: 6.2.1
@@ -9183,6 +14553,13 @@ snapshots:
 
   source-map-js@1.2.0: {}
 
+  source-map-support@0.5.21:
+    dependencies:
+      buffer-from: 1.1.2
+      source-map: 0.6.1
+
+  source-map@0.5.7: {}
+
   source-map@0.6.1: {}
 
   spawn-error-forwarder@1.0.0: {}
@@ -9219,8 +14596,46 @@ snapshots:
 
   sprintf-js@1.0.3: {}
 
+  stack-utils@2.0.6:
+    dependencies:
+      escape-string-regexp: 2.0.0
+
   stackback@0.0.2: {}
 
+  stackframe@1.3.4: {}
+
+  stacktrace-parser@0.1.10:
+    dependencies:
+      type-fest: 0.7.1
+
+  starknet@4.4.0:
+    dependencies:
+      '@ethersproject/bytes': 5.7.0
+      bn.js: 5.2.1
+      elliptic: 6.5.7
+      ethereum-cryptography: 1.2.0
+      hash.js: 1.1.7
+      isomorphic-fetch: 3.0.0
+      json-bigint: 1.0.0
+      minimalistic-assert: 1.0.1
+      pako: 2.1.0
+      ts-custom-error: 3.3.1
+      url-join: 4.0.1
+    transitivePeerDependencies:
+      - encoding
+
+  starknet@5.25.0:
+    dependencies:
+      '@noble/curves': 1.3.0
+      '@scure/base': 1.1.9
+      '@scure/starknet': 1.0.0
+      isomorphic-fetch: 3.0.0
+      lossless-json: 2.0.11
+      pako: 2.1.0
+      url-join: 4.0.1
+    transitivePeerDependencies:
+      - encoding
+
   starknet@6.11.0:
     dependencies:
       '@noble/curves': 1.4.2
@@ -9239,6 +14654,10 @@ snapshots:
     transitivePeerDependencies:
       - encoding
 
+  statuses@1.5.0: {}
+
+  statuses@2.0.1: {}
+
   std-env@3.7.0: {}
 
   stop-iteration-iterator@1.0.0:
@@ -9320,6 +14739,10 @@ snapshots:
     dependencies:
       safe-buffer: 5.2.1
 
+  strip-ansi@5.2.0:
+    dependencies:
+      ansi-regex: 4.1.1
+
   strip-ansi@6.0.1:
     dependencies:
       ansi-regex: 5.0.1
@@ -9346,6 +14769,15 @@ snapshots:
     dependencies:
       js-tokens: 9.0.0
 
+  strnum@1.0.5: {}
+
+  style-value-types@5.1.2:
+    dependencies:
+      hey-listen: 1.0.8
+      tslib: 2.4.0
+
+  stylis@4.2.0: {}
+
   sucrase@3.35.0:
     dependencies:
       '@jridgewell/gen-mapping': 0.3.5
@@ -9356,6 +14788,8 @@ snapshots:
       pirates: 4.0.6
       ts-interface-checker: 0.1.13
 
+  sudo-prompt@9.2.1: {}
+
   supports-color@5.5.0:
     dependencies:
       has-flag: 3.0.0
@@ -9375,6 +14809,10 @@ snapshots:
 
   supports-preserve-symlinks-flag@1.0.0: {}
 
+  suspend-react@0.1.3(react@18.3.1):
+    dependencies:
+      react: 18.3.1
+
   svelte-check@3.8.5(@babel/core@7.25.2)(postcss-load-config@4.0.2(postcss@8.4.41)(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4)))(postcss@8.4.41)(svelte@4.2.18):
     dependencies:
       '@jridgewell/trace-mapping': 0.3.25
@@ -9395,6 +14833,16 @@ snapshots:
       - stylus
       - sugarss
 
+  svelte-eslint-parser@0.41.1(svelte@4.2.18):
+    dependencies:
+      eslint-scope: 7.2.2
+      eslint-visitor-keys: 3.4.3
+      espree: 9.6.1
+      postcss: 8.4.41
+      postcss-scss: 4.0.9(postcss@8.4.41)
+    optionalDependencies:
+      svelte: 4.2.18
+
   svelte-forms@2.3.1:
     dependencies:
       is-promise: 4.0.0
@@ -9434,8 +14882,19 @@ snapshots:
       magic-string: 0.30.11
       periscopic: 3.1.0
 
+  swr@1.3.0(react@18.3.1):
+    dependencies:
+      react: 18.3.1
+
+  synckit@0.9.2:
+    dependencies:
+      '@pkgr/core': 0.1.1
+      tslib: 2.6.3
+
   system-architecture@0.1.0: {}
 
+  tabbable@5.3.3: {}
+
   tailwindcss@3.4.10(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4)):
     dependencies:
       '@alloc/quick-lru': 5.2.0
@@ -9467,6 +14926,10 @@ snapshots:
 
   temp-dir@3.0.0: {}
 
+  temp@0.8.4:
+    dependencies:
+      rimraf: 2.6.3
+
   tempy@3.1.0:
     dependencies:
       is-stream: 3.0.0
@@ -9474,6 +14937,13 @@ snapshots:
       type-fest: 2.19.0
       unique-string: 3.0.0
 
+  terser@5.34.1:
+    dependencies:
+      '@jridgewell/source-map': 0.3.6
+      acorn: 8.12.1
+      commander: 2.20.3
+      source-map-support: 0.5.21
+
   text-extensions@1.9.0: {}
 
   text-extensions@2.4.0: {}
@@ -9492,6 +14962,10 @@ snapshots:
     dependencies:
       real-require: 0.1.0
 
+  three@0.169.0: {}
+
+  throat@5.0.0: {}
+
   through2@2.0.5:
     dependencies:
       readable-stream: 2.3.8
@@ -9503,18 +14977,31 @@ snapshots:
 
   through@2.3.8: {}
 
+  tiny-glob@0.2.9:
+    dependencies:
+      globalyzer: 0.1.0
+      globrex: 0.1.2
+
   tinybench@2.9.0: {}
 
   tinypool@0.8.4: {}
 
   tinyspy@2.2.1: {}
 
+  tmpl@1.0.5: {}
+
   to-fast-properties@2.0.0: {}
 
   to-regex-range@5.0.1:
     dependencies:
       is-number: 7.0.0
 
+  toggle-selection@1.0.6: {}
+
+  toidentifier@1.0.1: {}
+
+  totalist@3.0.1: {}
+
   tough-cookie@4.1.4:
     dependencies:
       psl: 1.9.0
@@ -9537,6 +15024,8 @@ snapshots:
     dependencies:
       typescript: 5.5.4
 
+  ts-custom-error@3.3.1: {}
+
   ts-interface-checker@0.1.13: {}
 
   ts-mixer@6.0.4: {}
@@ -9568,12 +15057,16 @@ snapshots:
 
   tslib@1.14.1: {}
 
+  tslib@2.4.0: {}
+
   tslib@2.6.3: {}
 
   type-check@0.4.0:
     dependencies:
       prelude-ls: 1.2.1
 
+  type-detect@4.0.8: {}
+
   type-detect@4.1.0: {}
 
   type-fest@0.18.1: {}
@@ -9582,6 +15075,8 @@ snapshots:
 
   type-fest@0.6.0: {}
 
+  type-fest@0.7.1: {}
+
   type-fest@0.8.1: {}
 
   type-fest@1.4.0: {}
@@ -9630,6 +15125,8 @@ snapshots:
 
   typescript@5.5.4: {}
 
+  ua-parser-js@1.0.39: {}
+
   ufo@1.5.4: {}
 
   uglify-js@3.19.2:
@@ -9660,6 +15157,17 @@ snapshots:
 
   unfetch@4.2.0: {}
 
+  unicode-canonical-property-names-ecmascript@2.0.1: {}
+
+  unicode-match-property-ecmascript@2.0.0:
+    dependencies:
+      unicode-canonical-property-names-ecmascript: 2.0.1
+      unicode-property-aliases-ecmascript: 2.1.0
+
+  unicode-match-property-value-ecmascript@2.2.0: {}
+
+  unicode-property-aliases-ecmascript@2.1.0: {}
+
   unicorn-magic@0.1.0: {}
 
   unique-string@3.0.0:
@@ -9674,6 +15182,8 @@ snapshots:
 
   universalify@2.0.1: {}
 
+  unpipe@1.0.0: {}
+
   unstorage@1.10.2(idb-keyval@6.2.1):
     dependencies:
       anymatch: 3.1.3
@@ -9703,6 +15213,12 @@ snapshots:
       escalade: 3.1.2
       picocolors: 1.0.1
 
+  update-browserslist-db@1.1.0(browserslist@4.24.0):
+    dependencies:
+      browserslist: 4.24.0
+      escalade: 3.1.2
+      picocolors: 1.0.1
+
   uqr@0.1.2: {}
 
   uri-js@4.4.1:
@@ -9718,12 +15234,44 @@ snapshots:
       querystringify: 2.2.0
       requires-port: 1.0.0
 
+  use-callback-ref@1.3.2(@types/react@18.3.11)(react@18.3.1):
+    dependencies:
+      react: 18.3.1
+      tslib: 2.6.3
+    optionalDependencies:
+      '@types/react': 18.3.11
+
+  use-isomorphic-layout-effect@1.1.2(@types/react@18.3.11)(react@18.3.1):
+    dependencies:
+      react: 18.3.1
+    optionalDependencies:
+      '@types/react': 18.3.11
+
+  use-sidecar@1.1.2(@types/react@18.3.11)(react@18.3.1):
+    dependencies:
+      detect-node-es: 1.1.0
+      react: 18.3.1
+      tslib: 2.6.3
+    optionalDependencies:
+      '@types/react': 18.3.11
+
+  use-subscription@1.8.2(react@18.3.1):
+    dependencies:
+      react: 18.3.1
+      use-sync-external-store: 1.2.2(react@18.3.1)
+
   use-sync-external-store@1.2.0(react@18.3.1):
     dependencies:
       react: 18.3.1
 
+  use-sync-external-store@1.2.2(react@18.3.1):
+    dependencies:
+      react: 18.3.1
+
   util-deprecate@1.0.2: {}
 
+  utils-merge@1.0.1: {}
+
   v8-compile-cache-lib@3.0.1: {}
 
   validate-npm-package-license@3.0.4:
@@ -9733,20 +15281,23 @@ snapshots:
 
   validator@13.12.0: {}
 
-  valtio@1.11.2(react@18.3.1):
+  valtio@1.11.2(@types/react@18.3.11)(react@18.3.1):
     dependencies:
       proxy-compare: 2.5.1
       use-sync-external-store: 1.2.0(react@18.3.1)
     optionalDependencies:
+      '@types/react': 18.3.11
       react: 18.3.1
 
-  vite-node@1.6.0(@types/node@20.14.15):
+  vary@1.1.2: {}
+
+  vite-node@1.6.0(@types/node@20.14.15)(terser@5.34.1):
     dependencies:
       cac: 6.7.14
       debug: 4.3.6
       pathe: 1.1.2
       picocolors: 1.0.1
-      vite: 5.4.0(@types/node@20.14.15)
+      vite: 5.4.0(@types/node@20.14.15)(terser@5.34.1)
     transitivePeerDependencies:
       - '@types/node'
       - less
@@ -9758,7 +15309,7 @@ snapshots:
       - supports-color
       - terser
 
-  vite-plugin-dts@3.9.1(@types/node@20.14.15)(rollup@4.20.0)(typescript@5.5.4)(vite@4.5.3(@types/node@20.14.15)):
+  vite-plugin-dts@3.9.1(@types/node@20.14.15)(rollup@4.20.0)(typescript@5.5.4)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)):
     dependencies:
       '@microsoft/api-extractor': 7.43.0(@types/node@20.14.15)
       '@rollup/pluginutils': 5.1.0(rollup@4.20.0)
@@ -9769,13 +15320,13 @@ snapshots:
       typescript: 5.5.4
       vue-tsc: 1.8.27(typescript@5.5.4)
     optionalDependencies:
-      vite: 4.5.3(@types/node@20.14.15)
+      vite: 4.5.3(@types/node@20.14.15)(terser@5.34.1)
     transitivePeerDependencies:
       - '@types/node'
       - rollup
       - supports-color
 
-  vite@4.5.3(@types/node@20.14.15):
+  vite@4.5.3(@types/node@20.14.15)(terser@5.34.1):
     dependencies:
       esbuild: 0.18.20
       postcss: 8.4.41
@@ -9783,8 +15334,9 @@ snapshots:
     optionalDependencies:
       '@types/node': 20.14.15
       fsevents: 2.3.3
+      terser: 5.34.1
 
-  vite@5.4.0(@types/node@20.14.15):
+  vite@5.4.0(@types/node@20.14.15)(terser@5.34.1):
     dependencies:
       esbuild: 0.21.5
       postcss: 8.4.41
@@ -9792,12 +15344,13 @@ snapshots:
     optionalDependencies:
       '@types/node': 20.14.15
       fsevents: 2.3.3
+      terser: 5.34.1
 
-  vitefu@0.2.5(vite@4.5.3(@types/node@20.14.15)):
+  vitefu@0.2.5(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)):
     optionalDependencies:
-      vite: 4.5.3(@types/node@20.14.15)
+      vite: 4.5.3(@types/node@20.14.15)(terser@5.34.1)
 
-  vitest@1.6.0(@types/node@20.14.15):
+  vitest@1.6.0(@types/node@20.14.15)(terser@5.34.1):
     dependencies:
       '@vitest/expect': 1.6.0
       '@vitest/runner': 1.6.0
@@ -9816,8 +15369,8 @@ snapshots:
       strip-literal: 2.1.0
       tinybench: 2.9.0
       tinypool: 0.8.4
-      vite: 5.4.0(@types/node@20.14.15)
-      vite-node: 1.6.0(@types/node@20.14.15)
+      vite: 5.4.0(@types/node@20.14.15)(terser@5.34.1)
+      vite-node: 1.6.0(@types/node@20.14.15)(terser@5.34.1)
       why-is-node-running: 2.3.0
     optionalDependencies:
       '@types/node': 20.14.15
@@ -9831,6 +15384,8 @@ snapshots:
       - supports-color
       - terser
 
+  vlq@1.0.1: {}
+
   vue-template-compiler@2.7.16:
     dependencies:
       de-indent: 1.0.2
@@ -9843,6 +15398,18 @@ snapshots:
       semver: 7.6.3
       typescript: 5.5.4
 
+  walker@1.0.8:
+    dependencies:
+      makeerror: 1.0.12
+
+  warning@4.0.3:
+    dependencies:
+      loose-envify: 1.4.0
+
+  wcwidth@1.0.1:
+    dependencies:
+      defaults: 1.0.4
+
   webidl-conversions@3.0.1: {}
 
   whatwg-fetch@3.6.20: {}
@@ -9925,10 +15492,22 @@ snapshots:
 
   wrappy@1.0.2: {}
 
+  write-file-atomic@2.4.3:
+    dependencies:
+      graceful-fs: 4.2.11
+      imurmurhash: 0.1.4
+      signal-exit: 3.0.7
+
+  ws@6.2.3:
+    dependencies:
+      async-limiter: 1.0.1
+
   ws@7.5.10: {}
 
   ws@8.18.0: {}
 
+  xstate@4.38.3: {}
+
   xtend@4.0.2: {}
 
   y18n@4.0.3: {}
@@ -9939,6 +15518,8 @@ snapshots:
 
   yallist@4.0.0: {}
 
+  yaml@1.10.2: {}
+
   yaml@2.3.1: {}
 
   yaml@2.5.0: {}
@@ -9990,4 +15571,10 @@ snapshots:
     optionalDependencies:
       commander: 9.5.0
 
+  zdog@1.1.3: {}
+
   zod@3.23.8: {}
+
+  zustand@3.7.2(react@18.3.1):
+    optionalDependencies:
+      react: 18.3.1
diff --git a/postcss.config.cjs b/postcss.config.cjs
index 21efa6a..3cb4c36 100644
--- a/postcss.config.cjs
+++ b/postcss.config.cjs
@@ -1,8 +1,8 @@
 module.exports = {
   plugins: {
     tailwindcss: {
-      config: "tailwind.config.cjs",
+      config: "tailwind.config.js",
     },
     autoprefixer: {},
   },
-}
+}
\ No newline at end of file
diff --git a/src/modal/ConnectorButton.svelte b/src/modal/ConnectorButton.svelte
index 7cfd9a0..46a528b 100644
--- a/src/modal/ConnectorButton.svelte
+++ b/src/modal/ConnectorButton.svelte
@@ -1,6 +1,7 @@
 <script lang="ts">
   import { ModalWallet } from "../types/modal"
   import type { StarknetkitConnector } from "../connectors/connector"
+  import { getConnector } from "../main.js"
 
   export let wallet: ModalWallet
   export let theme: "light" | "dark" | null = null
@@ -15,6 +16,8 @@
         ? wallet.icon.dark
         : wallet.icon.light
   const isSvg = icon?.startsWith("<svg")
+
+  console.log(wallet)
 </script>
 
 {#if wallet.download}
@@ -61,14 +64,19 @@
     role="button"
     tabindex="0"
     on:click={async () => {
-      cb(wallet.connector)
+      console.log("HERE", wallet, getConnector(wallet.connector))
+      cb(getConnector(wallet.connector))
     }}
     on:keyup={async (e) => {
       if (e.key === "Enter") {
-        cb(wallet.connector)
+        cb(getConnector(wallet.connector))
       }
     }}
   >
+    {#if wallet.isCompoundConnector}
+      <!-- TODO testing -->
+      compound
+    {/if}
     <span class="w-8 h-8" />
     <div class="flex flex-col justify-center items-center">
       <p class="font-semibold text-base p">
diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index 97a117a..fe28865 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -1,142 +1,177 @@
 <script lang="ts">
-  import { onMount } from "svelte"
-  import type { StarknetWindowObject } from "@starknet-io/types-js"
-  import ConnectorButton from "./ConnectorButton.svelte"
-  import type { StarknetkitConnector } from "../connectors/connector"
-  import { InjectedConnector } from "../connectors/injected"
+  // import { onMount } from "svelte"
+  // import type { StarknetWindowObject } from "@starknet-io/types-js"
+  // import ConnectorButton from "./ConnectorButton.svelte"
+  // import type { StarknetkitConnector } from "../connectors/connector"
+  // import { InjectedConnector } from "../connectors/injected"
+  // import { ArgentX } from "../connectors/injected/argentX"
+  // import { isInArgentMobileAppBrowser } from "../connectors/argent/helpers"
+  // import { getConnector } from "../main"
   import { ModalWallet } from "../types/modal"
 
+  import Header from "./components/Header.svelte"
+  import FailedLogin from "./layouts/FailedLogin.svelte"
+
   export let dappName: string = window?.document.title ?? ""
   export let modalWallets: ModalWallet[]
-  export let callback: (
-    value: StarknetkitConnector | null,
-  ) => Promise<void> = async () => {}
-  export let theme: "light" | "dark" | null = null
-
-  let loadingItem: string | false = false
+  console.log(modalWallets)
+  // export let callback: (
+  //   value: StarknetkitConnector | null,
+  // ) => Promise<void> = async () => {}
+  // export let theme: "light" | "dark" | null = null
+  //
+  // let loadingItem: string | false = false
+  //
+  // let isInAppBrowser = isInArgentMobileAppBrowser()
+  //
+  // const setLoadingItem = (item: string | false) => {
+  //   loadingItem = item
+  // }
 
-  let starknetMobile =
-    window?.starknet_argentX as unknown as StarknetWindowObject & {
-      isInAppBrowser: boolean
-    }
-  let isInAppBrowser = starknetMobile?.isInAppBrowser
+  // let cb = async (connector: StarknetkitConnector | null) => {
+  //   setLoadingItem(connector?.id ?? false)
+  //   try {
+  //     await callback(connector ?? null)
+  //   } finally {
+  //     setLoadingItem(false)
+  //   }
+  // }
 
-  const setLoadingItem = (item: string | false) => {
-    loadingItem = item
-  }
+  export const darkModeControlClass = "light"
+  // let darkModeControlClass = theme === "dark" ? "dark" : ""
+  // onMount(async () => {
+  //   // if (
+  //   //   theme === "dark" ||
+  //   //   (theme === null &&
+  //   //     window.matchMedia("(prefers-color-scheme: dark)").matches)
+  //   // ) {
+  //   //   darkModeControlClass = "dark"
+  //   // } else {
+  //   //   darkModeControlClass = ""
+  //   // }
+  //
+  //   // if (isInAppBrowser) { TODO ??
+  //   //   try {
+  //   //     callback(new ArgentX())
+  //   //   } catch {}
+  //   //   return
+  //   // }
+  //
+  //   if (modalWallets.length === 1) {
+  //     try {
+  //       await callback(getConnector(modalWallets[0].connector))
+  //     } catch (e) {
+  //       console.error(e)
+  //     }
+  //   }
+  // })
 
-  let cb = async (connector: StarknetkitConnector | null) => {
-    setLoadingItem(connector?.id ?? false)
-    try {
-      await callback(connector ?? null)
-    } finally {
-      setLoadingItem(false)
-    }
-  }
+  export let fixedHeight = true
+  export let showBackButton = true
+</script>
 
-  let darkModeControlClass = theme === "dark" ? "dark" : ""
-  onMount(async () => {
-    if (
-      theme === "dark" ||
-      (theme === null &&
-        window.matchMedia("(prefers-color-scheme: dark)").matches)
-    ) {
-      darkModeControlClass = "dark"
-    } else {
-      darkModeControlClass = ""
-    }
+<div part="starknetkit-modal"
+     class={`
+    ${darkModeControlClass} modal-font fixed inset-0 z-[9998] flex items-center justify-center backdrop-blur-sm bg-black/25
+  `}>
+  <main role="dialog"
+        class={`
+      rounded-3xl bg-surface-default shadow-modal dark:shadow-none flex flex-col
+      z-[9999] w-full max-w-[380px] mx-6 p-6 text-center gap-8
+      ${fixedHeight ? "min-h-[570px]" : ""}
+    `}
+  >
+    <Header title={dappName} showBackButton={showBackButton} />
 
-    if (isInAppBrowser && window?.starknet_argentX) {
-      try {
-        callback(new InjectedConnector({ options: { id: "argentX" } }))
-      } catch {}
-      return
-    }
+    <!--			<WalletList {walletList} />-->
+    <!--			<ArgentMobileQR />-->
+    <!--			<ArgentDownload />-->
+    <!--			<ExtensionDownloadList />-->
+    <!--			<SuccessfulLogin />-->
+          <FailedLogin />
+    <!--			<Connecting>-->
+    <!--				<svg xmlns="http://www.w3.org/2000/svg" width="40" height="41" viewBox="0 0 40 41" fill="none">-->
+    <!--					<path d="M23.813 6.46613H16.1191C15.862 6.46613 15.656 6.68535 15.6504 6.95784C15.495 14.6174 11.7148 21.8872 5.2082 27.0365C5.00163 27.1999 4.95457 27.507 5.10559 27.7282L9.60718 34.3265C9.76032 34.5511 10.0587 34.6018 10.2687 34.4368C14.3371 31.2382 17.6095 27.3795 19.9661 23.1025C22.3227 27.3795 25.5952 31.2382 29.6636 34.4368C29.8735 34.6018 30.1719 34.5511 30.3252 34.3265L34.8268 27.7282C34.9776 27.507 34.9306 27.1999 34.7242 27.0365C28.2174 21.8872 24.4372 14.6174 24.2819 6.95784C24.2763 6.68535 24.0702 6.46613 23.813 6.46613Z" fill="black"/>-->
+    <!--					<path d="M34.5894 11.2863L33.7628 8.71579C33.5947 8.19392 33.1852 7.78742 32.664 7.6267L30.0981 6.83257C29.744 6.72289 29.7402 6.219 30.0934 6.10461L32.6461 5.27265C33.1646 5.10343 33.5694 4.69029 33.7291 4.16653L34.517 1.5837C34.626 1.22634 35.1266 1.22255 35.2412 1.57804L36.0677 4.14856C36.2358 4.67043 36.6453 5.07695 37.1665 5.23862L39.7324 6.0318C40.0865 6.14148 40.0903 6.64537 39.7372 6.76071L37.1844 7.59267C36.6659 7.76094 36.2611 8.17408 36.1015 8.69879L35.3135 11.2807C35.2045 11.638 34.7039 11.6418 34.5894 11.2863Z" fill="black"/>-->
+    <!--				</svg>-->
+    <!--			</Connecting>-->
 
-    if (modalWallets.length === 1) {
-      try {
-        const [wallet] = modalWallets
-        await callback(wallet.connector)
-      } catch (e) {
-        console.error(e)
-      }
-    }
-  })
-</script>
+  </main>
+</div>
 
-{#if !isInAppBrowser && modalWallets.length > 1}
-  <!-- svelte-ignore a11y-no-static-element-interactions -->
-  <div
-    part="starknetkit-modal"
-    class={`modal-font backdrop-blur-sm fixed inset-0 flex items-center 
-            justify-center bg-black/25 z-[9999] ${darkModeControlClass}`}
-    on:click={() => cb(null)}
-    on:keyup={(e) => {
-      if (e.key === "Escape") {
-        cb(null)
-      }
-    }}
-  >
-    <!-- svelte-ignore a11y-no-noninteractive-element-interactions -->
-    <main
-      role="dialog"
-      class={`rounded-3xl shadow-modal dark:shadow-none 
-              w-full max-w-[380px] z-50 
-              mx-6 p-6 pb-8 text-center 
-              bg-slate-50 dark:bg-neutral-900 
-            text-neutral-900 dark:text-white`}
-      on:click={(e) => e.stopPropagation()}
-      on:keyup={(e) => {
-        e.stopPropagation()
-      }}
-    >
-      <header class={`flex items-center justify-center flex-col mb-2 relative`}>
-        <h2 class="text-sm text-gray-400 font-semibold">Connect to</h2>
-        <h1
-          class={`text-xl font-semibold mb-6 
-                  max-w-[240px] overflow-hidden 
-                  whitespace-nowrap text-ellipsis`}
-        >
-          {dappName}
-        </h1>
-        <span
-          class={`absolute top-0 right-0 p-2 cursor-pointer
-                  rounded-full bg-neutral-100 dark:bg-neutral-800
-                  text-neutral-400 dark:text-white
-                  hover:bg-neutral-100 dark:hover:bg-neutral-700
-                  focus:outline-none focus:ring-2
-                focus:ring-neutral-200 dark:focus:ring-neutral-700
-                  transition-colors`}
-          role="button"
-          tabindex="0"
-          aria-label="Close"
-          on:click={() => cb(null)}
-          on:keyup={(e) => {
-            if (e.key === "Enter") {
-              cb(null)
-            }
-          }}
-        >
-          <svg
-            width="12"
-            height="12"
-            viewBox="0 0 12 12"
-            fill="none"
-            xmlns="http://www.w3.org/2000/svg"
-          >
-            <path
-              d="M9.77275 3.02275C9.99242 2.80308 9.99242 2.44692 9.77275 2.22725C9.55308 2.00758 9.19692 2.00758 8.97725 2.22725L6 5.20451L3.02275 2.22725C2.80308 2.00758 2.44692 2.00758 2.22725 2.22725C2.00758 2.44692 2.00758 2.80308 2.22725 3.02275L5.20451 6L2.22725 8.97725C2.00758 9.19692 2.00758 9.55308 2.22725 9.77275C2.44692 9.99242 2.80308 9.99242 3.02275 9.77275L6 6.79549L8.97725 9.77275C9.19692 9.99242 9.55308 9.99242 9.77275 9.77275C9.99242 9.55308 9.99242 9.19692 9.77275 8.97725L6.79549 6L9.77275 3.02275Z"
-              fill="currentColor"
-            />
-          </svg>
-        </span>
-      </header>
+<!--{#if !isInAppBrowser && modalWallets.length > 1}-->
+<!--  &lt;!&ndash; svelte-ignore a11y-no-static-element-interactions &ndash;&gt;-->
+<!--  <div-->
+<!--    part="starknetkit-modal"-->
+<!--    class={`modal-font backdrop-blur-sm fixed inset-0 flex items-center-->
+<!--            justify-center bg-black/25 z-[9999] ${darkModeControlClass}`}-->
+<!--    on:click={() => cb(null)}-->
+<!--    on:keyup={(e) => {-->
+<!--      if (e.key === "Escape") {-->
+<!--        cb(null)-->
+<!--      }-->
+<!--    }}-->
+<!--  >-->
+<!--    &lt;!&ndash; svelte-ignore a11y-no-noninteractive-element-interactions &ndash;&gt;-->
+<!--    <main-->
+<!--      role="dialog"-->
+<!--      class={`rounded-3xl shadow-modal dark:shadow-none-->
+<!--              w-full max-w-[380px] z-50-->
+<!--              mx-6 p-6 pb-8 text-center-->
+<!--              bg-slate-50 dark:bg-neutral-900-->
+<!--            text-neutral-900 dark:text-white`}-->
+<!--      on:click={(e) => e.stopPropagation()}-->
+<!--      on:keyup={(e) => {-->
+<!--        e.stopPropagation()-->
+<!--      }}-->
+<!--    >-->
+<!--      <header class={`flex items-center justify-center flex-col mb-2 relative`}>-->
+<!--        <h2 class="text-sm text-gray-400 font-semibold">Connect to</h2>-->
+<!--        <h1-->
+<!--          class={`text-xl font-semibold mb-6-->
+<!--                  max-w-[240px] overflow-hidden-->
+<!--                  whitespace-nowrap text-ellipsis`}-->
+<!--        >-->
+<!--          {dappName}-->
+<!--        </h1>-->
+<!--        <span-->
+<!--          class={`absolute top-0 right-0 p-2 cursor-pointer-->
+<!--                  rounded-full bg-neutral-100 dark:bg-neutral-800-->
+<!--                  text-neutral-400 dark:text-white-->
+<!--                  hover:bg-neutral-100 dark:hover:bg-neutral-700-->
+<!--                  focus:outline-none focus:ring-2-->
+<!--                focus:ring-neutral-200 dark:focus:ring-neutral-700-->
+<!--                  transition-colors`}-->
+<!--          role="button"-->
+<!--          tabindex="0"-->
+<!--          aria-label="Close"-->
+<!--          on:click={() => cb(null)}-->
+<!--          on:keyup={(e) => {-->
+<!--            if (e.key === "Enter") {-->
+<!--              cb(null)-->
+<!--            }-->
+<!--          }}-->
+<!--        >-->
+<!--          <svg-->
+<!--            width="12"-->
+<!--            height="12"-->
+<!--            viewBox="0 0 12 12"-->
+<!--            fill="none"-->
+<!--            xmlns="http://www.w3.org/2000/svg"-->
+<!--          >-->
+<!--            <path-->
+<!--              d="M9.77275 3.02275C9.99242 2.80308 9.99242 2.44692 9.77275 2.22725C9.55308 2.00758 9.19692 2.00758 8.97725 2.22725L6 5.20451L3.02275 2.22725C2.80308 2.00758 2.44692 2.00758 2.22725 2.22725C2.00758 2.44692 2.00758 2.80308 2.22725 3.02275L5.20451 6L2.22725 8.97725C2.00758 9.19692 2.00758 9.55308 2.22725 9.77275C2.44692 9.99242 2.80308 9.99242 3.02275 9.77275L6 6.79549L8.97725 9.77275C9.19692 9.99242 9.55308 9.99242 9.77275 9.77275C9.99242 9.55308 9.99242 9.19692 9.77275 8.97725L6.79549 6L9.77275 3.02275Z"-->
+<!--              fill="currentColor"-->
+<!--            />-->
+<!--          </svg>-->
+<!--        </span>-->
+<!--      </header>-->
 
-      <ul class="flex flex-col gap-3">
-        {#each modalWallets as wallet}
-          <ConnectorButton {wallet} {loadingItem} {cb} {theme} />
-        {/each}
-      </ul>
-    </main>
-  </div>
-{/if}
+<!--      <ul class="flex flex-col gap-3">-->
+<!--        {#each modalWallets as wallet}-->
+<!--          <ConnectorButton {wallet} {loadingItem} {cb} {theme} />-->
+<!--        {/each}-->
+<!--      </ul>-->
+<!--    </main>-->
+<!--  </div>-->
+<!--{/if}-->
diff --git a/src/modal/components/FallbackMobile.svelte b/src/modal/components/FallbackMobile.svelte
new file mode 100644
index 0000000..8dcb928
--- /dev/null
+++ b/src/modal/components/FallbackMobile.svelte
@@ -0,0 +1,32 @@
+<script>
+  import Line from "./Line.svelte";
+  import LargeButton from "./buttons/LargeButton.svelte";
+</script>
+
+<footer class="flex flex-col gap-4 w-full">
+  <Line />
+  <LargeButton>
+    <div class="flex flex-row-reverse items-center gap-2">
+
+      <span>
+        Connect to Argent mobile instead
+      </span>
+
+      <svg xmlns="http://www.w3.org/2000/svg" width="27" height="48" viewBox="0 0 27 48" fill="none">
+        <path d="M10.9682 45.7174L3.14321 13.0668C2.75958 11.4692 3.43225 9.79803 4.82488 8.91515L15.5876 2.07812C16.2077 1.68398 16.9539 1.72077 17.5162 2.06761C16.3548 0.81687 14.8098 0.795849 14.1319 1.33714L2.86994 8.48948C1.26184 9.50899 0.484071 11.4377 0.925509 13.2875L8.40368 44.5034C8.78205 46.0905 12.014 47.6303 13.3751 46.7264V46.7159C12.4449 47.2782 11.2257 46.779 10.9682 45.7069V45.7174Z" fill="#8C8C8C" stroke="#0F0F0F" stroke-width="0.262761" stroke-miterlimit="10"/>
+        <path d="M12.8282 43.2841L14.0632 46.164L13.3748 46.7315C12.0137 47.6354 8.78696 46.0957 8.40333 44.5086L7.67285 41.4658L12.8282 43.2841Z" fill="#0F0F0F" stroke="#0F0F0F" stroke-width="0.315313" stroke-miterlimit="10"/>
+        <path d="M26.0828 35.1019L18.3313 3.18697C18.037 1.97827 16.6391 1.41596 15.5881 2.07812L4.82542 8.91515C3.43805 9.79802 2.76012 11.4639 3.14375 13.0668L10.9635 45.7174C11.2263 46.8105 12.4928 47.3097 13.4335 46.6896L24.3958 39.4111C25.8095 38.4705 26.4822 36.752 26.0828 35.1019Z" fill="#8C8C8C" stroke="#0F0F0F" stroke-width="0.262761" stroke-miterlimit="10"/>
+        <path d="M25.3354 34.6552L18.1252 4.10667C17.852 2.95052 16.5644 2.40398 15.6027 3.03986L14.2627 3.92274L13.7739 5.66747C13.6846 5.98803 13.4849 6.26131 13.2064 6.44524L8.79724 9.39867C8.4031 9.66143 7.90386 9.70872 7.47293 9.51954L6.44291 9.0781L5.72294 9.55632C4.44593 10.3972 3.83106 11.9895 4.18842 13.524L11.4669 44.782C11.7139 45.8278 12.8805 46.3113 13.7424 45.7174L23.8061 38.7858C25.1042 37.8924 25.719 36.2423 25.3459 34.6657L25.3354 34.6552Z" fill="#FF875B" stroke="#0F0F0F" stroke-width="0.315313" stroke-miterlimit="10"/>
+        <path d="M9.23809 7.71168C9.26962 7.80627 9.37998 7.82729 9.48508 7.75372L12.6802 5.60434C12.7854 5.53602 12.8432 5.39938 12.8116 5.30479C12.7801 5.2102 12.6697 5.18917 12.5646 5.26275L9.36947 7.41213C9.26436 7.48045 9.20655 7.61708 9.23809 7.71168Z" fill="#0F0F0F"/>
+        <path d="M8.51836 8.563C8.68127 8.55249 8.80214 8.38432 8.78637 8.19513C8.77061 8.00069 8.62872 7.85354 8.47106 7.86406C8.30815 7.87457 8.18728 8.04273 8.20304 8.23192C8.21881 8.42636 8.3607 8.57351 8.51836 8.563Z" fill="#0F0F0F"/>
+        <path d="M8.93919 33.951L10.6629 8.14795L8.79204 9.39869C8.4452 9.62992 8.01427 9.69298 7.62013 9.57737L6.46924 23.3723L8.93393 33.9563L8.93919 33.951Z" fill="#FFCBB8"/>
+        <path d="M5.69775 20.0089L5.97103 21.1755L7.01681 9.31975L6.68048 9.17261L5.69775 20.0036V20.0089Z" fill="#FFCBB8"/>
+        <path d="M25.3354 34.6552L18.1252 4.10667C17.852 2.95052 16.5644 2.40398 15.6027 3.03986L14.2627 3.92274L13.7739 5.66747C13.6846 5.98803 13.4849 6.26131 13.2064 6.44524L8.79724 9.39867C8.4031 9.66143 7.90385 9.70872 7.47293 9.51954L6.44291 9.0781L5.72294 9.55632C4.44593 10.3972 3.83106 11.9895 4.18842 13.524L11.4669 44.782C11.7139 45.8278 12.8805 46.3113 13.7424 45.7174L23.8061 38.7858C25.1042 37.8924 25.719 36.2423 25.3459 34.6657L25.3354 34.6552Z" stroke="#0F0F0F" stroke-width="0.262761" stroke-miterlimit="10"/>
+        <path d="M7.28408 39.5635L9.71724 40.2257L3.94702 16.4038L1.56641 15.9729L7.28408 39.5688V39.5635Z" fill="#0F0F0F" stroke="#0F0F0F" stroke-width="0.315313" stroke-miterlimit="10"/>
+        <path d="M2.99527 13.1299C2.6747 11.7741 3.01629 10.3447 4.1304 9.25683L2.51705 8.94678C1.32411 9.93476 0.824868 11.4167 1.00355 12.8514L2.99527 13.1299Z" fill="#F8F8F8"/>
+        <path d="M14.7094 20.855L13.5585 21.4804C13.5217 21.5014 13.5007 21.5592 13.5165 21.6065C13.9422 23.0149 13.7898 24.6492 13.0698 26.1207C13.0488 26.168 13.0593 26.2258 13.0961 26.2573L14.2207 27.0929C14.2575 27.1192 14.31 27.1087 14.3363 27.0614C14.783 26.147 15.0563 25.1748 15.1509 24.2026C15.7867 24.7911 16.5487 25.2273 17.3948 25.4796C17.4369 25.4901 17.4789 25.4585 17.4894 25.406L17.7259 23.8347C17.7312 23.7821 17.7049 23.7296 17.6629 23.7191C16.3385 23.3092 15.3033 22.2949 14.8145 20.9075C14.7988 20.8602 14.7515 20.834 14.7147 20.855H14.7094Z" fill="white"/>
+      </svg>
+
+    </div>
+  </LargeButton>
+</footer>
\ No newline at end of file
diff --git a/src/modal/components/Header.svelte b/src/modal/components/Header.svelte
new file mode 100644
index 0000000..1bd5d14
--- /dev/null
+++ b/src/modal/components/Header.svelte
@@ -0,0 +1,27 @@
+<script lang="ts">
+  import IconButton from "./buttons/IconButton.svelte";
+  import CloseIcon from "./icons/CloseIcon.svelte";
+  import CaretIcon from "./icons/CaretIcon.svelte";
+
+  export let title: string;
+  export let subtitle: string = "Connect to";
+  export let showBackButton: boolean = true;
+  export let showCloseButton: boolean = true;
+</script>
+
+<header class={`flex items-center justify-center flex-col relative`}>
+  {#if showBackButton}
+    <IconButton ariaLabel="Go back" className="absolute top-0 left-0"><CaretIcon /></IconButton>
+  {/if}
+  <hgroup>
+    <h2 class={`text-p3 text-secondary font-semibold`}>{subtitle}</h2>
+    {#if !!title}
+      <h1 class={`text-[24px] text-primary font-semibold max-w-[240px] overflow-hidden whitespace-nowrap text-ellipsis`}>
+        {title}
+      </h1>
+    {/if}
+  </hgroup>
+  {#if showCloseButton}
+    <IconButton ariaLabel="Close" className="absolute top-0 right-0"><CloseIcon /></IconButton>
+  {/if}
+</header>
diff --git a/src/modal/components/InstallWallet.svelte b/src/modal/components/InstallWallet.svelte
new file mode 100644
index 0000000..8063454
--- /dev/null
+++ b/src/modal/components/InstallWallet.svelte
@@ -0,0 +1,29 @@
+<script lang="ts">
+  import LargeButton from "./buttons/LargeButton.svelte";
+  import PlayStore from "./icons/brands/PlayStore.svelte";
+  import ChromeIcon from "./icons/brands/ChromeIcon.svelte";
+  import AppleIcon from "./icons/brands/AppleIcon.svelte";
+  import Line from "./Line.svelte";
+
+  export let walletName: string = ""
+  export let walletLink: string = "" // TODO is this link or does it open something else?
+</script>
+
+<footer class="flex flex-col gap-4">
+  <Line />
+
+  <p class="text-h5 text-primary">Don't have {walletName}?</p>
+
+  <!-- TODO noreferrer noopener, empty href other element, etc -->
+  <LargeButton href={walletLink}>
+    <div class="flex flex-row-reverse justify-center items-center gap-2">
+      <p class="font-semibold text-p3 text-primary">Get it</p>
+
+      <div class="flex gap-3 items-end" style="position: relative;">
+        <ChromeIcon />
+        <AppleIcon />
+        <PlayStore />
+      </div>
+    </div>
+  </LargeButton>
+</footer>
\ No newline at end of file
diff --git a/src/modal/components/Line.svelte b/src/modal/components/Line.svelte
new file mode 100644
index 0000000..5239c31
--- /dev/null
+++ b/src/modal/components/Line.svelte
@@ -0,0 +1,5 @@
+<script lang="ts">
+  export let className: string = ""
+</script>
+
+<hr class={`border-stroke-default w-full ${className}`} />
\ No newline at end of file
diff --git a/src/modal/components/buttons/Button.svelte b/src/modal/components/buttons/Button.svelte
new file mode 100644
index 0000000..1ce9234
--- /dev/null
+++ b/src/modal/components/buttons/Button.svelte
@@ -0,0 +1,22 @@
+<script lang="ts">
+  import Link from "./Link.svelte";
+
+  export let className: string | undefined = ""
+  export let href: string | undefined = undefined
+  export let as: "button" | "a" = "button"
+  export let isLarge: boolean = false
+
+  export let height = isLarge ? "min-h-12" : "min-h-8"
+</script>
+
+<Link
+  as={as}
+  href={href}
+  className={`
+        ${className} ${height} px-4
+        bg-button-secondary text-primary hover:bg-button-secondary-hover flex
+        min-w-[140px] text-b3 rounded-3xl justify-center items-center
+    `}
+>
+  <slot />
+</Link>
\ No newline at end of file
diff --git a/src/modal/components/buttons/IconButton.svelte b/src/modal/components/buttons/IconButton.svelte
new file mode 100644
index 0000000..e38af82
--- /dev/null
+++ b/src/modal/components/buttons/IconButton.svelte
@@ -0,0 +1,19 @@
+<script lang="ts">
+  export let ariaLabel: string
+  export let className: string
+</script>
+
+<span
+  class={`p-2 cursor-pointer
+			  rounded-full bg-neutral-100 dark:bg-neutral-800
+			  text-neutral-400 dark:text-white
+			  hover:bg-neutral-100 dark:hover:bg-neutral-700
+			  focus:outline-none focus:ring-2
+			focus:ring-neutral-200 dark:focus:ring-neutral-700
+			  transition-colors ${className}`}
+  role="button"
+  tabindex="0"
+  aria-label={ariaLabel}
+>
+  <slot/>
+</span>
\ No newline at end of file
diff --git a/src/modal/components/buttons/LargeButton.svelte b/src/modal/components/buttons/LargeButton.svelte
new file mode 100644
index 0000000..cbfc1ae
--- /dev/null
+++ b/src/modal/components/buttons/LargeButton.svelte
@@ -0,0 +1,20 @@
+<script lang="ts">
+	export let href: string = ""
+	export let as: "a" | "button" = "button"
+</script>
+
+<svelte:element
+	this={as}
+	href={href}
+	rel="noreferrer noopener"
+	target="_blank"
+	role="button"
+	tabindex="0"
+	class={`
+		flex justify-center items-center w-full px-3 h-[60px] rounded-[12px] cursor-pointer shadow-list-item
+		dark:shadow-none bg-surface-elevated focus:outline-none focus:ring-2
+		focus:ring-neutral-200 dark:focus:ring-neutral-700 transition-colors
+	`}
+>
+	<slot />
+</svelte:element>
diff --git a/src/modal/components/buttons/Link.svelte b/src/modal/components/buttons/Link.svelte
new file mode 100644
index 0000000..512495b
--- /dev/null
+++ b/src/modal/components/buttons/Link.svelte
@@ -0,0 +1,9 @@
+<script lang="ts">
+  export let className: string
+  export let href: string | undefined = undefined
+  export let as: "button" | "a" = "a"
+</script>
+
+<svelte:element this={as} class={className} href={href} rel="noreferrer noopener" target="_blank">
+  <slot />
+</svelte:element>
\ No newline at end of file
diff --git a/src/modal/components/buttons/WalletButton.svelte b/src/modal/components/buttons/WalletButton.svelte
new file mode 100644
index 0000000..f4ca835
--- /dev/null
+++ b/src/modal/components/buttons/WalletButton.svelte
@@ -0,0 +1,28 @@
+<script lang="ts">
+  import LargeButton from "./LargeButton.svelte";
+
+  export let wallet: { title: string, subtitle?: string, icon: string } // TODO
+
+  const isSvg = wallet?.icon?.startsWith("<svg")
+</script>
+
+<LargeButton as="a" href="#TODO">
+  <div class="w-full flex flex-row-reverse justify-between">
+    <div class="flex flex-grow flex-col justify-center items-center">
+      <div class="ml-[-32px]">
+        <p class="font-semibold text-[15px] text-primary">
+          {wallet.title}
+        </p>
+        {#if wallet.subtitle}
+          <p class="text-l2 text-subtle" style="text-align: center;">
+            {wallet.subtitle}
+          </p>
+        {/if}
+      </div>
+    </div>
+
+    {#if isSvg}
+      <div class="flex flex-shrink items-center max-w-[32px]" style="position: relative;">{@html wallet.icon}</div>
+    {/if}
+  </div>
+</LargeButton>
diff --git a/src/modal/components/icons/CaretIcon.svelte b/src/modal/components/icons/CaretIcon.svelte
new file mode 100644
index 0000000..8604476
--- /dev/null
+++ b/src/modal/components/icons/CaretIcon.svelte
@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none">
+  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.55383 1.24376C8.83406 1.54808 8.81134 2.01905 8.50309 2.2957L4.37567 6L8.50309 9.7043C8.81134 9.98095 8.83406 10.4519 8.55383 10.7562C8.2736 11.0606 7.79654 11.083 7.48828 10.8063L2.74691 6.55102C2.58965 6.40989 2.5 6.20981 2.5 6C2.5 5.79019 2.58965 5.59012 2.74691 5.44898L7.48828 1.19367C7.79654 0.917013 8.2736 0.93944 8.55383 1.24376Z" fill="currentColor"/>
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/CloseIcon.svelte b/src/modal/components/icons/CloseIcon.svelte
new file mode 100644
index 0000000..14b302c
--- /dev/null
+++ b/src/modal/components/icons/CloseIcon.svelte
@@ -0,0 +1,4 @@
+<!-- TODO color is not good here, nor in caret -->
+<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
+  <path d="M9.77275 3.02275C9.99242 2.80308 9.99242 2.44692 9.77275 2.22725C9.55308 2.00758 9.19692 2.00758 8.97725 2.22725L6 5.20451L3.02275 2.22725C2.80308 2.00758 2.44692 2.00758 2.22725 2.22725C2.00758 2.44692 2.00758 2.80308 2.22725 3.02275L5.20451 6L2.22725 8.97725C2.00758 9.19692 2.00758 9.55308 2.22725 9.77275C2.44692 9.99242 2.80308 9.99242 3.02275 9.77275L6 6.79549L8.97725 9.77275C9.19692 9.99242 9.55308 9.99242 9.77275 9.77275C9.99242 9.55308 9.99242 9.19692 9.77275 8.97725L6.79549 6L9.77275 3.02275Z" fill="currentColor" />
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/ReloadIcon.svelte b/src/modal/components/icons/ReloadIcon.svelte
new file mode 100644
index 0000000..bb32753
--- /dev/null
+++ b/src/modal/components/icons/ReloadIcon.svelte
@@ -0,0 +1,4 @@
+<!--TODO color-->
+<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none">
+  <path d="M15.25 3.50011V6.50011C15.25 6.69902 15.171 6.88979 15.0303 7.03044C14.8897 7.17109 14.6989 7.25011 14.5 7.25011H11.5C11.3011 7.25011 11.1103 7.17109 10.9697 7.03044C10.829 6.88979 10.75 6.69902 10.75 6.50011C10.75 6.3012 10.829 6.11043 10.9697 5.96978C11.1103 5.82913 11.3011 5.75011 11.5 5.75011H12.5687L11.3812 4.66386C11.3731 4.65636 11.365 4.64886 11.3575 4.64074C10.8069 4.09046 10.1295 3.68394 9.38483 3.45695C8.64022 3.22996 7.85122 3.18945 7.08728 3.33899C6.32333 3.48853 5.60784 3.82353 5.00377 4.31452C4.39969 4.80552 3.92555 5.43745 3.62305 6.15472C3.32055 6.87199 3.19898 7.65261 3.26902 8.4279C3.33906 9.20319 3.59857 9.94938 4.02471 10.6008C4.45086 11.2523 5.03058 11.789 5.71287 12.1638C6.39516 12.5386 7.1591 12.7399 7.93748 12.7501H7.99998C9.21243 12.753 10.3795 12.2893 11.2594 11.4551C11.404 11.3184 11.597 11.2448 11.7959 11.2504C11.9948 11.2561 12.1833 11.3405 12.32 11.4851C12.4566 11.6297 12.5303 11.8227 12.5246 12.0216C12.519 12.2205 12.4346 12.4091 12.29 12.5457C11.1318 13.6435 9.59575 14.2537 7.99998 14.2501H7.91436C6.89126 14.2357 5.88735 13.9703 4.99078 13.4773C4.09421 12.9842 3.3324 12.2786 2.77224 11.4224C2.21208 10.5661 1.87071 9.58543 1.7781 8.56644C1.68548 7.54744 1.84447 6.52129 2.24108 5.57809C2.63769 4.63489 3.25981 3.80349 4.05281 3.15688C4.8458 2.51028 5.78541 2.06826 6.78915 1.86963C7.79288 1.671 8.83003 1.72184 9.80952 2.01768C10.789 2.31352 11.6809 2.84531 12.4069 3.56636L13.75 4.79511V3.50011C13.75 3.3012 13.829 3.11043 13.9697 2.96978C14.1103 2.82913 14.3011 2.75011 14.5 2.75011C14.6989 2.75011 14.8897 2.82913 15.0303 2.96978C15.171 3.11043 15.25 3.3012 15.25 3.50011Z" fill="#404040"/>
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/SuccessCheckIcon.svelte b/src/modal/components/icons/SuccessCheckIcon.svelte
new file mode 100644
index 0000000..7bcd6e2
--- /dev/null
+++ b/src/modal/components/icons/SuccessCheckIcon.svelte
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="40" height="41" viewBox="0 0 40 41" fill="none">
+  <path d="M28.7868 15.1583C29.5186 13.9874 29.1627 12.445 27.9918 11.7133C26.821 10.9815 25.2786 11.3374 24.5468 12.5083L17.656 23.5335L13.1668 20.1666C12.0622 19.3382 10.4952 19.562 9.66681 20.6666C8.83839 21.7712 9.06224 23.3382 10.1668 24.1666L16.8335 29.1666C17.3934 29.5865 18.1037 29.7525 18.7917 29.6242C19.4798 29.4959 20.0825 29.0851 20.4535 28.4916L28.7868 15.1583Z" fill="#02A17A"/>
+  <path fill-rule="evenodd" clip-rule="evenodd" d="M40 20.5C40 31.5457 31.0457 40.5 20 40.5C8.9543 40.5 0 31.5457 0 20.5C0 9.4543 8.9543 0.5 20 0.5C31.0457 0.5 40 9.4543 40 20.5ZM36.6667 20.5C36.6667 29.7047 29.2047 37.1667 20 37.1667C10.7953 37.1667 3.33333 29.7047 3.33333 20.5C3.33333 11.2953 10.7953 3.83333 20 3.83333C29.2047 3.83333 36.6667 11.2953 36.6667 20.5Z" fill="#02A17A"/>
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/WarningIcon.svelte b/src/modal/components/icons/WarningIcon.svelte
new file mode 100644
index 0000000..4ad9063
--- /dev/null
+++ b/src/modal/components/icons/WarningIcon.svelte
@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40" fill="none">
+  <path d="M37.5407 29.0784L23.8767 5.34867C23.4809 4.67181 22.9148 4.11038 22.2347 3.72021C21.5546 3.33005 20.7842 3.12476 20.0001 3.12476C19.216 3.12476 18.4456 3.33005 17.7655 3.72021C17.0854 4.11038 16.5193 4.67181 16.1235 5.34867L2.45947 29.0784C2.07544 29.7352 1.87305 30.4823 1.87305 31.2432C1.87305 32.0041 2.07544 32.7512 2.45947 33.408C2.85086 34.0883 3.41618 34.6521 4.09741 35.0418C4.77865 35.4314 5.55128 35.6328 6.33604 35.6252H33.6642C34.4484 35.6322 35.2204 35.4306 35.901 35.041C36.5817 34.6514 37.1465 34.0878 37.5376 33.408C37.9221 32.7515 38.125 32.0045 38.1256 31.2436C38.1261 30.4828 37.9243 29.7355 37.5407 29.0784ZM34.2907 31.5315C34.2272 31.6398 34.1356 31.7289 34.0255 31.7894C33.9155 31.8499 33.7912 31.8795 33.6657 31.8752H6.33604C6.21055 31.8795 6.08624 31.8499 5.97622 31.7894C5.86621 31.7289 5.77458 31.6398 5.71104 31.5315C5.65713 31.4438 5.6286 31.343 5.6286 31.2401C5.6286 31.1372 5.65713 31.0363 5.71104 30.9487L19.3751 7.21898C19.4428 7.11483 19.5354 7.02925 19.6445 6.96999C19.7537 6.91074 19.8759 6.87971 20.0001 6.87971C20.1243 6.87971 20.2465 6.91074 20.3557 6.96999C20.4648 7.02925 20.5574 7.11483 20.6251 7.21898L34.2876 30.9487C34.342 31.036 34.3711 31.1367 34.3716 31.2396C34.3722 31.3425 34.3442 31.4436 34.2907 31.5315ZM18.1251 21.2502V16.2502C18.1251 15.753 18.3226 15.276 18.6743 14.9244C19.0259 14.5728 19.5028 14.3752 20.0001 14.3752C20.4974 14.3752 20.9743 14.5728 21.3259 14.9244C21.6776 15.276 21.8751 15.753 21.8751 16.2502V21.2502C21.8751 21.7475 21.6776 22.2244 21.3259 22.5761C20.9743 22.9277 20.4974 23.1252 20.0001 23.1252C19.5028 23.1252 19.0259 22.9277 18.6743 22.5761C18.3226 22.2244 18.1251 21.7475 18.1251 21.2502ZM22.5001 27.5002C22.5001 27.9947 22.3535 28.478 22.0788 28.8892C21.8041 29.3003 21.4136 29.6207 20.9568 29.8099C20.5 29.9991 19.9973 30.0487 19.5124 29.9522C19.0274 29.8557 18.582 29.6176 18.2323 29.268C17.8827 28.9184 17.6446 28.4729 17.5481 27.988C17.4517 27.503 17.5012 27.0003 17.6904 26.5435C17.8796 26.0867 18.2001 25.6963 18.6112 25.4216C19.0223 25.1469 19.5056 25.0002 20.0001 25.0002C20.6631 25.0002 21.299 25.2636 21.7679 25.7325C22.2367 26.2013 22.5001 26.8372 22.5001 27.5002Z" fill="#DB3B4E"/>
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/brands/AppleIcon.svelte b/src/modal/components/icons/brands/AppleIcon.svelte
new file mode 100644
index 0000000..2678b26
--- /dev/null
+++ b/src/modal/components/icons/brands/AppleIcon.svelte
@@ -0,0 +1,5 @@
+<!-- TODO color bug on dark -->
+<svg xmlns="http://www.w3.org/2000/svg" width="22" height="26" viewBox="0 0 22 26" fill="none">
+  <path d="M17.71 13.7971C17.6815 10.6387 20.296 9.10219 20.4156 9.03069C18.9349 6.87185 16.6399 6.57692 15.8334 6.5534C13.9059 6.35052 12.0362 7.70675 11.0543 7.70675C10.0528 7.70675 8.54067 6.573 6.91107 6.60632C4.814 6.63862 2.85216 7.8528 1.77619 9.7382C-0.444353 13.5825 1.21174 19.2319 3.33916 22.3392C4.40337 23.8611 5.64695 25.5603 7.27459 25.5005C8.86703 25.4349 9.46182 24.4853 11.3835 24.4853C13.2875 24.4853 13.8461 25.5005 15.5061 25.4623C17.2151 25.4349 18.2911 23.9336 19.318 22.398C20.5479 20.6537 21.0418 18.9359 21.0614 18.8477C21.0212 18.834 17.7423 17.5826 17.71 13.7971Z" fill="currentColor"/>
+  <path d="M14.5762 4.5089C15.4327 3.43787 16.0187 1.98066 15.856 0.501953C14.6164 0.55683 13.0662 1.3594 12.1734 2.40697C11.3836 3.33007 10.678 4.8431 10.8603 6.26597C12.2528 6.36984 13.6825 5.56332 14.5762 4.5089Z" fill="currentColor"/>
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/brands/BraveIcon.svelte b/src/modal/components/icons/brands/BraveIcon.svelte
new file mode 100644
index 0000000..fac9732
--- /dev/null
+++ b/src/modal/components/icons/brands/BraveIcon.svelte
@@ -0,0 +1,22 @@
+<script lang="ts">
+  export let size = "21"
+</script>
+
+<svg xmlns="http://www.w3.org/2000/svg" width={size} height={size} viewBox="0 0 19 21" fill="none">
+  <path d="M17.4738 4.8289L17.9475 3.66752C17.9475 3.66752 17.3515 3.0257 16.618 2.2922C15.8845 1.5587 14.3411 1.98657 14.3411 1.98657L12.5838 0H6.39481L4.63746 2.00185C4.63746 2.00185 3.09404 1.57398 2.36054 2.30748C1.62704 3.04099 1.03106 3.6828 1.03106 3.6828L1.50479 4.84418L0.908813 6.55569C0.908813 6.55569 2.68145 13.2489 2.88011 14.0741C3.2927 15.6786 3.56777 16.3052 4.72915 17.1304C5.89053 17.9556 7.98407 19.3615 8.33554 19.5754C8.67173 19.7893 9.11489 20.1561 9.49692 20.1561C9.87896 20.1561 10.3068 19.7893 10.6583 19.5754C10.9945 19.3615 13.1033 17.9403 14.2647 17.1304C15.4261 16.3205 15.7011 15.6939 16.1137 14.0741C16.3277 13.2489 18.085 6.55569 18.085 6.55569L17.4738 4.8289Z" fill="url(#paint0_linear_6297_45106)"/>
+  <path d="M13.8521 3.26931C13.8521 3.26931 16.1138 6.00467 16.1138 6.60064C16.1138 7.19662 15.8234 7.33415 15.5331 7.63977C15.2427 7.9454 13.9897 9.27488 13.8368 9.44297C13.6687 9.61107 13.3478 9.87085 13.5312 10.3446C13.7299 10.803 14.0202 11.399 13.6993 12.0102C13.3784 12.6062 12.8283 13.0188 12.4768 12.9424C12.1253 12.8813 11.2849 12.4381 10.9792 12.2395C10.6736 12.0408 9.71088 11.2462 9.71088 10.9405C9.71088 10.6349 10.7194 10.0848 10.9028 9.96254C11.0862 9.84028 11.9267 9.35128 11.942 9.16791C11.9572 8.98453 11.9572 8.92341 11.6975 8.44968C11.453 7.97596 10.9945 7.34943 11.0709 6.93683C11.1473 6.52424 11.8655 6.3103 12.3851 6.11164C12.9047 5.91298 13.898 5.54623 14.0202 5.48511C14.1425 5.42398 14.1119 5.37814 13.7299 5.33229C13.3478 5.30173 12.2934 5.14892 11.8044 5.28645C11.3154 5.42398 10.5055 5.62264 10.4291 5.72961C10.368 5.83658 10.3069 5.83658 10.368 6.21861C10.4291 6.58536 10.7959 8.38856 10.8264 8.70947C10.857 9.03037 10.9334 9.24431 10.5819 9.32072C10.2457 9.39713 9.66504 9.53466 9.46638 9.53466C9.26772 9.53466 8.68703 9.39713 8.35084 9.32072C8.01465 9.24431 8.07578 9.03037 8.10634 8.70947C8.1369 8.38856 8.48837 6.60064 8.56478 6.21861C8.62591 5.85186 8.58006 5.83658 8.50366 5.72961C8.44253 5.62264 7.61734 5.42398 7.12834 5.28645C6.63933 5.14892 5.58492 5.28645 5.20289 5.33229C4.82086 5.36286 4.79029 5.42398 4.91254 5.48511C5.03479 5.54623 6.02808 5.91298 6.54765 6.11164C7.06721 6.3103 7.78543 6.52424 7.86184 6.93683C7.93825 7.34943 7.49509 7.97596 7.23531 8.44968C6.99081 8.92341 6.97552 8.96925 6.9908 9.16791C7.00609 9.35128 7.84656 9.84028 8.02993 9.96254C8.21331 10.0848 9.22188 10.6349 9.22188 10.9405C9.22188 11.2462 8.25915 12.0408 7.95353 12.2395C7.6479 12.4381 6.82271 12.866 6.45596 12.9424C6.10449 13.0035 5.55436 12.6062 5.23345 12.0102C4.91254 11.4143 5.20289 10.8183 5.40155 10.3446C5.6002 9.88613 5.26401 9.62635 5.09592 9.44297C4.97367 9.25959 3.73588 7.93012 3.44554 7.63977C3.15519 7.33415 2.88013 7.18133 2.88013 6.60064C2.88013 6.01995 5.14176 3.26931 5.14176 3.26931C5.14176 3.26931 7.05193 3.63607 7.31171 3.63607C7.5715 3.63607 8.12162 3.42213 8.64119 3.25403C9.16075 3.08594 9.49694 3.08594 9.49694 3.08594C9.49694 3.08594 9.83313 3.08594 10.3527 3.25403C10.8723 3.42213 11.4224 3.63607 11.6822 3.63607C11.942 3.63607 13.8521 3.26931 13.8521 3.26931Z" fill="white"/>
+  <path d="M12.1558 13.7368C12.2933 13.8285 12.2169 13.9965 12.0794 14.073C11.9571 14.1646 10.2303 15.4941 10.0775 15.6469C9.90941 15.7997 9.66491 16.029 9.49681 16.029C9.32872 16.029 9.08422 15.7845 8.91612 15.6469C8.74803 15.4941 7.03652 14.1646 6.91427 14.073C6.79202 13.9813 6.70033 13.8132 6.83786 13.7368C6.97539 13.6451 7.41855 13.4311 8.01452 13.1102C8.62578 12.7893 9.37456 12.5295 9.49681 12.5295C9.61906 12.5295 10.3679 12.7893 10.9791 13.1102C11.5751 13.4311 12.003 13.6604 12.1558 13.7368Z" fill="white"/>
+  <path d="M14.3413 2.00185L12.5839 0H6.39499L4.63764 2.00185C4.63764 2.00185 3.09422 1.57398 2.36072 2.30748C2.36072 2.30748 4.4237 2.12411 5.12664 3.27021C5.12664 3.27021 7.03681 3.63696 7.29659 3.63696C7.55637 3.63696 8.1065 3.42302 8.62606 3.25492C9.14563 3.08683 9.48182 3.08683 9.48182 3.08683C9.48182 3.08683 9.81801 3.08683 10.3376 3.25492C10.8571 3.42302 11.4073 3.63696 11.667 3.63696C11.9268 3.63696 13.837 3.27021 13.837 3.27021C14.5399 2.12411 16.6029 2.30748 16.6029 2.30748C15.8847 1.57398 14.3413 2.00185 14.3413 2.00185Z" fill="url(#paint1_linear_6297_45106)"/>
+  <defs>
+    <linearGradient id="paint0_linear_6297_45106" x1="0.908672" y1="10.0741" x2="18.0715" y2="10.0741" gradientUnits="userSpaceOnUse">
+      <stop stop-color="#FF5500"/>
+      <stop offset="0.4099" stop-color="#FF5500"/>
+      <stop offset="0.582" stop-color="#FF2000"/>
+      <stop offset="1" stop-color="#FF2000"/>
+    </linearGradient>
+    <linearGradient id="paint1_linear_6297_45106" x1="2.67289" y1="1.81512" x2="16.6132" y2="1.81512" gradientUnits="userSpaceOnUse">
+      <stop stop-color="#FF452A"/>
+      <stop offset="1" stop-color="#FF2000"/>
+    </linearGradient>
+  </defs>
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/brands/ChromeIcon.svelte b/src/modal/components/icons/brands/ChromeIcon.svelte
new file mode 100644
index 0000000..a34d3a6
--- /dev/null
+++ b/src/modal/components/icons/brands/ChromeIcon.svelte
@@ -0,0 +1,16 @@
+<script lang="ts">
+  export let size = "22"
+</script>
+
+<svg xmlns="http://www.w3.org/2000/svg" width={size} height={size} viewBox="0 0 22 22" fill="none">
+  <mask id="mask0_6328_20691" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width={size} height={size}>
+    <path d="M0.147583 10.7547C0.147583 4.81908 4.97505 0.00732422 10.93 0.00732422C16.885 0.00732422 21.7125 4.81908 21.7125 10.7547C21.7125 16.6903 16.885 21.502 10.93 21.502C4.97505 21.502 0.147583 16.6903 0.147583 10.7547Z" fill="#F1F1F1"/>
+  </mask>
+  <g mask="url(#mask0_6328_20691)">
+    <path d="M1.85962 0.00787449V13.1973H6.68474L10.9296 5.86942H21.712V0.00787449H1.85962ZM1.85962 0.00787449V13.1973H6.68474L10.9296 5.86942H21.712V0.00787449H1.85962Z" fill="#EA4335"/>
+    <path d="M0.147583 21.502H10.4107L15.1749 16.7533V13.1981L6.68507 13.1967L0.147583 2.02082V21.502ZM0.147583 21.502H10.4107L15.1749 16.7533V13.1981L6.68507 13.1967L0.147583 2.02082V21.502Z" fill="#34A853"/>
+    <path d="M10.9289 5.86867L15.1738 13.1965L10.411 21.502H21.7113V5.86867H10.9289ZM10.9289 5.86867L15.1738 13.1965L10.411 21.502H21.7113V5.86867H10.9289Z" fill="#FBBC05"/>
+    <path d="M10.9297 5.86791C13.6369 5.86791 15.8314 8.05549 15.8314 10.7537C15.8314 13.4521 13.6369 15.6396 10.9297 15.6396C8.22245 15.6396 6.02795 13.4521 6.02795 10.7537C6.02795 8.05549 8.22245 5.86791 10.9297 5.86791Z" fill="#F1F1F1"/>
+    <path d="M10.9286 6.84588C13.0943 6.84588 14.8499 8.59581 14.8499 10.7545C14.8499 12.9132 13.0943 14.6631 10.9286 14.6631C8.76284 14.6631 7.0072 12.9132 7.0072 10.7545C7.0072 8.59581 8.76284 6.84588 10.9286 6.84588Z" fill="#4285F4"/>
+  </g>
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/brands/EdgeIcon.svelte b/src/modal/components/icons/brands/EdgeIcon.svelte
new file mode 100644
index 0000000..05ba2d5
--- /dev/null
+++ b/src/modal/components/icons/brands/EdgeIcon.svelte
@@ -0,0 +1,45 @@
+<script lang="ts">
+  export let size = "21"
+</script>
+
+<svg xmlns="http://www.w3.org/2000/svg" width={size} height={size} viewBox="0 0 21 21" fill="none">
+  <path d="M18.9432 15.0009C18.6742 15.1415 18.3969 15.2653 18.1127 15.3717C17.208 15.7099 16.2497 15.8822 15.2839 15.8803C11.5552 15.8803 8.30719 13.3178 8.30719 10.0294C8.31196 9.58835 8.43446 9.15656 8.66205 8.77861C8.88963 8.40066 9.21405 8.09024 9.60182 7.87939C6.22931 8.0211 5.36255 11.5323 5.36255 13.5894C5.36255 19.4056 10.7278 19.9953 11.8838 19.9953C12.5071 19.9953 13.4471 19.8142 14.0113 19.6363L14.1145 19.6017C16.2856 18.8518 18.1364 17.3858 19.3624 15.4449C19.3999 15.3858 19.4167 15.3159 19.41 15.2462C19.4034 15.1765 19.3736 15.111 19.3256 15.0601C19.2775 15.0092 19.2138 14.9757 19.1445 14.965C19.0753 14.9543 19.0044 14.9669 18.9432 15.0009Z" fill="url(#paint0_linear_6297_45099)"/>
+  <path opacity="0.35" d="M18.9432 15.0009C18.6742 15.1415 18.3969 15.2653 18.1127 15.3717C17.208 15.7099 16.2497 15.8822 15.2839 15.8803C11.5552 15.8803 8.30719 13.3178 8.30719 10.0294C8.31196 9.58835 8.43446 9.15656 8.66205 8.77861C8.88963 8.40066 9.21405 8.09024 9.60182 7.87939C6.22931 8.0211 5.36255 11.5323 5.36255 13.5894C5.36255 19.4056 10.7278 19.9953 11.8838 19.9953C12.5071 19.9953 13.4471 19.8142 14.0113 19.6363L14.1145 19.6017C16.2856 18.8518 18.1364 17.3858 19.3624 15.4449C19.3999 15.3858 19.4167 15.3159 19.41 15.2462C19.4034 15.1765 19.3736 15.111 19.3256 15.0601C19.2775 15.0092 19.2138 14.9757 19.1445 14.965C19.0753 14.9543 19.0044 14.9669 18.9432 15.0009Z" fill="url(#paint1_radial_6297_45099)"/>
+  <path d="M9.06695 19.0054C8.36414 18.5696 7.75505 17.9985 7.27511 17.3254C6.7281 16.5766 6.35167 15.7174 6.17224 14.8078C5.99281 13.8983 6.01472 12.9606 6.23643 12.0605C6.45815 11.1603 6.8743 10.3195 7.45569 9.59705C8.03708 8.87459 8.76964 8.28797 9.60198 7.87832C9.84783 7.7626 10.2678 7.55319 10.8265 7.56342C11.2201 7.56628 11.6077 7.66017 11.9589 7.83773C12.3101 8.01529 12.6154 8.2717 12.8508 8.58685C13.169 9.01133 13.3444 9.5256 13.3519 10.0559C13.3519 10.0393 15.2793 3.78931 7.04818 3.78931C3.589 3.78931 0.74443 7.06902 0.74443 9.94645C0.730785 11.4686 1.05676 12.9746 1.69866 14.3551C2.7477 16.5914 4.5822 18.3649 6.85378 19.3388C9.12536 20.3128 11.6758 20.4194 14.0209 19.6384C13.1998 19.897 12.3323 19.9747 11.4783 19.8659C10.6243 19.7572 9.80398 19.4647 9.07405 19.0086L9.06695 19.0054Z" fill="url(#paint2_linear_6297_45099)"/>
+  <path opacity="0.41" d="M9.06695 19.0054C8.36414 18.5696 7.75505 17.9985 7.27511 17.3254C6.7281 16.5766 6.35167 15.7174 6.17224 14.8078C5.99281 13.8983 6.01472 12.9606 6.23643 12.0605C6.45815 11.1603 6.8743 10.3195 7.45569 9.59705C8.03708 8.87459 8.76964 8.28797 9.60198 7.87832C9.84783 7.7626 10.2678 7.55319 10.8265 7.56342C11.2201 7.56628 11.6077 7.66017 11.9589 7.83773C12.3101 8.01529 12.6154 8.2717 12.8508 8.58685C13.169 9.01133 13.3444 9.5256 13.3519 10.0559C13.3519 10.0393 15.2793 3.78931 7.04818 3.78931C3.589 3.78931 0.74443 7.06902 0.74443 9.94645C0.730785 11.4686 1.05676 12.9746 1.69866 14.3551C2.7477 16.5914 4.5822 18.3649 6.85378 19.3388C9.12536 20.3128 11.6758 20.4194 14.0209 19.6384C13.1998 19.897 12.3323 19.9747 11.4783 19.8659C10.6243 19.7572 9.80398 19.4647 9.07405 19.0086L9.06695 19.0054Z" fill="url(#paint3_radial_6297_45099)"/>
+  <path d="M12.7387 11.7191C12.6749 11.8018 12.4787 11.9159 12.4787 12.1647C12.4787 12.3702 12.6126 12.5678 12.8506 12.7339C13.9837 13.5211 16.1199 13.4172 16.1254 13.4172C16.965 13.4152 17.7887 13.1882 18.5106 12.7599C19.2388 12.335 19.8432 11.7273 20.2639 10.9971C20.6845 10.2668 20.9067 9.43939 20.9084 8.59685C20.9289 6.83261 20.278 5.6596 20.0148 5.14001C18.3451 1.87682 14.741 4.93329e-08 10.8216 4.93329e-08C8.17102 -0.000261808 5.62686 1.04193 3.7394 2.90118C1.85193 4.76042 0.772869 7.28727 0.735596 9.93519C0.773418 7.05855 3.63532 4.73535 7.03935 4.73535C7.31513 4.73535 8.88792 4.76212 10.3488 5.52812C11.6364 6.20359 12.3109 7.01919 12.7797 7.8277C13.2667 8.66771 13.3533 9.72893 13.3533 10.1517C13.3533 10.5744 13.1374 11.2011 12.7387 11.7191Z" fill="url(#paint4_radial_6297_45099)"/>
+  <path d="M12.7387 11.7191C12.6749 11.8018 12.4787 11.9159 12.4787 12.1647C12.4787 12.3702 12.6126 12.5678 12.8506 12.7339C13.9837 13.5211 16.1199 13.4172 16.1254 13.4172C16.965 13.4152 17.7887 13.1882 18.5106 12.7599C19.2388 12.335 19.8432 11.7273 20.2639 10.9971C20.6845 10.2668 20.9067 9.43939 20.9084 8.59685C20.9289 6.83261 20.278 5.6596 20.0148 5.14001C18.3451 1.87682 14.741 4.93329e-08 10.8216 4.93329e-08C8.17102 -0.000261808 5.62686 1.04193 3.7394 2.90118C1.85193 4.76042 0.772869 7.28727 0.735596 9.93519C0.773418 7.05855 3.63532 4.73535 7.03935 4.73535C7.31513 4.73535 8.88792 4.76212 10.3488 5.52812C11.6364 6.20359 12.3109 7.01919 12.7797 7.8277C13.2667 8.66771 13.3533 9.72893 13.3533 10.1517C13.3533 10.5744 13.1374 11.2011 12.7387 11.7191Z" fill="url(#paint5_radial_6297_45099)"/>
+  <defs>
+    <linearGradient id="paint0_linear_6297_45099" x1="5.36255" y1="13.9389" x2="19.4152" y2="13.9389" gradientUnits="userSpaceOnUse">
+      <stop stop-color="#0C59A4"/>
+      <stop offset="1" stop-color="#114A8B"/>
+    </linearGradient>
+    <radialGradient id="paint1_radial_6297_45099" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(13.124 14.0496) scale(7.51564 7.13342)">
+      <stop offset="0.72" stop-opacity="0"/>
+      <stop offset="0.95" stop-opacity="0.53"/>
+      <stop offset="1"/>
+    </radialGradient>
+    <linearGradient id="paint2_linear_6297_45099" x1="12.7712" y1="7.84762" x2="4.00261" y2="17.4073" gradientUnits="userSpaceOnUse">
+      <stop stop-color="#1B9DE2"/>
+      <stop offset="0.16" stop-color="#1595DF"/>
+      <stop offset="0.67" stop-color="#0680D7"/>
+      <stop offset="1" stop-color="#0078D4"/>
+    </linearGradient>
+    <radialGradient id="paint3_radial_6297_45099" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(6.29839 15.6665) rotate(-81.3767) scale(11.2916 9.13031)">
+      <stop offset="0.76" stop-opacity="0"/>
+      <stop offset="0.95" stop-opacity="0.5"/>
+      <stop offset="1"/>
+    </radialGradient>
+    <radialGradient id="paint4_radial_6297_45099" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(2.77348 3.72978) rotate(92.2927) scale(15.9492 33.9991)">
+      <stop stop-color="#35C1F1"/>
+      <stop offset="0.11" stop-color="#34C1ED"/>
+      <stop offset="0.23" stop-color="#2FC2DF"/>
+      <stop offset="0.31" stop-color="#2BC3D2"/>
+      <stop offset="0.67" stop-color="#36C752"/>
+    </radialGradient>
+    <radialGradient id="paint5_radial_6297_45099" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(19.6525 6.09385) rotate(73.7259) scale(7.66371 6.23687)">
+      <stop stop-color="#66EB6E"/>
+      <stop offset="1" stop-color="#66EB6E" stop-opacity="0"/>
+    </radialGradient>
+  </defs>
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/brands/FirefoxIcon.svelte b/src/modal/components/icons/brands/FirefoxIcon.svelte
new file mode 100644
index 0000000..2d36e7a
--- /dev/null
+++ b/src/modal/components/icons/brands/FirefoxIcon.svelte
@@ -0,0 +1,110 @@
+<script lang="ts">
+  export let size = "21"
+</script>
+
+<svg xmlns="http://www.w3.org/2000/svg" width={size} height={size} viewBox="0 0 20 21" fill="none">
+  <path d="M19.0292 6.76185C18.6047 5.74052 17.7437 4.63778 17.0694 4.28919C17.5504 5.22056 17.8841 6.22082 18.0588 7.25436L18.0605 7.27075C16.956 4.51705 15.083 3.40675 13.5533 0.989041C13.4759 0.866794 13.3985 0.744296 13.3232 0.614992C13.2801 0.54114 13.2455 0.474597 13.2155 0.413348C13.1521 0.290485 13.1032 0.160639 13.0698 0.0264442C13.0699 0.0202518 13.0677 0.0142596 13.0636 0.0096107C13.0595 0.00496183 13.0538 0.00198167 13.0477 0.00123872C13.0416 -0.000412908 13.0353 -0.000412908 13.0293 0.00123872C13.028 0.00123872 13.026 0.00350722 13.0245 0.00401132C13.023 0.00451543 13.0197 0.00678392 13.0174 0.00779214L13.0212 0.00123872C10.5674 1.43795 9.73491 4.09763 9.65828 5.42798C8.67837 5.49533 7.7415 5.85643 6.96987 6.46417C6.88936 6.39598 6.80522 6.3322 6.71781 6.27311C6.49522 5.494 6.48573 4.66943 6.69034 3.8854C5.78923 4.32194 4.98854 4.94076 4.33892 5.70271H4.33439C3.94723 5.21196 3.97445 3.59377 3.99663 3.25577C3.8821 3.3018 3.77277 3.35984 3.67047 3.42893C3.3287 3.67286 3.00919 3.94657 2.71569 4.24685C2.38124 4.58594 2.07578 4.95245 1.8025 5.34253V5.34404V5.34228C1.17444 6.23267 0.728971 7.23866 0.491813 8.30216L0.478706 8.36668C0.460306 8.45263 0.394016 8.88314 0.382674 8.97665C0.382674 8.98396 0.381161 8.99077 0.380405 8.99808C0.294893 9.44254 0.241905 9.89264 0.221863 10.3448L0.221863 10.3952C0.224005 12.8412 1.14363 15.1974 2.799 16.9982C4.45436 18.799 6.72502 19.9132 9.16221 20.1208C11.5994 20.3284 14.0258 19.6141 15.9618 18.1193C17.8979 16.6244 19.2027 14.4576 19.6185 12.0472C19.6349 11.9212 19.6482 11.7964 19.6628 11.6691C19.864 10.0061 19.6462 8.31919 19.0292 6.76185ZM7.76989 14.4087C7.81551 14.4306 7.85836 14.4543 7.90524 14.4752L7.91205 14.4795C7.86466 14.4568 7.81728 14.4332 7.76989 14.4087ZM18.0613 7.27302V7.26369L18.063 7.27402L18.0613 7.27302Z" fill="url(#paint0_linear_6297_45086)"/>
+  <path d="M19.029 6.76123C18.6045 5.7399 17.7435 4.63717 17.0693 4.28857C17.5502 5.21995 17.8839 6.2202 18.0586 7.25374V7.26307L18.0603 7.2734C18.8133 9.42808 18.7044 11.7904 17.7564 13.8667C16.6367 16.269 13.9266 18.7313 9.68457 18.6116C5.10095 18.4818 1.0643 15.0805 0.309647 10.6257C0.172277 9.92326 0.309647 9.5671 0.37871 8.9962C0.284499 9.43966 0.231927 9.89095 0.22168 10.3442L0.22168 10.3946C0.223821 12.8406 1.14345 15.1968 2.79882 16.9976C4.45418 18.7983 6.72484 19.9126 9.16203 20.1202C11.5992 20.3278 14.0256 19.6135 15.9616 18.1186C17.8977 16.6237 19.2025 14.457 19.6183 12.0466C19.6347 11.9205 19.648 11.7958 19.6627 11.6685C19.8639 10.0055 19.646 8.31857 19.029 6.76123Z" fill="url(#paint1_radial_6297_45086)"/>
+  <path d="M19.029 6.76123C18.6045 5.7399 17.7435 4.63717 17.0693 4.28857C17.5502 5.21995 17.8839 6.2202 18.0586 7.25374V7.26307L18.0603 7.2734C18.8133 9.42808 18.7044 11.7904 17.7564 13.8667C16.6367 16.269 13.9266 18.7313 9.68457 18.6116C5.10095 18.4818 1.0643 15.0805 0.309647 10.6257C0.172277 9.92326 0.309647 9.5671 0.37871 8.9962C0.284499 9.43966 0.231927 9.89095 0.22168 10.3442L0.22168 10.3946C0.223821 12.8406 1.14345 15.1968 2.79882 16.9976C4.45418 18.7983 6.72484 19.9126 9.16203 20.1202C11.5992 20.3278 14.0256 19.6135 15.9616 18.1186C17.8977 16.6237 19.2025 14.457 19.6183 12.0466C19.6347 11.9205 19.648 11.7958 19.6627 11.6685C19.8639 10.0055 19.646 8.31857 19.029 6.76123Z" fill="url(#paint2_radial_6297_45086)"/>
+  <path d="M14.2817 7.91068C14.3029 7.92555 14.3225 7.94042 14.3425 7.95529C14.0971 7.52017 13.7916 7.12179 13.4351 6.7719C10.3988 3.73514 12.6393 0.187473 13.0172 0.00725419L13.0209 0.00170898C10.5672 1.43842 9.73464 4.0981 9.65802 5.42844C9.77195 5.42063 9.88487 5.41105 10.0013 5.41105C10.872 5.41265 11.7267 5.64477 12.4785 6.08382C13.2303 6.52287 13.8525 7.15319 14.2817 7.91068Z" fill="url(#paint3_radial_6297_45086)"/>
+  <path d="M10.0075 8.5172C9.9914 8.76018 9.1329 9.59826 8.8327 9.59826C6.05481 9.59826 5.60388 11.2787 5.60388 11.2787C5.72688 12.6937 6.71292 13.8592 7.90489 14.4758C7.95933 14.504 8.01453 14.5295 8.06973 14.5544C8.16535 14.5968 8.26096 14.6359 8.35657 14.6719C8.76565 14.8166 9.19411 14.8993 9.62768 14.9171C14.4966 15.1455 15.4398 9.09466 11.9262 7.33885C12.7551 7.23099 13.5945 7.43481 14.2816 7.91076C13.8524 7.15327 13.2302 6.52295 12.4784 6.0839C11.7266 5.64485 10.8719 5.41273 10.0012 5.41113C9.88528 5.41113 9.77186 5.42071 9.65793 5.42852C8.67802 5.49588 7.74115 5.85698 6.96951 6.46472C7.11848 6.59075 7.2866 6.75912 7.64074 7.10822C8.30364 7.76129 10.0037 8.4378 10.0075 8.5172Z" fill="url(#paint4_radial_6297_45086)"/>
+  <path d="M10.0075 8.5172C9.9914 8.76018 9.1329 9.59826 8.8327 9.59826C6.05481 9.59826 5.60388 11.2787 5.60388 11.2787C5.72688 12.6937 6.71292 13.8592 7.90489 14.4758C7.95933 14.504 8.01453 14.5295 8.06973 14.5544C8.16535 14.5968 8.26096 14.6359 8.35657 14.6719C8.76565 14.8166 9.19411 14.8993 9.62768 14.9171C14.4966 15.1455 15.4398 9.09466 11.9262 7.33885C12.7551 7.23099 13.5945 7.43481 14.2816 7.91076C13.8524 7.15327 13.2302 6.52295 12.4784 6.0839C11.7266 5.64485 10.8719 5.41273 10.0012 5.41113C9.88528 5.41113 9.77186 5.42071 9.65793 5.42852C8.67802 5.49588 7.74115 5.85698 6.96951 6.46472C7.11848 6.59075 7.2866 6.75912 7.64074 7.10822C8.30364 7.76129 10.0037 8.4378 10.0075 8.5172Z" fill="url(#paint5_radial_6297_45086)"/>
+  <path d="M6.51447 6.1401C6.59361 6.19051 6.65889 6.23437 6.71611 6.27394C6.49352 5.49483 6.48403 4.67026 6.68864 3.88623C5.78753 4.32277 4.98683 4.94159 4.33722 5.70354C4.38486 5.70228 5.80191 5.67683 6.51447 6.1401Z" fill="url(#paint6_radial_6297_45086)"/>
+  <path d="M0.310452 10.6269C1.06435 15.0817 5.10176 18.4829 9.68537 18.6127C13.9275 18.7327 16.6375 16.2701 17.7572 13.8678C18.7052 11.7915 18.8141 9.4292 18.0611 7.27452V7.2652C18.0611 7.25789 18.0596 7.2536 18.0611 7.25587L18.0629 7.27225C18.4095 9.53495 17.2586 11.7271 15.4594 13.2094L15.4539 13.222C11.9483 16.077 8.59347 14.9445 7.91443 14.4823C7.86705 14.4596 7.81966 14.436 7.77228 14.4115C5.72837 13.4345 4.88398 11.5723 5.06496 9.97529C4.57978 9.98245 4.10294 9.84875 3.6922 9.59039C3.28147 9.33204 2.95448 8.96011 2.75084 8.51967C3.28737 8.19098 3.89913 8.00516 4.52783 7.97992C5.15653 7.95468 5.78122 8.09087 6.34237 8.3755C7.49926 8.90069 8.81572 8.95244 10.0103 8.51967C10.0065 8.44028 8.30638 7.76351 7.64348 7.11069C7.28934 6.76159 7.12122 6.59347 6.97226 6.46719C6.89175 6.399 6.80761 6.33522 6.7202 6.27614C6.66223 6.23656 6.59695 6.19371 6.51856 6.14229C5.806 5.67902 4.38895 5.70448 4.34207 5.70574H4.33753C3.95037 5.21499 3.97759 3.59679 3.99978 3.25879C3.88524 3.30482 3.77591 3.36286 3.67362 3.43195C3.33184 3.67588 3.01233 3.94959 2.71883 4.24987C2.38319 4.58801 2.07645 4.95367 1.80186 5.34303V5.34454V5.34278C1.1738 6.23317 0.728333 7.23916 0.491175 8.30265C0.486386 8.32257 0.139307 9.83994 0.310452 10.6269Z" fill="url(#paint7_radial_6297_45086)"/>
+  <path d="M13.435 6.77143C13.7917 7.12171 14.0972 7.52052 14.3424 7.95608C14.3961 7.99666 14.4463 8.03699 14.4889 8.07606C16.7037 10.1177 15.5432 13.0037 15.4568 13.2092C17.2559 11.7268 18.4058 9.5347 18.0603 7.27201C16.9552 4.51705 15.0822 3.40675 13.5525 0.989041C13.4751 0.866794 13.3977 0.744296 13.3224 0.614992C13.2793 0.54114 13.2447 0.474597 13.2148 0.413348C13.1513 0.290485 13.1024 0.160639 13.0691 0.0264442C13.0691 0.0202518 13.0669 0.0142596 13.0628 0.0096107C13.0587 0.00496183 13.053 0.00198167 13.0469 0.00123872C13.0409 -0.000412908 13.0345 -0.000412908 13.0285 0.00123872C13.0272 0.00123872 13.0252 0.00350721 13.0237 0.00401132C13.0222 0.00451543 13.0189 0.00678392 13.0166 0.00779214C12.6388 0.187003 10.3983 3.73467 13.435 6.77143Z" fill="url(#paint8_radial_6297_45086)"/>
+  <path d="M14.488 8.07354C14.4454 8.03447 14.3952 7.99414 14.3415 7.95356C14.3216 7.93869 14.302 7.92382 14.2808 7.90895C13.5936 7.433 12.7542 7.22919 11.9253 7.33704C15.439 9.09386 14.4963 15.1437 9.62685 14.9153C9.19327 14.8975 8.76481 14.8148 8.35573 14.6701C8.26012 14.6343 8.16451 14.5951 8.0689 14.5526C8.0137 14.5274 7.9585 14.5022 7.90405 14.474L7.91086 14.4782C8.58989 14.9418 11.9437 16.0743 15.4503 13.218L15.4559 13.2054C15.5433 13.0012 16.7038 10.1144 14.488 8.07354Z" fill="url(#paint9_radial_6297_45086)"/>
+  <path d="M5.60413 11.2781C5.60413 11.2781 6.05506 9.59766 8.83295 9.59766C9.13315 9.59766 9.9924 8.75958 10.0078 8.51659C8.81323 8.94936 7.49677 8.89761 6.33988 8.37242C5.77873 8.08779 5.15404 7.9516 4.52534 7.97684C3.89664 8.00208 3.28488 8.1879 2.74835 8.51659C2.95199 8.95703 3.27898 9.32896 3.68971 9.58731C4.10044 9.84567 4.57729 9.97937 5.06247 9.97221C4.88149 11.5695 5.72587 13.4317 7.76978 14.4084C7.81541 14.4303 7.85825 14.454 7.90514 14.4749C6.71216 13.8586 5.72713 12.6931 5.60413 11.2781Z" fill="url(#paint10_radial_6297_45086)"/>
+  <path d="M19.0292 6.76185C18.6047 5.74052 17.7437 4.63778 17.0694 4.28919C17.5504 5.22056 17.8841 6.22082 18.0588 7.25436L18.0605 7.27075C16.956 4.51705 15.083 3.40675 13.5533 0.989041C13.4759 0.866794 13.3985 0.744296 13.3232 0.614992C13.2801 0.54114 13.2455 0.474597 13.2155 0.413348C13.1521 0.290485 13.1032 0.160639 13.0698 0.0264442C13.0699 0.0202518 13.0677 0.0142596 13.0636 0.0096107C13.0595 0.00496183 13.0538 0.00198167 13.0477 0.00123872C13.0416 -0.000412908 13.0353 -0.000412908 13.0293 0.00123872C13.028 0.00123872 13.026 0.00350722 13.0245 0.00401132C13.023 0.00451543 13.0197 0.00678392 13.0174 0.00779214L13.0212 0.00123872C10.5674 1.43795 9.73491 4.09763 9.65828 5.42798C9.77221 5.42016 9.88513 5.41058 10.0016 5.41058C10.8722 5.41218 11.7269 5.6443 12.4788 6.08335C13.2306 6.5224 13.8527 7.15272 14.282 7.91021C13.5948 7.43426 12.7554 7.23044 11.9265 7.3383C15.4402 9.09512 14.4975 15.1449 9.62804 14.9166C9.19446 14.8988 8.766 14.8161 8.35693 14.6713C8.26131 14.6355 8.1657 14.5964 8.07009 14.5539C8.01489 14.5287 7.95969 14.5035 7.90524 14.4752L7.91205 14.4795C7.86466 14.4568 7.81728 14.4332 7.76989 14.4087C7.81551 14.4306 7.85836 14.4543 7.90524 14.4752C6.71227 13.8587 5.72724 12.6932 5.60424 11.2782C5.60424 11.2782 6.05516 9.59772 8.83306 9.59772C9.13325 9.59772 9.99251 8.75963 10.0079 8.51665C10.0041 8.43726 8.30399 7.76049 7.64109 7.10767C7.28695 6.75857 7.11883 6.59045 6.96987 6.46417C6.88936 6.39598 6.80522 6.3322 6.71781 6.27311C6.49522 5.494 6.48573 4.66943 6.69034 3.8854C5.78923 4.32194 4.98854 4.94076 4.33892 5.70271H4.33439C3.94723 5.21196 3.97445 3.59377 3.99663 3.25577C3.8821 3.3018 3.77277 3.35984 3.67047 3.42893C3.3287 3.67286 3.00919 3.94657 2.71569 4.24685C2.38124 4.58594 2.07578 4.95245 1.8025 5.34253V5.34404V5.34228C1.17444 6.23267 0.728971 7.23866 0.491813 8.30216L0.478706 8.36668C0.460306 8.45263 0.377885 8.88919 0.366038 8.98295C0.366038 8.97565 0.366038 8.99001 0.366038 8.98295C0.290651 9.43359 0.242505 9.88837 0.221863 10.3448L0.221863 10.3952C0.224005 12.8412 1.14363 15.1974 2.799 16.9982C4.45436 18.799 6.72502 19.9132 9.16221 20.1208C11.5994 20.3284 14.0258 19.6141 15.9618 18.1193C17.8979 16.6244 19.2027 14.4576 19.6185 12.0472C19.6349 11.9212 19.6482 11.7964 19.6628 11.6691C19.864 10.0061 19.6462 8.31919 19.0292 6.76185ZM18.06 7.26369L18.0618 7.27402L18.06 7.26369Z" fill="url(#paint11_linear_6297_45086)"/>
+  <defs>
+    <linearGradient id="paint0_linear_6297_45086" x1="17.7361" y1="3.12268" x2="1.51918" y2="18.769" gradientUnits="userSpaceOnUse">
+      <stop offset="0.048" stop-color="#FFF44F"/>
+      <stop offset="0.111" stop-color="#FFE847"/>
+      <stop offset="0.225" stop-color="#FFC830"/>
+      <stop offset="0.368" stop-color="#FF980E"/>
+      <stop offset="0.401" stop-color="#FF8B16"/>
+      <stop offset="0.462" stop-color="#FF672A"/>
+      <stop offset="0.534" stop-color="#FF3647"/>
+      <stop offset="0.705" stop-color="#E31587"/>
+    </linearGradient>
+    <radialGradient id="paint1_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(16.9866 2.23629) scale(20.3653 20.3653)">
+      <stop offset="0.129" stop-color="#FFBD4F"/>
+      <stop offset="0.186" stop-color="#FFAC31"/>
+      <stop offset="0.247" stop-color="#FF9D17"/>
+      <stop offset="0.283" stop-color="#FF980E"/>
+      <stop offset="0.403" stop-color="#FF563B"/>
+      <stop offset="0.467" stop-color="#FF3750"/>
+      <stop offset="0.71" stop-color="#F5156C"/>
+      <stop offset="0.782" stop-color="#EB0878"/>
+      <stop offset="0.86" stop-color="#E50080"/>
+    </radialGradient>
+    <radialGradient id="paint2_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(9.54495 10.5622) scale(20.3653 20.3653)">
+      <stop offset="0.3" stop-color="#960E18"/>
+      <stop offset="0.351" stop-color="#B11927" stop-opacity="0.74"/>
+      <stop offset="0.435" stop-color="#DB293D" stop-opacity="0.343"/>
+      <stop offset="0.497" stop-color="#F5334B" stop-opacity="0.094"/>
+      <stop offset="0.53" stop-color="#FF3750" stop-opacity="0"/>
+    </radialGradient>
+    <radialGradient id="paint3_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(12.0001 -2.38427) scale(14.7538 14.7538)">
+      <stop offset="0.132" stop-color="#FFF44F"/>
+      <stop offset="0.252" stop-color="#FFDC3E"/>
+      <stop offset="0.506" stop-color="#FF9D12"/>
+      <stop offset="0.526" stop-color="#FF980E"/>
+    </radialGradient>
+    <radialGradient id="paint4_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(7.29217 15.8829) scale(9.6968 9.69679)">
+      <stop offset="0.353" stop-color="#3A8EE6"/>
+      <stop offset="0.472" stop-color="#5C79F0"/>
+      <stop offset="0.669" stop-color="#9059FF"/>
+      <stop offset="1" stop-color="#C139E6"/>
+    </radialGradient>
+    <radialGradient id="paint5_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(10.6576 8.89437) rotate(-13.5916) scale(5.14118 6.01904)">
+      <stop offset="0.206" stop-color="#9059FF" stop-opacity="0"/>
+      <stop offset="0.278" stop-color="#8C4FF3" stop-opacity="0.064"/>
+      <stop offset="0.747" stop-color="#7716A8" stop-opacity="0.45"/>
+      <stop offset="0.975" stop-color="#6E008B" stop-opacity="0.6"/>
+    </radialGradient>
+    <radialGradient id="paint6_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(9.28808 1.40453) scale(6.97586)">
+      <stop stop-color="#FFE226"/>
+      <stop offset="0.121" stop-color="#FFDB27"/>
+      <stop offset="0.295" stop-color="#FFC82A"/>
+      <stop offset="0.502" stop-color="#FFA930"/>
+      <stop offset="0.732" stop-color="#FF7E37"/>
+      <stop offset="0.792" stop-color="#FF7139"/>
+    </radialGradient>
+    <radialGradient id="paint7_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(14.7705 -3.02052) scale(29.7629 29.7629)">
+      <stop offset="0.113" stop-color="#FFF44F"/>
+      <stop offset="0.456" stop-color="#FF980E"/>
+      <stop offset="0.622" stop-color="#FF5634"/>
+      <stop offset="0.716" stop-color="#FF3647"/>
+      <stop offset="0.904" stop-color="#E31587"/>
+    </radialGradient>
+    <radialGradient id="paint8_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(12.262 -1.36605) rotate(83.976) scale(21.8139 14.3163)">
+      <stop stop-color="#FFF44F"/>
+      <stop offset="0.06" stop-color="#FFE847"/>
+      <stop offset="0.168" stop-color="#FFC830"/>
+      <stop offset="0.304" stop-color="#FF980E"/>
+      <stop offset="0.356" stop-color="#FF8B16"/>
+      <stop offset="0.455" stop-color="#FF672A"/>
+      <stop offset="0.57" stop-color="#FF3647"/>
+      <stop offset="0.737" stop-color="#E31587"/>
+    </radialGradient>
+    <radialGradient id="paint9_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(9.12354 3.98625) scale(18.5815 18.5815)">
+      <stop offset="0.137" stop-color="#FFF44F"/>
+      <stop offset="0.48" stop-color="#FF980E"/>
+      <stop offset="0.592" stop-color="#FF5634"/>
+      <stop offset="0.655" stop-color="#FF3647"/>
+      <stop offset="0.904" stop-color="#E31587"/>
+    </radialGradient>
+    <radialGradient id="paint10_radial_6297_45086" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(14.0286 5.07494) scale(20.3373 20.3373)">
+      <stop offset="0.094" stop-color="#FFF44F"/>
+      <stop offset="0.231" stop-color="#FFE141"/>
+      <stop offset="0.509" stop-color="#FFAF1E"/>
+      <stop offset="0.626" stop-color="#FF980E"/>
+    </radialGradient>
+    <linearGradient id="paint11_linear_6297_45086" x1="17.5413" y1="3.039" x2="3.74231" y2="16.8377" gradientUnits="userSpaceOnUse">
+      <stop offset="0.167" stop-color="#FFF44F" stop-opacity="0.8"/>
+      <stop offset="0.266" stop-color="#FFF44F" stop-opacity="0.634"/>
+      <stop offset="0.489" stop-color="#FFF44F" stop-opacity="0.217"/>
+      <stop offset="0.6" stop-color="#FFF44F" stop-opacity="0"/>
+    </linearGradient>
+  </defs>
+</svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/brands/PlayStore.svelte b/src/modal/components/icons/brands/PlayStore.svelte
new file mode 100644
index 0000000..838e0cc
--- /dev/null
+++ b/src/modal/components/icons/brands/PlayStore.svelte
@@ -0,0 +1,33 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="20" height="23" viewBox="0 0 20 23" fill="none">
+  <path d="M0.467777 0.822764C0.216151 1.08602 0.0705566 1.49585 0.0705566 2.02664V20.9585C0.0705566 21.4892 0.216151 21.8991 0.467777 22.1623L0.529877 22.2201L11.1456 11.6156V11.3652L0.529877 0.760742L0.467777 0.822764Z" fill="url(#paint0_linear_6328_20701)"/>
+  <path d="M14.6806 15.1527L11.146 11.6161V11.3657L14.6849 7.8291L14.7642 7.87512L18.9551 10.2582C20.1512 10.9345 20.1512 12.0474 18.9551 12.728L14.7642 15.1067L14.6806 15.1527Z" fill="url(#paint1_linear_6328_20701)"/>
+  <path d="M14.7646 15.1065L11.1464 11.4907L0.468628 22.1626C0.865912 22.58 1.51368 22.6302 2.25039 22.2129L14.7646 15.1065Z" fill="url(#paint2_linear_6328_20701)"/>
+  <path d="M14.7646 7.87514L2.25039 0.768742C1.51368 0.355689 0.865912 0.405984 0.468628 0.823338L11.1464 11.4909L14.7646 7.87514Z" fill="url(#paint3_linear_6328_20701)"/>
+  <defs>
+    <linearGradient id="paint0_linear_6328_20701" x1="10.2031" y1="21.1557" x2="-4.16375" y2="6.77945" gradientUnits="userSpaceOnUse">
+      <stop stop-color="#00A0FF"/>
+      <stop offset="0.0066" stop-color="#00A1FF"/>
+      <stop offset="0.2601" stop-color="#00BEFF"/>
+      <stop offset="0.5122" stop-color="#00D2FF"/>
+      <stop offset="0.7604" stop-color="#00DFFF"/>
+      <stop offset="1" stop-color="#00E3FF"/>
+    </linearGradient>
+    <linearGradient id="paint1_linear_6328_20701" x1="20.5126" y1="11.4897" x2="-0.214967" y2="11.4897" gradientUnits="userSpaceOnUse">
+      <stop stop-color="#FFE000"/>
+      <stop offset="0.4087" stop-color="#FFBD00"/>
+      <stop offset="0.7754" stop-color="#FFA500"/>
+      <stop offset="1" stop-color="#FF9C00"/>
+    </linearGradient>
+    <linearGradient id="paint2_linear_6328_20701" x1="12.7972" y1="9.52511" x2="-6.68541" y2="-9.97016" gradientUnits="userSpaceOnUse">
+      <stop stop-color="#FF3A44"/>
+      <stop offset="1" stop-color="#C31162"/>
+    </linearGradient>
+    <linearGradient id="paint3_linear_6328_20701" x1="-2.2192" y1="28.4614" x2="6.48066" y2="19.756" gradientUnits="userSpaceOnUse">
+      <stop stop-color="#32A071"/>
+      <stop offset="0.0685" stop-color="#2DA771"/>
+      <stop offset="0.4762" stop-color="#15CF74"/>
+      <stop offset="0.8009" stop-color="#06E775"/>
+      <stop offset="1" stop-color="#00F076"/>
+    </linearGradient>
+  </defs>
+</svg>
\ No newline at end of file
diff --git a/src/modal/layouts/Connecting.svelte b/src/modal/layouts/Connecting.svelte
new file mode 100644
index 0000000..1a35341
--- /dev/null
+++ b/src/modal/layouts/Connecting.svelte
@@ -0,0 +1,21 @@
+<script lang="ts">
+  import FallbackMobile from "../components/FallbackMobile.svelte";
+
+  export let extensionName: string = "Argent X"
+  export let showFallback: boolean = true
+</script>
+
+<section class="flex flex-col justify-center items-center flex-grow">
+
+  <div  class="flex flex-col h-full justify-center items-center gap-4 w-full flex-grow">
+    <div class="bg-button-secondary rounded-full p-5">
+      <slot />
+    </div>
+
+    <h3 class="text-primary text-h4 font-bold">Connecting to {extensionName}...</h3>
+  </div>
+
+  {#if showFallback}
+    <FallbackMobile />
+  {/if}
+</section>
\ No newline at end of file
diff --git a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte
new file mode 100644
index 0000000..f2bca50
--- /dev/null
+++ b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte
@@ -0,0 +1,19 @@
+<script lang="ts">
+  import LargeButton from "../../components/buttons/LargeButton.svelte";
+
+  export let browser: string
+  export let href: string
+  export let extensionName: string = "Argent X"
+</script>
+
+<li>
+    <LargeButton as="a" href={href}>
+        <div class="w-full flex flex-row-reverse justify-end items-center gap-2">
+            <p class="text-surface-inverted flex flex-col text-left">
+                <span class="text-l2">Download {extensionName} for</span>
+                <span class="text-p3">{browser}</span>
+            </p>
+            <slot />
+        </div>
+    </LargeButton>
+</li>
diff --git a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
new file mode 100644
index 0000000..04fbbbb
--- /dev/null
+++ b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
@@ -0,0 +1,16 @@
+<script>
+  import ChromeIcon from "../../components/icons/brands/ChromeIcon.svelte";
+  import FirefoxIcon from "../../components/icons/brands/FirefoxIcon.svelte";
+  import EdgeIcon from "../../components/icons/brands/EdgeIcon.svelte";
+  import BraveIcon from "../../components/icons/brands/BraveIcon.svelte";
+  import ExtensionDownloadItem from "./ExtensionDownloadItem.svelte";
+</script>
+
+<section>
+    <ul class="flex flex-col gap-3">
+        <ExtensionDownloadItem href="#TODO" browser="Google Chrome"><ChromeIcon size="28" /></ExtensionDownloadItem>
+        <ExtensionDownloadItem href="#TODO" browser="Mozilla Firefox"><FirefoxIcon size="28" /></ExtensionDownloadItem>
+        <ExtensionDownloadItem href="#TODO" browser="Google Chrome"><EdgeIcon size="28" /></ExtensionDownloadItem>
+        <ExtensionDownloadItem href="#TODO" browser="Google Chrome"><BraveIcon size="28" /></ExtensionDownloadItem>
+    </ul>
+</section>
\ No newline at end of file
diff --git a/src/modal/layouts/FailedLogin.svelte b/src/modal/layouts/FailedLogin.svelte
new file mode 100644
index 0000000..6e510a2
--- /dev/null
+++ b/src/modal/layouts/FailedLogin.svelte
@@ -0,0 +1,30 @@
+<script lang="ts">
+  import WarningIcon from "../components/icons/WarningIcon.svelte";
+  import Button from "../components/buttons/Button.svelte";
+  import ReloadIcon from "../components/icons/ReloadIcon.svelte";
+  import FallbackMobile from "../components/FallbackMobile.svelte";
+
+  export let extensionName: string = "Argent X"
+</script>
+
+<section class="flex flex-col justify-center items-center flex-grow">
+
+  <div  class="flex flex-col h-full justify-center items-center gap-4 w-full flex-grow">
+    <div class="bg-button-secondary rounded-full p-5">
+      <WarningIcon />
+    </div>
+
+    <div>
+      <h3 class="text-primary text-h4 font-bold">Couldn't connect</h3>
+      <p class="text-primary text-p3 font-[400]">Please try connecting again.</p>
+    </div>
+
+    <Button isLarge={true}>
+      <div class="flex gap-2">
+        <ReloadIcon /> Retry connecting to {extensionName}
+      </div>
+    </Button>
+  </div>
+
+  <FallbackMobile />
+</section>
\ No newline at end of file
diff --git a/src/modal/layouts/SuccessfulLogin.svelte b/src/modal/layouts/SuccessfulLogin.svelte
new file mode 100644
index 0000000..0e0ab1a
--- /dev/null
+++ b/src/modal/layouts/SuccessfulLogin.svelte
@@ -0,0 +1,12 @@
+<script>
+  import SuccessCheckIcon from "../components/icons/SuccessCheckIcon.svelte";
+</script>
+
+<section class="flex flex-col justify-center items-center gap-4 flex-grow">
+
+  <div class="bg-button-secondary rounded-full p-5">
+    <SuccessCheckIcon />
+  </div>
+
+  <h3 class="text-primary text-h4 font-bold">Successfully logged in!</h3>
+</section>
\ No newline at end of file
diff --git a/src/modal/layouts/WalletList.svelte b/src/modal/layouts/WalletList.svelte
new file mode 100644
index 0000000..05a416a
--- /dev/null
+++ b/src/modal/layouts/WalletList.svelte
@@ -0,0 +1,13 @@
+<script lang="ts">
+  import WalletButton from "../components/buttons/WalletButton.svelte"
+
+  export let walletList: { title: string, subtitle?: string, icon: string }[] // TODO type
+</script>
+
+<section>
+  <ul class="flex flex-col gap-3">
+    {#each walletList as wallet}
+      <li><WalletButton {wallet} /></li>
+    {/each}
+  </ul>
+</section>
diff --git a/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte b/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
new file mode 100644
index 0000000..d223f96
--- /dev/null
+++ b/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
@@ -0,0 +1,48 @@
+<script>
+  import AppleIcon from "../../../components/icons/brands/AppleIcon.svelte";
+  import PlayStore from "../../../components/icons/brands/PlayStore.svelte";
+  import ChromeIcon from "../../../components/icons/brands/ChromeIcon.svelte";
+  import FirefoxIcon from "../../../components/icons/brands/FirefoxIcon.svelte";
+  import EdgeIcon from "../../../components/icons/brands/EdgeIcon.svelte";
+  import BraveIcon from "../../../components/icons/brands/BraveIcon.svelte";
+  import MobileGraphic from "./graphics/MobileGraphic.svelte";
+  import ArgentDownloadItem from "./ArgentDownloadItem.svelte";
+  import ArgentXGraphic from "./graphics/ArgentXGraphic.svelte";
+  import Link from "../../../components/buttons/Link.svelte";
+  import Line from "../../../components/Line.svelte";
+</script>
+
+<section class="flex flex-col flex-grow justify-between">
+  <div class="flex flex-col gap-2">
+    <ArgentDownloadItem title="Argent mobile" subtitle="Download Argent wallet on your mobile." link="#TODO">
+      <svelte:fragment slot="icons">
+        <AppleIcon />
+        <PlayStore />
+      </svelte:fragment>
+
+      <svelte:fragment slot="graphic">
+        <MobileGraphic />
+      </svelte:fragment>
+    </ArgentDownloadItem>
+
+    <ArgentDownloadItem title="Argent X" subtitle="Install Argent extension." link="#TODO">
+      <svelte:fragment slot="icons">
+        <ChromeIcon />
+        <FirefoxIcon />
+        <EdgeIcon />
+        <BraveIcon />
+      </svelte:fragment>
+
+      <svelte:fragment slot="graphic">
+        <ArgentXGraphic />
+      </svelte:fragment>
+    </ArgentDownloadItem>
+  </div>
+
+  <footer class="flex flex-col gap-4">
+    <Line />
+    <p class="text-[13px] text-secondary">If you want to learn more about argent visit our site:
+      <Link as="a" className="text-brand" href="https://www.argent.xyz/">www.argent.xyz</Link>
+    </p>
+  </footer>
+</section>
\ No newline at end of file
diff --git a/src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte b/src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte
new file mode 100644
index 0000000..a8d0d0c
--- /dev/null
+++ b/src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte
@@ -0,0 +1,25 @@
+<script lang="ts">
+  import Button from "../../../components/buttons/Button.svelte";
+
+  export let title: string
+  export let subtitle: string
+  export let link: string
+</script>
+
+<div class="flex flex-row gap-3 px-4 py-3 rounded-xl bg-surface-elevated">
+  <div class="flex flex-col gap-3 flex-grow">
+    <div class="flex flex-col gap-1 text-left">
+      <h4 class="text-heading5 text-primary">{title}</h4>
+      <p class="text-l1 text-secondary-web">{subtitle}</p>
+    </div>
+    <div class="flex gap-3">
+      <slot name="icons" />
+    </div>
+    <Button as="a" href={link} className="bg-button-secondary text-primary hover:bg-button-secondary-hover flex w-[140px] h-[32px] text-b3 rounded-3xl justify-center items-center" >
+      Download
+    </Button>
+  </div>
+  <div class="flex items-center">
+    <slot name="graphic" />
+  </div>
+</div>
\ No newline at end of file
diff --git a/src/modal/layouts/argent/ArgentDownload/graphics/ArgentXGraphic.svelte b/src/modal/layouts/argent/ArgentDownload/graphics/ArgentXGraphic.svelte
new file mode 100644
index 0000000..5f505fc
--- /dev/null
+++ b/src/modal/layouts/argent/ArgentDownload/graphics/ArgentXGraphic.svelte
@@ -0,0 +1,45 @@
+<svg width="118" height="110" viewBox="0 0 118 110" fill="none" xmlns="http://www.w3.org/2000/svg">
+  <mask id="mask0_6297_45112" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="5" y="0" width="109" height="110">
+    <ellipse cx="59.2004" cy="55.0779" rx="53.9" ry="54.2667" fill="#F2F2F2"/>
+  </mask>
+  <g mask="url(#mask0_6297_45112)">
+    <path d="M59.4166 109.288C89.1694 109.288 113.289 85.005 113.289 55.0498C113.289 25.0947 89.1694 0.811279 59.4166 0.811279C29.6639 0.811279 5.54456 25.0947 5.54456 55.0498C5.54456 85.005 29.6639 109.288 59.4166 109.288Z" fill="#BFBFBF" fill-opacity="0.2"/>
+    <rect x="21.4704" y="22.5181" width="75.46" height="105.573" rx="4.9" fill="black"/>
+    <ellipse opacity="0.4" cx="59.2004" cy="45.2112" rx="9.31" ry="9.37333" fill="#FF875B"/>
+    <rect x="54.7904" y="44.2246" width="5.39" height="1.97333" rx="0.986666" fill="#8C8C8C"/>
+    <rect x="61.65" y="44.2244" width="1.96" height="1.97333" rx="0.98" fill="#8C8C8C"/>
+    <rect x="54.3004" y="28.438" width="10.29" height="1.48" rx="0.74" fill="#595959"/>
+    <rect x="26.3708" y="70.3047" width="65.66" height="11.76" rx="1.96" fill="#595959"/>
+    <rect x="36.1716" y="74.2246" width="18.62" height="1.47" rx="0.735" fill="#F9F9F9"/>
+    <rect x="36.1716" y="76.6748" width="34.3" height="1.47" rx="0.735" fill="#8C8C8C"/>
+    <path fill-rule="evenodd" clip-rule="evenodd" d="M88.5198 76.1844C88.5198 74.8313 87.4229 73.7344 86.0698 73.7344H83.2114C81.8583 73.7344 80.7614 74.8313 80.7614 76.1844C80.7614 77.5375 81.8583 78.6344 83.2114 78.6344H86.0698C87.4229 78.6344 88.5198 77.5375 88.5198 76.1844Z" fill="#FF875B"/>
+    <g filter="url(#filter0_d_6297_45112)">
+      <path fill-rule="evenodd" clip-rule="evenodd" d="M86.0698 78.2262C84.9422 78.2262 84.0281 77.3121 84.0281 76.1845C84.0281 75.0569 84.9422 74.1428 86.0698 74.1428C87.1974 74.1428 88.1115 75.0569 88.1115 76.1845C88.1115 77.3121 87.1974 78.2262 86.0698 78.2262Z" fill="black"/>
+    </g>
+    <path d="M29.8866 74.895C29.9417 74.8416 30.0165 74.8115 30.0945 74.8115H32.4465C32.5244 74.8115 32.5992 74.8416 32.6544 74.895C32.7095 74.9485 32.7405 75.021 32.7405 75.0966V75.9334C32.7405 77.2483 31.5889 77.6834 31.365 77.7557C31.3038 77.7768 31.2371 77.7768 31.176 77.7557C30.952 77.6834 29.8005 77.2483 29.8005 75.9334V75.0966C29.8005 75.021 29.8315 74.9485 29.8866 74.895Z" fill="white"/>
+    <rect x="26.3708" y="87.9446" width="65.66" height="6.86" rx="1.96" fill="#262626"/>
+    <rect x="35.6814" y="90.8845" width="34.79" height="1.47" rx="0.735" fill="#595959"/>
+    <path d="M86.1501 90.3948L87.1301 91.3748L86.1501 92.3548" stroke="#595959" stroke-width="0.98" stroke-linecap="round" stroke-linejoin="round"/>
+    <rect x="30.7809" y="90.3945" width="2.45" height="2.45" rx="0.49" fill="#595959"/>
+    <rect x="26.3708" y="97.7446" width="65.66" height="6.86" rx="1.96" fill="#262626"/>
+    <rect x="35.6814" y="100.685" width="34.79" height="1.47" rx="0.735" fill="#595959"/>
+    <path d="M86.1501 100.195L87.1301 101.175L86.1501 102.155" stroke="#595959" stroke-width="0.98" stroke-linecap="round" stroke-linejoin="round"/>
+    <rect x="30.7809" y="100.195" width="2.45" height="2.45" rx="0.49" fill="#595959"/>
+    <rect x="26.3707" y="60.5046" width="65.66" height="6.86" rx="1.96" fill="#0F0F0F"/>
+    <rect x="44.0114" y="63.4446" width="30.87" height="1.47" rx="0.735" fill="#595959"/>
+    <rect x="85.1715" y="62.9548" width="2.45" height="2.45" rx="0.49" fill="#595959"/>
+  </g>
+  <path d="M27.8414 29.7214L26.8614 28.7414L27.8414 27.7614" stroke="#595959" stroke-width="0.98" stroke-linecap="round" stroke-linejoin="round"/>
+  <path d="M27.3512 28.7415L29.5562 28.7415" stroke="#595959" stroke-width="0.98" stroke-linecap="round"/>
+  <defs>
+    <filter id="filter0_d_6297_45112" x="83.7014" y="74.1428" width="4.73671" height="4.73659" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+      <feFlood flood-opacity="0" result="BackgroundImageFix"/>
+      <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
+      <feOffset dy="0.326667"/>
+      <feGaussianBlur stdDeviation="0.163333"/>
+      <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"/>
+      <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_6297_45112"/>
+      <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_6297_45112" result="shape"/>
+    </filter>
+  </defs>
+</svg>
diff --git a/src/modal/layouts/argent/ArgentDownload/graphics/MobileGraphic.svelte b/src/modal/layouts/argent/ArgentDownload/graphics/MobileGraphic.svelte
new file mode 100644
index 0000000..3f7628a
--- /dev/null
+++ b/src/modal/layouts/argent/ArgentDownload/graphics/MobileGraphic.svelte
@@ -0,0 +1,27 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="118" height="108" viewBox="0 0 118 108" fill="none">
+  <g clip-path="url(#clip0_6297_45055)">
+    <mask id="mask0_6297_45055" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="5" y="0" width="109" height="108">
+      <circle cx="59.2004" cy="53.9996" r="53.9" fill="#F2F2F2"/>
+    </mask>
+    <g mask="url(#mask0_6297_45055)">
+      <path d="M59.4166 107.844C89.1694 107.844 113.289 83.7244 113.289 53.9717C113.289 24.219 89.1694 0.0996094 59.4166 0.0996094C29.6639 0.0996094 5.54456 24.219 5.54456 53.9717C5.54456 83.7244 29.6639 107.844 59.4166 107.844Z" fill="#BFBFBF" fill-opacity="0.2"/>
+    </g>
+    <path d="M54.8457 95.6447L39.8764 33.1839C39.1425 30.1277 40.4294 26.9308 43.0935 25.2418L63.6825 12.1625C64.8688 11.4086 66.2964 11.4789 67.3721 12.1424C65.1503 9.74977 62.1946 9.70956 60.8978 10.745L39.3537 24.4275C36.2774 26.3778 34.7895 30.0674 35.634 33.6061L49.9397 93.3224C50.6636 96.3585 56.8463 99.3041 59.4501 97.5749V97.5548C57.6707 98.6305 55.3383 97.6754 54.8457 95.6246V95.6447Z" fill="#8C8C8C" stroke="#0F0F0F" stroke-width="0.502662" stroke-miterlimit="10"/>
+    <path d="M58.4029 90.9901L60.7654 96.4993L59.4484 97.5851C56.8446 99.3142 50.6719 96.3686 49.938 93.3325L48.5406 87.5117L58.4029 90.9901Z" fill="#0F0F0F" stroke="#0F0F0F" stroke-width="0.603195" stroke-miterlimit="10"/>
+    <path d="M83.7591 75.3371L68.9305 14.2838C68.3676 11.9715 65.6934 10.8958 63.6827 12.1625L43.0937 25.2418C40.4396 26.9307 39.1428 30.1176 39.8767 33.1839L54.8359 95.6447C55.3385 97.7357 57.7614 98.6908 59.5609 97.5045L80.532 83.5808C83.2363 81.7812 84.5231 78.4938 83.7591 75.3371Z" fill="#8C8C8C" stroke="#0F0F0F" stroke-width="0.502662" stroke-miterlimit="10"/>
+    <path d="M82.3298 74.4824L68.5367 16.0429C68.014 13.8312 65.5509 12.7857 63.7112 14.0021L61.1476 15.6911L60.2127 19.0288C60.0418 19.642 59.6597 20.1648 59.1269 20.5166L50.6922 26.1666C49.9382 26.6692 48.9832 26.7597 48.1588 26.3978L46.1884 25.5533L44.8111 26.4682C42.3681 28.0767 41.1919 31.1228 41.8755 34.0584L55.7993 93.855C56.2718 95.8556 58.5036 96.7805 60.1523 95.6445L79.4043 82.3843C81.8875 80.6752 83.0637 77.5185 82.3499 74.5026L82.3298 74.4824Z" fill="#FF875B" stroke="#0F0F0F" stroke-width="0.603195" stroke-miterlimit="10"/>
+    <path d="M51.5376 22.9399C51.5979 23.1208 51.809 23.161 52.0101 23.0203L58.1224 18.9085C58.3235 18.7778 58.4341 18.5164 58.3738 18.3355C58.3134 18.1545 58.1023 18.1143 57.9013 18.255L51.7889 22.3668C51.5878 22.4975 51.4772 22.7589 51.5376 22.9399Z" fill="#0F0F0F"/>
+    <path d="M50.1602 24.5681C50.4718 24.548 50.703 24.2263 50.6729 23.8643C50.6427 23.4924 50.3713 23.2109 50.0697 23.231C49.758 23.2511 49.5268 23.5728 49.557 23.9347C49.5871 24.3067 49.8586 24.5882 50.1602 24.5681Z" fill="#0F0F0F"/>
+    <path d="M50.9649 73.1354L54.2624 23.7739L50.6834 26.1666C50.0199 26.6089 49.1955 26.7296 48.4415 26.5084L46.2399 52.8982L50.9548 73.1454L50.9649 73.1354Z" fill="#FFCBB8"/>
+    <path d="M44.7614 46.4642L45.2841 48.696L47.2847 26.0159L46.6413 25.7344L44.7614 46.4541V46.4642Z" fill="#FFCBB8"/>
+    <path d="M82.3298 74.4824L68.5367 16.0429C68.014 13.8312 65.5509 12.7857 63.7112 14.0021L61.1476 15.6911L60.2127 19.0288C60.0418 19.642 59.6597 20.1648 59.1269 20.5166L50.6922 26.1666C49.9382 26.6692 48.9832 26.7597 48.1588 26.3978L46.1884 25.5533L44.8111 26.4682C42.3681 28.0767 41.1919 31.1228 41.8755 34.0584L55.7993 93.8551C56.2718 95.8556 58.5036 96.7805 60.1523 95.6445L79.4043 82.3843C81.8875 80.6752 83.0637 77.5185 82.3499 74.5026L82.3298 74.4824Z" stroke="#0F0F0F" stroke-width="0.502662" stroke-miterlimit="10"/>
+    <path d="M47.7989 83.8722L52.4535 85.1389L41.4151 39.5675L36.861 38.7432L47.7989 83.8822V83.8722Z" fill="#0F0F0F" stroke="#0F0F0F" stroke-width="0.603195" stroke-miterlimit="10"/>
+    <path d="M39.5939 33.3041C38.9806 30.7104 39.6341 27.9759 41.7654 25.8949L38.679 25.3018C36.3969 27.1918 35.4419 30.0268 35.7837 32.7713L39.5939 33.3041Z" fill="#F8F8F8"/>
+    <path d="M62.0044 48.0829L59.8027 49.2792C59.7324 49.3194 59.6921 49.43 59.7223 49.5205C60.5366 52.2147 60.2451 55.3413 58.8678 58.1562C58.8276 58.2467 58.8477 58.3573 58.9181 58.4176L61.0694 60.0161C61.1398 60.0663 61.2404 60.0462 61.2906 59.9557C62.1451 58.2065 62.6679 56.3466 62.8489 54.4868C64.0653 55.6127 65.523 56.4472 67.1416 56.9297C67.222 56.9498 67.3025 56.8895 67.3226 56.789L67.775 53.783C67.785 53.6825 67.7347 53.582 67.6543 53.5619C65.1209 52.7777 63.1404 50.8374 62.2055 48.1834C62.1753 48.0929 62.0848 48.0426 62.0145 48.0829H62.0044Z" fill="white"/>
+  </g>
+  <defs>
+    <clipPath id="clip0_6297_45055">
+      <rect width="117.6" height="107.8" fill="white" transform="translate(0.400024 0.100098)"/>
+    </clipPath>
+  </defs>
+</svg>
\ No newline at end of file
diff --git a/src/modal/layouts/argent/ArgentMobileQR.svelte b/src/modal/layouts/argent/ArgentMobileQR.svelte
new file mode 100644
index 0000000..994b7a6
--- /dev/null
+++ b/src/modal/layouts/argent/ArgentMobileQR.svelte
@@ -0,0 +1,17 @@
+<script>
+  import InstallWallet from "../../components/InstallWallet.svelte";
+  import QRCode from "./QRCode.svelte";
+</script>
+
+<section class="flex flex-col gap-4">
+  <div>
+    <h3 class="mb-4 text-h5 text-primary font-semibold">Connect Argent mobile by<br />scanning QR code:</h3>
+
+    <div class="w-full flex justify-center">
+      <!-- TODO replace QR, slot or prop -->
+      <QRCode />
+    </div>
+  </div>
+
+  <InstallWallet walletName="Argent" walletLink="#TODO" />
+</section>
\ No newline at end of file
diff --git a/src/modal/layouts/argent/QRCode.svelte b/src/modal/layouts/argent/QRCode.svelte
new file mode 100644
index 0000000..e04d3fa
--- /dev/null
+++ b/src/modal/layouts/argent/QRCode.svelte
@@ -0,0 +1,469 @@
+<svg width="242" height="242" viewBox="0 0 242 242" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+  <rect width="242" height="242" rx="35" fill="white"/>
+  <path d="M76.3877 20.683C77.4485 20.683 78.3085 19.8231 78.3085 18.7622C78.3085 17.7014 77.4485 16.8414 76.3877 16.8414C75.3268 16.8414 74.4668 17.7014 74.4668 18.7622C74.4668 19.8231 75.3268 20.683 76.3877 20.683Z" fill="black"/>
+  <path d="M89.1921 20.6826C90.2529 20.6826 91.1129 19.8226 91.1129 18.7618C91.1129 17.7009 90.2529 16.8409 89.1921 16.8409C88.1313 16.8409 87.2713 17.7009 87.2713 18.7618C87.2713 19.8226 88.1313 20.6826 89.1921 20.6826Z" fill="black"/>
+  <path d="M134.011 20.6826C135.072 20.6826 135.932 19.8226 135.932 18.7618C135.932 17.7009 135.072 16.8409 134.011 16.8409C132.95 16.8409 132.09 17.7009 132.09 18.7618C132.09 19.8226 132.95 20.6826 134.011 20.6826Z" fill="black"/>
+  <path d="M140.415 20.6826C141.476 20.6826 142.336 19.8226 142.336 18.7617C142.336 17.7009 141.476 16.8409 140.415 16.8409C139.355 16.8409 138.495 17.7009 138.495 18.7617C138.495 19.8226 139.355 20.6826 140.415 20.6826Z" fill="black"/>
+  <path d="M159.623 20.6826C160.684 20.6826 161.544 19.8226 161.544 18.7617C161.544 17.7009 160.684 16.8409 159.623 16.8409C158.563 16.8409 157.703 17.7009 157.703 18.7617C157.703 19.8226 158.563 20.6826 159.623 20.6826Z" fill="black"/>
+  <path d="M172.427 20.683C173.488 20.683 174.348 19.8231 174.348 18.7622C174.348 17.7014 173.488 16.8414 172.427 16.8414C171.366 16.8414 170.506 17.7014 170.506 18.7622C170.506 19.8231 171.366 20.683 172.427 20.683Z" fill="black"/>
+  <path d="M69.9832 27.0847C71.044 27.0847 71.904 26.2247 71.904 25.1639C71.904 24.103 71.044 23.243 69.9832 23.243C68.9223 23.243 68.0623 24.103 68.0623 25.1639C68.0623 26.2247 68.9223 27.0847 69.9832 27.0847Z" fill="black"/>
+  <path d="M76.3877 27.0847C77.4485 27.0847 78.3085 26.2247 78.3085 25.1639C78.3085 24.103 77.4485 23.243 76.3877 23.243C75.3268 23.243 74.4668 24.103 74.4668 25.1639C74.4668 26.2247 75.3268 27.0847 76.3877 27.0847Z" fill="black"/>
+  <path d="M82.7871 27.0847C83.848 27.0847 84.7079 26.2247 84.7079 25.1638C84.7079 24.103 83.848 23.243 82.7871 23.243C81.7263 23.243 80.8663 24.103 80.8663 25.1638C80.8663 26.2247 81.7263 27.0847 82.7871 27.0847Z" fill="black"/>
+  <path d="M95.5957 27.0847C96.6565 27.0847 97.5165 26.2247 97.5165 25.1639C97.5165 24.103 96.6565 23.243 95.5957 23.243C94.5348 23.243 93.6748 24.103 93.6748 25.1639C93.6748 26.2247 94.5348 27.0847 95.5957 27.0847Z" fill="black"/>
+  <path d="M108.4 27.0847C109.461 27.0847 110.321 26.2247 110.321 25.1639C110.321 24.103 109.461 23.243 108.4 23.243C107.339 23.243 106.479 24.103 106.479 25.1639C106.479 26.2247 107.339 27.0847 108.4 27.0847Z" fill="black"/>
+  <path d="M114.803 27.0847C115.864 27.0847 116.724 26.2247 116.724 25.1639C116.724 24.103 115.864 23.243 114.803 23.243C113.742 23.243 112.882 24.103 112.882 25.1639C112.882 26.2247 113.742 27.0847 114.803 27.0847Z" fill="black"/>
+  <path d="M134.011 27.0847C135.072 27.0847 135.932 26.2247 135.932 25.1639C135.932 24.103 135.072 23.243 134.011 23.243C132.95 23.243 132.09 24.103 132.09 25.1639C132.09 26.2247 132.95 27.0847 134.011 27.0847Z" fill="black"/>
+  <path d="M140.415 27.0847C141.476 27.0847 142.336 26.2247 142.336 25.1638C142.336 24.103 141.476 23.243 140.415 23.243C139.355 23.243 138.495 24.103 138.495 25.1638C138.495 26.2247 139.355 27.0847 140.415 27.0847Z" fill="black"/>
+  <path d="M153.219 27.0847C154.28 27.0847 155.14 26.2247 155.14 25.1639C155.14 24.103 154.28 23.243 153.219 23.243C152.158 23.243 151.298 24.103 151.298 25.1639C151.298 26.2247 152.158 27.0847 153.219 27.0847Z" fill="black"/>
+  <path d="M159.623 27.0847C160.684 27.0847 161.544 26.2247 161.544 25.1638C161.544 24.103 160.684 23.243 159.623 23.243C158.563 23.243 157.703 24.103 157.703 25.1638C157.703 26.2247 158.563 27.0847 159.623 27.0847Z" fill="black"/>
+  <path d="M69.9832 33.4884C71.044 33.4884 71.904 32.6284 71.904 31.5676C71.904 30.5067 71.044 29.6467 69.9832 29.6467C68.9223 29.6467 68.0623 30.5067 68.0623 31.5676C68.0623 32.6284 68.9223 33.4884 69.9832 33.4884Z" fill="black"/>
+  <path d="M82.7871 33.4884C83.848 33.4884 84.7079 32.6284 84.7079 31.5675C84.7079 30.5067 83.848 29.6467 82.7871 29.6467C81.7263 29.6467 80.8663 30.5067 80.8663 31.5675C80.8663 32.6284 81.7263 33.4884 82.7871 33.4884Z" fill="black"/>
+  <path d="M114.803 33.4884C115.864 33.4884 116.724 32.6284 116.724 31.5676C116.724 30.5067 115.864 29.6467 114.803 29.6467C113.742 29.6467 112.882 30.5067 112.882 31.5676C112.882 32.6284 113.742 33.4884 114.803 33.4884Z" fill="black"/>
+  <path d="M127.607 33.489C128.668 33.489 129.528 32.629 129.528 31.5681C129.528 30.5073 128.668 29.6473 127.607 29.6473C126.546 29.6473 125.686 30.5073 125.686 31.5681C125.686 32.629 126.546 33.489 127.607 33.489Z" fill="black"/>
+  <path d="M134.011 33.4884C135.072 33.4884 135.932 32.6284 135.932 31.5676C135.932 30.5067 135.072 29.6467 134.011 29.6467C132.95 29.6467 132.09 30.5067 132.09 31.5676C132.09 32.6284 132.95 33.4884 134.011 33.4884Z" fill="black"/>
+  <path d="M140.415 33.4884C141.476 33.4884 142.336 32.6284 142.336 31.5675C142.336 30.5067 141.476 29.6467 140.415 29.6467C139.355 29.6467 138.495 30.5067 138.495 31.5675C138.495 32.6284 139.355 33.4884 140.415 33.4884Z" fill="black"/>
+  <path d="M146.815 33.489C147.876 33.489 148.736 32.629 148.736 31.5681C148.736 30.5073 147.876 29.6473 146.815 29.6473C145.754 29.6473 144.894 30.5073 144.894 31.5681C144.894 32.629 145.754 33.489 146.815 33.489Z" fill="black"/>
+  <path d="M153.219 33.489C154.28 33.489 155.14 32.629 155.14 31.5681C155.14 30.5073 154.28 29.6473 153.219 29.6473C152.158 29.6473 151.298 30.5073 151.298 31.5681C151.298 32.629 152.158 33.489 153.219 33.489Z" fill="black"/>
+  <path d="M159.623 33.4884C160.684 33.4884 161.544 32.6284 161.544 31.5675C161.544 30.5067 160.684 29.6467 159.623 29.6467C158.563 29.6467 157.703 30.5067 157.703 31.5675C157.703 32.6284 158.563 33.4884 159.623 33.4884Z" fill="black"/>
+  <path d="M172.427 33.489C173.488 33.489 174.348 32.629 174.348 31.5681C174.348 30.5073 173.488 29.6473 172.427 29.6473C171.366 29.6473 170.506 30.5073 170.506 31.5681C170.506 32.629 171.366 33.489 172.427 33.489Z" fill="black"/>
+  <path d="M69.9832 39.8905C71.044 39.8905 71.904 39.0305 71.904 37.9697C71.904 36.9088 71.044 36.0488 69.9832 36.0488C68.9223 36.0488 68.0623 36.9088 68.0623 37.9697C68.0623 39.0305 68.9223 39.8905 69.9832 39.8905Z" fill="black"/>
+  <path d="M76.3877 39.8906C77.4485 39.8906 78.3085 39.0306 78.3085 37.9698C78.3085 36.9089 77.4485 36.0489 76.3877 36.0489C75.3268 36.0489 74.4668 36.9089 74.4668 37.9698C74.4668 39.0306 75.3268 39.8906 76.3877 39.8906Z" fill="black"/>
+  <path d="M95.5957 39.8906C96.6565 39.8906 97.5165 39.0306 97.5165 37.9698C97.5165 36.9089 96.6565 36.0489 95.5957 36.0489C94.5348 36.0489 93.6748 36.9089 93.6748 37.9698C93.6748 39.0306 94.5348 39.8906 95.5957 39.8906Z" fill="black"/>
+  <path d="M101.994 39.8906C103.055 39.8906 103.915 39.0306 103.915 37.9697C103.915 36.9089 103.055 36.0489 101.994 36.0489C100.934 36.0489 100.074 36.9089 100.074 37.9697C100.074 39.0306 100.934 39.8906 101.994 39.8906Z" fill="black"/>
+  <path d="M127.607 39.8906C128.668 39.8906 129.528 39.0306 129.528 37.9698C129.528 36.9089 128.668 36.0489 127.607 36.0489C126.546 36.0489 125.686 36.9089 125.686 37.9698C125.686 39.0306 126.546 39.8906 127.607 39.8906Z" fill="black"/>
+  <path d="M134.011 39.8905C135.072 39.8905 135.932 39.0305 135.932 37.9697C135.932 36.9088 135.072 36.0488 134.011 36.0488C132.95 36.0488 132.09 36.9088 132.09 37.9697C132.09 39.0305 132.95 39.8905 134.011 39.8905Z" fill="black"/>
+  <path d="M140.415 39.8905C141.476 39.8905 142.336 39.0305 142.336 37.9696C142.336 36.9088 141.476 36.0488 140.415 36.0488C139.355 36.0488 138.495 36.9088 138.495 37.9696C138.495 39.0305 139.355 39.8905 140.415 39.8905Z" fill="black"/>
+  <path d="M153.219 39.8906C154.28 39.8906 155.14 39.0306 155.14 37.9698C155.14 36.9089 154.28 36.0489 153.219 36.0489C152.158 36.0489 151.298 36.9089 151.298 37.9698C151.298 39.0306 152.158 39.8906 153.219 39.8906Z" fill="black"/>
+  <path d="M159.623 39.8905C160.684 39.8905 161.544 39.0305 161.544 37.9696C161.544 36.9088 160.684 36.0488 159.623 36.0488C158.563 36.0488 157.703 36.9088 157.703 37.9696C157.703 39.0305 158.563 39.8905 159.623 39.8905Z" fill="black"/>
+  <path d="M166.025 39.8905C167.086 39.8905 167.946 39.0305 167.946 37.9696C167.946 36.9088 167.086 36.0488 166.025 36.0488C164.964 36.0488 164.104 36.9088 164.104 37.9696C164.104 39.0305 164.964 39.8905 166.025 39.8905Z" fill="black"/>
+  <path d="M69.9832 46.2934C71.044 46.2934 71.904 45.4334 71.904 44.3726C71.904 43.3117 71.044 42.4517 69.9832 42.4517C68.9223 42.4517 68.0623 43.3117 68.0623 44.3726C68.0623 45.4334 68.9223 46.2934 69.9832 46.2934Z" fill="black"/>
+  <path d="M76.3877 46.2928C77.4485 46.2928 78.3085 45.4328 78.3085 44.372C78.3085 43.3111 77.4485 42.4511 76.3877 42.4511C75.3268 42.4511 74.4668 43.3111 74.4668 44.372C74.4668 45.4328 75.3268 46.2928 76.3877 46.2928Z" fill="black"/>
+  <path d="M82.7871 46.2936C83.848 46.2936 84.7079 45.4336 84.7079 44.3727C84.7079 43.3119 83.848 42.4519 82.7871 42.4519C81.7263 42.4519 80.8663 43.3119 80.8663 44.3727C80.8663 45.4336 81.7263 46.2936 82.7871 46.2936Z" fill="black"/>
+  <path d="M95.5957 46.2928C96.6565 46.2928 97.5165 45.4328 97.5165 44.372C97.5165 43.3111 96.6565 42.4511 95.5957 42.4511C94.5348 42.4511 93.6748 43.3111 93.6748 44.372C93.6748 45.4328 94.5348 46.2928 95.5957 46.2928Z" fill="black"/>
+  <path d="M101.994 46.2927C103.055 46.2927 103.915 45.4328 103.915 44.3719C103.915 43.3111 103.055 42.4511 101.994 42.4511C100.934 42.4511 100.074 43.3111 100.074 44.3719C100.074 45.4328 100.934 46.2927 101.994 46.2927Z" fill="black"/>
+  <path d="M108.4 46.2934C109.461 46.2934 110.321 45.4334 110.321 44.3726C110.321 43.3117 109.461 42.4517 108.4 42.4517C107.339 42.4517 106.479 43.3117 106.479 44.3726C106.479 45.4334 107.339 46.2934 108.4 46.2934Z" fill="black"/>
+  <path d="M114.803 46.2934C115.864 46.2934 116.724 45.4334 116.724 44.3726C116.724 43.3117 115.864 42.4517 114.803 42.4517C113.742 42.4517 112.882 43.3117 112.882 44.3726C112.882 45.4334 113.742 46.2934 114.803 46.2934Z" fill="black"/>
+  <path d="M121.208 46.2927C122.269 46.2927 123.129 45.4328 123.129 44.3719C123.129 43.3111 122.269 42.4511 121.208 42.4511C120.147 42.4511 119.287 43.3111 119.287 44.3719C119.287 45.4328 120.147 46.2927 121.208 46.2927Z" fill="black"/>
+  <path d="M127.607 46.2928C128.668 46.2928 129.528 45.4328 129.528 44.372C129.528 43.3111 128.668 42.4511 127.607 42.4511C126.546 42.4511 125.686 43.3111 125.686 44.372C125.686 45.4328 126.546 46.2928 127.607 46.2928Z" fill="black"/>
+  <path d="M134.011 46.2934C135.072 46.2934 135.932 45.4334 135.932 44.3726C135.932 43.3117 135.072 42.4517 134.011 42.4517C132.95 42.4517 132.09 43.3117 132.09 44.3726C132.09 45.4334 132.95 46.2934 134.011 46.2934Z" fill="black"/>
+  <path d="M140.415 46.2936C141.476 46.2936 142.336 45.4336 142.336 44.3727C142.336 43.3119 141.476 42.4519 140.415 42.4519C139.355 42.4519 138.495 43.3119 138.495 44.3727C138.495 45.4336 139.355 46.2936 140.415 46.2936Z" fill="black"/>
+  <path d="M153.219 46.2928C154.28 46.2928 155.14 45.4328 155.14 44.372C155.14 43.3111 154.28 42.4511 153.219 42.4511C152.158 42.4511 151.298 43.3111 151.298 44.372C151.298 45.4328 152.158 46.2928 153.219 46.2928Z" fill="black"/>
+  <path d="M159.623 46.2936C160.684 46.2936 161.544 45.4336 161.544 44.3727C161.544 43.3119 160.684 42.4519 159.623 42.4519C158.563 42.4519 157.703 43.3119 157.703 44.3727C157.703 45.4336 158.563 46.2936 159.623 46.2936Z" fill="black"/>
+  <path d="M166.025 46.2936C167.086 46.2936 167.946 45.4336 167.946 44.3727C167.946 43.3119 167.086 42.4519 166.025 42.4519C164.964 42.4519 164.104 43.3119 164.104 44.3727C164.104 45.4336 164.964 46.2936 166.025 46.2936Z" fill="black"/>
+  <path d="M69.9832 52.6963C71.044 52.6963 71.904 51.8363 71.904 50.7754C71.904 49.7146 71.044 48.8546 69.9832 48.8546C68.9223 48.8546 68.0623 49.7146 68.0623 50.7754C68.0623 51.8363 68.9223 52.6963 69.9832 52.6963Z" fill="black"/>
+  <path d="M76.3877 52.6964C77.4485 52.6964 78.3085 51.8364 78.3085 50.7756C78.3085 49.7147 77.4485 48.8547 76.3877 48.8547C75.3268 48.8547 74.4668 49.7147 74.4668 50.7756C74.4668 51.8364 75.3268 52.6964 76.3877 52.6964Z" fill="black"/>
+  <path d="M101.994 52.6964C103.055 52.6964 103.915 51.8364 103.915 50.7755C103.915 49.7147 103.055 48.8547 101.994 48.8547C100.934 48.8547 100.074 49.7147 100.074 50.7755C100.074 51.8364 100.934 52.6964 101.994 52.6964Z" fill="black"/>
+  <path d="M114.803 52.6963C115.864 52.6963 116.724 51.8363 116.724 50.7754C116.724 49.7146 115.864 48.8546 114.803 48.8546C113.742 48.8546 112.882 49.7146 112.882 50.7754C112.882 51.8363 113.742 52.6963 114.803 52.6963Z" fill="black"/>
+  <path d="M127.607 52.6964C128.668 52.6964 129.528 51.8364 129.528 50.7756C129.528 49.7147 128.668 48.8547 127.607 48.8547C126.546 48.8547 125.686 49.7147 125.686 50.7756C125.686 51.8364 126.546 52.6964 127.607 52.6964Z" fill="black"/>
+  <path d="M134.011 52.6963C135.072 52.6963 135.932 51.8363 135.932 50.7754C135.932 49.7146 135.072 48.8546 134.011 48.8546C132.95 48.8546 132.09 49.7146 132.09 50.7754C132.09 51.8363 132.95 52.6963 134.011 52.6963Z" fill="black"/>
+  <path d="M166.025 52.6963C167.086 52.6963 167.946 51.8363 167.946 50.7754C167.946 49.7146 167.086 48.8546 166.025 48.8546C164.964 48.8546 164.104 49.7146 164.104 50.7754C164.104 51.8363 164.964 52.6963 166.025 52.6963Z" fill="black"/>
+  <path d="M69.9832 59.0992C71.044 59.0992 71.904 58.2392 71.904 57.1783C71.904 56.1175 71.044 55.2575 69.9832 55.2575C68.9223 55.2575 68.0623 56.1175 68.0623 57.1783C68.0623 58.2392 68.9223 59.0992 69.9832 59.0992Z" fill="black"/>
+  <path d="M82.7871 59.0994C83.848 59.0994 84.7079 58.2394 84.7079 57.1785C84.7079 56.1177 83.848 55.2577 82.7871 55.2577C81.7263 55.2577 80.8663 56.1177 80.8663 57.1785C80.8663 58.2394 81.7263 59.0994 82.7871 59.0994Z" fill="black"/>
+  <path d="M95.5957 59.0987C96.6565 59.0987 97.5165 58.2387 97.5165 57.1779C97.5165 56.117 96.6565 55.257 95.5957 55.257C94.5348 55.257 93.6748 56.117 93.6748 57.1779C93.6748 58.2387 94.5348 59.0987 95.5957 59.0987Z" fill="black"/>
+  <path d="M108.4 59.0992C109.461 59.0992 110.321 58.2392 110.321 57.1783C110.321 56.1175 109.461 55.2575 108.4 55.2575C107.339 55.2575 106.479 56.1175 106.479 57.1783C106.479 58.2392 107.339 59.0992 108.4 59.0992Z" fill="black"/>
+  <path d="M121.208 59.0986C122.269 59.0986 123.129 58.2386 123.129 57.1778C123.129 56.1169 122.269 55.257 121.208 55.257C120.147 55.257 119.287 56.1169 119.287 57.1778C119.287 58.2386 120.147 59.0986 121.208 59.0986Z" fill="black"/>
+  <path d="M134.011 59.0992C135.072 59.0992 135.932 58.2392 135.932 57.1783C135.932 56.1175 135.072 55.2575 134.011 55.2575C132.95 55.2575 132.09 56.1175 132.09 57.1783C132.09 58.2392 132.95 59.0992 134.011 59.0992Z" fill="black"/>
+  <path d="M146.815 59.0987C147.876 59.0987 148.736 58.2387 148.736 57.1779C148.736 56.117 147.876 55.257 146.815 55.257C145.754 55.257 144.894 56.117 144.894 57.1779C144.894 58.2387 145.754 59.0987 146.815 59.0987Z" fill="black"/>
+  <path d="M159.623 59.0994C160.684 59.0994 161.544 58.2394 161.544 57.1785C161.544 56.1177 160.684 55.2577 159.623 55.2577C158.563 55.2577 157.703 56.1177 157.703 57.1785C157.703 58.2394 158.563 59.0994 159.623 59.0994Z" fill="black"/>
+  <path d="M172.427 59.0987C173.488 59.0987 174.348 58.2387 174.348 57.1779C174.348 56.117 173.488 55.257 172.427 55.257C171.366 55.257 170.506 56.117 170.506 57.1779C170.506 58.2387 171.366 59.0987 172.427 59.0987Z" fill="black"/>
+  <path d="M76.3877 65.5023C77.4485 65.5023 78.3085 64.6423 78.3085 63.5815C78.3085 62.5206 77.4485 61.6606 76.3877 61.6606C75.3268 61.6606 74.4668 62.5206 74.4668 63.5815C74.4668 64.6423 75.3268 65.5023 76.3877 65.5023Z" fill="black"/>
+  <path d="M82.7871 65.5021C83.848 65.5021 84.7079 64.6421 84.7079 63.5812C84.7079 62.5204 83.848 61.6604 82.7871 61.6604C81.7263 61.6604 80.8663 62.5204 80.8663 63.5812C80.8663 64.6421 81.7263 65.5021 82.7871 65.5021Z" fill="black"/>
+  <path d="M95.5957 65.5023C96.6565 65.5023 97.5165 64.6423 97.5165 63.5815C97.5165 62.5206 96.6565 61.6606 95.5957 61.6606C94.5348 61.6606 93.6748 62.5206 93.6748 63.5815C93.6748 64.6423 94.5348 65.5023 95.5957 65.5023Z" fill="black"/>
+  <path d="M127.607 65.5023C128.668 65.5023 129.528 64.6423 129.528 63.5815C129.528 62.5206 128.668 61.6606 127.607 61.6606C126.546 61.6606 125.686 62.5206 125.686 63.5815C125.686 64.6423 126.546 65.5023 127.607 65.5023Z" fill="black"/>
+  <path d="M134.011 65.5021C135.072 65.5021 135.932 64.6421 135.932 63.5812C135.932 62.5204 135.072 61.6604 134.011 61.6604C132.95 61.6604 132.09 62.5204 132.09 63.5812C132.09 64.6421 132.95 65.5021 134.011 65.5021Z" fill="black"/>
+  <path d="M140.415 65.5021C141.476 65.5021 142.336 64.6421 142.336 63.5812C142.336 62.5204 141.476 61.6604 140.415 61.6604C139.355 61.6604 138.495 62.5204 138.495 63.5812C138.495 64.6421 139.355 65.5021 140.415 65.5021Z" fill="black"/>
+  <path d="M146.815 65.5023C147.876 65.5023 148.736 64.6423 148.736 63.5815C148.736 62.5206 147.876 61.6606 146.815 61.6606C145.754 61.6606 144.894 62.5206 144.894 63.5815C144.894 64.6423 145.754 65.5023 146.815 65.5023Z" fill="black"/>
+  <path d="M159.623 65.5021C160.684 65.5021 161.544 64.6421 161.544 63.5812C161.544 62.5204 160.684 61.6604 159.623 61.6604C158.563 61.6604 157.703 62.5204 157.703 63.5812C157.703 64.6421 158.563 65.5021 159.623 65.5021Z" fill="black"/>
+  <path d="M166.025 65.5021C167.086 65.5021 167.946 64.6421 167.946 63.5812C167.946 62.5204 167.086 61.6604 166.025 61.6604C164.964 61.6604 164.104 62.5204 164.104 63.5812C164.104 64.6421 164.964 65.5021 166.025 65.5021Z" fill="black"/>
+  <path d="M172.427 65.5023C173.488 65.5023 174.348 64.6423 174.348 63.5815C174.348 62.5206 173.488 61.6606 172.427 61.6606C171.366 61.6606 170.506 62.5206 170.506 63.5815C170.506 64.6423 171.366 65.5023 172.427 65.5023Z" fill="black"/>
+  <path d="M31.5663 71.9045C32.6271 71.9045 33.4871 71.0445 33.4871 69.9837C33.4871 68.9228 32.6271 68.0628 31.5663 68.0628C30.5054 68.0628 29.6454 68.9228 29.6454 69.9837C29.6454 71.0445 30.5054 71.9045 31.5663 71.9045Z" fill="black"/>
+  <path d="M50.7761 71.9045C51.8369 71.9045 52.6969 71.0445 52.6969 69.9837C52.6969 68.9228 51.8369 68.0628 50.7761 68.0628C49.7152 68.0628 48.8553 68.9228 48.8553 69.9837C48.8553 71.0445 49.7152 71.9045 50.7761 71.9045Z" fill="black"/>
+  <path d="M57.177 71.9044C58.2378 71.9044 59.0978 71.0444 59.0978 69.9836C59.0978 68.9227 58.2378 68.0628 57.177 68.0628C56.1162 68.0628 55.2562 68.9227 55.2562 69.9836C55.2562 71.0444 56.1162 71.9044 57.177 71.9044Z" fill="black"/>
+  <path d="M63.5791 71.9052C64.64 71.9052 65.5 71.0452 65.5 69.9844C65.5 68.9236 64.64 68.0636 63.5791 68.0636C62.5183 68.0636 61.6583 68.9236 61.6583 69.9844C61.6583 71.0452 62.5183 71.9052 63.5791 71.9052Z" fill="black"/>
+  <path d="M69.9832 71.9051C71.044 71.9051 71.904 71.0451 71.904 69.9842C71.904 68.9234 71.044 68.0634 69.9832 68.0634C68.9223 68.0634 68.0623 68.9234 68.0623 69.9842C68.0623 71.0451 68.9223 71.9051 69.9832 71.9051Z" fill="black"/>
+  <path d="M76.3877 71.9045C77.4485 71.9045 78.3085 71.0445 78.3085 69.9837C78.3085 68.9228 77.4485 68.0628 76.3877 68.0628C75.3268 68.0628 74.4668 68.9228 74.4668 69.9837C74.4668 71.0445 75.3268 71.9045 76.3877 71.9045Z" fill="black"/>
+  <path d="M89.1921 71.9051C90.2529 71.9051 91.1129 71.0451 91.1129 69.9842C91.1129 68.9234 90.2529 68.0634 89.1921 68.0634C88.1313 68.0634 87.2713 68.9234 87.2713 69.9842C87.2713 71.0451 88.1313 71.9051 89.1921 71.9051Z" fill="black"/>
+  <path d="M114.803 71.9051C115.864 71.9051 116.724 71.0451 116.724 69.9842C116.724 68.9234 115.864 68.0634 114.803 68.0634C113.742 68.0634 112.882 68.9234 112.882 69.9842C112.882 71.0451 113.742 71.9051 114.803 71.9051Z" fill="black"/>
+  <path d="M127.607 71.9045C128.668 71.9045 129.528 71.0445 129.528 69.9837C129.528 68.9228 128.668 68.0628 127.607 68.0628C126.546 68.0628 125.686 68.9228 125.686 69.9837C125.686 71.0445 126.546 71.9045 127.607 71.9045Z" fill="black"/>
+  <path d="M172.427 71.9045C173.488 71.9045 174.348 71.0445 174.348 69.9837C174.348 68.9228 173.488 68.0628 172.427 68.0628C171.366 68.0628 170.506 68.9228 170.506 69.9837C170.506 71.0445 171.366 71.9045 172.427 71.9045Z" fill="black"/>
+  <path d="M178.832 71.9044C179.893 71.9044 180.753 71.0444 180.753 69.9836C180.753 68.9227 179.893 68.0628 178.832 68.0628C177.771 68.0628 176.911 68.9227 176.911 69.9836C176.911 71.0444 177.771 71.9044 178.832 71.9044Z" fill="black"/>
+  <path d="M191.637 71.9045C192.697 71.9045 193.557 71.0445 193.557 69.9837C193.557 68.9228 192.697 68.0628 191.637 68.0628C190.576 68.0628 189.716 68.9228 189.716 69.9837C189.716 71.0445 190.576 71.9045 191.637 71.9045Z" fill="black"/>
+  <path d="M198.039 71.9044C199.1 71.9044 199.96 71.0444 199.96 69.9836C199.96 68.9227 199.1 68.0628 198.039 68.0628C196.979 68.0628 196.119 68.9227 196.119 69.9836C196.119 71.0444 196.979 71.9044 198.039 71.9044Z" fill="black"/>
+  <path d="M204.44 71.9052C205.501 71.9052 206.361 71.0452 206.361 69.9844C206.361 68.9236 205.501 68.0636 204.44 68.0636C203.379 68.0636 202.519 68.9236 202.519 69.9844C202.519 71.0452 203.379 71.9052 204.44 71.9052Z" fill="black"/>
+  <path d="M210.845 71.9045C211.905 71.9045 212.765 71.0445 212.765 69.9837C212.765 68.9228 211.905 68.0628 210.845 68.0628C209.784 68.0628 208.924 68.9228 208.924 69.9837C208.924 71.0445 209.784 71.9045 210.845 71.9045Z" fill="black"/>
+  <path d="M217.248 71.9045C218.309 71.9045 219.169 71.0445 219.169 69.9837C219.169 68.9228 218.309 68.0628 217.248 68.0628C216.187 68.0628 215.327 68.9228 215.327 69.9837C215.327 71.0445 216.187 71.9045 217.248 71.9045Z" fill="black"/>
+  <path d="M25.1668 78.3069C26.2276 78.3069 27.0876 77.4469 27.0876 76.386C27.0876 75.3252 26.2276 74.4652 25.1668 74.4652C24.1059 74.4652 23.2459 75.3252 23.2459 76.386C23.2459 77.4469 24.1059 78.3069 25.1668 78.3069Z" fill="black"/>
+  <path d="M31.5663 78.3075C32.6271 78.3075 33.4871 77.4475 33.4871 76.3867C33.4871 75.3258 32.6271 74.4659 31.5663 74.4659C30.5054 74.4659 29.6454 75.3258 29.6454 76.3867C29.6454 77.4475 30.5054 78.3075 31.5663 78.3075Z" fill="black"/>
+  <path d="M50.7761 78.3075C51.8369 78.3075 52.6969 77.4475 52.6969 76.3867C52.6969 75.3258 51.8369 74.4659 50.7761 74.4659C49.7152 74.4659 48.8553 75.3258 48.8553 76.3867C48.8553 77.4475 49.7152 78.3075 50.7761 78.3075Z" fill="black"/>
+  <path d="M76.3877 78.3075C77.4485 78.3075 78.3085 77.4475 78.3085 76.3867C78.3085 75.3258 77.4485 74.4659 76.3877 74.4659C75.3268 74.4659 74.4668 75.3258 74.4668 76.3867C74.4668 77.4475 75.3268 78.3075 76.3877 78.3075Z" fill="black"/>
+  <path d="M89.1921 78.3071C90.2529 78.3071 91.1129 77.4471 91.1129 76.3862C91.1129 75.3254 90.2529 74.4654 89.1921 74.4654C88.1313 74.4654 87.2713 75.3254 87.2713 76.3862C87.2713 77.4471 88.1313 78.3071 89.1921 78.3071Z" fill="black"/>
+  <path d="M95.5957 78.3075C96.6565 78.3075 97.5165 77.4475 97.5165 76.3867C97.5165 75.3258 96.6565 74.4659 95.5957 74.4659C94.5348 74.4659 93.6748 75.3258 93.6748 76.3867C93.6748 77.4475 94.5348 78.3075 95.5957 78.3075Z" fill="black"/>
+  <path d="M121.208 78.3076C122.269 78.3076 123.129 77.4476 123.129 76.3868C123.129 75.3259 122.269 74.4659 121.208 74.4659C120.147 74.4659 119.287 75.3259 119.287 76.3868C119.287 77.4476 120.147 78.3076 121.208 78.3076Z" fill="black"/>
+  <path d="M127.607 78.3075C128.668 78.3075 129.528 77.4475 129.528 76.3867C129.528 75.3258 128.668 74.4659 127.607 74.4659C126.546 74.4659 125.686 75.3258 125.686 76.3867C125.686 77.4475 126.546 78.3075 127.607 78.3075Z" fill="black"/>
+  <path d="M140.415 78.3069C141.476 78.3069 142.336 77.4469 142.336 76.386C142.336 75.3252 141.476 74.4652 140.415 74.4652C139.355 74.4652 138.495 75.3252 138.495 76.386C138.495 77.4469 139.355 78.3069 140.415 78.3069Z" fill="black"/>
+  <path d="M146.815 78.3075C147.876 78.3075 148.736 77.4475 148.736 76.3867C148.736 75.3258 147.876 74.4659 146.815 74.4659C145.754 74.4659 144.894 75.3258 144.894 76.3867C144.894 77.4475 145.754 78.3075 146.815 78.3075Z" fill="black"/>
+  <path d="M159.623 78.3069C160.684 78.3069 161.544 77.4469 161.544 76.386C161.544 75.3252 160.684 74.4652 159.623 74.4652C158.563 74.4652 157.703 75.3252 157.703 76.386C157.703 77.4469 158.563 78.3069 159.623 78.3069Z" fill="black"/>
+  <path d="M166.025 78.3069C167.086 78.3069 167.946 77.4469 167.946 76.386C167.946 75.3252 167.086 74.4652 166.025 74.4652C164.964 74.4652 164.104 75.3252 164.104 76.386C164.104 77.4469 164.964 78.3069 166.025 78.3069Z" fill="black"/>
+  <path d="M172.427 78.3075C173.488 78.3075 174.348 77.4475 174.348 76.3867C174.348 75.3258 173.488 74.4659 172.427 74.4659C171.366 74.4659 170.506 75.3258 170.506 76.3867C170.506 77.4475 171.366 78.3075 172.427 78.3075Z" fill="black"/>
+  <path d="M178.832 78.3076C179.893 78.3076 180.753 77.4476 180.753 76.3868C180.753 75.3259 179.893 74.4659 178.832 74.4659C177.771 74.4659 176.911 75.3259 176.911 76.3868C176.911 77.4476 177.771 78.3076 178.832 78.3076Z" fill="black"/>
+  <path d="M185.233 78.3069C186.294 78.3069 187.154 77.4469 187.154 76.386C187.154 75.3252 186.294 74.4652 185.233 74.4652C184.172 74.4652 183.312 75.3252 183.312 76.386C183.312 77.4469 184.172 78.3069 185.233 78.3069Z" fill="black"/>
+  <path d="M191.637 78.3075C192.697 78.3075 193.557 77.4475 193.557 76.3867C193.557 75.3258 192.697 74.4659 191.637 74.4659C190.576 74.4659 189.716 75.3258 189.716 76.3867C189.716 77.4475 190.576 78.3075 191.637 78.3075Z" fill="black"/>
+  <path d="M204.44 78.3069C205.501 78.3069 206.361 77.4469 206.361 76.386C206.361 75.3252 205.501 74.4652 204.44 74.4652C203.379 74.4652 202.519 75.3252 202.519 76.386C202.519 77.4469 203.379 78.3069 204.44 78.3069Z" fill="black"/>
+  <path d="M210.845 78.3075C211.905 78.3075 212.765 77.4475 212.765 76.3867C212.765 75.3258 211.905 74.4659 210.845 74.4659C209.784 74.4659 208.924 75.3258 208.924 76.3867C208.924 77.4475 209.784 78.3075 210.845 78.3075Z" fill="black"/>
+  <path d="M217.248 78.3075C218.309 78.3075 219.169 77.4475 219.169 76.3867C219.169 75.3258 218.309 74.4659 217.248 74.4659C216.187 74.4659 215.327 75.3258 215.327 76.3867C215.327 77.4475 216.187 78.3075 217.248 78.3075Z" fill="black"/>
+  <path d="M223.649 78.3076C224.71 78.3076 225.57 77.4476 225.57 76.3868C225.57 75.3259 224.71 74.4659 223.649 74.4659C222.588 74.4659 221.728 75.3259 221.728 76.3868C221.728 77.4476 222.588 78.3076 223.649 78.3076Z" fill="black"/>
+  <path d="M18.7618 84.71C19.8227 84.71 20.6827 83.85 20.6827 82.7891C20.6827 81.7283 19.8227 80.8683 18.7618 80.8683C17.701 80.8683 16.841 81.7283 16.841 82.7891C16.841 83.85 17.701 84.71 18.7618 84.71Z" fill="black"/>
+  <path d="M44.3704 84.71C45.4313 84.71 46.2912 83.85 46.2912 82.7891C46.2912 81.7283 45.4313 80.8683 44.3704 80.8683C43.3096 80.8683 42.4496 81.7283 42.4496 82.7891C42.4496 83.85 43.3096 84.71 44.3704 84.71Z" fill="black"/>
+  <path d="M57.177 84.7098C58.2378 84.7098 59.0978 83.8498 59.0978 82.789C59.0978 81.7281 58.2378 80.8681 57.177 80.8681C56.1162 80.8681 55.2562 81.7281 55.2562 82.789C55.2562 83.8498 56.1162 84.7098 57.177 84.7098Z" fill="black"/>
+  <path d="M63.5791 84.71C64.64 84.71 65.5 83.85 65.5 82.7891C65.5 81.7283 64.64 80.8683 63.5791 80.8683C62.5183 80.8683 61.6583 81.7283 61.6583 82.7891C61.6583 83.85 62.5183 84.71 63.5791 84.71Z" fill="black"/>
+  <path d="M82.7871 84.71C83.848 84.71 84.7079 83.85 84.7079 82.7891C84.7079 81.7283 83.848 80.8683 82.7871 80.8683C81.7263 80.8683 80.8663 81.7283 80.8663 82.7891C80.8663 83.85 81.7263 84.71 82.7871 84.71Z" fill="black"/>
+  <path d="M101.994 84.7098C103.055 84.7098 103.915 83.8498 103.915 82.789C103.915 81.7281 103.055 80.8681 101.994 80.8681C100.934 80.8681 100.074 81.7281 100.074 82.789C100.074 83.8498 100.934 84.7098 101.994 84.7098Z" fill="black"/>
+  <path d="M108.4 84.71C109.461 84.71 110.321 83.85 110.321 82.7891C110.321 81.7283 109.461 80.8683 108.4 80.8683C107.339 80.8683 106.479 81.7283 106.479 82.7891C106.479 83.85 107.339 84.71 108.4 84.71Z" fill="black"/>
+  <path d="M114.803 84.71C115.864 84.71 116.724 83.85 116.724 82.7891C116.724 81.7283 115.864 80.8683 114.803 80.8683C113.742 80.8683 112.882 81.7283 112.882 82.7891C112.882 83.85 113.742 84.71 114.803 84.71Z" fill="black"/>
+  <path d="M121.208 84.7098C122.269 84.7098 123.129 83.8498 123.129 82.789C123.129 81.7281 122.269 80.8681 121.208 80.8681C120.147 80.8681 119.287 81.7281 119.287 82.789C119.287 83.8498 120.147 84.7098 121.208 84.7098Z" fill="black"/>
+  <path d="M127.607 84.7097C128.668 84.7097 129.528 83.8497 129.528 82.7889C129.528 81.7281 128.668 80.8681 127.607 80.8681C126.546 80.8681 125.686 81.7281 125.686 82.7889C125.686 83.8497 126.546 84.7097 127.607 84.7097Z" fill="black"/>
+  <path d="M140.415 84.71C141.476 84.71 142.336 83.85 142.336 82.7891C142.336 81.7283 141.476 80.8683 140.415 80.8683C139.355 80.8683 138.495 81.7283 138.495 82.7891C138.495 83.85 139.355 84.71 140.415 84.71Z" fill="black"/>
+  <path d="M153.219 84.7097C154.28 84.7097 155.14 83.8497 155.14 82.7889C155.14 81.7281 154.28 80.8681 153.219 80.8681C152.158 80.8681 151.298 81.7281 151.298 82.7889C151.298 83.8497 152.158 84.7097 153.219 84.7097Z" fill="black"/>
+  <path d="M159.623 84.71C160.684 84.71 161.544 83.85 161.544 82.7891C161.544 81.7283 160.684 80.8683 159.623 80.8683C158.563 80.8683 157.703 81.7283 157.703 82.7891C157.703 83.85 158.563 84.71 159.623 84.71Z" fill="black"/>
+  <path d="M166.025 84.71C167.086 84.71 167.946 83.85 167.946 82.7891C167.946 81.7283 167.086 80.8683 166.025 80.8683C164.964 80.8683 164.104 81.7283 164.104 82.7891C164.104 83.85 164.964 84.71 166.025 84.71Z" fill="black"/>
+  <path d="M172.427 84.7097C173.488 84.7097 174.348 83.8497 174.348 82.7889C174.348 81.7281 173.488 80.8681 172.427 80.8681C171.366 80.8681 170.506 81.7281 170.506 82.7889C170.506 83.8497 171.366 84.7097 172.427 84.7097Z" fill="black"/>
+  <path d="M185.233 84.71C186.294 84.71 187.154 83.85 187.154 82.7891C187.154 81.7283 186.294 80.8683 185.233 80.8683C184.172 80.8683 183.312 81.7283 183.312 82.7891C183.312 83.85 184.172 84.71 185.233 84.71Z" fill="black"/>
+  <path d="M191.637 84.7097C192.697 84.7097 193.557 83.8497 193.557 82.7889C193.557 81.7281 192.697 80.8681 191.637 80.8681C190.576 80.8681 189.716 81.7281 189.716 82.7889C189.716 83.8497 190.576 84.7097 191.637 84.7097Z" fill="black"/>
+  <path d="M198.039 84.7098C199.1 84.7098 199.96 83.8498 199.96 82.789C199.96 81.7281 199.1 80.8681 198.039 80.8681C196.979 80.8681 196.119 81.7281 196.119 82.789C196.119 83.8498 196.979 84.7098 198.039 84.7098Z" fill="black"/>
+  <path d="M204.44 84.71C205.501 84.71 206.361 83.85 206.361 82.7891C206.361 81.7283 205.501 80.8683 204.44 80.8683C203.379 80.8683 202.519 81.7283 202.519 82.7891C202.519 83.85 203.379 84.71 204.44 84.71Z" fill="black"/>
+  <path d="M223.649 84.7098C224.71 84.7098 225.57 83.8498 225.57 82.789C225.57 81.7281 224.71 80.8681 223.649 80.8681C222.588 80.8681 221.728 81.7281 221.728 82.789C221.728 83.8498 222.588 84.7098 223.649 84.7098Z" fill="black"/>
+  <path d="M25.1668 91.1127C26.2276 91.1127 27.0876 90.2527 27.0876 89.1919C27.0876 88.131 26.2276 87.271 25.1668 87.271C24.1059 87.271 23.2459 88.131 23.2459 89.1919C23.2459 90.2527 24.1059 91.1127 25.1668 91.1127Z" fill="black"/>
+  <path d="M31.5663 91.1134C32.6271 91.1134 33.4871 90.2534 33.4871 89.1926C33.4871 88.1317 32.6271 87.2718 31.5663 87.2718C30.5054 87.2718 29.6454 88.1317 29.6454 89.1926C29.6454 90.2534 30.5054 91.1134 31.5663 91.1134Z" fill="black"/>
+  <path d="M89.1921 91.1129C90.2529 91.1129 91.1129 90.2529 91.1129 89.192C91.1129 88.1312 90.2529 87.2712 89.1921 87.2712C88.1313 87.2712 87.2713 88.1312 87.2713 89.192C87.2713 90.2529 88.1313 91.1129 89.1921 91.1129Z" fill="black"/>
+  <path d="M121.208 91.1135C122.269 91.1135 123.129 90.2535 123.129 89.1927C123.129 88.1318 122.269 87.2718 121.208 87.2718C120.147 87.2718 119.287 88.1318 119.287 89.1927C119.287 90.2535 120.147 91.1135 121.208 91.1135Z" fill="black"/>
+  <path d="M127.607 91.1134C128.668 91.1134 129.528 90.2534 129.528 89.1926C129.528 88.1317 128.668 87.2718 127.607 87.2718C126.546 87.2718 125.686 88.1317 125.686 89.1926C125.686 90.2534 126.546 91.1134 127.607 91.1134Z" fill="black"/>
+  <path d="M140.415 91.1127C141.476 91.1127 142.336 90.2527 142.336 89.1919C142.336 88.131 141.476 87.271 140.415 87.271C139.355 87.271 138.495 88.131 138.495 89.1919C138.495 90.2527 139.355 91.1127 140.415 91.1127Z" fill="black"/>
+  <path d="M146.815 91.1134C147.876 91.1134 148.736 90.2534 148.736 89.1926C148.736 88.1317 147.876 87.2718 146.815 87.2718C145.754 87.2718 144.894 88.1317 144.894 89.1926C144.894 90.2534 145.754 91.1134 146.815 91.1134Z" fill="black"/>
+  <path d="M159.623 91.1127C160.684 91.1127 161.544 90.2527 161.544 89.1919C161.544 88.131 160.684 87.271 159.623 87.271C158.563 87.271 157.703 88.131 157.703 89.1919C157.703 90.2527 158.563 91.1127 159.623 91.1127Z" fill="black"/>
+  <path d="M172.427 91.1134C173.488 91.1134 174.348 90.2534 174.348 89.1926C174.348 88.1317 173.488 87.2718 172.427 87.2718C171.366 87.2718 170.506 88.1317 170.506 89.1926C170.506 90.2534 171.366 91.1134 172.427 91.1134Z" fill="black"/>
+  <path d="M178.832 91.1135C179.893 91.1135 180.753 90.2535 180.753 89.1927C180.753 88.1318 179.893 87.2718 178.832 87.2718C177.771 87.2718 176.911 88.1318 176.911 89.1927C176.911 90.2535 177.771 91.1135 178.832 91.1135Z" fill="black"/>
+  <path d="M191.637 91.1134C192.697 91.1134 193.557 90.2534 193.557 89.1926C193.557 88.1317 192.697 87.2718 191.637 87.2718C190.576 87.2718 189.716 88.1317 189.716 89.1926C189.716 90.2534 190.576 91.1134 191.637 91.1134Z" fill="black"/>
+  <path d="M204.44 91.1127C205.501 91.1127 206.361 90.2527 206.361 89.1919C206.361 88.131 205.501 87.271 204.44 87.271C203.379 87.271 202.519 88.131 202.519 89.1919C202.519 90.2527 203.379 91.1127 204.44 91.1127Z" fill="black"/>
+  <path d="M217.248 91.1134C218.309 91.1134 219.169 90.2534 219.169 89.1926C219.169 88.1317 218.309 87.2718 217.248 87.2718C216.187 87.2718 215.327 88.1317 215.327 89.1926C215.327 90.2534 216.187 91.1134 217.248 91.1134Z" fill="black"/>
+  <path d="M37.9697 97.5158C39.0306 97.5158 39.8906 96.6558 39.8906 95.5949C39.8906 94.5341 39.0306 93.6741 37.9697 93.6741C36.9089 93.6741 36.0489 94.5341 36.0489 95.5949C36.0489 96.6558 36.9089 97.5158 37.9697 97.5158Z" fill="black"/>
+  <path d="M44.3704 97.5158C45.4313 97.5158 46.2912 96.6558 46.2912 95.5949C46.2912 94.5341 45.4313 93.6741 44.3704 93.6741C43.3096 93.6741 42.4496 94.5341 42.4496 95.5949C42.4496 96.6558 43.3096 97.5158 44.3704 97.5158Z" fill="black"/>
+  <path d="M57.177 97.5157C58.2378 97.5157 59.0978 96.6557 59.0978 95.5948C59.0978 94.534 58.2378 93.674 57.177 93.674C56.1162 93.674 55.2562 94.534 55.2562 95.5948C55.2562 96.6557 56.1162 97.5157 57.177 97.5157Z" fill="black"/>
+  <path d="M63.5791 97.5158C64.64 97.5158 65.5 96.6558 65.5 95.5949C65.5 94.5341 64.64 93.6741 63.5791 93.6741C62.5183 93.6741 61.6583 94.5341 61.6583 95.5949C61.6583 96.6558 62.5183 97.5158 63.5791 97.5158Z" fill="black"/>
+  <path d="M76.3877 97.5156C77.4485 97.5156 78.3085 96.6556 78.3085 95.5948C78.3085 94.534 77.4485 93.674 76.3877 93.674C75.3268 93.674 74.4668 94.534 74.4668 95.5948C74.4668 96.6556 75.3268 97.5156 76.3877 97.5156Z" fill="black"/>
+  <path d="M108.4 97.5157C109.461 97.5157 110.321 96.6558 110.321 95.5949C110.321 94.5341 109.461 93.6741 108.4 93.6741C107.339 93.6741 106.479 94.5341 106.479 95.5949C106.479 96.6558 107.339 97.5157 108.4 97.5157Z" fill="black"/>
+  <path d="M114.803 97.5157C115.864 97.5157 116.724 96.6558 116.724 95.5949C116.724 94.5341 115.864 93.6741 114.803 93.6741C113.742 93.6741 112.882 94.5341 112.882 95.5949C112.882 96.6558 113.742 97.5157 114.803 97.5157Z" fill="black"/>
+  <path d="M121.208 97.5157C122.269 97.5157 123.129 96.6557 123.129 95.5948C123.129 94.534 122.269 93.674 121.208 93.674C120.147 93.674 119.287 94.534 119.287 95.5948C119.287 96.6557 120.147 97.5157 121.208 97.5157Z" fill="black"/>
+  <path d="M153.219 97.5156C154.28 97.5156 155.14 96.6556 155.14 95.5948C155.14 94.534 154.28 93.674 153.219 93.674C152.158 93.674 151.298 94.534 151.298 95.5948C151.298 96.6556 152.158 97.5156 153.219 97.5156Z" fill="black"/>
+  <path d="M159.623 97.5158C160.684 97.5158 161.544 96.6558 161.544 95.5949C161.544 94.5341 160.684 93.6741 159.623 93.6741C158.563 93.6741 157.703 94.5341 157.703 95.5949C157.703 96.6558 158.563 97.5158 159.623 97.5158Z" fill="black"/>
+  <path d="M166.025 97.5158C167.086 97.5158 167.946 96.6558 167.946 95.5949C167.946 94.5341 167.086 93.6741 166.025 93.6741C164.964 93.6741 164.104 94.5341 164.104 95.5949C164.104 96.6558 164.964 97.5158 166.025 97.5158Z" fill="black"/>
+  <path d="M172.427 97.5156C173.488 97.5156 174.348 96.6556 174.348 95.5948C174.348 94.534 173.488 93.674 172.427 93.674C171.366 93.674 170.506 94.534 170.506 95.5948C170.506 96.6556 171.366 97.5156 172.427 97.5156Z" fill="black"/>
+  <path d="M185.233 97.5158C186.294 97.5158 187.154 96.6558 187.154 95.5949C187.154 94.5341 186.294 93.6741 185.233 93.6741C184.172 93.6741 183.312 94.5341 183.312 95.5949C183.312 96.6558 184.172 97.5158 185.233 97.5158Z" fill="black"/>
+  <path d="M191.637 97.5156C192.697 97.5156 193.557 96.6556 193.557 95.5948C193.557 94.534 192.697 93.674 191.637 93.674C190.576 93.674 189.716 94.534 189.716 95.5948C189.716 96.6556 190.576 97.5156 191.637 97.5156Z" fill="black"/>
+  <path d="M198.039 97.5157C199.1 97.5157 199.96 96.6557 199.96 95.5948C199.96 94.534 199.1 93.674 198.039 93.674C196.979 93.674 196.119 94.534 196.119 95.5948C196.119 96.6557 196.979 97.5157 198.039 97.5157Z" fill="black"/>
+  <path d="M204.44 97.5158C205.501 97.5158 206.361 96.6558 206.361 95.5949C206.361 94.5341 205.501 93.6741 204.44 93.6741C203.379 93.6741 202.519 94.5341 202.519 95.5949C202.519 96.6558 203.379 97.5158 204.44 97.5158Z" fill="black"/>
+  <path d="M217.248 97.5156C218.309 97.5156 219.169 96.6556 219.169 95.5948C219.169 94.534 218.309 93.674 217.248 93.674C216.187 93.674 215.327 94.534 215.327 95.5948C215.327 96.6556 216.187 97.5156 217.248 97.5156Z" fill="black"/>
+  <path d="M223.649 97.5157C224.71 97.5157 225.57 96.6557 225.57 95.5948C225.57 94.534 224.71 93.674 223.649 93.674C222.588 93.674 221.728 94.534 221.728 95.5948C221.728 96.6557 222.588 97.5157 223.649 97.5157Z" fill="black"/>
+  <path d="M18.7618 103.919C19.8227 103.919 20.6827 103.059 20.6827 101.998C20.6827 100.937 19.8227 100.077 18.7618 100.077C17.701 100.077 16.841 100.937 16.841 101.998C16.841 103.059 17.701 103.919 18.7618 103.919Z" fill="black"/>
+  <path d="M37.9697 103.918C39.0306 103.918 39.8906 103.058 39.8906 101.998C39.8906 100.937 39.0306 100.077 37.9697 100.077C36.9089 100.077 36.0489 100.937 36.0489 101.998C36.0489 103.058 36.9089 103.918 37.9697 103.918Z" fill="black"/>
+  <path d="M50.7761 103.919C51.8369 103.919 52.6969 103.059 52.6969 101.998C52.6969 100.938 51.8369 100.078 50.7761 100.078C49.7152 100.078 48.8553 100.938 48.8553 101.998C48.8553 103.059 49.7152 103.919 50.7761 103.919Z" fill="black"/>
+  <path d="M69.9832 103.919C71.044 103.919 71.904 103.059 71.904 101.998C71.904 100.937 71.044 100.077 69.9832 100.077C68.9223 100.077 68.0623 100.937 68.0623 101.998C68.0623 103.059 68.9223 103.919 69.9832 103.919Z" fill="black"/>
+  <path d="M89.1921 103.919C90.2529 103.919 91.1129 103.059 91.1129 101.998C91.1129 100.937 90.2529 100.077 89.1921 100.077C88.1313 100.077 87.2713 100.937 87.2713 101.998C87.2713 103.059 88.1313 103.919 89.1921 103.919Z" fill="black"/>
+  <path d="M95.5957 103.919C96.6565 103.919 97.5165 103.059 97.5165 101.998C97.5165 100.938 96.6565 100.078 95.5957 100.078C94.5348 100.078 93.6748 100.938 93.6748 101.998C93.6748 103.059 94.5348 103.919 95.5957 103.919Z" fill="black"/>
+  <path d="M101.994 103.919C103.055 103.919 103.915 103.059 103.915 101.998C103.915 100.938 103.055 100.078 101.994 100.078C100.934 100.078 100.074 100.938 100.074 101.998C100.074 103.059 100.934 103.919 101.994 103.919Z" fill="black"/>
+  <path d="M114.803 103.919C115.864 103.919 116.724 103.059 116.724 101.998C116.724 100.937 115.864 100.077 114.803 100.077C113.742 100.077 112.882 100.937 112.882 101.998C112.882 103.059 113.742 103.919 114.803 103.919Z" fill="black"/>
+  <path d="M127.607 103.919C128.668 103.919 129.528 103.059 129.528 101.998C129.528 100.938 128.668 100.078 127.607 100.078C126.546 100.078 125.686 100.938 125.686 101.998C125.686 103.059 126.546 103.919 127.607 103.919Z" fill="black"/>
+  <path d="M134.011 103.919C135.072 103.919 135.932 103.059 135.932 101.998C135.932 100.937 135.072 100.077 134.011 100.077C132.95 100.077 132.09 100.937 132.09 101.998C132.09 103.059 132.95 103.919 134.011 103.919Z" fill="black"/>
+  <path d="M140.415 103.918C141.476 103.918 142.336 103.058 142.336 101.998C142.336 100.937 141.476 100.077 140.415 100.077C139.355 100.077 138.495 100.937 138.495 101.998C138.495 103.058 139.355 103.918 140.415 103.918Z" fill="black"/>
+  <path d="M146.815 103.919C147.876 103.919 148.736 103.059 148.736 101.998C148.736 100.938 147.876 100.078 146.815 100.078C145.754 100.078 144.894 100.938 144.894 101.998C144.894 103.059 145.754 103.919 146.815 103.919Z" fill="black"/>
+  <path d="M153.219 103.919C154.28 103.919 155.14 103.059 155.14 101.998C155.14 100.938 154.28 100.078 153.219 100.078C152.158 100.078 151.298 100.938 151.298 101.998C151.298 103.059 152.158 103.919 153.219 103.919Z" fill="black"/>
+  <path d="M159.623 103.918C160.684 103.918 161.544 103.058 161.544 101.998C161.544 100.937 160.684 100.077 159.623 100.077C158.563 100.077 157.703 100.937 157.703 101.998C157.703 103.058 158.563 103.918 159.623 103.918Z" fill="black"/>
+  <path d="M166.025 103.918C167.086 103.918 167.946 103.058 167.946 101.998C167.946 100.937 167.086 100.077 166.025 100.077C164.964 100.077 164.104 100.937 164.104 101.998C164.104 103.058 164.964 103.918 166.025 103.918Z" fill="black"/>
+  <path d="M185.233 103.918C186.294 103.918 187.154 103.058 187.154 101.998C187.154 100.937 186.294 100.077 185.233 100.077C184.172 100.077 183.312 100.937 183.312 101.998C183.312 103.058 184.172 103.918 185.233 103.918Z" fill="black"/>
+  <path d="M204.44 103.918C205.501 103.918 206.361 103.058 206.361 101.998C206.361 100.937 205.501 100.077 204.44 100.077C203.379 100.077 202.519 100.937 202.519 101.998C202.519 103.058 203.379 103.918 204.44 103.918Z" fill="black"/>
+  <path d="M223.649 103.919C224.71 103.919 225.57 103.059 225.57 101.998C225.57 100.938 224.71 100.078 223.649 100.078C222.588 100.078 221.728 100.938 221.728 101.998C221.728 103.059 222.588 103.919 223.649 103.919Z" fill="black"/>
+  <path d="M57.177 110.322C58.2378 110.322 59.0978 109.462 59.0978 108.401C59.0978 107.34 58.2378 106.48 57.177 106.48C56.1162 106.48 55.2562 107.34 55.2562 108.401C55.2562 109.462 56.1162 110.322 57.177 110.322Z" fill="black"/>
+  <path d="M95.5957 110.322C96.6565 110.322 97.5165 109.462 97.5165 108.401C97.5165 107.34 96.6565 106.48 95.5957 106.48C94.5348 106.48 93.6748 107.34 93.6748 108.401C93.6748 109.462 94.5348 110.322 95.5957 110.322Z" fill="black"/>
+  <path d="M108.4 110.322C109.461 110.322 110.321 109.462 110.321 108.401C110.321 107.34 109.461 106.48 108.4 106.48C107.339 106.48 106.479 107.34 106.479 108.401C106.479 109.462 107.339 110.322 108.4 110.322Z" fill="black"/>
+  <path d="M121.208 110.322C122.269 110.322 123.129 109.462 123.129 108.401C123.129 107.34 122.269 106.48 121.208 106.48C120.147 106.48 119.287 107.34 119.287 108.401C119.287 109.462 120.147 110.322 121.208 110.322Z" fill="black"/>
+  <path d="M127.607 110.322C128.668 110.322 129.528 109.462 129.528 108.401C129.528 107.34 128.668 106.48 127.607 106.48C126.546 106.48 125.686 107.34 125.686 108.401C125.686 109.462 126.546 110.322 127.607 110.322Z" fill="black"/>
+  <path d="M134.011 110.322C135.072 110.322 135.932 109.462 135.932 108.401C135.932 107.34 135.072 106.48 134.011 106.48C132.95 106.48 132.09 107.34 132.09 108.401C132.09 109.462 132.95 110.322 134.011 110.322Z" fill="black"/>
+  <path d="M146.815 110.322C147.876 110.322 148.736 109.462 148.736 108.401C148.736 107.34 147.876 106.48 146.815 106.48C145.754 106.48 144.894 107.34 144.894 108.401C144.894 109.462 145.754 110.322 146.815 110.322Z" fill="black"/>
+  <path d="M166.025 110.322C167.086 110.322 167.946 109.462 167.946 108.401C167.946 107.34 167.086 106.48 166.025 106.48C164.964 106.48 164.104 107.34 164.104 108.401C164.104 109.462 164.964 110.322 166.025 110.322Z" fill="black"/>
+  <path d="M172.427 110.322C173.488 110.322 174.348 109.462 174.348 108.401C174.348 107.34 173.488 106.48 172.427 106.48C171.366 106.48 170.506 107.34 170.506 108.401C170.506 109.462 171.366 110.322 172.427 110.322Z" fill="black"/>
+  <path d="M185.233 110.322C186.294 110.322 187.154 109.462 187.154 108.401C187.154 107.34 186.294 106.48 185.233 106.48C184.172 106.48 183.312 107.34 183.312 108.401C183.312 109.462 184.172 110.322 185.233 110.322Z" fill="black"/>
+  <path d="M191.637 110.322C192.697 110.322 193.557 109.462 193.557 108.401C193.557 107.34 192.697 106.48 191.637 106.48C190.576 106.48 189.716 107.34 189.716 108.401C189.716 109.462 190.576 110.322 191.637 110.322Z" fill="black"/>
+  <path d="M198.039 110.322C199.1 110.322 199.96 109.462 199.96 108.401C199.96 107.34 199.1 106.48 198.039 106.48C196.979 106.48 196.119 107.34 196.119 108.401C196.119 109.462 196.979 110.322 198.039 110.322Z" fill="black"/>
+  <path d="M210.845 110.322C211.905 110.322 212.765 109.462 212.765 108.401C212.765 107.34 211.905 106.48 210.845 106.48C209.784 106.48 208.924 107.34 208.924 108.401C208.924 109.462 209.784 110.322 210.845 110.322Z" fill="black"/>
+  <path d="M223.649 110.322C224.71 110.322 225.57 109.462 225.57 108.401C225.57 107.34 224.71 106.48 223.649 106.48C222.588 106.48 221.728 107.34 221.728 108.401C221.728 109.462 222.588 110.322 223.649 110.322Z" fill="black"/>
+  <path d="M18.7618 116.724C19.8227 116.724 20.6827 115.864 20.6827 114.803C20.6827 113.742 19.8227 112.882 18.7618 112.882C17.701 112.882 16.841 113.742 16.841 114.803C16.841 115.864 17.701 116.724 18.7618 116.724Z" fill="black"/>
+  <path d="M31.5663 116.723C32.6271 116.723 33.4871 115.863 33.4871 114.802C33.4871 113.742 32.6271 112.882 31.5663 112.882C30.5054 112.882 29.6454 113.742 29.6454 114.802C29.6454 115.863 30.5054 116.723 31.5663 116.723Z" fill="black"/>
+  <path d="M37.9697 116.724C39.0306 116.724 39.8906 115.864 39.8906 114.803C39.8906 113.742 39.0306 112.882 37.9697 112.882C36.9089 112.882 36.0489 113.742 36.0489 114.803C36.0489 115.864 36.9089 116.724 37.9697 116.724Z" fill="black"/>
+  <path d="M50.7761 116.723C51.8369 116.723 52.6969 115.863 52.6969 114.802C52.6969 113.742 51.8369 112.882 50.7761 112.882C49.7152 112.882 48.8553 113.742 48.8553 114.802C48.8553 115.863 49.7152 116.723 50.7761 116.723Z" fill="black"/>
+  <path d="M63.5791 116.724C64.64 116.724 65.5 115.864 65.5 114.803C65.5 113.742 64.64 112.882 63.5791 112.882C62.5183 112.882 61.6583 113.742 61.6583 114.803C61.6583 115.864 62.5183 116.724 63.5791 116.724Z" fill="black"/>
+  <path d="M82.7871 116.724C83.848 116.724 84.7079 115.864 84.7079 114.803C84.7079 113.742 83.848 112.882 82.7871 112.882C81.7263 112.882 80.8663 113.742 80.8663 114.803C80.8663 115.864 81.7263 116.724 82.7871 116.724Z" fill="black"/>
+  <path d="M89.1921 116.724C90.2529 116.724 91.1129 115.864 91.1129 114.803C91.1129 113.742 90.2529 112.882 89.1921 112.882C88.1313 112.882 87.2713 113.742 87.2713 114.803C87.2713 115.864 88.1313 116.724 89.1921 116.724Z" fill="black"/>
+  <path d="M95.5957 116.723C96.6565 116.723 97.5165 115.863 97.5165 114.802C97.5165 113.742 96.6565 112.882 95.5957 112.882C94.5348 112.882 93.6748 113.742 93.6748 114.802C93.6748 115.863 94.5348 116.723 95.5957 116.723Z" fill="black"/>
+  <path d="M101.994 116.723C103.055 116.723 103.915 115.863 103.915 114.802C103.915 113.742 103.055 112.882 101.994 112.882C100.934 112.882 100.074 113.742 100.074 114.802C100.074 115.863 100.934 116.723 101.994 116.723Z" fill="black"/>
+  <path d="M121.208 116.723C122.269 116.723 123.129 115.863 123.129 114.802C123.129 113.742 122.269 112.882 121.208 112.882C120.147 112.882 119.287 113.742 119.287 114.802C119.287 115.863 120.147 116.723 121.208 116.723Z" fill="black"/>
+  <path d="M127.607 116.723C128.668 116.723 129.528 115.863 129.528 114.802C129.528 113.742 128.668 112.882 127.607 112.882C126.546 112.882 125.686 113.742 125.686 114.802C125.686 115.863 126.546 116.723 127.607 116.723Z" fill="black"/>
+  <path d="M134.011 116.724C135.072 116.724 135.932 115.864 135.932 114.803C135.932 113.742 135.072 112.882 134.011 112.882C132.95 112.882 132.09 113.742 132.09 114.803C132.09 115.864 132.95 116.724 134.011 116.724Z" fill="black"/>
+  <path d="M146.815 116.723C147.876 116.723 148.736 115.863 148.736 114.802C148.736 113.742 147.876 112.882 146.815 112.882C145.754 112.882 144.894 113.742 144.894 114.802C144.894 115.863 145.754 116.723 146.815 116.723Z" fill="black"/>
+  <path d="M159.623 116.724C160.684 116.724 161.544 115.864 161.544 114.803C161.544 113.742 160.684 112.882 159.623 112.882C158.563 112.882 157.703 113.742 157.703 114.803C157.703 115.864 158.563 116.724 159.623 116.724Z" fill="black"/>
+  <path d="M172.427 116.723C173.488 116.723 174.348 115.863 174.348 114.802C174.348 113.742 173.488 112.882 172.427 112.882C171.366 112.882 170.506 113.742 170.506 114.802C170.506 115.863 171.366 116.723 172.427 116.723Z" fill="black"/>
+  <path d="M178.832 116.723C179.893 116.723 180.753 115.863 180.753 114.802C180.753 113.742 179.893 112.882 178.832 112.882C177.771 112.882 176.911 113.742 176.911 114.802C176.911 115.863 177.771 116.723 178.832 116.723Z" fill="black"/>
+  <path d="M185.233 116.724C186.294 116.724 187.154 115.864 187.154 114.803C187.154 113.742 186.294 112.882 185.233 112.882C184.172 112.882 183.312 113.742 183.312 114.803C183.312 115.864 184.172 116.724 185.233 116.724Z" fill="black"/>
+  <path d="M191.637 116.723C192.697 116.723 193.557 115.863 193.557 114.802C193.557 113.742 192.697 112.882 191.637 112.882C190.576 112.882 189.716 113.742 189.716 114.802C189.716 115.863 190.576 116.723 191.637 116.723Z" fill="black"/>
+  <path d="M204.44 116.724C205.501 116.724 206.361 115.864 206.361 114.803C206.361 113.742 205.501 112.882 204.44 112.882C203.379 112.882 202.519 113.742 202.519 114.803C202.519 115.864 203.379 116.724 204.44 116.724Z" fill="black"/>
+  <path d="M217.248 116.723C218.309 116.723 219.169 115.863 219.169 114.802C219.169 113.742 218.309 112.882 217.248 112.882C216.187 112.882 215.327 113.742 215.327 114.802C215.327 115.863 216.187 116.723 217.248 116.723Z" fill="black"/>
+  <path d="M18.7618 123.127C19.8227 123.127 20.6827 122.267 20.6827 121.206C20.6827 120.145 19.8227 119.285 18.7618 119.285C17.701 119.285 16.841 120.145 16.841 121.206C16.841 122.267 17.701 123.127 18.7618 123.127Z" fill="black"/>
+  <path d="M25.1668 123.126C26.2276 123.126 27.0876 122.266 27.0876 121.206C27.0876 120.145 26.2276 119.285 25.1668 119.285C24.1059 119.285 23.2459 120.145 23.2459 121.206C23.2459 122.266 24.1059 123.126 25.1668 123.126Z" fill="black"/>
+  <path d="M37.9697 123.126C39.0306 123.126 39.8906 122.266 39.8906 121.206C39.8906 120.145 39.0306 119.285 37.9697 119.285C36.9089 119.285 36.0489 120.145 36.0489 121.206C36.0489 122.266 36.9089 123.126 37.9697 123.126Z" fill="black"/>
+  <path d="M57.177 123.127C58.2378 123.127 59.0978 122.267 59.0978 121.206C59.0978 120.145 58.2378 119.285 57.177 119.285C56.1162 119.285 55.2562 120.145 55.2562 121.206C55.2562 122.267 56.1162 123.127 57.177 123.127Z" fill="black"/>
+  <path d="M76.3877 123.127C77.4485 123.127 78.3085 122.267 78.3085 121.206C78.3085 120.145 77.4485 119.285 76.3877 119.285C75.3268 119.285 74.4668 120.145 74.4668 121.206C74.4668 122.267 75.3268 123.127 76.3877 123.127Z" fill="black"/>
+  <path d="M89.1921 123.127C90.2529 123.127 91.1129 122.267 91.1129 121.206C91.1129 120.145 90.2529 119.285 89.1921 119.285C88.1313 119.285 87.2713 120.145 87.2713 121.206C87.2713 122.267 88.1313 123.127 89.1921 123.127Z" fill="black"/>
+  <path d="M134.011 123.127C135.072 123.127 135.932 122.267 135.932 121.206C135.932 120.145 135.072 119.285 134.011 119.285C132.95 119.285 132.09 120.145 132.09 121.206C132.09 122.267 132.95 123.127 134.011 123.127Z" fill="black"/>
+  <path d="M159.623 123.126C160.684 123.126 161.544 122.266 161.544 121.206C161.544 120.145 160.684 119.285 159.623 119.285C158.563 119.285 157.703 120.145 157.703 121.206C157.703 122.266 158.563 123.126 159.623 123.126Z" fill="black"/>
+  <path d="M166.025 123.126C167.086 123.126 167.946 122.266 167.946 121.206C167.946 120.145 167.086 119.285 166.025 119.285C164.964 119.285 164.104 120.145 164.104 121.206C164.104 122.266 164.964 123.126 166.025 123.126Z" fill="black"/>
+  <path d="M185.233 123.126C186.294 123.126 187.154 122.266 187.154 121.206C187.154 120.145 186.294 119.285 185.233 119.285C184.172 119.285 183.312 120.145 183.312 121.206C183.312 122.266 184.172 123.126 185.233 123.126Z" fill="black"/>
+  <path d="M191.637 123.127C192.697 123.127 193.557 122.267 193.557 121.206C193.557 120.145 192.697 119.285 191.637 119.285C190.576 119.285 189.716 120.145 189.716 121.206C189.716 122.267 190.576 123.127 191.637 123.127Z" fill="black"/>
+  <path d="M204.44 123.126C205.501 123.126 206.361 122.266 206.361 121.206C206.361 120.145 205.501 119.285 204.44 119.285C203.379 119.285 202.519 120.145 202.519 121.206C202.519 122.266 203.379 123.126 204.44 123.126Z" fill="black"/>
+  <path d="M37.9697 129.529C39.0306 129.529 39.8906 128.669 39.8906 127.609C39.8906 126.548 39.0306 125.688 37.9697 125.688C36.9089 125.688 36.0489 126.548 36.0489 127.609C36.0489 128.669 36.9089 129.529 37.9697 129.529Z" fill="black"/>
+  <path d="M44.3704 129.529C45.4313 129.529 46.2912 128.669 46.2912 127.609C46.2912 126.548 45.4313 125.688 44.3704 125.688C43.3096 125.688 42.4496 126.548 42.4496 127.609C42.4496 128.669 43.3096 129.529 44.3704 129.529Z" fill="black"/>
+  <path d="M63.5791 129.529C64.64 129.529 65.5 128.669 65.5 127.609C65.5 126.548 64.64 125.688 63.5791 125.688C62.5183 125.688 61.6583 126.548 61.6583 127.609C61.6583 128.669 62.5183 129.529 63.5791 129.529Z" fill="black"/>
+  <path d="M69.9832 129.529C71.044 129.529 71.904 128.669 71.904 127.609C71.904 126.548 71.044 125.688 69.9832 125.688C68.9223 125.688 68.0623 126.548 68.0623 127.609C68.0623 128.669 68.9223 129.529 69.9832 129.529Z" fill="black"/>
+  <path d="M82.7871 129.529C83.848 129.529 84.7079 128.669 84.7079 127.609C84.7079 126.548 83.848 125.688 82.7871 125.688C81.7263 125.688 80.8663 126.548 80.8663 127.609C80.8663 128.669 81.7263 129.529 82.7871 129.529Z" fill="black"/>
+  <path d="M101.994 129.529C103.055 129.529 103.915 128.669 103.915 127.608C103.915 126.547 103.055 125.687 101.994 125.687C100.934 125.687 100.074 126.547 100.074 127.608C100.074 128.669 100.934 129.529 101.994 129.529Z" fill="black"/>
+  <path d="M108.4 129.529C109.461 129.529 110.321 128.669 110.321 127.609C110.321 126.548 109.461 125.688 108.4 125.688C107.339 125.688 106.479 126.548 106.479 127.609C106.479 128.669 107.339 129.529 108.4 129.529Z" fill="black"/>
+  <path d="M121.208 129.529C122.269 129.529 123.129 128.669 123.129 127.608C123.129 126.547 122.269 125.687 121.208 125.687C120.147 125.687 119.287 126.547 119.287 127.608C119.287 128.669 120.147 129.529 121.208 129.529Z" fill="black"/>
+  <path d="M127.607 129.529C128.668 129.529 129.528 128.669 129.528 127.608C129.528 126.547 128.668 125.687 127.607 125.687C126.546 125.687 125.686 126.547 125.686 127.608C125.686 128.669 126.546 129.529 127.607 129.529Z" fill="black"/>
+  <path d="M146.815 129.529C147.876 129.529 148.736 128.669 148.736 127.608C148.736 126.547 147.876 125.687 146.815 125.687C145.754 125.687 144.894 126.547 144.894 127.608C144.894 128.669 145.754 129.529 146.815 129.529Z" fill="black"/>
+  <path d="M153.219 129.529C154.28 129.529 155.14 128.669 155.14 127.608C155.14 126.547 154.28 125.687 153.219 125.687C152.158 125.687 151.298 126.547 151.298 127.608C151.298 128.669 152.158 129.529 153.219 129.529Z" fill="black"/>
+  <path d="M166.025 129.529C167.086 129.529 167.946 128.669 167.946 127.609C167.946 126.548 167.086 125.688 166.025 125.688C164.964 125.688 164.104 126.548 164.104 127.609C164.104 128.669 164.964 129.529 166.025 129.529Z" fill="black"/>
+  <path d="M185.233 129.529C186.294 129.529 187.154 128.669 187.154 127.609C187.154 126.548 186.294 125.688 185.233 125.688C184.172 125.688 183.312 126.548 183.312 127.609C183.312 128.669 184.172 129.529 185.233 129.529Z" fill="black"/>
+  <path d="M191.637 129.529C192.697 129.529 193.557 128.669 193.557 127.608C193.557 126.547 192.697 125.687 191.637 125.687C190.576 125.687 189.716 126.547 189.716 127.608C189.716 128.669 190.576 129.529 191.637 129.529Z" fill="black"/>
+  <path d="M210.845 129.529C211.905 129.529 212.765 128.669 212.765 127.608C212.765 126.547 211.905 125.687 210.845 125.687C209.784 125.687 208.924 126.547 208.924 127.608C208.924 128.669 209.784 129.529 210.845 129.529Z" fill="black"/>
+  <path d="M223.649 129.529C224.71 129.529 225.57 128.669 225.57 127.608C225.57 126.547 224.71 125.687 223.649 125.687C222.588 125.687 221.728 126.547 221.728 127.608C221.728 128.669 222.588 129.529 223.649 129.529Z" fill="black"/>
+  <path d="M18.7618 135.932C19.8227 135.932 20.6827 135.072 20.6827 134.012C20.6827 132.951 19.8227 132.091 18.7618 132.091C17.701 132.091 16.841 132.951 16.841 134.012C16.841 135.072 17.701 135.932 18.7618 135.932Z" fill="black"/>
+  <path d="M25.1668 135.932C26.2276 135.932 27.0876 135.072 27.0876 134.011C27.0876 132.951 26.2276 132.091 25.1668 132.091C24.1059 132.091 23.2459 132.951 23.2459 134.011C23.2459 135.072 24.1059 135.932 25.1668 135.932Z" fill="black"/>
+  <path d="M31.5663 135.933C32.6271 135.933 33.4871 135.073 33.4871 134.012C33.4871 132.951 32.6271 132.091 31.5663 132.091C30.5054 132.091 29.6454 132.951 29.6454 134.012C29.6454 135.073 30.5054 135.933 31.5663 135.933Z" fill="black"/>
+  <path d="M37.9697 135.932C39.0306 135.932 39.8906 135.072 39.8906 134.011C39.8906 132.951 39.0306 132.091 37.9697 132.091C36.9089 132.091 36.0489 132.951 36.0489 134.011C36.0489 135.072 36.9089 135.932 37.9697 135.932Z" fill="black"/>
+  <path d="M44.3704 135.932C45.4313 135.932 46.2912 135.072 46.2912 134.011C46.2912 132.951 45.4313 132.091 44.3704 132.091C43.3096 132.091 42.4496 132.951 42.4496 134.011C42.4496 135.072 43.3096 135.932 44.3704 135.932Z" fill="black"/>
+  <path d="M50.7761 135.933C51.8369 135.933 52.6969 135.073 52.6969 134.012C52.6969 132.951 51.8369 132.091 50.7761 132.091C49.7152 132.091 48.8553 132.951 48.8553 134.012C48.8553 135.073 49.7152 135.933 50.7761 135.933Z" fill="black"/>
+  <path d="M57.177 135.933C58.2378 135.933 59.0978 135.073 59.0978 134.012C59.0978 132.951 58.2378 132.091 57.177 132.091C56.1162 132.091 55.2562 132.951 55.2562 134.012C55.2562 135.073 56.1162 135.933 57.177 135.933Z" fill="black"/>
+  <path d="M63.5791 135.932C64.64 135.932 65.5 135.072 65.5 134.011C65.5 132.951 64.64 132.091 63.5791 132.091C62.5183 132.091 61.6583 132.951 61.6583 134.011C61.6583 135.072 62.5183 135.932 63.5791 135.932Z" fill="black"/>
+  <path d="M82.7871 135.932C83.848 135.932 84.7079 135.072 84.7079 134.011C84.7079 132.951 83.848 132.091 82.7871 132.091C81.7263 132.091 80.8663 132.951 80.8663 134.011C80.8663 135.072 81.7263 135.932 82.7871 135.932Z" fill="black"/>
+  <path d="M89.1921 135.932C90.2529 135.932 91.1129 135.072 91.1129 134.012C91.1129 132.951 90.2529 132.091 89.1921 132.091C88.1313 132.091 87.2713 132.951 87.2713 134.012C87.2713 135.072 88.1313 135.932 89.1921 135.932Z" fill="black"/>
+  <path d="M114.803 135.932C115.864 135.932 116.724 135.072 116.724 134.012C116.724 132.951 115.864 132.091 114.803 132.091C113.742 132.091 112.882 132.951 112.882 134.012C112.882 135.072 113.742 135.932 114.803 135.932Z" fill="black"/>
+  <path d="M127.607 135.933C128.668 135.933 129.528 135.073 129.528 134.012C129.528 132.951 128.668 132.091 127.607 132.091C126.546 132.091 125.686 132.951 125.686 134.012C125.686 135.073 126.546 135.933 127.607 135.933Z" fill="black"/>
+  <path d="M134.011 135.932C135.072 135.932 135.932 135.072 135.932 134.012C135.932 132.951 135.072 132.091 134.011 132.091C132.95 132.091 132.09 132.951 132.09 134.012C132.09 135.072 132.95 135.932 134.011 135.932Z" fill="black"/>
+  <path d="M146.815 135.933C147.876 135.933 148.736 135.073 148.736 134.012C148.736 132.951 147.876 132.091 146.815 132.091C145.754 132.091 144.894 132.951 144.894 134.012C144.894 135.073 145.754 135.933 146.815 135.933Z" fill="black"/>
+  <path d="M153.219 135.933C154.28 135.933 155.14 135.073 155.14 134.012C155.14 132.951 154.28 132.091 153.219 132.091C152.158 132.091 151.298 132.951 151.298 134.012C151.298 135.073 152.158 135.933 153.219 135.933Z" fill="black"/>
+  <path d="M166.025 135.932C167.086 135.932 167.946 135.072 167.946 134.011C167.946 132.951 167.086 132.091 166.025 132.091C164.964 132.091 164.104 132.951 164.104 134.011C164.104 135.072 164.964 135.932 166.025 135.932Z" fill="black"/>
+  <path d="M204.44 135.932C205.501 135.932 206.361 135.072 206.361 134.011C206.361 132.951 205.501 132.091 204.44 132.091C203.379 132.091 202.519 132.951 202.519 134.011C202.519 135.072 203.379 135.932 204.44 135.932Z" fill="black"/>
+  <path d="M210.845 135.933C211.905 135.933 212.765 135.073 212.765 134.012C212.765 132.951 211.905 132.091 210.845 132.091C209.784 132.091 208.924 132.951 208.924 134.012C208.924 135.073 209.784 135.933 210.845 135.933Z" fill="black"/>
+  <path d="M223.649 135.933C224.71 135.933 225.57 135.073 225.57 134.012C225.57 132.951 224.71 132.091 223.649 132.091C222.588 132.091 221.728 132.951 221.728 134.012C221.728 135.073 222.588 135.933 223.649 135.933Z" fill="black"/>
+  <path d="M18.7618 142.335C19.8227 142.335 20.6827 141.475 20.6827 140.414C20.6827 139.354 19.8227 138.494 18.7618 138.494C17.701 138.494 16.841 139.354 16.841 140.414C16.841 141.475 17.701 142.335 18.7618 142.335Z" fill="black"/>
+  <path d="M25.1668 142.335C26.2276 142.335 27.0876 141.475 27.0876 140.415C27.0876 139.354 26.2276 138.494 25.1668 138.494C24.1059 138.494 23.2459 139.354 23.2459 140.415C23.2459 141.475 24.1059 142.335 25.1668 142.335Z" fill="black"/>
+  <path d="M37.9697 142.335C39.0306 142.335 39.8906 141.475 39.8906 140.415C39.8906 139.354 39.0306 138.494 37.9697 138.494C36.9089 138.494 36.0489 139.354 36.0489 140.415C36.0489 141.475 36.9089 142.335 37.9697 142.335Z" fill="black"/>
+  <path d="M44.3704 142.335C45.4313 142.335 46.2912 141.475 46.2912 140.415C46.2912 139.354 45.4313 138.494 44.3704 138.494C43.3096 138.494 42.4496 139.354 42.4496 140.415C42.4496 141.475 43.3096 142.335 44.3704 142.335Z" fill="black"/>
+  <path d="M63.5791 142.335C64.64 142.335 65.5 141.475 65.5 140.415C65.5 139.354 64.64 138.494 63.5791 138.494C62.5183 138.494 61.6583 139.354 61.6583 140.415C61.6583 141.475 62.5183 142.335 63.5791 142.335Z" fill="black"/>
+  <path d="M76.3877 142.335C77.4485 142.335 78.3085 141.475 78.3085 140.414C78.3085 139.353 77.4485 138.493 76.3877 138.493C75.3268 138.493 74.4668 139.353 74.4668 140.414C74.4668 141.475 75.3268 142.335 76.3877 142.335Z" fill="black"/>
+  <path d="M89.1921 142.335C90.2529 142.335 91.1129 141.475 91.1129 140.414C91.1129 139.354 90.2529 138.494 89.1921 138.494C88.1313 138.494 87.2713 139.354 87.2713 140.414C87.2713 141.475 88.1313 142.335 89.1921 142.335Z" fill="black"/>
+  <path d="M101.994 142.335C103.055 142.335 103.915 141.475 103.915 140.414C103.915 139.353 103.055 138.493 101.994 138.493C100.934 138.493 100.074 139.353 100.074 140.414C100.074 141.475 100.934 142.335 101.994 142.335Z" fill="black"/>
+  <path d="M114.803 142.335C115.864 142.335 116.724 141.475 116.724 140.414C116.724 139.354 115.864 138.494 114.803 138.494C113.742 138.494 112.882 139.354 112.882 140.414C112.882 141.475 113.742 142.335 114.803 142.335Z" fill="black"/>
+  <path d="M127.607 142.335C128.668 142.335 129.528 141.475 129.528 140.414C129.528 139.353 128.668 138.493 127.607 138.493C126.546 138.493 125.686 139.353 125.686 140.414C125.686 141.475 126.546 142.335 127.607 142.335Z" fill="black"/>
+  <path d="M134.011 142.335C135.072 142.335 135.932 141.475 135.932 140.414C135.932 139.354 135.072 138.494 134.011 138.494C132.95 138.494 132.09 139.354 132.09 140.414C132.09 141.475 132.95 142.335 134.011 142.335Z" fill="black"/>
+  <path d="M146.815 142.335C147.876 142.335 148.736 141.475 148.736 140.414C148.736 139.353 147.876 138.493 146.815 138.493C145.754 138.493 144.894 139.353 144.894 140.414C144.894 141.475 145.754 142.335 146.815 142.335Z" fill="black"/>
+  <path d="M166.025 142.335C167.086 142.335 167.946 141.475 167.946 140.415C167.946 139.354 167.086 138.494 166.025 138.494C164.964 138.494 164.104 139.354 164.104 140.415C164.104 141.475 164.964 142.335 166.025 142.335Z" fill="black"/>
+  <path d="M185.233 142.335C186.294 142.335 187.154 141.475 187.154 140.415C187.154 139.354 186.294 138.494 185.233 138.494C184.172 138.494 183.312 139.354 183.312 140.415C183.312 141.475 184.172 142.335 185.233 142.335Z" fill="black"/>
+  <path d="M191.637 142.335C192.697 142.335 193.557 141.475 193.557 140.414C193.557 139.353 192.697 138.493 191.637 138.493C190.576 138.493 189.716 139.353 189.716 140.414C189.716 141.475 190.576 142.335 191.637 142.335Z" fill="black"/>
+  <path d="M198.039 142.335C199.1 142.335 199.96 141.475 199.96 140.414C199.96 139.353 199.1 138.493 198.039 138.493C196.979 138.493 196.119 139.353 196.119 140.414C196.119 141.475 196.979 142.335 198.039 142.335Z" fill="black"/>
+  <path d="M204.44 142.335C205.501 142.335 206.361 141.475 206.361 140.415C206.361 139.354 205.501 138.494 204.44 138.494C203.379 138.494 202.519 139.354 202.519 140.415C202.519 141.475 203.379 142.335 204.44 142.335Z" fill="black"/>
+  <path d="M217.248 142.335C218.309 142.335 219.169 141.475 219.169 140.414C219.169 139.353 218.309 138.493 217.248 138.493C216.187 138.493 215.327 139.353 215.327 140.414C215.327 141.475 216.187 142.335 217.248 142.335Z" fill="black"/>
+  <path d="M223.649 142.335C224.71 142.335 225.57 141.475 225.57 140.414C225.57 139.353 224.71 138.493 223.649 138.493C222.588 138.493 221.728 139.353 221.728 140.414C221.728 141.475 222.588 142.335 223.649 142.335Z" fill="black"/>
+  <path d="M25.1668 148.753C26.2276 148.753 27.0876 147.893 27.0876 146.833C27.0876 145.772 26.2276 144.912 25.1668 144.912C24.1059 144.912 23.2459 145.772 23.2459 146.833C23.2459 147.893 24.1059 148.753 25.1668 148.753Z" fill="black"/>
+  <path d="M31.5663 148.754C32.6271 148.754 33.4871 147.894 33.4871 146.833C33.4871 145.772 32.6271 144.912 31.5663 144.912C30.5054 144.912 29.6454 145.772 29.6454 146.833C29.6454 147.894 30.5054 148.754 31.5663 148.754Z" fill="black"/>
+  <path d="M37.9697 148.753C39.0306 148.753 39.8906 147.893 39.8906 146.833C39.8906 145.772 39.0306 144.912 37.9697 144.912C36.9089 144.912 36.0489 145.772 36.0489 146.833C36.0489 147.893 36.9089 148.753 37.9697 148.753Z" fill="black"/>
+  <path d="M44.3704 148.753C45.4313 148.753 46.2912 147.893 46.2912 146.833C46.2912 145.772 45.4313 144.912 44.3704 144.912C43.3096 144.912 42.4496 145.772 42.4496 146.833C42.4496 147.893 43.3096 148.753 44.3704 148.753Z" fill="black"/>
+  <path d="M57.177 148.754C58.2378 148.754 59.0978 147.894 59.0978 146.833C59.0978 145.772 58.2378 144.912 57.177 144.912C56.1162 144.912 55.2562 145.772 55.2562 146.833C55.2562 147.894 56.1162 148.754 57.177 148.754Z" fill="black"/>
+  <path d="M69.9832 148.754C71.044 148.754 71.904 147.894 71.904 146.833C71.904 145.772 71.044 144.912 69.9832 144.912C68.9223 144.912 68.0623 145.772 68.0623 146.833C68.0623 147.894 68.9223 148.754 69.9832 148.754Z" fill="black"/>
+  <path d="M89.1921 148.754C90.2529 148.754 91.1129 147.894 91.1129 146.833C91.1129 145.772 90.2529 144.912 89.1921 144.912C88.1313 144.912 87.2713 145.772 87.2713 146.833C87.2713 147.894 88.1313 148.754 89.1921 148.754Z" fill="black"/>
+  <path d="M114.803 148.754C115.864 148.754 116.724 147.894 116.724 146.833C116.724 145.772 115.864 144.912 114.803 144.912C113.742 144.912 112.882 145.772 112.882 146.833C112.882 147.894 113.742 148.754 114.803 148.754Z" fill="black"/>
+  <path d="M127.607 148.754C128.668 148.754 129.528 147.894 129.528 146.833C129.528 145.772 128.668 144.912 127.607 144.912C126.546 144.912 125.686 145.772 125.686 146.833C125.686 147.894 126.546 148.754 127.607 148.754Z" fill="black"/>
+  <path d="M140.415 148.753C141.476 148.753 142.336 147.893 142.336 146.833C142.336 145.772 141.476 144.912 140.415 144.912C139.355 144.912 138.495 145.772 138.495 146.833C138.495 147.893 139.355 148.753 140.415 148.753Z" fill="black"/>
+  <path d="M146.815 148.754C147.876 148.754 148.736 147.894 148.736 146.833C148.736 145.772 147.876 144.912 146.815 144.912C145.754 144.912 144.894 145.772 144.894 146.833C144.894 147.894 145.754 148.754 146.815 148.754Z" fill="black"/>
+  <path d="M166.025 148.753C167.086 148.753 167.946 147.893 167.946 146.833C167.946 145.772 167.086 144.912 166.025 144.912C164.964 144.912 164.104 145.772 164.104 146.833C164.104 147.893 164.964 148.753 166.025 148.753Z" fill="black"/>
+  <path d="M191.637 148.754C192.697 148.754 193.557 147.894 193.557 146.833C193.557 145.772 192.697 144.912 191.637 144.912C190.576 144.912 189.716 145.772 189.716 146.833C189.716 147.894 190.576 148.754 191.637 148.754Z" fill="black"/>
+  <path d="M223.649 148.754C224.71 148.754 225.57 147.894 225.57 146.833C225.57 145.772 224.71 144.912 223.649 144.912C222.588 144.912 221.728 145.772 221.728 146.833C221.728 147.894 222.588 148.754 223.649 148.754Z" fill="black"/>
+  <path d="M25.1668 155.157C26.2276 155.157 27.0876 154.297 27.0876 153.236C27.0876 152.175 26.2276 151.315 25.1668 151.315C24.1059 151.315 23.2459 152.175 23.2459 153.236C23.2459 154.297 24.1059 155.157 25.1668 155.157Z" fill="black"/>
+  <path d="M31.5663 155.156C32.6271 155.156 33.4871 154.296 33.4871 153.235C33.4871 152.174 32.6271 151.314 31.5663 151.314C30.5054 151.314 29.6454 152.174 29.6454 153.235C29.6454 154.296 30.5054 155.156 31.5663 155.156Z" fill="black"/>
+  <path d="M37.9697 155.157C39.0306 155.157 39.8906 154.297 39.8906 153.236C39.8906 152.175 39.0306 151.315 37.9697 151.315C36.9089 151.315 36.0489 152.175 36.0489 153.236C36.0489 154.297 36.9089 155.157 37.9697 155.157Z" fill="black"/>
+  <path d="M50.7761 155.156C51.8369 155.156 52.6969 154.296 52.6969 153.235C52.6969 152.174 51.8369 151.314 50.7761 151.314C49.7152 151.314 48.8553 152.174 48.8553 153.235C48.8553 154.296 49.7152 155.156 50.7761 155.156Z" fill="black"/>
+  <path d="M89.1921 155.156C90.2529 155.156 91.1129 154.297 91.1129 153.236C91.1129 152.175 90.2529 151.315 89.1921 151.315C88.1313 151.315 87.2713 152.175 87.2713 153.236C87.2713 154.297 88.1313 155.156 89.1921 155.156Z" fill="black"/>
+  <path d="M127.607 155.156C128.668 155.156 129.528 154.296 129.528 153.235C129.528 152.174 128.668 151.314 127.607 151.314C126.546 151.314 125.686 152.174 125.686 153.235C125.686 154.296 126.546 155.156 127.607 155.156Z" fill="black"/>
+  <path d="M134.011 155.156C135.072 155.156 135.932 154.297 135.932 153.236C135.932 152.175 135.072 151.315 134.011 151.315C132.95 151.315 132.09 152.175 132.09 153.236C132.09 154.297 132.95 155.156 134.011 155.156Z" fill="black"/>
+  <path d="M140.415 155.157C141.476 155.157 142.336 154.297 142.336 153.236C142.336 152.175 141.476 151.315 140.415 151.315C139.355 151.315 138.495 152.175 138.495 153.236C138.495 154.297 139.355 155.157 140.415 155.157Z" fill="black"/>
+  <path d="M191.637 155.156C192.697 155.156 193.557 154.296 193.557 153.235C193.557 152.174 192.697 151.314 191.637 151.314C190.576 151.314 189.716 152.174 189.716 153.235C189.716 154.296 190.576 155.156 191.637 155.156Z" fill="black"/>
+  <path d="M223.649 155.156C224.71 155.156 225.57 154.296 225.57 153.235C225.57 152.175 224.71 151.315 223.649 151.315C222.588 151.315 221.728 152.175 221.728 153.235C221.728 154.296 222.588 155.156 223.649 155.156Z" fill="black"/>
+  <path d="M18.7618 161.558C19.8227 161.558 20.6827 160.698 20.6827 159.638C20.6827 158.577 19.8227 157.717 18.7618 157.717C17.701 157.717 16.841 158.577 16.841 159.638C16.841 160.698 17.701 161.558 18.7618 161.558Z" fill="black"/>
+  <path d="M25.1668 161.559C26.2276 161.559 27.0876 160.699 27.0876 159.638C27.0876 158.577 26.2276 157.717 25.1668 157.717C24.1059 157.717 23.2459 158.577 23.2459 159.638C23.2459 160.699 24.1059 161.559 25.1668 161.559Z" fill="black"/>
+  <path d="M31.5663 161.559C32.6271 161.559 33.4871 160.699 33.4871 159.638C33.4871 158.577 32.6271 157.717 31.5663 157.717C30.5054 157.717 29.6454 158.577 29.6454 159.638C29.6454 160.699 30.5054 161.559 31.5663 161.559Z" fill="black"/>
+  <path d="M50.7761 161.559C51.8369 161.559 52.6969 160.699 52.6969 159.638C52.6969 158.577 51.8369 157.717 50.7761 157.717C49.7152 157.717 48.8553 158.577 48.8553 159.638C48.8553 160.699 49.7152 161.559 50.7761 161.559Z" fill="black"/>
+  <path d="M57.177 161.559C58.2378 161.559 59.0978 160.699 59.0978 159.638C59.0978 158.577 58.2378 157.717 57.177 157.717C56.1162 157.717 55.2562 158.577 55.2562 159.638C55.2562 160.699 56.1162 161.559 57.177 161.559Z" fill="black"/>
+  <path d="M69.9832 161.558C71.044 161.558 71.904 160.698 71.904 159.638C71.904 158.577 71.044 157.717 69.9832 157.717C68.9223 157.717 68.0623 158.577 68.0623 159.638C68.0623 160.698 68.9223 161.558 69.9832 161.558Z" fill="black"/>
+  <path d="M76.3877 161.559C77.4485 161.559 78.3085 160.699 78.3085 159.638C78.3085 158.577 77.4485 157.717 76.3877 157.717C75.3268 157.717 74.4668 158.577 74.4668 159.638C74.4668 160.699 75.3268 161.559 76.3877 161.559Z" fill="black"/>
+  <path d="M89.1921 161.558C90.2529 161.558 91.1129 160.698 91.1129 159.638C91.1129 158.577 90.2529 157.717 89.1921 157.717C88.1313 157.717 87.2713 158.577 87.2713 159.638C87.2713 160.698 88.1313 161.558 89.1921 161.558Z" fill="black"/>
+  <path d="M108.4 161.558C109.461 161.558 110.321 160.698 110.321 159.638C110.321 158.577 109.461 157.717 108.4 157.717C107.339 157.717 106.479 158.577 106.479 159.638C106.479 160.698 107.339 161.558 108.4 161.558Z" fill="black"/>
+  <path d="M114.803 161.558C115.864 161.558 116.724 160.698 116.724 159.638C116.724 158.577 115.864 157.717 114.803 157.717C113.742 157.717 112.882 158.577 112.882 159.638C112.882 160.698 113.742 161.558 114.803 161.558Z" fill="black"/>
+  <path d="M121.208 161.559C122.269 161.559 123.129 160.699 123.129 159.638C123.129 158.577 122.269 157.717 121.208 157.717C120.147 157.717 119.287 158.577 119.287 159.638C119.287 160.699 120.147 161.559 121.208 161.559Z" fill="black"/>
+  <path d="M127.607 161.559C128.668 161.559 129.528 160.699 129.528 159.638C129.528 158.577 128.668 157.717 127.607 157.717C126.546 157.717 125.686 158.577 125.686 159.638C125.686 160.699 126.546 161.559 127.607 161.559Z" fill="black"/>
+  <path d="M159.623 161.559C160.684 161.559 161.544 160.699 161.544 159.638C161.544 158.577 160.684 157.717 159.623 157.717C158.563 157.717 157.703 158.577 157.703 159.638C157.703 160.699 158.563 161.559 159.623 161.559Z" fill="black"/>
+  <path d="M166.025 161.559C167.086 161.559 167.946 160.699 167.946 159.638C167.946 158.577 167.086 157.717 166.025 157.717C164.964 157.717 164.104 158.577 164.104 159.638C164.104 160.699 164.964 161.559 166.025 161.559Z" fill="black"/>
+  <path d="M178.832 161.559C179.893 161.559 180.753 160.699 180.753 159.638C180.753 158.577 179.893 157.717 178.832 157.717C177.771 157.717 176.911 158.577 176.911 159.638C176.911 160.699 177.771 161.559 178.832 161.559Z" fill="black"/>
+  <path d="M185.233 161.559C186.294 161.559 187.154 160.699 187.154 159.638C187.154 158.577 186.294 157.717 185.233 157.717C184.172 157.717 183.312 158.577 183.312 159.638C183.312 160.699 184.172 161.559 185.233 161.559Z" fill="black"/>
+  <path d="M204.44 161.559C205.501 161.559 206.361 160.699 206.361 159.638C206.361 158.577 205.501 157.717 204.44 157.717C203.379 157.717 202.519 158.577 202.519 159.638C202.519 160.699 203.379 161.559 204.44 161.559Z" fill="black"/>
+  <path d="M223.649 161.559C224.71 161.559 225.57 160.699 225.57 159.638C225.57 158.577 224.71 157.717 223.649 157.717C222.588 157.717 221.728 158.577 221.728 159.638C221.728 160.699 222.588 161.559 223.649 161.559Z" fill="black"/>
+  <path d="M44.3704 167.961C45.4313 167.961 46.2912 167.101 46.2912 166.041C46.2912 164.98 45.4313 164.12 44.3704 164.12C43.3096 164.12 42.4496 164.98 42.4496 166.041C42.4496 167.101 43.3096 167.961 44.3704 167.961Z" fill="black"/>
+  <path d="M50.7761 167.961C51.8369 167.961 52.6969 167.101 52.6969 166.041C52.6969 164.98 51.8369 164.12 50.7761 164.12C49.7152 164.12 48.8553 164.98 48.8553 166.041C48.8553 167.101 49.7152 167.961 50.7761 167.961Z" fill="black"/>
+  <path d="M76.3877 167.961C77.4485 167.961 78.3085 167.101 78.3085 166.041C78.3085 164.98 77.4485 164.12 76.3877 164.12C75.3268 164.12 74.4668 164.98 74.4668 166.041C74.4668 167.101 75.3268 167.961 76.3877 167.961Z" fill="black"/>
+  <path d="M82.7871 167.961C83.848 167.961 84.7079 167.101 84.7079 166.041C84.7079 164.98 83.848 164.12 82.7871 164.12C81.7263 164.12 80.8663 164.98 80.8663 166.041C80.8663 167.101 81.7263 167.961 82.7871 167.961Z" fill="black"/>
+  <path d="M101.994 167.961C103.055 167.961 103.915 167.101 103.915 166.04C103.915 164.98 103.055 164.12 101.994 164.12C100.934 164.12 100.074 164.98 100.074 166.04C100.074 167.101 100.934 167.961 101.994 167.961Z" fill="black"/>
+  <path d="M127.607 167.961C128.668 167.961 129.528 167.101 129.528 166.041C129.528 164.98 128.668 164.12 127.607 164.12C126.546 164.12 125.686 164.98 125.686 166.041C125.686 167.101 126.546 167.961 127.607 167.961Z" fill="black"/>
+  <path d="M134.011 167.961C135.072 167.961 135.932 167.102 135.932 166.041C135.932 164.98 135.072 164.12 134.011 164.12C132.95 164.12 132.09 164.98 132.09 166.041C132.09 167.102 132.95 167.961 134.011 167.961Z" fill="black"/>
+  <path d="M146.815 167.961C147.876 167.961 148.736 167.101 148.736 166.041C148.736 164.98 147.876 164.12 146.815 164.12C145.754 164.12 144.894 164.98 144.894 166.041C144.894 167.101 145.754 167.961 146.815 167.961Z" fill="black"/>
+  <path d="M191.637 167.961C192.697 167.961 193.557 167.101 193.557 166.041C193.557 164.98 192.697 164.12 191.637 164.12C190.576 164.12 189.716 164.98 189.716 166.041C189.716 167.101 190.576 167.961 191.637 167.961Z" fill="black"/>
+  <path d="M204.44 167.961C205.501 167.961 206.361 167.101 206.361 166.041C206.361 164.98 205.501 164.12 204.44 164.12C203.379 164.12 202.519 164.98 202.519 166.041C202.519 167.101 203.379 167.961 204.44 167.961Z" fill="black"/>
+  <path d="M217.248 167.961C218.309 167.961 219.169 167.101 219.169 166.041C219.169 164.98 218.309 164.12 217.248 164.12C216.187 164.12 215.327 164.98 215.327 166.041C215.327 167.101 216.187 167.961 217.248 167.961Z" fill="black"/>
+  <path d="M18.7618 174.364C19.8227 174.364 20.6827 173.504 20.6827 172.444C20.6827 171.383 19.8227 170.523 18.7618 170.523C17.701 170.523 16.841 171.383 16.841 172.444C16.841 173.504 17.701 174.364 18.7618 174.364Z" fill="black"/>
+  <path d="M25.1668 174.364C26.2276 174.364 27.0876 173.504 27.0876 172.444C27.0876 171.383 26.2276 170.523 25.1668 170.523C24.1059 170.523 23.2459 171.383 23.2459 172.444C23.2459 173.504 24.1059 174.364 25.1668 174.364Z" fill="black"/>
+  <path d="M37.9697 174.364C39.0306 174.364 39.8906 173.504 39.8906 172.444C39.8906 171.383 39.0306 170.523 37.9697 170.523C36.9089 170.523 36.0489 171.383 36.0489 172.444C36.0489 173.504 36.9089 174.364 37.9697 174.364Z" fill="black"/>
+  <path d="M44.3704 174.364C45.4313 174.364 46.2912 173.504 46.2912 172.444C46.2912 171.383 45.4313 170.523 44.3704 170.523C43.3096 170.523 42.4496 171.383 42.4496 172.444C42.4496 173.504 43.3096 174.364 44.3704 174.364Z" fill="black"/>
+  <path d="M57.177 174.365C58.2378 174.365 59.0978 173.505 59.0978 172.444C59.0978 171.383 58.2378 170.523 57.177 170.523C56.1162 170.523 55.2562 171.383 55.2562 172.444C55.2562 173.505 56.1162 174.365 57.177 174.365Z" fill="black"/>
+  <path d="M63.5791 174.364C64.64 174.364 65.5 173.504 65.5 172.444C65.5 171.383 64.64 170.523 63.5791 170.523C62.5183 170.523 61.6583 171.383 61.6583 172.444C61.6583 173.504 62.5183 174.364 63.5791 174.364Z" fill="black"/>
+  <path d="M95.5957 174.365C96.6565 174.365 97.5165 173.505 97.5165 172.444C97.5165 171.383 96.6565 170.523 95.5957 170.523C94.5348 170.523 93.6748 171.383 93.6748 172.444C93.6748 173.505 94.5348 174.365 95.5957 174.365Z" fill="black"/>
+  <path d="M108.4 174.364C109.461 174.364 110.321 173.504 110.321 172.444C110.321 171.383 109.461 170.523 108.4 170.523C107.339 170.523 106.479 171.383 106.479 172.444C106.479 173.504 107.339 174.364 108.4 174.364Z" fill="black"/>
+  <path d="M121.208 174.365C122.269 174.365 123.129 173.505 123.129 172.444C123.129 171.383 122.269 170.523 121.208 170.523C120.147 170.523 119.287 171.383 119.287 172.444C119.287 173.505 120.147 174.365 121.208 174.365Z" fill="black"/>
+  <path d="M127.607 174.365C128.668 174.365 129.528 173.505 129.528 172.444C129.528 171.383 128.668 170.523 127.607 170.523C126.546 170.523 125.686 171.383 125.686 172.444C125.686 173.505 126.546 174.365 127.607 174.365Z" fill="black"/>
+  <path d="M134.011 174.364C135.072 174.364 135.932 173.504 135.932 172.444C135.932 171.383 135.072 170.523 134.011 170.523C132.95 170.523 132.09 171.383 132.09 172.444C132.09 173.504 132.95 174.364 134.011 174.364Z" fill="black"/>
+  <path d="M140.415 174.364C141.476 174.364 142.336 173.504 142.336 172.444C142.336 171.383 141.476 170.523 140.415 170.523C139.355 170.523 138.495 171.383 138.495 172.444C138.495 173.504 139.355 174.364 140.415 174.364Z" fill="black"/>
+  <path d="M146.815 174.365C147.876 174.365 148.736 173.505 148.736 172.444C148.736 171.383 147.876 170.523 146.815 170.523C145.754 170.523 144.894 171.383 144.894 172.444C144.894 173.505 145.754 174.365 146.815 174.365Z" fill="black"/>
+  <path d="M166.025 174.364C167.086 174.364 167.946 173.504 167.946 172.444C167.946 171.383 167.086 170.523 166.025 170.523C164.964 170.523 164.104 171.383 164.104 172.444C164.104 173.504 164.964 174.364 166.025 174.364Z" fill="black"/>
+  <path d="M172.427 174.365C173.488 174.365 174.348 173.505 174.348 172.444C174.348 171.383 173.488 170.523 172.427 170.523C171.366 170.523 170.506 171.383 170.506 172.444C170.506 173.505 171.366 174.365 172.427 174.365Z" fill="black"/>
+  <path d="M178.832 174.365C179.893 174.365 180.753 173.505 180.753 172.444C180.753 171.383 179.893 170.523 178.832 170.523C177.771 170.523 176.911 171.383 176.911 172.444C176.911 173.505 177.771 174.365 178.832 174.365Z" fill="black"/>
+  <path d="M185.233 174.364C186.294 174.364 187.154 173.504 187.154 172.444C187.154 171.383 186.294 170.523 185.233 170.523C184.172 170.523 183.312 171.383 183.312 172.444C183.312 173.504 184.172 174.364 185.233 174.364Z" fill="black"/>
+  <path d="M191.637 174.365C192.697 174.365 193.557 173.505 193.557 172.444C193.557 171.383 192.697 170.523 191.637 170.523C190.576 170.523 189.716 171.383 189.716 172.444C189.716 173.505 190.576 174.365 191.637 174.365Z" fill="black"/>
+  <path d="M198.039 174.365C199.1 174.365 199.96 173.505 199.96 172.444C199.96 171.383 199.1 170.523 198.039 170.523C196.979 170.523 196.119 171.383 196.119 172.444C196.119 173.505 196.979 174.365 198.039 174.365Z" fill="black"/>
+  <path d="M204.44 174.364C205.501 174.364 206.361 173.504 206.361 172.444C206.361 171.383 205.501 170.523 204.44 170.523C203.379 170.523 202.519 171.383 202.519 172.444C202.519 173.504 203.379 174.364 204.44 174.364Z" fill="black"/>
+  <path d="M217.248 174.365C218.309 174.365 219.169 173.505 219.169 172.444C219.169 171.383 218.309 170.523 217.248 170.523C216.187 170.523 215.327 171.383 215.327 172.444C215.327 173.505 216.187 174.365 217.248 174.365Z" fill="black"/>
+  <path d="M69.9832 180.767C71.044 180.767 71.904 179.907 71.904 178.846C71.904 177.786 71.044 176.926 69.9832 176.926C68.9223 176.926 68.0623 177.786 68.0623 178.846C68.0623 179.907 68.9223 180.767 69.9832 180.767Z" fill="black"/>
+  <path d="M76.3877 180.767C77.4485 180.767 78.3085 179.907 78.3085 178.846C78.3085 177.785 77.4485 176.926 76.3877 176.926C75.3268 176.926 74.4668 177.785 74.4668 178.846C74.4668 179.907 75.3268 180.767 76.3877 180.767Z" fill="black"/>
+  <path d="M82.7871 180.767C83.848 180.767 84.7079 179.907 84.7079 178.846C84.7079 177.785 83.848 176.925 82.7871 176.925C81.7263 176.925 80.8663 177.785 80.8663 178.846C80.8663 179.907 81.7263 180.767 82.7871 180.767Z" fill="black"/>
+  <path d="M101.994 180.767C103.055 180.767 103.915 179.907 103.915 178.846C103.915 177.785 103.055 176.925 101.994 176.925C100.934 176.925 100.074 177.785 100.074 178.846C100.074 179.907 100.934 180.767 101.994 180.767Z" fill="black"/>
+  <path d="M108.4 180.767C109.461 180.767 110.321 179.907 110.321 178.846C110.321 177.786 109.461 176.926 108.4 176.926C107.339 176.926 106.479 177.786 106.479 178.846C106.479 179.907 107.339 180.767 108.4 180.767Z" fill="black"/>
+  <path d="M153.219 180.767C154.28 180.767 155.14 179.907 155.14 178.846C155.14 177.785 154.28 176.926 153.219 176.926C152.158 176.926 151.298 177.785 151.298 178.846C151.298 179.907 152.158 180.767 153.219 180.767Z" fill="black"/>
+  <path d="M166.025 180.767C167.086 180.767 167.946 179.907 167.946 178.846C167.946 177.785 167.086 176.925 166.025 176.925C164.964 176.925 164.104 177.785 164.104 178.846C164.104 179.907 164.964 180.767 166.025 180.767Z" fill="black"/>
+  <path d="M172.427 180.767C173.488 180.767 174.348 179.907 174.348 178.846C174.348 177.785 173.488 176.926 172.427 176.926C171.366 176.926 170.506 177.785 170.506 178.846C170.506 179.907 171.366 180.767 172.427 180.767Z" fill="black"/>
+  <path d="M198.039 180.767C199.1 180.767 199.96 179.907 199.96 178.846C199.96 177.785 199.1 176.925 198.039 176.925C196.979 176.925 196.119 177.785 196.119 178.846C196.119 179.907 196.979 180.767 198.039 180.767Z" fill="black"/>
+  <path d="M210.845 180.767C211.905 180.767 212.765 179.907 212.765 178.846C212.765 177.785 211.905 176.926 210.845 176.926C209.784 176.926 208.924 177.785 208.924 178.846C208.924 179.907 209.784 180.767 210.845 180.767Z" fill="black"/>
+  <path d="M223.649 180.767C224.71 180.767 225.57 179.907 225.57 178.846C225.57 177.785 224.71 176.925 223.649 176.925C222.588 176.925 221.728 177.785 221.728 178.846C221.728 179.907 222.588 180.767 223.649 180.767Z" fill="black"/>
+  <path d="M69.9832 187.169C71.044 187.169 71.904 186.309 71.904 185.248C71.904 184.188 71.044 183.328 69.9832 183.328C68.9223 183.328 68.0623 184.188 68.0623 185.248C68.0623 186.309 68.9223 187.169 69.9832 187.169Z" fill="black"/>
+  <path d="M82.7871 187.169C83.848 187.169 84.7079 186.309 84.7079 185.248C84.7079 184.187 83.848 183.327 82.7871 183.327C81.7263 183.327 80.8663 184.187 80.8663 185.248C80.8663 186.309 81.7263 187.169 82.7871 187.169Z" fill="black"/>
+  <path d="M101.994 187.169C103.055 187.169 103.915 186.309 103.915 185.248C103.915 184.187 103.055 183.327 101.994 183.327C100.934 183.327 100.074 184.187 100.074 185.248C100.074 186.309 100.934 187.169 101.994 187.169Z" fill="black"/>
+  <path d="M114.803 187.169C115.864 187.169 116.724 186.309 116.724 185.248C116.724 184.188 115.864 183.328 114.803 183.328C113.742 183.328 112.882 184.188 112.882 185.248C112.882 186.309 113.742 187.169 114.803 187.169Z" fill="black"/>
+  <path d="M121.208 187.169C122.269 187.169 123.129 186.309 123.129 185.248C123.129 184.187 122.269 183.327 121.208 183.327C120.147 183.327 119.287 184.187 119.287 185.248C119.287 186.309 120.147 187.169 121.208 187.169Z" fill="black"/>
+  <path d="M127.607 187.169C128.668 187.169 129.528 186.309 129.528 185.248C129.528 184.187 128.668 183.327 127.607 183.327C126.546 183.327 125.686 184.187 125.686 185.248C125.686 186.309 126.546 187.169 127.607 187.169Z" fill="black"/>
+  <path d="M140.415 187.169C141.476 187.169 142.336 186.309 142.336 185.248C142.336 184.187 141.476 183.327 140.415 183.327C139.355 183.327 138.495 184.187 138.495 185.248C138.495 186.309 139.355 187.169 140.415 187.169Z" fill="black"/>
+  <path d="M172.427 187.169C173.488 187.169 174.348 186.309 174.348 185.248C174.348 184.187 173.488 183.327 172.427 183.327C171.366 183.327 170.506 184.187 170.506 185.248C170.506 186.309 171.366 187.169 172.427 187.169Z" fill="black"/>
+  <path d="M185.233 187.169C186.294 187.169 187.154 186.309 187.154 185.248C187.154 184.187 186.294 183.327 185.233 183.327C184.172 183.327 183.312 184.187 183.312 185.248C183.312 186.309 184.172 187.169 185.233 187.169Z" fill="black"/>
+  <path d="M198.039 187.169C199.1 187.169 199.96 186.309 199.96 185.248C199.96 184.187 199.1 183.327 198.039 183.327C196.979 183.327 196.119 184.187 196.119 185.248C196.119 186.309 196.979 187.169 198.039 187.169Z" fill="black"/>
+  <path d="M223.649 187.169C224.71 187.169 225.57 186.309 225.57 185.248C225.57 184.187 224.71 183.327 223.649 183.327C222.588 183.327 221.728 184.187 221.728 185.248C221.728 186.309 222.588 187.169 223.649 187.169Z" fill="black"/>
+  <path d="M69.9832 193.573C71.044 193.573 71.904 192.713 71.904 191.652C71.904 190.591 71.044 189.731 69.9832 189.731C68.9223 189.731 68.0623 190.591 68.0623 191.652C68.0623 192.713 68.9223 193.573 69.9832 193.573Z" fill="black"/>
+  <path d="M89.1921 193.573C90.2529 193.573 91.1129 192.713 91.1129 191.652C91.1129 190.591 90.2529 189.731 89.1921 189.731C88.1313 189.731 87.2713 190.591 87.2713 191.652C87.2713 192.713 88.1313 193.573 89.1921 193.573Z" fill="black"/>
+  <path d="M95.5957 193.573C96.6565 193.573 97.5165 192.713 97.5165 191.652C97.5165 190.591 96.6565 189.731 95.5957 189.731C94.5348 189.731 93.6748 190.591 93.6748 191.652C93.6748 192.713 94.5348 193.573 95.5957 193.573Z" fill="black"/>
+  <path d="M108.4 193.573C109.461 193.573 110.321 192.713 110.321 191.652C110.321 190.591 109.461 189.731 108.4 189.731C107.339 189.731 106.479 190.591 106.479 191.652C106.479 192.713 107.339 193.573 108.4 193.573Z" fill="black"/>
+  <path d="M114.803 193.573C115.864 193.573 116.724 192.713 116.724 191.652C116.724 190.591 115.864 189.731 114.803 189.731C113.742 189.731 112.882 190.591 112.882 191.652C112.882 192.713 113.742 193.573 114.803 193.573Z" fill="black"/>
+  <path d="M121.208 193.573C122.269 193.573 123.129 192.713 123.129 191.652C123.129 190.591 122.269 189.731 121.208 189.731C120.147 189.731 119.287 190.591 119.287 191.652C119.287 192.713 120.147 193.573 121.208 193.573Z" fill="black"/>
+  <path d="M146.815 193.573C147.876 193.573 148.736 192.713 148.736 191.652C148.736 190.591 147.876 189.731 146.815 189.731C145.754 189.731 144.894 190.591 144.894 191.652C144.894 192.713 145.754 193.573 146.815 193.573Z" fill="black"/>
+  <path d="M153.219 193.573C154.28 193.573 155.14 192.713 155.14 191.652C155.14 190.591 154.28 189.731 153.219 189.731C152.158 189.731 151.298 190.591 151.298 191.652C151.298 192.713 152.158 193.573 153.219 193.573Z" fill="black"/>
+  <path d="M166.025 193.573C167.086 193.573 167.946 192.713 167.946 191.652C167.946 190.591 167.086 189.731 166.025 189.731C164.964 189.731 164.104 190.591 164.104 191.652C164.104 192.713 164.964 193.573 166.025 193.573Z" fill="black"/>
+  <path d="M172.427 193.573C173.488 193.573 174.348 192.713 174.348 191.652C174.348 190.591 173.488 189.731 172.427 189.731C171.366 189.731 170.506 190.591 170.506 191.652C170.506 192.713 171.366 193.573 172.427 193.573Z" fill="black"/>
+  <path d="M198.039 193.573C199.1 193.573 199.96 192.713 199.96 191.652C199.96 190.591 199.1 189.731 198.039 189.731C196.979 189.731 196.119 190.591 196.119 191.652C196.119 192.713 196.979 193.573 198.039 193.573Z" fill="black"/>
+  <path d="M217.248 193.573C218.309 193.573 219.169 192.713 219.169 191.652C219.169 190.591 218.309 189.731 217.248 189.731C216.187 189.731 215.327 190.591 215.327 191.652C215.327 192.713 216.187 193.573 217.248 193.573Z" fill="black"/>
+  <path d="M223.649 193.573C224.71 193.573 225.57 192.713 225.57 191.652C225.57 190.591 224.71 189.731 223.649 189.731C222.588 189.731 221.728 190.591 221.728 191.652C221.728 192.713 222.588 193.573 223.649 193.573Z" fill="black"/>
+  <path d="M89.1921 199.975C90.2529 199.975 91.1129 199.115 91.1129 198.054C91.1129 196.993 90.2529 196.133 89.1921 196.133C88.1313 196.133 87.2713 196.993 87.2713 198.054C87.2713 199.115 88.1313 199.975 89.1921 199.975Z" fill="black"/>
+  <path d="M108.4 199.975C109.461 199.975 110.321 199.115 110.321 198.054C110.321 196.993 109.461 196.133 108.4 196.133C107.339 196.133 106.479 196.993 106.479 198.054C106.479 199.115 107.339 199.975 108.4 199.975Z" fill="black"/>
+  <path d="M140.415 199.975C141.476 199.975 142.336 199.115 142.336 198.054C142.336 196.993 141.476 196.133 140.415 196.133C139.355 196.133 138.495 196.993 138.495 198.054C138.495 199.115 139.355 199.975 140.415 199.975Z" fill="black"/>
+  <path d="M146.815 199.975C147.876 199.975 148.736 199.115 148.736 198.054C148.736 196.993 147.876 196.133 146.815 196.133C145.754 196.133 144.894 196.993 144.894 198.054C144.894 199.115 145.754 199.975 146.815 199.975Z" fill="black"/>
+  <path d="M153.219 199.975C154.28 199.975 155.14 199.115 155.14 198.054C155.14 196.993 154.28 196.133 153.219 196.133C152.158 196.133 151.298 196.993 151.298 198.054C151.298 199.115 152.158 199.975 153.219 199.975Z" fill="black"/>
+  <path d="M166.025 199.975C167.086 199.975 167.946 199.115 167.946 198.054C167.946 196.993 167.086 196.133 166.025 196.133C164.964 196.133 164.104 196.993 164.104 198.054C164.104 199.115 164.964 199.975 166.025 199.975Z" fill="black"/>
+  <path d="M172.427 199.975C173.488 199.975 174.348 199.115 174.348 198.054C174.348 196.993 173.488 196.133 172.427 196.133C171.366 196.133 170.506 196.993 170.506 198.054C170.506 199.115 171.366 199.975 172.427 199.975Z" fill="black"/>
+  <path d="M178.832 199.975C179.893 199.975 180.753 199.115 180.753 198.054C180.753 196.993 179.893 196.133 178.832 196.133C177.771 196.133 176.911 196.993 176.911 198.054C176.911 199.115 177.771 199.975 178.832 199.975Z" fill="black"/>
+  <path d="M185.233 199.975C186.294 199.975 187.154 199.115 187.154 198.054C187.154 196.993 186.294 196.133 185.233 196.133C184.172 196.133 183.312 196.993 183.312 198.054C183.312 199.115 184.172 199.975 185.233 199.975Z" fill="black"/>
+  <path d="M191.637 199.975C192.697 199.975 193.557 199.115 193.557 198.054C193.557 196.993 192.697 196.133 191.637 196.133C190.576 196.133 189.716 196.993 189.716 198.054C189.716 199.115 190.576 199.975 191.637 199.975Z" fill="black"/>
+  <path d="M198.039 199.975C199.1 199.975 199.96 199.115 199.96 198.054C199.96 196.993 199.1 196.133 198.039 196.133C196.979 196.133 196.119 196.993 196.119 198.054C196.119 199.115 196.979 199.975 198.039 199.975Z" fill="black"/>
+  <path d="M204.44 199.975C205.501 199.975 206.361 199.115 206.361 198.054C206.361 196.993 205.501 196.133 204.44 196.133C203.379 196.133 202.519 196.993 202.519 198.054C202.519 199.115 203.379 199.975 204.44 199.975Z" fill="black"/>
+  <path d="M76.3877 206.378C77.4485 206.378 78.3085 205.518 78.3085 204.457C78.3085 203.397 77.4485 202.537 76.3877 202.537C75.3268 202.537 74.4668 203.397 74.4668 204.457C74.4668 205.518 75.3268 206.378 76.3877 206.378Z" fill="black"/>
+  <path d="M82.7871 206.378C83.848 206.378 84.7079 205.518 84.7079 204.457C84.7079 203.396 83.848 202.536 82.7871 202.536C81.7263 202.536 80.8663 203.396 80.8663 204.457C80.8663 205.518 81.7263 206.378 82.7871 206.378Z" fill="black"/>
+  <path d="M95.5957 206.378C96.6565 206.378 97.5165 205.518 97.5165 204.457C97.5165 203.397 96.6565 202.537 95.5957 202.537C94.5348 202.537 93.6748 203.397 93.6748 204.457C93.6748 205.518 94.5348 206.378 95.5957 206.378Z" fill="black"/>
+  <path d="M101.994 206.378C103.055 206.378 103.915 205.518 103.915 204.457C103.915 203.397 103.055 202.537 101.994 202.537C100.934 202.537 100.074 203.397 100.074 204.457C100.074 205.518 100.934 206.378 101.994 206.378Z" fill="black"/>
+  <path d="M114.803 206.378C115.864 206.378 116.724 205.518 116.724 204.457C116.724 203.396 115.864 202.536 114.803 202.536C113.742 202.536 112.882 203.396 112.882 204.457C112.882 205.518 113.742 206.378 114.803 206.378Z" fill="black"/>
+  <path d="M127.607 206.378C128.668 206.378 129.528 205.518 129.528 204.457C129.528 203.397 128.668 202.537 127.607 202.537C126.546 202.537 125.686 203.397 125.686 204.457C125.686 205.518 126.546 206.378 127.607 206.378Z" fill="black"/>
+  <path d="M134.011 206.378C135.072 206.378 135.932 205.518 135.932 204.457C135.932 203.396 135.072 202.536 134.011 202.536C132.95 202.536 132.09 203.396 132.09 204.457C132.09 205.518 132.95 206.378 134.011 206.378Z" fill="black"/>
+  <path d="M153.219 206.378C154.28 206.378 155.14 205.518 155.14 204.457C155.14 203.397 154.28 202.537 153.219 202.537C152.158 202.537 151.298 203.397 151.298 204.457C151.298 205.518 152.158 206.378 153.219 206.378Z" fill="black"/>
+  <path d="M166.025 206.378C167.086 206.378 167.946 205.518 167.946 204.457C167.946 203.396 167.086 202.536 166.025 202.536C164.964 202.536 164.104 203.396 164.104 204.457C164.104 205.518 164.964 206.378 166.025 206.378Z" fill="black"/>
+  <path d="M178.832 206.378C179.893 206.378 180.753 205.518 180.753 204.457C180.753 203.397 179.893 202.537 178.832 202.537C177.771 202.537 176.911 203.397 176.911 204.457C176.911 205.518 177.771 206.378 178.832 206.378Z" fill="black"/>
+  <path d="M191.637 206.378C192.697 206.378 193.557 205.518 193.557 204.457C193.557 203.397 192.697 202.537 191.637 202.537C190.576 202.537 189.716 203.397 189.716 204.457C189.716 205.518 190.576 206.378 191.637 206.378Z" fill="black"/>
+  <path d="M198.039 206.378C199.1 206.378 199.96 205.518 199.96 204.457C199.96 203.397 199.1 202.537 198.039 202.537C196.979 202.537 196.119 203.397 196.119 204.457C196.119 205.518 196.979 206.378 198.039 206.378Z" fill="black"/>
+  <path d="M204.44 206.378C205.501 206.378 206.361 205.518 206.361 204.457C206.361 203.396 205.501 202.536 204.44 202.536C203.379 202.536 202.519 203.396 202.519 204.457C202.519 205.518 203.379 206.378 204.44 206.378Z" fill="black"/>
+  <path d="M210.845 206.378C211.905 206.378 212.765 205.518 212.765 204.457C212.765 203.397 211.905 202.537 210.845 202.537C209.784 202.537 208.924 203.397 208.924 204.457C208.924 205.518 209.784 206.378 210.845 206.378Z" fill="black"/>
+  <path d="M217.248 206.378C218.309 206.378 219.169 205.518 219.169 204.457C219.169 203.397 218.309 202.537 217.248 202.537C216.187 202.537 215.327 203.397 215.327 204.457C215.327 205.518 216.187 206.378 217.248 206.378Z" fill="black"/>
+  <path d="M69.9832 212.781C71.044 212.781 71.904 211.921 71.904 210.86C71.904 209.799 71.044 208.939 69.9832 208.939C68.9223 208.939 68.0623 209.799 68.0623 210.86C68.0623 211.921 68.9223 212.781 69.9832 212.781Z" fill="black"/>
+  <path d="M76.3877 212.781C77.4485 212.781 78.3085 211.921 78.3085 210.86C78.3085 209.799 77.4485 208.939 76.3877 208.939C75.3268 208.939 74.4668 209.799 74.4668 210.86C74.4668 211.921 75.3268 212.781 76.3877 212.781Z" fill="black"/>
+  <path d="M89.1921 212.781C90.2529 212.781 91.1129 211.921 91.1129 210.86C91.1129 209.799 90.2529 208.939 89.1921 208.939C88.1313 208.939 87.2713 209.799 87.2713 210.86C87.2713 211.921 88.1313 212.781 89.1921 212.781Z" fill="black"/>
+  <path d="M108.4 212.781C109.461 212.781 110.321 211.921 110.321 210.86C110.321 209.799 109.461 208.939 108.4 208.939C107.339 208.939 106.479 209.799 106.479 210.86C106.479 211.921 107.339 212.781 108.4 212.781Z" fill="black"/>
+  <path d="M114.803 212.781C115.864 212.781 116.724 211.921 116.724 210.86C116.724 209.799 115.864 208.939 114.803 208.939C113.742 208.939 112.882 209.799 112.882 210.86C112.882 211.921 113.742 212.781 114.803 212.781Z" fill="black"/>
+  <path d="M127.607 212.781C128.668 212.781 129.528 211.921 129.528 210.86C129.528 209.799 128.668 208.939 127.607 208.939C126.546 208.939 125.686 209.799 125.686 210.86C125.686 211.921 126.546 212.781 127.607 212.781Z" fill="black"/>
+  <path d="M134.011 212.781C135.072 212.781 135.932 211.921 135.932 210.86C135.932 209.799 135.072 208.939 134.011 208.939C132.95 208.939 132.09 209.799 132.09 210.86C132.09 211.921 132.95 212.781 134.011 212.781Z" fill="black"/>
+  <path d="M146.815 212.781C147.876 212.781 148.736 211.921 148.736 210.86C148.736 209.799 147.876 208.939 146.815 208.939C145.754 208.939 144.894 209.799 144.894 210.86C144.894 211.921 145.754 212.781 146.815 212.781Z" fill="black"/>
+  <path d="M159.623 212.781C160.684 212.781 161.544 211.921 161.544 210.86C161.544 209.799 160.684 208.939 159.623 208.939C158.563 208.939 157.703 209.799 157.703 210.86C157.703 211.921 158.563 212.781 159.623 212.781Z" fill="black"/>
+  <path d="M172.427 212.781C173.488 212.781 174.348 211.921 174.348 210.86C174.348 209.799 173.488 208.939 172.427 208.939C171.366 208.939 170.506 209.799 170.506 210.86C170.506 211.921 171.366 212.781 172.427 212.781Z" fill="black"/>
+  <path d="M198.039 212.78C199.1 212.78 199.96 211.921 199.96 210.86C199.96 209.799 199.1 208.939 198.039 208.939C196.979 208.939 196.119 209.799 196.119 210.86C196.119 211.921 196.979 212.78 198.039 212.78Z" fill="black"/>
+  <path d="M204.44 212.781C205.501 212.781 206.361 211.921 206.361 210.86C206.361 209.799 205.501 208.939 204.44 208.939C203.379 208.939 202.519 209.799 202.519 210.86C202.519 211.921 203.379 212.781 204.44 212.781Z" fill="black"/>
+  <path d="M217.248 212.781C218.309 212.781 219.169 211.921 219.169 210.86C219.169 209.799 218.309 208.939 217.248 208.939C216.187 208.939 215.327 209.799 215.327 210.86C215.327 211.921 216.187 212.781 217.248 212.781Z" fill="black"/>
+  <path d="M223.649 212.78C224.71 212.78 225.57 211.921 225.57 210.86C225.57 209.799 224.71 208.939 223.649 208.939C222.588 208.939 221.728 209.799 221.728 210.86C221.728 211.921 222.588 212.78 223.649 212.78Z" fill="black"/>
+  <path d="M134.011 219.184C135.072 219.184 135.932 218.324 135.932 217.263C135.932 216.202 135.072 215.342 134.011 215.342C132.95 215.342 132.09 216.202 132.09 217.263C132.09 218.324 132.95 219.184 134.011 219.184Z" fill="black"/>
+  <path d="M140.415 219.184C141.476 219.184 142.336 218.324 142.336 217.263C142.336 216.202 141.476 215.342 140.415 215.342C139.355 215.342 138.495 216.202 138.495 217.263C138.495 218.324 139.355 219.184 140.415 219.184Z" fill="black"/>
+  <path d="M153.219 219.184C154.28 219.184 155.14 218.324 155.14 217.263C155.14 216.203 154.28 215.343 153.219 215.343C152.158 215.343 151.298 216.203 151.298 217.263C151.298 218.324 152.158 219.184 153.219 219.184Z" fill="black"/>
+  <path d="M166.025 219.184C167.086 219.184 167.946 218.324 167.946 217.263C167.946 216.202 167.086 215.342 166.025 215.342C164.964 215.342 164.104 216.202 164.104 217.263C164.104 218.324 164.964 219.184 166.025 219.184Z" fill="black"/>
+  <path d="M172.427 219.184C173.488 219.184 174.348 218.324 174.348 217.263C174.348 216.203 173.488 215.343 172.427 215.343C171.366 215.343 170.506 216.203 170.506 217.263C170.506 218.324 171.366 219.184 172.427 219.184Z" fill="black"/>
+  <path d="M178.832 219.184C179.893 219.184 180.753 218.324 180.753 217.263C180.753 216.203 179.893 215.343 178.832 215.343C177.771 215.343 176.911 216.203 176.911 217.263C176.911 218.324 177.771 219.184 178.832 219.184Z" fill="black"/>
+  <path d="M185.233 219.184C186.294 219.184 187.154 218.324 187.154 217.263C187.154 216.202 186.294 215.342 185.233 215.342C184.172 215.342 183.312 216.202 183.312 217.263C183.312 218.324 184.172 219.184 185.233 219.184Z" fill="black"/>
+  <path d="M204.44 219.184C205.501 219.184 206.361 218.324 206.361 217.263C206.361 216.202 205.501 215.342 204.44 215.342C203.379 215.342 202.519 216.202 202.519 217.263C202.519 218.324 203.379 219.184 204.44 219.184Z" fill="black"/>
+  <path d="M76.3877 225.586C77.4485 225.586 78.3085 224.726 78.3085 223.665C78.3085 222.604 77.4485 221.744 76.3877 221.744C75.3268 221.744 74.4668 222.604 74.4668 223.665C74.4668 224.726 75.3268 225.586 76.3877 225.586Z" fill="black"/>
+  <path d="M82.7871 225.586C83.848 225.586 84.7079 224.726 84.7079 223.665C84.7079 222.604 83.848 221.744 82.7871 221.744C81.7263 221.744 80.8663 222.604 80.8663 223.665C80.8663 224.726 81.7263 225.586 82.7871 225.586Z" fill="black"/>
+  <path d="M89.1921 225.586C90.2529 225.586 91.1129 224.726 91.1129 223.665C91.1129 222.604 90.2529 221.744 89.1921 221.744C88.1313 221.744 87.2713 222.604 87.2713 223.665C87.2713 224.726 88.1313 225.586 89.1921 225.586Z" fill="black"/>
+  <path d="M95.5957 225.586C96.6565 225.586 97.5165 224.726 97.5165 223.665C97.5165 222.604 96.6565 221.744 95.5957 221.744C94.5348 221.744 93.6748 222.604 93.6748 223.665C93.6748 224.726 94.5348 225.586 95.5957 225.586Z" fill="black"/>
+  <path d="M101.994 225.586C103.055 225.586 103.915 224.726 103.915 223.665C103.915 222.604 103.055 221.744 101.994 221.744C100.934 221.744 100.074 222.604 100.074 223.665C100.074 224.726 100.934 225.586 101.994 225.586Z" fill="black"/>
+  <path d="M108.4 225.586C109.461 225.586 110.321 224.726 110.321 223.665C110.321 222.604 109.461 221.744 108.4 221.744C107.339 221.744 106.479 222.604 106.479 223.665C106.479 224.726 107.339 225.586 108.4 225.586Z" fill="black"/>
+  <path d="M114.803 225.586C115.864 225.586 116.724 224.726 116.724 223.665C116.724 222.604 115.864 221.744 114.803 221.744C113.742 221.744 112.882 222.604 112.882 223.665C112.882 224.726 113.742 225.586 114.803 225.586Z" fill="black"/>
+  <path d="M127.607 225.586C128.668 225.586 129.528 224.726 129.528 223.665C129.528 222.604 128.668 221.744 127.607 221.744C126.546 221.744 125.686 222.604 125.686 223.665C125.686 224.726 126.546 225.586 127.607 225.586Z" fill="black"/>
+  <path d="M134.011 225.586C135.072 225.586 135.932 224.726 135.932 223.665C135.932 222.604 135.072 221.744 134.011 221.744C132.95 221.744 132.09 222.604 132.09 223.665C132.09 224.726 132.95 225.586 134.011 225.586Z" fill="black"/>
+  <path d="M153.219 225.586C154.28 225.586 155.14 224.726 155.14 223.665C155.14 222.604 154.28 221.744 153.219 221.744C152.158 221.744 151.298 222.604 151.298 223.665C151.298 224.726 152.158 225.586 153.219 225.586Z" fill="black"/>
+  <path d="M172.427 225.586C173.488 225.586 174.348 224.726 174.348 223.665C174.348 222.604 173.488 221.744 172.427 221.744C171.366 221.744 170.506 222.604 170.506 223.665C170.506 224.726 171.366 225.586 172.427 225.586Z" fill="black"/>
+  <path d="M178.832 225.586C179.893 225.586 180.753 224.726 180.753 223.665C180.753 222.604 179.893 221.744 178.832 221.744C177.771 221.744 176.911 222.604 176.911 223.665C176.911 224.726 177.771 225.586 178.832 225.586Z" fill="black"/>
+  <path d="M198.039 225.586C199.1 225.586 199.96 224.726 199.96 223.665C199.96 222.604 199.1 221.744 198.039 221.744C196.979 221.744 196.119 222.604 196.119 223.665C196.119 224.726 196.979 225.586 198.039 225.586Z" fill="black"/>
+  <path d="M223.649 225.586C224.71 225.586 225.57 224.726 225.57 223.665C225.57 222.604 224.71 221.744 223.649 221.744C222.588 221.744 221.728 222.604 221.728 223.665C221.728 224.726 222.588 225.586 223.649 225.586Z" fill="black"/>
+  <path d="M37.9703 15.9998C25.837 15.9998 16 25.8367 16 37.9701C16 50.1034 25.837 59.9404 37.9703 59.9404C50.1036 59.9404 59.9406 50.1034 59.9406 37.9701C59.9406 25.8367 50.1036 15.9998 37.9703 15.9998ZM37.9703 53.3493C29.4902 53.3493 22.5911 46.4502 22.5911 37.9701C22.5911 29.49 29.4902 22.5908 37.9703 22.5908C46.4504 22.5908 53.3495 29.49 53.3495 37.9701C53.3495 46.4502 46.4504 53.3493 37.9703 53.3493Z" fill="black"/>
+  <path d="M204.442 15.9995C192.308 15.9995 182.471 25.8365 182.471 37.9698C182.471 50.1031 192.308 59.9401 204.442 59.9401C216.575 59.9401 226.412 50.1031 226.412 37.9698C226.412 25.8365 216.575 15.9995 204.442 15.9995ZM204.442 53.349C195.962 53.349 189.062 46.4499 189.062 37.9698C189.062 29.4897 195.962 22.5906 204.442 22.5906C212.922 22.5906 219.821 29.4897 219.821 37.9698C219.821 46.4499 212.922 53.349 204.442 53.349Z" fill="black"/>
+  <path d="M37.9705 182.487C25.8372 182.487 16.0002 192.324 16.0002 204.458C16.0002 216.591 25.8372 226.428 37.9705 226.428C50.1039 226.428 59.9408 216.591 59.9408 204.458C59.9408 192.324 50.1039 182.487 37.9705 182.487ZM37.9705 219.837C29.4904 219.837 22.5913 212.938 22.5913 204.458C22.5913 195.978 29.4904 189.078 37.9705 189.078C46.4506 189.078 53.3498 195.978 53.3498 204.458C53.3498 212.938 46.4506 219.837 37.9705 219.837Z" fill="black"/>
+  <path d="M37.7815 47.1968C42.9817 47.1968 47.1973 42.9812 47.1973 37.781C47.1973 32.5808 42.9817 28.3652 37.7815 28.3652C32.5813 28.3652 28.3657 32.5808 28.3657 37.781C28.3657 42.9812 32.5813 47.1968 37.7815 47.1968Z" fill="black"/>
+  <path d="M204.253 47.197C209.453 47.197 213.668 42.9814 213.668 37.7812C213.668 32.5809 209.453 28.3653 204.253 28.3653C199.052 28.3653 194.837 32.5809 194.837 37.7812C194.837 42.9814 199.052 47.197 204.253 47.197Z" fill="black"/>
+  <path d="M37.7815 213.685C42.9817 213.685 47.1973 209.469 47.1973 204.269C47.1973 199.069 42.9817 194.853 37.7815 194.853C32.5813 194.853 28.3657 199.069 28.3657 204.269C28.3657 209.469 32.5813 213.685 37.7815 213.685Z" fill="black"/>
+  <rect x="85.9905" y="88.6589" width="70.4305" height="65.0949" fill="url(#pattern0_1_4)"/>
+  <defs>
+    <pattern id="pattern0_1_4" patternContentUnits="objectBoundingBox" width="1" height="1">
+      <use xlink:href="#image0_1_4" transform="scale(0.00227273 0.002457)"/>
+    </pattern>
+    <image id="image0_1_4" width="440" height="407" xlink:href="data:image/png;base64,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"/>
+  </defs>
+</svg>
diff --git a/src/tailwind.css b/src/tailwind.css
new file mode 100644
index 0000000..df1487c
--- /dev/null
+++ b/src/tailwind.css
@@ -0,0 +1,3 @@
+@tailwind utilities;
+@tailwind components;
+@tailwind base;
diff --git a/src/theme.css b/src/theme.css
index 6bb141a..274964d 100644
--- a/src/theme.css
+++ b/src/theme.css
@@ -1,8 +1,282 @@
 @import url("https://fonts.googleapis.com/css2?family=Barlow:wght@500;600&display=swap");
 
-@tailwind utilities;
-@tailwind components;
-@tailwind base;
+@import "tailwindcss/utilities.css";
+@import "tailwindcss/components.css";
+@import "tailwindcss/base.css";
+
+/* TODO we need to export styles from x-ui with :host selector in order to work with shadow dom */
+/* https://github.com/argentlabs/x-ui/pull/215 */
+/*@import "@argent/x-ui/dist/styles/tailwind.css";*/
+
+/*!** This file is auto-generated by `pnpm gen:tokens` *!*/
+:host {
+  /** base color tokens */
+  --color-50: 255, 255, 255, 0.5;
+  --color-400: 140 140 140;
+  --color-800: 38 38 38;
+  --color-900: 31 31 31;
+  --color-accessible-orange: 243 106 61;
+  --color-black-100: 0 0 0;
+  --color-black-50: 0, 0, 0, 0.5;
+  --color-black-30: 0, 0, 0, 0.3;
+  --color-black-6: 0, 0, 0, 0.06;
+  --color-black-4: 0, 0, 0, 0.04;
+  --color-black-12: 0, 0, 0, 0.12;
+  --color-black-0: 0, 0, 0, 0;
+  --color-deprecated-accent-accessible-green: 2 166 151;
+  --color-deprecated-accent-accessible-yellow: 255 171 0;
+  --color-deprecated-accent-green: 2 187 168;
+  --color-deprecated-accent-hot-pink: 255 91 129;
+  --color-deprecated-accent-yellow: 255 191 61;
+  --color-deprecated-black: 0 0 0;
+  --color-deprecated-neutrals-100: 249 249 249;
+  --color-deprecated-neutrals-200: 240 240 240;
+  --color-deprecated-neutrals-300: 191 191 191;
+  --color-deprecated-neutrals-500: 102 102 102;
+  --color-deprecated-neutrals-600: 89 89 89;
+  --color-deprecated-neutrals-700: 64 64 64;
+  --color-deprecated-neutrals-1000: 15 15 15;
+  --color-deprecated-primary-orange: 255 135 91;
+  --color-deprecated-white: 255 255 255;
+  --color-neutrals-100: 249 249 249;
+  --color-neutrals-200: 240 240 240;
+  --color-neutrals-300: 191 191 191;
+  --color-neutrals-400: 140 140 140;
+  --color-neutrals-500: 102 102 102;
+  --color-neutrals-600: 89 89 89;
+  --color-neutrals-700: 64 64 64;
+  --color-neutrals-800: 46 46 46;
+  --color-neutrals-900: 36 36 36;
+  --color-neutrals-1000: 23 23 23;
+  --color-primary-blue-200: 203 241 255;
+  --color-primary-blue-400: 41 197 255;
+  --color-primary-blue-600: 0 157 214;
+  --color-primary-blue-800: 0 120 164;
+  --color-primary-blue-1000: 7 49 68;
+  --color-primary-green-200: 206 255 243;
+  --color-primary-green-400: 44 211 169;
+  --color-primary-green-600: 2 161 122;
+  --color-primary-green-800: 10 77 59;
+  --color-primary-green-1000: 4 36 16;
+  --color-primary-orange-200: 255 203 184;
+  --color-primary-orange-400: 255 135 91;
+  --color-primary-orange-600: 243 106 61;
+  --color-primary-orange-800: 128 56 32;
+  --color-primary-orange-1000: 55 23 9;
+  --color-primary-orange-300: 255 158 122;
+  --color-primary-orange-18: 255, 135, 91, 0.18;
+  --color-primary-orange-6: 255, 135, 91, 0.06;
+  --color-primary-red-200: 255 221 225;
+  --color-primary-red-400: 233 95 114;
+  --color-primary-red-600: 219 59 78;
+  --color-primary-red-800: 99 9 21;
+  --color-primary-red-1000: 51 1 5;
+  --color-primary-red-dark: 193 32 38;
+  --color-primary-yellow-200: 252 239 211;
+  --color-primary-yellow-400: 255 191 61;
+  --color-primary-yellow-600: 255 171 0;
+  --color-primary-yellow-800: 241 159 0;
+  --color-primary-yellow-1000: 63 45 12;
+  --color-secondary-clementine: 255 168 92;
+  --color-secondary-coral: 255 103 92;
+  --color-secondary-hot-pink: 255 91 129;
+  --color-secondary-sky-blue: 41 197 255;
+  --color-white-100: 255 255 255;
+  --color-white-50: 255, 255, 255, 0.5;
+  --color-white-30: 255, 255, 255, 0.3;
+  --color-white-12: 255, 255, 255, 0.12;
+  --color-white-6: 255, 255, 255, 0.06;
+  --color-white-18: 255, 255, 255, 0.18;
+  --color-white-0: 255, 255, 255, 0;
+
+  /** semantic color tokens */
+  --color-accent-blue: rgba(var(--color-primary-blue-600));
+  --color-accent-brand: rgba(var(--color-primary-orange-400));
+  --color-accent-coral: rgba(var(--color-secondary-coral));
+  --color-accent-green: rgba(var(--color-primary-green-400));
+  --color-accent-hot-pink: rgba(var(--color-secondary-hot-pink));
+  --color-accent-orange: rgba(var(--color-secondary-clementine));
+  --color-accent-red: rgba(var(--color-primary-red-600));
+  --color-accent-sky-blue: rgba(var(--color-secondary-sky-blue));
+  --color-accent-yellow: rgba(var(--color-primary-yellow-400));
+  --color-button-danger: rgba(var(--color-primary-red-600));
+  --color-button-danger-hover: rgba(var(--color-primary-red-400));
+  --color-button-info: rgba(var(--color-primary-blue-800));
+  --color-button-info-hover: rgba(var(--color-primary-blue-600));
+  --color-button-pressed-overlay: rgba(var(--color-black-12));
+  --color-button-primary: rgba(var(--color-primary-orange-400));
+  --color-button-primary-hover: rgba(var(--color-primary-orange-300));
+  --color-button-secondary: rgba(var(--color-black-6));
+  --color-button-secondary-hover: rgba(var(--color-black-12));
+  --color-button-tertiary: rgba(var(--color-black-0));
+  --color-button-tertiary-hover: rgba(var(--color-primary-orange-6));
+  --color-button-tertiary-pressed: rgba(var(--color-primary-orange-18));
+  --color-button-warning: rgba(var(--color-primary-yellow-800));
+  --color-button-warning-hover: rgba(var(--color-primary-yellow-400));
+  --color-icon-adaptive: rgba(var(--color-white-100));
+  --color-icon-background: rgba(var(--color-black-6));
+  --color-icon-background-brand: rgba(var(--color-primary-orange-400));
+  --color-icon-brand: rgba(var(--color-primary-orange-600));
+  --color-icon-danger: rgba(var(--color-primary-red-600));
+  --color-icon-default: rgba(var(--color-neutrals-700));
+  --color-icon-info: rgba(var(--color-primary-blue-600));
+  --color-icon-secondary: rgba(var(--color-neutrals-400));
+  --color-icon-stable: rgba(var(--color-white-100));
+  --color-icon-subtle: rgba(var(--color-neutrals-300));
+  --color-icon-success: rgba(var(--color-primary-green-600));
+  --color-icon-warning: rgba(var(--color-primary-yellow-800));
+  --color-ios-icon: rgb(80, 85, 92);
+  --color-ios-keyboard-button: rgb(0, 122, 255);
+  --color-ios-primary: rgb(0, 122, 255);
+  --color-ios-surface-dark: rgb(172, 180, 190);
+  --color-ios-surface-default: rgba(210, 213, 219, 0.9);
+  --color-ios-surface-elevated: rgb(255, 255, 255);
+  --color-ios-text: rgb(0, 0, 0);
+  --color-ios-text-inverted: rgb(255, 255, 255);
+  --color-shadow-default: rgba(var(--color-black-6));
+  --color-shadow-strong: rgba(var(--color-black-30));
+  --color-stroke-brand: rgba(var(--color-primary-orange-600));
+  --color-stroke-danger: rgba(var(--color-primary-red-600));
+  --color-stroke-default: rgba(var(--color-neutrals-200));
+  --color-stroke-default-web: rgba(var(--color-neutrals-200));
+  --color-stroke-focused: rgba(var(--color-black-30));
+  --color-stroke-subtle: rgba(var(--color-black-6));
+  --color-surface-brand: rgba(var(--color-primary-orange-400));
+  --color-surface-danger-default: rgba(var(--color-primary-red-200));
+  --color-surface-danger-vibrant: rgba(var(--color-primary-red-600));
+  --color-surface-default: rgba(var(--color-neutrals-100));
+  --color-surface-default-web: rgba(var(--color-neutrals-100));
+  --color-surface-elevated: rgba(var(--color-white-100));
+  --color-surface-elevated-web: rgba(var(--color-neutrals-200));
+  --color-surface-info-default: rgba(var(--color-primary-blue-200));
+  --color-surface-info-vibrant: rgba(var(--color-primary-blue-400));
+  --color-surface-input: rgba(var(--color-black-4));
+  --color-surface-inverted: rgba(var(--color-black-100));
+  --color-surface-match-mode: rgba(var(--color-white-100));
+  --color-surface-pressed-overlay: rgba(var(--color-black-12));
+  --color-surface-stable-dark: rgba(var(--color-black-100));
+  --color-surface-stable-light: rgba(var(--color-white-100));
+  --color-surface-success-default: rgba(var(--color-primary-green-200));
+  --color-surface-success-vibrant: rgba(var(--color-primary-green-400));
+  --color-surface-sunken: rgba(var(--color-neutrals-200));
+  --color-surface-text: rgba(var(--color-primary-orange-200));
+  --color-surface-transparent: rgba(var(--color-black-6));
+  --color-surface-warning-default: rgba(var(--color-primary-yellow-200));
+  --color-surface-warning-vibrant: rgba(var(--color-primary-yellow-800));
+  --color-text-brand: rgba(var(--color-primary-orange-600));
+  --color-text-danger: rgba(var(--color-primary-red-600));
+  --color-text-danger-accessible: rgba(var(--color-primary-red-1000));
+  --color-text-info: rgba(var(--color-primary-blue-600));
+  --color-text-info-accessible: rgba(var(--color-primary-blue-1000));
+  --color-text-link: rgba(var(--color-primary-blue-600));
+  --color-text-primary: rgba(var(--color-neutrals-700));
+  --color-text-secondary: rgba(var(--color-neutrals-400));
+  --color-text-secondary-web: rgba(var(--color-neutrals-500));
+  --color-text-stable: rgba(var(--color-white-100));
+  --color-text-subtle: rgba(var(--color-neutrals-300));
+  --color-text-success: rgba(var(--color-primary-green-600));
+  --color-text-success-accessible: rgba(var(--color-primary-green-1000));
+  --color-text-warning: rgba(var(--color-primary-yellow-800));
+  --color-text-warning-accessible: rgba(var(--color-primary-yellow-1000));
+}
+
+.dark {
+  /** dark theme semantic color tokens */
+  --color-accent-blue: rgba(var(--color-primary-blue-600));
+  --color-accent-brand: rgba(var(--color-primary-orange-600));
+  --color-accent-coral: rgba(var(--color-secondary-coral));
+  --color-accent-green: rgba(var(--color-primary-green-600));
+  --color-accent-hot-pink: rgba(var(--color-secondary-hot-pink));
+  --color-accent-orange: rgba(var(--color-secondary-clementine));
+  --color-accent-red: rgba(var(--color-primary-red-dark));
+  --color-accent-sky-blue: rgba(var(--color-primary-blue-400));
+  --color-accent-yellow: rgba(var(--color-primary-yellow-600));
+  --color-button-danger: rgba(var(--color-primary-red-600));
+  --color-button-danger-hover: rgba(var(--color-primary-red-400));
+  --color-button-info: rgba(var(--color-primary-blue-800));
+  --color-button-info-hover: rgba(var(--color-primary-blue-600));
+  --color-button-pressed-overlay: rgba(var(--color-black-12));
+  --color-button-primary: rgba(var(--color-primary-orange-600));
+  --color-button-primary-hover: rgba(var(--color-primary-orange-400));
+  --color-button-secondary: rgba(var(--color-white-12));
+  --color-button-secondary-hover: rgba(var(--color-white-18));
+  --color-button-tertiary: rgba(var(--color-white-0));
+  --color-button-tertiary-hover: rgba(var(--color-primary-orange-6));
+  --color-button-tertiary-pressed: rgba(var(--color-primary-orange-18));
+  --color-button-warning: rgba(var(--color-primary-yellow-600));
+  --color-button-warning-hover: rgba(var(--color-primary-yellow-400));
+  --color-icon-adaptive: rgba(var(--color-neutrals-1000));
+  --color-icon-background: rgba(var(--color-white-12));
+  --color-icon-background-brand: rgba(var(--color-primary-orange-600));
+  --color-icon-brand: rgba(var(--color-primary-orange-400));
+  --color-icon-danger: rgba(var(--color-primary-red-400));
+  --color-icon-default: rgba(var(--color-white-100));
+  --color-icon-info: rgba(var(--color-primary-blue-400));
+  --color-icon-secondary: rgba(var(--color-neutrals-400));
+  --color-icon-stable: rgba(var(--color-white-100));
+  --color-icon-subtle: rgba(var(--color-neutrals-500));
+  --color-icon-success: rgba(var(--color-primary-green-400));
+  --color-icon-warning: rgba(var(--color-primary-yellow-600));
+  --color-ios-icon: rgb(231, 231, 231);
+  --color-ios-keyboard-button: rgb(36, 36, 36);
+  --color-ios-primary: rgb(0, 122, 255);
+  --color-ios-surface-dark: rgb(36, 36, 36);
+  --color-ios-surface-default: rgba(32, 32, 32, 0.92);
+  --color-ios-surface-elevated: rgb(67, 67, 67);
+  --color-ios-text: rgb(255, 255, 255);
+  --color-ios-text-inverted: rgb(255, 255, 255);
+  --color-shadow-default: rgba(var(--color-black-30));
+  --color-shadow-strong: rgba(var(--color-black-100));
+  --color-stroke-brand: rgba(var(--color-primary-orange-600));
+  --color-stroke-danger: rgba(var(--color-primary-red-400));
+  --color-stroke-default: rgba(var(--color-black-100));
+  --color-stroke-default-web: rgba(var(--color-neutrals-700));
+  --color-stroke-focused: rgba(var(--color-white-30));
+  --color-stroke-subtle: rgba(var(--color-white-12));
+  --color-surface-brand: rgba(var(--color-primary-orange-600));
+  --color-surface-danger-default: rgba(var(--color-primary-red-1000));
+  --color-surface-danger-vibrant: rgba(var(--color-primary-red-600));
+  --color-surface-default: rgba(var(--color-neutrals-1000));
+  --color-surface-default-web: rgba(var(--color-black-100));
+  --color-surface-elevated: rgba(var(--color-neutrals-900));
+  --color-surface-elevated-web: rgba(var(--color-neutrals-900));
+  --color-surface-info-default: rgba(var(--color-primary-blue-1000));
+  --color-surface-info-vibrant: rgba(var(--color-primary-blue-400));
+  --color-surface-input: rgba(var(--color-white-12));
+  --color-surface-inverted: rgba(var(--color-white-100));
+  --color-surface-match-mode: rgba(var(--color-black-100));
+  --color-surface-pressed-overlay: rgba(var(--color-white-18));
+  --color-surface-stable-dark: rgba(var(--color-black-100));
+  --color-surface-stable-light: rgba(var(--color-white-100));
+  --color-surface-success-default: rgba(var(--color-primary-green-800));
+  --color-surface-success-vibrant: rgba(var(--color-primary-green-600));
+  --color-surface-sunken: rgba(var(--color-black-100));
+  --color-surface-text: rgba(var(--color-primary-orange-800));
+  --color-surface-transparent: rgba(var(--color-white-12));
+  --color-surface-warning-default: rgba(var(--color-primary-yellow-1000));
+  --color-surface-warning-vibrant: rgba(var(--color-primary-yellow-600));
+  --color-text-brand: rgba(var(--color-primary-orange-400));
+  --color-text-danger: rgba(var(--color-primary-red-400));
+  --color-text-danger-accessible: rgba(var(--color-primary-red-200));
+  --color-text-info: rgba(var(--color-primary-blue-400));
+  --color-text-info-accessible: rgba(var(--color-primary-blue-200));
+  --color-text-link: rgba(var(--color-primary-blue-400));
+  --color-text-primary: rgba(var(--color-white-100));
+  --color-text-secondary: rgba(var(--color-neutrals-400));
+  --color-text-secondary-web: rgba(var(--color-neutrals-300));
+  --color-text-stable: rgba(var(--color-white-100));
+  --color-text-subtle: rgba(var(--color-neutrals-500));
+  --color-text-success: rgba(var(--color-primary-green-400));
+  --color-text-success-accessible: rgba(var(--color-primary-green-200));
+  --color-text-warning: rgba(var(--color-primary-yellow-600));
+  --color-text-warning-accessible: rgba(var(--color-primary-yellow-200));
+}
+
+
+.test-color {
+  color: yellow;
+  background-color: var(--color-primary-orange-400, green);
+}
 
 .modal-font {
   font-family:
@@ -29,7 +303,7 @@
   font-size: 12px;
   font-weight: 500;
   line-height: 14px;
-  letter-spacing: 0em;
+  letter-spacing: 0;
   text-align: left;
 }
 
diff --git a/tailwind.config.cjs b/tailwind.config.cjs
deleted file mode 100644
index b3a73ef..0000000
--- a/tailwind.config.cjs
+++ /dev/null
@@ -1,14 +0,0 @@
-/** @type {import('tailwindcss').Config} */
-module.exports = {
-  content: ["./src/**/*.{svelte,ts}"],
-  darkMode: "class",
-  theme: {
-    extend: {
-      boxShadow: {
-        "list-item": "0px 2px 12px rgba(0, 0, 0, 0.12)",
-        modal: "0px 4px 20px rgba(0, 0, 0, 0.5)",
-      },
-    },
-  },
-  plugins: [],
-}
diff --git a/tailwind.config.js b/tailwind.config.js
new file mode 100644
index 0000000..a11718e
--- /dev/null
+++ b/tailwind.config.js
@@ -0,0 +1,26 @@
+import { tailwindThemeConfig } from "@argent/x-ui"
+
+/** @type {import('tailwindcss').Config} */
+export default {
+  content: [
+    "./src/**/*.{html,js,svelte,ts}",
+    "./node_modules/@argent/x-ui/**/*.{js,ts,jsx,tsx}",
+  ],
+  darkMode: "class",
+  theme: {
+    extend: {
+      colors: {
+        "primary-orange-400": "var(--color-primary-orange-400)",
+        "surface-default": "var(--color-surface-default)",
+      },
+      fontSize: {
+        ...tailwindThemeConfig.fontSize,
+      },
+      boxShadow: {
+        "list-item": "0px 4px 12px 0px rgba(0, 0, 0, 0.06)",
+        modal: "0px 4px 20px rgba(0, 0, 0, 0.5)",
+      },
+    },
+  },
+  plugins: [],
+}
diff --git a/vite.config.ts b/vite.config.ts
index 7496a07..0e9fd37 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -38,4 +38,20 @@ export default defineConfig({
       insertTypesEntry: true,
     }),
   ],
+  css: {
+    postcss: "./postcss.config.cjs",
+    preprocessorOptions: {
+      css: {
+        additionalData: `@import "@argent/x-ui/styles/tailwind.css";`,
+      },
+    },
+  },
+  resolve: {
+    alias: {
+      "@argent/x-ui/styles": resolve(
+        __dirname,
+        "node_modules/@argent/x-ui/dist/styles",
+      ),
+    },
+  },
 })

From 6560d74560824be6deacbfeee6665c6941b801fa Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 10 Oct 2024 19:57:51 +0200
Subject: [PATCH 02/88] feat: add new 1 button connector WIP

---
 package.json                                  | 18 +++-
 .../{ => argent}/argentMobile/constants.ts    |  0
 .../{ => argent}/argentMobile/index.ts        | 26 ++---
 .../argentMobile/modal/adapter.ts             |  0
 .../argentMobile/modal/argentModal.ts         |  2 +-
 .../argentMobile/modal/getDevice.ts           |  0
 .../{ => argent}/argentMobile/modal/index.ts  |  0
 .../{ => argent}/argentMobile/modal/login.ts  |  4 +-
 .../argentMobile/modal/starknet/account.ts    |  0
 .../argentMobile/modal/starknet/adapter.ts    |  0
 .../argentMobile/modal/starknet/signer.ts     |  0
 .../modal/starknet/starknet.model.ts          |  0
 .../argent/helpers/getInjectedArgentX.ts      |  9 ++
 src/connectors/argent/helpers/inAppBrowser.ts | 15 +++
 .../{argentMobile => argent}/helpers/index.ts |  0
 src/connectors/argent/index.ts                | 83 ++++++++++++++++
 .../argentMobile/helpers/inAppBrowser.ts      | 18 ----
 src/connectors/connector.ts                   | 11 +++
 src/connectors/index.ts                       |  1 -
 src/connectors/injected/argentX.ts            |  7 ++
 src/connectors/injected/braavos.ts            |  7 ++
 src/connectors/injected/index.ts              | 11 +--
 src/helpers/defaultConnectors.ts              | 28 +++---
 src/helpers/mapModalWallets.ts                | 72 ++++++++++----
 src/main.ts                                   | 98 ++++++++++++-------
 src/types/modal.ts                            |  8 +-
 vite.config.ts                                |  4 +-
 27 files changed, 303 insertions(+), 119 deletions(-)
 rename src/connectors/{ => argent}/argentMobile/constants.ts (100%)
 rename src/connectors/{ => argent}/argentMobile/index.ts (90%)
 rename src/connectors/{ => argent}/argentMobile/modal/adapter.ts (100%)
 rename src/connectors/{ => argent}/argentMobile/modal/argentModal.ts (99%)
 rename src/connectors/{ => argent}/argentMobile/modal/getDevice.ts (100%)
 rename src/connectors/{ => argent}/argentMobile/modal/index.ts (100%)
 rename src/connectors/{ => argent}/argentMobile/modal/login.ts (97%)
 rename src/connectors/{ => argent}/argentMobile/modal/starknet/account.ts (100%)
 rename src/connectors/{ => argent}/argentMobile/modal/starknet/adapter.ts (100%)
 rename src/connectors/{ => argent}/argentMobile/modal/starknet/signer.ts (100%)
 rename src/connectors/{ => argent}/argentMobile/modal/starknet/starknet.model.ts (100%)
 create mode 100644 src/connectors/argent/helpers/getInjectedArgentX.ts
 create mode 100644 src/connectors/argent/helpers/inAppBrowser.ts
 rename src/connectors/{argentMobile => argent}/helpers/index.ts (100%)
 create mode 100644 src/connectors/argent/index.ts
 delete mode 100644 src/connectors/argentMobile/helpers/inAppBrowser.ts
 create mode 100644 src/connectors/injected/argentX.ts
 create mode 100644 src/connectors/injected/braavos.ts

diff --git a/package.json b/package.json
index a01af0f..51f6a1a 100644
--- a/package.json
+++ b/package.json
@@ -27,6 +27,11 @@
       "import": "./dist/starknetkit.js",
       "require": "./dist/starknetkit.cjs"
     },
+    "./injected": {
+      "types": "./dist/injectedConnector.d.ts",
+      "import": "./dist/injectedConnector.js",
+      "require": "./dist/injectedConnector.cjs"
+    },
     "./webwallet": {
       "types": "./dist/webwalletConnector.d.ts",
       "import": "./dist/webwalletConnector.js",
@@ -37,10 +42,15 @@
       "import": "./dist/argentMobile.js",
       "require": "./dist/argentMobile.cjs"
     },
-    "./injected": {
-      "types": "./dist/injectedConnector.d.ts",
-      "import": "./dist/injectedConnector.js",
-      "require": "./dist/injectedConnector.cjs"
+    "./argentCompound": {
+      "types": "./dist/argentCompound.d.ts",
+      "import": "./dist/argentCompound.js",
+      "require": "./dist/argentCompound.cjs"
+    },
+    "./braavos": {
+      "types": "./dist/braavos.d.ts",
+      "import": "./dist/braavos.js",
+      "require": "./dist/braavos.cjs"
     },
     "./window": {
       "types": "./dist/window.d.ts",
diff --git a/src/connectors/argentMobile/constants.ts b/src/connectors/argent/argentMobile/constants.ts
similarity index 100%
rename from src/connectors/argentMobile/constants.ts
rename to src/connectors/argent/argentMobile/constants.ts
diff --git a/src/connectors/argentMobile/index.ts b/src/connectors/argent/argentMobile/index.ts
similarity index 90%
rename from src/connectors/argentMobile/index.ts
rename to src/connectors/argent/argentMobile/index.ts
index 54447c4..0382e02 100644
--- a/src/connectors/argentMobile/index.ts
+++ b/src/connectors/argent/argentMobile/index.ts
@@ -17,20 +17,21 @@ import {
   ConnectorNotConnectedError,
   ConnectorNotFoundError,
   UserRejectedRequestError,
-} from "../../errors"
-import { getStarknetChainId } from "../../helpers/getStarknetChainId"
-import { removeStarknetLastConnectedWallet } from "../../helpers/lastConnected"
-import { getRandomPublicRPCNode } from "../../helpers/publicRcpNodes"
-import { resetWalletConnect } from "../../helpers/resetWalletConnect"
+} from "../../../errors"
+import { getStarknetChainId } from "../../../helpers/getStarknetChainId"
+import { removeStarknetLastConnectedWallet } from "../../../helpers/lastConnected"
+import { getRandomPublicRPCNode } from "../../../helpers/publicRcpNodes"
+import { resetWalletConnect } from "../../../helpers/resetWalletConnect"
 import {
   Connector,
   type ConnectorData,
   type ConnectorIcons,
-} from "../connector"
-import { InjectedConnector, InjectedConnectorOptions } from "../injected"
+} from "../../connector"
+import { InjectedConnector, InjectedConnectorOptions } from "../../injected"
 import { DEFAULT_ARGENT_MOBILE_ICON, DEFAULT_PROJECT_ID } from "./constants"
-import { isInArgentMobileAppBrowser } from "./helpers"
+import { isInArgentMobileAppBrowser } from "../helpers"
 import type { StarknetAdapter } from "./modal/starknet/adapter"
+import { ArgentX } from "../../injected/argentX"
 
 export interface ArgentMobileConnectorOptions {
   dappName: string
@@ -40,11 +41,12 @@ export interface ArgentMobileConnectorOptions {
   url: string
   icons?: string[]
   rpcUrl?: string
+  isCompoundConnector?: boolean
 }
 
 export class ArgentMobileBaseConnector extends Connector {
   private _wallet: StarknetWindowObject | null = null
-  private _options: ArgentMobileConnectorOptions
+  private readonly _options: ArgentMobileConnectorOptions
 
   constructor(options: ArgentMobileConnectorOptions) {
     super()
@@ -76,7 +78,7 @@ export class ArgentMobileBaseConnector extends Connector {
   }
 
   get name(): string {
-    return "Argent (mobile)"
+    return this._options.isCompoundConnector ? "Argent" : "Argent (mobile)" // TODO ditch isCompoundConnector
   }
 
   get icon(): ConnectorIcons {
@@ -258,9 +260,7 @@ export class ArgentMobileConnector {
     inAppBrowserOptions,
   }: ArgentMobileConnectorInitParams): Connector {
     if (isInArgentMobileAppBrowser()) {
-      return new InjectedConnector({
-        options: { id: "argentX", ...inAppBrowserOptions },
-      })
+      return new ArgentX(inAppBrowserOptions)
     } else {
       return new ArgentMobileBaseConnector(options)
     }
diff --git a/src/connectors/argentMobile/modal/adapter.ts b/src/connectors/argent/argentMobile/modal/adapter.ts
similarity index 100%
rename from src/connectors/argentMobile/modal/adapter.ts
rename to src/connectors/argent/argentMobile/modal/adapter.ts
diff --git a/src/connectors/argentMobile/modal/argentModal.ts b/src/connectors/argent/argentMobile/modal/argentModal.ts
similarity index 99%
rename from src/connectors/argentMobile/modal/argentModal.ts
rename to src/connectors/argent/argentMobile/modal/argentModal.ts
index 418f4fe..3516782 100644
--- a/src/connectors/argentMobile/modal/argentModal.ts
+++ b/src/connectors/argent/argentMobile/modal/argentModal.ts
@@ -68,7 +68,7 @@ class ArgentModal {
   private popupWindow?: Window
   private closingTimeout?: NodeJS.Timeout
 
-  public showConnectionModal(wcUri: string) {
+  public showWalletConnectModal(wcUri: string) {
     const wcParam = encodeURIComponent(wcUri)
     const href = encodeURIComponent(window.location.href)
 
diff --git a/src/connectors/argentMobile/modal/getDevice.ts b/src/connectors/argent/argentMobile/modal/getDevice.ts
similarity index 100%
rename from src/connectors/argentMobile/modal/getDevice.ts
rename to src/connectors/argent/argentMobile/modal/getDevice.ts
diff --git a/src/connectors/argentMobile/modal/index.ts b/src/connectors/argent/argentMobile/modal/index.ts
similarity index 100%
rename from src/connectors/argentMobile/modal/index.ts
rename to src/connectors/argent/argentMobile/modal/index.ts
diff --git a/src/connectors/argentMobile/modal/login.ts b/src/connectors/argent/argentMobile/modal/login.ts
similarity index 97%
rename from src/connectors/argentMobile/modal/login.ts
rename to src/connectors/argent/argentMobile/modal/login.ts
index c25f88b..8fe03b9 100644
--- a/src/connectors/argentMobile/modal/login.ts
+++ b/src/connectors/argent/argentMobile/modal/login.ts
@@ -8,7 +8,7 @@ const Network: typeof constants.NetworkName = constants.NetworkName
 
 import type { NamespaceAdapter, NamespaceAdapterOptions } from "./adapter"
 import { argentModal } from "./argentModal"
-import { resetWalletConnect } from "../../../helpers/resetWalletConnect"
+import { resetWalletConnect } from "../../../../helpers/resetWalletConnect"
 
 export interface IArgentLoginOptions {
   projectId?: string
@@ -101,7 +101,7 @@ export const login = async <TAdapter extends NamespaceAdapter>(
 
     // Open QRCode modal if a URI was returned (i.e. we're not connecting an existing pairing).
     if (uri) {
-      argentModal.showConnectionModal(uri)
+      argentModal.showWalletConnectModal(uri)
       argentModal.wcUri = uri
 
       // Await session approval from the wallet.
diff --git a/src/connectors/argentMobile/modal/starknet/account.ts b/src/connectors/argent/argentMobile/modal/starknet/account.ts
similarity index 100%
rename from src/connectors/argentMobile/modal/starknet/account.ts
rename to src/connectors/argent/argentMobile/modal/starknet/account.ts
diff --git a/src/connectors/argentMobile/modal/starknet/adapter.ts b/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
similarity index 100%
rename from src/connectors/argentMobile/modal/starknet/adapter.ts
rename to src/connectors/argent/argentMobile/modal/starknet/adapter.ts
diff --git a/src/connectors/argentMobile/modal/starknet/signer.ts b/src/connectors/argent/argentMobile/modal/starknet/signer.ts
similarity index 100%
rename from src/connectors/argentMobile/modal/starknet/signer.ts
rename to src/connectors/argent/argentMobile/modal/starknet/signer.ts
diff --git a/src/connectors/argentMobile/modal/starknet/starknet.model.ts b/src/connectors/argent/argentMobile/modal/starknet/starknet.model.ts
similarity index 100%
rename from src/connectors/argentMobile/modal/starknet/starknet.model.ts
rename to src/connectors/argent/argentMobile/modal/starknet/starknet.model.ts
diff --git a/src/connectors/argent/helpers/getInjectedArgentX.ts b/src/connectors/argent/helpers/getInjectedArgentX.ts
new file mode 100644
index 0000000..92d3497
--- /dev/null
+++ b/src/connectors/argent/helpers/getInjectedArgentX.ts
@@ -0,0 +1,9 @@
+import type { StarknetWindowObject } from "@starknet-io/types-js"
+
+export function getInjectedArgentX() {
+  return window?.starknet_argentX as
+    | (StarknetWindowObject & {
+        isInAppBrowser: boolean
+      })
+    | undefined
+}
diff --git a/src/connectors/argent/helpers/inAppBrowser.ts b/src/connectors/argent/helpers/inAppBrowser.ts
new file mode 100644
index 0000000..3b880b0
--- /dev/null
+++ b/src/connectors/argent/helpers/inAppBrowser.ts
@@ -0,0 +1,15 @@
+import { getInjectedArgentX } from "./getInjectedArgentX"
+
+export const isInArgentMobileAppBrowser = (): boolean => {
+  if (typeof window === "undefined") {
+    return false
+  }
+
+  const argentX = getInjectedArgentX()
+
+  if (!argentX) {
+    return false
+  }
+
+  return argentX.isInAppBrowser
+}
diff --git a/src/connectors/argentMobile/helpers/index.ts b/src/connectors/argent/helpers/index.ts
similarity index 100%
rename from src/connectors/argentMobile/helpers/index.ts
rename to src/connectors/argent/helpers/index.ts
diff --git a/src/connectors/argent/index.ts b/src/connectors/argent/index.ts
new file mode 100644
index 0000000..6360f17
--- /dev/null
+++ b/src/connectors/argent/index.ts
@@ -0,0 +1,83 @@
+import { ArgentX } from "../injected/argentX"
+import {
+  ArgentMobileBaseConnector,
+  ArgentMobileConnectorOptions,
+  isInArgentMobileAppBrowser,
+} from "./argentMobile"
+
+import { getInjectedArgentX } from "./helpers/getInjectedArgentX"
+import { DEFAULT_ARGENT_MOBILE_ICON } from "./argentMobile/constants"
+import { StarknetkitCompoundConnector } from "../connector"
+
+/**
+ * Checks if window object has injected ArgentX
+ */
+function hasInjectedArgentX(): boolean {
+  return Boolean(getInjectedArgentX())
+}
+
+type ArgentCompoundSettings = ArgentMobileConnectorOptions
+
+// TODO think about naming
+//  - ArgentUnified
+//  - ArgentOneButton
+//  - ArgentCompound
+//  - Argent
+
+// TODO
+//  - get qr code
+//  - get full modal for both ux flows?
+
+export class ArgentCompound
+  extends StarknetkitCompoundConnector
+  implements StarknetkitCompoundConnector
+{
+  readonly argentX?: ArgentX
+  readonly argentMobile?: ArgentMobileBaseConnector
+
+  readonly connector: ArgentX | ArgentMobileBaseConnector
+  readonly fallbackConnector: ArgentX | ArgentMobileBaseConnector
+
+  constructor(settings: ArgentCompoundSettings) {
+    super()
+
+    this.argentX = new ArgentX({
+      name: "Argent",
+      icon: DEFAULT_ARGENT_MOBILE_ICON,
+      isCompoundConnector: true,
+    })
+    this.argentMobile = new ArgentMobileBaseConnector({
+      isCompoundConnector: true,
+      ...settings,
+    })
+
+    if (hasInjectedArgentX() || isInArgentMobileAppBrowser()) {
+      this.connector = this.argentX
+      this.fallbackConnector = this.argentMobile
+    } else {
+      this.connector = this.argentMobile
+      this.fallbackConnector = this.argentX
+    }
+  }
+
+  getArgentXConnector() {
+    return this.argentX
+  }
+
+  getArgentMobileConnector() {
+    return this.argentMobile
+  }
+}
+
+//
+// // Second way
+// const compoundConnector = new ArgentCompound({
+//   url: typeof window !== "undefined" ? window.location.href : "",
+//   dappName: "Example dapp",
+// })
+//
+// compoundConnector.getConector()
+//
+// compoundConnector.getArgentX()
+// compoundConnector.getArgentMobile()
+// compoundConnector.getFallback()
diff --git a/src/connectors/argentMobile/helpers/inAppBrowser.ts b/src/connectors/argentMobile/helpers/inAppBrowser.ts
deleted file mode 100644
index 137d2cf..0000000
--- a/src/connectors/argentMobile/helpers/inAppBrowser.ts
+++ /dev/null
@@ -1,18 +0,0 @@
-import type { StarknetWindowObject } from "@starknet-io/types-js"
-
-export const isInArgentMobileAppBrowser = (): boolean => {
-  if (typeof window === "undefined") {
-    return false
-  }
-
-  if (!window?.starknet_argentX) {
-    return false
-  }
-
-  const starknetMobile =
-    window?.starknet_argentX as unknown as StarknetWindowObject & {
-      isInAppBrowser: boolean
-    }
-
-  return starknetMobile?.isInAppBrowser
-}
diff --git a/src/connectors/connector.ts b/src/connectors/connector.ts
index a4e2593..81ff31e 100644
--- a/src/connectors/connector.ts
+++ b/src/connectors/connector.ts
@@ -58,9 +58,20 @@ export abstract class Connector extends EventEmitter<ConnectorEvents> {
   abstract request<T extends RpcMessage["type"]>(
     call: RequestFnCall<T>,
   ): Promise<RpcTypeToMessageMap[T]["result"]>
+
+  // getConnector() { TODO?
+  //   return this
+  // }
 }
 
 export abstract class StarknetkitConnector extends Connector {
   /**  Connector StarknetWindowObject */
   abstract get wallet(): StarknetWindowObject
+  abstract isCompoundConnector?: boolean // TODO I don't need this prolly
+}
+
+export abstract class StarknetkitCompoundConnector {
+  readonly isCompoundConnector = true
+  abstract connector: StarknetkitConnector
+  abstract fallbackConnector: StarknetkitConnector
 }
diff --git a/src/connectors/index.ts b/src/connectors/index.ts
index e4163e4..33114ef 100644
--- a/src/connectors/index.ts
+++ b/src/connectors/index.ts
@@ -1,4 +1,3 @@
 export * from "./connector"
 export * from "./injected"
 export * from "./webwallet"
-export * from "./argentMobile"
diff --git a/src/connectors/injected/argentX.ts b/src/connectors/injected/argentX.ts
new file mode 100644
index 0000000..4e74079
--- /dev/null
+++ b/src/connectors/injected/argentX.ts
@@ -0,0 +1,7 @@
+import { InjectedConnector, InjectedConnectorOptions } from "./index"
+
+export class ArgentX extends InjectedConnector {
+  constructor(options?: Omit<InjectedConnectorOptions, "id">) {
+    super({ options: { id: "argentX", ...options } })
+  }
+}
diff --git a/src/connectors/injected/braavos.ts b/src/connectors/injected/braavos.ts
new file mode 100644
index 0000000..d0486de
--- /dev/null
+++ b/src/connectors/injected/braavos.ts
@@ -0,0 +1,7 @@
+import { InjectedConnector, InjectedConnectorOptions } from "./index"
+
+export class Braavos extends InjectedConnector {
+  constructor(options?: Omit<InjectedConnectorOptions, "id">) {
+    super({ options: { id: "braavos", ...options } })
+  }
+}
diff --git a/src/connectors/injected/index.ts b/src/connectors/injected/index.ts
index 24cc015..1ef05f8 100644
--- a/src/connectors/injected/index.ts
+++ b/src/connectors/injected/index.ts
@@ -35,15 +35,7 @@ export interface InjectedConnectorOptions {
   name?: string
   /** Wallet icons. */
   icon?: ConnectorIcons
-}
-
-export interface InjectedConnectorOptions {
-  /** The wallet id. */
-  id: string
-  /** Wallet human readable name. */
-  name?: string
-  /** Wallet icons. */
-  icon?: ConnectorIcons
+  isCompoundConnector?: boolean
 }
 
 //  Icons used when the injected wallet is not installed
@@ -69,6 +61,7 @@ export class InjectedConnector extends Connector {
   }
 
   get name(): string {
+    console.log("HERE", this._options)
     this.ensureWallet()
     return this._options.name ?? this._wallet?.name ?? this._options.id
   }
diff --git a/src/helpers/defaultConnectors.ts b/src/helpers/defaultConnectors.ts
index 55119ce..6e4e64d 100644
--- a/src/helpers/defaultConnectors.ts
+++ b/src/helpers/defaultConnectors.ts
@@ -1,10 +1,11 @@
-import { StarknetkitConnector } from "../connectors"
 import {
-  ArgentMobileBaseConnector,
-  type ArgentMobileConnectorOptions,
-} from "../connectors/argentMobile"
-import { InjectedConnector } from "../connectors/injected"
+  StarknetkitCompoundConnector,
+  StarknetkitConnector,
+} from "../connectors"
+import { type ArgentMobileConnectorOptions } from "../connectors/argent/argentMobile"
 import { WebWalletConnector } from "../connectors/webwallet"
+import { Braavos } from "../connectors/injected/braavos"
+import { ArgentCompound } from "../connectors/argent"
 
 export const defaultConnectors = ({
   argentMobileOptions,
@@ -12,24 +13,23 @@ export const defaultConnectors = ({
 }: {
   argentMobileOptions: ArgentMobileConnectorOptions
   webWalletUrl?: string
-}): StarknetkitConnector[] => {
+}): (StarknetkitConnector | StarknetkitCompoundConnector)[] => {
   const isSafari =
     typeof window !== "undefined"
       ? /^((?!chrome|android).)*safari/i.test(navigator.userAgent)
       : false
 
-  const defaultConnectors: StarknetkitConnector[] = []
+  const defaultConnectors: (
+    | StarknetkitConnector
+    | StarknetkitCompoundConnector
+  )[] = []
+
+  defaultConnectors.push(new ArgentCompound(argentMobileOptions))
 
   if (!isSafari) {
-    defaultConnectors.push(
-      new InjectedConnector({ options: { id: "argentX" } }),
-    )
-    defaultConnectors.push(
-      new InjectedConnector({ options: { id: "braavos" } }),
-    )
+    defaultConnectors.push(new Braavos())
   }
 
-  defaultConnectors.push(new ArgentMobileBaseConnector(argentMobileOptions))
   defaultConnectors.push(new WebWalletConnector({ url: webWalletUrl }))
 
   return defaultConnectors
diff --git a/src/helpers/mapModalWallets.ts b/src/helpers/mapModalWallets.ts
index 73e4636..20b1d32 100644
--- a/src/helpers/mapModalWallets.ts
+++ b/src/helpers/mapModalWallets.ts
@@ -1,12 +1,18 @@
 import { WalletProvider } from "@starknet-io/get-starknet-core"
 import { isString } from "lodash-es"
 import type { StarknetWindowObject } from "@starknet-io/types-js"
-import { StarknetkitConnector } from "../connectors/connector"
+import {
+  StarknetkitCompoundConnector,
+  StarknetkitConnector,
+} from "../connectors/connector"
 import { ARGENT_X_ICON } from "../connectors/injected/constants"
 import type { ModalWallet, StoreVersion } from "../types/modal"
+import { isInArgentMobileAppBrowser } from "../connectors/argent/helpers"
+import { DEFAULT_ARGENT_MOBILE_ICON } from "../connectors/argent/argentMobile/constants"
+import { findConnectorById, getConnector } from "../main"
 
 interface SetConnectorsExpandedParams {
-  availableConnectors: StarknetkitConnector[]
+  availableConnectors: (StarknetkitConnector | StarknetkitCompoundConnector)[]
   installedWallets: StarknetWindowObject[]
   discoveryWallets: WalletProvider[]
   storeVersion: StoreVersion | null
@@ -20,43 +26,66 @@ export const mapModalWallets = ({
   storeVersion,
   customOrder,
 }: SetConnectorsExpandedParams): ModalWallet[] => {
-  const starknetMobile =
-    window?.starknet_argentX as unknown as StarknetWindowObject & {
-      isInAppBrowser: boolean
-    }
+  const isInAppBrowser = isInArgentMobileAppBrowser()
 
-  const isInAppBrowser = starknetMobile?.isInAppBrowser
   if (isInAppBrowser) {
     return []
   }
 
-  const allInstalledWallets = installedWallets.map((w) =>
-    availableConnectors.find((c) => c.id === w.id),
+  const allInstalledWallets = installedWallets.map(
+    (
+      w, // TODO this logic
+    ) => findConnectorById(availableConnectors, w.id),
   )
 
+  // console.log("customOrder", customOrder)
+
   const orderedByInstall = customOrder
     ? availableConnectors
     : [
-        ...availableConnectors.filter((c) => allInstalledWallets.includes(c)),
-        ...availableConnectors.filter((c) => !allInstalledWallets.includes(c)),
+        ...availableConnectors.filter((c) =>
+          allInstalledWallets.includes(getConnector(c)),
+        ),
+        ...availableConnectors.filter(
+          (c) => !allInstalledWallets.includes(getConnector(c)),
+        ),
       ]
 
+  // console.log(
+  //   "availableConnectors, orderedByInstall",
+  //   availableConnectors,
+  //   orderedByInstall,
+  // )
+
   const connectors = orderedByInstall
-    .map<ModalWallet | null>((c) => {
+    .map<ModalWallet | null>((_c) => {
+      const c = getConnector(_c)
+
       const installed = installedWallets.find((w) => w.id === c.id)
       if (installed) {
-        const icon =
-          installed.id === "argentX"
-            ? { light: ARGENT_X_ICON, dark: ARGENT_X_ICON }
-            : isString(installed.icon)
-              ? { light: installed.icon, dark: installed.icon }
-              : installed.icon
+        let icon
+        let name
+
+        if (_c.isCompoundConnector) {
+          icon = DEFAULT_ARGENT_MOBILE_ICON // TODO
+          name = "Argent" // TODO
+        } else {
+          icon =
+            installed.id === "argentX"
+              ? { light: ARGENT_X_ICON, dark: ARGENT_X_ICON }
+              : isString(installed.icon)
+                ? { light: installed.icon, dark: installed.icon }
+                : installed.icon
+
+          name = installed.name
+        }
 
         return {
-          name: installed.name,
+          name,
           id: installed.id,
           icon,
           connector: c,
+          isCompoundConnector: Boolean(_c?.isCompoundConnector),
         }
       }
 
@@ -85,16 +114,19 @@ export const mapModalWallets = ({
       }
 
       return {
-        name: c.name,
+        name: c.name, // TODO
         id: c.id,
         icon: c.icon,
         connector: c,
         title: "title" in c && isString(c.title) ? c.title : undefined,
         subtitle:
           "subtitle" in c && isString(c.subtitle) ? c.subtitle : undefined,
+        isCompoundConnector: Boolean(_c?.isCompoundConnector),
       }
     })
     .filter((c): c is ModalWallet => c !== null)
 
+  // console.log("connectors", connectors)
+
   return connectors
 }
diff --git a/src/main.ts b/src/main.ts
index 57e0fa8..a09994f 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -1,7 +1,12 @@
 import type { DisconnectOptions } from "@starknet-io/get-starknet"
 import sn from "@starknet-io/get-starknet-core"
 import type { StarknetWindowObject } from "@starknet-io/types-js"
-import { Connector, ConnectorData, StarknetkitConnector } from "./connectors"
+import {
+  Connector,
+  ConnectorData,
+  StarknetkitCompoundConnector,
+  StarknetkitConnector,
+} from "./connectors"
 import { DEFAULT_WEBWALLET_URL } from "./connectors/webwallet/constants"
 import { defaultConnectors } from "./helpers/defaultConnectors"
 import { getStoreVersionFromBrowser } from "./helpers/getStoreVersionFromBrowser"
@@ -11,7 +16,9 @@ import {
 } from "./helpers/lastConnected"
 import { mapModalWallets } from "./helpers/mapModalWallets"
 import Modal from "./modal/Modal.svelte"
+// import css from "@argent/x-ui/styles/tailwind.css?inline"
 import css from "./theme.css?inline"
+
 import type {
   ConnectOptions,
   ConnectOptionsWithConnectors,
@@ -21,6 +28,26 @@ import type {
 
 let selectedConnector: StarknetkitConnector | null = null
 
+export function getConnector( // TODO Maybe just add getConnector to both, StarknetkitConnector and StarknetkitCompoundConnector, then use .getConnector() where needed
+  connector: StarknetkitConnector | StarknetkitCompoundConnector,
+) {
+  if (connector.isCompoundConnector) {
+    return (connector as StarknetkitCompoundConnector).connector
+  }
+  return connector
+}
+
+export function findConnectorById(
+  connectors: (StarknetkitConnector | StarknetkitCompoundConnector)[],
+  id: string | null,
+) {
+  const connector = connectors.find((c) => getConnector(c).id === id)
+
+  if (!connector) {
+    return null
+  }
+  return getConnector(connector)
+}
 
 /**
  *
@@ -75,8 +102,8 @@ export const connect = async ({
   const lastWalletId = localStorage.getItem("starknetLastConnectedWallet")
   if (modalMode === "neverAsk") {
     try {
-      const connector =
-        availableConnectors.find((c) => c.id === lastWalletId) ?? null
+      const connector = findConnectorById(availableConnectors, lastWalletId)
+
       let connectorData: ConnectorData | null = null
 
       if (connector && resultType === "wallet") {
@@ -109,7 +136,7 @@ export const connect = async ({
         : undefined
 
     if (wallet) {
-      const connector = availableConnectors.find((c) => c.id === lastWalletId)
+      const connector = findConnectorById(availableConnectors, lastWalletId)
 
       let connectorData: ConnectorData | null = null
 
@@ -129,6 +156,8 @@ export const connect = async ({
     } // otherwise fallback to modal
   }
 
+  // console.log("connectors?.length", connectors?.length)
+
   const modalWallets: ModalWallet[] = mapModalWallets({
     availableConnectors,
     installedWallets,
@@ -156,7 +185,10 @@ export const connect = async ({
     element.id = modalId
     document.body.appendChild(element)
     const target = element.attachShadow({ mode: "open" })
-    target.innerHTML = `<style>${css}</style>`
+
+    const styleElement = document.createElement("style")
+    styleElement.textContent = css
+    target.appendChild(styleElement)
 
     return target
   }
@@ -166,34 +198,34 @@ export const connect = async ({
       target: getTarget(),
       props: {
         dappName,
-        callback: async (connector: StarknetkitConnector | null) => {
-          try {
-            selectedConnector = connector
-            if (resultType === "wallet") {
-              const connectorData = (await connector?.connect()) ?? null
-              if (connector !== null) {
-                setStarknetLastConnectedWallet(connector.id)
-              }
-
-              resolve({
-                connector,
-                connectorData,
-                wallet: connector?.wallet ?? null,
-              })
-            } else {
-              resolve({
-                connector,
-                wallet: null,
-                connectorData: null,
-              })
-            }
-          } catch (error) {
-            reject(error)
-          } finally {
-            setTimeout(() => modal.$destroy())
-          }
-        },
-        theme: modalTheme === "system" ? null : (modalTheme ?? null),
+        // callback: async (connector: StarknetkitConnector | null) => {
+        //   try {
+        //     selectedConnector = connector
+        //     if (resultType === "wallet") {
+        //       const connectorData = (await connector?.connect()) ?? null
+        //       if (connector !== null) {
+        //         setStarknetLastConnectedWallet(connector.id)
+        //       }
+        //
+        //       resolve({
+        //         connector,
+        //         connectorData,
+        //         wallet: connector?.wallet ?? null,
+        //       })
+        //     } else {
+        //       resolve({
+        //         connector,
+        //         wallet: null,
+        //         connectorData: null,
+        //       })
+        //     }
+        //   } catch (error) {
+        //     reject(error)
+        //   } finally {
+        //     setTimeout(() => modal.$destroy())
+        //   }
+        // },
+        // theme: modalTheme === "system" ? null : (modalTheme ?? null),
         modalWallets,
       },
     })
diff --git a/src/types/modal.ts b/src/types/modal.ts
index 3f0182a..24eaf72 100644
--- a/src/types/modal.ts
+++ b/src/types/modal.ts
@@ -1,9 +1,10 @@
 import type { GetWalletOptions } from "@starknet-io/get-starknet-core"
 import { StarknetWindowObject } from "@starknet-io/types-js"
-import type { ArgentMobileConnectorOptions } from "../connectors/argentMobile"
-import type {
+import type { ArgentMobileConnectorOptions } from "../connectors/argent/argentMobile"
+import {
   ConnectorData,
   ConnectorIcons,
+  StarknetkitCompoundConnector,
   StarknetkitConnector,
 } from "../connectors/connector"
 
@@ -31,7 +32,8 @@ export type ModalWallet = {
   download?: string
   subtitle?: string
   title?: string
-  connector: StarknetkitConnector
+  connector: StarknetkitConnector | StarknetkitCompoundConnector
+  isCompoundConnector?: boolean
 }
 
 export type ModalResult = {
diff --git a/vite.config.ts b/vite.config.ts
index 7496a07..1ac26d6 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -21,12 +21,14 @@ export default defineConfig({
         ),
         argentMobile: resolve(
           __dirname,
-          "src/connectors/argentMobile/index.ts",
+          "src/connectors/argent/argentMobile/index.ts",
         ),
         injectedConnector: resolve(
           __dirname,
           "src/connectors/injected/index.ts",
         ),
+        argentCompound: resolve(__dirname, "src/connectors/argent/index.ts"),
+        braavos: resolve(__dirname, "src/connectors/injected/braavos.ts"),
       },
       formats: ["es", "cjs"],
     },

From bf9294e95229e90c6fac8a3c6e7da414cddc57b5 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 23 Oct 2024 11:49:57 +0200
Subject: [PATCH 03/88] chore: install @argent/x-ui@next

---
 package.json   |   2 +-
 pnpm-lock.yaml | 154 ++++++++++++-------------------------------------
 2 files changed, 37 insertions(+), 119 deletions(-)

diff --git a/package.json b/package.json
index 8ec40f1..c5f789c 100644
--- a/package.json
+++ b/package.json
@@ -70,7 +70,7 @@
     "dev": "vite build --watch"
   },
   "dependencies": {
-    "@argent/x-ui": "file:../x-ui",
+    "@argent/x-ui": "^1.70.1",
     "@starknet-io/get-starknet": "^4.0.0",
     "@starknet-io/get-starknet-core": "^4.0.0",
     "@starknet-io/types-js": "^0.7.7",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 648679f..03e4863 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -9,8 +9,8 @@ importers:
   .:
     dependencies:
       '@argent/x-ui':
-        specifier: file:../x-ui
-        version: file:../x-ui(cxhmlpreo3ggzh3aziih4sur7e)
+        specifier: ^1.70.1
+        version: 1.70.1(mcfj3t5w5z7ehabnwpmzvhdirm)
       '@starknet-io/get-starknet':
         specifier: ^4.0.0
         version: 4.0.0
@@ -63,9 +63,6 @@ importers:
       '@semantic-release/git':
         specifier: ^10.0.1
         version: 10.0.1(semantic-release@21.1.2(typescript@5.5.4))
-      '@sveltejs/adapter-auto':
-        specifier: ^3.2.5
-        version: 3.2.5(@sveltejs/kit@2.6.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))
       '@sveltejs/vite-plugin-svelte':
         specifier: ^2.2.0
         version: 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
@@ -201,8 +198,8 @@ packages:
       url-join: ^5.0.0
       zod: ^3.23.8
 
-  '@argent/x-ui@file:../x-ui':
-    resolution: {directory: ../x-ui, type: directory}
+  '@argent/x-ui@1.70.1':
+    resolution: {integrity: sha512-9m2pHnGteF0e649CWOMv7cszPaSVsYwfEi4rdYBolBbzeF3U9qF4NjBUH9BuhgX9NEfy2JSgZD2/LHiYRb2vBg==}
     peerDependencies:
       '@argent/x-shared': ^1.39.0
       '@chakra-ui/react': ^2.8.2
@@ -214,6 +211,8 @@ packages:
       '@zxcvbn-ts/language-common': ^2.0.1 || ^3.0.0
       '@zxcvbn-ts/language-en': ^2.1.0 || ^3.0.0
       colord: ^2.9.2
+      embla-carousel: ^8.3.0
+      embla-carousel-react: ^8.3.0
       emittery: ^1.0.1
       framer-motion: ^11.0.5
       history: ^5.3.0
@@ -1700,9 +1699,6 @@ packages:
     resolution: {integrity: sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==}
     engines: {node: '>=12'}
 
-  '@polka/url@1.0.0-next.28':
-    resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==}
-
   '@popperjs/core@2.11.8':
     resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==}
 
@@ -2152,20 +2148,6 @@ packages:
   '@starknet-io/types-js@0.7.7':
     resolution: {integrity: sha512-WLrpK7LIaIb8Ymxu6KF/6JkGW1sso988DweWu7p5QY/3y7waBIiPvzh27D9bX5KIJNRDyOoOVoHVEKYUYWZ/RQ==}
 
-  '@sveltejs/adapter-auto@3.2.5':
-    resolution: {integrity: sha512-27LR+uKccZ62lgq4N/hvyU2G+hTP9fxWEAfnZcl70HnyfAjMSsGk1z/SjAPXNCD1mVJIE7IFu3TQ8cQ/UH3c0A==}
-    peerDependencies:
-      '@sveltejs/kit': ^2.0.0
-
-  '@sveltejs/kit@2.6.4':
-    resolution: {integrity: sha512-qfcbyWw35cy6k9sQ1GUkhuE5qj+PgPKJx3/Aa3+veooWgN0DXZXqMS2PDgpgKDXRIFj6V1KWmMZYYPOhL45lXg==}
-    engines: {node: '>=18.13'}
-    hasBin: true
-    peerDependencies:
-      '@sveltejs/vite-plugin-svelte': ^3.0.0 || ^4.0.0-next.1
-      svelte: ^4.0.0 || ^5.0.0-next.0
-      vite: ^5.0.3
-
   '@sveltejs/vite-plugin-svelte-inspector@1.0.4':
     resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==}
     engines: {node: ^14.18.0 || >= 16}
@@ -2210,9 +2192,6 @@ packages:
   '@types/async-retry@1.4.8':
     resolution: {integrity: sha512-Qup/B5PWLe86yI5I3av6ePGaeQrIHNKCwbsQotD6aHQ6YkHsMUxVZkZsmx/Ry3VZQ6uysHwTjQ7666+k6UjVJA==}
 
-  '@types/cookie@0.6.0':
-    resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
-
   '@types/debounce@1.2.4':
     resolution: {integrity: sha512-jBqiORIzKDOToaF63Fm//haOCHuwQuLa2202RK4MozpA6lh93eCBc+/8+wZn5OzjJt3ySdc+74SXWXB55Ewtyw==}
 
@@ -3135,10 +3114,6 @@ packages:
   cookie-es@1.2.2:
     resolution: {integrity: sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==}
 
-  cookie@0.6.0:
-    resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==}
-    engines: {node: '>= 0.6'}
-
   copy-to-clipboard@3.3.3:
     resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==}
 
@@ -3370,9 +3345,6 @@ packages:
   detect-node-es@1.1.0:
     resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==}
 
-  devalue@5.1.1:
-    resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==}
-
   didyoumean@1.2.2:
     resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
 
@@ -3427,6 +3399,19 @@ packages:
   elliptic@6.5.7:
     resolution: {integrity: sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==}
 
+  embla-carousel-react@8.3.0:
+    resolution: {integrity: sha512-P1FlinFDcIvggcErRjNuVqnUR8anyo8vLMIH8Rthgofw7Nj8qTguCa2QjFAbzxAUTQTPNNjNL7yt0BGGinVdFw==}
+    peerDependencies:
+      react: ^16.8.0 || ^17.0.1 || ^18.0.0
+
+  embla-carousel-reactive-utils@8.3.0:
+    resolution: {integrity: sha512-EYdhhJ302SC4Lmkx8GRsp0sjUhEN4WyFXPOk0kGu9OXZSRMmcBlRgTvHcq8eKJE1bXWBsOi1T83B+BSSVZSmwQ==}
+    peerDependencies:
+      embla-carousel: 8.3.0
+
+  embla-carousel@8.3.0:
+    resolution: {integrity: sha512-Ve8dhI4w28qBqR8J+aMtv7rLK89r1ZA5HocwFz6uMB/i5EiC7bGI7y+AM80yAVUJw3qqaZYK7clmZMUR8kM3UA==}
+
   emittery@1.0.3:
     resolution: {integrity: sha512-tJdCJitoy2lrC2ldJcqN4vkqJ00lT+tOWNT1hBJjO/3FDMJa5TTIiYGCKGkn/WfCyOzUMObeohbVTj00fhiLiA==}
     engines: {node: '>=14.16'}
@@ -3663,9 +3648,6 @@ packages:
     engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
     hasBin: true
 
-  esm-env@1.0.0:
-    resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==}
-
   espree@9.6.1:
     resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
     engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -4008,9 +3990,6 @@ packages:
     resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
     engines: {node: '>= 0.4'}
 
-  globalyzer@0.1.0:
-    resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==}
-
   globby@11.1.0:
     resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
     engines: {node: '>=10'}
@@ -4019,9 +3998,6 @@ packages:
     resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==}
     engines: {node: '>=18'}
 
-  globrex@0.1.2:
-    resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
-
   gopd@1.0.1:
     resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
 
@@ -4186,9 +4162,6 @@ packages:
     resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==}
     engines: {node: '>=8'}
 
-  import-meta-resolve@4.1.0:
-    resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==}
-
   import-sort-config@6.0.0:
     resolution: {integrity: sha512-FJpF2F3+30JXqH1rJKeajxoSCHCueai3/0ntDN4y3GJL5pjnLDt/VjCy5FzjH7u0NHnllL/zVEf1wfmsVxJlPQ==}
 
@@ -5057,10 +5030,6 @@ packages:
     resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
     engines: {node: '>=4'}
 
-  mrmime@2.0.0:
-    resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==}
-    engines: {node: '>=10'}
-
   ms@2.0.0:
     resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
 
@@ -6166,10 +6135,6 @@ packages:
     resolution: {integrity: sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==}
     engines: {node: '>=6'}
 
-  sirv@2.0.4:
-    resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==}
-    engines: {node: '>= 10'}
-
   sisteransi@1.0.5:
     resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
 
@@ -6557,9 +6522,6 @@ packages:
   through@2.3.8:
     resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
 
-  tiny-glob@0.2.9:
-    resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==}
-
   tinybench@2.9.0:
     resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
 
@@ -6589,10 +6551,6 @@ packages:
     resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==}
     engines: {node: '>=0.6'}
 
-  totalist@3.0.1:
-    resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
-    engines: {node: '>=6'}
-
   tough-cookie@4.1.4:
     resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==}
     engines: {node: '>=6'}
@@ -7300,7 +7258,7 @@ snapshots:
       - encoding
       - typescript
 
-  '@argent/x-ui@file:../x-ui(cxhmlpreo3ggzh3aziih4sur7e)':
+  '@argent/x-ui@1.70.1(mcfj3t5w5z7ehabnwpmzvhdirm)':
     dependencies:
       '@argent/x-shared': 1.39.0(@scure/base@1.1.9)(@scure/bip39@1.4.0)(async-retry@1.3.3)(lodash-es@4.17.21)(typescript@5.5.4)(ua-parser-js@1.0.39)(url-join@5.0.0)(zod@3.23.8)
       '@chakra-ui/react': 2.10.2(@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.11)(react@18.3.1))(@types/react@18.3.11)(react@18.3.1))(@types/react@18.3.11)(framer-motion@11.11.7(@emotion/is-prop-valid@1.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -7312,6 +7270,8 @@ snapshots:
       '@zxcvbn-ts/language-common': 3.0.4
       '@zxcvbn-ts/language-en': 3.0.2
       colord: 2.9.3
+      embla-carousel: 8.3.0
+      embla-carousel-react: 8.3.0(react@18.3.1)
       emittery: 1.0.3
       framer-motion: 11.11.7(@emotion/is-prop-valid@1.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
       history: 5.3.0
@@ -8344,7 +8304,7 @@ snapshots:
       '@types/node': 20.5.1
       chalk: 4.1.2
       cosmiconfig: 8.3.6(typescript@5.5.4)
-      cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4))(typescript@5.5.4)
+      cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4))(typescript@5.5.4)
       lodash.isplainobject: 4.0.6
       lodash.merge: 4.6.2
       lodash.uniq: 4.5.0
@@ -9024,8 +8984,6 @@ snapshots:
       '@pnpm/network.ca-file': 1.0.2
       config-chain: 1.1.13
 
-  '@polka/url@1.0.0-next.28': {}
-
   '@popperjs/core@2.11.8': {}
 
   '@reach/portal@0.13.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
@@ -9716,29 +9674,6 @@ snapshots:
 
   '@starknet-io/types-js@0.7.7': {}
 
-  '@sveltejs/adapter-auto@3.2.5(@sveltejs/kit@2.6.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))':
-    dependencies:
-      '@sveltejs/kit': 2.6.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
-      import-meta-resolve: 4.1.0
-
-  '@sveltejs/kit@2.6.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))':
-    dependencies:
-      '@sveltejs/vite-plugin-svelte': 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
-      '@types/cookie': 0.6.0
-      cookie: 0.6.0
-      devalue: 5.1.1
-      esm-env: 1.0.0
-      import-meta-resolve: 4.1.0
-      kleur: 4.1.5
-      magic-string: 0.30.11
-      mrmime: 2.0.0
-      sade: 1.8.1
-      set-cookie-parser: 2.7.0
-      sirv: 2.0.4
-      svelte: 4.2.18
-      tiny-glob: 0.2.9
-      vite: 4.5.3(@types/node@20.14.15)(terser@5.34.1)
-
   '@sveltejs/vite-plugin-svelte-inspector@1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))':
     dependencies:
       '@sveltejs/vite-plugin-svelte': 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.15)(terser@5.34.1))
@@ -9784,8 +9719,6 @@ snapshots:
     dependencies:
       '@types/retry': 0.12.5
 
-  '@types/cookie@0.6.0': {}
-
   '@types/debounce@1.2.4': {}
 
   '@types/estree@1.0.5': {}
@@ -11089,8 +11022,6 @@ snapshots:
 
   cookie-es@1.2.2: {}
 
-  cookie@0.6.0: {}
-
   copy-to-clipboard@3.3.3:
     dependencies:
       toggle-selection: 1.0.6
@@ -11101,7 +11032,7 @@ snapshots:
 
   core-util-is@1.0.3: {}
 
-  cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4))(typescript@5.5.4):
+  cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4))(typescript@5.5.4):
     dependencies:
       '@types/node': 20.5.1
       cosmiconfig: 8.3.6(typescript@5.5.4)
@@ -11298,8 +11229,6 @@ snapshots:
 
   detect-node-es@1.1.0: {}
 
-  devalue@5.1.1: {}
-
   didyoumean@1.2.2: {}
 
   diff-sequences@29.6.3: {}
@@ -11355,6 +11284,18 @@ snapshots:
       minimalistic-assert: 1.0.1
       minimalistic-crypto-utils: 1.0.1
 
+  embla-carousel-react@8.3.0(react@18.3.1):
+    dependencies:
+      embla-carousel: 8.3.0
+      embla-carousel-reactive-utils: 8.3.0(embla-carousel@8.3.0)
+      react: 18.3.1
+
+  embla-carousel-reactive-utils@8.3.0(embla-carousel@8.3.0):
+    dependencies:
+      embla-carousel: 8.3.0
+
+  embla-carousel@8.3.0: {}
+
   emittery@1.0.3: {}
 
   emoji-regex@8.0.0: {}
@@ -11787,8 +11728,6 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  esm-env@1.0.0: {}
-
   espree@9.6.1:
     dependencies:
       acorn: 8.12.1
@@ -12172,8 +12111,6 @@ snapshots:
       define-properties: 1.2.1
       gopd: 1.0.1
 
-  globalyzer@0.1.0: {}
-
   globby@11.1.0:
     dependencies:
       array-union: 2.1.0
@@ -12192,8 +12129,6 @@ snapshots:
       slash: 5.1.0
       unicorn-magic: 0.1.0
 
-  globrex@0.1.2: {}
-
   gopd@1.0.1:
     dependencies:
       get-intrinsic: 1.2.4
@@ -12355,8 +12290,6 @@ snapshots:
 
   import-lazy@4.0.0: {}
 
-  import-meta-resolve@4.1.0: {}
-
   import-sort-config@6.0.0:
     dependencies:
       cosmiconfig: 5.2.1
@@ -13360,8 +13293,6 @@ snapshots:
 
   mri@1.2.0: {}
 
-  mrmime@2.0.0: {}
-
   ms@2.0.0: {}
 
   ms@2.1.2: {}
@@ -14517,12 +14448,6 @@ snapshots:
       figures: 2.0.0
       pkg-conf: 2.1.0
 
-  sirv@2.0.4:
-    dependencies:
-      '@polka/url': 1.0.0-next.28
-      mrmime: 2.0.0
-      totalist: 3.0.1
-
   sisteransi@1.0.5: {}
 
   slash@3.0.0: {}
@@ -14977,11 +14902,6 @@ snapshots:
 
   through@2.3.8: {}
 
-  tiny-glob@0.2.9:
-    dependencies:
-      globalyzer: 0.1.0
-      globrex: 0.1.2
-
   tinybench@2.9.0: {}
 
   tinypool@0.8.4: {}
@@ -15000,8 +14920,6 @@ snapshots:
 
   toidentifier@1.0.1: {}
 
-  totalist@3.0.1: {}
-
   tough-cookie@4.1.4:
     dependencies:
       psl: 1.9.0

From 2d26120dca8c34fc41f98bba28f952814e61a970 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 23 Oct 2024 11:50:24 +0200
Subject: [PATCH 04/88] chore: use tailwind styles generated from x-ui

---
 src/theme.css | 274 +-------------------------------------------------
 1 file changed, 1 insertion(+), 273 deletions(-)

diff --git a/src/theme.css b/src/theme.css
index 274964d..96f5219 100644
--- a/src/theme.css
+++ b/src/theme.css
@@ -4,279 +4,7 @@
 @import "tailwindcss/components.css";
 @import "tailwindcss/base.css";
 
-/* TODO we need to export styles from x-ui with :host selector in order to work with shadow dom */
-/* https://github.com/argentlabs/x-ui/pull/215 */
-/*@import "@argent/x-ui/dist/styles/tailwind.css";*/
-
-/*!** This file is auto-generated by `pnpm gen:tokens` *!*/
-:host {
-  /** base color tokens */
-  --color-50: 255, 255, 255, 0.5;
-  --color-400: 140 140 140;
-  --color-800: 38 38 38;
-  --color-900: 31 31 31;
-  --color-accessible-orange: 243 106 61;
-  --color-black-100: 0 0 0;
-  --color-black-50: 0, 0, 0, 0.5;
-  --color-black-30: 0, 0, 0, 0.3;
-  --color-black-6: 0, 0, 0, 0.06;
-  --color-black-4: 0, 0, 0, 0.04;
-  --color-black-12: 0, 0, 0, 0.12;
-  --color-black-0: 0, 0, 0, 0;
-  --color-deprecated-accent-accessible-green: 2 166 151;
-  --color-deprecated-accent-accessible-yellow: 255 171 0;
-  --color-deprecated-accent-green: 2 187 168;
-  --color-deprecated-accent-hot-pink: 255 91 129;
-  --color-deprecated-accent-yellow: 255 191 61;
-  --color-deprecated-black: 0 0 0;
-  --color-deprecated-neutrals-100: 249 249 249;
-  --color-deprecated-neutrals-200: 240 240 240;
-  --color-deprecated-neutrals-300: 191 191 191;
-  --color-deprecated-neutrals-500: 102 102 102;
-  --color-deprecated-neutrals-600: 89 89 89;
-  --color-deprecated-neutrals-700: 64 64 64;
-  --color-deprecated-neutrals-1000: 15 15 15;
-  --color-deprecated-primary-orange: 255 135 91;
-  --color-deprecated-white: 255 255 255;
-  --color-neutrals-100: 249 249 249;
-  --color-neutrals-200: 240 240 240;
-  --color-neutrals-300: 191 191 191;
-  --color-neutrals-400: 140 140 140;
-  --color-neutrals-500: 102 102 102;
-  --color-neutrals-600: 89 89 89;
-  --color-neutrals-700: 64 64 64;
-  --color-neutrals-800: 46 46 46;
-  --color-neutrals-900: 36 36 36;
-  --color-neutrals-1000: 23 23 23;
-  --color-primary-blue-200: 203 241 255;
-  --color-primary-blue-400: 41 197 255;
-  --color-primary-blue-600: 0 157 214;
-  --color-primary-blue-800: 0 120 164;
-  --color-primary-blue-1000: 7 49 68;
-  --color-primary-green-200: 206 255 243;
-  --color-primary-green-400: 44 211 169;
-  --color-primary-green-600: 2 161 122;
-  --color-primary-green-800: 10 77 59;
-  --color-primary-green-1000: 4 36 16;
-  --color-primary-orange-200: 255 203 184;
-  --color-primary-orange-400: 255 135 91;
-  --color-primary-orange-600: 243 106 61;
-  --color-primary-orange-800: 128 56 32;
-  --color-primary-orange-1000: 55 23 9;
-  --color-primary-orange-300: 255 158 122;
-  --color-primary-orange-18: 255, 135, 91, 0.18;
-  --color-primary-orange-6: 255, 135, 91, 0.06;
-  --color-primary-red-200: 255 221 225;
-  --color-primary-red-400: 233 95 114;
-  --color-primary-red-600: 219 59 78;
-  --color-primary-red-800: 99 9 21;
-  --color-primary-red-1000: 51 1 5;
-  --color-primary-red-dark: 193 32 38;
-  --color-primary-yellow-200: 252 239 211;
-  --color-primary-yellow-400: 255 191 61;
-  --color-primary-yellow-600: 255 171 0;
-  --color-primary-yellow-800: 241 159 0;
-  --color-primary-yellow-1000: 63 45 12;
-  --color-secondary-clementine: 255 168 92;
-  --color-secondary-coral: 255 103 92;
-  --color-secondary-hot-pink: 255 91 129;
-  --color-secondary-sky-blue: 41 197 255;
-  --color-white-100: 255 255 255;
-  --color-white-50: 255, 255, 255, 0.5;
-  --color-white-30: 255, 255, 255, 0.3;
-  --color-white-12: 255, 255, 255, 0.12;
-  --color-white-6: 255, 255, 255, 0.06;
-  --color-white-18: 255, 255, 255, 0.18;
-  --color-white-0: 255, 255, 255, 0;
-
-  /** semantic color tokens */
-  --color-accent-blue: rgba(var(--color-primary-blue-600));
-  --color-accent-brand: rgba(var(--color-primary-orange-400));
-  --color-accent-coral: rgba(var(--color-secondary-coral));
-  --color-accent-green: rgba(var(--color-primary-green-400));
-  --color-accent-hot-pink: rgba(var(--color-secondary-hot-pink));
-  --color-accent-orange: rgba(var(--color-secondary-clementine));
-  --color-accent-red: rgba(var(--color-primary-red-600));
-  --color-accent-sky-blue: rgba(var(--color-secondary-sky-blue));
-  --color-accent-yellow: rgba(var(--color-primary-yellow-400));
-  --color-button-danger: rgba(var(--color-primary-red-600));
-  --color-button-danger-hover: rgba(var(--color-primary-red-400));
-  --color-button-info: rgba(var(--color-primary-blue-800));
-  --color-button-info-hover: rgba(var(--color-primary-blue-600));
-  --color-button-pressed-overlay: rgba(var(--color-black-12));
-  --color-button-primary: rgba(var(--color-primary-orange-400));
-  --color-button-primary-hover: rgba(var(--color-primary-orange-300));
-  --color-button-secondary: rgba(var(--color-black-6));
-  --color-button-secondary-hover: rgba(var(--color-black-12));
-  --color-button-tertiary: rgba(var(--color-black-0));
-  --color-button-tertiary-hover: rgba(var(--color-primary-orange-6));
-  --color-button-tertiary-pressed: rgba(var(--color-primary-orange-18));
-  --color-button-warning: rgba(var(--color-primary-yellow-800));
-  --color-button-warning-hover: rgba(var(--color-primary-yellow-400));
-  --color-icon-adaptive: rgba(var(--color-white-100));
-  --color-icon-background: rgba(var(--color-black-6));
-  --color-icon-background-brand: rgba(var(--color-primary-orange-400));
-  --color-icon-brand: rgba(var(--color-primary-orange-600));
-  --color-icon-danger: rgba(var(--color-primary-red-600));
-  --color-icon-default: rgba(var(--color-neutrals-700));
-  --color-icon-info: rgba(var(--color-primary-blue-600));
-  --color-icon-secondary: rgba(var(--color-neutrals-400));
-  --color-icon-stable: rgba(var(--color-white-100));
-  --color-icon-subtle: rgba(var(--color-neutrals-300));
-  --color-icon-success: rgba(var(--color-primary-green-600));
-  --color-icon-warning: rgba(var(--color-primary-yellow-800));
-  --color-ios-icon: rgb(80, 85, 92);
-  --color-ios-keyboard-button: rgb(0, 122, 255);
-  --color-ios-primary: rgb(0, 122, 255);
-  --color-ios-surface-dark: rgb(172, 180, 190);
-  --color-ios-surface-default: rgba(210, 213, 219, 0.9);
-  --color-ios-surface-elevated: rgb(255, 255, 255);
-  --color-ios-text: rgb(0, 0, 0);
-  --color-ios-text-inverted: rgb(255, 255, 255);
-  --color-shadow-default: rgba(var(--color-black-6));
-  --color-shadow-strong: rgba(var(--color-black-30));
-  --color-stroke-brand: rgba(var(--color-primary-orange-600));
-  --color-stroke-danger: rgba(var(--color-primary-red-600));
-  --color-stroke-default: rgba(var(--color-neutrals-200));
-  --color-stroke-default-web: rgba(var(--color-neutrals-200));
-  --color-stroke-focused: rgba(var(--color-black-30));
-  --color-stroke-subtle: rgba(var(--color-black-6));
-  --color-surface-brand: rgba(var(--color-primary-orange-400));
-  --color-surface-danger-default: rgba(var(--color-primary-red-200));
-  --color-surface-danger-vibrant: rgba(var(--color-primary-red-600));
-  --color-surface-default: rgba(var(--color-neutrals-100));
-  --color-surface-default-web: rgba(var(--color-neutrals-100));
-  --color-surface-elevated: rgba(var(--color-white-100));
-  --color-surface-elevated-web: rgba(var(--color-neutrals-200));
-  --color-surface-info-default: rgba(var(--color-primary-blue-200));
-  --color-surface-info-vibrant: rgba(var(--color-primary-blue-400));
-  --color-surface-input: rgba(var(--color-black-4));
-  --color-surface-inverted: rgba(var(--color-black-100));
-  --color-surface-match-mode: rgba(var(--color-white-100));
-  --color-surface-pressed-overlay: rgba(var(--color-black-12));
-  --color-surface-stable-dark: rgba(var(--color-black-100));
-  --color-surface-stable-light: rgba(var(--color-white-100));
-  --color-surface-success-default: rgba(var(--color-primary-green-200));
-  --color-surface-success-vibrant: rgba(var(--color-primary-green-400));
-  --color-surface-sunken: rgba(var(--color-neutrals-200));
-  --color-surface-text: rgba(var(--color-primary-orange-200));
-  --color-surface-transparent: rgba(var(--color-black-6));
-  --color-surface-warning-default: rgba(var(--color-primary-yellow-200));
-  --color-surface-warning-vibrant: rgba(var(--color-primary-yellow-800));
-  --color-text-brand: rgba(var(--color-primary-orange-600));
-  --color-text-danger: rgba(var(--color-primary-red-600));
-  --color-text-danger-accessible: rgba(var(--color-primary-red-1000));
-  --color-text-info: rgba(var(--color-primary-blue-600));
-  --color-text-info-accessible: rgba(var(--color-primary-blue-1000));
-  --color-text-link: rgba(var(--color-primary-blue-600));
-  --color-text-primary: rgba(var(--color-neutrals-700));
-  --color-text-secondary: rgba(var(--color-neutrals-400));
-  --color-text-secondary-web: rgba(var(--color-neutrals-500));
-  --color-text-stable: rgba(var(--color-white-100));
-  --color-text-subtle: rgba(var(--color-neutrals-300));
-  --color-text-success: rgba(var(--color-primary-green-600));
-  --color-text-success-accessible: rgba(var(--color-primary-green-1000));
-  --color-text-warning: rgba(var(--color-primary-yellow-800));
-  --color-text-warning-accessible: rgba(var(--color-primary-yellow-1000));
-}
-
-.dark {
-  /** dark theme semantic color tokens */
-  --color-accent-blue: rgba(var(--color-primary-blue-600));
-  --color-accent-brand: rgba(var(--color-primary-orange-600));
-  --color-accent-coral: rgba(var(--color-secondary-coral));
-  --color-accent-green: rgba(var(--color-primary-green-600));
-  --color-accent-hot-pink: rgba(var(--color-secondary-hot-pink));
-  --color-accent-orange: rgba(var(--color-secondary-clementine));
-  --color-accent-red: rgba(var(--color-primary-red-dark));
-  --color-accent-sky-blue: rgba(var(--color-primary-blue-400));
-  --color-accent-yellow: rgba(var(--color-primary-yellow-600));
-  --color-button-danger: rgba(var(--color-primary-red-600));
-  --color-button-danger-hover: rgba(var(--color-primary-red-400));
-  --color-button-info: rgba(var(--color-primary-blue-800));
-  --color-button-info-hover: rgba(var(--color-primary-blue-600));
-  --color-button-pressed-overlay: rgba(var(--color-black-12));
-  --color-button-primary: rgba(var(--color-primary-orange-600));
-  --color-button-primary-hover: rgba(var(--color-primary-orange-400));
-  --color-button-secondary: rgba(var(--color-white-12));
-  --color-button-secondary-hover: rgba(var(--color-white-18));
-  --color-button-tertiary: rgba(var(--color-white-0));
-  --color-button-tertiary-hover: rgba(var(--color-primary-orange-6));
-  --color-button-tertiary-pressed: rgba(var(--color-primary-orange-18));
-  --color-button-warning: rgba(var(--color-primary-yellow-600));
-  --color-button-warning-hover: rgba(var(--color-primary-yellow-400));
-  --color-icon-adaptive: rgba(var(--color-neutrals-1000));
-  --color-icon-background: rgba(var(--color-white-12));
-  --color-icon-background-brand: rgba(var(--color-primary-orange-600));
-  --color-icon-brand: rgba(var(--color-primary-orange-400));
-  --color-icon-danger: rgba(var(--color-primary-red-400));
-  --color-icon-default: rgba(var(--color-white-100));
-  --color-icon-info: rgba(var(--color-primary-blue-400));
-  --color-icon-secondary: rgba(var(--color-neutrals-400));
-  --color-icon-stable: rgba(var(--color-white-100));
-  --color-icon-subtle: rgba(var(--color-neutrals-500));
-  --color-icon-success: rgba(var(--color-primary-green-400));
-  --color-icon-warning: rgba(var(--color-primary-yellow-600));
-  --color-ios-icon: rgb(231, 231, 231);
-  --color-ios-keyboard-button: rgb(36, 36, 36);
-  --color-ios-primary: rgb(0, 122, 255);
-  --color-ios-surface-dark: rgb(36, 36, 36);
-  --color-ios-surface-default: rgba(32, 32, 32, 0.92);
-  --color-ios-surface-elevated: rgb(67, 67, 67);
-  --color-ios-text: rgb(255, 255, 255);
-  --color-ios-text-inverted: rgb(255, 255, 255);
-  --color-shadow-default: rgba(var(--color-black-30));
-  --color-shadow-strong: rgba(var(--color-black-100));
-  --color-stroke-brand: rgba(var(--color-primary-orange-600));
-  --color-stroke-danger: rgba(var(--color-primary-red-400));
-  --color-stroke-default: rgba(var(--color-black-100));
-  --color-stroke-default-web: rgba(var(--color-neutrals-700));
-  --color-stroke-focused: rgba(var(--color-white-30));
-  --color-stroke-subtle: rgba(var(--color-white-12));
-  --color-surface-brand: rgba(var(--color-primary-orange-600));
-  --color-surface-danger-default: rgba(var(--color-primary-red-1000));
-  --color-surface-danger-vibrant: rgba(var(--color-primary-red-600));
-  --color-surface-default: rgba(var(--color-neutrals-1000));
-  --color-surface-default-web: rgba(var(--color-black-100));
-  --color-surface-elevated: rgba(var(--color-neutrals-900));
-  --color-surface-elevated-web: rgba(var(--color-neutrals-900));
-  --color-surface-info-default: rgba(var(--color-primary-blue-1000));
-  --color-surface-info-vibrant: rgba(var(--color-primary-blue-400));
-  --color-surface-input: rgba(var(--color-white-12));
-  --color-surface-inverted: rgba(var(--color-white-100));
-  --color-surface-match-mode: rgba(var(--color-black-100));
-  --color-surface-pressed-overlay: rgba(var(--color-white-18));
-  --color-surface-stable-dark: rgba(var(--color-black-100));
-  --color-surface-stable-light: rgba(var(--color-white-100));
-  --color-surface-success-default: rgba(var(--color-primary-green-800));
-  --color-surface-success-vibrant: rgba(var(--color-primary-green-600));
-  --color-surface-sunken: rgba(var(--color-black-100));
-  --color-surface-text: rgba(var(--color-primary-orange-800));
-  --color-surface-transparent: rgba(var(--color-white-12));
-  --color-surface-warning-default: rgba(var(--color-primary-yellow-1000));
-  --color-surface-warning-vibrant: rgba(var(--color-primary-yellow-600));
-  --color-text-brand: rgba(var(--color-primary-orange-400));
-  --color-text-danger: rgba(var(--color-primary-red-400));
-  --color-text-danger-accessible: rgba(var(--color-primary-red-200));
-  --color-text-info: rgba(var(--color-primary-blue-400));
-  --color-text-info-accessible: rgba(var(--color-primary-blue-200));
-  --color-text-link: rgba(var(--color-primary-blue-400));
-  --color-text-primary: rgba(var(--color-white-100));
-  --color-text-secondary: rgba(var(--color-neutrals-400));
-  --color-text-secondary-web: rgba(var(--color-neutrals-300));
-  --color-text-stable: rgba(var(--color-white-100));
-  --color-text-subtle: rgba(var(--color-neutrals-500));
-  --color-text-success: rgba(var(--color-primary-green-400));
-  --color-text-success-accessible: rgba(var(--color-primary-green-200));
-  --color-text-warning: rgba(var(--color-primary-yellow-600));
-  --color-text-warning-accessible: rgba(var(--color-primary-yellow-200));
-}
-
-
-.test-color {
-  color: yellow;
-  background-color: var(--color-primary-orange-400, green);
-}
+@import "@argent/x-ui/styles/tailwind.css";
 
 .modal-font {
   font-family:

From 14267a7089732af1fb0fea7a90e56f65971bfeab Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:27:14 +0100
Subject: [PATCH 05/88] chore: delete redundant component

---
 src/modal/layouts/argent/QRCode.svelte | 469 -------------------------
 1 file changed, 469 deletions(-)
 delete mode 100644 src/modal/layouts/argent/QRCode.svelte

diff --git a/src/modal/layouts/argent/QRCode.svelte b/src/modal/layouts/argent/QRCode.svelte
deleted file mode 100644
index e04d3fa..0000000
--- a/src/modal/layouts/argent/QRCode.svelte
+++ /dev/null
@@ -1,469 +0,0 @@
-<svg width="242" height="242" viewBox="0 0 242 242" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-  <rect width="242" height="242" rx="35" fill="white"/>
-  <path d="M76.3877 20.683C77.4485 20.683 78.3085 19.8231 78.3085 18.7622C78.3085 17.7014 77.4485 16.8414 76.3877 16.8414C75.3268 16.8414 74.4668 17.7014 74.4668 18.7622C74.4668 19.8231 75.3268 20.683 76.3877 20.683Z" fill="black"/>
-  <path d="M89.1921 20.6826C90.2529 20.6826 91.1129 19.8226 91.1129 18.7618C91.1129 17.7009 90.2529 16.8409 89.1921 16.8409C88.1313 16.8409 87.2713 17.7009 87.2713 18.7618C87.2713 19.8226 88.1313 20.6826 89.1921 20.6826Z" fill="black"/>
-  <path d="M134.011 20.6826C135.072 20.6826 135.932 19.8226 135.932 18.7618C135.932 17.7009 135.072 16.8409 134.011 16.8409C132.95 16.8409 132.09 17.7009 132.09 18.7618C132.09 19.8226 132.95 20.6826 134.011 20.6826Z" fill="black"/>
-  <path d="M140.415 20.6826C141.476 20.6826 142.336 19.8226 142.336 18.7617C142.336 17.7009 141.476 16.8409 140.415 16.8409C139.355 16.8409 138.495 17.7009 138.495 18.7617C138.495 19.8226 139.355 20.6826 140.415 20.6826Z" fill="black"/>
-  <path d="M159.623 20.6826C160.684 20.6826 161.544 19.8226 161.544 18.7617C161.544 17.7009 160.684 16.8409 159.623 16.8409C158.563 16.8409 157.703 17.7009 157.703 18.7617C157.703 19.8226 158.563 20.6826 159.623 20.6826Z" fill="black"/>
-  <path d="M172.427 20.683C173.488 20.683 174.348 19.8231 174.348 18.7622C174.348 17.7014 173.488 16.8414 172.427 16.8414C171.366 16.8414 170.506 17.7014 170.506 18.7622C170.506 19.8231 171.366 20.683 172.427 20.683Z" fill="black"/>
-  <path d="M69.9832 27.0847C71.044 27.0847 71.904 26.2247 71.904 25.1639C71.904 24.103 71.044 23.243 69.9832 23.243C68.9223 23.243 68.0623 24.103 68.0623 25.1639C68.0623 26.2247 68.9223 27.0847 69.9832 27.0847Z" fill="black"/>
-  <path d="M76.3877 27.0847C77.4485 27.0847 78.3085 26.2247 78.3085 25.1639C78.3085 24.103 77.4485 23.243 76.3877 23.243C75.3268 23.243 74.4668 24.103 74.4668 25.1639C74.4668 26.2247 75.3268 27.0847 76.3877 27.0847Z" fill="black"/>
-  <path d="M82.7871 27.0847C83.848 27.0847 84.7079 26.2247 84.7079 25.1638C84.7079 24.103 83.848 23.243 82.7871 23.243C81.7263 23.243 80.8663 24.103 80.8663 25.1638C80.8663 26.2247 81.7263 27.0847 82.7871 27.0847Z" fill="black"/>
-  <path d="M95.5957 27.0847C96.6565 27.0847 97.5165 26.2247 97.5165 25.1639C97.5165 24.103 96.6565 23.243 95.5957 23.243C94.5348 23.243 93.6748 24.103 93.6748 25.1639C93.6748 26.2247 94.5348 27.0847 95.5957 27.0847Z" fill="black"/>
-  <path d="M108.4 27.0847C109.461 27.0847 110.321 26.2247 110.321 25.1639C110.321 24.103 109.461 23.243 108.4 23.243C107.339 23.243 106.479 24.103 106.479 25.1639C106.479 26.2247 107.339 27.0847 108.4 27.0847Z" fill="black"/>
-  <path d="M114.803 27.0847C115.864 27.0847 116.724 26.2247 116.724 25.1639C116.724 24.103 115.864 23.243 114.803 23.243C113.742 23.243 112.882 24.103 112.882 25.1639C112.882 26.2247 113.742 27.0847 114.803 27.0847Z" fill="black"/>
-  <path d="M134.011 27.0847C135.072 27.0847 135.932 26.2247 135.932 25.1639C135.932 24.103 135.072 23.243 134.011 23.243C132.95 23.243 132.09 24.103 132.09 25.1639C132.09 26.2247 132.95 27.0847 134.011 27.0847Z" fill="black"/>
-  <path d="M140.415 27.0847C141.476 27.0847 142.336 26.2247 142.336 25.1638C142.336 24.103 141.476 23.243 140.415 23.243C139.355 23.243 138.495 24.103 138.495 25.1638C138.495 26.2247 139.355 27.0847 140.415 27.0847Z" fill="black"/>
-  <path d="M153.219 27.0847C154.28 27.0847 155.14 26.2247 155.14 25.1639C155.14 24.103 154.28 23.243 153.219 23.243C152.158 23.243 151.298 24.103 151.298 25.1639C151.298 26.2247 152.158 27.0847 153.219 27.0847Z" fill="black"/>
-  <path d="M159.623 27.0847C160.684 27.0847 161.544 26.2247 161.544 25.1638C161.544 24.103 160.684 23.243 159.623 23.243C158.563 23.243 157.703 24.103 157.703 25.1638C157.703 26.2247 158.563 27.0847 159.623 27.0847Z" fill="black"/>
-  <path d="M69.9832 33.4884C71.044 33.4884 71.904 32.6284 71.904 31.5676C71.904 30.5067 71.044 29.6467 69.9832 29.6467C68.9223 29.6467 68.0623 30.5067 68.0623 31.5676C68.0623 32.6284 68.9223 33.4884 69.9832 33.4884Z" fill="black"/>
-  <path d="M82.7871 33.4884C83.848 33.4884 84.7079 32.6284 84.7079 31.5675C84.7079 30.5067 83.848 29.6467 82.7871 29.6467C81.7263 29.6467 80.8663 30.5067 80.8663 31.5675C80.8663 32.6284 81.7263 33.4884 82.7871 33.4884Z" fill="black"/>
-  <path d="M114.803 33.4884C115.864 33.4884 116.724 32.6284 116.724 31.5676C116.724 30.5067 115.864 29.6467 114.803 29.6467C113.742 29.6467 112.882 30.5067 112.882 31.5676C112.882 32.6284 113.742 33.4884 114.803 33.4884Z" fill="black"/>
-  <path d="M127.607 33.489C128.668 33.489 129.528 32.629 129.528 31.5681C129.528 30.5073 128.668 29.6473 127.607 29.6473C126.546 29.6473 125.686 30.5073 125.686 31.5681C125.686 32.629 126.546 33.489 127.607 33.489Z" fill="black"/>
-  <path d="M134.011 33.4884C135.072 33.4884 135.932 32.6284 135.932 31.5676C135.932 30.5067 135.072 29.6467 134.011 29.6467C132.95 29.6467 132.09 30.5067 132.09 31.5676C132.09 32.6284 132.95 33.4884 134.011 33.4884Z" fill="black"/>
-  <path d="M140.415 33.4884C141.476 33.4884 142.336 32.6284 142.336 31.5675C142.336 30.5067 141.476 29.6467 140.415 29.6467C139.355 29.6467 138.495 30.5067 138.495 31.5675C138.495 32.6284 139.355 33.4884 140.415 33.4884Z" fill="black"/>
-  <path d="M146.815 33.489C147.876 33.489 148.736 32.629 148.736 31.5681C148.736 30.5073 147.876 29.6473 146.815 29.6473C145.754 29.6473 144.894 30.5073 144.894 31.5681C144.894 32.629 145.754 33.489 146.815 33.489Z" fill="black"/>
-  <path d="M153.219 33.489C154.28 33.489 155.14 32.629 155.14 31.5681C155.14 30.5073 154.28 29.6473 153.219 29.6473C152.158 29.6473 151.298 30.5073 151.298 31.5681C151.298 32.629 152.158 33.489 153.219 33.489Z" fill="black"/>
-  <path d="M159.623 33.4884C160.684 33.4884 161.544 32.6284 161.544 31.5675C161.544 30.5067 160.684 29.6467 159.623 29.6467C158.563 29.6467 157.703 30.5067 157.703 31.5675C157.703 32.6284 158.563 33.4884 159.623 33.4884Z" fill="black"/>
-  <path d="M172.427 33.489C173.488 33.489 174.348 32.629 174.348 31.5681C174.348 30.5073 173.488 29.6473 172.427 29.6473C171.366 29.6473 170.506 30.5073 170.506 31.5681C170.506 32.629 171.366 33.489 172.427 33.489Z" fill="black"/>
-  <path d="M69.9832 39.8905C71.044 39.8905 71.904 39.0305 71.904 37.9697C71.904 36.9088 71.044 36.0488 69.9832 36.0488C68.9223 36.0488 68.0623 36.9088 68.0623 37.9697C68.0623 39.0305 68.9223 39.8905 69.9832 39.8905Z" fill="black"/>
-  <path d="M76.3877 39.8906C77.4485 39.8906 78.3085 39.0306 78.3085 37.9698C78.3085 36.9089 77.4485 36.0489 76.3877 36.0489C75.3268 36.0489 74.4668 36.9089 74.4668 37.9698C74.4668 39.0306 75.3268 39.8906 76.3877 39.8906Z" fill="black"/>
-  <path d="M95.5957 39.8906C96.6565 39.8906 97.5165 39.0306 97.5165 37.9698C97.5165 36.9089 96.6565 36.0489 95.5957 36.0489C94.5348 36.0489 93.6748 36.9089 93.6748 37.9698C93.6748 39.0306 94.5348 39.8906 95.5957 39.8906Z" fill="black"/>
-  <path d="M101.994 39.8906C103.055 39.8906 103.915 39.0306 103.915 37.9697C103.915 36.9089 103.055 36.0489 101.994 36.0489C100.934 36.0489 100.074 36.9089 100.074 37.9697C100.074 39.0306 100.934 39.8906 101.994 39.8906Z" fill="black"/>
-  <path d="M127.607 39.8906C128.668 39.8906 129.528 39.0306 129.528 37.9698C129.528 36.9089 128.668 36.0489 127.607 36.0489C126.546 36.0489 125.686 36.9089 125.686 37.9698C125.686 39.0306 126.546 39.8906 127.607 39.8906Z" fill="black"/>
-  <path d="M134.011 39.8905C135.072 39.8905 135.932 39.0305 135.932 37.9697C135.932 36.9088 135.072 36.0488 134.011 36.0488C132.95 36.0488 132.09 36.9088 132.09 37.9697C132.09 39.0305 132.95 39.8905 134.011 39.8905Z" fill="black"/>
-  <path d="M140.415 39.8905C141.476 39.8905 142.336 39.0305 142.336 37.9696C142.336 36.9088 141.476 36.0488 140.415 36.0488C139.355 36.0488 138.495 36.9088 138.495 37.9696C138.495 39.0305 139.355 39.8905 140.415 39.8905Z" fill="black"/>
-  <path d="M153.219 39.8906C154.28 39.8906 155.14 39.0306 155.14 37.9698C155.14 36.9089 154.28 36.0489 153.219 36.0489C152.158 36.0489 151.298 36.9089 151.298 37.9698C151.298 39.0306 152.158 39.8906 153.219 39.8906Z" fill="black"/>
-  <path d="M159.623 39.8905C160.684 39.8905 161.544 39.0305 161.544 37.9696C161.544 36.9088 160.684 36.0488 159.623 36.0488C158.563 36.0488 157.703 36.9088 157.703 37.9696C157.703 39.0305 158.563 39.8905 159.623 39.8905Z" fill="black"/>
-  <path d="M166.025 39.8905C167.086 39.8905 167.946 39.0305 167.946 37.9696C167.946 36.9088 167.086 36.0488 166.025 36.0488C164.964 36.0488 164.104 36.9088 164.104 37.9696C164.104 39.0305 164.964 39.8905 166.025 39.8905Z" fill="black"/>
-  <path d="M69.9832 46.2934C71.044 46.2934 71.904 45.4334 71.904 44.3726C71.904 43.3117 71.044 42.4517 69.9832 42.4517C68.9223 42.4517 68.0623 43.3117 68.0623 44.3726C68.0623 45.4334 68.9223 46.2934 69.9832 46.2934Z" fill="black"/>
-  <path d="M76.3877 46.2928C77.4485 46.2928 78.3085 45.4328 78.3085 44.372C78.3085 43.3111 77.4485 42.4511 76.3877 42.4511C75.3268 42.4511 74.4668 43.3111 74.4668 44.372C74.4668 45.4328 75.3268 46.2928 76.3877 46.2928Z" fill="black"/>
-  <path d="M82.7871 46.2936C83.848 46.2936 84.7079 45.4336 84.7079 44.3727C84.7079 43.3119 83.848 42.4519 82.7871 42.4519C81.7263 42.4519 80.8663 43.3119 80.8663 44.3727C80.8663 45.4336 81.7263 46.2936 82.7871 46.2936Z" fill="black"/>
-  <path d="M95.5957 46.2928C96.6565 46.2928 97.5165 45.4328 97.5165 44.372C97.5165 43.3111 96.6565 42.4511 95.5957 42.4511C94.5348 42.4511 93.6748 43.3111 93.6748 44.372C93.6748 45.4328 94.5348 46.2928 95.5957 46.2928Z" fill="black"/>
-  <path d="M101.994 46.2927C103.055 46.2927 103.915 45.4328 103.915 44.3719C103.915 43.3111 103.055 42.4511 101.994 42.4511C100.934 42.4511 100.074 43.3111 100.074 44.3719C100.074 45.4328 100.934 46.2927 101.994 46.2927Z" fill="black"/>
-  <path d="M108.4 46.2934C109.461 46.2934 110.321 45.4334 110.321 44.3726C110.321 43.3117 109.461 42.4517 108.4 42.4517C107.339 42.4517 106.479 43.3117 106.479 44.3726C106.479 45.4334 107.339 46.2934 108.4 46.2934Z" fill="black"/>
-  <path d="M114.803 46.2934C115.864 46.2934 116.724 45.4334 116.724 44.3726C116.724 43.3117 115.864 42.4517 114.803 42.4517C113.742 42.4517 112.882 43.3117 112.882 44.3726C112.882 45.4334 113.742 46.2934 114.803 46.2934Z" fill="black"/>
-  <path d="M121.208 46.2927C122.269 46.2927 123.129 45.4328 123.129 44.3719C123.129 43.3111 122.269 42.4511 121.208 42.4511C120.147 42.4511 119.287 43.3111 119.287 44.3719C119.287 45.4328 120.147 46.2927 121.208 46.2927Z" fill="black"/>
-  <path d="M127.607 46.2928C128.668 46.2928 129.528 45.4328 129.528 44.372C129.528 43.3111 128.668 42.4511 127.607 42.4511C126.546 42.4511 125.686 43.3111 125.686 44.372C125.686 45.4328 126.546 46.2928 127.607 46.2928Z" fill="black"/>
-  <path d="M134.011 46.2934C135.072 46.2934 135.932 45.4334 135.932 44.3726C135.932 43.3117 135.072 42.4517 134.011 42.4517C132.95 42.4517 132.09 43.3117 132.09 44.3726C132.09 45.4334 132.95 46.2934 134.011 46.2934Z" fill="black"/>
-  <path d="M140.415 46.2936C141.476 46.2936 142.336 45.4336 142.336 44.3727C142.336 43.3119 141.476 42.4519 140.415 42.4519C139.355 42.4519 138.495 43.3119 138.495 44.3727C138.495 45.4336 139.355 46.2936 140.415 46.2936Z" fill="black"/>
-  <path d="M153.219 46.2928C154.28 46.2928 155.14 45.4328 155.14 44.372C155.14 43.3111 154.28 42.4511 153.219 42.4511C152.158 42.4511 151.298 43.3111 151.298 44.372C151.298 45.4328 152.158 46.2928 153.219 46.2928Z" fill="black"/>
-  <path d="M159.623 46.2936C160.684 46.2936 161.544 45.4336 161.544 44.3727C161.544 43.3119 160.684 42.4519 159.623 42.4519C158.563 42.4519 157.703 43.3119 157.703 44.3727C157.703 45.4336 158.563 46.2936 159.623 46.2936Z" fill="black"/>
-  <path d="M166.025 46.2936C167.086 46.2936 167.946 45.4336 167.946 44.3727C167.946 43.3119 167.086 42.4519 166.025 42.4519C164.964 42.4519 164.104 43.3119 164.104 44.3727C164.104 45.4336 164.964 46.2936 166.025 46.2936Z" fill="black"/>
-  <path d="M69.9832 52.6963C71.044 52.6963 71.904 51.8363 71.904 50.7754C71.904 49.7146 71.044 48.8546 69.9832 48.8546C68.9223 48.8546 68.0623 49.7146 68.0623 50.7754C68.0623 51.8363 68.9223 52.6963 69.9832 52.6963Z" fill="black"/>
-  <path d="M76.3877 52.6964C77.4485 52.6964 78.3085 51.8364 78.3085 50.7756C78.3085 49.7147 77.4485 48.8547 76.3877 48.8547C75.3268 48.8547 74.4668 49.7147 74.4668 50.7756C74.4668 51.8364 75.3268 52.6964 76.3877 52.6964Z" fill="black"/>
-  <path d="M101.994 52.6964C103.055 52.6964 103.915 51.8364 103.915 50.7755C103.915 49.7147 103.055 48.8547 101.994 48.8547C100.934 48.8547 100.074 49.7147 100.074 50.7755C100.074 51.8364 100.934 52.6964 101.994 52.6964Z" fill="black"/>
-  <path d="M114.803 52.6963C115.864 52.6963 116.724 51.8363 116.724 50.7754C116.724 49.7146 115.864 48.8546 114.803 48.8546C113.742 48.8546 112.882 49.7146 112.882 50.7754C112.882 51.8363 113.742 52.6963 114.803 52.6963Z" fill="black"/>
-  <path d="M127.607 52.6964C128.668 52.6964 129.528 51.8364 129.528 50.7756C129.528 49.7147 128.668 48.8547 127.607 48.8547C126.546 48.8547 125.686 49.7147 125.686 50.7756C125.686 51.8364 126.546 52.6964 127.607 52.6964Z" fill="black"/>
-  <path d="M134.011 52.6963C135.072 52.6963 135.932 51.8363 135.932 50.7754C135.932 49.7146 135.072 48.8546 134.011 48.8546C132.95 48.8546 132.09 49.7146 132.09 50.7754C132.09 51.8363 132.95 52.6963 134.011 52.6963Z" fill="black"/>
-  <path d="M166.025 52.6963C167.086 52.6963 167.946 51.8363 167.946 50.7754C167.946 49.7146 167.086 48.8546 166.025 48.8546C164.964 48.8546 164.104 49.7146 164.104 50.7754C164.104 51.8363 164.964 52.6963 166.025 52.6963Z" fill="black"/>
-  <path d="M69.9832 59.0992C71.044 59.0992 71.904 58.2392 71.904 57.1783C71.904 56.1175 71.044 55.2575 69.9832 55.2575C68.9223 55.2575 68.0623 56.1175 68.0623 57.1783C68.0623 58.2392 68.9223 59.0992 69.9832 59.0992Z" fill="black"/>
-  <path d="M82.7871 59.0994C83.848 59.0994 84.7079 58.2394 84.7079 57.1785C84.7079 56.1177 83.848 55.2577 82.7871 55.2577C81.7263 55.2577 80.8663 56.1177 80.8663 57.1785C80.8663 58.2394 81.7263 59.0994 82.7871 59.0994Z" fill="black"/>
-  <path d="M95.5957 59.0987C96.6565 59.0987 97.5165 58.2387 97.5165 57.1779C97.5165 56.117 96.6565 55.257 95.5957 55.257C94.5348 55.257 93.6748 56.117 93.6748 57.1779C93.6748 58.2387 94.5348 59.0987 95.5957 59.0987Z" fill="black"/>
-  <path d="M108.4 59.0992C109.461 59.0992 110.321 58.2392 110.321 57.1783C110.321 56.1175 109.461 55.2575 108.4 55.2575C107.339 55.2575 106.479 56.1175 106.479 57.1783C106.479 58.2392 107.339 59.0992 108.4 59.0992Z" fill="black"/>
-  <path d="M121.208 59.0986C122.269 59.0986 123.129 58.2386 123.129 57.1778C123.129 56.1169 122.269 55.257 121.208 55.257C120.147 55.257 119.287 56.1169 119.287 57.1778C119.287 58.2386 120.147 59.0986 121.208 59.0986Z" fill="black"/>
-  <path d="M134.011 59.0992C135.072 59.0992 135.932 58.2392 135.932 57.1783C135.932 56.1175 135.072 55.2575 134.011 55.2575C132.95 55.2575 132.09 56.1175 132.09 57.1783C132.09 58.2392 132.95 59.0992 134.011 59.0992Z" fill="black"/>
-  <path d="M146.815 59.0987C147.876 59.0987 148.736 58.2387 148.736 57.1779C148.736 56.117 147.876 55.257 146.815 55.257C145.754 55.257 144.894 56.117 144.894 57.1779C144.894 58.2387 145.754 59.0987 146.815 59.0987Z" fill="black"/>
-  <path d="M159.623 59.0994C160.684 59.0994 161.544 58.2394 161.544 57.1785C161.544 56.1177 160.684 55.2577 159.623 55.2577C158.563 55.2577 157.703 56.1177 157.703 57.1785C157.703 58.2394 158.563 59.0994 159.623 59.0994Z" fill="black"/>
-  <path d="M172.427 59.0987C173.488 59.0987 174.348 58.2387 174.348 57.1779C174.348 56.117 173.488 55.257 172.427 55.257C171.366 55.257 170.506 56.117 170.506 57.1779C170.506 58.2387 171.366 59.0987 172.427 59.0987Z" fill="black"/>
-  <path d="M76.3877 65.5023C77.4485 65.5023 78.3085 64.6423 78.3085 63.5815C78.3085 62.5206 77.4485 61.6606 76.3877 61.6606C75.3268 61.6606 74.4668 62.5206 74.4668 63.5815C74.4668 64.6423 75.3268 65.5023 76.3877 65.5023Z" fill="black"/>
-  <path d="M82.7871 65.5021C83.848 65.5021 84.7079 64.6421 84.7079 63.5812C84.7079 62.5204 83.848 61.6604 82.7871 61.6604C81.7263 61.6604 80.8663 62.5204 80.8663 63.5812C80.8663 64.6421 81.7263 65.5021 82.7871 65.5021Z" fill="black"/>
-  <path d="M95.5957 65.5023C96.6565 65.5023 97.5165 64.6423 97.5165 63.5815C97.5165 62.5206 96.6565 61.6606 95.5957 61.6606C94.5348 61.6606 93.6748 62.5206 93.6748 63.5815C93.6748 64.6423 94.5348 65.5023 95.5957 65.5023Z" fill="black"/>
-  <path d="M127.607 65.5023C128.668 65.5023 129.528 64.6423 129.528 63.5815C129.528 62.5206 128.668 61.6606 127.607 61.6606C126.546 61.6606 125.686 62.5206 125.686 63.5815C125.686 64.6423 126.546 65.5023 127.607 65.5023Z" fill="black"/>
-  <path d="M134.011 65.5021C135.072 65.5021 135.932 64.6421 135.932 63.5812C135.932 62.5204 135.072 61.6604 134.011 61.6604C132.95 61.6604 132.09 62.5204 132.09 63.5812C132.09 64.6421 132.95 65.5021 134.011 65.5021Z" fill="black"/>
-  <path d="M140.415 65.5021C141.476 65.5021 142.336 64.6421 142.336 63.5812C142.336 62.5204 141.476 61.6604 140.415 61.6604C139.355 61.6604 138.495 62.5204 138.495 63.5812C138.495 64.6421 139.355 65.5021 140.415 65.5021Z" fill="black"/>
-  <path d="M146.815 65.5023C147.876 65.5023 148.736 64.6423 148.736 63.5815C148.736 62.5206 147.876 61.6606 146.815 61.6606C145.754 61.6606 144.894 62.5206 144.894 63.5815C144.894 64.6423 145.754 65.5023 146.815 65.5023Z" fill="black"/>
-  <path d="M159.623 65.5021C160.684 65.5021 161.544 64.6421 161.544 63.5812C161.544 62.5204 160.684 61.6604 159.623 61.6604C158.563 61.6604 157.703 62.5204 157.703 63.5812C157.703 64.6421 158.563 65.5021 159.623 65.5021Z" fill="black"/>
-  <path d="M166.025 65.5021C167.086 65.5021 167.946 64.6421 167.946 63.5812C167.946 62.5204 167.086 61.6604 166.025 61.6604C164.964 61.6604 164.104 62.5204 164.104 63.5812C164.104 64.6421 164.964 65.5021 166.025 65.5021Z" fill="black"/>
-  <path d="M172.427 65.5023C173.488 65.5023 174.348 64.6423 174.348 63.5815C174.348 62.5206 173.488 61.6606 172.427 61.6606C171.366 61.6606 170.506 62.5206 170.506 63.5815C170.506 64.6423 171.366 65.5023 172.427 65.5023Z" fill="black"/>
-  <path d="M31.5663 71.9045C32.6271 71.9045 33.4871 71.0445 33.4871 69.9837C33.4871 68.9228 32.6271 68.0628 31.5663 68.0628C30.5054 68.0628 29.6454 68.9228 29.6454 69.9837C29.6454 71.0445 30.5054 71.9045 31.5663 71.9045Z" fill="black"/>
-  <path d="M50.7761 71.9045C51.8369 71.9045 52.6969 71.0445 52.6969 69.9837C52.6969 68.9228 51.8369 68.0628 50.7761 68.0628C49.7152 68.0628 48.8553 68.9228 48.8553 69.9837C48.8553 71.0445 49.7152 71.9045 50.7761 71.9045Z" fill="black"/>
-  <path d="M57.177 71.9044C58.2378 71.9044 59.0978 71.0444 59.0978 69.9836C59.0978 68.9227 58.2378 68.0628 57.177 68.0628C56.1162 68.0628 55.2562 68.9227 55.2562 69.9836C55.2562 71.0444 56.1162 71.9044 57.177 71.9044Z" fill="black"/>
-  <path d="M63.5791 71.9052C64.64 71.9052 65.5 71.0452 65.5 69.9844C65.5 68.9236 64.64 68.0636 63.5791 68.0636C62.5183 68.0636 61.6583 68.9236 61.6583 69.9844C61.6583 71.0452 62.5183 71.9052 63.5791 71.9052Z" fill="black"/>
-  <path d="M69.9832 71.9051C71.044 71.9051 71.904 71.0451 71.904 69.9842C71.904 68.9234 71.044 68.0634 69.9832 68.0634C68.9223 68.0634 68.0623 68.9234 68.0623 69.9842C68.0623 71.0451 68.9223 71.9051 69.9832 71.9051Z" fill="black"/>
-  <path d="M76.3877 71.9045C77.4485 71.9045 78.3085 71.0445 78.3085 69.9837C78.3085 68.9228 77.4485 68.0628 76.3877 68.0628C75.3268 68.0628 74.4668 68.9228 74.4668 69.9837C74.4668 71.0445 75.3268 71.9045 76.3877 71.9045Z" fill="black"/>
-  <path d="M89.1921 71.9051C90.2529 71.9051 91.1129 71.0451 91.1129 69.9842C91.1129 68.9234 90.2529 68.0634 89.1921 68.0634C88.1313 68.0634 87.2713 68.9234 87.2713 69.9842C87.2713 71.0451 88.1313 71.9051 89.1921 71.9051Z" fill="black"/>
-  <path d="M114.803 71.9051C115.864 71.9051 116.724 71.0451 116.724 69.9842C116.724 68.9234 115.864 68.0634 114.803 68.0634C113.742 68.0634 112.882 68.9234 112.882 69.9842C112.882 71.0451 113.742 71.9051 114.803 71.9051Z" fill="black"/>
-  <path d="M127.607 71.9045C128.668 71.9045 129.528 71.0445 129.528 69.9837C129.528 68.9228 128.668 68.0628 127.607 68.0628C126.546 68.0628 125.686 68.9228 125.686 69.9837C125.686 71.0445 126.546 71.9045 127.607 71.9045Z" fill="black"/>
-  <path d="M172.427 71.9045C173.488 71.9045 174.348 71.0445 174.348 69.9837C174.348 68.9228 173.488 68.0628 172.427 68.0628C171.366 68.0628 170.506 68.9228 170.506 69.9837C170.506 71.0445 171.366 71.9045 172.427 71.9045Z" fill="black"/>
-  <path d="M178.832 71.9044C179.893 71.9044 180.753 71.0444 180.753 69.9836C180.753 68.9227 179.893 68.0628 178.832 68.0628C177.771 68.0628 176.911 68.9227 176.911 69.9836C176.911 71.0444 177.771 71.9044 178.832 71.9044Z" fill="black"/>
-  <path d="M191.637 71.9045C192.697 71.9045 193.557 71.0445 193.557 69.9837C193.557 68.9228 192.697 68.0628 191.637 68.0628C190.576 68.0628 189.716 68.9228 189.716 69.9837C189.716 71.0445 190.576 71.9045 191.637 71.9045Z" fill="black"/>
-  <path d="M198.039 71.9044C199.1 71.9044 199.96 71.0444 199.96 69.9836C199.96 68.9227 199.1 68.0628 198.039 68.0628C196.979 68.0628 196.119 68.9227 196.119 69.9836C196.119 71.0444 196.979 71.9044 198.039 71.9044Z" fill="black"/>
-  <path d="M204.44 71.9052C205.501 71.9052 206.361 71.0452 206.361 69.9844C206.361 68.9236 205.501 68.0636 204.44 68.0636C203.379 68.0636 202.519 68.9236 202.519 69.9844C202.519 71.0452 203.379 71.9052 204.44 71.9052Z" fill="black"/>
-  <path d="M210.845 71.9045C211.905 71.9045 212.765 71.0445 212.765 69.9837C212.765 68.9228 211.905 68.0628 210.845 68.0628C209.784 68.0628 208.924 68.9228 208.924 69.9837C208.924 71.0445 209.784 71.9045 210.845 71.9045Z" fill="black"/>
-  <path d="M217.248 71.9045C218.309 71.9045 219.169 71.0445 219.169 69.9837C219.169 68.9228 218.309 68.0628 217.248 68.0628C216.187 68.0628 215.327 68.9228 215.327 69.9837C215.327 71.0445 216.187 71.9045 217.248 71.9045Z" fill="black"/>
-  <path d="M25.1668 78.3069C26.2276 78.3069 27.0876 77.4469 27.0876 76.386C27.0876 75.3252 26.2276 74.4652 25.1668 74.4652C24.1059 74.4652 23.2459 75.3252 23.2459 76.386C23.2459 77.4469 24.1059 78.3069 25.1668 78.3069Z" fill="black"/>
-  <path d="M31.5663 78.3075C32.6271 78.3075 33.4871 77.4475 33.4871 76.3867C33.4871 75.3258 32.6271 74.4659 31.5663 74.4659C30.5054 74.4659 29.6454 75.3258 29.6454 76.3867C29.6454 77.4475 30.5054 78.3075 31.5663 78.3075Z" fill="black"/>
-  <path d="M50.7761 78.3075C51.8369 78.3075 52.6969 77.4475 52.6969 76.3867C52.6969 75.3258 51.8369 74.4659 50.7761 74.4659C49.7152 74.4659 48.8553 75.3258 48.8553 76.3867C48.8553 77.4475 49.7152 78.3075 50.7761 78.3075Z" fill="black"/>
-  <path d="M76.3877 78.3075C77.4485 78.3075 78.3085 77.4475 78.3085 76.3867C78.3085 75.3258 77.4485 74.4659 76.3877 74.4659C75.3268 74.4659 74.4668 75.3258 74.4668 76.3867C74.4668 77.4475 75.3268 78.3075 76.3877 78.3075Z" fill="black"/>
-  <path d="M89.1921 78.3071C90.2529 78.3071 91.1129 77.4471 91.1129 76.3862C91.1129 75.3254 90.2529 74.4654 89.1921 74.4654C88.1313 74.4654 87.2713 75.3254 87.2713 76.3862C87.2713 77.4471 88.1313 78.3071 89.1921 78.3071Z" fill="black"/>
-  <path d="M95.5957 78.3075C96.6565 78.3075 97.5165 77.4475 97.5165 76.3867C97.5165 75.3258 96.6565 74.4659 95.5957 74.4659C94.5348 74.4659 93.6748 75.3258 93.6748 76.3867C93.6748 77.4475 94.5348 78.3075 95.5957 78.3075Z" fill="black"/>
-  <path d="M121.208 78.3076C122.269 78.3076 123.129 77.4476 123.129 76.3868C123.129 75.3259 122.269 74.4659 121.208 74.4659C120.147 74.4659 119.287 75.3259 119.287 76.3868C119.287 77.4476 120.147 78.3076 121.208 78.3076Z" fill="black"/>
-  <path d="M127.607 78.3075C128.668 78.3075 129.528 77.4475 129.528 76.3867C129.528 75.3258 128.668 74.4659 127.607 74.4659C126.546 74.4659 125.686 75.3258 125.686 76.3867C125.686 77.4475 126.546 78.3075 127.607 78.3075Z" fill="black"/>
-  <path d="M140.415 78.3069C141.476 78.3069 142.336 77.4469 142.336 76.386C142.336 75.3252 141.476 74.4652 140.415 74.4652C139.355 74.4652 138.495 75.3252 138.495 76.386C138.495 77.4469 139.355 78.3069 140.415 78.3069Z" fill="black"/>
-  <path d="M146.815 78.3075C147.876 78.3075 148.736 77.4475 148.736 76.3867C148.736 75.3258 147.876 74.4659 146.815 74.4659C145.754 74.4659 144.894 75.3258 144.894 76.3867C144.894 77.4475 145.754 78.3075 146.815 78.3075Z" fill="black"/>
-  <path d="M159.623 78.3069C160.684 78.3069 161.544 77.4469 161.544 76.386C161.544 75.3252 160.684 74.4652 159.623 74.4652C158.563 74.4652 157.703 75.3252 157.703 76.386C157.703 77.4469 158.563 78.3069 159.623 78.3069Z" fill="black"/>
-  <path d="M166.025 78.3069C167.086 78.3069 167.946 77.4469 167.946 76.386C167.946 75.3252 167.086 74.4652 166.025 74.4652C164.964 74.4652 164.104 75.3252 164.104 76.386C164.104 77.4469 164.964 78.3069 166.025 78.3069Z" fill="black"/>
-  <path d="M172.427 78.3075C173.488 78.3075 174.348 77.4475 174.348 76.3867C174.348 75.3258 173.488 74.4659 172.427 74.4659C171.366 74.4659 170.506 75.3258 170.506 76.3867C170.506 77.4475 171.366 78.3075 172.427 78.3075Z" fill="black"/>
-  <path d="M178.832 78.3076C179.893 78.3076 180.753 77.4476 180.753 76.3868C180.753 75.3259 179.893 74.4659 178.832 74.4659C177.771 74.4659 176.911 75.3259 176.911 76.3868C176.911 77.4476 177.771 78.3076 178.832 78.3076Z" fill="black"/>
-  <path d="M185.233 78.3069C186.294 78.3069 187.154 77.4469 187.154 76.386C187.154 75.3252 186.294 74.4652 185.233 74.4652C184.172 74.4652 183.312 75.3252 183.312 76.386C183.312 77.4469 184.172 78.3069 185.233 78.3069Z" fill="black"/>
-  <path d="M191.637 78.3075C192.697 78.3075 193.557 77.4475 193.557 76.3867C193.557 75.3258 192.697 74.4659 191.637 74.4659C190.576 74.4659 189.716 75.3258 189.716 76.3867C189.716 77.4475 190.576 78.3075 191.637 78.3075Z" fill="black"/>
-  <path d="M204.44 78.3069C205.501 78.3069 206.361 77.4469 206.361 76.386C206.361 75.3252 205.501 74.4652 204.44 74.4652C203.379 74.4652 202.519 75.3252 202.519 76.386C202.519 77.4469 203.379 78.3069 204.44 78.3069Z" fill="black"/>
-  <path d="M210.845 78.3075C211.905 78.3075 212.765 77.4475 212.765 76.3867C212.765 75.3258 211.905 74.4659 210.845 74.4659C209.784 74.4659 208.924 75.3258 208.924 76.3867C208.924 77.4475 209.784 78.3075 210.845 78.3075Z" fill="black"/>
-  <path d="M217.248 78.3075C218.309 78.3075 219.169 77.4475 219.169 76.3867C219.169 75.3258 218.309 74.4659 217.248 74.4659C216.187 74.4659 215.327 75.3258 215.327 76.3867C215.327 77.4475 216.187 78.3075 217.248 78.3075Z" fill="black"/>
-  <path d="M223.649 78.3076C224.71 78.3076 225.57 77.4476 225.57 76.3868C225.57 75.3259 224.71 74.4659 223.649 74.4659C222.588 74.4659 221.728 75.3259 221.728 76.3868C221.728 77.4476 222.588 78.3076 223.649 78.3076Z" fill="black"/>
-  <path d="M18.7618 84.71C19.8227 84.71 20.6827 83.85 20.6827 82.7891C20.6827 81.7283 19.8227 80.8683 18.7618 80.8683C17.701 80.8683 16.841 81.7283 16.841 82.7891C16.841 83.85 17.701 84.71 18.7618 84.71Z" fill="black"/>
-  <path d="M44.3704 84.71C45.4313 84.71 46.2912 83.85 46.2912 82.7891C46.2912 81.7283 45.4313 80.8683 44.3704 80.8683C43.3096 80.8683 42.4496 81.7283 42.4496 82.7891C42.4496 83.85 43.3096 84.71 44.3704 84.71Z" fill="black"/>
-  <path d="M57.177 84.7098C58.2378 84.7098 59.0978 83.8498 59.0978 82.789C59.0978 81.7281 58.2378 80.8681 57.177 80.8681C56.1162 80.8681 55.2562 81.7281 55.2562 82.789C55.2562 83.8498 56.1162 84.7098 57.177 84.7098Z" fill="black"/>
-  <path d="M63.5791 84.71C64.64 84.71 65.5 83.85 65.5 82.7891C65.5 81.7283 64.64 80.8683 63.5791 80.8683C62.5183 80.8683 61.6583 81.7283 61.6583 82.7891C61.6583 83.85 62.5183 84.71 63.5791 84.71Z" fill="black"/>
-  <path d="M82.7871 84.71C83.848 84.71 84.7079 83.85 84.7079 82.7891C84.7079 81.7283 83.848 80.8683 82.7871 80.8683C81.7263 80.8683 80.8663 81.7283 80.8663 82.7891C80.8663 83.85 81.7263 84.71 82.7871 84.71Z" fill="black"/>
-  <path d="M101.994 84.7098C103.055 84.7098 103.915 83.8498 103.915 82.789C103.915 81.7281 103.055 80.8681 101.994 80.8681C100.934 80.8681 100.074 81.7281 100.074 82.789C100.074 83.8498 100.934 84.7098 101.994 84.7098Z" fill="black"/>
-  <path d="M108.4 84.71C109.461 84.71 110.321 83.85 110.321 82.7891C110.321 81.7283 109.461 80.8683 108.4 80.8683C107.339 80.8683 106.479 81.7283 106.479 82.7891C106.479 83.85 107.339 84.71 108.4 84.71Z" fill="black"/>
-  <path d="M114.803 84.71C115.864 84.71 116.724 83.85 116.724 82.7891C116.724 81.7283 115.864 80.8683 114.803 80.8683C113.742 80.8683 112.882 81.7283 112.882 82.7891C112.882 83.85 113.742 84.71 114.803 84.71Z" fill="black"/>
-  <path d="M121.208 84.7098C122.269 84.7098 123.129 83.8498 123.129 82.789C123.129 81.7281 122.269 80.8681 121.208 80.8681C120.147 80.8681 119.287 81.7281 119.287 82.789C119.287 83.8498 120.147 84.7098 121.208 84.7098Z" fill="black"/>
-  <path d="M127.607 84.7097C128.668 84.7097 129.528 83.8497 129.528 82.7889C129.528 81.7281 128.668 80.8681 127.607 80.8681C126.546 80.8681 125.686 81.7281 125.686 82.7889C125.686 83.8497 126.546 84.7097 127.607 84.7097Z" fill="black"/>
-  <path d="M140.415 84.71C141.476 84.71 142.336 83.85 142.336 82.7891C142.336 81.7283 141.476 80.8683 140.415 80.8683C139.355 80.8683 138.495 81.7283 138.495 82.7891C138.495 83.85 139.355 84.71 140.415 84.71Z" fill="black"/>
-  <path d="M153.219 84.7097C154.28 84.7097 155.14 83.8497 155.14 82.7889C155.14 81.7281 154.28 80.8681 153.219 80.8681C152.158 80.8681 151.298 81.7281 151.298 82.7889C151.298 83.8497 152.158 84.7097 153.219 84.7097Z" fill="black"/>
-  <path d="M159.623 84.71C160.684 84.71 161.544 83.85 161.544 82.7891C161.544 81.7283 160.684 80.8683 159.623 80.8683C158.563 80.8683 157.703 81.7283 157.703 82.7891C157.703 83.85 158.563 84.71 159.623 84.71Z" fill="black"/>
-  <path d="M166.025 84.71C167.086 84.71 167.946 83.85 167.946 82.7891C167.946 81.7283 167.086 80.8683 166.025 80.8683C164.964 80.8683 164.104 81.7283 164.104 82.7891C164.104 83.85 164.964 84.71 166.025 84.71Z" fill="black"/>
-  <path d="M172.427 84.7097C173.488 84.7097 174.348 83.8497 174.348 82.7889C174.348 81.7281 173.488 80.8681 172.427 80.8681C171.366 80.8681 170.506 81.7281 170.506 82.7889C170.506 83.8497 171.366 84.7097 172.427 84.7097Z" fill="black"/>
-  <path d="M185.233 84.71C186.294 84.71 187.154 83.85 187.154 82.7891C187.154 81.7283 186.294 80.8683 185.233 80.8683C184.172 80.8683 183.312 81.7283 183.312 82.7891C183.312 83.85 184.172 84.71 185.233 84.71Z" fill="black"/>
-  <path d="M191.637 84.7097C192.697 84.7097 193.557 83.8497 193.557 82.7889C193.557 81.7281 192.697 80.8681 191.637 80.8681C190.576 80.8681 189.716 81.7281 189.716 82.7889C189.716 83.8497 190.576 84.7097 191.637 84.7097Z" fill="black"/>
-  <path d="M198.039 84.7098C199.1 84.7098 199.96 83.8498 199.96 82.789C199.96 81.7281 199.1 80.8681 198.039 80.8681C196.979 80.8681 196.119 81.7281 196.119 82.789C196.119 83.8498 196.979 84.7098 198.039 84.7098Z" fill="black"/>
-  <path d="M204.44 84.71C205.501 84.71 206.361 83.85 206.361 82.7891C206.361 81.7283 205.501 80.8683 204.44 80.8683C203.379 80.8683 202.519 81.7283 202.519 82.7891C202.519 83.85 203.379 84.71 204.44 84.71Z" fill="black"/>
-  <path d="M223.649 84.7098C224.71 84.7098 225.57 83.8498 225.57 82.789C225.57 81.7281 224.71 80.8681 223.649 80.8681C222.588 80.8681 221.728 81.7281 221.728 82.789C221.728 83.8498 222.588 84.7098 223.649 84.7098Z" fill="black"/>
-  <path d="M25.1668 91.1127C26.2276 91.1127 27.0876 90.2527 27.0876 89.1919C27.0876 88.131 26.2276 87.271 25.1668 87.271C24.1059 87.271 23.2459 88.131 23.2459 89.1919C23.2459 90.2527 24.1059 91.1127 25.1668 91.1127Z" fill="black"/>
-  <path d="M31.5663 91.1134C32.6271 91.1134 33.4871 90.2534 33.4871 89.1926C33.4871 88.1317 32.6271 87.2718 31.5663 87.2718C30.5054 87.2718 29.6454 88.1317 29.6454 89.1926C29.6454 90.2534 30.5054 91.1134 31.5663 91.1134Z" fill="black"/>
-  <path d="M89.1921 91.1129C90.2529 91.1129 91.1129 90.2529 91.1129 89.192C91.1129 88.1312 90.2529 87.2712 89.1921 87.2712C88.1313 87.2712 87.2713 88.1312 87.2713 89.192C87.2713 90.2529 88.1313 91.1129 89.1921 91.1129Z" fill="black"/>
-  <path d="M121.208 91.1135C122.269 91.1135 123.129 90.2535 123.129 89.1927C123.129 88.1318 122.269 87.2718 121.208 87.2718C120.147 87.2718 119.287 88.1318 119.287 89.1927C119.287 90.2535 120.147 91.1135 121.208 91.1135Z" fill="black"/>
-  <path d="M127.607 91.1134C128.668 91.1134 129.528 90.2534 129.528 89.1926C129.528 88.1317 128.668 87.2718 127.607 87.2718C126.546 87.2718 125.686 88.1317 125.686 89.1926C125.686 90.2534 126.546 91.1134 127.607 91.1134Z" fill="black"/>
-  <path d="M140.415 91.1127C141.476 91.1127 142.336 90.2527 142.336 89.1919C142.336 88.131 141.476 87.271 140.415 87.271C139.355 87.271 138.495 88.131 138.495 89.1919C138.495 90.2527 139.355 91.1127 140.415 91.1127Z" fill="black"/>
-  <path d="M146.815 91.1134C147.876 91.1134 148.736 90.2534 148.736 89.1926C148.736 88.1317 147.876 87.2718 146.815 87.2718C145.754 87.2718 144.894 88.1317 144.894 89.1926C144.894 90.2534 145.754 91.1134 146.815 91.1134Z" fill="black"/>
-  <path d="M159.623 91.1127C160.684 91.1127 161.544 90.2527 161.544 89.1919C161.544 88.131 160.684 87.271 159.623 87.271C158.563 87.271 157.703 88.131 157.703 89.1919C157.703 90.2527 158.563 91.1127 159.623 91.1127Z" fill="black"/>
-  <path d="M172.427 91.1134C173.488 91.1134 174.348 90.2534 174.348 89.1926C174.348 88.1317 173.488 87.2718 172.427 87.2718C171.366 87.2718 170.506 88.1317 170.506 89.1926C170.506 90.2534 171.366 91.1134 172.427 91.1134Z" fill="black"/>
-  <path d="M178.832 91.1135C179.893 91.1135 180.753 90.2535 180.753 89.1927C180.753 88.1318 179.893 87.2718 178.832 87.2718C177.771 87.2718 176.911 88.1318 176.911 89.1927C176.911 90.2535 177.771 91.1135 178.832 91.1135Z" fill="black"/>
-  <path d="M191.637 91.1134C192.697 91.1134 193.557 90.2534 193.557 89.1926C193.557 88.1317 192.697 87.2718 191.637 87.2718C190.576 87.2718 189.716 88.1317 189.716 89.1926C189.716 90.2534 190.576 91.1134 191.637 91.1134Z" fill="black"/>
-  <path d="M204.44 91.1127C205.501 91.1127 206.361 90.2527 206.361 89.1919C206.361 88.131 205.501 87.271 204.44 87.271C203.379 87.271 202.519 88.131 202.519 89.1919C202.519 90.2527 203.379 91.1127 204.44 91.1127Z" fill="black"/>
-  <path d="M217.248 91.1134C218.309 91.1134 219.169 90.2534 219.169 89.1926C219.169 88.1317 218.309 87.2718 217.248 87.2718C216.187 87.2718 215.327 88.1317 215.327 89.1926C215.327 90.2534 216.187 91.1134 217.248 91.1134Z" fill="black"/>
-  <path d="M37.9697 97.5158C39.0306 97.5158 39.8906 96.6558 39.8906 95.5949C39.8906 94.5341 39.0306 93.6741 37.9697 93.6741C36.9089 93.6741 36.0489 94.5341 36.0489 95.5949C36.0489 96.6558 36.9089 97.5158 37.9697 97.5158Z" fill="black"/>
-  <path d="M44.3704 97.5158C45.4313 97.5158 46.2912 96.6558 46.2912 95.5949C46.2912 94.5341 45.4313 93.6741 44.3704 93.6741C43.3096 93.6741 42.4496 94.5341 42.4496 95.5949C42.4496 96.6558 43.3096 97.5158 44.3704 97.5158Z" fill="black"/>
-  <path d="M57.177 97.5157C58.2378 97.5157 59.0978 96.6557 59.0978 95.5948C59.0978 94.534 58.2378 93.674 57.177 93.674C56.1162 93.674 55.2562 94.534 55.2562 95.5948C55.2562 96.6557 56.1162 97.5157 57.177 97.5157Z" fill="black"/>
-  <path d="M63.5791 97.5158C64.64 97.5158 65.5 96.6558 65.5 95.5949C65.5 94.5341 64.64 93.6741 63.5791 93.6741C62.5183 93.6741 61.6583 94.5341 61.6583 95.5949C61.6583 96.6558 62.5183 97.5158 63.5791 97.5158Z" fill="black"/>
-  <path d="M76.3877 97.5156C77.4485 97.5156 78.3085 96.6556 78.3085 95.5948C78.3085 94.534 77.4485 93.674 76.3877 93.674C75.3268 93.674 74.4668 94.534 74.4668 95.5948C74.4668 96.6556 75.3268 97.5156 76.3877 97.5156Z" fill="black"/>
-  <path d="M108.4 97.5157C109.461 97.5157 110.321 96.6558 110.321 95.5949C110.321 94.5341 109.461 93.6741 108.4 93.6741C107.339 93.6741 106.479 94.5341 106.479 95.5949C106.479 96.6558 107.339 97.5157 108.4 97.5157Z" fill="black"/>
-  <path d="M114.803 97.5157C115.864 97.5157 116.724 96.6558 116.724 95.5949C116.724 94.5341 115.864 93.6741 114.803 93.6741C113.742 93.6741 112.882 94.5341 112.882 95.5949C112.882 96.6558 113.742 97.5157 114.803 97.5157Z" fill="black"/>
-  <path d="M121.208 97.5157C122.269 97.5157 123.129 96.6557 123.129 95.5948C123.129 94.534 122.269 93.674 121.208 93.674C120.147 93.674 119.287 94.534 119.287 95.5948C119.287 96.6557 120.147 97.5157 121.208 97.5157Z" fill="black"/>
-  <path d="M153.219 97.5156C154.28 97.5156 155.14 96.6556 155.14 95.5948C155.14 94.534 154.28 93.674 153.219 93.674C152.158 93.674 151.298 94.534 151.298 95.5948C151.298 96.6556 152.158 97.5156 153.219 97.5156Z" fill="black"/>
-  <path d="M159.623 97.5158C160.684 97.5158 161.544 96.6558 161.544 95.5949C161.544 94.5341 160.684 93.6741 159.623 93.6741C158.563 93.6741 157.703 94.5341 157.703 95.5949C157.703 96.6558 158.563 97.5158 159.623 97.5158Z" fill="black"/>
-  <path d="M166.025 97.5158C167.086 97.5158 167.946 96.6558 167.946 95.5949C167.946 94.5341 167.086 93.6741 166.025 93.6741C164.964 93.6741 164.104 94.5341 164.104 95.5949C164.104 96.6558 164.964 97.5158 166.025 97.5158Z" fill="black"/>
-  <path d="M172.427 97.5156C173.488 97.5156 174.348 96.6556 174.348 95.5948C174.348 94.534 173.488 93.674 172.427 93.674C171.366 93.674 170.506 94.534 170.506 95.5948C170.506 96.6556 171.366 97.5156 172.427 97.5156Z" fill="black"/>
-  <path d="M185.233 97.5158C186.294 97.5158 187.154 96.6558 187.154 95.5949C187.154 94.5341 186.294 93.6741 185.233 93.6741C184.172 93.6741 183.312 94.5341 183.312 95.5949C183.312 96.6558 184.172 97.5158 185.233 97.5158Z" fill="black"/>
-  <path d="M191.637 97.5156C192.697 97.5156 193.557 96.6556 193.557 95.5948C193.557 94.534 192.697 93.674 191.637 93.674C190.576 93.674 189.716 94.534 189.716 95.5948C189.716 96.6556 190.576 97.5156 191.637 97.5156Z" fill="black"/>
-  <path d="M198.039 97.5157C199.1 97.5157 199.96 96.6557 199.96 95.5948C199.96 94.534 199.1 93.674 198.039 93.674C196.979 93.674 196.119 94.534 196.119 95.5948C196.119 96.6557 196.979 97.5157 198.039 97.5157Z" fill="black"/>
-  <path d="M204.44 97.5158C205.501 97.5158 206.361 96.6558 206.361 95.5949C206.361 94.5341 205.501 93.6741 204.44 93.6741C203.379 93.6741 202.519 94.5341 202.519 95.5949C202.519 96.6558 203.379 97.5158 204.44 97.5158Z" fill="black"/>
-  <path d="M217.248 97.5156C218.309 97.5156 219.169 96.6556 219.169 95.5948C219.169 94.534 218.309 93.674 217.248 93.674C216.187 93.674 215.327 94.534 215.327 95.5948C215.327 96.6556 216.187 97.5156 217.248 97.5156Z" fill="black"/>
-  <path d="M223.649 97.5157C224.71 97.5157 225.57 96.6557 225.57 95.5948C225.57 94.534 224.71 93.674 223.649 93.674C222.588 93.674 221.728 94.534 221.728 95.5948C221.728 96.6557 222.588 97.5157 223.649 97.5157Z" fill="black"/>
-  <path d="M18.7618 103.919C19.8227 103.919 20.6827 103.059 20.6827 101.998C20.6827 100.937 19.8227 100.077 18.7618 100.077C17.701 100.077 16.841 100.937 16.841 101.998C16.841 103.059 17.701 103.919 18.7618 103.919Z" fill="black"/>
-  <path d="M37.9697 103.918C39.0306 103.918 39.8906 103.058 39.8906 101.998C39.8906 100.937 39.0306 100.077 37.9697 100.077C36.9089 100.077 36.0489 100.937 36.0489 101.998C36.0489 103.058 36.9089 103.918 37.9697 103.918Z" fill="black"/>
-  <path d="M50.7761 103.919C51.8369 103.919 52.6969 103.059 52.6969 101.998C52.6969 100.938 51.8369 100.078 50.7761 100.078C49.7152 100.078 48.8553 100.938 48.8553 101.998C48.8553 103.059 49.7152 103.919 50.7761 103.919Z" fill="black"/>
-  <path d="M69.9832 103.919C71.044 103.919 71.904 103.059 71.904 101.998C71.904 100.937 71.044 100.077 69.9832 100.077C68.9223 100.077 68.0623 100.937 68.0623 101.998C68.0623 103.059 68.9223 103.919 69.9832 103.919Z" fill="black"/>
-  <path d="M89.1921 103.919C90.2529 103.919 91.1129 103.059 91.1129 101.998C91.1129 100.937 90.2529 100.077 89.1921 100.077C88.1313 100.077 87.2713 100.937 87.2713 101.998C87.2713 103.059 88.1313 103.919 89.1921 103.919Z" fill="black"/>
-  <path d="M95.5957 103.919C96.6565 103.919 97.5165 103.059 97.5165 101.998C97.5165 100.938 96.6565 100.078 95.5957 100.078C94.5348 100.078 93.6748 100.938 93.6748 101.998C93.6748 103.059 94.5348 103.919 95.5957 103.919Z" fill="black"/>
-  <path d="M101.994 103.919C103.055 103.919 103.915 103.059 103.915 101.998C103.915 100.938 103.055 100.078 101.994 100.078C100.934 100.078 100.074 100.938 100.074 101.998C100.074 103.059 100.934 103.919 101.994 103.919Z" fill="black"/>
-  <path d="M114.803 103.919C115.864 103.919 116.724 103.059 116.724 101.998C116.724 100.937 115.864 100.077 114.803 100.077C113.742 100.077 112.882 100.937 112.882 101.998C112.882 103.059 113.742 103.919 114.803 103.919Z" fill="black"/>
-  <path d="M127.607 103.919C128.668 103.919 129.528 103.059 129.528 101.998C129.528 100.938 128.668 100.078 127.607 100.078C126.546 100.078 125.686 100.938 125.686 101.998C125.686 103.059 126.546 103.919 127.607 103.919Z" fill="black"/>
-  <path d="M134.011 103.919C135.072 103.919 135.932 103.059 135.932 101.998C135.932 100.937 135.072 100.077 134.011 100.077C132.95 100.077 132.09 100.937 132.09 101.998C132.09 103.059 132.95 103.919 134.011 103.919Z" fill="black"/>
-  <path d="M140.415 103.918C141.476 103.918 142.336 103.058 142.336 101.998C142.336 100.937 141.476 100.077 140.415 100.077C139.355 100.077 138.495 100.937 138.495 101.998C138.495 103.058 139.355 103.918 140.415 103.918Z" fill="black"/>
-  <path d="M146.815 103.919C147.876 103.919 148.736 103.059 148.736 101.998C148.736 100.938 147.876 100.078 146.815 100.078C145.754 100.078 144.894 100.938 144.894 101.998C144.894 103.059 145.754 103.919 146.815 103.919Z" fill="black"/>
-  <path d="M153.219 103.919C154.28 103.919 155.14 103.059 155.14 101.998C155.14 100.938 154.28 100.078 153.219 100.078C152.158 100.078 151.298 100.938 151.298 101.998C151.298 103.059 152.158 103.919 153.219 103.919Z" fill="black"/>
-  <path d="M159.623 103.918C160.684 103.918 161.544 103.058 161.544 101.998C161.544 100.937 160.684 100.077 159.623 100.077C158.563 100.077 157.703 100.937 157.703 101.998C157.703 103.058 158.563 103.918 159.623 103.918Z" fill="black"/>
-  <path d="M166.025 103.918C167.086 103.918 167.946 103.058 167.946 101.998C167.946 100.937 167.086 100.077 166.025 100.077C164.964 100.077 164.104 100.937 164.104 101.998C164.104 103.058 164.964 103.918 166.025 103.918Z" fill="black"/>
-  <path d="M185.233 103.918C186.294 103.918 187.154 103.058 187.154 101.998C187.154 100.937 186.294 100.077 185.233 100.077C184.172 100.077 183.312 100.937 183.312 101.998C183.312 103.058 184.172 103.918 185.233 103.918Z" fill="black"/>
-  <path d="M204.44 103.918C205.501 103.918 206.361 103.058 206.361 101.998C206.361 100.937 205.501 100.077 204.44 100.077C203.379 100.077 202.519 100.937 202.519 101.998C202.519 103.058 203.379 103.918 204.44 103.918Z" fill="black"/>
-  <path d="M223.649 103.919C224.71 103.919 225.57 103.059 225.57 101.998C225.57 100.938 224.71 100.078 223.649 100.078C222.588 100.078 221.728 100.938 221.728 101.998C221.728 103.059 222.588 103.919 223.649 103.919Z" fill="black"/>
-  <path d="M57.177 110.322C58.2378 110.322 59.0978 109.462 59.0978 108.401C59.0978 107.34 58.2378 106.48 57.177 106.48C56.1162 106.48 55.2562 107.34 55.2562 108.401C55.2562 109.462 56.1162 110.322 57.177 110.322Z" fill="black"/>
-  <path d="M95.5957 110.322C96.6565 110.322 97.5165 109.462 97.5165 108.401C97.5165 107.34 96.6565 106.48 95.5957 106.48C94.5348 106.48 93.6748 107.34 93.6748 108.401C93.6748 109.462 94.5348 110.322 95.5957 110.322Z" fill="black"/>
-  <path d="M108.4 110.322C109.461 110.322 110.321 109.462 110.321 108.401C110.321 107.34 109.461 106.48 108.4 106.48C107.339 106.48 106.479 107.34 106.479 108.401C106.479 109.462 107.339 110.322 108.4 110.322Z" fill="black"/>
-  <path d="M121.208 110.322C122.269 110.322 123.129 109.462 123.129 108.401C123.129 107.34 122.269 106.48 121.208 106.48C120.147 106.48 119.287 107.34 119.287 108.401C119.287 109.462 120.147 110.322 121.208 110.322Z" fill="black"/>
-  <path d="M127.607 110.322C128.668 110.322 129.528 109.462 129.528 108.401C129.528 107.34 128.668 106.48 127.607 106.48C126.546 106.48 125.686 107.34 125.686 108.401C125.686 109.462 126.546 110.322 127.607 110.322Z" fill="black"/>
-  <path d="M134.011 110.322C135.072 110.322 135.932 109.462 135.932 108.401C135.932 107.34 135.072 106.48 134.011 106.48C132.95 106.48 132.09 107.34 132.09 108.401C132.09 109.462 132.95 110.322 134.011 110.322Z" fill="black"/>
-  <path d="M146.815 110.322C147.876 110.322 148.736 109.462 148.736 108.401C148.736 107.34 147.876 106.48 146.815 106.48C145.754 106.48 144.894 107.34 144.894 108.401C144.894 109.462 145.754 110.322 146.815 110.322Z" fill="black"/>
-  <path d="M166.025 110.322C167.086 110.322 167.946 109.462 167.946 108.401C167.946 107.34 167.086 106.48 166.025 106.48C164.964 106.48 164.104 107.34 164.104 108.401C164.104 109.462 164.964 110.322 166.025 110.322Z" fill="black"/>
-  <path d="M172.427 110.322C173.488 110.322 174.348 109.462 174.348 108.401C174.348 107.34 173.488 106.48 172.427 106.48C171.366 106.48 170.506 107.34 170.506 108.401C170.506 109.462 171.366 110.322 172.427 110.322Z" fill="black"/>
-  <path d="M185.233 110.322C186.294 110.322 187.154 109.462 187.154 108.401C187.154 107.34 186.294 106.48 185.233 106.48C184.172 106.48 183.312 107.34 183.312 108.401C183.312 109.462 184.172 110.322 185.233 110.322Z" fill="black"/>
-  <path d="M191.637 110.322C192.697 110.322 193.557 109.462 193.557 108.401C193.557 107.34 192.697 106.48 191.637 106.48C190.576 106.48 189.716 107.34 189.716 108.401C189.716 109.462 190.576 110.322 191.637 110.322Z" fill="black"/>
-  <path d="M198.039 110.322C199.1 110.322 199.96 109.462 199.96 108.401C199.96 107.34 199.1 106.48 198.039 106.48C196.979 106.48 196.119 107.34 196.119 108.401C196.119 109.462 196.979 110.322 198.039 110.322Z" fill="black"/>
-  <path d="M210.845 110.322C211.905 110.322 212.765 109.462 212.765 108.401C212.765 107.34 211.905 106.48 210.845 106.48C209.784 106.48 208.924 107.34 208.924 108.401C208.924 109.462 209.784 110.322 210.845 110.322Z" fill="black"/>
-  <path d="M223.649 110.322C224.71 110.322 225.57 109.462 225.57 108.401C225.57 107.34 224.71 106.48 223.649 106.48C222.588 106.48 221.728 107.34 221.728 108.401C221.728 109.462 222.588 110.322 223.649 110.322Z" fill="black"/>
-  <path d="M18.7618 116.724C19.8227 116.724 20.6827 115.864 20.6827 114.803C20.6827 113.742 19.8227 112.882 18.7618 112.882C17.701 112.882 16.841 113.742 16.841 114.803C16.841 115.864 17.701 116.724 18.7618 116.724Z" fill="black"/>
-  <path d="M31.5663 116.723C32.6271 116.723 33.4871 115.863 33.4871 114.802C33.4871 113.742 32.6271 112.882 31.5663 112.882C30.5054 112.882 29.6454 113.742 29.6454 114.802C29.6454 115.863 30.5054 116.723 31.5663 116.723Z" fill="black"/>
-  <path d="M37.9697 116.724C39.0306 116.724 39.8906 115.864 39.8906 114.803C39.8906 113.742 39.0306 112.882 37.9697 112.882C36.9089 112.882 36.0489 113.742 36.0489 114.803C36.0489 115.864 36.9089 116.724 37.9697 116.724Z" fill="black"/>
-  <path d="M50.7761 116.723C51.8369 116.723 52.6969 115.863 52.6969 114.802C52.6969 113.742 51.8369 112.882 50.7761 112.882C49.7152 112.882 48.8553 113.742 48.8553 114.802C48.8553 115.863 49.7152 116.723 50.7761 116.723Z" fill="black"/>
-  <path d="M63.5791 116.724C64.64 116.724 65.5 115.864 65.5 114.803C65.5 113.742 64.64 112.882 63.5791 112.882C62.5183 112.882 61.6583 113.742 61.6583 114.803C61.6583 115.864 62.5183 116.724 63.5791 116.724Z" fill="black"/>
-  <path d="M82.7871 116.724C83.848 116.724 84.7079 115.864 84.7079 114.803C84.7079 113.742 83.848 112.882 82.7871 112.882C81.7263 112.882 80.8663 113.742 80.8663 114.803C80.8663 115.864 81.7263 116.724 82.7871 116.724Z" fill="black"/>
-  <path d="M89.1921 116.724C90.2529 116.724 91.1129 115.864 91.1129 114.803C91.1129 113.742 90.2529 112.882 89.1921 112.882C88.1313 112.882 87.2713 113.742 87.2713 114.803C87.2713 115.864 88.1313 116.724 89.1921 116.724Z" fill="black"/>
-  <path d="M95.5957 116.723C96.6565 116.723 97.5165 115.863 97.5165 114.802C97.5165 113.742 96.6565 112.882 95.5957 112.882C94.5348 112.882 93.6748 113.742 93.6748 114.802C93.6748 115.863 94.5348 116.723 95.5957 116.723Z" fill="black"/>
-  <path d="M101.994 116.723C103.055 116.723 103.915 115.863 103.915 114.802C103.915 113.742 103.055 112.882 101.994 112.882C100.934 112.882 100.074 113.742 100.074 114.802C100.074 115.863 100.934 116.723 101.994 116.723Z" fill="black"/>
-  <path d="M121.208 116.723C122.269 116.723 123.129 115.863 123.129 114.802C123.129 113.742 122.269 112.882 121.208 112.882C120.147 112.882 119.287 113.742 119.287 114.802C119.287 115.863 120.147 116.723 121.208 116.723Z" fill="black"/>
-  <path d="M127.607 116.723C128.668 116.723 129.528 115.863 129.528 114.802C129.528 113.742 128.668 112.882 127.607 112.882C126.546 112.882 125.686 113.742 125.686 114.802C125.686 115.863 126.546 116.723 127.607 116.723Z" fill="black"/>
-  <path d="M134.011 116.724C135.072 116.724 135.932 115.864 135.932 114.803C135.932 113.742 135.072 112.882 134.011 112.882C132.95 112.882 132.09 113.742 132.09 114.803C132.09 115.864 132.95 116.724 134.011 116.724Z" fill="black"/>
-  <path d="M146.815 116.723C147.876 116.723 148.736 115.863 148.736 114.802C148.736 113.742 147.876 112.882 146.815 112.882C145.754 112.882 144.894 113.742 144.894 114.802C144.894 115.863 145.754 116.723 146.815 116.723Z" fill="black"/>
-  <path d="M159.623 116.724C160.684 116.724 161.544 115.864 161.544 114.803C161.544 113.742 160.684 112.882 159.623 112.882C158.563 112.882 157.703 113.742 157.703 114.803C157.703 115.864 158.563 116.724 159.623 116.724Z" fill="black"/>
-  <path d="M172.427 116.723C173.488 116.723 174.348 115.863 174.348 114.802C174.348 113.742 173.488 112.882 172.427 112.882C171.366 112.882 170.506 113.742 170.506 114.802C170.506 115.863 171.366 116.723 172.427 116.723Z" fill="black"/>
-  <path d="M178.832 116.723C179.893 116.723 180.753 115.863 180.753 114.802C180.753 113.742 179.893 112.882 178.832 112.882C177.771 112.882 176.911 113.742 176.911 114.802C176.911 115.863 177.771 116.723 178.832 116.723Z" fill="black"/>
-  <path d="M185.233 116.724C186.294 116.724 187.154 115.864 187.154 114.803C187.154 113.742 186.294 112.882 185.233 112.882C184.172 112.882 183.312 113.742 183.312 114.803C183.312 115.864 184.172 116.724 185.233 116.724Z" fill="black"/>
-  <path d="M191.637 116.723C192.697 116.723 193.557 115.863 193.557 114.802C193.557 113.742 192.697 112.882 191.637 112.882C190.576 112.882 189.716 113.742 189.716 114.802C189.716 115.863 190.576 116.723 191.637 116.723Z" fill="black"/>
-  <path d="M204.44 116.724C205.501 116.724 206.361 115.864 206.361 114.803C206.361 113.742 205.501 112.882 204.44 112.882C203.379 112.882 202.519 113.742 202.519 114.803C202.519 115.864 203.379 116.724 204.44 116.724Z" fill="black"/>
-  <path d="M217.248 116.723C218.309 116.723 219.169 115.863 219.169 114.802C219.169 113.742 218.309 112.882 217.248 112.882C216.187 112.882 215.327 113.742 215.327 114.802C215.327 115.863 216.187 116.723 217.248 116.723Z" fill="black"/>
-  <path d="M18.7618 123.127C19.8227 123.127 20.6827 122.267 20.6827 121.206C20.6827 120.145 19.8227 119.285 18.7618 119.285C17.701 119.285 16.841 120.145 16.841 121.206C16.841 122.267 17.701 123.127 18.7618 123.127Z" fill="black"/>
-  <path d="M25.1668 123.126C26.2276 123.126 27.0876 122.266 27.0876 121.206C27.0876 120.145 26.2276 119.285 25.1668 119.285C24.1059 119.285 23.2459 120.145 23.2459 121.206C23.2459 122.266 24.1059 123.126 25.1668 123.126Z" fill="black"/>
-  <path d="M37.9697 123.126C39.0306 123.126 39.8906 122.266 39.8906 121.206C39.8906 120.145 39.0306 119.285 37.9697 119.285C36.9089 119.285 36.0489 120.145 36.0489 121.206C36.0489 122.266 36.9089 123.126 37.9697 123.126Z" fill="black"/>
-  <path d="M57.177 123.127C58.2378 123.127 59.0978 122.267 59.0978 121.206C59.0978 120.145 58.2378 119.285 57.177 119.285C56.1162 119.285 55.2562 120.145 55.2562 121.206C55.2562 122.267 56.1162 123.127 57.177 123.127Z" fill="black"/>
-  <path d="M76.3877 123.127C77.4485 123.127 78.3085 122.267 78.3085 121.206C78.3085 120.145 77.4485 119.285 76.3877 119.285C75.3268 119.285 74.4668 120.145 74.4668 121.206C74.4668 122.267 75.3268 123.127 76.3877 123.127Z" fill="black"/>
-  <path d="M89.1921 123.127C90.2529 123.127 91.1129 122.267 91.1129 121.206C91.1129 120.145 90.2529 119.285 89.1921 119.285C88.1313 119.285 87.2713 120.145 87.2713 121.206C87.2713 122.267 88.1313 123.127 89.1921 123.127Z" fill="black"/>
-  <path d="M134.011 123.127C135.072 123.127 135.932 122.267 135.932 121.206C135.932 120.145 135.072 119.285 134.011 119.285C132.95 119.285 132.09 120.145 132.09 121.206C132.09 122.267 132.95 123.127 134.011 123.127Z" fill="black"/>
-  <path d="M159.623 123.126C160.684 123.126 161.544 122.266 161.544 121.206C161.544 120.145 160.684 119.285 159.623 119.285C158.563 119.285 157.703 120.145 157.703 121.206C157.703 122.266 158.563 123.126 159.623 123.126Z" fill="black"/>
-  <path d="M166.025 123.126C167.086 123.126 167.946 122.266 167.946 121.206C167.946 120.145 167.086 119.285 166.025 119.285C164.964 119.285 164.104 120.145 164.104 121.206C164.104 122.266 164.964 123.126 166.025 123.126Z" fill="black"/>
-  <path d="M185.233 123.126C186.294 123.126 187.154 122.266 187.154 121.206C187.154 120.145 186.294 119.285 185.233 119.285C184.172 119.285 183.312 120.145 183.312 121.206C183.312 122.266 184.172 123.126 185.233 123.126Z" fill="black"/>
-  <path d="M191.637 123.127C192.697 123.127 193.557 122.267 193.557 121.206C193.557 120.145 192.697 119.285 191.637 119.285C190.576 119.285 189.716 120.145 189.716 121.206C189.716 122.267 190.576 123.127 191.637 123.127Z" fill="black"/>
-  <path d="M204.44 123.126C205.501 123.126 206.361 122.266 206.361 121.206C206.361 120.145 205.501 119.285 204.44 119.285C203.379 119.285 202.519 120.145 202.519 121.206C202.519 122.266 203.379 123.126 204.44 123.126Z" fill="black"/>
-  <path d="M37.9697 129.529C39.0306 129.529 39.8906 128.669 39.8906 127.609C39.8906 126.548 39.0306 125.688 37.9697 125.688C36.9089 125.688 36.0489 126.548 36.0489 127.609C36.0489 128.669 36.9089 129.529 37.9697 129.529Z" fill="black"/>
-  <path d="M44.3704 129.529C45.4313 129.529 46.2912 128.669 46.2912 127.609C46.2912 126.548 45.4313 125.688 44.3704 125.688C43.3096 125.688 42.4496 126.548 42.4496 127.609C42.4496 128.669 43.3096 129.529 44.3704 129.529Z" fill="black"/>
-  <path d="M63.5791 129.529C64.64 129.529 65.5 128.669 65.5 127.609C65.5 126.548 64.64 125.688 63.5791 125.688C62.5183 125.688 61.6583 126.548 61.6583 127.609C61.6583 128.669 62.5183 129.529 63.5791 129.529Z" fill="black"/>
-  <path d="M69.9832 129.529C71.044 129.529 71.904 128.669 71.904 127.609C71.904 126.548 71.044 125.688 69.9832 125.688C68.9223 125.688 68.0623 126.548 68.0623 127.609C68.0623 128.669 68.9223 129.529 69.9832 129.529Z" fill="black"/>
-  <path d="M82.7871 129.529C83.848 129.529 84.7079 128.669 84.7079 127.609C84.7079 126.548 83.848 125.688 82.7871 125.688C81.7263 125.688 80.8663 126.548 80.8663 127.609C80.8663 128.669 81.7263 129.529 82.7871 129.529Z" fill="black"/>
-  <path d="M101.994 129.529C103.055 129.529 103.915 128.669 103.915 127.608C103.915 126.547 103.055 125.687 101.994 125.687C100.934 125.687 100.074 126.547 100.074 127.608C100.074 128.669 100.934 129.529 101.994 129.529Z" fill="black"/>
-  <path d="M108.4 129.529C109.461 129.529 110.321 128.669 110.321 127.609C110.321 126.548 109.461 125.688 108.4 125.688C107.339 125.688 106.479 126.548 106.479 127.609C106.479 128.669 107.339 129.529 108.4 129.529Z" fill="black"/>
-  <path d="M121.208 129.529C122.269 129.529 123.129 128.669 123.129 127.608C123.129 126.547 122.269 125.687 121.208 125.687C120.147 125.687 119.287 126.547 119.287 127.608C119.287 128.669 120.147 129.529 121.208 129.529Z" fill="black"/>
-  <path d="M127.607 129.529C128.668 129.529 129.528 128.669 129.528 127.608C129.528 126.547 128.668 125.687 127.607 125.687C126.546 125.687 125.686 126.547 125.686 127.608C125.686 128.669 126.546 129.529 127.607 129.529Z" fill="black"/>
-  <path d="M146.815 129.529C147.876 129.529 148.736 128.669 148.736 127.608C148.736 126.547 147.876 125.687 146.815 125.687C145.754 125.687 144.894 126.547 144.894 127.608C144.894 128.669 145.754 129.529 146.815 129.529Z" fill="black"/>
-  <path d="M153.219 129.529C154.28 129.529 155.14 128.669 155.14 127.608C155.14 126.547 154.28 125.687 153.219 125.687C152.158 125.687 151.298 126.547 151.298 127.608C151.298 128.669 152.158 129.529 153.219 129.529Z" fill="black"/>
-  <path d="M166.025 129.529C167.086 129.529 167.946 128.669 167.946 127.609C167.946 126.548 167.086 125.688 166.025 125.688C164.964 125.688 164.104 126.548 164.104 127.609C164.104 128.669 164.964 129.529 166.025 129.529Z" fill="black"/>
-  <path d="M185.233 129.529C186.294 129.529 187.154 128.669 187.154 127.609C187.154 126.548 186.294 125.688 185.233 125.688C184.172 125.688 183.312 126.548 183.312 127.609C183.312 128.669 184.172 129.529 185.233 129.529Z" fill="black"/>
-  <path d="M191.637 129.529C192.697 129.529 193.557 128.669 193.557 127.608C193.557 126.547 192.697 125.687 191.637 125.687C190.576 125.687 189.716 126.547 189.716 127.608C189.716 128.669 190.576 129.529 191.637 129.529Z" fill="black"/>
-  <path d="M210.845 129.529C211.905 129.529 212.765 128.669 212.765 127.608C212.765 126.547 211.905 125.687 210.845 125.687C209.784 125.687 208.924 126.547 208.924 127.608C208.924 128.669 209.784 129.529 210.845 129.529Z" fill="black"/>
-  <path d="M223.649 129.529C224.71 129.529 225.57 128.669 225.57 127.608C225.57 126.547 224.71 125.687 223.649 125.687C222.588 125.687 221.728 126.547 221.728 127.608C221.728 128.669 222.588 129.529 223.649 129.529Z" fill="black"/>
-  <path d="M18.7618 135.932C19.8227 135.932 20.6827 135.072 20.6827 134.012C20.6827 132.951 19.8227 132.091 18.7618 132.091C17.701 132.091 16.841 132.951 16.841 134.012C16.841 135.072 17.701 135.932 18.7618 135.932Z" fill="black"/>
-  <path d="M25.1668 135.932C26.2276 135.932 27.0876 135.072 27.0876 134.011C27.0876 132.951 26.2276 132.091 25.1668 132.091C24.1059 132.091 23.2459 132.951 23.2459 134.011C23.2459 135.072 24.1059 135.932 25.1668 135.932Z" fill="black"/>
-  <path d="M31.5663 135.933C32.6271 135.933 33.4871 135.073 33.4871 134.012C33.4871 132.951 32.6271 132.091 31.5663 132.091C30.5054 132.091 29.6454 132.951 29.6454 134.012C29.6454 135.073 30.5054 135.933 31.5663 135.933Z" fill="black"/>
-  <path d="M37.9697 135.932C39.0306 135.932 39.8906 135.072 39.8906 134.011C39.8906 132.951 39.0306 132.091 37.9697 132.091C36.9089 132.091 36.0489 132.951 36.0489 134.011C36.0489 135.072 36.9089 135.932 37.9697 135.932Z" fill="black"/>
-  <path d="M44.3704 135.932C45.4313 135.932 46.2912 135.072 46.2912 134.011C46.2912 132.951 45.4313 132.091 44.3704 132.091C43.3096 132.091 42.4496 132.951 42.4496 134.011C42.4496 135.072 43.3096 135.932 44.3704 135.932Z" fill="black"/>
-  <path d="M50.7761 135.933C51.8369 135.933 52.6969 135.073 52.6969 134.012C52.6969 132.951 51.8369 132.091 50.7761 132.091C49.7152 132.091 48.8553 132.951 48.8553 134.012C48.8553 135.073 49.7152 135.933 50.7761 135.933Z" fill="black"/>
-  <path d="M57.177 135.933C58.2378 135.933 59.0978 135.073 59.0978 134.012C59.0978 132.951 58.2378 132.091 57.177 132.091C56.1162 132.091 55.2562 132.951 55.2562 134.012C55.2562 135.073 56.1162 135.933 57.177 135.933Z" fill="black"/>
-  <path d="M63.5791 135.932C64.64 135.932 65.5 135.072 65.5 134.011C65.5 132.951 64.64 132.091 63.5791 132.091C62.5183 132.091 61.6583 132.951 61.6583 134.011C61.6583 135.072 62.5183 135.932 63.5791 135.932Z" fill="black"/>
-  <path d="M82.7871 135.932C83.848 135.932 84.7079 135.072 84.7079 134.011C84.7079 132.951 83.848 132.091 82.7871 132.091C81.7263 132.091 80.8663 132.951 80.8663 134.011C80.8663 135.072 81.7263 135.932 82.7871 135.932Z" fill="black"/>
-  <path d="M89.1921 135.932C90.2529 135.932 91.1129 135.072 91.1129 134.012C91.1129 132.951 90.2529 132.091 89.1921 132.091C88.1313 132.091 87.2713 132.951 87.2713 134.012C87.2713 135.072 88.1313 135.932 89.1921 135.932Z" fill="black"/>
-  <path d="M114.803 135.932C115.864 135.932 116.724 135.072 116.724 134.012C116.724 132.951 115.864 132.091 114.803 132.091C113.742 132.091 112.882 132.951 112.882 134.012C112.882 135.072 113.742 135.932 114.803 135.932Z" fill="black"/>
-  <path d="M127.607 135.933C128.668 135.933 129.528 135.073 129.528 134.012C129.528 132.951 128.668 132.091 127.607 132.091C126.546 132.091 125.686 132.951 125.686 134.012C125.686 135.073 126.546 135.933 127.607 135.933Z" fill="black"/>
-  <path d="M134.011 135.932C135.072 135.932 135.932 135.072 135.932 134.012C135.932 132.951 135.072 132.091 134.011 132.091C132.95 132.091 132.09 132.951 132.09 134.012C132.09 135.072 132.95 135.932 134.011 135.932Z" fill="black"/>
-  <path d="M146.815 135.933C147.876 135.933 148.736 135.073 148.736 134.012C148.736 132.951 147.876 132.091 146.815 132.091C145.754 132.091 144.894 132.951 144.894 134.012C144.894 135.073 145.754 135.933 146.815 135.933Z" fill="black"/>
-  <path d="M153.219 135.933C154.28 135.933 155.14 135.073 155.14 134.012C155.14 132.951 154.28 132.091 153.219 132.091C152.158 132.091 151.298 132.951 151.298 134.012C151.298 135.073 152.158 135.933 153.219 135.933Z" fill="black"/>
-  <path d="M166.025 135.932C167.086 135.932 167.946 135.072 167.946 134.011C167.946 132.951 167.086 132.091 166.025 132.091C164.964 132.091 164.104 132.951 164.104 134.011C164.104 135.072 164.964 135.932 166.025 135.932Z" fill="black"/>
-  <path d="M204.44 135.932C205.501 135.932 206.361 135.072 206.361 134.011C206.361 132.951 205.501 132.091 204.44 132.091C203.379 132.091 202.519 132.951 202.519 134.011C202.519 135.072 203.379 135.932 204.44 135.932Z" fill="black"/>
-  <path d="M210.845 135.933C211.905 135.933 212.765 135.073 212.765 134.012C212.765 132.951 211.905 132.091 210.845 132.091C209.784 132.091 208.924 132.951 208.924 134.012C208.924 135.073 209.784 135.933 210.845 135.933Z" fill="black"/>
-  <path d="M223.649 135.933C224.71 135.933 225.57 135.073 225.57 134.012C225.57 132.951 224.71 132.091 223.649 132.091C222.588 132.091 221.728 132.951 221.728 134.012C221.728 135.073 222.588 135.933 223.649 135.933Z" fill="black"/>
-  <path d="M18.7618 142.335C19.8227 142.335 20.6827 141.475 20.6827 140.414C20.6827 139.354 19.8227 138.494 18.7618 138.494C17.701 138.494 16.841 139.354 16.841 140.414C16.841 141.475 17.701 142.335 18.7618 142.335Z" fill="black"/>
-  <path d="M25.1668 142.335C26.2276 142.335 27.0876 141.475 27.0876 140.415C27.0876 139.354 26.2276 138.494 25.1668 138.494C24.1059 138.494 23.2459 139.354 23.2459 140.415C23.2459 141.475 24.1059 142.335 25.1668 142.335Z" fill="black"/>
-  <path d="M37.9697 142.335C39.0306 142.335 39.8906 141.475 39.8906 140.415C39.8906 139.354 39.0306 138.494 37.9697 138.494C36.9089 138.494 36.0489 139.354 36.0489 140.415C36.0489 141.475 36.9089 142.335 37.9697 142.335Z" fill="black"/>
-  <path d="M44.3704 142.335C45.4313 142.335 46.2912 141.475 46.2912 140.415C46.2912 139.354 45.4313 138.494 44.3704 138.494C43.3096 138.494 42.4496 139.354 42.4496 140.415C42.4496 141.475 43.3096 142.335 44.3704 142.335Z" fill="black"/>
-  <path d="M63.5791 142.335C64.64 142.335 65.5 141.475 65.5 140.415C65.5 139.354 64.64 138.494 63.5791 138.494C62.5183 138.494 61.6583 139.354 61.6583 140.415C61.6583 141.475 62.5183 142.335 63.5791 142.335Z" fill="black"/>
-  <path d="M76.3877 142.335C77.4485 142.335 78.3085 141.475 78.3085 140.414C78.3085 139.353 77.4485 138.493 76.3877 138.493C75.3268 138.493 74.4668 139.353 74.4668 140.414C74.4668 141.475 75.3268 142.335 76.3877 142.335Z" fill="black"/>
-  <path d="M89.1921 142.335C90.2529 142.335 91.1129 141.475 91.1129 140.414C91.1129 139.354 90.2529 138.494 89.1921 138.494C88.1313 138.494 87.2713 139.354 87.2713 140.414C87.2713 141.475 88.1313 142.335 89.1921 142.335Z" fill="black"/>
-  <path d="M101.994 142.335C103.055 142.335 103.915 141.475 103.915 140.414C103.915 139.353 103.055 138.493 101.994 138.493C100.934 138.493 100.074 139.353 100.074 140.414C100.074 141.475 100.934 142.335 101.994 142.335Z" fill="black"/>
-  <path d="M114.803 142.335C115.864 142.335 116.724 141.475 116.724 140.414C116.724 139.354 115.864 138.494 114.803 138.494C113.742 138.494 112.882 139.354 112.882 140.414C112.882 141.475 113.742 142.335 114.803 142.335Z" fill="black"/>
-  <path d="M127.607 142.335C128.668 142.335 129.528 141.475 129.528 140.414C129.528 139.353 128.668 138.493 127.607 138.493C126.546 138.493 125.686 139.353 125.686 140.414C125.686 141.475 126.546 142.335 127.607 142.335Z" fill="black"/>
-  <path d="M134.011 142.335C135.072 142.335 135.932 141.475 135.932 140.414C135.932 139.354 135.072 138.494 134.011 138.494C132.95 138.494 132.09 139.354 132.09 140.414C132.09 141.475 132.95 142.335 134.011 142.335Z" fill="black"/>
-  <path d="M146.815 142.335C147.876 142.335 148.736 141.475 148.736 140.414C148.736 139.353 147.876 138.493 146.815 138.493C145.754 138.493 144.894 139.353 144.894 140.414C144.894 141.475 145.754 142.335 146.815 142.335Z" fill="black"/>
-  <path d="M166.025 142.335C167.086 142.335 167.946 141.475 167.946 140.415C167.946 139.354 167.086 138.494 166.025 138.494C164.964 138.494 164.104 139.354 164.104 140.415C164.104 141.475 164.964 142.335 166.025 142.335Z" fill="black"/>
-  <path d="M185.233 142.335C186.294 142.335 187.154 141.475 187.154 140.415C187.154 139.354 186.294 138.494 185.233 138.494C184.172 138.494 183.312 139.354 183.312 140.415C183.312 141.475 184.172 142.335 185.233 142.335Z" fill="black"/>
-  <path d="M191.637 142.335C192.697 142.335 193.557 141.475 193.557 140.414C193.557 139.353 192.697 138.493 191.637 138.493C190.576 138.493 189.716 139.353 189.716 140.414C189.716 141.475 190.576 142.335 191.637 142.335Z" fill="black"/>
-  <path d="M198.039 142.335C199.1 142.335 199.96 141.475 199.96 140.414C199.96 139.353 199.1 138.493 198.039 138.493C196.979 138.493 196.119 139.353 196.119 140.414C196.119 141.475 196.979 142.335 198.039 142.335Z" fill="black"/>
-  <path d="M204.44 142.335C205.501 142.335 206.361 141.475 206.361 140.415C206.361 139.354 205.501 138.494 204.44 138.494C203.379 138.494 202.519 139.354 202.519 140.415C202.519 141.475 203.379 142.335 204.44 142.335Z" fill="black"/>
-  <path d="M217.248 142.335C218.309 142.335 219.169 141.475 219.169 140.414C219.169 139.353 218.309 138.493 217.248 138.493C216.187 138.493 215.327 139.353 215.327 140.414C215.327 141.475 216.187 142.335 217.248 142.335Z" fill="black"/>
-  <path d="M223.649 142.335C224.71 142.335 225.57 141.475 225.57 140.414C225.57 139.353 224.71 138.493 223.649 138.493C222.588 138.493 221.728 139.353 221.728 140.414C221.728 141.475 222.588 142.335 223.649 142.335Z" fill="black"/>
-  <path d="M25.1668 148.753C26.2276 148.753 27.0876 147.893 27.0876 146.833C27.0876 145.772 26.2276 144.912 25.1668 144.912C24.1059 144.912 23.2459 145.772 23.2459 146.833C23.2459 147.893 24.1059 148.753 25.1668 148.753Z" fill="black"/>
-  <path d="M31.5663 148.754C32.6271 148.754 33.4871 147.894 33.4871 146.833C33.4871 145.772 32.6271 144.912 31.5663 144.912C30.5054 144.912 29.6454 145.772 29.6454 146.833C29.6454 147.894 30.5054 148.754 31.5663 148.754Z" fill="black"/>
-  <path d="M37.9697 148.753C39.0306 148.753 39.8906 147.893 39.8906 146.833C39.8906 145.772 39.0306 144.912 37.9697 144.912C36.9089 144.912 36.0489 145.772 36.0489 146.833C36.0489 147.893 36.9089 148.753 37.9697 148.753Z" fill="black"/>
-  <path d="M44.3704 148.753C45.4313 148.753 46.2912 147.893 46.2912 146.833C46.2912 145.772 45.4313 144.912 44.3704 144.912C43.3096 144.912 42.4496 145.772 42.4496 146.833C42.4496 147.893 43.3096 148.753 44.3704 148.753Z" fill="black"/>
-  <path d="M57.177 148.754C58.2378 148.754 59.0978 147.894 59.0978 146.833C59.0978 145.772 58.2378 144.912 57.177 144.912C56.1162 144.912 55.2562 145.772 55.2562 146.833C55.2562 147.894 56.1162 148.754 57.177 148.754Z" fill="black"/>
-  <path d="M69.9832 148.754C71.044 148.754 71.904 147.894 71.904 146.833C71.904 145.772 71.044 144.912 69.9832 144.912C68.9223 144.912 68.0623 145.772 68.0623 146.833C68.0623 147.894 68.9223 148.754 69.9832 148.754Z" fill="black"/>
-  <path d="M89.1921 148.754C90.2529 148.754 91.1129 147.894 91.1129 146.833C91.1129 145.772 90.2529 144.912 89.1921 144.912C88.1313 144.912 87.2713 145.772 87.2713 146.833C87.2713 147.894 88.1313 148.754 89.1921 148.754Z" fill="black"/>
-  <path d="M114.803 148.754C115.864 148.754 116.724 147.894 116.724 146.833C116.724 145.772 115.864 144.912 114.803 144.912C113.742 144.912 112.882 145.772 112.882 146.833C112.882 147.894 113.742 148.754 114.803 148.754Z" fill="black"/>
-  <path d="M127.607 148.754C128.668 148.754 129.528 147.894 129.528 146.833C129.528 145.772 128.668 144.912 127.607 144.912C126.546 144.912 125.686 145.772 125.686 146.833C125.686 147.894 126.546 148.754 127.607 148.754Z" fill="black"/>
-  <path d="M140.415 148.753C141.476 148.753 142.336 147.893 142.336 146.833C142.336 145.772 141.476 144.912 140.415 144.912C139.355 144.912 138.495 145.772 138.495 146.833C138.495 147.893 139.355 148.753 140.415 148.753Z" fill="black"/>
-  <path d="M146.815 148.754C147.876 148.754 148.736 147.894 148.736 146.833C148.736 145.772 147.876 144.912 146.815 144.912C145.754 144.912 144.894 145.772 144.894 146.833C144.894 147.894 145.754 148.754 146.815 148.754Z" fill="black"/>
-  <path d="M166.025 148.753C167.086 148.753 167.946 147.893 167.946 146.833C167.946 145.772 167.086 144.912 166.025 144.912C164.964 144.912 164.104 145.772 164.104 146.833C164.104 147.893 164.964 148.753 166.025 148.753Z" fill="black"/>
-  <path d="M191.637 148.754C192.697 148.754 193.557 147.894 193.557 146.833C193.557 145.772 192.697 144.912 191.637 144.912C190.576 144.912 189.716 145.772 189.716 146.833C189.716 147.894 190.576 148.754 191.637 148.754Z" fill="black"/>
-  <path d="M223.649 148.754C224.71 148.754 225.57 147.894 225.57 146.833C225.57 145.772 224.71 144.912 223.649 144.912C222.588 144.912 221.728 145.772 221.728 146.833C221.728 147.894 222.588 148.754 223.649 148.754Z" fill="black"/>
-  <path d="M25.1668 155.157C26.2276 155.157 27.0876 154.297 27.0876 153.236C27.0876 152.175 26.2276 151.315 25.1668 151.315C24.1059 151.315 23.2459 152.175 23.2459 153.236C23.2459 154.297 24.1059 155.157 25.1668 155.157Z" fill="black"/>
-  <path d="M31.5663 155.156C32.6271 155.156 33.4871 154.296 33.4871 153.235C33.4871 152.174 32.6271 151.314 31.5663 151.314C30.5054 151.314 29.6454 152.174 29.6454 153.235C29.6454 154.296 30.5054 155.156 31.5663 155.156Z" fill="black"/>
-  <path d="M37.9697 155.157C39.0306 155.157 39.8906 154.297 39.8906 153.236C39.8906 152.175 39.0306 151.315 37.9697 151.315C36.9089 151.315 36.0489 152.175 36.0489 153.236C36.0489 154.297 36.9089 155.157 37.9697 155.157Z" fill="black"/>
-  <path d="M50.7761 155.156C51.8369 155.156 52.6969 154.296 52.6969 153.235C52.6969 152.174 51.8369 151.314 50.7761 151.314C49.7152 151.314 48.8553 152.174 48.8553 153.235C48.8553 154.296 49.7152 155.156 50.7761 155.156Z" fill="black"/>
-  <path d="M89.1921 155.156C90.2529 155.156 91.1129 154.297 91.1129 153.236C91.1129 152.175 90.2529 151.315 89.1921 151.315C88.1313 151.315 87.2713 152.175 87.2713 153.236C87.2713 154.297 88.1313 155.156 89.1921 155.156Z" fill="black"/>
-  <path d="M127.607 155.156C128.668 155.156 129.528 154.296 129.528 153.235C129.528 152.174 128.668 151.314 127.607 151.314C126.546 151.314 125.686 152.174 125.686 153.235C125.686 154.296 126.546 155.156 127.607 155.156Z" fill="black"/>
-  <path d="M134.011 155.156C135.072 155.156 135.932 154.297 135.932 153.236C135.932 152.175 135.072 151.315 134.011 151.315C132.95 151.315 132.09 152.175 132.09 153.236C132.09 154.297 132.95 155.156 134.011 155.156Z" fill="black"/>
-  <path d="M140.415 155.157C141.476 155.157 142.336 154.297 142.336 153.236C142.336 152.175 141.476 151.315 140.415 151.315C139.355 151.315 138.495 152.175 138.495 153.236C138.495 154.297 139.355 155.157 140.415 155.157Z" fill="black"/>
-  <path d="M191.637 155.156C192.697 155.156 193.557 154.296 193.557 153.235C193.557 152.174 192.697 151.314 191.637 151.314C190.576 151.314 189.716 152.174 189.716 153.235C189.716 154.296 190.576 155.156 191.637 155.156Z" fill="black"/>
-  <path d="M223.649 155.156C224.71 155.156 225.57 154.296 225.57 153.235C225.57 152.175 224.71 151.315 223.649 151.315C222.588 151.315 221.728 152.175 221.728 153.235C221.728 154.296 222.588 155.156 223.649 155.156Z" fill="black"/>
-  <path d="M18.7618 161.558C19.8227 161.558 20.6827 160.698 20.6827 159.638C20.6827 158.577 19.8227 157.717 18.7618 157.717C17.701 157.717 16.841 158.577 16.841 159.638C16.841 160.698 17.701 161.558 18.7618 161.558Z" fill="black"/>
-  <path d="M25.1668 161.559C26.2276 161.559 27.0876 160.699 27.0876 159.638C27.0876 158.577 26.2276 157.717 25.1668 157.717C24.1059 157.717 23.2459 158.577 23.2459 159.638C23.2459 160.699 24.1059 161.559 25.1668 161.559Z" fill="black"/>
-  <path d="M31.5663 161.559C32.6271 161.559 33.4871 160.699 33.4871 159.638C33.4871 158.577 32.6271 157.717 31.5663 157.717C30.5054 157.717 29.6454 158.577 29.6454 159.638C29.6454 160.699 30.5054 161.559 31.5663 161.559Z" fill="black"/>
-  <path d="M50.7761 161.559C51.8369 161.559 52.6969 160.699 52.6969 159.638C52.6969 158.577 51.8369 157.717 50.7761 157.717C49.7152 157.717 48.8553 158.577 48.8553 159.638C48.8553 160.699 49.7152 161.559 50.7761 161.559Z" fill="black"/>
-  <path d="M57.177 161.559C58.2378 161.559 59.0978 160.699 59.0978 159.638C59.0978 158.577 58.2378 157.717 57.177 157.717C56.1162 157.717 55.2562 158.577 55.2562 159.638C55.2562 160.699 56.1162 161.559 57.177 161.559Z" fill="black"/>
-  <path d="M69.9832 161.558C71.044 161.558 71.904 160.698 71.904 159.638C71.904 158.577 71.044 157.717 69.9832 157.717C68.9223 157.717 68.0623 158.577 68.0623 159.638C68.0623 160.698 68.9223 161.558 69.9832 161.558Z" fill="black"/>
-  <path d="M76.3877 161.559C77.4485 161.559 78.3085 160.699 78.3085 159.638C78.3085 158.577 77.4485 157.717 76.3877 157.717C75.3268 157.717 74.4668 158.577 74.4668 159.638C74.4668 160.699 75.3268 161.559 76.3877 161.559Z" fill="black"/>
-  <path d="M89.1921 161.558C90.2529 161.558 91.1129 160.698 91.1129 159.638C91.1129 158.577 90.2529 157.717 89.1921 157.717C88.1313 157.717 87.2713 158.577 87.2713 159.638C87.2713 160.698 88.1313 161.558 89.1921 161.558Z" fill="black"/>
-  <path d="M108.4 161.558C109.461 161.558 110.321 160.698 110.321 159.638C110.321 158.577 109.461 157.717 108.4 157.717C107.339 157.717 106.479 158.577 106.479 159.638C106.479 160.698 107.339 161.558 108.4 161.558Z" fill="black"/>
-  <path d="M114.803 161.558C115.864 161.558 116.724 160.698 116.724 159.638C116.724 158.577 115.864 157.717 114.803 157.717C113.742 157.717 112.882 158.577 112.882 159.638C112.882 160.698 113.742 161.558 114.803 161.558Z" fill="black"/>
-  <path d="M121.208 161.559C122.269 161.559 123.129 160.699 123.129 159.638C123.129 158.577 122.269 157.717 121.208 157.717C120.147 157.717 119.287 158.577 119.287 159.638C119.287 160.699 120.147 161.559 121.208 161.559Z" fill="black"/>
-  <path d="M127.607 161.559C128.668 161.559 129.528 160.699 129.528 159.638C129.528 158.577 128.668 157.717 127.607 157.717C126.546 157.717 125.686 158.577 125.686 159.638C125.686 160.699 126.546 161.559 127.607 161.559Z" fill="black"/>
-  <path d="M159.623 161.559C160.684 161.559 161.544 160.699 161.544 159.638C161.544 158.577 160.684 157.717 159.623 157.717C158.563 157.717 157.703 158.577 157.703 159.638C157.703 160.699 158.563 161.559 159.623 161.559Z" fill="black"/>
-  <path d="M166.025 161.559C167.086 161.559 167.946 160.699 167.946 159.638C167.946 158.577 167.086 157.717 166.025 157.717C164.964 157.717 164.104 158.577 164.104 159.638C164.104 160.699 164.964 161.559 166.025 161.559Z" fill="black"/>
-  <path d="M178.832 161.559C179.893 161.559 180.753 160.699 180.753 159.638C180.753 158.577 179.893 157.717 178.832 157.717C177.771 157.717 176.911 158.577 176.911 159.638C176.911 160.699 177.771 161.559 178.832 161.559Z" fill="black"/>
-  <path d="M185.233 161.559C186.294 161.559 187.154 160.699 187.154 159.638C187.154 158.577 186.294 157.717 185.233 157.717C184.172 157.717 183.312 158.577 183.312 159.638C183.312 160.699 184.172 161.559 185.233 161.559Z" fill="black"/>
-  <path d="M204.44 161.559C205.501 161.559 206.361 160.699 206.361 159.638C206.361 158.577 205.501 157.717 204.44 157.717C203.379 157.717 202.519 158.577 202.519 159.638C202.519 160.699 203.379 161.559 204.44 161.559Z" fill="black"/>
-  <path d="M223.649 161.559C224.71 161.559 225.57 160.699 225.57 159.638C225.57 158.577 224.71 157.717 223.649 157.717C222.588 157.717 221.728 158.577 221.728 159.638C221.728 160.699 222.588 161.559 223.649 161.559Z" fill="black"/>
-  <path d="M44.3704 167.961C45.4313 167.961 46.2912 167.101 46.2912 166.041C46.2912 164.98 45.4313 164.12 44.3704 164.12C43.3096 164.12 42.4496 164.98 42.4496 166.041C42.4496 167.101 43.3096 167.961 44.3704 167.961Z" fill="black"/>
-  <path d="M50.7761 167.961C51.8369 167.961 52.6969 167.101 52.6969 166.041C52.6969 164.98 51.8369 164.12 50.7761 164.12C49.7152 164.12 48.8553 164.98 48.8553 166.041C48.8553 167.101 49.7152 167.961 50.7761 167.961Z" fill="black"/>
-  <path d="M76.3877 167.961C77.4485 167.961 78.3085 167.101 78.3085 166.041C78.3085 164.98 77.4485 164.12 76.3877 164.12C75.3268 164.12 74.4668 164.98 74.4668 166.041C74.4668 167.101 75.3268 167.961 76.3877 167.961Z" fill="black"/>
-  <path d="M82.7871 167.961C83.848 167.961 84.7079 167.101 84.7079 166.041C84.7079 164.98 83.848 164.12 82.7871 164.12C81.7263 164.12 80.8663 164.98 80.8663 166.041C80.8663 167.101 81.7263 167.961 82.7871 167.961Z" fill="black"/>
-  <path d="M101.994 167.961C103.055 167.961 103.915 167.101 103.915 166.04C103.915 164.98 103.055 164.12 101.994 164.12C100.934 164.12 100.074 164.98 100.074 166.04C100.074 167.101 100.934 167.961 101.994 167.961Z" fill="black"/>
-  <path d="M127.607 167.961C128.668 167.961 129.528 167.101 129.528 166.041C129.528 164.98 128.668 164.12 127.607 164.12C126.546 164.12 125.686 164.98 125.686 166.041C125.686 167.101 126.546 167.961 127.607 167.961Z" fill="black"/>
-  <path d="M134.011 167.961C135.072 167.961 135.932 167.102 135.932 166.041C135.932 164.98 135.072 164.12 134.011 164.12C132.95 164.12 132.09 164.98 132.09 166.041C132.09 167.102 132.95 167.961 134.011 167.961Z" fill="black"/>
-  <path d="M146.815 167.961C147.876 167.961 148.736 167.101 148.736 166.041C148.736 164.98 147.876 164.12 146.815 164.12C145.754 164.12 144.894 164.98 144.894 166.041C144.894 167.101 145.754 167.961 146.815 167.961Z" fill="black"/>
-  <path d="M191.637 167.961C192.697 167.961 193.557 167.101 193.557 166.041C193.557 164.98 192.697 164.12 191.637 164.12C190.576 164.12 189.716 164.98 189.716 166.041C189.716 167.101 190.576 167.961 191.637 167.961Z" fill="black"/>
-  <path d="M204.44 167.961C205.501 167.961 206.361 167.101 206.361 166.041C206.361 164.98 205.501 164.12 204.44 164.12C203.379 164.12 202.519 164.98 202.519 166.041C202.519 167.101 203.379 167.961 204.44 167.961Z" fill="black"/>
-  <path d="M217.248 167.961C218.309 167.961 219.169 167.101 219.169 166.041C219.169 164.98 218.309 164.12 217.248 164.12C216.187 164.12 215.327 164.98 215.327 166.041C215.327 167.101 216.187 167.961 217.248 167.961Z" fill="black"/>
-  <path d="M18.7618 174.364C19.8227 174.364 20.6827 173.504 20.6827 172.444C20.6827 171.383 19.8227 170.523 18.7618 170.523C17.701 170.523 16.841 171.383 16.841 172.444C16.841 173.504 17.701 174.364 18.7618 174.364Z" fill="black"/>
-  <path d="M25.1668 174.364C26.2276 174.364 27.0876 173.504 27.0876 172.444C27.0876 171.383 26.2276 170.523 25.1668 170.523C24.1059 170.523 23.2459 171.383 23.2459 172.444C23.2459 173.504 24.1059 174.364 25.1668 174.364Z" fill="black"/>
-  <path d="M37.9697 174.364C39.0306 174.364 39.8906 173.504 39.8906 172.444C39.8906 171.383 39.0306 170.523 37.9697 170.523C36.9089 170.523 36.0489 171.383 36.0489 172.444C36.0489 173.504 36.9089 174.364 37.9697 174.364Z" fill="black"/>
-  <path d="M44.3704 174.364C45.4313 174.364 46.2912 173.504 46.2912 172.444C46.2912 171.383 45.4313 170.523 44.3704 170.523C43.3096 170.523 42.4496 171.383 42.4496 172.444C42.4496 173.504 43.3096 174.364 44.3704 174.364Z" fill="black"/>
-  <path d="M57.177 174.365C58.2378 174.365 59.0978 173.505 59.0978 172.444C59.0978 171.383 58.2378 170.523 57.177 170.523C56.1162 170.523 55.2562 171.383 55.2562 172.444C55.2562 173.505 56.1162 174.365 57.177 174.365Z" fill="black"/>
-  <path d="M63.5791 174.364C64.64 174.364 65.5 173.504 65.5 172.444C65.5 171.383 64.64 170.523 63.5791 170.523C62.5183 170.523 61.6583 171.383 61.6583 172.444C61.6583 173.504 62.5183 174.364 63.5791 174.364Z" fill="black"/>
-  <path d="M95.5957 174.365C96.6565 174.365 97.5165 173.505 97.5165 172.444C97.5165 171.383 96.6565 170.523 95.5957 170.523C94.5348 170.523 93.6748 171.383 93.6748 172.444C93.6748 173.505 94.5348 174.365 95.5957 174.365Z" fill="black"/>
-  <path d="M108.4 174.364C109.461 174.364 110.321 173.504 110.321 172.444C110.321 171.383 109.461 170.523 108.4 170.523C107.339 170.523 106.479 171.383 106.479 172.444C106.479 173.504 107.339 174.364 108.4 174.364Z" fill="black"/>
-  <path d="M121.208 174.365C122.269 174.365 123.129 173.505 123.129 172.444C123.129 171.383 122.269 170.523 121.208 170.523C120.147 170.523 119.287 171.383 119.287 172.444C119.287 173.505 120.147 174.365 121.208 174.365Z" fill="black"/>
-  <path d="M127.607 174.365C128.668 174.365 129.528 173.505 129.528 172.444C129.528 171.383 128.668 170.523 127.607 170.523C126.546 170.523 125.686 171.383 125.686 172.444C125.686 173.505 126.546 174.365 127.607 174.365Z" fill="black"/>
-  <path d="M134.011 174.364C135.072 174.364 135.932 173.504 135.932 172.444C135.932 171.383 135.072 170.523 134.011 170.523C132.95 170.523 132.09 171.383 132.09 172.444C132.09 173.504 132.95 174.364 134.011 174.364Z" fill="black"/>
-  <path d="M140.415 174.364C141.476 174.364 142.336 173.504 142.336 172.444C142.336 171.383 141.476 170.523 140.415 170.523C139.355 170.523 138.495 171.383 138.495 172.444C138.495 173.504 139.355 174.364 140.415 174.364Z" fill="black"/>
-  <path d="M146.815 174.365C147.876 174.365 148.736 173.505 148.736 172.444C148.736 171.383 147.876 170.523 146.815 170.523C145.754 170.523 144.894 171.383 144.894 172.444C144.894 173.505 145.754 174.365 146.815 174.365Z" fill="black"/>
-  <path d="M166.025 174.364C167.086 174.364 167.946 173.504 167.946 172.444C167.946 171.383 167.086 170.523 166.025 170.523C164.964 170.523 164.104 171.383 164.104 172.444C164.104 173.504 164.964 174.364 166.025 174.364Z" fill="black"/>
-  <path d="M172.427 174.365C173.488 174.365 174.348 173.505 174.348 172.444C174.348 171.383 173.488 170.523 172.427 170.523C171.366 170.523 170.506 171.383 170.506 172.444C170.506 173.505 171.366 174.365 172.427 174.365Z" fill="black"/>
-  <path d="M178.832 174.365C179.893 174.365 180.753 173.505 180.753 172.444C180.753 171.383 179.893 170.523 178.832 170.523C177.771 170.523 176.911 171.383 176.911 172.444C176.911 173.505 177.771 174.365 178.832 174.365Z" fill="black"/>
-  <path d="M185.233 174.364C186.294 174.364 187.154 173.504 187.154 172.444C187.154 171.383 186.294 170.523 185.233 170.523C184.172 170.523 183.312 171.383 183.312 172.444C183.312 173.504 184.172 174.364 185.233 174.364Z" fill="black"/>
-  <path d="M191.637 174.365C192.697 174.365 193.557 173.505 193.557 172.444C193.557 171.383 192.697 170.523 191.637 170.523C190.576 170.523 189.716 171.383 189.716 172.444C189.716 173.505 190.576 174.365 191.637 174.365Z" fill="black"/>
-  <path d="M198.039 174.365C199.1 174.365 199.96 173.505 199.96 172.444C199.96 171.383 199.1 170.523 198.039 170.523C196.979 170.523 196.119 171.383 196.119 172.444C196.119 173.505 196.979 174.365 198.039 174.365Z" fill="black"/>
-  <path d="M204.44 174.364C205.501 174.364 206.361 173.504 206.361 172.444C206.361 171.383 205.501 170.523 204.44 170.523C203.379 170.523 202.519 171.383 202.519 172.444C202.519 173.504 203.379 174.364 204.44 174.364Z" fill="black"/>
-  <path d="M217.248 174.365C218.309 174.365 219.169 173.505 219.169 172.444C219.169 171.383 218.309 170.523 217.248 170.523C216.187 170.523 215.327 171.383 215.327 172.444C215.327 173.505 216.187 174.365 217.248 174.365Z" fill="black"/>
-  <path d="M69.9832 180.767C71.044 180.767 71.904 179.907 71.904 178.846C71.904 177.786 71.044 176.926 69.9832 176.926C68.9223 176.926 68.0623 177.786 68.0623 178.846C68.0623 179.907 68.9223 180.767 69.9832 180.767Z" fill="black"/>
-  <path d="M76.3877 180.767C77.4485 180.767 78.3085 179.907 78.3085 178.846C78.3085 177.785 77.4485 176.926 76.3877 176.926C75.3268 176.926 74.4668 177.785 74.4668 178.846C74.4668 179.907 75.3268 180.767 76.3877 180.767Z" fill="black"/>
-  <path d="M82.7871 180.767C83.848 180.767 84.7079 179.907 84.7079 178.846C84.7079 177.785 83.848 176.925 82.7871 176.925C81.7263 176.925 80.8663 177.785 80.8663 178.846C80.8663 179.907 81.7263 180.767 82.7871 180.767Z" fill="black"/>
-  <path d="M101.994 180.767C103.055 180.767 103.915 179.907 103.915 178.846C103.915 177.785 103.055 176.925 101.994 176.925C100.934 176.925 100.074 177.785 100.074 178.846C100.074 179.907 100.934 180.767 101.994 180.767Z" fill="black"/>
-  <path d="M108.4 180.767C109.461 180.767 110.321 179.907 110.321 178.846C110.321 177.786 109.461 176.926 108.4 176.926C107.339 176.926 106.479 177.786 106.479 178.846C106.479 179.907 107.339 180.767 108.4 180.767Z" fill="black"/>
-  <path d="M153.219 180.767C154.28 180.767 155.14 179.907 155.14 178.846C155.14 177.785 154.28 176.926 153.219 176.926C152.158 176.926 151.298 177.785 151.298 178.846C151.298 179.907 152.158 180.767 153.219 180.767Z" fill="black"/>
-  <path d="M166.025 180.767C167.086 180.767 167.946 179.907 167.946 178.846C167.946 177.785 167.086 176.925 166.025 176.925C164.964 176.925 164.104 177.785 164.104 178.846C164.104 179.907 164.964 180.767 166.025 180.767Z" fill="black"/>
-  <path d="M172.427 180.767C173.488 180.767 174.348 179.907 174.348 178.846C174.348 177.785 173.488 176.926 172.427 176.926C171.366 176.926 170.506 177.785 170.506 178.846C170.506 179.907 171.366 180.767 172.427 180.767Z" fill="black"/>
-  <path d="M198.039 180.767C199.1 180.767 199.96 179.907 199.96 178.846C199.96 177.785 199.1 176.925 198.039 176.925C196.979 176.925 196.119 177.785 196.119 178.846C196.119 179.907 196.979 180.767 198.039 180.767Z" fill="black"/>
-  <path d="M210.845 180.767C211.905 180.767 212.765 179.907 212.765 178.846C212.765 177.785 211.905 176.926 210.845 176.926C209.784 176.926 208.924 177.785 208.924 178.846C208.924 179.907 209.784 180.767 210.845 180.767Z" fill="black"/>
-  <path d="M223.649 180.767C224.71 180.767 225.57 179.907 225.57 178.846C225.57 177.785 224.71 176.925 223.649 176.925C222.588 176.925 221.728 177.785 221.728 178.846C221.728 179.907 222.588 180.767 223.649 180.767Z" fill="black"/>
-  <path d="M69.9832 187.169C71.044 187.169 71.904 186.309 71.904 185.248C71.904 184.188 71.044 183.328 69.9832 183.328C68.9223 183.328 68.0623 184.188 68.0623 185.248C68.0623 186.309 68.9223 187.169 69.9832 187.169Z" fill="black"/>
-  <path d="M82.7871 187.169C83.848 187.169 84.7079 186.309 84.7079 185.248C84.7079 184.187 83.848 183.327 82.7871 183.327C81.7263 183.327 80.8663 184.187 80.8663 185.248C80.8663 186.309 81.7263 187.169 82.7871 187.169Z" fill="black"/>
-  <path d="M101.994 187.169C103.055 187.169 103.915 186.309 103.915 185.248C103.915 184.187 103.055 183.327 101.994 183.327C100.934 183.327 100.074 184.187 100.074 185.248C100.074 186.309 100.934 187.169 101.994 187.169Z" fill="black"/>
-  <path d="M114.803 187.169C115.864 187.169 116.724 186.309 116.724 185.248C116.724 184.188 115.864 183.328 114.803 183.328C113.742 183.328 112.882 184.188 112.882 185.248C112.882 186.309 113.742 187.169 114.803 187.169Z" fill="black"/>
-  <path d="M121.208 187.169C122.269 187.169 123.129 186.309 123.129 185.248C123.129 184.187 122.269 183.327 121.208 183.327C120.147 183.327 119.287 184.187 119.287 185.248C119.287 186.309 120.147 187.169 121.208 187.169Z" fill="black"/>
-  <path d="M127.607 187.169C128.668 187.169 129.528 186.309 129.528 185.248C129.528 184.187 128.668 183.327 127.607 183.327C126.546 183.327 125.686 184.187 125.686 185.248C125.686 186.309 126.546 187.169 127.607 187.169Z" fill="black"/>
-  <path d="M140.415 187.169C141.476 187.169 142.336 186.309 142.336 185.248C142.336 184.187 141.476 183.327 140.415 183.327C139.355 183.327 138.495 184.187 138.495 185.248C138.495 186.309 139.355 187.169 140.415 187.169Z" fill="black"/>
-  <path d="M172.427 187.169C173.488 187.169 174.348 186.309 174.348 185.248C174.348 184.187 173.488 183.327 172.427 183.327C171.366 183.327 170.506 184.187 170.506 185.248C170.506 186.309 171.366 187.169 172.427 187.169Z" fill="black"/>
-  <path d="M185.233 187.169C186.294 187.169 187.154 186.309 187.154 185.248C187.154 184.187 186.294 183.327 185.233 183.327C184.172 183.327 183.312 184.187 183.312 185.248C183.312 186.309 184.172 187.169 185.233 187.169Z" fill="black"/>
-  <path d="M198.039 187.169C199.1 187.169 199.96 186.309 199.96 185.248C199.96 184.187 199.1 183.327 198.039 183.327C196.979 183.327 196.119 184.187 196.119 185.248C196.119 186.309 196.979 187.169 198.039 187.169Z" fill="black"/>
-  <path d="M223.649 187.169C224.71 187.169 225.57 186.309 225.57 185.248C225.57 184.187 224.71 183.327 223.649 183.327C222.588 183.327 221.728 184.187 221.728 185.248C221.728 186.309 222.588 187.169 223.649 187.169Z" fill="black"/>
-  <path d="M69.9832 193.573C71.044 193.573 71.904 192.713 71.904 191.652C71.904 190.591 71.044 189.731 69.9832 189.731C68.9223 189.731 68.0623 190.591 68.0623 191.652C68.0623 192.713 68.9223 193.573 69.9832 193.573Z" fill="black"/>
-  <path d="M89.1921 193.573C90.2529 193.573 91.1129 192.713 91.1129 191.652C91.1129 190.591 90.2529 189.731 89.1921 189.731C88.1313 189.731 87.2713 190.591 87.2713 191.652C87.2713 192.713 88.1313 193.573 89.1921 193.573Z" fill="black"/>
-  <path d="M95.5957 193.573C96.6565 193.573 97.5165 192.713 97.5165 191.652C97.5165 190.591 96.6565 189.731 95.5957 189.731C94.5348 189.731 93.6748 190.591 93.6748 191.652C93.6748 192.713 94.5348 193.573 95.5957 193.573Z" fill="black"/>
-  <path d="M108.4 193.573C109.461 193.573 110.321 192.713 110.321 191.652C110.321 190.591 109.461 189.731 108.4 189.731C107.339 189.731 106.479 190.591 106.479 191.652C106.479 192.713 107.339 193.573 108.4 193.573Z" fill="black"/>
-  <path d="M114.803 193.573C115.864 193.573 116.724 192.713 116.724 191.652C116.724 190.591 115.864 189.731 114.803 189.731C113.742 189.731 112.882 190.591 112.882 191.652C112.882 192.713 113.742 193.573 114.803 193.573Z" fill="black"/>
-  <path d="M121.208 193.573C122.269 193.573 123.129 192.713 123.129 191.652C123.129 190.591 122.269 189.731 121.208 189.731C120.147 189.731 119.287 190.591 119.287 191.652C119.287 192.713 120.147 193.573 121.208 193.573Z" fill="black"/>
-  <path d="M146.815 193.573C147.876 193.573 148.736 192.713 148.736 191.652C148.736 190.591 147.876 189.731 146.815 189.731C145.754 189.731 144.894 190.591 144.894 191.652C144.894 192.713 145.754 193.573 146.815 193.573Z" fill="black"/>
-  <path d="M153.219 193.573C154.28 193.573 155.14 192.713 155.14 191.652C155.14 190.591 154.28 189.731 153.219 189.731C152.158 189.731 151.298 190.591 151.298 191.652C151.298 192.713 152.158 193.573 153.219 193.573Z" fill="black"/>
-  <path d="M166.025 193.573C167.086 193.573 167.946 192.713 167.946 191.652C167.946 190.591 167.086 189.731 166.025 189.731C164.964 189.731 164.104 190.591 164.104 191.652C164.104 192.713 164.964 193.573 166.025 193.573Z" fill="black"/>
-  <path d="M172.427 193.573C173.488 193.573 174.348 192.713 174.348 191.652C174.348 190.591 173.488 189.731 172.427 189.731C171.366 189.731 170.506 190.591 170.506 191.652C170.506 192.713 171.366 193.573 172.427 193.573Z" fill="black"/>
-  <path d="M198.039 193.573C199.1 193.573 199.96 192.713 199.96 191.652C199.96 190.591 199.1 189.731 198.039 189.731C196.979 189.731 196.119 190.591 196.119 191.652C196.119 192.713 196.979 193.573 198.039 193.573Z" fill="black"/>
-  <path d="M217.248 193.573C218.309 193.573 219.169 192.713 219.169 191.652C219.169 190.591 218.309 189.731 217.248 189.731C216.187 189.731 215.327 190.591 215.327 191.652C215.327 192.713 216.187 193.573 217.248 193.573Z" fill="black"/>
-  <path d="M223.649 193.573C224.71 193.573 225.57 192.713 225.57 191.652C225.57 190.591 224.71 189.731 223.649 189.731C222.588 189.731 221.728 190.591 221.728 191.652C221.728 192.713 222.588 193.573 223.649 193.573Z" fill="black"/>
-  <path d="M89.1921 199.975C90.2529 199.975 91.1129 199.115 91.1129 198.054C91.1129 196.993 90.2529 196.133 89.1921 196.133C88.1313 196.133 87.2713 196.993 87.2713 198.054C87.2713 199.115 88.1313 199.975 89.1921 199.975Z" fill="black"/>
-  <path d="M108.4 199.975C109.461 199.975 110.321 199.115 110.321 198.054C110.321 196.993 109.461 196.133 108.4 196.133C107.339 196.133 106.479 196.993 106.479 198.054C106.479 199.115 107.339 199.975 108.4 199.975Z" fill="black"/>
-  <path d="M140.415 199.975C141.476 199.975 142.336 199.115 142.336 198.054C142.336 196.993 141.476 196.133 140.415 196.133C139.355 196.133 138.495 196.993 138.495 198.054C138.495 199.115 139.355 199.975 140.415 199.975Z" fill="black"/>
-  <path d="M146.815 199.975C147.876 199.975 148.736 199.115 148.736 198.054C148.736 196.993 147.876 196.133 146.815 196.133C145.754 196.133 144.894 196.993 144.894 198.054C144.894 199.115 145.754 199.975 146.815 199.975Z" fill="black"/>
-  <path d="M153.219 199.975C154.28 199.975 155.14 199.115 155.14 198.054C155.14 196.993 154.28 196.133 153.219 196.133C152.158 196.133 151.298 196.993 151.298 198.054C151.298 199.115 152.158 199.975 153.219 199.975Z" fill="black"/>
-  <path d="M166.025 199.975C167.086 199.975 167.946 199.115 167.946 198.054C167.946 196.993 167.086 196.133 166.025 196.133C164.964 196.133 164.104 196.993 164.104 198.054C164.104 199.115 164.964 199.975 166.025 199.975Z" fill="black"/>
-  <path d="M172.427 199.975C173.488 199.975 174.348 199.115 174.348 198.054C174.348 196.993 173.488 196.133 172.427 196.133C171.366 196.133 170.506 196.993 170.506 198.054C170.506 199.115 171.366 199.975 172.427 199.975Z" fill="black"/>
-  <path d="M178.832 199.975C179.893 199.975 180.753 199.115 180.753 198.054C180.753 196.993 179.893 196.133 178.832 196.133C177.771 196.133 176.911 196.993 176.911 198.054C176.911 199.115 177.771 199.975 178.832 199.975Z" fill="black"/>
-  <path d="M185.233 199.975C186.294 199.975 187.154 199.115 187.154 198.054C187.154 196.993 186.294 196.133 185.233 196.133C184.172 196.133 183.312 196.993 183.312 198.054C183.312 199.115 184.172 199.975 185.233 199.975Z" fill="black"/>
-  <path d="M191.637 199.975C192.697 199.975 193.557 199.115 193.557 198.054C193.557 196.993 192.697 196.133 191.637 196.133C190.576 196.133 189.716 196.993 189.716 198.054C189.716 199.115 190.576 199.975 191.637 199.975Z" fill="black"/>
-  <path d="M198.039 199.975C199.1 199.975 199.96 199.115 199.96 198.054C199.96 196.993 199.1 196.133 198.039 196.133C196.979 196.133 196.119 196.993 196.119 198.054C196.119 199.115 196.979 199.975 198.039 199.975Z" fill="black"/>
-  <path d="M204.44 199.975C205.501 199.975 206.361 199.115 206.361 198.054C206.361 196.993 205.501 196.133 204.44 196.133C203.379 196.133 202.519 196.993 202.519 198.054C202.519 199.115 203.379 199.975 204.44 199.975Z" fill="black"/>
-  <path d="M76.3877 206.378C77.4485 206.378 78.3085 205.518 78.3085 204.457C78.3085 203.397 77.4485 202.537 76.3877 202.537C75.3268 202.537 74.4668 203.397 74.4668 204.457C74.4668 205.518 75.3268 206.378 76.3877 206.378Z" fill="black"/>
-  <path d="M82.7871 206.378C83.848 206.378 84.7079 205.518 84.7079 204.457C84.7079 203.396 83.848 202.536 82.7871 202.536C81.7263 202.536 80.8663 203.396 80.8663 204.457C80.8663 205.518 81.7263 206.378 82.7871 206.378Z" fill="black"/>
-  <path d="M95.5957 206.378C96.6565 206.378 97.5165 205.518 97.5165 204.457C97.5165 203.397 96.6565 202.537 95.5957 202.537C94.5348 202.537 93.6748 203.397 93.6748 204.457C93.6748 205.518 94.5348 206.378 95.5957 206.378Z" fill="black"/>
-  <path d="M101.994 206.378C103.055 206.378 103.915 205.518 103.915 204.457C103.915 203.397 103.055 202.537 101.994 202.537C100.934 202.537 100.074 203.397 100.074 204.457C100.074 205.518 100.934 206.378 101.994 206.378Z" fill="black"/>
-  <path d="M114.803 206.378C115.864 206.378 116.724 205.518 116.724 204.457C116.724 203.396 115.864 202.536 114.803 202.536C113.742 202.536 112.882 203.396 112.882 204.457C112.882 205.518 113.742 206.378 114.803 206.378Z" fill="black"/>
-  <path d="M127.607 206.378C128.668 206.378 129.528 205.518 129.528 204.457C129.528 203.397 128.668 202.537 127.607 202.537C126.546 202.537 125.686 203.397 125.686 204.457C125.686 205.518 126.546 206.378 127.607 206.378Z" fill="black"/>
-  <path d="M134.011 206.378C135.072 206.378 135.932 205.518 135.932 204.457C135.932 203.396 135.072 202.536 134.011 202.536C132.95 202.536 132.09 203.396 132.09 204.457C132.09 205.518 132.95 206.378 134.011 206.378Z" fill="black"/>
-  <path d="M153.219 206.378C154.28 206.378 155.14 205.518 155.14 204.457C155.14 203.397 154.28 202.537 153.219 202.537C152.158 202.537 151.298 203.397 151.298 204.457C151.298 205.518 152.158 206.378 153.219 206.378Z" fill="black"/>
-  <path d="M166.025 206.378C167.086 206.378 167.946 205.518 167.946 204.457C167.946 203.396 167.086 202.536 166.025 202.536C164.964 202.536 164.104 203.396 164.104 204.457C164.104 205.518 164.964 206.378 166.025 206.378Z" fill="black"/>
-  <path d="M178.832 206.378C179.893 206.378 180.753 205.518 180.753 204.457C180.753 203.397 179.893 202.537 178.832 202.537C177.771 202.537 176.911 203.397 176.911 204.457C176.911 205.518 177.771 206.378 178.832 206.378Z" fill="black"/>
-  <path d="M191.637 206.378C192.697 206.378 193.557 205.518 193.557 204.457C193.557 203.397 192.697 202.537 191.637 202.537C190.576 202.537 189.716 203.397 189.716 204.457C189.716 205.518 190.576 206.378 191.637 206.378Z" fill="black"/>
-  <path d="M198.039 206.378C199.1 206.378 199.96 205.518 199.96 204.457C199.96 203.397 199.1 202.537 198.039 202.537C196.979 202.537 196.119 203.397 196.119 204.457C196.119 205.518 196.979 206.378 198.039 206.378Z" fill="black"/>
-  <path d="M204.44 206.378C205.501 206.378 206.361 205.518 206.361 204.457C206.361 203.396 205.501 202.536 204.44 202.536C203.379 202.536 202.519 203.396 202.519 204.457C202.519 205.518 203.379 206.378 204.44 206.378Z" fill="black"/>
-  <path d="M210.845 206.378C211.905 206.378 212.765 205.518 212.765 204.457C212.765 203.397 211.905 202.537 210.845 202.537C209.784 202.537 208.924 203.397 208.924 204.457C208.924 205.518 209.784 206.378 210.845 206.378Z" fill="black"/>
-  <path d="M217.248 206.378C218.309 206.378 219.169 205.518 219.169 204.457C219.169 203.397 218.309 202.537 217.248 202.537C216.187 202.537 215.327 203.397 215.327 204.457C215.327 205.518 216.187 206.378 217.248 206.378Z" fill="black"/>
-  <path d="M69.9832 212.781C71.044 212.781 71.904 211.921 71.904 210.86C71.904 209.799 71.044 208.939 69.9832 208.939C68.9223 208.939 68.0623 209.799 68.0623 210.86C68.0623 211.921 68.9223 212.781 69.9832 212.781Z" fill="black"/>
-  <path d="M76.3877 212.781C77.4485 212.781 78.3085 211.921 78.3085 210.86C78.3085 209.799 77.4485 208.939 76.3877 208.939C75.3268 208.939 74.4668 209.799 74.4668 210.86C74.4668 211.921 75.3268 212.781 76.3877 212.781Z" fill="black"/>
-  <path d="M89.1921 212.781C90.2529 212.781 91.1129 211.921 91.1129 210.86C91.1129 209.799 90.2529 208.939 89.1921 208.939C88.1313 208.939 87.2713 209.799 87.2713 210.86C87.2713 211.921 88.1313 212.781 89.1921 212.781Z" fill="black"/>
-  <path d="M108.4 212.781C109.461 212.781 110.321 211.921 110.321 210.86C110.321 209.799 109.461 208.939 108.4 208.939C107.339 208.939 106.479 209.799 106.479 210.86C106.479 211.921 107.339 212.781 108.4 212.781Z" fill="black"/>
-  <path d="M114.803 212.781C115.864 212.781 116.724 211.921 116.724 210.86C116.724 209.799 115.864 208.939 114.803 208.939C113.742 208.939 112.882 209.799 112.882 210.86C112.882 211.921 113.742 212.781 114.803 212.781Z" fill="black"/>
-  <path d="M127.607 212.781C128.668 212.781 129.528 211.921 129.528 210.86C129.528 209.799 128.668 208.939 127.607 208.939C126.546 208.939 125.686 209.799 125.686 210.86C125.686 211.921 126.546 212.781 127.607 212.781Z" fill="black"/>
-  <path d="M134.011 212.781C135.072 212.781 135.932 211.921 135.932 210.86C135.932 209.799 135.072 208.939 134.011 208.939C132.95 208.939 132.09 209.799 132.09 210.86C132.09 211.921 132.95 212.781 134.011 212.781Z" fill="black"/>
-  <path d="M146.815 212.781C147.876 212.781 148.736 211.921 148.736 210.86C148.736 209.799 147.876 208.939 146.815 208.939C145.754 208.939 144.894 209.799 144.894 210.86C144.894 211.921 145.754 212.781 146.815 212.781Z" fill="black"/>
-  <path d="M159.623 212.781C160.684 212.781 161.544 211.921 161.544 210.86C161.544 209.799 160.684 208.939 159.623 208.939C158.563 208.939 157.703 209.799 157.703 210.86C157.703 211.921 158.563 212.781 159.623 212.781Z" fill="black"/>
-  <path d="M172.427 212.781C173.488 212.781 174.348 211.921 174.348 210.86C174.348 209.799 173.488 208.939 172.427 208.939C171.366 208.939 170.506 209.799 170.506 210.86C170.506 211.921 171.366 212.781 172.427 212.781Z" fill="black"/>
-  <path d="M198.039 212.78C199.1 212.78 199.96 211.921 199.96 210.86C199.96 209.799 199.1 208.939 198.039 208.939C196.979 208.939 196.119 209.799 196.119 210.86C196.119 211.921 196.979 212.78 198.039 212.78Z" fill="black"/>
-  <path d="M204.44 212.781C205.501 212.781 206.361 211.921 206.361 210.86C206.361 209.799 205.501 208.939 204.44 208.939C203.379 208.939 202.519 209.799 202.519 210.86C202.519 211.921 203.379 212.781 204.44 212.781Z" fill="black"/>
-  <path d="M217.248 212.781C218.309 212.781 219.169 211.921 219.169 210.86C219.169 209.799 218.309 208.939 217.248 208.939C216.187 208.939 215.327 209.799 215.327 210.86C215.327 211.921 216.187 212.781 217.248 212.781Z" fill="black"/>
-  <path d="M223.649 212.78C224.71 212.78 225.57 211.921 225.57 210.86C225.57 209.799 224.71 208.939 223.649 208.939C222.588 208.939 221.728 209.799 221.728 210.86C221.728 211.921 222.588 212.78 223.649 212.78Z" fill="black"/>
-  <path d="M134.011 219.184C135.072 219.184 135.932 218.324 135.932 217.263C135.932 216.202 135.072 215.342 134.011 215.342C132.95 215.342 132.09 216.202 132.09 217.263C132.09 218.324 132.95 219.184 134.011 219.184Z" fill="black"/>
-  <path d="M140.415 219.184C141.476 219.184 142.336 218.324 142.336 217.263C142.336 216.202 141.476 215.342 140.415 215.342C139.355 215.342 138.495 216.202 138.495 217.263C138.495 218.324 139.355 219.184 140.415 219.184Z" fill="black"/>
-  <path d="M153.219 219.184C154.28 219.184 155.14 218.324 155.14 217.263C155.14 216.203 154.28 215.343 153.219 215.343C152.158 215.343 151.298 216.203 151.298 217.263C151.298 218.324 152.158 219.184 153.219 219.184Z" fill="black"/>
-  <path d="M166.025 219.184C167.086 219.184 167.946 218.324 167.946 217.263C167.946 216.202 167.086 215.342 166.025 215.342C164.964 215.342 164.104 216.202 164.104 217.263C164.104 218.324 164.964 219.184 166.025 219.184Z" fill="black"/>
-  <path d="M172.427 219.184C173.488 219.184 174.348 218.324 174.348 217.263C174.348 216.203 173.488 215.343 172.427 215.343C171.366 215.343 170.506 216.203 170.506 217.263C170.506 218.324 171.366 219.184 172.427 219.184Z" fill="black"/>
-  <path d="M178.832 219.184C179.893 219.184 180.753 218.324 180.753 217.263C180.753 216.203 179.893 215.343 178.832 215.343C177.771 215.343 176.911 216.203 176.911 217.263C176.911 218.324 177.771 219.184 178.832 219.184Z" fill="black"/>
-  <path d="M185.233 219.184C186.294 219.184 187.154 218.324 187.154 217.263C187.154 216.202 186.294 215.342 185.233 215.342C184.172 215.342 183.312 216.202 183.312 217.263C183.312 218.324 184.172 219.184 185.233 219.184Z" fill="black"/>
-  <path d="M204.44 219.184C205.501 219.184 206.361 218.324 206.361 217.263C206.361 216.202 205.501 215.342 204.44 215.342C203.379 215.342 202.519 216.202 202.519 217.263C202.519 218.324 203.379 219.184 204.44 219.184Z" fill="black"/>
-  <path d="M76.3877 225.586C77.4485 225.586 78.3085 224.726 78.3085 223.665C78.3085 222.604 77.4485 221.744 76.3877 221.744C75.3268 221.744 74.4668 222.604 74.4668 223.665C74.4668 224.726 75.3268 225.586 76.3877 225.586Z" fill="black"/>
-  <path d="M82.7871 225.586C83.848 225.586 84.7079 224.726 84.7079 223.665C84.7079 222.604 83.848 221.744 82.7871 221.744C81.7263 221.744 80.8663 222.604 80.8663 223.665C80.8663 224.726 81.7263 225.586 82.7871 225.586Z" fill="black"/>
-  <path d="M89.1921 225.586C90.2529 225.586 91.1129 224.726 91.1129 223.665C91.1129 222.604 90.2529 221.744 89.1921 221.744C88.1313 221.744 87.2713 222.604 87.2713 223.665C87.2713 224.726 88.1313 225.586 89.1921 225.586Z" fill="black"/>
-  <path d="M95.5957 225.586C96.6565 225.586 97.5165 224.726 97.5165 223.665C97.5165 222.604 96.6565 221.744 95.5957 221.744C94.5348 221.744 93.6748 222.604 93.6748 223.665C93.6748 224.726 94.5348 225.586 95.5957 225.586Z" fill="black"/>
-  <path d="M101.994 225.586C103.055 225.586 103.915 224.726 103.915 223.665C103.915 222.604 103.055 221.744 101.994 221.744C100.934 221.744 100.074 222.604 100.074 223.665C100.074 224.726 100.934 225.586 101.994 225.586Z" fill="black"/>
-  <path d="M108.4 225.586C109.461 225.586 110.321 224.726 110.321 223.665C110.321 222.604 109.461 221.744 108.4 221.744C107.339 221.744 106.479 222.604 106.479 223.665C106.479 224.726 107.339 225.586 108.4 225.586Z" fill="black"/>
-  <path d="M114.803 225.586C115.864 225.586 116.724 224.726 116.724 223.665C116.724 222.604 115.864 221.744 114.803 221.744C113.742 221.744 112.882 222.604 112.882 223.665C112.882 224.726 113.742 225.586 114.803 225.586Z" fill="black"/>
-  <path d="M127.607 225.586C128.668 225.586 129.528 224.726 129.528 223.665C129.528 222.604 128.668 221.744 127.607 221.744C126.546 221.744 125.686 222.604 125.686 223.665C125.686 224.726 126.546 225.586 127.607 225.586Z" fill="black"/>
-  <path d="M134.011 225.586C135.072 225.586 135.932 224.726 135.932 223.665C135.932 222.604 135.072 221.744 134.011 221.744C132.95 221.744 132.09 222.604 132.09 223.665C132.09 224.726 132.95 225.586 134.011 225.586Z" fill="black"/>
-  <path d="M153.219 225.586C154.28 225.586 155.14 224.726 155.14 223.665C155.14 222.604 154.28 221.744 153.219 221.744C152.158 221.744 151.298 222.604 151.298 223.665C151.298 224.726 152.158 225.586 153.219 225.586Z" fill="black"/>
-  <path d="M172.427 225.586C173.488 225.586 174.348 224.726 174.348 223.665C174.348 222.604 173.488 221.744 172.427 221.744C171.366 221.744 170.506 222.604 170.506 223.665C170.506 224.726 171.366 225.586 172.427 225.586Z" fill="black"/>
-  <path d="M178.832 225.586C179.893 225.586 180.753 224.726 180.753 223.665C180.753 222.604 179.893 221.744 178.832 221.744C177.771 221.744 176.911 222.604 176.911 223.665C176.911 224.726 177.771 225.586 178.832 225.586Z" fill="black"/>
-  <path d="M198.039 225.586C199.1 225.586 199.96 224.726 199.96 223.665C199.96 222.604 199.1 221.744 198.039 221.744C196.979 221.744 196.119 222.604 196.119 223.665C196.119 224.726 196.979 225.586 198.039 225.586Z" fill="black"/>
-  <path d="M223.649 225.586C224.71 225.586 225.57 224.726 225.57 223.665C225.57 222.604 224.71 221.744 223.649 221.744C222.588 221.744 221.728 222.604 221.728 223.665C221.728 224.726 222.588 225.586 223.649 225.586Z" fill="black"/>
-  <path d="M37.9703 15.9998C25.837 15.9998 16 25.8367 16 37.9701C16 50.1034 25.837 59.9404 37.9703 59.9404C50.1036 59.9404 59.9406 50.1034 59.9406 37.9701C59.9406 25.8367 50.1036 15.9998 37.9703 15.9998ZM37.9703 53.3493C29.4902 53.3493 22.5911 46.4502 22.5911 37.9701C22.5911 29.49 29.4902 22.5908 37.9703 22.5908C46.4504 22.5908 53.3495 29.49 53.3495 37.9701C53.3495 46.4502 46.4504 53.3493 37.9703 53.3493Z" fill="black"/>
-  <path d="M204.442 15.9995C192.308 15.9995 182.471 25.8365 182.471 37.9698C182.471 50.1031 192.308 59.9401 204.442 59.9401C216.575 59.9401 226.412 50.1031 226.412 37.9698C226.412 25.8365 216.575 15.9995 204.442 15.9995ZM204.442 53.349C195.962 53.349 189.062 46.4499 189.062 37.9698C189.062 29.4897 195.962 22.5906 204.442 22.5906C212.922 22.5906 219.821 29.4897 219.821 37.9698C219.821 46.4499 212.922 53.349 204.442 53.349Z" fill="black"/>
-  <path d="M37.9705 182.487C25.8372 182.487 16.0002 192.324 16.0002 204.458C16.0002 216.591 25.8372 226.428 37.9705 226.428C50.1039 226.428 59.9408 216.591 59.9408 204.458C59.9408 192.324 50.1039 182.487 37.9705 182.487ZM37.9705 219.837C29.4904 219.837 22.5913 212.938 22.5913 204.458C22.5913 195.978 29.4904 189.078 37.9705 189.078C46.4506 189.078 53.3498 195.978 53.3498 204.458C53.3498 212.938 46.4506 219.837 37.9705 219.837Z" fill="black"/>
-  <path d="M37.7815 47.1968C42.9817 47.1968 47.1973 42.9812 47.1973 37.781C47.1973 32.5808 42.9817 28.3652 37.7815 28.3652C32.5813 28.3652 28.3657 32.5808 28.3657 37.781C28.3657 42.9812 32.5813 47.1968 37.7815 47.1968Z" fill="black"/>
-  <path d="M204.253 47.197C209.453 47.197 213.668 42.9814 213.668 37.7812C213.668 32.5809 209.453 28.3653 204.253 28.3653C199.052 28.3653 194.837 32.5809 194.837 37.7812C194.837 42.9814 199.052 47.197 204.253 47.197Z" fill="black"/>
-  <path d="M37.7815 213.685C42.9817 213.685 47.1973 209.469 47.1973 204.269C47.1973 199.069 42.9817 194.853 37.7815 194.853C32.5813 194.853 28.3657 199.069 28.3657 204.269C28.3657 209.469 32.5813 213.685 37.7815 213.685Z" fill="black"/>
-  <rect x="85.9905" y="88.6589" width="70.4305" height="65.0949" fill="url(#pattern0_1_4)"/>
-  <defs>
-    <pattern id="pattern0_1_4" patternContentUnits="objectBoundingBox" width="1" height="1">
-      <use xlink:href="#image0_1_4" transform="scale(0.00227273 0.002457)"/>
-    </pattern>
-    <image id="image0_1_4" width="440" height="407" xlink:href="data:image/png;base64,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"/>
-  </defs>
-</svg>

From 44ce0a5a5a02a8a380eea249ed47ef845ee7c5c4 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:28:00 +0100
Subject: [PATCH 06/88] chore: inherit `color` for svg icons

---
 src/modal/components/icons/ReloadIcon.svelte       | 3 +--
 src/modal/components/icons/brands/AppleIcon.svelte | 1 -
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/modal/components/icons/ReloadIcon.svelte b/src/modal/components/icons/ReloadIcon.svelte
index bb32753..e5b1885 100644
--- a/src/modal/components/icons/ReloadIcon.svelte
+++ b/src/modal/components/icons/ReloadIcon.svelte
@@ -1,4 +1,3 @@
-<!--TODO color-->
 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none">
-  <path d="M15.25 3.50011V6.50011C15.25 6.69902 15.171 6.88979 15.0303 7.03044C14.8897 7.17109 14.6989 7.25011 14.5 7.25011H11.5C11.3011 7.25011 11.1103 7.17109 10.9697 7.03044C10.829 6.88979 10.75 6.69902 10.75 6.50011C10.75 6.3012 10.829 6.11043 10.9697 5.96978C11.1103 5.82913 11.3011 5.75011 11.5 5.75011H12.5687L11.3812 4.66386C11.3731 4.65636 11.365 4.64886 11.3575 4.64074C10.8069 4.09046 10.1295 3.68394 9.38483 3.45695C8.64022 3.22996 7.85122 3.18945 7.08728 3.33899C6.32333 3.48853 5.60784 3.82353 5.00377 4.31452C4.39969 4.80552 3.92555 5.43745 3.62305 6.15472C3.32055 6.87199 3.19898 7.65261 3.26902 8.4279C3.33906 9.20319 3.59857 9.94938 4.02471 10.6008C4.45086 11.2523 5.03058 11.789 5.71287 12.1638C6.39516 12.5386 7.1591 12.7399 7.93748 12.7501H7.99998C9.21243 12.753 10.3795 12.2893 11.2594 11.4551C11.404 11.3184 11.597 11.2448 11.7959 11.2504C11.9948 11.2561 12.1833 11.3405 12.32 11.4851C12.4566 11.6297 12.5303 11.8227 12.5246 12.0216C12.519 12.2205 12.4346 12.4091 12.29 12.5457C11.1318 13.6435 9.59575 14.2537 7.99998 14.2501H7.91436C6.89126 14.2357 5.88735 13.9703 4.99078 13.4773C4.09421 12.9842 3.3324 12.2786 2.77224 11.4224C2.21208 10.5661 1.87071 9.58543 1.7781 8.56644C1.68548 7.54744 1.84447 6.52129 2.24108 5.57809C2.63769 4.63489 3.25981 3.80349 4.05281 3.15688C4.8458 2.51028 5.78541 2.06826 6.78915 1.86963C7.79288 1.671 8.83003 1.72184 9.80952 2.01768C10.789 2.31352 11.6809 2.84531 12.4069 3.56636L13.75 4.79511V3.50011C13.75 3.3012 13.829 3.11043 13.9697 2.96978C14.1103 2.82913 14.3011 2.75011 14.5 2.75011C14.6989 2.75011 14.8897 2.82913 15.0303 2.96978C15.171 3.11043 15.25 3.3012 15.25 3.50011Z" fill="#404040"/>
+  <path d="M15.25 3.50011V6.50011C15.25 6.69902 15.171 6.88979 15.0303 7.03044C14.8897 7.17109 14.6989 7.25011 14.5 7.25011H11.5C11.3011 7.25011 11.1103 7.17109 10.9697 7.03044C10.829 6.88979 10.75 6.69902 10.75 6.50011C10.75 6.3012 10.829 6.11043 10.9697 5.96978C11.1103 5.82913 11.3011 5.75011 11.5 5.75011H12.5687L11.3812 4.66386C11.3731 4.65636 11.365 4.64886 11.3575 4.64074C10.8069 4.09046 10.1295 3.68394 9.38483 3.45695C8.64022 3.22996 7.85122 3.18945 7.08728 3.33899C6.32333 3.48853 5.60784 3.82353 5.00377 4.31452C4.39969 4.80552 3.92555 5.43745 3.62305 6.15472C3.32055 6.87199 3.19898 7.65261 3.26902 8.4279C3.33906 9.20319 3.59857 9.94938 4.02471 10.6008C4.45086 11.2523 5.03058 11.789 5.71287 12.1638C6.39516 12.5386 7.1591 12.7399 7.93748 12.7501H7.99998C9.21243 12.753 10.3795 12.2893 11.2594 11.4551C11.404 11.3184 11.597 11.2448 11.7959 11.2504C11.9948 11.2561 12.1833 11.3405 12.32 11.4851C12.4566 11.6297 12.5303 11.8227 12.5246 12.0216C12.519 12.2205 12.4346 12.4091 12.29 12.5457C11.1318 13.6435 9.59575 14.2537 7.99998 14.2501H7.91436C6.89126 14.2357 5.88735 13.9703 4.99078 13.4773C4.09421 12.9842 3.3324 12.2786 2.77224 11.4224C2.21208 10.5661 1.87071 9.58543 1.7781 8.56644C1.68548 7.54744 1.84447 6.52129 2.24108 5.57809C2.63769 4.63489 3.25981 3.80349 4.05281 3.15688C4.8458 2.51028 5.78541 2.06826 6.78915 1.86963C7.79288 1.671 8.83003 1.72184 9.80952 2.01768C10.789 2.31352 11.6809 2.84531 12.4069 3.56636L13.75 4.79511V3.50011C13.75 3.3012 13.829 3.11043 13.9697 2.96978C14.1103 2.82913 14.3011 2.75011 14.5 2.75011C14.6989 2.75011 14.8897 2.82913 15.0303 2.96978C15.171 3.11043 15.25 3.3012 15.25 3.50011Z" fill="currentColor"/>
 </svg>
\ No newline at end of file
diff --git a/src/modal/components/icons/brands/AppleIcon.svelte b/src/modal/components/icons/brands/AppleIcon.svelte
index 2678b26..8cbb556 100644
--- a/src/modal/components/icons/brands/AppleIcon.svelte
+++ b/src/modal/components/icons/brands/AppleIcon.svelte
@@ -1,4 +1,3 @@
-<!-- TODO color bug on dark -->
 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="26" viewBox="0 0 22 26" fill="none">
   <path d="M17.71 13.7971C17.6815 10.6387 20.296 9.10219 20.4156 9.03069C18.9349 6.87185 16.6399 6.57692 15.8334 6.5534C13.9059 6.35052 12.0362 7.70675 11.0543 7.70675C10.0528 7.70675 8.54067 6.573 6.91107 6.60632C4.814 6.63862 2.85216 7.8528 1.77619 9.7382C-0.444353 13.5825 1.21174 19.2319 3.33916 22.3392C4.40337 23.8611 5.64695 25.5603 7.27459 25.5005C8.86703 25.4349 9.46182 24.4853 11.3835 24.4853C13.2875 24.4853 13.8461 25.5005 15.5061 25.4623C17.2151 25.4349 18.2911 23.9336 19.318 22.398C20.5479 20.6537 21.0418 18.9359 21.0614 18.8477C21.0212 18.834 17.7423 17.5826 17.71 13.7971Z" fill="currentColor"/>
   <path d="M14.5762 4.5089C15.4327 3.43787 16.0187 1.98066 15.856 0.501953C14.6164 0.55683 13.0662 1.3594 12.1734 2.40697C11.3836 3.33007 10.678 4.8431 10.8603 6.26597C12.2528 6.36984 13.6825 5.56332 14.5762 4.5089Z" fill="currentColor"/>

From 110bbdf4696c9029c547acea1529edb5d505130d Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:29:21 +0100
Subject: [PATCH 07/88] chore: remove redundant component

---
 src/modal/ConnectorButton.svelte | 116 -------------------------------
 1 file changed, 116 deletions(-)
 delete mode 100644 src/modal/ConnectorButton.svelte

diff --git a/src/modal/ConnectorButton.svelte b/src/modal/ConnectorButton.svelte
deleted file mode 100644
index 46a528b..0000000
--- a/src/modal/ConnectorButton.svelte
+++ /dev/null
@@ -1,116 +0,0 @@
-<script lang="ts">
-  import { ModalWallet } from "../types/modal"
-  import type { StarknetkitConnector } from "../connectors/connector"
-  import { getConnector } from "../main.js"
-
-  export let wallet: ModalWallet
-  export let theme: "light" | "dark" | null = null
-  export let cb: (
-    value: StarknetkitConnector | null,
-  ) => Promise<void> = async () => {}
-  export let loadingItem: string | false = false
-  const icon =
-    typeof wallet.icon === "string"
-      ? wallet.icon
-      : theme === "dark"
-        ? wallet.icon.dark
-        : wallet.icon.light
-  const isSvg = icon?.startsWith("<svg")
-
-  console.log(wallet)
-</script>
-
-{#if wallet.download}
-  <a
-    aria-label={wallet.name + " download link"}
-    href={wallet.download}
-    target="_blank"
-    rel="noopener noreferrer"
-    class={`rounded-md focus:outline-none  focus:ring-2 
-    focus:ring-neutral-200  dark:focus:ring-neutral-700 transition-colors`}
-  >
-    <!-- svelte-ignore a11y-no-noninteractive-element-interactions -->
-    <li
-      class={`flex flex-row-reverse justify-between items-center 
-              p-3 rounded-md cursor-pointer shadow-list-item 
-              dark:shadow-none dark:bg-neutral-800 dark:text-white 
-            hover:bg-neutral-100 dark:hover:bg-neutral-700`}
-      on:click={() => {
-        cb(null)
-      }}
-      on:keyup={(e) => {
-        if (e.key === "Enter") {
-          cb(null)
-        }
-      }}
-    >
-      <span class="w-8 h-8" />
-      <p class="font-semibold text-base p">
-        Install {wallet.name}
-      </p>
-      <img alt={wallet.name} src={icon} class="w-8 h-8 rounded-full" />
-    </li>
-  </a>
-{:else}
-  <!-- svelte-ignore a11y-no-noninteractive-element-to-interactive-role -->
-  <li
-    class={`flex flex-row-reverse justify-between items-center 
-            p-3 rounded-md cursor-pointer shadow-list-item 
-            dark:shadow-none dark:bg-neutral-800 dark:text-white 
-          hover:bg-neutral-100 dark:hover:bg-neutral-700 
-          focus:outline-none focus:ring-2 
-        focus:ring-neutral-200 dark:focus:ring-neutral-700 
-          transition-colors`}
-    role="button"
-    tabindex="0"
-    on:click={async () => {
-      console.log("HERE", wallet, getConnector(wallet.connector))
-      cb(getConnector(wallet.connector))
-    }}
-    on:keyup={async (e) => {
-      if (e.key === "Enter") {
-        cb(getConnector(wallet.connector))
-      }
-    }}
-  >
-    {#if wallet.isCompoundConnector}
-      <!-- TODO testing -->
-      compound
-    {/if}
-    <span class="w-8 h-8" />
-    <div class="flex flex-col justify-center items-center">
-      <p class="font-semibold text-base p">
-        {wallet.title ?? wallet.name}
-      </p>
-      <p class="l2 p" style="text-align: center;">
-        {wallet.subtitle ?? ""}
-      </p>
-    </div>
-
-    {#if loadingItem === wallet?.id}
-      <div role="status">
-        <svg
-          aria-hidden="true"
-          class="w-8 h-8 text-neutral-300 animate-spin dark:text-neutral-600 fill-neutral-600 dark:fill-neutral-300"
-          viewBox="0 0 100 101"
-          fill="none"
-          xmlns="http://www.w3.org/2000/svg"
-        >
-          <path
-            d="M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z"
-            fill="currentColor"
-          />
-          <path
-            d="M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z"
-            fill="currentFill"
-          />
-        </svg>
-        <span class="sr-only">Loading...</span>
-      </div>
-    {:else if isSvg}
-      <div style="position: relative;">{@html icon}</div>
-    {:else}
-      <img alt={wallet?.name} src={icon} class="w-8 h-8 rounded" />
-    {/if}
-  </li>
-{/if}

From 1202fa324ab73b845a460c5cef00849f3238910b Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:29:55 +0100
Subject: [PATCH 08/88] fix: add missing tailwind's color tokens from `x-ui`

---
 tailwind.config.js | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tailwind.config.js b/tailwind.config.js
index a11718e..4d65d7a 100644
--- a/tailwind.config.js
+++ b/tailwind.config.js
@@ -12,6 +12,7 @@ export default {
       colors: {
         "primary-orange-400": "var(--color-primary-orange-400)",
         "surface-default": "var(--color-surface-default)",
+        ...tailwindThemeConfig.colors,
       },
       fontSize: {
         ...tailwindThemeConfig.fontSize,

From f743342c436e6a0a85fe5e6066d71570428aed20 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:30:46 +0100
Subject: [PATCH 09/88] chore: improve button components

---
 .../components/buttons/IconButton.svelte      | 27 ++++++++++++-------
 .../components/buttons/LargeButton.svelte     | 12 +++++++--
 src/modal/components/buttons/Link.svelte      | 15 ++++++++++-
 3 files changed, 42 insertions(+), 12 deletions(-)

diff --git a/src/modal/components/buttons/IconButton.svelte b/src/modal/components/buttons/IconButton.svelte
index e38af82..173fad0 100644
--- a/src/modal/components/buttons/IconButton.svelte
+++ b/src/modal/components/buttons/IconButton.svelte
@@ -1,19 +1,28 @@
 <script lang="ts">
+  export let href: string = ""
   export let ariaLabel: string
   export let className: string
+  export let as: "a" | "button" = "button"
+
+  export let handleClick: (e: MouseEvent) => void = (e: MouseEvent) => console.log("click", e)
+  export let handleKeyup: (e: KeyboardEvent) => void = (e: KeyboardEvent) => console.log("keyup", e)
 </script>
 
-<span
-  class={`p-2 cursor-pointer
-			  rounded-full bg-neutral-100 dark:bg-neutral-800
-			  text-neutral-400 dark:text-white
-			  hover:bg-neutral-100 dark:hover:bg-neutral-700
-			  focus:outline-none focus:ring-2
-			focus:ring-neutral-200 dark:focus:ring-neutral-700
-			  transition-colors ${className}`}
+<svelte:element
+  this={as}
+  href={href}
+  on:click={handleClick}
+  on:keyup={handleKeyup}
+  class={`
+    p-2 cursor-pointer text-primary rounded-full bg-surface-elevated-web
+		focus:outline-none focus:ring-2 focus:ring-neutral-200 dark:focus:ring-neutral-700
+		transition-colors ${className}
+  `}
+  rel="noreferrer noopener"
+  target="_blank"
   role="button"
   tabindex="0"
   aria-label={ariaLabel}
 >
   <slot/>
-</span>
\ No newline at end of file
+</svelte:element>
\ No newline at end of file
diff --git a/src/modal/components/buttons/LargeButton.svelte b/src/modal/components/buttons/LargeButton.svelte
index cbfc1ae..2e072e9 100644
--- a/src/modal/components/buttons/LargeButton.svelte
+++ b/src/modal/components/buttons/LargeButton.svelte
@@ -1,19 +1,27 @@
 <script lang="ts">
 	export let href: string = ""
+	export let ariaLabel: string = ""
+	export let className: string = ""
 	export let as: "a" | "button" = "button"
+
+	export let handleClick: (e: MouseEvent) => void = (e: MouseEvent) => console.log("click", e)
+	export let handleKeyup: (e: KeyboardEvent) => void = (e: KeyboardEvent) => console.log("keyup", e)
 </script>
 
 <svelte:element
 	this={as}
 	href={href}
+	on:click={handleClick}
+	on:keyup={handleKeyup}
 	rel="noreferrer noopener"
 	target="_blank"
 	role="button"
+	aria-label={ariaLabel}
 	tabindex="0"
 	class={`
 		flex justify-center items-center w-full px-3 h-[60px] rounded-[12px] cursor-pointer shadow-list-item
-		dark:shadow-none bg-surface-elevated focus:outline-none focus:ring-2
-		focus:ring-neutral-200 dark:focus:ring-neutral-700 transition-colors
+		dark:shadow-none bg-surface-elevated focus:outline-none focus:ring-2 text-primary
+		focus:ring-neutral-200 dark:focus:ring-neutral-700 transition-colors ${className}
 	`}
 >
 	<slot />
diff --git a/src/modal/components/buttons/Link.svelte b/src/modal/components/buttons/Link.svelte
index 512495b..44dc1ad 100644
--- a/src/modal/components/buttons/Link.svelte
+++ b/src/modal/components/buttons/Link.svelte
@@ -2,8 +2,21 @@
   export let className: string
   export let href: string | undefined = undefined
   export let as: "button" | "a" = "a"
+
+  export let handleClick: ((e: MouseEvent) => void) | undefined = undefined
+  export let handleKeyup: ((e: KeyboardEvent) => void) | undefined = undefined
 </script>
 
-<svelte:element this={as} class={className} href={href} rel="noreferrer noopener" target="_blank">
+<svelte:element
+  this={as}
+  class={className}
+  href={href}
+  rel="noreferrer noopener"
+  target="_blank"
+  on:click={handleClick}
+  on:keyup={handleKeyup}
+  role="button"
+  tabindex="0"
+>
   <slot />
 </svelte:element>
\ No newline at end of file

From c777e5d136d9d1722e611a11eb5aeed234939331 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:34:48 +0100
Subject: [PATCH 10/88] chore: rename component to more appropriate name

---
 src/modal/components/{Line.svelte => HorizontalLine.svelte} | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename src/modal/components/{Line.svelte => HorizontalLine.svelte} (100%)

diff --git a/src/modal/components/Line.svelte b/src/modal/components/HorizontalLine.svelte
similarity index 100%
rename from src/modal/components/Line.svelte
rename to src/modal/components/HorizontalLine.svelte

From 8612c92634722fa86ff8779be20b0212a1024e98 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:35:33 +0100
Subject: [PATCH 11/88] chore: improve button component

---
 src/modal/components/buttons/Button.svelte | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/modal/components/buttons/Button.svelte b/src/modal/components/buttons/Button.svelte
index 1ce9234..2f27f21 100644
--- a/src/modal/components/buttons/Button.svelte
+++ b/src/modal/components/buttons/Button.svelte
@@ -6,10 +6,15 @@
   export let as: "button" | "a" = "button"
   export let isLarge: boolean = false
 
-  export let height = isLarge ? "min-h-12" : "min-h-8"
+  const height = isLarge ? "min-h-12" : "min-h-8"
+
+  export let handleClick: (e: MouseEvent) => void = (e: MouseEvent) => console.log("click", e)
+  export let handleKeyup: (e: KeyboardEvent) => void = (e: KeyboardEvent) => console.log("keyup", e)
 </script>
 
 <Link
+  handleClick={handleClick}
+  handleKeyup={handleKeyup}
   as={as}
   href={href}
   className={`

From 9039438ba19ac47afff39a564eb491e9f6368f93 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:35:58 +0100
Subject: [PATCH 12/88] fix: color

---
 src/modal/components/icons/CloseIcon.svelte | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/modal/components/icons/CloseIcon.svelte b/src/modal/components/icons/CloseIcon.svelte
index 14b302c..b2e8ab9 100644
--- a/src/modal/components/icons/CloseIcon.svelte
+++ b/src/modal/components/icons/CloseIcon.svelte
@@ -1,4 +1,3 @@
-<!-- TODO color is not good here, nor in caret -->
 <svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
   <path d="M9.77275 3.02275C9.99242 2.80308 9.99242 2.44692 9.77275 2.22725C9.55308 2.00758 9.19692 2.00758 8.97725 2.22725L6 5.20451L3.02275 2.22725C2.80308 2.00758 2.44692 2.00758 2.22725 2.22725C2.00758 2.44692 2.00758 2.80308 2.22725 3.02275L5.20451 6L2.22725 8.97725C2.00758 9.19692 2.00758 9.55308 2.22725 9.77275C2.44692 9.99242 2.80308 9.99242 3.02275 9.77275L6 6.79549L8.97725 9.77275C9.19692 9.99242 9.55308 9.99242 9.77275 9.77275C9.99242 9.55308 9.99242 9.19692 9.77275 8.97725L6.79549 6L9.77275 3.02275Z" fill="currentColor" />
 </svg>
\ No newline at end of file

From c57a8d8201a3a919031fa867544f8d78e4d873ac Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:36:44 +0100
Subject: [PATCH 13/88] feat: add component for rendering icons

---
 src/modal/components/DynamicIcon.svelte | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
 create mode 100644 src/modal/components/DynamicIcon.svelte

diff --git a/src/modal/components/DynamicIcon.svelte b/src/modal/components/DynamicIcon.svelte
new file mode 100644
index 0000000..8d131d8
--- /dev/null
+++ b/src/modal/components/DynamicIcon.svelte
@@ -0,0 +1,21 @@
+<script lang="ts">
+  import { Theme } from "../../types/modal"
+  import { ConnectorIcons } from "../../connectors"
+
+  export let theme: Theme
+  export let icon: ConnectorIcons
+
+  const renderIcon =
+    typeof icon === "string"
+      ? icon
+      : theme === "dark"
+        ? icon.dark
+        : icon.light
+</script>
+
+{#if renderIcon.trimStart()?.startsWith("<svg")}
+  <!-- eslint-disable-next-line svelte/no-at-html-tags -->
+  <div class="flex flex-shrink items-center max-w-[32px]" style="position: relative;">{@html renderIcon}</div>
+{:else}
+  <img src={renderIcon} class="w-8 h-8 rounded" alt=""  />
+{/if}

From fba46c4e3d237cb8c1c5e837f9efe5ca91da1bab Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 11:38:27 +0100
Subject: [PATCH 14/88] chore: clean up and add missing functionality

---
 src/modal/components/FallbackMobile.svelte    | 19 +++++++++++----
 src/modal/components/InstallWallet.svelte     | 16 +++++++++----
 .../components/buttons/WalletButton.svelte    | 23 +++++++++++++------
 src/modal/layouts/Connecting.svelte           |  9 ++++----
 src/modal/layouts/FailedLogin.svelte          | 22 ++++++++++++++----
 5 files changed, 64 insertions(+), 25 deletions(-)

diff --git a/src/modal/components/FallbackMobile.svelte b/src/modal/components/FallbackMobile.svelte
index 8dcb928..af2ed02 100644
--- a/src/modal/components/FallbackMobile.svelte
+++ b/src/modal/components/FallbackMobile.svelte
@@ -1,14 +1,23 @@
-<script>
-  import Line from "./Line.svelte";
+<script lang="ts">
+  import HorizontalLine from "./HorizontalLine.svelte";
   import LargeButton from "./buttons/LargeButton.svelte";
+
+  export let handleClick: () => void = () => {}
 </script>
 
 <footer class="flex flex-col gap-4 w-full">
-  <Line />
-  <LargeButton>
+  <HorizontalLine />
+  <LargeButton
+    handleClick={handleClick}
+    handleKeyup={(e) => {
+    if (e.key === "Enter") {
+      handleClick()
+    }
+  }}
+  >
     <div class="flex flex-row-reverse items-center gap-2">
 
-      <span>
+      <span class="text-primary">
         Connect to Argent mobile instead
       </span>
 
diff --git a/src/modal/components/InstallWallet.svelte b/src/modal/components/InstallWallet.svelte
index 8063454..3e854c9 100644
--- a/src/modal/components/InstallWallet.svelte
+++ b/src/modal/components/InstallWallet.svelte
@@ -3,19 +3,25 @@
   import PlayStore from "./icons/brands/PlayStore.svelte";
   import ChromeIcon from "./icons/brands/ChromeIcon.svelte";
   import AppleIcon from "./icons/brands/AppleIcon.svelte";
-  import Line from "./Line.svelte";
+  import HorizontalLine from "./HorizontalLine.svelte";
 
   export let walletName: string = ""
-  export let walletLink: string = "" // TODO is this link or does it open something else?
+  export let handleClick: () => void = () => {}
 </script>
 
 <footer class="flex flex-col gap-4">
-  <Line />
+  <HorizontalLine />
 
   <p class="text-h5 text-primary">Don't have {walletName}?</p>
 
-  <!-- TODO noreferrer noopener, empty href other element, etc -->
-  <LargeButton href={walletLink}>
+  <LargeButton
+    handleClick={handleClick}
+    handleKeyup={(e) => {
+      if (e.key === "Enter") {
+        handleClick()
+      }
+    }}
+  >
     <div class="flex flex-row-reverse justify-center items-center gap-2">
       <p class="font-semibold text-p3 text-primary">Get it</p>
 
diff --git a/src/modal/components/buttons/WalletButton.svelte b/src/modal/components/buttons/WalletButton.svelte
index f4ca835..4c5127a 100644
--- a/src/modal/components/buttons/WalletButton.svelte
+++ b/src/modal/components/buttons/WalletButton.svelte
@@ -1,17 +1,28 @@
 <script lang="ts">
+  import { Callback, ModalWallet, Theme } from "../../../types/modal"
+
   import LargeButton from "./LargeButton.svelte";
+  import DynamicIcon from "../DynamicIcon.svelte"
 
-  export let wallet: { title: string, subtitle?: string, icon: string } // TODO
+  export let wallet: ModalWallet
+  export let theme: Theme
 
-  const isSvg = wallet?.icon?.startsWith("<svg")
+  export let callback: Callback = async () => {}
 </script>
 
-<LargeButton as="a" href="#TODO">
+<LargeButton
+  handleClick={() => callback(wallet)}
+  handleKeyup={(e) => {
+    if (e.key === "Enter") {
+      callback(wallet)
+    }
+  }}
+>
   <div class="w-full flex flex-row-reverse justify-between">
     <div class="flex flex-grow flex-col justify-center items-center">
       <div class="ml-[-32px]">
         <p class="font-semibold text-[15px] text-primary">
-          {wallet.title}
+          {wallet.title ?? wallet.name}
         </p>
         {#if wallet.subtitle}
           <p class="text-l2 text-subtle" style="text-align: center;">
@@ -21,8 +32,6 @@
       </div>
     </div>
 
-    {#if isSvg}
-      <div class="flex flex-shrink items-center max-w-[32px]" style="position: relative;">{@html wallet.icon}</div>
-    {/if}
+    <DynamicIcon icon={wallet.icon} theme={theme} />
   </div>
 </LargeButton>
diff --git a/src/modal/layouts/Connecting.svelte b/src/modal/layouts/Connecting.svelte
index 1a35341..f40aaec 100644
--- a/src/modal/layouts/Connecting.svelte
+++ b/src/modal/layouts/Connecting.svelte
@@ -1,8 +1,9 @@
 <script lang="ts">
   import FallbackMobile from "../components/FallbackMobile.svelte";
 
-  export let extensionName: string = "Argent X"
-  export let showFallback: boolean = true
+  export let walletName: string = ""
+  export let showFallback: boolean = false
+  export let handleFallback: () => void = async () => {}
 </script>
 
 <section class="flex flex-col justify-center items-center flex-grow">
@@ -12,10 +13,10 @@
       <slot />
     </div>
 
-    <h3 class="text-primary text-h4 font-bold">Connecting to {extensionName}...</h3>
+    <h3 class="text-primary text-h4 font-bold">Connecting to {walletName}...</h3>
   </div>
 
   {#if showFallback}
-    <FallbackMobile />
+    <FallbackMobile handleClick={handleFallback} />
   {/if}
 </section>
\ No newline at end of file
diff --git a/src/modal/layouts/FailedLogin.svelte b/src/modal/layouts/FailedLogin.svelte
index 6e510a2..b56e52b 100644
--- a/src/modal/layouts/FailedLogin.svelte
+++ b/src/modal/layouts/FailedLogin.svelte
@@ -4,7 +4,11 @@
   import ReloadIcon from "../components/icons/ReloadIcon.svelte";
   import FallbackMobile from "../components/FallbackMobile.svelte";
 
-  export let extensionName: string = "Argent X"
+  export let walletName: string = ""
+  export let showFallback: boolean = false
+
+  export let handleCallback: () => void = async () => {}
+  export let handleFallback: () => void = async () => {}
 </script>
 
 <section class="flex flex-col justify-center items-center flex-grow">
@@ -19,12 +23,22 @@
       <p class="text-primary text-p3 font-[400]">Please try connecting again.</p>
     </div>
 
-    <Button isLarge={true}>
+    <Button
+      handleClick={handleCallback}
+      handleKeyup={(e) => {
+        if (e.key === "Enter") {
+          handleCallback()
+        }
+      }}
+      isLarge={true}
+    >
       <div class="flex gap-2">
-        <ReloadIcon /> Retry connecting to {extensionName}
+        <ReloadIcon /> Retry connecting to {walletName}
       </div>
     </Button>
   </div>
 
-  <FallbackMobile />
+  {#if showFallback}
+    <FallbackMobile handleClick={handleFallback} />
+  {/if}
 </section>
\ No newline at end of file

From 6ff294ef12c097b5a561a706117ce0480f37dd98 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 12:52:18 +0100
Subject: [PATCH 15/88] fix: pass props and type `downloadLinks`

---
 .../ExtensionDownloadItem.svelte              |  2 +-
 .../ExtensionDownloadList.svelte              | 30 +++++++++++++++----
 2 files changed, 26 insertions(+), 6 deletions(-)

diff --git a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte
index f2bca50..b72f24d 100644
--- a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte
+++ b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte
@@ -3,7 +3,7 @@
 
   export let browser: string
   export let href: string
-  export let extensionName: string = "Argent X"
+  export let extensionName: string = ""
 </script>
 
 <li>
diff --git a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
index 04fbbbb..66b23ee 100644
--- a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
+++ b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
@@ -1,16 +1,36 @@
-<script>
+<script lang="ts">
+  import { StoreVersion } from "../../../types/modal"
+
   import ChromeIcon from "../../components/icons/brands/ChromeIcon.svelte";
   import FirefoxIcon from "../../components/icons/brands/FirefoxIcon.svelte";
   import EdgeIcon from "../../components/icons/brands/EdgeIcon.svelte";
   import BraveIcon from "../../components/icons/brands/BraveIcon.svelte";
   import ExtensionDownloadItem from "./ExtensionDownloadItem.svelte";
+
+  export let extensionName: string = ""
+
+  export let downloadLinks: Record<StoreVersion, "" | undefined> | undefined = {
+    chrome: "",
+    edge: "",
+    firefox: "",
+  }
 </script>
 
 <section>
+  {#if downloadLinks}
     <ul class="flex flex-col gap-3">
-        <ExtensionDownloadItem href="#TODO" browser="Google Chrome"><ChromeIcon size="28" /></ExtensionDownloadItem>
-        <ExtensionDownloadItem href="#TODO" browser="Mozilla Firefox"><FirefoxIcon size="28" /></ExtensionDownloadItem>
-        <ExtensionDownloadItem href="#TODO" browser="Google Chrome"><EdgeIcon size="28" /></ExtensionDownloadItem>
-        <ExtensionDownloadItem href="#TODO" browser="Google Chrome"><BraveIcon size="28" /></ExtensionDownloadItem>
+      {#if downloadLinks.chrome}
+        <ExtensionDownloadItem href={downloadLinks.chrome} {extensionName} browser="Google Chrome"><ChromeIcon size="28" /></ExtensionDownloadItem>
+      {/if}
+      {#if downloadLinks.firefox}
+        <ExtensionDownloadItem href={downloadLinks.firefox} {extensionName} browser="Mozilla Firefox"><FirefoxIcon size="28" /></ExtensionDownloadItem>
+      {/if}
+      {#if downloadLinks.edge}
+        <ExtensionDownloadItem href={downloadLinks.edge} {extensionName} browser="Edge"><EdgeIcon size="28" /></ExtensionDownloadItem>
+      {/if}
+      {#if downloadLinks.chrome}
+        <ExtensionDownloadItem href={downloadLinks.chrome} {extensionName} browser="Brave"><BraveIcon size="28" /></ExtensionDownloadItem>
+      {/if}
     </ul>
+  {/if}
 </section>
\ No newline at end of file

From 7097abccb3c2ae8d8121bd5dfa6f23b58b1a4e37 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 12:53:13 +0100
Subject: [PATCH 16/88] chore: replace QR with loader, handle click

---
 .../layouts/argent/ArgentMobileQR.svelte      | 57 +++++++++++++++++--
 1 file changed, 51 insertions(+), 6 deletions(-)

diff --git a/src/modal/layouts/argent/ArgentMobileQR.svelte b/src/modal/layouts/argent/ArgentMobileQR.svelte
index 994b7a6..708b92f 100644
--- a/src/modal/layouts/argent/ArgentMobileQR.svelte
+++ b/src/modal/layouts/argent/ArgentMobileQR.svelte
@@ -1,17 +1,62 @@
-<script>
+<script lang="ts">
   import InstallWallet from "../../components/InstallWallet.svelte";
-  import QRCode from "./QRCode.svelte";
+
+  export let handleClick: () => void = () => {}
 </script>
 
+<style>
+  @keyframes dash {
+    0% {
+      stroke-dashoffset: 187;
+    }
+    50% {
+      stroke-dashoffset: 46.75;
+      transform: rotate(135deg);
+    }
+    100% {
+      stroke-dashoffset: 187;
+      transform: rotate(450deg);
+    }
+  }
+
+  @keyframes rotator {
+    0% {
+      transform: rotate(0deg);
+    }
+    100% {
+      transform: rotate(270deg);
+    }
+  }
+
+  .spinner {
+    color: #ff875b;
+    animation: rotator 1.4s linear infinite;
+  }
+
+  .spinner circle {
+    stroke: currentColor;
+    stroke-dasharray: 187;
+    stroke-dashoffset: 0;
+    transform-origin: center;
+    animation: dash 1.4s ease-in-out infinite;
+  }
+</style>
+
 <section class="flex flex-col gap-4">
   <div>
     <h3 class="mb-4 text-h5 text-primary font-semibold">Connect Argent mobile by<br />scanning QR code:</h3>
 
-    <div class="w-full flex justify-center">
-      <!-- TODO replace QR, slot or prop -->
-      <QRCode />
+    <div class="w-full flex justify-center items-center qr-code-slot h-[245px]">
+      <!--
+        @dev Spinner is replaced after loading by QR code;
+        Spinner and styles copied to be exactly the same as in argent-mobile-login,
+        since that one will appear once QR code is ready for it's loading state
+      -->
+      <svg class="spinner" viewBox="0 0 66 66" width="100px" height="100px" xmlns="http://www.w3.org/2000/svg">
+        <circle fill="none" stroke-width="6" stroke-linecap="round" cx="33" cy="33" r="30" />
+      </svg>
     </div>
   </div>
 
-  <InstallWallet walletName="Argent" walletLink="#TODO" />
+  <InstallWallet walletName="Argent" handleClick={handleClick} />
 </section>
\ No newline at end of file

From cc797b77bd2389bbfe81271a7737689530ce071e Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 12:54:01 +0100
Subject: [PATCH 17/88] chore: pass props, adapt usage

---
 .../argent/ArgentDownload/ArgentDownload.svelte  | 16 ++++++++++------
 .../ArgentDownload/ArgentDownloadItem.svelte     | 15 +++++++++++++--
 2 files changed, 23 insertions(+), 8 deletions(-)

diff --git a/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte b/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
index d223f96..d155ca1 100644
--- a/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
+++ b/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
@@ -1,20 +1,24 @@
-<script>
+<script lang="ts">
   import AppleIcon from "../../../components/icons/brands/AppleIcon.svelte";
   import PlayStore from "../../../components/icons/brands/PlayStore.svelte";
   import ChromeIcon from "../../../components/icons/brands/ChromeIcon.svelte";
   import FirefoxIcon from "../../../components/icons/brands/FirefoxIcon.svelte";
   import EdgeIcon from "../../../components/icons/brands/EdgeIcon.svelte";
   import BraveIcon from "../../../components/icons/brands/BraveIcon.svelte";
+
   import MobileGraphic from "./graphics/MobileGraphic.svelte";
-  import ArgentDownloadItem from "./ArgentDownloadItem.svelte";
   import ArgentXGraphic from "./graphics/ArgentXGraphic.svelte";
+
+  import ArgentDownloadItem from "./ArgentDownloadItem.svelte";
   import Link from "../../../components/buttons/Link.svelte";
-  import Line from "../../../components/Line.svelte";
+  import HorizontalLine from "../../../components/HorizontalLine.svelte";
+
+  export let handleExtensionClick: () => void = () => {}
 </script>
 
 <section class="flex flex-col flex-grow justify-between">
   <div class="flex flex-col gap-2">
-    <ArgentDownloadItem title="Argent mobile" subtitle="Download Argent wallet on your mobile." link="#TODO">
+    <ArgentDownloadItem title="Argent mobile" subtitle="Download Argent wallet on your mobile." link="https://www.argent.xyz/app">
       <svelte:fragment slot="icons">
         <AppleIcon />
         <PlayStore />
@@ -25,7 +29,7 @@
       </svelte:fragment>
     </ArgentDownloadItem>
 
-    <ArgentDownloadItem title="Argent X" subtitle="Install Argent extension." link="#TODO">
+    <ArgentDownloadItem title="Argent X" subtitle="Install Argent extension." handleClick={handleExtensionClick}>
       <svelte:fragment slot="icons">
         <ChromeIcon />
         <FirefoxIcon />
@@ -40,7 +44,7 @@
   </div>
 
   <footer class="flex flex-col gap-4">
-    <Line />
+    <HorizontalLine />
     <p class="text-[13px] text-secondary">If you want to learn more about argent visit our site:
       <Link as="a" className="text-brand" href="https://www.argent.xyz/">www.argent.xyz</Link>
     </p>
diff --git a/src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte b/src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte
index a8d0d0c..d6dcf29 100644
--- a/src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte
+++ b/src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte
@@ -3,7 +3,8 @@
 
   export let title: string
   export let subtitle: string
-  export let link: string
+  export let link: string | undefined = undefined
+  export let handleClick: (() => void) | undefined = undefined
 </script>
 
 <div class="flex flex-row gap-3 px-4 py-3 rounded-xl bg-surface-elevated">
@@ -15,7 +16,17 @@
     <div class="flex gap-3">
       <slot name="icons" />
     </div>
-    <Button as="a" href={link} className="bg-button-secondary text-primary hover:bg-button-secondary-hover flex w-[140px] h-[32px] text-b3 rounded-3xl justify-center items-center" >
+    <Button
+      as={handleClick ? "button" : "a"}
+      href={link}
+      handleClick={handleClick}
+      handleKeyup={(e) => {
+        if (handleClick && e.key === "Enter") {
+          handleClick()
+        }
+      }}
+      className="bg-button-secondary text-primary hover:bg-button-secondary-hover flex w-[140px] h-[32px] text-b3 rounded-3xl justify-center items-center"
+    >
       Download
     </Button>
   </div>

From bb2c00a4fef17805729e9300b14c1955e383c3ee Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 12:58:40 +0100
Subject: [PATCH 18/88] chore: connect buttons to handlers

---
 src/modal/components/Header.svelte | 28 ++++++++++++++++++++++++++--
 1 file changed, 26 insertions(+), 2 deletions(-)

diff --git a/src/modal/components/Header.svelte b/src/modal/components/Header.svelte
index 1bd5d14..444e1e6 100644
--- a/src/modal/components/Header.svelte
+++ b/src/modal/components/Header.svelte
@@ -7,11 +7,24 @@
   export let subtitle: string = "Connect to";
   export let showBackButton: boolean = true;
   export let showCloseButton: boolean = true;
+
+  export let handleBack: () => void = () => {}
+  export let handleClose: () => void = () => {}
 </script>
 
 <header class={`flex items-center justify-center flex-col relative`}>
   {#if showBackButton}
-    <IconButton ariaLabel="Go back" className="absolute top-0 left-0"><CaretIcon /></IconButton>
+    <IconButton
+      handleClick={handleBack}
+      handleKeyup={(e) => {
+        if (e.key === "Enter") {
+          handleBack()
+        }
+      }}
+      ariaLabel="Go back"
+      className="absolute top-0 left-0">
+        <CaretIcon />
+    </IconButton>
   {/if}
   <hgroup>
     <h2 class={`text-p3 text-secondary font-semibold`}>{subtitle}</h2>
@@ -22,6 +35,17 @@
     {/if}
   </hgroup>
   {#if showCloseButton}
-    <IconButton ariaLabel="Close" className="absolute top-0 right-0"><CloseIcon /></IconButton>
+    <IconButton
+      handleClick={handleClose}
+      handleKeyup={(e) => {
+        if (e.key === "Enter") {
+          handleClose()
+        }
+      }}
+      ariaLabel="Close"
+      className="absolute top-0 right-0"
+    >
+      <CloseIcon />
+    </IconButton>
   {/if}
 </header>

From 3c431696500625023489018126f8986e482dffd1 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 29 Oct 2024 12:58:59 +0100
Subject: [PATCH 19/88] chore: type wallets, pass props

---
 src/modal/layouts/WalletList.svelte | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/modal/layouts/WalletList.svelte b/src/modal/layouts/WalletList.svelte
index 05a416a..ed49b2d 100644
--- a/src/modal/layouts/WalletList.svelte
+++ b/src/modal/layouts/WalletList.svelte
@@ -1,13 +1,16 @@
 <script lang="ts">
+  import { Callback, ModalWallet, Theme } from "../../types/modal"
   import WalletButton from "../components/buttons/WalletButton.svelte"
 
-  export let walletList: { title: string, subtitle?: string, icon: string }[] // TODO type
+  export let theme: Theme
+  export let callback: Callback = async () => {}
+  export let walletList: ModalWallet[]
 </script>
 
 <section>
   <ul class="flex flex-col gap-3">
     {#each walletList as wallet}
-      <li><WalletButton {wallet} /></li>
+      <li><WalletButton {wallet} {theme} {callback} /></li>
     {/each}
   </ul>
 </section>

From d571de8e6e11985ec721e156731f0c16a923de5c Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:42:55 +0100
Subject: [PATCH 20/88] feat: programmatically show install extension section

---
 .../ArgentDownload/ArgentDownload.svelte      | 28 +++++++++++--------
 1 file changed, 16 insertions(+), 12 deletions(-)

diff --git a/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte b/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
index d155ca1..884405a 100644
--- a/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
+++ b/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
@@ -13,6 +13,8 @@
   import Link from "../../../components/buttons/Link.svelte";
   import HorizontalLine from "../../../components/HorizontalLine.svelte";
 
+  export let showInstallExtension: boolean = false
+
   export let handleExtensionClick: () => void = () => {}
 </script>
 
@@ -29,18 +31,20 @@
       </svelte:fragment>
     </ArgentDownloadItem>
 
-    <ArgentDownloadItem title="Argent X" subtitle="Install Argent extension." handleClick={handleExtensionClick}>
-      <svelte:fragment slot="icons">
-        <ChromeIcon />
-        <FirefoxIcon />
-        <EdgeIcon />
-        <BraveIcon />
-      </svelte:fragment>
-
-      <svelte:fragment slot="graphic">
-        <ArgentXGraphic />
-      </svelte:fragment>
-    </ArgentDownloadItem>
+    {#if showInstallExtension}
+      <ArgentDownloadItem title="Argent X" subtitle="Install Argent extension." handleClick={handleExtensionClick}>
+        <svelte:fragment slot="icons">
+          <ChromeIcon />
+          <FirefoxIcon />
+          <EdgeIcon />
+          <BraveIcon />
+        </svelte:fragment>
+
+        <svelte:fragment slot="graphic">
+          <ArgentXGraphic />
+        </svelte:fragment>
+      </ArgentDownloadItem>
+    {/if}
   </div>
 
   <footer class="flex flex-col gap-4">

From e5eecf4a5509d04f585d7e51d6ffccf7603d5d46 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:43:14 +0100
Subject: [PATCH 21/88] chore: improve method naming

---
 src/modal/layouts/argent/ArgentMobileQR.svelte | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/modal/layouts/argent/ArgentMobileQR.svelte b/src/modal/layouts/argent/ArgentMobileQR.svelte
index 708b92f..7cd33f9 100644
--- a/src/modal/layouts/argent/ArgentMobileQR.svelte
+++ b/src/modal/layouts/argent/ArgentMobileQR.svelte
@@ -1,7 +1,7 @@
 <script lang="ts">
   import InstallWallet from "../../components/InstallWallet.svelte";
 
-  export let handleClick: () => void = () => {}
+  export let handleInstallClick: () => void = () => {}
 </script>
 
 <style>
@@ -58,5 +58,5 @@
     </div>
   </div>
 
-  <InstallWallet walletName="Argent" handleClick={handleClick} />
+  <InstallWallet walletName="Argent" handleClick={handleInstallClick} />
 </section>
\ No newline at end of file

From 61ef1f0f57b34f1f63d7a8cbcda14baf58d33572 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:44:54 +0100
Subject: [PATCH 22/88] fix: adapt type external

---
 .../ExtensionDownloadList/ExtensionDownloadList.svelte        | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
index 66b23ee..6f94e88 100644
--- a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
+++ b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
@@ -1,6 +1,4 @@
 <script lang="ts">
-  import { StoreVersion } from "../../../types/modal"
-
   import ChromeIcon from "../../components/icons/brands/ChromeIcon.svelte";
   import FirefoxIcon from "../../components/icons/brands/FirefoxIcon.svelte";
   import EdgeIcon from "../../components/icons/brands/EdgeIcon.svelte";
@@ -9,7 +7,7 @@
 
   export let extensionName: string = ""
 
-  export let downloadLinks: Record<StoreVersion, "" | undefined> | undefined = {
+  export let downloadLinks: Record<string, string> | undefined = {
     chrome: "",
     edge: "",
     firefox: "",

From ea4008bf71868977aef0bcb576d442b77f737f47 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:45:23 +0100
Subject: [PATCH 23/88] feat: create helpers for connectors

---
 src/helpers/connector.ts | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)
 create mode 100644 src/helpers/connector.ts

diff --git a/src/helpers/connector.ts b/src/helpers/connector.ts
new file mode 100644
index 0000000..54178e0
--- /dev/null
+++ b/src/helpers/connector.ts
@@ -0,0 +1,33 @@
+import {
+  StarknetkitCompoundConnector,
+  StarknetkitConnector,
+} from "../connectors"
+
+export function extractConnector(
+  connector: StarknetkitConnector | StarknetkitCompoundConnector,
+  useFallback: boolean = false,
+) {
+  if (connector.isCompoundConnector) {
+    return useFallback
+      ? (connector as StarknetkitCompoundConnector).fallbackConnector
+      : (connector as StarknetkitCompoundConnector).connector
+  }
+  return connector as StarknetkitConnector
+}
+
+export function findConnectorById(
+  connectors: (StarknetkitConnector | StarknetkitCompoundConnector)[],
+  id: string | null,
+) {
+  const connector = connectors.find((c) => {
+    if (!c) {
+      return false
+    }
+    return extractConnector(c)?.id === id
+  })
+
+  if (!connector) {
+    return null
+  }
+  return extractConnector(connector)
+}

From 53d303e935d84cc65721996a935b75597750a134 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:46:27 +0100
Subject: [PATCH 24/88] feat: adapt modal to new features

---
 src/modal/Modal.svelte | 285 +++++++++++++++++------------------------
 1 file changed, 117 insertions(+), 168 deletions(-)

diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index fe28865..bdf295b 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -1,177 +1,126 @@
 <script lang="ts">
-  // import { onMount } from "svelte"
-  // import type { StarknetWindowObject } from "@starknet-io/types-js"
-  // import ConnectorButton from "./ConnectorButton.svelte"
-  // import type { StarknetkitConnector } from "../connectors/connector"
-  // import { InjectedConnector } from "../connectors/injected"
-  // import { ArgentX } from "../connectors/injected/argentX"
-  // import { isInArgentMobileAppBrowser } from "../connectors/argent/helpers"
-  // import { getConnector } from "../main"
-  import { ModalWallet } from "../types/modal"
+  import { onMount } from "svelte"
+
+  import { Callback, Layout, ModalWallet, Theme } from "../types/modal"
 
   import Header from "./components/Header.svelte"
+  import WalletList from "./layouts/WalletList.svelte"
+  import Connecting from "./layouts/Connecting.svelte"
+  import ArgentMobileQR from "./layouts/argent/ArgentMobileQR.svelte"
   import FailedLogin from "./layouts/FailedLogin.svelte"
+  import SuccessfulLogin from "./layouts/SuccessfulLogin.svelte"
+  import ArgentDownload from "./layouts/argent/ArgentDownload/ArgentDownload.svelte"
+  import ExtensionDownloadList from "./layouts/ExtensionDownloadList/ExtensionDownloadList.svelte"
+  import DynamicIcon from "./components/DynamicIcon.svelte"
+
+  import { isInArgentMobileAppBrowser } from "../connectors/argent/helpers"
+  import { extractConnector } from "../helpers/connector"
+  import { StarknetkitCompoundConnector } from "../connectors"
+  import { ArgentX } from "../connectors/injected/argentX"
+  import { getModalWallet } from "../helpers/mapModalWallets"
+
+  let nodeRef: HTMLElement | undefined
 
   export let dappName: string = window?.document.title ?? ""
-  export let modalWallets: ModalWallet[]
-  console.log(modalWallets)
-  // export let callback: (
-  //   value: StarknetkitConnector | null,
-  // ) => Promise<void> = async () => {}
-  // export let theme: "light" | "dark" | null = null
-  //
-  // let loadingItem: string | false = false
-  //
-  // let isInAppBrowser = isInArgentMobileAppBrowser()
-  //
-  // const setLoadingItem = (item: string | false) => {
-  //   loadingItem = item
-  // }
-
-  // let cb = async (connector: StarknetkitConnector | null) => {
-  //   setLoadingItem(connector?.id ?? false)
-  //   try {
-  //     await callback(connector ?? null)
-  //   } finally {
-  //     setLoadingItem(false)
-  //   }
-  // }
-
-  export const darkModeControlClass = "light"
-  // let darkModeControlClass = theme === "dark" ? "dark" : ""
-  // onMount(async () => {
-  //   // if (
-  //   //   theme === "dark" ||
-  //   //   (theme === null &&
-  //   //     window.matchMedia("(prefers-color-scheme: dark)").matches)
-  //   // ) {
-  //   //   darkModeControlClass = "dark"
-  //   // } else {
-  //   //   darkModeControlClass = ""
-  //   // }
-  //
-  //   // if (isInAppBrowser) { TODO ??
-  //   //   try {
-  //   //     callback(new ArgentX())
-  //   //   } catch {}
-  //   //   return
-  //   // }
-  //
-  //   if (modalWallets.length === 1) {
-  //     try {
-  //       await callback(getConnector(modalWallets[0].connector))
-  //     } catch (e) {
-  //       console.error(e)
-  //     }
-  //   }
-  // })
-
-  export let fixedHeight = true
-  export let showBackButton = true
+
+  export let layout: Layout = Layout.walletList
+  function setLayout(newLayout: Layout): void {
+    layout = newLayout
+  }
+
+  export let modalWallets: ModalWallet[] = []
+  export let selectedWallet: ModalWallet | null = null
+  $: selectedConnector = selectedWallet?.connector && extractConnector(selectedWallet.connector)
+
+  export let showBackButton: boolean = true
+  $: showFallback = Boolean(
+    selectedWallet?.connector.isCompoundConnector
+    && (selectedWallet?.connector as StarknetkitCompoundConnector)?.fallbackConnector
+  );
+
+  export let callback: Callback = async () => {}
+
+  let isInAppBrowser = isInArgentMobileAppBrowser()
+
+  export let theme: Theme = "dark"
+  export let darkModeControlClass =  theme === "dark" ? "dark" : ""
+
+  onMount(async () => {
+    if (theme === "dark" || (theme == undefined && window.matchMedia("(prefers-color-scheme: dark)").matches)) {
+      darkModeControlClass = "dark"
+    } else {
+      darkModeControlClass = "light"
+    }
+
+    if (isInAppBrowser) {
+      try {
+        void callback(getModalWallet(new ArgentX()))
+      } catch (e) {
+        console.error(e)
+      }
+      return
+    }
+
+    if (modalWallets.length === 1) {
+      try {
+        await callback(modalWallets[0])
+      } catch (e) {
+        console.error(e)
+      }
+    }
+  })
 </script>
 
-<div part="starknetkit-modal"
-     class={`
-    ${darkModeControlClass} modal-font fixed inset-0 z-[9998] flex items-center justify-center backdrop-blur-sm bg-black/25
-  `}>
-  <main role="dialog"
-        class={`
-      rounded-3xl bg-surface-default shadow-modal dark:shadow-none flex flex-col
-      z-[9999] w-full max-w-[380px] mx-6 p-6 text-center gap-8
-      ${fixedHeight ? "min-h-[570px]" : ""}
-    `}
+{#if !isInAppBrowser && (layout === Layout.walletList ? modalWallets.length > 1 : true)}
+  <div
+    bind:this={nodeRef}
+    part="starknetkit-modal"
+    class={`${darkModeControlClass} modal-font fixed inset-0 z-[9998] flex items-center justify-center backdrop-blur-sm bg-black/25`}
   >
-    <Header title={dappName} showBackButton={showBackButton} />
-
-    <!--			<WalletList {walletList} />-->
-    <!--			<ArgentMobileQR />-->
-    <!--			<ArgentDownload />-->
-    <!--			<ExtensionDownloadList />-->
-    <!--			<SuccessfulLogin />-->
-          <FailedLogin />
-    <!--			<Connecting>-->
-    <!--				<svg xmlns="http://www.w3.org/2000/svg" width="40" height="41" viewBox="0 0 40 41" fill="none">-->
-    <!--					<path d="M23.813 6.46613H16.1191C15.862 6.46613 15.656 6.68535 15.6504 6.95784C15.495 14.6174 11.7148 21.8872 5.2082 27.0365C5.00163 27.1999 4.95457 27.507 5.10559 27.7282L9.60718 34.3265C9.76032 34.5511 10.0587 34.6018 10.2687 34.4368C14.3371 31.2382 17.6095 27.3795 19.9661 23.1025C22.3227 27.3795 25.5952 31.2382 29.6636 34.4368C29.8735 34.6018 30.1719 34.5511 30.3252 34.3265L34.8268 27.7282C34.9776 27.507 34.9306 27.1999 34.7242 27.0365C28.2174 21.8872 24.4372 14.6174 24.2819 6.95784C24.2763 6.68535 24.0702 6.46613 23.813 6.46613Z" fill="black"/>-->
-    <!--					<path d="M34.5894 11.2863L33.7628 8.71579C33.5947 8.19392 33.1852 7.78742 32.664 7.6267L30.0981 6.83257C29.744 6.72289 29.7402 6.219 30.0934 6.10461L32.6461 5.27265C33.1646 5.10343 33.5694 4.69029 33.7291 4.16653L34.517 1.5837C34.626 1.22634 35.1266 1.22255 35.2412 1.57804L36.0677 4.14856C36.2358 4.67043 36.6453 5.07695 37.1665 5.23862L39.7324 6.0318C40.0865 6.14148 40.0903 6.64537 39.7372 6.76071L37.1844 7.59267C36.6659 7.76094 36.2611 8.17408 36.1015 8.69879L35.3135 11.2807C35.2045 11.638 34.7039 11.6418 34.5894 11.2863Z" fill="black"/>-->
-    <!--				</svg>-->
-    <!--			</Connecting>-->
-
-  </main>
-</div>
-
-<!--{#if !isInAppBrowser && modalWallets.length > 1}-->
-<!--  &lt;!&ndash; svelte-ignore a11y-no-static-element-interactions &ndash;&gt;-->
-<!--  <div-->
-<!--    part="starknetkit-modal"-->
-<!--    class={`modal-font backdrop-blur-sm fixed inset-0 flex items-center-->
-<!--            justify-center bg-black/25 z-[9999] ${darkModeControlClass}`}-->
-<!--    on:click={() => cb(null)}-->
-<!--    on:keyup={(e) => {-->
-<!--      if (e.key === "Escape") {-->
-<!--        cb(null)-->
-<!--      }-->
-<!--    }}-->
-<!--  >-->
-<!--    &lt;!&ndash; svelte-ignore a11y-no-noninteractive-element-interactions &ndash;&gt;-->
-<!--    <main-->
-<!--      role="dialog"-->
-<!--      class={`rounded-3xl shadow-modal dark:shadow-none-->
-<!--              w-full max-w-[380px] z-50-->
-<!--              mx-6 p-6 pb-8 text-center-->
-<!--              bg-slate-50 dark:bg-neutral-900-->
-<!--            text-neutral-900 dark:text-white`}-->
-<!--      on:click={(e) => e.stopPropagation()}-->
-<!--      on:keyup={(e) => {-->
-<!--        e.stopPropagation()-->
-<!--      }}-->
-<!--    >-->
-<!--      <header class={`flex items-center justify-center flex-col mb-2 relative`}>-->
-<!--        <h2 class="text-sm text-gray-400 font-semibold">Connect to</h2>-->
-<!--        <h1-->
-<!--          class={`text-xl font-semibold mb-6-->
-<!--                  max-w-[240px] overflow-hidden-->
-<!--                  whitespace-nowrap text-ellipsis`}-->
-<!--        >-->
-<!--          {dappName}-->
-<!--        </h1>-->
-<!--        <span-->
-<!--          class={`absolute top-0 right-0 p-2 cursor-pointer-->
-<!--                  rounded-full bg-neutral-100 dark:bg-neutral-800-->
-<!--                  text-neutral-400 dark:text-white-->
-<!--                  hover:bg-neutral-100 dark:hover:bg-neutral-700-->
-<!--                  focus:outline-none focus:ring-2-->
-<!--                focus:ring-neutral-200 dark:focus:ring-neutral-700-->
-<!--                  transition-colors`}-->
-<!--          role="button"-->
-<!--          tabindex="0"-->
-<!--          aria-label="Close"-->
-<!--          on:click={() => cb(null)}-->
-<!--          on:keyup={(e) => {-->
-<!--            if (e.key === "Enter") {-->
-<!--              cb(null)-->
-<!--            }-->
-<!--          }}-->
-<!--        >-->
-<!--          <svg-->
-<!--            width="12"-->
-<!--            height="12"-->
-<!--            viewBox="0 0 12 12"-->
-<!--            fill="none"-->
-<!--            xmlns="http://www.w3.org/2000/svg"-->
-<!--          >-->
-<!--            <path-->
-<!--              d="M9.77275 3.02275C9.99242 2.80308 9.99242 2.44692 9.77275 2.22725C9.55308 2.00758 9.19692 2.00758 8.97725 2.22725L6 5.20451L3.02275 2.22725C2.80308 2.00758 2.44692 2.00758 2.22725 2.22725C2.00758 2.44692 2.00758 2.80308 2.22725 3.02275L5.20451 6L2.22725 8.97725C2.00758 9.19692 2.00758 9.55308 2.22725 9.77275C2.44692 9.99242 2.80308 9.99242 3.02275 9.77275L6 6.79549L8.97725 9.77275C9.19692 9.99242 9.55308 9.99242 9.77275 9.77275C9.99242 9.55308 9.99242 9.19692 9.77275 8.97725L6.79549 6L9.77275 3.02275Z"-->
-<!--              fill="currentColor"-->
-<!--            />-->
-<!--          </svg>-->
-<!--        </span>-->
-<!--      </header>-->
-
-<!--      <ul class="flex flex-col gap-3">-->
-<!--        {#each modalWallets as wallet}-->
-<!--          <ConnectorButton {wallet} {loadingItem} {cb} {theme} />-->
-<!--        {/each}-->
-<!--      </ul>-->
-<!--    </main>-->
-<!--  </div>-->
-<!--{/if}-->
+    <main
+      role="dialog"
+      class={`
+        rounded-3xl bg-surface-default shadow-modal dark:shadow-none flex flex-col
+        z-[9999] w-full max-w-[380px] mx-6 p-6 text-center gap-8
+        ${layout !== Layout.walletList ? "min-h-[570px]" : ""}
+      `}
+    >
+      <Header
+        handleBack={() => setLayout(Layout.walletList)}
+        handleClose={() => nodeRef?.parentNode?.removeChild(nodeRef) }
+        title={dappName}
+        showBackButton={showBackButton && ![Layout.walletList, Layout.success].includes(layout)}
+      />
+
+      {#if layout === Layout.walletList}
+        <WalletList walletList={modalWallets} {theme} {callback} />
+      {:else if layout === Layout.connecting}
+        <Connecting
+          walletName={selectedConnector?.name}
+          showFallback={showFallback}
+          handleFallback={() => callback(selectedWallet, true)}
+        >
+          {#if selectedConnector?.icon}
+            <DynamicIcon icon={selectedConnector.icon} theme={theme} />
+          {/if}
+        </Connecting>
+      {:else if layout === Layout.success}
+        <SuccessfulLogin />
+      {:else if layout === Layout.failure}
+        <FailedLogin
+          walletName={selectedConnector?.name}
+          handleCallback={() => callback(selectedWallet)}
+          showFallback={showFallback}
+          handleFallback={() => callback(selectedWallet, true)}
+        />
+      {:else if layout === Layout.qrCode}
+        <ArgentMobileQR handleInstallClick={() => setLayout(Layout.argentDownload)} />
+      {:else if layout === Layout.extensionDownloadList}
+        <ExtensionDownloadList downloadLinks={selectedWallet?.downloads} extensionName={selectedWallet?.name} />
+      {:else if layout === Layout.argentDownload}
+        <ArgentDownload showInstallExtension={Boolean(selectedWallet?.downloads)} handleExtensionClick={() => setLayout(Layout.extensionDownloadList)} />
+      {/if}
+
+    </main>
+  </div>
+{/if}
\ No newline at end of file

From 015dff20777506d7d61c171b4078ba1cc9368ced Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:46:38 +0100
Subject: [PATCH 25/88] feat: create modal helpers

---
 src/helpers/modal.ts | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 src/helpers/modal.ts

diff --git a/src/helpers/modal.ts b/src/helpers/modal.ts
new file mode 100644
index 0000000..742bf7b
--- /dev/null
+++ b/src/helpers/modal.ts
@@ -0,0 +1,28 @@
+import css from "../theme.css"
+
+export const getModalTarget = (): ShadowRoot => {
+  const modalId = "starknetkit-modal-container"
+  const existingElement = document.getElementById(modalId)
+
+  if (existingElement) {
+    if (existingElement.shadowRoot) {
+      // element already exists, use the existing as target
+      return existingElement.shadowRoot
+    }
+    // element exists but shadowRoot cannot be accessed
+    // delete the element and create new
+    existingElement.remove()
+  }
+
+  const element = document.createElement("div")
+  // set id for future retrieval
+  element.id = modalId
+  document.body.appendChild(element)
+  const target = element.attachShadow({ mode: "open" })
+
+  const styleElement = document.createElement("style")
+  styleElement.textContent = css
+  target.appendChild(styleElement)
+
+  return target
+}
\ No newline at end of file

From c743c6d3f5bdc8a6bed8871b595dc9e3ba2ea0a5 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:51:04 +0100
Subject: [PATCH 26/88] feat: handle new UI and only QR code approach

---
 .../argent/argentMobile/modal/argentModal.ts  | 117 ++++++++++++++++--
 1 file changed, 104 insertions(+), 13 deletions(-)

diff --git a/src/connectors/argent/argentMobile/modal/argentModal.ts b/src/connectors/argent/argentMobile/modal/argentModal.ts
index 3516782..add09e0 100644
--- a/src/connectors/argent/argentMobile/modal/argentModal.ts
+++ b/src/connectors/argent/argentMobile/modal/argentModal.ts
@@ -1,4 +1,8 @@
 import { getDevice } from "./getDevice"
+import Modal from "../../../../modal/Modal.svelte"
+import { Layout, ModalWallet } from "../../../../types/modal"
+import { getModalTarget } from "../../../../helpers/modal"
+import { StarknetkitConnector } from "../../../connector"
 
 const device = getDevice()
 
@@ -40,6 +44,17 @@ const iframeStyle = {
   transform: "translate(-50%,-50%)",
 }
 
+const iframeStyleOnlyQR = {
+  width: "245px",
+  height: "245px",
+  borderRadius: "40px",
+  zIndex: "99999",
+  backgroundColor: "white",
+  border: "none",
+  outline: "none",
+}
+
+// TODO - SK-47 - remove this
 const overlayHtml = `
   <div id="argent-mobile-modal-container" style="position: relative">
     <iframe class="argent-iframe" allow="clipboard-write"></iframe>
@@ -52,12 +67,20 @@ const overlayHtml = `
   </div>
 `
 
+const overlayHtmlOnlyQR = `
+  <div id="argent-mobile-modal-container" style="position: relative; display: flex; justify-content: center; align-items: center">
+    <iframe class="argent-iframe" allow="clipboard-write"></iframe>
+  </div>
+`
+
 interface Urls {
   readonly desktop: string
   readonly ios: string
   readonly android: string
 }
 
+type ModalWalletExtended = ModalWallet & { dappName: string }
+
 class ArgentModal {
   public bridgeUrl = "https://login.argent.xyz"
   public mobileUrl = "argent://"
@@ -67,21 +90,64 @@ class ArgentModal {
   private overlay?: HTMLDivElement
   private popupWindow?: Window
   private closingTimeout?: NodeJS.Timeout
+  private standaloneConnectorModal?: Modal
 
-  public showWalletConnectModal(wcUri: string) {
+  public showWalletConnectModal(
+    wcUri: string,
+    modalWallet: ModalWalletExtended,
+  ) {
     const wcParam = encodeURIComponent(wcUri)
     const href = encodeURIComponent(window.location.href)
 
-    this.showModal({
-      desktop: `${this.bridgeUrl}?wc=${wcParam}&href=${href}&device=desktop`,
+    this.showModal(
+      {
+        desktop: `${this.bridgeUrl}?wc=${wcParam}&href=${href}&device=desktop&onlyQR=true`,
+        ios: `${this.mobileUrl}app/wc?uri=${wcParam}&href=${href}&device=mobile`,
+        android: `${this.mobileUrl}app/wc?uri=${wcParam}&href=${href}&device=mobile`,
+      },
+      modalWallet,
+    )
+  }
+
+  public getWalletConnectQR(wcUri: string) {
+    const wcParam = encodeURIComponent(wcUri)
+    const href = encodeURIComponent(window.location.href)
+
+    this.getQR({
+      desktop: `${this.bridgeUrl}?wc=${wcParam}&href=${href}&device=desktop&onlyQR=true`,
       ios: `${this.mobileUrl}app/wc?uri=${wcParam}&href=${href}&device=mobile`,
       android: `${this.mobileUrl}app/wc?uri=${wcParam}&href=${href}&device=mobile`,
     })
   }
 
+  private getQR(urls: Urls) {
+    const overlay = document.createElement("div")
+    const shadow = document.querySelector("#starknetkit-modal-container")
+
+    if (shadow?.shadowRoot) {
+      // TODO handle else
+      const slot = shadow.shadowRoot.querySelector(".qr-code-slot")
+
+      if (slot) {
+        // TODO handle else
+        slot.innerHTML = overlayHtmlOnlyQR
+        document.body.appendChild(overlay)
+        this.overlay = overlay
+
+        const iframe = slot.querySelector("iframe") as HTMLIFrameElement
+        iframe.setAttribute("src", urls.desktop)
+
+        for (const [key, value] of Object.entries(iframeStyleOnlyQR)) {
+          iframe.style[key as any] = value
+        }
+      }
+    }
+  }
+
+  // TODO handle this
   public showApprovalModal(_: RequestArguments): void {
     if (device === "desktop") {
-      this.showModal({
+      this.showModalOld({
         desktop: `${this.bridgeUrl}?action=sign`,
         ios: "",
         android: "",
@@ -95,26 +161,50 @@ class ArgentModal {
     Additionally when there is a signing request triggered by the dapp it will hit the deep link with an incomplete URI, 
     this should be ignored and not considered valid as it's only used for automatically redirecting the users to approve or reject a signing request.
     */
-    this.showModal({
+    this.showModalOld({
       desktop: `${this.bridgeUrl}?action=sign&device=desktop&href=${href}`,
       ios: `${this.mobileUrl}app/wc/request?href=${href}&device=mobile`,
       android: `${this.mobileUrl}app/wc/request?href=${href}&device=mobile`,
     })
   }
 
-  public closeModal(success?: "animateSuccess") {
+  // TODO - SK-47 - remove this
+  public closeModal(success?: boolean) {
+    const modal = this.standaloneConnectorModal
     if (success) {
-      this.overlay
-        ?.querySelector("iframe")
-        ?.contentWindow?.postMessage("argent-login.success", "*")
-      this.popupWindow?.postMessage("argent-login.success", "*")
-      this.closingTimeout = setTimeout(this.close, 3400)
+      modal?.$set({ layout: Layout.success })
+      setTimeout(() => modal?.$destroy(), 3000)
     } else {
-      this.close()
+      modal?.$set({ layout: Layout.failure })
     }
   }
 
-  private showModal(urls: Urls) {
+  private showModal(urls: Urls, modalWallet: ModalWalletExtended) {
+    this.standaloneConnectorModal = new Modal({
+      target: getModalTarget(),
+      props: {
+        layout: Layout.qrCode,
+        dappName: modalWallet.dappName,
+        showBackButton: false,
+        selectedWallet: modalWallet,
+        callback: async (wallet) => {
+          try {
+            const connector = wallet?.connector as StarknetkitConnector
+
+            this.standaloneConnectorModal?.$destroy()
+            await connector.connect()
+          } catch (err) {
+            this.standaloneConnectorModal?.$set({ layout: Layout.failure })
+          }
+        },
+      },
+    })
+
+    this.getQR(urls)
+  }
+
+  // TODO - SK-47 - remove this
+  private showModalOld(urls: Urls) {
     clearTimeout(this.closingTimeout)
     if (this.overlay || this.popupWindow) {
       this.close()
@@ -161,6 +251,7 @@ class ArgentModal {
     closeButton.addEventListener("click", () => this.closeModal())
   }
 
+  // TODO - SK-47 - remove this
   private close = () => {
     this.overlay?.remove()
     this.popupWindow?.close()

From b3ecb6246d78bedfb8e89a293dcf22c86e956c80 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:51:47 +0100
Subject: [PATCH 27/88] chore: add todos

---
 src/connectors/argent/argentMobile/modal/argentModal.ts | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/connectors/argent/argentMobile/modal/argentModal.ts b/src/connectors/argent/argentMobile/modal/argentModal.ts
index add09e0..8a6808d 100644
--- a/src/connectors/argent/argentMobile/modal/argentModal.ts
+++ b/src/connectors/argent/argentMobile/modal/argentModal.ts
@@ -11,6 +11,7 @@ export interface RequestArguments {
   params?: unknown[] | object
 }
 
+// TODO - SK-47 - remove this
 const overlayStyle = {
   position: "fixed",
   top: "0",
@@ -29,6 +30,7 @@ const overlayStyle = {
   fontFamily: "'Barlow', sans-serif",
 }
 
+// TODO - SK-47 - remove this
 const iframeStyle = {
   width: "840px",
   height: "540px",

From 35dfa0c4e81d1ef82cd0b4a4952fbef4100a6670 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:52:38 +0100
Subject: [PATCH 28/88] chore: update `closeModal` usage according to API
 change

---
 src/connectors/argent/argentMobile/modal/starknet/adapter.ts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/connectors/argent/argentMobile/modal/starknet/adapter.ts b/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
index ec2df94..64f93c5 100644
--- a/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
+++ b/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
@@ -182,7 +182,7 @@ export class StarknetAdapter
       const chainId = this.formatChainId(this.chainId)
       argentModal.showApprovalModal(request)
       const response = await this.client.request({ topic, chainId, request })
-      argentModal.closeModal("animateSuccess")
+      argentModal.closeModal(true)
       return response
     } catch (error) {
       argentModal.closeModal()

From 6903da05fad8c8b4b7dea0b5f5d4693f75902bc4 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:54:04 +0100
Subject: [PATCH 29/88] chore: set `Argent` as default

---
 src/helpers/defaultConnectors.ts | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/helpers/defaultConnectors.ts b/src/helpers/defaultConnectors.ts
index 6e4e64d..e71ad81 100644
--- a/src/helpers/defaultConnectors.ts
+++ b/src/helpers/defaultConnectors.ts
@@ -2,10 +2,14 @@ import {
   StarknetkitCompoundConnector,
   StarknetkitConnector,
 } from "../connectors"
-import { type ArgentMobileConnectorOptions } from "../connectors/argent/argentMobile"
+import {
+  ArgentMobileConnector,
+  type ArgentMobileConnectorOptions,
+} from "../connectors/argent/argentMobile"
 import { WebWalletConnector } from "../connectors/webwallet"
 import { Braavos } from "../connectors/injected/braavos"
-import { ArgentCompound } from "../connectors/argent"
+import { Argent } from "../connectors/argent"
+import { ArgentX } from "../connectors/injected/argentX"
 
 export const defaultConnectors = ({
   argentMobileOptions,
@@ -24,7 +28,7 @@ export const defaultConnectors = ({
     | StarknetkitCompoundConnector
   )[] = []
 
-  defaultConnectors.push(new ArgentCompound(argentMobileOptions))
+  defaultConnectors.push(new Argent(argentMobileOptions))
 
   if (!isSafari) {
     defaultConnectors.push(new Braavos())

From 6a166b35ed3268d78ada010a8cf638ed3b825aaa Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:55:08 +0100
Subject: [PATCH 30/88] chore: update logic to support standalone usage with
 new UI

---
 src/connectors/argent/argentMobile/index.ts | 27 ++++++++++++++++-----
 1 file changed, 21 insertions(+), 6 deletions(-)

diff --git a/src/connectors/argent/argentMobile/index.ts b/src/connectors/argent/argentMobile/index.ts
index 0382e02..1aa5547 100644
--- a/src/connectors/argent/argentMobile/index.ts
+++ b/src/connectors/argent/argentMobile/index.ts
@@ -27,11 +27,12 @@ import {
   type ConnectorData,
   type ConnectorIcons,
 } from "../../connector"
-import { InjectedConnector, InjectedConnectorOptions } from "../../injected"
+import { InjectedConnectorOptions } from "../../injected"
 import { DEFAULT_ARGENT_MOBILE_ICON, DEFAULT_PROJECT_ID } from "./constants"
 import { isInArgentMobileAppBrowser } from "../helpers"
 import type { StarknetAdapter } from "./modal/starknet/adapter"
 import { ArgentX } from "../../injected/argentX"
+import { getModalWallet } from "../../../helpers/mapModalWallets"
 
 export interface ArgentMobileConnectorOptions {
   dappName: string
@@ -41,7 +42,7 @@ export interface ArgentMobileConnectorOptions {
   url: string
   icons?: string[]
   rpcUrl?: string
-  isCompoundConnector?: boolean
+  onlyQR?: boolean
 }
 
 export class ArgentMobileBaseConnector extends Connector {
@@ -78,7 +79,7 @@ export class ArgentMobileBaseConnector extends Connector {
   }
 
   get name(): string {
-    return this._options.isCompoundConnector ? "Argent" : "Argent (mobile)" // TODO ditch isCompoundConnector
+    return "Argent (mobile)"
   }
 
   get icon(): ConnectorIcons {
@@ -95,8 +96,14 @@ export class ArgentMobileBaseConnector extends Connector {
     return this._wallet
   }
 
-  async connect(): Promise<ConnectorData> {
-    await this.ensureWallet()
+  async connect(
+    props:
+      | {
+          onlyQRCode?: boolean
+        }
+      | undefined,
+  ): Promise<ConnectorData> {
+    await this.ensureWallet({ onlyQRCode: props?.onlyQRCode })
 
     if (!this._wallet) {
       throw new ConnectorNotFoundError()
@@ -188,7 +195,13 @@ export class ArgentMobileBaseConnector extends Connector {
     this._wallet = null
   }
 
-  private async ensureWallet(): Promise<void> {
+  private async ensureWallet(
+    props:
+      | {
+          onlyQRCode?: boolean
+        }
+      | undefined,
+  ): Promise<void> {
     const { getStarknetWindowObject } = await import("./modal")
     const { chainId, projectId, dappName, description, url, icons, rpcUrl } =
       this._options
@@ -201,6 +214,7 @@ export class ArgentMobileBaseConnector extends Connector {
         : publicRPCNode.testnet)
 
     const options = {
+      onlyQRCode: props?.onlyQRCode,
       chainId: chainId ?? constants.NetworkName.SN_MAIN,
       name: dappName,
       projectId: projectId ?? DEFAULT_PROJECT_ID,
@@ -208,6 +222,7 @@ export class ArgentMobileBaseConnector extends Connector {
       url,
       icons,
       rpcUrl: providerRpcUrl,
+      modalWallet: getModalWallet(this),
     }
 
     if (projectId === DEFAULT_PROJECT_ID) {

From c2fd50a350ad6b0b39c1cbc6192221287093a9ce Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:55:47 +0100
Subject: [PATCH 31/88] chore: add new types

---
 src/types/modal.ts | 21 +++++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)

diff --git a/src/types/modal.ts b/src/types/modal.ts
index 24eaf72..b178acb 100644
--- a/src/types/modal.ts
+++ b/src/types/modal.ts
@@ -6,10 +6,22 @@ import {
   ConnectorIcons,
   StarknetkitCompoundConnector,
   StarknetkitConnector,
-} from "../connectors/connector"
+} from "../connectors"
 
 export type StoreVersion = "chrome" | "firefox" | "edge"
 
+export type Theme = "dark" | "light" | null
+
+export enum Layout {
+  walletList = "walletList",
+  connecting = "connecting",
+  success = "success",
+  failure = "failure",
+  qrCode = "qrCode",
+  argentDownload = "argentDownload",
+  extensionDownloadList = "extensionDownloadList",
+}
+
 export interface ConnectOptions extends GetWalletOptions {
   dappName?: string
   modalMode?: "alwaysAsk" | "canAsk" | "neverAsk"
@@ -30,12 +42,17 @@ export type ModalWallet = {
   id: string
   icon: ConnectorIcons
   download?: string
+  downloads?: Record<string, string>
   subtitle?: string
   title?: string
   connector: StarknetkitConnector | StarknetkitCompoundConnector
-  isCompoundConnector?: boolean
 }
 
+export type Callback = (
+  value: ModalWallet | null,
+  useFallback?: boolean,
+) => Promise<void>
+
 export type ModalResult = {
   connector: StarknetkitConnector | null
   connectorData: ConnectorData | null

From 50945e565e1cb10cd7d3fe15621f96c1df99b01b Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:56:18 +0100
Subject: [PATCH 32/88] chore: add new exports

---
 package.json   | 13 +++++++++----
 vite.config.ts |  3 ++-
 2 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/package.json b/package.json
index c5f789c..634cfd3 100644
--- a/package.json
+++ b/package.json
@@ -42,10 +42,15 @@
       "import": "./dist/argentMobile.js",
       "require": "./dist/argentMobile.cjs"
     },
-    "./argentCompound": {
-      "types": "./dist/argentCompound.d.ts",
-      "import": "./dist/argentCompound.js",
-      "require": "./dist/argentCompound.cjs"
+    "./argent": {
+      "types": "./dist/argent.d.ts",
+      "import": "./dist/argent.js",
+      "require": "./dist/argent.cjs"
+    },
+    "./argentX": {
+      "types": "./dist/argentX.d.ts",
+      "import": "./dist/argentX.js",
+      "require": "./dist/argentX.cjs"
     },
     "./braavos": {
       "types": "./dist/braavos.d.ts",
diff --git a/vite.config.ts b/vite.config.ts
index 51331b8..c186165 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -27,7 +27,8 @@ export default defineConfig({
           __dirname,
           "src/connectors/injected/index.ts",
         ),
-        argentCompound: resolve(__dirname, "src/connectors/argent/index.ts"),
+        argent: resolve(__dirname, "src/connectors/argent/index.ts"),
+        argentX: resolve(__dirname, "src/connectors/injected/argentX.ts"),
         braavos: resolve(__dirname, "src/connectors/injected/braavos.ts"),
       },
       formats: ["es", "cjs"],

From e187d3e439174b1a24060f3e4f6bc6649b9d8f9a Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:58:15 +0100
Subject: [PATCH 33/88] chore: handle `StarknetkitCompoundConnector`

---
 src/helpers/mapModalWallets.ts | 77 ++++++++++++++++++----------------
 1 file changed, 41 insertions(+), 36 deletions(-)

diff --git a/src/helpers/mapModalWallets.ts b/src/helpers/mapModalWallets.ts
index 20b1d32..7e10186 100644
--- a/src/helpers/mapModalWallets.ts
+++ b/src/helpers/mapModalWallets.ts
@@ -8,8 +8,7 @@ import {
 import { ARGENT_X_ICON } from "../connectors/injected/constants"
 import type { ModalWallet, StoreVersion } from "../types/modal"
 import { isInArgentMobileAppBrowser } from "../connectors/argent/helpers"
-import { DEFAULT_ARGENT_MOBILE_ICON } from "../connectors/argent/argentMobile/constants"
-import { findConnectorById, getConnector } from "../main"
+import { extractConnector, findConnectorById } from "./connector"
 
 interface SetConnectorsExpandedParams {
   availableConnectors: (StarknetkitConnector | StarknetkitCompoundConnector)[]
@@ -19,6 +18,32 @@ interface SetConnectorsExpandedParams {
   customOrder: boolean
 }
 
+export function getModalWallet(
+  connectorOrCompoundConnector:
+    | StarknetkitConnector
+    | StarknetkitCompoundConnector,
+  discoveryWallets?: WalletProvider[],
+): ModalWallet {
+  const connector = extractConnector(
+    connectorOrCompoundConnector,
+  ) as StarknetkitConnector
+  return {
+    name: connector.name,
+    id: connector.id,
+    icon: connector.icon,
+    connector: connectorOrCompoundConnector,
+    title:
+      "title" in connector && isString(connector.title)
+        ? connector.title
+        : undefined,
+    subtitle:
+      "subtitle" in connector && isString(connector.subtitle)
+        ? connector.subtitle
+        : undefined,
+    downloads: discoveryWallets?.find((d) => d.id === connector.id)?.downloads,
+  }
+}
+
 export const mapModalWallets = ({
   availableConnectors,
   installedWallets,
@@ -32,43 +57,33 @@ export const mapModalWallets = ({
     return []
   }
 
-  const allInstalledWallets = installedWallets.map(
-    (
-      w, // TODO this logic
-    ) => findConnectorById(availableConnectors, w.id),
+  const allInstalledWallets = installedWallets.map((w) =>
+    findConnectorById(availableConnectors, w.id),
   )
 
-  // console.log("customOrder", customOrder)
-
   const orderedByInstall = customOrder
     ? availableConnectors
     : [
         ...availableConnectors.filter((c) =>
-          allInstalledWallets.includes(getConnector(c)),
+          allInstalledWallets.includes(extractConnector(c)),
         ),
         ...availableConnectors.filter(
-          (c) => !allInstalledWallets.includes(getConnector(c)),
+          (c) => !allInstalledWallets.includes(extractConnector(c)),
         ),
       ]
 
-  // console.log(
-  //   "availableConnectors, orderedByInstall",
-  //   availableConnectors,
-  //   orderedByInstall,
-  // )
-
   const connectors = orderedByInstall
     .map<ModalWallet | null>((_c) => {
-      const c = getConnector(_c)
+      const c = extractConnector(_c)
 
-      const installed = installedWallets.find((w) => w.id === c.id)
+      const installed = installedWallets.find((w) => w.id === c?.id)
       if (installed) {
         let icon
         let name
 
         if (_c.isCompoundConnector) {
-          icon = DEFAULT_ARGENT_MOBILE_ICON // TODO
-          name = "Argent" // TODO
+          icon = _c.icon
+          name = _c.name
         } else {
           icon =
             installed.id === "argentX"
@@ -84,8 +99,8 @@ export const mapModalWallets = ({
           name,
           id: installed.id,
           icon,
-          connector: c,
-          isCompoundConnector: Boolean(_c?.isCompoundConnector),
+          connector: _c,
+          downloads: discoveryWallets.find((d) => d.id === c?.id)?.downloads,
         }
       }
 
@@ -93,7 +108,7 @@ export const mapModalWallets = ({
         .filter((w) =>
           Boolean(w.downloads[storeVersion as keyof typeof w.downloads]),
         )
-        .find((d) => d.id === c.id)
+        .find((d) => d.id === c?.id)
 
       if (discovery) {
         const { downloads } = discovery
@@ -104,8 +119,9 @@ export const mapModalWallets = ({
           name: discovery.name,
           id: discovery.id,
           icon: { light: discoveryIcon, dark: discoveryIcon },
-          connector: c,
+          connector: _c,
           download: downloads[storeVersion as keyof typeof downloads],
+          downloads: downloads,
         }
       }
 
@@ -113,20 +129,9 @@ export const mapModalWallets = ({
         return null
       }
 
-      return {
-        name: c.name, // TODO
-        id: c.id,
-        icon: c.icon,
-        connector: c,
-        title: "title" in c && isString(c.title) ? c.title : undefined,
-        subtitle:
-          "subtitle" in c && isString(c.subtitle) ? c.subtitle : undefined,
-        isCompoundConnector: Boolean(_c?.isCompoundConnector),
-      }
+      return getModalWallet(_c, discoveryWallets)
     })
     .filter((c): c is ModalWallet => c !== null)
 
-  // console.log("connectors", connectors)
-
   return connectors
 }

From 9166775e0b23efc301737e8e7085587210adc50d Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 16:58:50 +0100
Subject: [PATCH 34/88] chore: handle only qr code approach

---
 .../argent/argentMobile/modal/login.ts        | 24 +++++++++++++------
 1 file changed, 17 insertions(+), 7 deletions(-)

diff --git a/src/connectors/argent/argentMobile/modal/login.ts b/src/connectors/argent/argentMobile/modal/login.ts
index 8fe03b9..498f6a8 100644
--- a/src/connectors/argent/argentMobile/modal/login.ts
+++ b/src/connectors/argent/argentMobile/modal/login.ts
@@ -1,14 +1,13 @@
 import SignClient from "@walletconnect/sign-client"
 import type { SignClientTypes } from "@walletconnect/types"
-
 import { RpcProvider, constants } from "starknet"
-
-// Using NetworkName as a value.
-const Network: typeof constants.NetworkName = constants.NetworkName
-
 import type { NamespaceAdapter, NamespaceAdapterOptions } from "./adapter"
 import { argentModal } from "./argentModal"
 import { resetWalletConnect } from "../../../../helpers/resetWalletConnect"
+import { ModalWallet } from "../../../../types/modal"
+
+// Using NetworkName as a value.
+const Network: typeof constants.NetworkName = constants.NetworkName
 
 export interface IArgentLoginOptions {
   projectId?: string
@@ -22,6 +21,8 @@ export interface IArgentLoginOptions {
   mobileUrl?: string
   modalType?: "overlay" | "window"
   walletConnect?: SignClientTypes.Options
+  onlyQRCode?: boolean
+  modalWallet?: ModalWallet
 }
 
 export const login = async <TAdapter extends NamespaceAdapter>(
@@ -37,6 +38,8 @@ export const login = async <TAdapter extends NamespaceAdapter>(
     url,
     icons,
     walletConnect,
+    onlyQRCode,
+    modalWallet,
   }: IArgentLoginOptions,
   Adapter: new (options: NamespaceAdapterOptions) => TAdapter,
 ): Promise<TAdapter | null> => {
@@ -101,13 +104,20 @@ export const login = async <TAdapter extends NamespaceAdapter>(
 
     // Open QRCode modal if a URI was returned (i.e. we're not connecting an existing pairing).
     if (uri) {
-      argentModal.showWalletConnectModal(uri)
+      if (onlyQRCode) {
+        argentModal.getWalletConnectQR(uri)
+      } else {
+        argentModal.showWalletConnectModal(uri, {
+          ...modalWallet,
+          dappName: name || "",
+        } as ModalWallet & { dappName: string })
+      }
       argentModal.wcUri = uri
 
       // Await session approval from the wallet.
       const session = await approval()
       adapter.updateSession(session)
-      argentModal.closeModal("animateSuccess")
+      argentModal.closeModal(true)
     }
 
     return adapter

From 71b7e6bec02de942c06fb0a7f952ec4d6eab8817 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 17:02:06 +0100
Subject: [PATCH 35/88] chore: add new icons for argent x, improve code

---
 src/connectors/injected/index.ts | 31 ++++++++++++++++++-------------
 1 file changed, 18 insertions(+), 13 deletions(-)

diff --git a/src/connectors/injected/index.ts b/src/connectors/injected/index.ts
index 1ef05f8..42b01d4 100644
--- a/src/connectors/injected/index.ts
+++ b/src/connectors/injected/index.ts
@@ -35,16 +35,21 @@ export interface InjectedConnectorOptions {
   name?: string
   /** Wallet icons. */
   icon?: ConnectorIcons
-  isCompoundConnector?: boolean
 }
 
 //  Icons used when the injected wallet is not installed
 //  Icons from media kits
-const walletIcons = {
-  argentX:
-    "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA2NS4xOTUwOCA1Ny43MzU2MiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNjUuMTk1MDggNTcuNzM1NjI7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojRkY4NzVCO30KPC9zdHlsZT4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTQwLjk4NTkyLDBIMjQuMjA4ODhjLTAuNTYsMC0xLjAxMDAxLDAuNDUxMDItMS4wMjE5NywxLjAxMjAyCgljLTAuMzM4OTksMTUuNzU1LTguNTgyMDMsMzAuNzA4OTgtMjIuNzcwMDIsNDEuMzAwOTljLTAuNDUwMDEsMC4zMzcwMS0wLjU1Mjk4LDAuOTY3OTktMC4yMjQsMS40MjNsOS44MTU5OCwxMy41NzMKCWMwLjMzNDA1LDAuNDYyMDEsMC45ODUwNSwwLjU2NTk4LDEuNDQyOTksMC4yMjY5OWM4Ljg3MTAzLTYuNTc5MDEsMTYuMDA3MDItMTQuNTE3LDIxLjE0NjA2LTIzLjMxNQoJYzUuMTM4LDguNzk4LDEyLjI3Mzk5LDE2LjczNTk5LDIxLjE0NiwyMy4zMTVjMC40NTY5NywwLjMzODk5LDEuMTA3OTcsMC4yMzUwMiwxLjQ0MTk2LTAuMjI2OTlsOS44MTYwNC0xMy41NzMKCWMwLjMyODk4LTAuNDU1MDIsMC4yMjY5OS0xLjA4Ni0wLjIyNC0xLjQyM0M1MC41ODk4NiwzMS43MjEwMSw0Mi4zNDY4OCwxNi43NjcwMyw0Mi4wMDc4OSwxLjAxMjAyCglDNDEuOTk1ODcsMC40NTEwMiw0MS41NDY4OSwwLDQwLjk4NTkyLDAiLz4KPC9zdmc+Cg==",
-  braavos:
-    "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ9IjUwMCIgdmlld0JveD0iMCAwIDUwMCA1MDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0zMjMuNDQgNDEuMzg4NkMzMjQuMTk4IDQyLjY3MjggMzIzLjE5NSA0NC4yNjAzIDMyMS43MDQgNDQuMjYwM0MyOTEuNTEgNDQuMjYwMyAyNjYuOTY1IDY4LjE2NTYgMjY2LjM4OSA5Ny44NzFDMjU2LjA1IDk1Ljk0MDcgMjQ1LjMzNyA5NS43OTU2IDIzNC43NTQgOTcuNTc4N0MyMzQuMDIzIDY4LjAwOSAyMDkuNTQgNDQuMjYwMyAxNzkuNDQ1IDQ0LjI2MDNDMTc3Ljk1MyA0NC4yNjAzIDE3Ni45NDkgNDIuNjcxNiAxNzcuNzA3IDQxLjM4NjVDMTkyLjMyMyAxNi42MzMgMjE5LjQ4MyAwIDI1MC41NzMgMEMyODEuNjY0IDAgMzA4LjgyNCAxNi42MzM5IDMyMy40NCA0MS4zODg2WiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzIzMjRfNjE4NjkpIi8+CjxwYXRoIGQ9Ik00MTguNzU2IDIyNi44OTRDNDI2LjM3IDIyOS4yIDQzMy41ODEgMjIyLjUxNyA0MzEuMDM2IDIxNC45NzlDNDA0LjUwNyAxMzYuNDAxIDMxNi41MzUgMTA0LjM1OCAyNTAuMTU5IDEwNC4zNThDMTgzLjY3NCAxMDQuMzU4IDkzLjczOTEgMTM3LjQxOCA2OS4zMDUxIDIxNS4zMzFDNjYuOTU3NCAyMjIuODE4IDc0LjE0NjUgMjI5LjI3NSA4MS42NDc5IDIyNi45NzdMMjQ0LjI1IDE3Ny4xNTFDMjQ3LjU2OSAxNzYuMTM0IDI1MS4xMTYgMTc2LjEyOCAyNTQuNDM5IDE3Ny4xMzVMNDE4Ljc1NiAyMjYuODk0WiIgZmlsbD0idXJsKCNwYWludDFfbGluZWFyXzIzMjRfNjE4NjkpIi8+CjxwYXRoIGQ9Ik02OS43MTY1IDIzOS40MjZMMjQ0LjM3IDE4Ni40NTZDMjQ3LjY2OSAxODUuNDU2IDI1MS4xOTEgMTg1LjQ1MyAyNTQuNDkyIDE4Ni40NDhMNDMwLjIzMiAyMzkuNDUyQzQ0NC43NiAyNDMuODMzIDQ1NC43MDEgMjU3LjIxNiA0NTQuNzAxIDI3Mi4zOVY0MzAuNDgxQzQ1NC4wMjggNDY5LjA3IDQxOS4zNjIgNTAwIDM4MC43ODYgNTAwSDMxNi43MTJDMzEwLjM3OSA1MDAgMzA1LjI1IDQ5NC44NzcgMzA1LjI1IDQ4OC41NDNWNDMzLjExNUMzMDUuMjUgNDExLjI4OSAzMTguMTY3IDM5MS41MzUgMzM4LjE1NSAzODIuNzkyQzM2NC45NDkgMzcxLjA3MSAzOTYuNjQ2IDM1NS4yMTggNDAyLjYwOCAzMjMuNDA2QzQwNC41MzIgMzEzLjEzOCAzOTcuODM3IDMwMy4yMzQgMzg3LjU5NSAzMDEuMTk4QzM2MS42OTkgMjk2LjA1MSAzMzIuOTg5IDI5OC4wMzkgMzA4LjcxMSAzMDguODk4QzI4MS4xNSAzMjEuMjI1IDI3My45NCAzNDEuNzMxIDI3MS4yNzEgMzY5LjI3TDI2OC4wMzYgMzk4LjkzOEMyNjcuMDQ3IDQwOC4wMDUgMjU4LjU0NiA0MTQuOTUyIDI0OS40MjkgNDE0Ljk1MkMyMzkuOTk4IDQxNC45NTIgMjMyLjkyNiA0MDcuNzY5IDIzMS45MDMgMzk4LjM4OEwyMjguNzI4IDM2OS4yN0MyMjYuNDQyIDM0NS42ODEgMjIyLjI5OCAzMjIuNzY3IDE5Ny45MTIgMzExLjg2QzE3MC4wOTUgMjk5LjQxOSAxNDIuMTQxIDI5NS4yODcgMTEyLjQwNCAzMDEuMTk4QzEwMi4xNjIgMzAzLjIzNCA5NS40NjcgMzEzLjEzOCA5Ny4zOTEzIDMyMy40MDZDMTAzLjQwNSAzNTUuNDk1IDEzNC44NTQgMzcwLjk4NSAxNjEuODQ0IDM4Mi43OTJDMTgxLjgzMyAzOTEuNTM1IDE5NC43NSA0MTEuMjg5IDE5NC43NSA0MzMuMTE1VjQ4OC41MzNDMTk0Ljc1IDQ5NC44NjcgMTg5LjYyMiA1MDAgMTgzLjI4OSA1MDBIMTE5LjIxNEM4MC42Mzc0IDUwMCA0NS45NzE2IDQ2OS4wNyA0NS4yOTc5IDQzMC40ODFWMjcyLjM0OUM0NS4yOTc5IDI1Ny4xOTQgNTUuMjE0MiAyNDMuODI0IDY5LjcxNjUgMjM5LjQyNloiIGZpbGw9InVybCgjcGFpbnQyX2xpbmVhcl8yMzI0XzYxODY5KSIvPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDFfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDJfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgo8L3N2Zz4=",
+export const injectedWalletIcons = {
+  argentX: {
+    dark: "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIzLjgxMyA1Ljk2NjFIMTYuMTE5MUMxNS44NjIgNS45NjYxIDE1LjY1NiA2LjE4NTMzIDE1LjY1MDQgNi40NTc4MkMxNS40OTQ5IDE0LjExNzQgMTEuNzE0NyAyMS4zODcyIDUuMjA4MTcgMjYuNTM2NUM1LjAwMTYgMjYuNjk5OCA0Ljk1NDU0IDI3LjAwNyA1LjEwNTU2IDI3LjIyODJMOS42MDcxNSAzMy44MjY1QzkuNzYwMjkgMzQuMDUxMSAxMC4wNTg3IDM0LjEwMTcgMTAuMjY4NyAzMy45MzY4QzE0LjMzNzEgMzAuNzM4MSAxNy42MDk1IDI2Ljg3OTUgMTkuOTY2MSAyMi42MDI1QzIyLjMyMjYgMjYuODc5NSAyNS41OTUyIDMwLjczODEgMjkuNjYzNiAzMy45MzY4QzI5Ljg3MzQgMzQuMTAxNyAzMC4xNzE4IDM0LjA1MTEgMzAuMzI1MiAzMy44MjY1TDM0LjgyNjggMjcuMjI4MkMzNC45Nzc2IDI3LjAwNyAzNC45MzA1IDI2LjY5OTggMzQuNzI0MSAyNi41MzY1QzI4LjIxNzQgMjEuMzg3MiAyNC40MzcyIDE0LjExNzQgMjQuMjgxOSA2LjQ1NzgyQzI0LjI3NjMgNi4xODUzMyAyNC4wNzAxIDUuOTY2MSAyMy44MTMgNS45NjYxWiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTM0LjU4OTQgMTAuNzg2NEwzMy43NjI4IDguMjE1ODFDMzMuNTk0NyA3LjY5Mzk1IDMzLjE4NTIgNy4yODc0NCAzMi42NjQgNy4xMjY3MkwzMC4wOTgxIDYuMzMyNTlDMjkuNzQ0IDYuMjIyOTEgMjkuNzQwMiA1LjcxOTAyIDMwLjA5MzQgNS42MDQ2M0wzMi42NDYxIDQuNzcyNjdDMzMuMTY0NiA0LjYwMzQ1IDMzLjU2OTQgNC4xOTAzMiAzMy43MjkxIDMuNjY2NTZMMzQuNTE3IDEuMDgzNzJDMzQuNjI2IDAuNzI2MzYgMzUuMTI2NiAwLjcyMjU3MSAzNS4yNDEyIDEuMDc4MDZMMzYuMDY3NyAzLjY0ODU4QzM2LjIzNTggNC4xNzA0NSAzNi42NDUzIDQuNTc2OTggMzcuMTY2NSA0LjczODY0TDM5LjczMjQgNS41MzE4M0M0MC4wODY1IDUuNjQxNSA0MC4wOTAzIDYuMTQ1NCAzOS43MzcyIDYuMjYwNzRMMzcuMTg0NCA3LjA5MjY5QzM2LjY2NTkgNy4yNjA5NiAzNi4yNjExIDcuNjc0MSAzNi4xMDE1IDguMTk4ODFMMzUuMzEzNSAxMC43ODA3QzM1LjIwNDUgMTEuMTM4MSAzNC43MDM5IDExLjE0MTggMzQuNTg5NCAxMC43ODY0WiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==",
+    light:
+      "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDEiIHZpZXdCb3g9IjAgMCA0MCA0MSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIzLjgxMyA2LjQ2NjFIMTYuMTE5MUMxNS44NjIgNi40NjYxIDE1LjY1NiA2LjY4NTMzIDE1LjY1MDQgNi45NTc4MkMxNS40OTQ5IDE0LjYxNzQgMTEuNzE0NyAyMS44ODcyIDUuMjA4MTcgMjcuMDM2NUM1LjAwMTYgMjcuMTk5OCA0Ljk1NDU0IDI3LjUwNyA1LjEwNTU2IDI3LjcyODJMOS42MDcxNSAzNC4zMjY1QzkuNzYwMjkgMzQuNTUxMSAxMC4wNTg3IDM0LjYwMTcgMTAuMjY4NyAzNC40MzY4QzE0LjMzNzEgMzEuMjM4MSAxNy42MDk1IDI3LjM3OTUgMTkuOTY2MSAyMy4xMDI1QzIyLjMyMjYgMjcuMzc5NSAyNS41OTUyIDMxLjIzODEgMjkuNjYzNiAzNC40MzY4QzI5Ljg3MzQgMzQuNjAxNyAzMC4xNzE4IDM0LjU1MTEgMzAuMzI1MiAzNC4zMjY1TDM0LjgyNjggMjcuNzI4MkMzNC45Nzc2IDI3LjUwNyAzNC45MzA1IDI3LjE5OTggMzQuNzI0MSAyNy4wMzY1QzI4LjIxNzQgMjEuODg3MiAyNC40MzcyIDE0LjYxNzQgMjQuMjgxOSA2Ljk1NzgyQzI0LjI3NjMgNi42ODUzMyAyNC4wNzAxIDYuNDY2MSAyMy44MTMgNi40NjYxWiIgZmlsbD0iYmxhY2siLz4KPHBhdGggZD0iTTM0LjU4OTQgMTEuMjg2NEwzMy43NjI4IDguNzE1ODFDMzMuNTk0NyA4LjE5Mzk1IDMzLjE4NTIgNy43ODc0NCAzMi42NjQgNy42MjY3MkwzMC4wOTgxIDYuODMyNTlDMjkuNzQ0IDYuNzIyOTEgMjkuNzQwMiA2LjIxOTAyIDMwLjA5MzQgNi4xMDQ2M0wzMi42NDYxIDUuMjcyNjdDMzMuMTY0NiA1LjEwMzQ1IDMzLjU2OTQgNC42OTAzMiAzMy43MjkxIDQuMTY2NTZMMzQuNTE3IDEuNTgzNzJDMzQuNjI2IDEuMjI2MzYgMzUuMTI2NiAxLjIyMjU3IDM1LjI0MTIgMS41NzgwNkwzNi4wNjc3IDQuMTQ4NThDMzYuMjM1OCA0LjY3MDQ1IDM2LjY0NTMgNS4wNzY5OCAzNy4xNjY1IDUuMjM4NjRMMzkuNzMyNCA2LjAzMTgzQzQwLjA4NjUgNi4xNDE1IDQwLjA5MDMgNi42NDU0IDM5LjczNzIgNi43NjA3NEwzNy4xODQ0IDcuNTkyNjlDMzYuNjY1OSA3Ljc2MDk2IDM2LjI2MTEgOC4xNzQxIDM2LjEwMTUgOC42OTg4MUwzNS4zMTM1IDExLjI4MDdDMzUuMjA0NSAxMS42MzgxIDM0LjcwMzkgMTEuNjQxOCAzNC41ODk0IDExLjI4NjRaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K",
+  },
+  braavos: {
+    dark: "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ9IjUwMCIgdmlld0JveD0iMCAwIDUwMCA1MDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0zMjMuNDQgNDEuMzg4NkMzMjQuMTk4IDQyLjY3MjggMzIzLjE5NSA0NC4yNjAzIDMyMS43MDQgNDQuMjYwM0MyOTEuNTEgNDQuMjYwMyAyNjYuOTY1IDY4LjE2NTYgMjY2LjM4OSA5Ny44NzFDMjU2LjA1IDk1Ljk0MDcgMjQ1LjMzNyA5NS43OTU2IDIzNC43NTQgOTcuNTc4N0MyMzQuMDIzIDY4LjAwOSAyMDkuNTQgNDQuMjYwMyAxNzkuNDQ1IDQ0LjI2MDNDMTc3Ljk1MyA0NC4yNjAzIDE3Ni45NDkgNDIuNjcxNiAxNzcuNzA3IDQxLjM4NjVDMTkyLjMyMyAxNi42MzMgMjE5LjQ4MyAwIDI1MC41NzMgMEMyODEuNjY0IDAgMzA4LjgyNCAxNi42MzM5IDMyMy40NCA0MS4zODg2WiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzIzMjRfNjE4NjkpIi8+CjxwYXRoIGQ9Ik00MTguNzU2IDIyNi44OTRDNDI2LjM3IDIyOS4yIDQzMy41ODEgMjIyLjUxNyA0MzEuMDM2IDIxNC45NzlDNDA0LjUwNyAxMzYuNDAxIDMxNi41MzUgMTA0LjM1OCAyNTAuMTU5IDEwNC4zNThDMTgzLjY3NCAxMDQuMzU4IDkzLjczOTEgMTM3LjQxOCA2OS4zMDUxIDIxNS4zMzFDNjYuOTU3NCAyMjIuODE4IDc0LjE0NjUgMjI5LjI3NSA4MS42NDc5IDIyNi45NzdMMjQ0LjI1IDE3Ny4xNTFDMjQ3LjU2OSAxNzYuMTM0IDI1MS4xMTYgMTc2LjEyOCAyNTQuNDM5IDE3Ny4xMzVMNDE4Ljc1NiAyMjYuODk0WiIgZmlsbD0idXJsKCNwYWludDFfbGluZWFyXzIzMjRfNjE4NjkpIi8+CjxwYXRoIGQ9Ik02OS43MTY1IDIzOS40MjZMMjQ0LjM3IDE4Ni40NTZDMjQ3LjY2OSAxODUuNDU2IDI1MS4xOTEgMTg1LjQ1MyAyNTQuNDkyIDE4Ni40NDhMNDMwLjIzMiAyMzkuNDUyQzQ0NC43NiAyNDMuODMzIDQ1NC43MDEgMjU3LjIxNiA0NTQuNzAxIDI3Mi4zOVY0MzAuNDgxQzQ1NC4wMjggNDY5LjA3IDQxOS4zNjIgNTAwIDM4MC43ODYgNTAwSDMxNi43MTJDMzEwLjM3OSA1MDAgMzA1LjI1IDQ5NC44NzcgMzA1LjI1IDQ4OC41NDNWNDMzLjExNUMzMDUuMjUgNDExLjI4OSAzMTguMTY3IDM5MS41MzUgMzM4LjE1NSAzODIuNzkyQzM2NC45NDkgMzcxLjA3MSAzOTYuNjQ2IDM1NS4yMTggNDAyLjYwOCAzMjMuNDA2QzQwNC41MzIgMzEzLjEzOCAzOTcuODM3IDMwMy4yMzQgMzg3LjU5NSAzMDEuMTk4QzM2MS42OTkgMjk2LjA1MSAzMzIuOTg5IDI5OC4wMzkgMzA4LjcxMSAzMDguODk4QzI4MS4xNSAzMjEuMjI1IDI3My45NCAzNDEuNzMxIDI3MS4yNzEgMzY5LjI3TDI2OC4wMzYgMzk4LjkzOEMyNjcuMDQ3IDQwOC4wMDUgMjU4LjU0NiA0MTQuOTUyIDI0OS40MjkgNDE0Ljk1MkMyMzkuOTk4IDQxNC45NTIgMjMyLjkyNiA0MDcuNzY5IDIzMS45MDMgMzk4LjM4OEwyMjguNzI4IDM2OS4yN0MyMjYuNDQyIDM0NS42ODEgMjIyLjI5OCAzMjIuNzY3IDE5Ny45MTIgMzExLjg2QzE3MC4wOTUgMjk5LjQxOSAxNDIuMTQxIDI5NS4yODcgMTEyLjQwNCAzMDEuMTk4QzEwMi4xNjIgMzAzLjIzNCA5NS40NjcgMzEzLjEzOCA5Ny4zOTEzIDMyMy40MDZDMTAzLjQwNSAzNTUuNDk1IDEzNC44NTQgMzcwLjk4NSAxNjEuODQ0IDM4Mi43OTJDMTgxLjgzMyAzOTEuNTM1IDE5NC43NSA0MTEuMjg5IDE5NC43NSA0MzMuMTE1VjQ4OC41MzNDMTk0Ljc1IDQ5NC44NjcgMTg5LjYyMiA1MDAgMTgzLjI4OSA1MDBIMTE5LjIxNEM4MC42Mzc0IDUwMCA0NS45NzE2IDQ2OS4wNyA0NS4yOTc5IDQzMC40ODFWMjcyLjM0OUM0NS4yOTc5IDI1Ny4xOTQgNTUuMjE0MiAyNDMuODI0IDY5LjcxNjUgMjM5LjQyNloiIGZpbGw9InVybCgjcGFpbnQyX2xpbmVhcl8yMzI0XzYxODY5KSIvPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDFfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDJfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgo8L3N2Zz4=",
+    light:
+      "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ9IjUwMCIgdmlld0JveD0iMCAwIDUwMCA1MDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0zMjMuNDQgNDEuMzg4NkMzMjQuMTk4IDQyLjY3MjggMzIzLjE5NSA0NC4yNjAzIDMyMS43MDQgNDQuMjYwM0MyOTEuNTEgNDQuMjYwMyAyNjYuOTY1IDY4LjE2NTYgMjY2LjM4OSA5Ny44NzFDMjU2LjA1IDk1Ljk0MDcgMjQ1LjMzNyA5NS43OTU2IDIzNC43NTQgOTcuNTc4N0MyMzQuMDIzIDY4LjAwOSAyMDkuNTQgNDQuMjYwMyAxNzkuNDQ1IDQ0LjI2MDNDMTc3Ljk1MyA0NC4yNjAzIDE3Ni45NDkgNDIuNjcxNiAxNzcuNzA3IDQxLjM4NjVDMTkyLjMyMyAxNi42MzMgMjE5LjQ4MyAwIDI1MC41NzMgMEMyODEuNjY0IDAgMzA4LjgyNCAxNi42MzM5IDMyMy40NCA0MS4zODg2WiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzIzMjRfNjE4NjkpIi8+CjxwYXRoIGQ9Ik00MTguNzU2IDIyNi44OTRDNDI2LjM3IDIyOS4yIDQzMy41ODEgMjIyLjUxNyA0MzEuMDM2IDIxNC45NzlDNDA0LjUwNyAxMzYuNDAxIDMxNi41MzUgMTA0LjM1OCAyNTAuMTU5IDEwNC4zNThDMTgzLjY3NCAxMDQuMzU4IDkzLjczOTEgMTM3LjQxOCA2OS4zMDUxIDIxNS4zMzFDNjYuOTU3NCAyMjIuODE4IDc0LjE0NjUgMjI5LjI3NSA4MS42NDc5IDIyNi45NzdMMjQ0LjI1IDE3Ny4xNTFDMjQ3LjU2OSAxNzYuMTM0IDI1MS4xMTYgMTc2LjEyOCAyNTQuNDM5IDE3Ny4xMzVMNDE4Ljc1NiAyMjYuODk0WiIgZmlsbD0idXJsKCNwYWludDFfbGluZWFyXzIzMjRfNjE4NjkpIi8+CjxwYXRoIGQ9Ik02OS43MTY1IDIzOS40MjZMMjQ0LjM3IDE4Ni40NTZDMjQ3LjY2OSAxODUuNDU2IDI1MS4xOTEgMTg1LjQ1MyAyNTQuNDkyIDE4Ni40NDhMNDMwLjIzMiAyMzkuNDUyQzQ0NC43NiAyNDMuODMzIDQ1NC43MDEgMjU3LjIxNiA0NTQuNzAxIDI3Mi4zOVY0MzAuNDgxQzQ1NC4wMjggNDY5LjA3IDQxOS4zNjIgNTAwIDM4MC43ODYgNTAwSDMxNi43MTJDMzEwLjM3OSA1MDAgMzA1LjI1IDQ5NC44NzcgMzA1LjI1IDQ4OC41NDNWNDMzLjExNUMzMDUuMjUgNDExLjI4OSAzMTguMTY3IDM5MS41MzUgMzM4LjE1NSAzODIuNzkyQzM2NC45NDkgMzcxLjA3MSAzOTYuNjQ2IDM1NS4yMTggNDAyLjYwOCAzMjMuNDA2QzQwNC41MzIgMzEzLjEzOCAzOTcuODM3IDMwMy4yMzQgMzg3LjU5NSAzMDEuMTk4QzM2MS42OTkgMjk2LjA1MSAzMzIuOTg5IDI5OC4wMzkgMzA4LjcxMSAzMDguODk4QzI4MS4xNSAzMjEuMjI1IDI3My45NCAzNDEuNzMxIDI3MS4yNzEgMzY5LjI3TDI2OC4wMzYgMzk4LjkzOEMyNjcuMDQ3IDQwOC4wMDUgMjU4LjU0NiA0MTQuOTUyIDI0OS40MjkgNDE0Ljk1MkMyMzkuOTk4IDQxNC45NTIgMjMyLjkyNiA0MDcuNzY5IDIzMS45MDMgMzk4LjM4OEwyMjguNzI4IDM2OS4yN0MyMjYuNDQyIDM0NS42ODEgMjIyLjI5OCAzMjIuNzY3IDE5Ny45MTIgMzExLjg2QzE3MC4wOTUgMjk5LjQxOSAxNDIuMTQxIDI5NS4yODcgMTEyLjQwNCAzMDEuMTk4QzEwMi4xNjIgMzAzLjIzNCA5NS40NjcgMzEzLjEzOCA5Ny4zOTEzIDMyMy40MDZDMTAzLjQwNSAzNTUuNDk1IDEzNC44NTQgMzcwLjk4NSAxNjEuODQ0IDM4Mi43OTJDMTgxLjgzMyAzOTEuNTM1IDE5NC43NSA0MTEuMjg5IDE5NC43NSA0MzMuMTE1VjQ4OC41MzNDMTk0Ljc1IDQ5NC44NjcgMTg5LjYyMiA1MDAgMTgzLjI4OSA1MDBIMTE5LjIxNEM4MC42Mzc0IDUwMCA0NS45NzE2IDQ2OS4wNyA0NS4yOTc5IDQzMC40ODFWMjcyLjM0OUM0NS4yOTc5IDI1Ny4xOTQgNTUuMjE0MiAyNDMuODI0IDY5LjcxNjUgMjM5LjQyNloiIGZpbGw9InVybCgjcGFpbnQyX2xpbmVhcl8yMzI0XzYxODY5KSIvPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDFfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDJfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgo8L3N2Zz4=",
+  },
 }
 
 export class InjectedConnector extends Connector {
@@ -61,22 +66,22 @@ export class InjectedConnector extends Connector {
   }
 
   get name(): string {
-    console.log("HERE", this._options)
     this.ensureWallet()
     return this._options.name ?? this._wallet?.name ?? this._options.id
   }
 
   get icon(): ConnectorIcons {
     this.ensureWallet()
-    const deafultIcon = {
+    const defaultIcon = {
       dark:
-        walletIcons[this.id as keyof typeof walletIcons] ||
-        WALLET_NOT_FOUND_ICON_DARK,
+        injectedWalletIcons[this.id as keyof typeof injectedWalletIcons]
+          ?.dark || WALLET_NOT_FOUND_ICON_DARK,
       light:
-        walletIcons[this.id as keyof typeof walletIcons] ||
-        WALLET_NOT_FOUND_ICON_LIGHT,
+        injectedWalletIcons[this.id as keyof typeof injectedWalletIcons]
+          ?.light || WALLET_NOT_FOUND_ICON_LIGHT,
     }
-    return this._options.icon || this._wallet?.icon || deafultIcon
+
+    return this._options.icon || this._wallet?.icon || defaultIcon
   }
 
   available(): boolean {

From 3fd36a77135a763f9b6795fbde64ed066311549c Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 17:13:30 +0100
Subject: [PATCH 36/88] feat: improve type StarknetkitCompoundConnector

---
 src/connectors/connector.ts | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/connectors/connector.ts b/src/connectors/connector.ts
index 81ff31e..00f2ef5 100644
--- a/src/connectors/connector.ts
+++ b/src/connectors/connector.ts
@@ -73,5 +73,7 @@ export abstract class StarknetkitConnector extends Connector {
 export abstract class StarknetkitCompoundConnector {
   readonly isCompoundConnector = true
   abstract connector: StarknetkitConnector
-  abstract fallbackConnector: StarknetkitConnector
+  abstract fallbackConnector: StarknetkitConnector | null
+  abstract get name(): string
+  abstract get icon(): ConnectorIcons
 }

From 966a9e7b730c6a073f94f40f410a728d492e02c3 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 17:13:47 +0100
Subject: [PATCH 37/88] feat: add new prop to `ConnectOptions`

---
 src/connectors/connector.ts | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/connectors/connector.ts b/src/connectors/connector.ts
index 00f2ef5..c5b677c 100644
--- a/src/connectors/connector.ts
+++ b/src/connectors/connector.ts
@@ -30,6 +30,7 @@ export interface ConnectorEvents {
 
 export type ConnectOptions = {
   silent_mode: boolean
+  onlyQRCode?: boolean
 }
 
 export abstract class Connector extends EventEmitter<ConnectorEvents> {

From 64af087cae0ce9e56ad7e8aa48b80dc6759a2af0 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 17:13:57 +0100
Subject: [PATCH 38/88] chore: remove redundant code

---
 src/connectors/connector.ts | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/src/connectors/connector.ts b/src/connectors/connector.ts
index c5b677c..c329c89 100644
--- a/src/connectors/connector.ts
+++ b/src/connectors/connector.ts
@@ -59,16 +59,11 @@ export abstract class Connector extends EventEmitter<ConnectorEvents> {
   abstract request<T extends RpcMessage["type"]>(
     call: RequestFnCall<T>,
   ): Promise<RpcTypeToMessageMap[T]["result"]>
-
-  // getConnector() { TODO?
-  //   return this
-  // }
 }
 
 export abstract class StarknetkitConnector extends Connector {
   /**  Connector StarknetWindowObject */
   abstract get wallet(): StarknetWindowObject
-  abstract isCompoundConnector?: boolean // TODO I don't need this prolly
 }
 
 export abstract class StarknetkitCompoundConnector {

From a76c303bde13dd61cdb940bb02ffded4982efa8c Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 17:14:27 +0100
Subject: [PATCH 39/88] fix: ts error

---
 src/helpers/connector.ts       | 2 +-
 src/helpers/mapModalWallets.ts | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/helpers/connector.ts b/src/helpers/connector.ts
index 54178e0..1c01d94 100644
--- a/src/helpers/connector.ts
+++ b/src/helpers/connector.ts
@@ -7,7 +7,7 @@ export function extractConnector(
   connector: StarknetkitConnector | StarknetkitCompoundConnector,
   useFallback: boolean = false,
 ) {
-  if (connector.isCompoundConnector) {
+  if ((connector as StarknetkitCompoundConnector).isCompoundConnector) {
     return useFallback
       ? (connector as StarknetkitCompoundConnector).fallbackConnector
       : (connector as StarknetkitCompoundConnector).connector
diff --git a/src/helpers/mapModalWallets.ts b/src/helpers/mapModalWallets.ts
index 7e10186..dc7880b 100644
--- a/src/helpers/mapModalWallets.ts
+++ b/src/helpers/mapModalWallets.ts
@@ -81,7 +81,7 @@ export const mapModalWallets = ({
         let icon
         let name
 
-        if (_c.isCompoundConnector) {
+        if ((_c as StarknetkitCompoundConnector).isCompoundConnector) {
           icon = _c.icon
           name = _c.name
         } else {

From 902c3af28cb2bfecfea37015c6e5494bcb684511 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 17:14:41 +0100
Subject: [PATCH 40/88] chore: update `DEFAULT_WEBWALLET_ICON`

---
 src/connectors/webwallet/constants.ts | 30 ++++++++++++++-------------
 1 file changed, 16 insertions(+), 14 deletions(-)

diff --git a/src/connectors/webwallet/constants.ts b/src/connectors/webwallet/constants.ts
index 7b8c7c6..b7483df 100644
--- a/src/connectors/webwallet/constants.ts
+++ b/src/connectors/webwallet/constants.ts
@@ -1,19 +1,21 @@
 export const DEFAULT_WEBWALLET_URL = "https://web.argent.xyz"
 
-export const DEFAULT_WEBWALLET_ICON = `<svg
-    width="32"
-    height="28"
-    viewBox="0 0 18 14"
-    fill="none"
-    xmlns="http://www.w3.org/2000/svg"
-  >
-    <path
-      fill-rule="evenodd"
-      clip-rule="evenodd"
-      d="M1.5 0.4375C0.982233 0.4375 0.5625 0.857233 0.5625 1.375V12C0.5625 12.4144 0.72712 12.8118 1.02015 13.1049C1.31317 13.3979 1.7106 13.5625 2.125 13.5625H15.875C16.2894 13.5625 16.6868 13.3979 16.9799 13.1049C17.2729 12.8118 17.4375 12.4144 17.4375 12V1.375C17.4375 0.857233 17.0178 0.4375 16.5 0.4375H1.5ZM2.4375 3.50616V11.6875H15.5625V3.50616L9.63349 8.94108C9.27507 9.26964 8.72493 9.26964 8.36651 8.94108L2.4375 3.50616ZM14.0899 2.3125H3.91013L9 6.97822L14.0899 2.3125Z"
-      fill="currentColor"
-    />
-  </svg>`
+export const DEFAULT_WEBWALLET_ICON = `<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
+  <rect x="2" y="2" width="28" height="28" rx="5.6" fill="black"/>
+  <g clip-path="url(#clip0_9_981)">
+    <path d="M10.5 20.9999H21.5C21.9166 20.9999 22.2736 20.7452 22.424 20.383L18.1419 16.3631L16.3739 18.0018C16.163 18.1973 15.837 18.1973 15.6261 18.0018L13.8581 16.3631L9.57603 20.383C9.72637 20.7452 10.0834 20.9999 10.5 20.9999Z" fill="white"/>
+    <path d="M18.8771 15.6817L22.5 19.0828V12.3239L18.8771 15.6817Z" fill="white"/>
+    <path d="M13.1229 15.6817L9.5 12.3239V19.0828L13.1229 15.6817Z" fill="white"/>
+    <path d="M22 10.9999H10C9.8752 10.9999 9.76108 11.0456 9.67348 11.1212L15.7734 16.7748C15.9012 16.8933 16.0988 16.8933 16.2266 16.7748L22.3265 11.1212C22.2389 11.0456 22.1248 10.9999 22 10.9999Z" fill="white"/>
+  </g>
+  <rect x="20" y="20" width="12" height="12" rx="2.4" fill="#FF875B"/>
+  <path d="M26.9611 22.6222H25.0397C24.9755 22.6222 24.924 22.675 24.9226 22.7406C24.8838 24.5841 23.9398 26.3339 22.3148 27.5732C22.2633 27.6126 22.2515 27.6865 22.2892 27.7397L23.4134 29.3279C23.4517 29.3819 23.5262 29.3941 23.5786 29.3544C24.5947 28.5845 25.4119 27.6558 26.0004 26.6264C26.5889 27.6558 27.4062 28.5845 28.4222 29.3544C28.4746 29.3941 28.5492 29.3819 28.5875 29.3279L29.7117 27.7397C29.7493 27.6865 29.7376 27.6126 29.686 27.5732C28.0611 26.3339 27.117 24.5841 27.0782 22.7406C27.0768 22.675 27.0253 22.6222 26.9611 22.6222Z" fill="white"/>
+  <defs>
+  <clipPath id="clip0_9_981">
+    <rect width="16" height="16" fill="white" transform="translate(8 7.99991)"/>
+  </clipPath>
+  </defs>
+</svg>`
 
 export const TESTNET_WHITELIST_URL =
   "https://static.hydrogen.argent47.net/webwallet/iframe_whitelist_testnet.json"

From 0e81651e4802b96a475aafad76254a9404fc23bc Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 17:15:45 +0100
Subject: [PATCH 41/88] chore: rename ArgentCompound, update methods/interface,
 remove redundant

---
 src/connectors/argent/index.ts | 59 ++++++++++------------------------
 1 file changed, 17 insertions(+), 42 deletions(-)

diff --git a/src/connectors/argent/index.ts b/src/connectors/argent/index.ts
index 6360f17..3e61276 100644
--- a/src/connectors/argent/index.ts
+++ b/src/connectors/argent/index.ts
@@ -1,12 +1,11 @@
+import { injectedWalletIcons } from "../injected"
 import { ArgentX } from "../injected/argentX"
+import { getInjectedArgentX } from "./helpers/getInjectedArgentX"
 import {
   ArgentMobileBaseConnector,
   ArgentMobileConnectorOptions,
   isInArgentMobileAppBrowser,
 } from "./argentMobile"
-
-import { getInjectedArgentX } from "./helpers/getInjectedArgentX"
-import { DEFAULT_ARGENT_MOBILE_ICON } from "./argentMobile/constants"
 import { StarknetkitCompoundConnector } from "../connector"
 
 /**
@@ -16,19 +15,12 @@ function hasInjectedArgentX(): boolean {
   return Boolean(getInjectedArgentX())
 }
 
-type ArgentCompoundSettings = ArgentMobileConnectorOptions
+type ArgentSettings = ArgentMobileConnectorOptions
 
-// TODO think about naming
-//  - ArgentUnified
-//  - ArgentOneButton
-//  - ArgentCompound
-//  - Argent
+const ArgentIcon =
+  "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9IkhpdG8gaW4gY29udGFpbmVyIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTE4Ljc5OTkgNS45MkgxMy4yMDAzQzEzLjAxMzIgNS45MiAxMi44NjMyIDYuMDc0MDIgMTIuODU5MiA2LjI2NTQ3QzEyLjc0NiAxMS42NDcgOS45OTQ3NyAxNi43NTQ2IDUuMjU5MyAyMC4zNzI0QzUuMTA4OTUgMjAuNDg3MiA1LjA3NDcgMjAuNzAzIDUuMTg0NjIgMjAuODU4NEw4LjQ2MDg3IDI1LjQ5NDNDOC41NzIzMyAyNS42NTIgOC43ODk1IDI1LjY4NzcgOC45NDIzNyAyNS41NzE4QzExLjkwMzMgMjMuMzI0NCAxNC4yODUgMjAuNjEzNCAxNi4wMDAxIDE3LjYwODVDMTcuNzE1MiAyMC42MTM0IDIwLjA5NyAyMy4zMjQ0IDIzLjA1OCAyNS41NzE4QzIzLjIxMDcgMjUuNjg3NyAyMy40Mjc5IDI1LjY1MiAyMy41Mzk1IDI1LjQ5NDNMMjYuODE1NyAyMC44NTg0QzI2LjkyNTUgMjAuNzAzIDI2Ljg5MTIgMjAuNDg3MiAyNi43NDEgMjAuMzcyNEMyMi4wMDU0IDE2Ljc1NDYgMTkuMjU0MiAxMS42NDcgMTkuMTQxMiA2LjI2NTQ3QzE5LjEzNzEgNi4wNzQwMiAxOC45ODcgNS45MiAxOC43OTk5IDUuOTJaIiBmaWxsPSIjRkY4NzVCIi8+CjwvZz4KPC9zdmc+Cg=="
 
-// TODO
-//  - get qr code
-//  - get full modal for both ux flows?
-
-export class ArgentCompound
+export class Argent
   extends StarknetkitCompoundConnector
   implements StarknetkitCompoundConnector
 {
@@ -36,18 +28,22 @@ export class ArgentCompound
   readonly argentMobile?: ArgentMobileBaseConnector
 
   readonly connector: ArgentX | ArgentMobileBaseConnector
-  readonly fallbackConnector: ArgentX | ArgentMobileBaseConnector
+  readonly fallbackConnector: ArgentMobileBaseConnector | null
+
+  get name() {
+    return "Argent"
+  }
+  get icon() {
+    return ArgentIcon
+  }
 
-  constructor(settings: ArgentCompoundSettings) {
+  constructor(settings: ArgentSettings) {
     super()
 
     this.argentX = new ArgentX({
-      name: "Argent",
-      icon: DEFAULT_ARGENT_MOBILE_ICON,
-      isCompoundConnector: true,
+      icon: injectedWalletIcons.argentX,
     })
     this.argentMobile = new ArgentMobileBaseConnector({
-      isCompoundConnector: true,
       ...settings,
     })
 
@@ -56,28 +52,7 @@ export class ArgentCompound
       this.fallbackConnector = this.argentMobile
     } else {
       this.connector = this.argentMobile
-      this.fallbackConnector = this.argentX
+      this.fallbackConnector = null
     }
   }
-
-  getArgentXConnector() {
-    return this.argentX
-  }
-
-  getArgentMobileConnector() {
-    return this.argentMobile
-  }
 }
-
-//
-// // Second way
-// const compoundConnector = new ArgentCompound({
-//   url: typeof window !== "undefined" ? window.location.href : "",
-//   dappName: "Example dapp",
-// })
-//
-// compoundConnector.getConector()
-//
-// compoundConnector.getArgentX()
-// compoundConnector.getArgentMobile()
-// compoundConnector.getFallback()

From def32107de75d5de1277b89cbd7bc8639abab2c8 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 17:19:52 +0100
Subject: [PATCH 42/88] chore: adapt `connect` method to new UI approach

---
 src/main.ts | 136 +++++++++++++++++++++++++++-------------------------
 1 file changed, 72 insertions(+), 64 deletions(-)

diff --git a/src/main.ts b/src/main.ts
index a09994f..dceaa17 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -1,13 +1,17 @@
 import type { DisconnectOptions } from "@starknet-io/get-starknet"
 import sn from "@starknet-io/get-starknet-core"
 import type { StarknetWindowObject } from "@starknet-io/types-js"
+
 import {
-  Connector,
-  ConnectorData,
-  StarknetkitCompoundConnector,
-  StarknetkitConnector,
-} from "./connectors"
+  ConnectOptions,
+  ConnectOptionsWithConnectors,
+  Layout,
+  ModalResult,
+  ModalWallet,
+} from "./types/modal"
 import { DEFAULT_WEBWALLET_URL } from "./connectors/webwallet/constants"
+
+import { Connector, ConnectorData, StarknetkitConnector } from "./connectors"
 import { defaultConnectors } from "./helpers/defaultConnectors"
 import { getStoreVersionFromBrowser } from "./helpers/getStoreVersionFromBrowser"
 import {
@@ -15,40 +19,13 @@ import {
   setStarknetLastConnectedWallet,
 } from "./helpers/lastConnected"
 import { mapModalWallets } from "./helpers/mapModalWallets"
-import Modal from "./modal/Modal.svelte"
-// import css from "@argent/x-ui/styles/tailwind.css?inline"
-import css from "./theme.css?inline"
+import { extractConnector, findConnectorById } from "./helpers/connector"
+import { getModalTarget } from "./helpers/modal"
 
-import type {
-  ConnectOptions,
-  ConnectOptionsWithConnectors,
-  ModalResult,
-  ModalWallet,
-} from "./types/modal"
+import Modal from "./modal/Modal.svelte"
 
 let selectedConnector: StarknetkitConnector | null = null
 
-export function getConnector( // TODO Maybe just add getConnector to both, StarknetkitConnector and StarknetkitCompoundConnector, then use .getConnector() where needed
-  connector: StarknetkitConnector | StarknetkitCompoundConnector,
-) {
-  if (connector.isCompoundConnector) {
-    return (connector as StarknetkitCompoundConnector).connector
-  }
-  return connector
-}
-
-export function findConnectorById(
-  connectors: (StarknetkitConnector | StarknetkitCompoundConnector)[],
-  id: string | null,
-) {
-  const connector = connectors.find((c) => getConnector(c).id === id)
-
-  if (!connector) {
-    return null
-  }
-  return getConnector(connector)
-}
-
 /**
  *
  * @param [modalMode="canAsk"] - Choose connection behavior:
@@ -109,6 +86,7 @@ export const connect = async ({
       if (connector && resultType === "wallet") {
         connectorData = await connector.connect({
           silent_mode: true,
+          onlyQRCode: true,
         })
       }
 
@@ -141,7 +119,11 @@ export const connect = async ({
       let connectorData: ConnectorData | null = null
 
       if (resultType === "wallet") {
-        connectorData = (await connector?.connect()) ?? null
+        connectorData =
+          (await connector?.connect({
+            onlyQRCode: true,
+            silent_mode: false,
+          })) ?? null
       }
 
       if (connector) {
@@ -166,36 +148,9 @@ export const connect = async ({
     customOrder: connectors ? connectors?.length > 0 : false,
   })
 
-  const getTarget = (): ShadowRoot => {
-    const modalId = "starknetkit-modal-container"
-    const existingElement = document.getElementById(modalId)
-
-    if (existingElement) {
-      if (existingElement.shadowRoot) {
-        // element already exists, use the existing as target
-        return existingElement.shadowRoot
-      }
-      // element exists but shadowRoot cannot be accessed
-      // delete the element and create new
-      existingElement.remove()
-    }
-
-    const element = document.createElement("div")
-    // set id for future retrieval
-    element.id = modalId
-    document.body.appendChild(element)
-    const target = element.attachShadow({ mode: "open" })
-
-    const styleElement = document.createElement("style")
-    styleElement.textContent = css
-    target.appendChild(styleElement)
-
-    return target
-  }
-
   return new Promise((resolve, reject) => {
     const modal = new Modal({
-      target: getTarget(),
+      target: getModalTarget(),
       props: {
         dappName,
         // callback: async (connector: StarknetkitConnector | null) => {
@@ -226,6 +181,59 @@ export const connect = async ({
         //   }
         // },
         // theme: modalTheme === "system" ? null : (modalTheme ?? null),
+        callback: async (
+          modalWallet: ModalWallet | null,
+          useFallback: boolean = false,
+        ) => {
+          try {
+            if (!modalWallet) {
+              throw new Error("Connector error")
+            }
+
+            selectedConnector = extractConnector(
+              modalWallet.connector,
+              useFallback,
+            )
+
+            modal.$set({ selectedWallet: modalWallet })
+
+            if (resultType === "wallet") {
+              if (selectedConnector?.name === "Argent (mobile)") {
+                modal.$set({ layout: Layout.qrCode })
+              } else {
+                modal.$set({ layout: Layout.connecting })
+              }
+
+              const connectorData =
+                (await selectedConnector?.connect({
+                  onlyQRCode: true,
+                  silent_mode: false,
+                })) ?? null
+              if (selectedConnector !== null) {
+                setStarknetLastConnectedWallet(selectedConnector.id)
+              }
+
+              resolve({
+                connector: selectedConnector,
+                connectorData,
+                wallet: selectedConnector?.wallet ?? null,
+              })
+            } else {
+              resolve({
+                connector: selectedConnector,
+                wallet: null,
+                connectorData: null,
+              })
+            }
+
+            modal.$set({ layout: Layout.success })
+            setTimeout(() => modal.$destroy(), 3000)
+          } catch (error) {
+            modal.$set({ layout: Layout.failure })
+            reject(error)
+          }
+        },
+        theme: modalTheme === "system" ? null : (modalTheme ?? null),
         modalWallets,
       },
     })

From 56083f4101a7351eca0ab4eba2d3c2167422cbf2 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 30 Oct 2024 17:20:42 +0100
Subject: [PATCH 43/88] chore: remove redundant code

---
 src/main.ts | 30 ------------------------------
 1 file changed, 30 deletions(-)

diff --git a/src/main.ts b/src/main.ts
index dceaa17..3933937 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -138,8 +138,6 @@ export const connect = async ({
     } // otherwise fallback to modal
   }
 
-  // console.log("connectors?.length", connectors?.length)
-
   const modalWallets: ModalWallet[] = mapModalWallets({
     availableConnectors,
     installedWallets,
@@ -153,34 +151,6 @@ export const connect = async ({
       target: getModalTarget(),
       props: {
         dappName,
-        // callback: async (connector: StarknetkitConnector | null) => {
-        //   try {
-        //     selectedConnector = connector
-        //     if (resultType === "wallet") {
-        //       const connectorData = (await connector?.connect()) ?? null
-        //       if (connector !== null) {
-        //         setStarknetLastConnectedWallet(connector.id)
-        //       }
-        //
-        //       resolve({
-        //         connector,
-        //         connectorData,
-        //         wallet: connector?.wallet ?? null,
-        //       })
-        //     } else {
-        //       resolve({
-        //         connector,
-        //         wallet: null,
-        //         connectorData: null,
-        //       })
-        //     }
-        //   } catch (error) {
-        //     reject(error)
-        //   } finally {
-        //     setTimeout(() => modal.$destroy())
-        //   }
-        // },
-        // theme: modalTheme === "system" ? null : (modalTheme ?? null),
         callback: async (
           modalWallet: ModalWallet | null,
           useFallback: boolean = false,

From 113a1a39fbb1ed328aaf1b93d7dfbc78d2c304eb Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 09:37:09 +0100
Subject: [PATCH 44/88] chore: throw error if html nodes do not exist

---
 .../argent/argentMobile/modal/argentModal.ts           | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/connectors/argent/argentMobile/modal/argentModal.ts b/src/connectors/argent/argentMobile/modal/argentModal.ts
index 8a6808d..2c93b03 100644
--- a/src/connectors/argent/argentMobile/modal/argentModal.ts
+++ b/src/connectors/argent/argentMobile/modal/argentModal.ts
@@ -127,11 +127,9 @@ class ArgentModal {
     const shadow = document.querySelector("#starknetkit-modal-container")
 
     if (shadow?.shadowRoot) {
-      // TODO handle else
       const slot = shadow.shadowRoot.querySelector(".qr-code-slot")
 
       if (slot) {
-        // TODO handle else
         slot.innerHTML = overlayHtmlOnlyQR
         document.body.appendChild(overlay)
         this.overlay = overlay
@@ -142,7 +140,11 @@ class ArgentModal {
         for (const [key, value] of Object.entries(iframeStyleOnlyQR)) {
           iframe.style[key as any] = value
         }
+      } else {
+        throw new Error("Cannot find QR code slot")
       }
+    } else {
+      throw new Error("Cannot find modal")
     }
   }
 
@@ -189,12 +191,12 @@ class ArgentModal {
         dappName: modalWallet.dappName,
         showBackButton: false,
         selectedWallet: modalWallet,
-        callback: async (wallet) => {
+        callback: async (wallet: ModalWallet | null) => {
           try {
             const connector = wallet?.connector as StarknetkitConnector
 
             this.standaloneConnectorModal?.$destroy()
-            await connector.connect()
+            await connector?.connect()
           } catch (err) {
             this.standaloneConnectorModal?.$set({ layout: Layout.failure })
           }

From c23616c06b6676477cfaedb95fa6d2a0f9b81af2 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 09:37:42 +0100
Subject: [PATCH 45/88] chore: fix ts error

---
 src/modal/Modal.svelte | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index bdf295b..cffa3a4 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -34,7 +34,7 @@
 
   export let showBackButton: boolean = true
   $: showFallback = Boolean(
-    selectedWallet?.connector.isCompoundConnector
+    (selectedWallet?.connector as StarknetkitCompoundConnector).isCompoundConnector
     && (selectedWallet?.connector as StarknetkitCompoundConnector)?.fallbackConnector
   );
 

From 7a4425809c9abdbbc5a74c7a0112c9730a81304a Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 10:12:53 +0100
Subject: [PATCH 46/88] chore: add installed property to ModalWallet, handle
 install screen

---
 src/helpers/mapModalWallets.ts | 7 ++++++-
 src/main.ts                    | 8 ++++++--
 src/types/modal.ts             | 1 +
 3 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/src/helpers/mapModalWallets.ts b/src/helpers/mapModalWallets.ts
index dc7880b..5354881 100644
--- a/src/helpers/mapModalWallets.ts
+++ b/src/helpers/mapModalWallets.ts
@@ -32,6 +32,7 @@ export function getModalWallet(
     id: connector.id,
     icon: connector.icon,
     connector: connectorOrCompoundConnector,
+    installed: true,
     title:
       "title" in connector && isString(connector.title)
         ? connector.title
@@ -74,6 +75,8 @@ export const mapModalWallets = ({
 
   const connectors = orderedByInstall
     .map<ModalWallet | null>((_c) => {
+      const isCompoundConnector = (_c as StarknetkitCompoundConnector)
+        .isCompoundConnector
       const c = extractConnector(_c)
 
       const installed = installedWallets.find((w) => w.id === c?.id)
@@ -81,7 +84,7 @@ export const mapModalWallets = ({
         let icon
         let name
 
-        if ((_c as StarknetkitCompoundConnector).isCompoundConnector) {
+        if (isCompoundConnector) {
           icon = _c.icon
           name = _c.name
         } else {
@@ -100,6 +103,7 @@ export const mapModalWallets = ({
           id: installed.id,
           icon,
           connector: _c,
+          installed: true,
           downloads: discoveryWallets.find((d) => d.id === c?.id)?.downloads,
         }
       }
@@ -120,6 +124,7 @@ export const mapModalWallets = ({
           id: discovery.id,
           icon: { light: discoveryIcon, dark: discoveryIcon },
           connector: _c,
+          installed: false,
           download: downloads[storeVersion as keyof typeof downloads],
           downloads: downloads,
         }
diff --git a/src/main.ts b/src/main.ts
index 3933937..78391b6 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -160,13 +160,17 @@ export const connect = async ({
               throw new Error("Connector error")
             }
 
+            modal.$set({ selectedWallet: modalWallet })
+
+            if (!modalWallet.installed) {
+              return modal.$set({ layout: Layout.extensionDownloadList })
+            }
+
             selectedConnector = extractConnector(
               modalWallet.connector,
               useFallback,
             )
 
-            modal.$set({ selectedWallet: modalWallet })
-
             if (resultType === "wallet") {
               if (selectedConnector?.name === "Argent (mobile)") {
                 modal.$set({ layout: Layout.qrCode })
diff --git a/src/types/modal.ts b/src/types/modal.ts
index b178acb..c6b36cd 100644
--- a/src/types/modal.ts
+++ b/src/types/modal.ts
@@ -41,6 +41,7 @@ export type ModalWallet = {
   name: string
   id: string
   icon: ConnectorIcons
+  installed: boolean
   download?: string
   downloads?: Record<string, string>
   subtitle?: string

From b9acfbc8168151495b2a054d12b4a53ad4bdaa5a Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 10:16:43 +0100
Subject: [PATCH 47/88] chore: fix ts error

---
 src/main.ts | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/main.ts b/src/main.ts
index 78391b6..189d78a 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -163,7 +163,8 @@ export const connect = async ({
             modal.$set({ selectedWallet: modalWallet })
 
             if (!modalWallet.installed) {
-              return modal.$set({ layout: Layout.extensionDownloadList })
+              modal.$set({ layout: Layout.extensionDownloadList })
+              return
             }
 
             selectedConnector = extractConnector(

From 6425b27a774c5805db7232c90472d26bc3d2f9c1 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 10:24:09 +0100
Subject: [PATCH 48/88] chore: improve check

---
 src/main.ts | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/main.ts b/src/main.ts
index 189d78a..7a3213b 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -12,6 +12,7 @@ import {
 import { DEFAULT_WEBWALLET_URL } from "./connectors/webwallet/constants"
 
 import { Connector, ConnectorData, StarknetkitConnector } from "./connectors"
+import { ArgentMobileBaseConnector } from "./connectors/argent/argentMobile"
 import { defaultConnectors } from "./helpers/defaultConnectors"
 import { getStoreVersionFromBrowser } from "./helpers/getStoreVersionFromBrowser"
 import {
@@ -173,7 +174,7 @@ export const connect = async ({
             )
 
             if (resultType === "wallet") {
-              if (selectedConnector?.name === "Argent (mobile)") {
+              if (selectedConnector instanceof ArgentMobileBaseConnector) {
                 modal.$set({ layout: Layout.qrCode })
               } else {
                 modal.$set({ layout: Layout.connecting })

From e9917473efbacf5c6abbc8ef062ffbe60d393f1a Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 10:24:31 +0100
Subject: [PATCH 49/88] fix: using wrong connector name/icon

---
 src/helpers/mapModalWallets.ts | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/helpers/mapModalWallets.ts b/src/helpers/mapModalWallets.ts
index 5354881..94cd0c4 100644
--- a/src/helpers/mapModalWallets.ts
+++ b/src/helpers/mapModalWallets.ts
@@ -27,10 +27,19 @@ export function getModalWallet(
   const connector = extractConnector(
     connectorOrCompoundConnector,
   ) as StarknetkitConnector
+
+  const isCompoundConnector = (
+    connectorOrCompoundConnector as StarknetkitCompoundConnector
+  ).isCompoundConnector
+
   return {
-    name: connector.name,
+    name: isCompoundConnector
+      ? connectorOrCompoundConnector.name
+      : connector.name,
     id: connector.id,
-    icon: connector.icon,
+    icon: isCompoundConnector
+      ? connectorOrCompoundConnector.icon
+      : connector.icon,
     connector: connectorOrCompoundConnector,
     installed: true,
     title:

From b3f3ff4058553169eb8b0c993e7c71601ce3ba3c Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 11:38:56 +0100
Subject: [PATCH 50/88] chore: temporarily remove `files`

---
 package.json | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/package.json b/package.json
index 634cfd3..5dc680a 100644
--- a/package.json
+++ b/package.json
@@ -66,9 +66,6 @@
   "main": "./dist/starknetkit.cjs",
   "module": "./dist/starknetkit.js",
   "types": "./dist/starknetkit.d.ts",
-  "files": [
-    "dist"
-  ],
   "scripts": {
     "build": "vite build",
     "check": "svelte-check --tsconfig ./tsconfig.json",

From 4f1f5a83baf75486c4c8be788c0439a1b963d4ba Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 12:09:29 +0100
Subject: [PATCH 51/88] chore: fix comment

---
 src/connectors/argent/argentMobile/modal/argentModal.ts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/connectors/argent/argentMobile/modal/argentModal.ts b/src/connectors/argent/argentMobile/modal/argentModal.ts
index 2c93b03..8f32dd2 100644
--- a/src/connectors/argent/argentMobile/modal/argentModal.ts
+++ b/src/connectors/argent/argentMobile/modal/argentModal.ts
@@ -148,7 +148,7 @@ class ArgentModal {
     }
   }
 
-  // TODO handle this
+  // TODO - SK-47 - handle this
   public showApprovalModal(_: RequestArguments): void {
     if (device === "desktop") {
       this.showModalOld({

From 2eb258ed3c4ceea9327f49f48e647579c7d3870f Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 13:21:45 +0100
Subject: [PATCH 52/88] chore: fix vite build errors

---
 src/main.ts          |  3 ++-
 src/modal/Modal.d.ts | 25 +++++++++++++++++++++++++
 2 files changed, 27 insertions(+), 1 deletion(-)
 create mode 100644 src/modal/Modal.d.ts

diff --git a/src/main.ts b/src/main.ts
index 7a3213b..29c46d1 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -24,6 +24,7 @@ import { extractConnector, findConnectorById } from "./helpers/connector"
 import { getModalTarget } from "./helpers/modal"
 
 import Modal from "./modal/Modal.svelte"
+import { ModalInstance } from "./modal/Modal"
 
 let selectedConnector: StarknetkitConnector | null = null
 
@@ -212,7 +213,7 @@ export const connect = async ({
         theme: modalTheme === "system" ? null : (modalTheme ?? null),
         modalWallets,
       },
-    })
+    }) as ModalInstance // Prevents vite build errors
   })
 }
 
diff --git a/src/modal/Modal.d.ts b/src/modal/Modal.d.ts
new file mode 100644
index 0000000..691379d
--- /dev/null
+++ b/src/modal/Modal.d.ts
@@ -0,0 +1,25 @@
+import { Callback, Layout, ModalWallet, Theme } from "../types/modal"
+
+declare namespace svelte.JSX {
+  interface IntrinsicElements {
+    Modal: svelte.JSX.ModalProps
+  }
+}
+
+interface Modal extends svelte.ComponentType<ModalProps> {}
+
+interface ModalProps {
+  dappName?: string
+  layout?: Layout
+  modalWallets?: ModalWallet[]
+  selectedWallet?: ModalWallet | null
+  showBackButton?: boolean
+  callback?: Callback
+  theme?: Theme
+  darkModeControlClass?: string
+}
+
+interface ModalInstance extends SvelteComponent {
+  $set(props: Partial<ModalProps>): void
+  $destroy(): void
+}

From 41ab24192c3594c97898d1723d49e0a3c09375c7 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 14:02:58 +0100
Subject: [PATCH 53/88] chore: take back `files` prop

---
 package.json | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/package.json b/package.json
index 5dc680a..6f13536 100644
--- a/package.json
+++ b/package.json
@@ -71,6 +71,9 @@
     "check": "svelte-check --tsconfig ./tsconfig.json",
     "dev": "vite build --watch"
   },
+  "files": [
+    "dist"
+  ],
   "dependencies": {
     "@argent/x-ui": "^1.70.1",
     "@starknet-io/get-starknet": "^4.0.0",

From 7a8a75e9d425be3afe7cd4c4fc6279fd77c7b93b Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 14:31:36 +0100
Subject: [PATCH 54/88] chore: add `beta` to push triggered branches

---
 .github/workflows/release.yml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 46615dc..3c3c24d 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -4,6 +4,7 @@ on:
     branches:
       - develop
       - main
+      - beta
       - hotfix\/v[0-9]+.[0-9]+.[0-9]+
 
 jobs:

From 92d522f37bbfbed23d00914e9d20ecd5c8d3c76b Mon Sep 17 00:00:00 2001
From: semantic-release-bot <semantic-release-bot@martynus.net>
Date: Thu, 31 Oct 2024 13:37:39 +0000
Subject: [PATCH 55/88] chore(release): 2.4.0-beta.1 [skip ci]

# [2.4.0-beta.1](https://github.com/argentlabs/starknetkit/compare/v2.3.2...v2.4.0-beta.1) (2024-10-31)

### Bug Fixes

* adapt type external ([61ef1f0](https://github.com/argentlabs/starknetkit/commit/61ef1f0f57b34f1f63d7a8cbcda14baf58d33572))
* add missing tailwind's color tokens from `x-ui` ([1202fa3](https://github.com/argentlabs/starknetkit/commit/1202fa324ab73b845a460c5cef00849f3238910b))
* color ([9039438](https://github.com/argentlabs/starknetkit/commit/9039438ba19ac47afff39a564eb491e9f6368f93))
* pass props and type `downloadLinks` ([6ff294e](https://github.com/argentlabs/starknetkit/commit/6ff294ef12c097b5a561a706117ce0480f37dd98))
* ts error ([a76c303](https://github.com/argentlabs/starknetkit/commit/a76c303bde13dd61cdb940bb02ffded4982efa8c))
* using wrong connector name/icon ([e991747](https://github.com/argentlabs/starknetkit/commit/e9917473efbacf5c6abbc8ef062ffbe60d393f1a))

### Features

* adapt modal to new features ([53d303e](https://github.com/argentlabs/starknetkit/commit/53d303e935d84cc65721996a935b75597750a134))
* add component for rendering icons ([c57a8d8](https://github.com/argentlabs/starknetkit/commit/c57a8d8201a3a919031fa867544f8d78e4d873ac))
* add new 1 button connector WIP ([6560d74](https://github.com/argentlabs/starknetkit/commit/6560d74560824be6deacbfeee6665c6941b801fa))
* add new prop to `ConnectOptions` ([966a9e7](https://github.com/argentlabs/starknetkit/commit/966a9e7b730c6a073f94f40f410a728d492e02c3))
* add new UI elements ([1b4066b](https://github.com/argentlabs/starknetkit/commit/1b4066b100fb4981d85dd424501fdf0dc5caa3ea))
* create helpers for connectors ([ea4008b](https://github.com/argentlabs/starknetkit/commit/ea4008bf71868977aef0bcb576d442b77f737f47))
* create modal helpers ([015dff2](https://github.com/argentlabs/starknetkit/commit/015dff20777506d7d61c171b4078ba1cc9368ced))
* handle new UI and only QR code approach ([c743c6d](https://github.com/argentlabs/starknetkit/commit/c743c6d3f5bdc8a6bed8871b595dc9e3ba2ea0a5))
* improve type StarknetkitCompoundConnector ([3fd36a7](https://github.com/argentlabs/starknetkit/commit/3fd36a77135a763f9b6795fbde64ed066311549c))
* programmatically show install extension section ([d571de8](https://github.com/argentlabs/starknetkit/commit/d571de8e6e11985ec721e156731f0c16a923de5c))
---
 package.json | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package.json b/package.json
index 6f13536..139fd44 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "starknetkit",
-  "version": "2.3.2",
+  "version": "2.4.0-beta.1",
   "repository": "github:argentlabs/starknetkit",
   "private": false,
   "browser": {

From 0e4aa84ba3be2983c178f272b745d63ac87382ed Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 31 Oct 2024 15:01:26 +0100
Subject: [PATCH 56/88] feat: export `StarknetkitCompoundConnector`

---
 src/main.ts | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/main.ts b/src/main.ts
index 29c46d1..5350526 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -11,7 +11,12 @@ import {
 } from "./types/modal"
 import { DEFAULT_WEBWALLET_URL } from "./connectors/webwallet/constants"
 
-import { Connector, ConnectorData, StarknetkitConnector } from "./connectors"
+import {
+  Connector,
+  ConnectorData,
+  StarknetkitConnector,
+  StarknetkitCompoundConnector,
+} from "./connectors"
 import { ArgentMobileBaseConnector } from "./connectors/argent/argentMobile"
 import { defaultConnectors } from "./helpers/defaultConnectors"
 import { getStoreVersionFromBrowser } from "./helpers/getStoreVersionFromBrowser"
@@ -244,6 +249,7 @@ export type {
   DisconnectOptions,
   StarknetWindowObject,
   StarknetkitConnector,
+  StarknetkitCompoundConnector,
   defaultConnectors as starknetkitDefaultConnectors,
   ConnectOptions,
   ConnectOptionsWithConnectors,

From a2d54235dadfa1df1481a9b797b8b14f56211051 Mon Sep 17 00:00:00 2001
From: semantic-release-bot <semantic-release-bot@martynus.net>
Date: Thu, 31 Oct 2024 14:02:18 +0000
Subject: [PATCH 57/88] chore(release): 2.4.0-beta.2 [skip ci]

# [2.4.0-beta.2](https://github.com/argentlabs/starknetkit/compare/v2.4.0-beta.1...v2.4.0-beta.2) (2024-10-31)

### Features

* export `StarknetkitCompoundConnector` ([0e4aa84](https://github.com/argentlabs/starknetkit/commit/0e4aa84ba3be2983c178f272b745d63ac87382ed))
---
 package.json | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package.json b/package.json
index 139fd44..c4bfd88 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "starknetkit",
-  "version": "2.4.0-beta.1",
+  "version": "2.4.0-beta.2",
   "repository": "github:argentlabs/starknetkit",
   "private": false,
   "browser": {

From de4cae8e52144300e30d20c34b0ffb36daba1ddf Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Fri, 1 Nov 2024 10:11:29 +0100
Subject: [PATCH 58/88] fix: case when `window` is `undefined` in
 `getInjectedArgentX`

---
 src/connectors/argent/helpers/getInjectedArgentX.ts | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/connectors/argent/helpers/getInjectedArgentX.ts b/src/connectors/argent/helpers/getInjectedArgentX.ts
index 92d3497..21d46fd 100644
--- a/src/connectors/argent/helpers/getInjectedArgentX.ts
+++ b/src/connectors/argent/helpers/getInjectedArgentX.ts
@@ -1,6 +1,9 @@
 import type { StarknetWindowObject } from "@starknet-io/types-js"
 
 export function getInjectedArgentX() {
+  if (typeof window === "undefined") {
+    return undefined
+  }
   return window?.starknet_argentX as
     | (StarknetWindowObject & {
         isInAppBrowser: boolean

From fcf264dfa9e0a0ef003929a9278d15f3cec8b8be Mon Sep 17 00:00:00 2001
From: semantic-release-bot <semantic-release-bot@martynus.net>
Date: Fri, 1 Nov 2024 09:12:10 +0000
Subject: [PATCH 59/88] chore(release): 2.4.0-beta.3 [skip ci]

# [2.4.0-beta.3](https://github.com/argentlabs/starknetkit/compare/v2.4.0-beta.2...v2.4.0-beta.3) (2024-11-01)

### Bug Fixes

* case when `window` is `undefined` in `getInjectedArgentX` ([de4cae8](https://github.com/argentlabs/starknetkit/commit/de4cae8e52144300e30d20c34b0ffb36daba1ddf))
---
 package.json | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package.json b/package.json
index c4bfd88..943c678 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "starknetkit",
-  "version": "2.4.0-beta.2",
+  "version": "2.4.0-beta.3",
   "repository": "github:argentlabs/starknetkit",
   "private": false,
   "browser": {

From 5e7cef2eff583640ee6559de61220c940deaca9a Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Fri, 1 Nov 2024 10:44:28 +0100
Subject: [PATCH 60/88] fix: passing wrong theme to `DynamicIcon`

---
 src/modal/Modal.svelte | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index cffa3a4..a40dfcd 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -43,7 +43,7 @@
   let isInAppBrowser = isInArgentMobileAppBrowser()
 
   export let theme: Theme = "dark"
-  export let darkModeControlClass =  theme === "dark" ? "dark" : ""
+  export let darkModeControlClass =  (theme === "dark" ? "dark" : "") as Theme
 
   onMount(async () => {
     if (theme === "dark" || (theme == undefined && window.matchMedia("(prefers-color-scheme: dark)").matches)) {
@@ -93,7 +93,7 @@
       />
 
       {#if layout === Layout.walletList}
-        <WalletList walletList={modalWallets} {theme} {callback} />
+        <WalletList walletList={modalWallets} theme={darkModeControlClass} {callback} />
       {:else if layout === Layout.connecting}
         <Connecting
           walletName={selectedConnector?.name}
@@ -101,7 +101,7 @@
           handleFallback={() => callback(selectedWallet, true)}
         >
           {#if selectedConnector?.icon}
-            <DynamicIcon icon={selectedConnector.icon} theme={theme} />
+            <DynamicIcon icon={selectedConnector.icon} theme={darkModeControlClass} />
           {/if}
         </Connecting>
       {:else if layout === Layout.success}

From ff8305d39770a55dcb141853ba927bc0c26ce58a Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Fri, 1 Nov 2024 11:53:07 +0100
Subject: [PATCH 61/88] fix: logical error with modal closing

---
 src/main.ts | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/main.ts b/src/main.ts
index 5350526..03743d1 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -200,6 +200,9 @@ export const connect = async ({
                 connectorData,
                 wallet: selectedConnector?.wallet ?? null,
               })
+
+              modal.$set({ layout: Layout.success })
+              setTimeout(() => modal.$destroy(), 3000)
             } else {
               resolve({
                 connector: selectedConnector,
@@ -207,9 +210,6 @@ export const connect = async ({
                 connectorData: null,
               })
             }
-
-            modal.$set({ layout: Layout.success })
-            setTimeout(() => modal.$destroy(), 3000)
           } catch (error) {
             modal.$set({ layout: Layout.failure })
             reject(error)

From 96c06e190a8fe221b7101015130a1e002223a523 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Fri, 1 Nov 2024 13:59:18 +0100
Subject: [PATCH 62/88] fix: ignore ts error

---
 src/connectors/argent/argentMobile/modal/starknet/adapter.ts | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/connectors/argent/argentMobile/modal/starknet/adapter.ts b/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
index 64f93c5..387a2ae 100644
--- a/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
+++ b/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
@@ -166,10 +166,14 @@ export class StarknetAdapter
   }
 
   on: StarknetWindowObject["on"] = (event, handleEvent) => {
+    // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+    // @ts-ignore
     this.eventEmitter.on(event, handleEvent)
   }
 
   off: StarknetWindowObject["off"] = (event, handleEvent) => {
+    // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+    // @ts-ignore
     this.eventEmitter.off(event, handleEvent)
   }
 

From 3c716674ea897158eef3bea11e0930d4ab4a4e63 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Fri, 1 Nov 2024 13:59:57 +0100
Subject: [PATCH 63/88] fix: logical error, destroy modal if `resultType !==
 "wallet"`

---
 src/main.ts | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/main.ts b/src/main.ts
index 03743d1..7b12edf 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -209,6 +209,7 @@ export const connect = async ({
                 wallet: null,
                 connectorData: null,
               })
+              modal.$destroy()
             }
           } catch (error) {
             modal.$set({ layout: Layout.failure })

From e0669ce43a365f7d53d3230c51e890547f7645d3 Mon Sep 17 00:00:00 2001
From: semantic-release-bot <semantic-release-bot@martynus.net>
Date: Fri, 1 Nov 2024 13:00:55 +0000
Subject: [PATCH 64/88] chore(release): 2.4.0-beta.4 [skip ci]

# [2.4.0-beta.4](https://github.com/argentlabs/starknetkit/compare/v2.4.0-beta.3...v2.4.0-beta.4) (2024-11-01)

### Bug Fixes

* ignore ts error ([96c06e1](https://github.com/argentlabs/starknetkit/commit/96c06e190a8fe221b7101015130a1e002223a523))
* logical error with modal closing ([ff8305d](https://github.com/argentlabs/starknetkit/commit/ff8305d39770a55dcb141853ba927bc0c26ce58a))
* logical error, destroy modal if `resultType !== "wallet"` ([3c71667](https://github.com/argentlabs/starknetkit/commit/3c716674ea897158eef3bea11e0930d4ab4a4e63))
* passing wrong theme to `DynamicIcon` ([5e7cef2](https://github.com/argentlabs/starknetkit/commit/5e7cef2eff583640ee6559de61220c940deaca9a))
---
 package.json | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package.json b/package.json
index 943c678..31b0ec6 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "starknetkit",
-  "version": "2.4.0-beta.3",
+  "version": "2.4.0-beta.4",
   "repository": "github:argentlabs/starknetkit",
   "private": false,
   "browser": {

From 6457371538de38f739a5d8d9b5b84c9829662262 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 6 Nov 2024 12:16:56 +0100
Subject: [PATCH 65/88] fix: add missing `closeModalOld` for the old way of
 usage

---
 .../argent/argentMobile/modal/argentModal.ts       | 14 +++++++++++++-
 .../argent/argentMobile/modal/starknet/adapter.ts  |  4 ++--
 2 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/src/connectors/argent/argentMobile/modal/argentModal.ts b/src/connectors/argent/argentMobile/modal/argentModal.ts
index 8f32dd2..b073052 100644
--- a/src/connectors/argent/argentMobile/modal/argentModal.ts
+++ b/src/connectors/argent/argentMobile/modal/argentModal.ts
@@ -172,7 +172,6 @@ class ArgentModal {
     })
   }
 
-  // TODO - SK-47 - remove this
   public closeModal(success?: boolean) {
     const modal = this.standaloneConnectorModal
     if (success) {
@@ -183,6 +182,19 @@ class ArgentModal {
     }
   }
 
+  // TODO - SK-47 - remove this
+  public closeModalOld(success?: boolean) {
+    if (success) {
+      this.overlay
+        ?.querySelector("iframe")
+        ?.contentWindow?.postMessage("argent-login.success", "*")
+      this.popupWindow?.postMessage("argent-login.success", "*")
+      this.closingTimeout = setTimeout(this.close, 3400)
+    } else {
+      this.close()
+    }
+  }
+
   private showModal(urls: Urls, modalWallet: ModalWalletExtended) {
     this.standaloneConnectorModal = new Modal({
       target: getModalTarget(),
diff --git a/src/connectors/argent/argentMobile/modal/starknet/adapter.ts b/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
index 387a2ae..06dcedb 100644
--- a/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
+++ b/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
@@ -186,10 +186,10 @@ export class StarknetAdapter
       const chainId = this.formatChainId(this.chainId)
       argentModal.showApprovalModal(request)
       const response = await this.client.request({ topic, chainId, request })
-      argentModal.closeModal(true)
+      argentModal.closeModalOld(true)
       return response
     } catch (error) {
-      argentModal.closeModal()
+      argentModal.closeModalOld()
       if (error instanceof Error) {
         throw new Error(error.message)
       }

From 658fa46f59f503a997234fc7eedcf321f5034434 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 7 Nov 2024 10:10:05 +0100
Subject: [PATCH 66/88] chore: change `Argent` connector's constructor params

---
 src/connectors/argent/index.ts | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/connectors/argent/index.ts b/src/connectors/argent/index.ts
index 3e61276..520a06e 100644
--- a/src/connectors/argent/index.ts
+++ b/src/connectors/argent/index.ts
@@ -1,4 +1,4 @@
-import { injectedWalletIcons } from "../injected"
+import { InjectedConnectorOptions, injectedWalletIcons } from "../injected"
 import { ArgentX } from "../injected/argentX"
 import { getInjectedArgentX } from "./helpers/getInjectedArgentX"
 import {
@@ -15,7 +15,10 @@ function hasInjectedArgentX(): boolean {
   return Boolean(getInjectedArgentX())
 }
 
-type ArgentSettings = ArgentMobileConnectorOptions
+interface ArgentSettings {
+  extension?: Omit<InjectedConnectorOptions, "id">
+  mobile: ArgentMobileConnectorOptions
+}
 
 const ArgentIcon =
   "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9IkhpdG8gaW4gY29udGFpbmVyIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTE4Ljc5OTkgNS45MkgxMy4yMDAzQzEzLjAxMzIgNS45MiAxMi44NjMyIDYuMDc0MDIgMTIuODU5MiA2LjI2NTQ3QzEyLjc0NiAxMS42NDcgOS45OTQ3NyAxNi43NTQ2IDUuMjU5MyAyMC4zNzI0QzUuMTA4OTUgMjAuNDg3MiA1LjA3NDcgMjAuNzAzIDUuMTg0NjIgMjAuODU4NEw4LjQ2MDg3IDI1LjQ5NDNDOC41NzIzMyAyNS42NTIgOC43ODk1IDI1LjY4NzcgOC45NDIzNyAyNS41NzE4QzExLjkwMzMgMjMuMzI0NCAxNC4yODUgMjAuNjEzNCAxNi4wMDAxIDE3LjYwODVDMTcuNzE1MiAyMC42MTM0IDIwLjA5NyAyMy4zMjQ0IDIzLjA1OCAyNS41NzE4QzIzLjIxMDcgMjUuNjg3NyAyMy40Mjc5IDI1LjY1MiAyMy41Mzk1IDI1LjQ5NDNMMjYuODE1NyAyMC44NTg0QzI2LjkyNTUgMjAuNzAzIDI2Ljg5MTIgMjAuNDg3MiAyNi43NDEgMjAuMzcyNEMyMi4wMDU0IDE2Ljc1NDYgMTkuMjU0MiAxMS42NDcgMTkuMTQxMiA2LjI2NTQ3QzE5LjEzNzEgNi4wNzQwMiAxOC45ODcgNS45MiAxOC43OTk5IDUuOTJaIiBmaWxsPSIjRkY4NzVCIi8+CjwvZz4KPC9zdmc+Cg=="
@@ -42,9 +45,10 @@ export class Argent
 
     this.argentX = new ArgentX({
       icon: injectedWalletIcons.argentX,
+      ...settings?.extension,
     })
     this.argentMobile = new ArgentMobileBaseConnector({
-      ...settings,
+      ...settings.mobile,
     })
 
     if (hasInjectedArgentX() || isInArgentMobileAppBrowser()) {

From 024590416b671f29fa76a6d106f8fa87c83dce59 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Thu, 7 Nov 2024 10:10:53 +0100
Subject: [PATCH 67/88] fix: usage of `Argent` connector

---
 src/helpers/defaultConnectors.ts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/helpers/defaultConnectors.ts b/src/helpers/defaultConnectors.ts
index e71ad81..d05ff26 100644
--- a/src/helpers/defaultConnectors.ts
+++ b/src/helpers/defaultConnectors.ts
@@ -28,7 +28,7 @@ export const defaultConnectors = ({
     | StarknetkitCompoundConnector
   )[] = []
 
-  defaultConnectors.push(new Argent(argentMobileOptions))
+  defaultConnectors.push(new Argent({ mobile: argentMobileOptions }))
 
   if (!isSafari) {
     defaultConnectors.push(new Braavos())

From 3cd44210434371eec4e56b95feae6240275321ca Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Fri, 8 Nov 2024 11:59:43 +0100
Subject: [PATCH 68/88] chore: implement `getLayout` function on modal

---
 src/modal/Modal.d.ts   | 1 +
 src/modal/Modal.svelte | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/src/modal/Modal.d.ts b/src/modal/Modal.d.ts
index 691379d..0252472 100644
--- a/src/modal/Modal.d.ts
+++ b/src/modal/Modal.d.ts
@@ -22,4 +22,5 @@ interface ModalProps {
 interface ModalInstance extends SvelteComponent {
   $set(props: Partial<ModalProps>): void
   $destroy(): void
+  getLayout: () => Layout
 }
diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index a40dfcd..dbeb81f 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -27,6 +27,9 @@
   function setLayout(newLayout: Layout): void {
     layout = newLayout
   }
+  export function getLayout() {
+    return layout
+  }
 
   export let modalWallets: ModalWallet[] = []
   export let selectedWallet: ModalWallet | null = null

From 093f63773be937b39c35f4dc0e1c85817f0a7d51 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Fri, 8 Nov 2024 12:01:00 +0100
Subject: [PATCH 69/88] chore: show `failure` layout only on
 `connecting`/`qrCode` layouts

---
 src/main.ts | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/main.ts b/src/main.ts
index 7b12edf..f151f39 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -212,7 +212,11 @@ export const connect = async ({
               modal.$destroy()
             }
           } catch (error) {
-            modal.$set({ layout: Layout.failure })
+            if (
+              [Layout.connecting, Layout.qrCode].includes(modal.getLayout())
+            ) {
+              modal.$set({ layout: Layout.failure })
+            }
             reject(error)
           }
         },

From 4649369c85d0c87503343e2bae4ed60c1ff67777 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 09:58:21 +0100
Subject: [PATCH 70/88] chore: delete redundant component

---
 .../ExtensionDownloadItem.svelte              | 19 -----------
 .../ExtensionDownloadList.svelte              | 34 -------------------
 2 files changed, 53 deletions(-)
 delete mode 100644 src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte
 delete mode 100644 src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte

diff --git a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte
deleted file mode 100644
index b72f24d..0000000
--- a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadItem.svelte
+++ /dev/null
@@ -1,19 +0,0 @@
-<script lang="ts">
-  import LargeButton from "../../components/buttons/LargeButton.svelte";
-
-  export let browser: string
-  export let href: string
-  export let extensionName: string = ""
-</script>
-
-<li>
-    <LargeButton as="a" href={href}>
-        <div class="w-full flex flex-row-reverse justify-end items-center gap-2">
-            <p class="text-surface-inverted flex flex-col text-left">
-                <span class="text-l2">Download {extensionName} for</span>
-                <span class="text-p3">{browser}</span>
-            </p>
-            <slot />
-        </div>
-    </LargeButton>
-</li>
diff --git a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte b/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
deleted file mode 100644
index 6f94e88..0000000
--- a/src/modal/layouts/ExtensionDownloadList/ExtensionDownloadList.svelte
+++ /dev/null
@@ -1,34 +0,0 @@
-<script lang="ts">
-  import ChromeIcon from "../../components/icons/brands/ChromeIcon.svelte";
-  import FirefoxIcon from "../../components/icons/brands/FirefoxIcon.svelte";
-  import EdgeIcon from "../../components/icons/brands/EdgeIcon.svelte";
-  import BraveIcon from "../../components/icons/brands/BraveIcon.svelte";
-  import ExtensionDownloadItem from "./ExtensionDownloadItem.svelte";
-
-  export let extensionName: string = ""
-
-  export let downloadLinks: Record<string, string> | undefined = {
-    chrome: "",
-    edge: "",
-    firefox: "",
-  }
-</script>
-
-<section>
-  {#if downloadLinks}
-    <ul class="flex flex-col gap-3">
-      {#if downloadLinks.chrome}
-        <ExtensionDownloadItem href={downloadLinks.chrome} {extensionName} browser="Google Chrome"><ChromeIcon size="28" /></ExtensionDownloadItem>
-      {/if}
-      {#if downloadLinks.firefox}
-        <ExtensionDownloadItem href={downloadLinks.firefox} {extensionName} browser="Mozilla Firefox"><FirefoxIcon size="28" /></ExtensionDownloadItem>
-      {/if}
-      {#if downloadLinks.edge}
-        <ExtensionDownloadItem href={downloadLinks.edge} {extensionName} browser="Edge"><EdgeIcon size="28" /></ExtensionDownloadItem>
-      {/if}
-      {#if downloadLinks.chrome}
-        <ExtensionDownloadItem href={downloadLinks.chrome} {extensionName} browser="Brave"><BraveIcon size="28" /></ExtensionDownloadItem>
-      {/if}
-    </ul>
-  {/if}
-</section>
\ No newline at end of file

From 5279df0bbcf61a3419efe72cd2c76457cce5b4d2 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 11:19:03 +0100
Subject: [PATCH 71/88] refactor: remove redundant `Layout` prop

---
 src/types/modal.ts | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/types/modal.ts b/src/types/modal.ts
index c6b36cd..97bff1f 100644
--- a/src/types/modal.ts
+++ b/src/types/modal.ts
@@ -18,8 +18,7 @@ export enum Layout {
   success = "success",
   failure = "failure",
   qrCode = "qrCode",
-  argentDownload = "argentDownload",
-  extensionDownloadList = "extensionDownloadList",
+  download = "download",
 }
 
 export interface ConnectOptions extends GetWalletOptions {

From 225e391c67f15ba3933a6f5f2661df97ebc2584a Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 11:20:14 +0100
Subject: [PATCH 72/88] refactor: generalize `ArgentDownload` component

---
 .../DownloadWallet/DownloadWallet.svelte      | 85 +++++++++++++++++++
 .../DownloadWalletItem.svelte}                | 12 +--
 .../graphics/ArgentMobileGraphic.svelte}      |  0
 .../graphics/ArgentXGraphic.svelte            |  0
 .../graphics/GeneralizedGraphic.svelte        | 43 ++++++++++
 .../ArgentDownload/ArgentDownload.svelte      | 56 ------------
 6 files changed, 134 insertions(+), 62 deletions(-)
 create mode 100644 src/modal/layouts/DownloadWallet/DownloadWallet.svelte
 rename src/modal/layouts/{argent/ArgentDownload/ArgentDownloadItem.svelte => DownloadWallet/DownloadWalletItem.svelte} (71%)
 rename src/modal/layouts/{argent/ArgentDownload/graphics/MobileGraphic.svelte => DownloadWallet/graphics/ArgentMobileGraphic.svelte} (100%)
 rename src/modal/layouts/{argent/ArgentDownload => DownloadWallet}/graphics/ArgentXGraphic.svelte (100%)
 create mode 100644 src/modal/layouts/DownloadWallet/graphics/GeneralizedGraphic.svelte
 delete mode 100644 src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte

diff --git a/src/modal/layouts/DownloadWallet/DownloadWallet.svelte b/src/modal/layouts/DownloadWallet/DownloadWallet.svelte
new file mode 100644
index 0000000..10b7441
--- /dev/null
+++ b/src/modal/layouts/DownloadWallet/DownloadWallet.svelte
@@ -0,0 +1,85 @@
+<script lang="ts">
+  import { StoreVersion } from "../../../types/modal"
+
+  import AppleIcon from "../../components/icons/brands/AppleIcon.svelte";
+  import PlayStore from "../../components/icons/brands/PlayStore.svelte";
+  import ChromeIcon from "../../components/icons/brands/ChromeIcon.svelte";
+  import EdgeIcon from "../../components/icons/brands/EdgeIcon.svelte"
+  import FirefoxIcon from "../../components/icons/brands/FirefoxIcon.svelte"
+
+  import ArgentMobileGraphic from "./graphics/ArgentMobileGraphic.svelte";
+  import ArgentXGraphic from "./graphics/ArgentXGraphic.svelte";
+  import GeneralizedGraphic from "./graphics/GeneralizedGraphic.svelte"
+
+  import ArgentDownloadItem from "./DownloadWalletItem.svelte";
+  import Link from "../../components/buttons/Link.svelte";
+  import HorizontalLine from "../../components/HorizontalLine.svelte";
+
+  export let isArgent: boolean = false;
+  export let extensionName: string = ""
+  export let store: StoreVersion | null;
+  export let storeLink: string | undefined;
+
+  const storeData = ({ // @dev - Be mindful of name property length, it might break the UI
+    chrome: {
+      name: "Chrome",
+      icon: ChromeIcon,
+    },
+    edge: {
+      name: "Edge",
+      icon: EdgeIcon,
+    },
+    firefox: {
+      name: "Firefox",
+      icon: FirefoxIcon,
+    }
+  })
+</script>
+
+<section class="flex flex-col flex-grow justify-between">
+  <div class="flex flex-col gap-2">
+    {#if isArgent}
+      <ArgentDownloadItem title="Argent mobile" subtitle="Download Argent wallet on your mobile." link="https://www.argent.xyz/app">
+        <svelte:fragment slot="icons">
+          <AppleIcon />
+          <PlayStore />
+        </svelte:fragment>
+
+        <svelte:fragment slot="button">
+          Download
+        </svelte:fragment>
+
+        <svelte:fragment slot="graphic">
+          <ArgentMobileGraphic />
+        </svelte:fragment>
+      </ArgentDownloadItem>
+    {/if}
+
+    {#if store && storeLink}
+      <ArgentDownloadItem title={extensionName} subtitle={`Install ${extensionName} extension.`} link={storeLink}>
+        <svelte:fragment slot="button">
+          <div class="flex gap-1 items-center whitespace-nowrap">
+            <svelte:component this={storeData[store].icon} /> Install for {storeData[store].name}
+          </div>
+        </svelte:fragment>
+
+        <svelte:fragment slot="graphic">
+          {#if isArgent}
+            <ArgentXGraphic />
+          {:else}
+            <GeneralizedGraphic />
+          {/if}
+        </svelte:fragment>
+      </ArgentDownloadItem>
+    {/if}
+  </div>
+
+  <footer class="flex flex-col gap-4">
+    {#if isArgent}
+      <HorizontalLine />
+      <p class="text-[13px] text-secondary">If you want to learn more about argent visit our site:
+        <Link as="a" className="text-brand" href="https://www.argent.xyz/">www.argent.xyz</Link>
+      </p>
+    {/if}
+  </footer>
+</section>
\ No newline at end of file
diff --git a/src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte b/src/modal/layouts/DownloadWallet/DownloadWalletItem.svelte
similarity index 71%
rename from src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte
rename to src/modal/layouts/DownloadWallet/DownloadWalletItem.svelte
index d6dcf29..1aba606 100644
--- a/src/modal/layouts/argent/ArgentDownload/ArgentDownloadItem.svelte
+++ b/src/modal/layouts/DownloadWallet/DownloadWalletItem.svelte
@@ -1,5 +1,5 @@
 <script lang="ts">
-  import Button from "../../../components/buttons/Button.svelte";
+  import Button from "../../components/buttons/Button.svelte";
 
   export let title: string
   export let subtitle: string
@@ -8,12 +8,12 @@
 </script>
 
 <div class="flex flex-row gap-3 px-4 py-3 rounded-xl bg-surface-elevated">
-  <div class="flex flex-col gap-3 flex-grow">
+  <div class="flex flex-col gap-3">
     <div class="flex flex-col gap-1 text-left">
-      <h4 class="text-heading5 text-primary">{title}</h4>
+      <h4 class="text-heading5 text-primary capitalize">{title}</h4>
       <p class="text-l1 text-secondary-web">{subtitle}</p>
     </div>
-    <div class="flex gap-3">
+    <div class="flex gap-3 text-primary">
       <slot name="icons" />
     </div>
     <Button
@@ -25,9 +25,9 @@
           handleClick()
         }
       }}
-      className="bg-button-secondary text-primary hover:bg-button-secondary-hover flex w-[140px] h-[32px] text-b3 rounded-3xl justify-center items-center"
+      className="bg-button-secondary text-primary hover:bg-button-secondary-hover flex w-full h-[32px] text-b3 rounded-3xl justify-center items-center"
     >
-      Download
+      <slot name="button" />
     </Button>
   </div>
   <div class="flex items-center">
diff --git a/src/modal/layouts/argent/ArgentDownload/graphics/MobileGraphic.svelte b/src/modal/layouts/DownloadWallet/graphics/ArgentMobileGraphic.svelte
similarity index 100%
rename from src/modal/layouts/argent/ArgentDownload/graphics/MobileGraphic.svelte
rename to src/modal/layouts/DownloadWallet/graphics/ArgentMobileGraphic.svelte
diff --git a/src/modal/layouts/argent/ArgentDownload/graphics/ArgentXGraphic.svelte b/src/modal/layouts/DownloadWallet/graphics/ArgentXGraphic.svelte
similarity index 100%
rename from src/modal/layouts/argent/ArgentDownload/graphics/ArgentXGraphic.svelte
rename to src/modal/layouts/DownloadWallet/graphics/ArgentXGraphic.svelte
diff --git a/src/modal/layouts/DownloadWallet/graphics/GeneralizedGraphic.svelte b/src/modal/layouts/DownloadWallet/graphics/GeneralizedGraphic.svelte
new file mode 100644
index 0000000..82f5712
--- /dev/null
+++ b/src/modal/layouts/DownloadWallet/graphics/GeneralizedGraphic.svelte
@@ -0,0 +1,43 @@
+<svg width="109" height="109" viewBox="0 0 109 109" fill="none" xmlns="http://www.w3.org/2000/svg">
+  <mask id="mask0_697_1274" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="109" height="109">
+    <ellipse cx="54.201" cy="54.2667" rx="53.9" ry="54.2667" fill="#F2F2F2"/>
+  </mask>
+  <g mask="url(#mask0_697_1274)">
+    <path d="M54.4182 108.477C84.171 108.477 108.29 84.1937 108.29 54.2386C108.29 24.2834 84.171 0 54.4182 0C24.6655 0 0.546143 24.2834 0.546143 54.2386C0.546143 84.1937 24.6655 108.477 54.4182 108.477Z" fill="#BFBFBF" fill-opacity="0.2"/>
+    <rect x="16.4709" y="21.7067" width="75.46" height="105.573" rx="4.9" fill="black"/>
+    <ellipse opacity="0.4" cx="54.2011" cy="44.3999" rx="9.31" ry="9.37333" fill="#6D6D6D"/>
+    <rect x="49.791" y="43.4133" width="5.39" height="1.97333" rx="0.986666" fill="#8C8C8C"/>
+    <rect x="56.6511" y="43.4133" width="1.96" height="1.97333" rx="0.98" fill="#8C8C8C"/>
+    <rect x="49.301" y="27.6266" width="10.29" height="1.48" rx="0.74" fill="#595959"/>
+    <rect x="21.3711" y="69.4933" width="65.66" height="11.76" rx="1.96" fill="#3A3A3A"/>
+    <rect x="31.1711" y="73.4133" width="18.62" height="1.47" rx="0.735" fill="#CDCDCD"/>
+    <rect x="31.1711" y="75.8633" width="34.3" height="1.47" rx="0.735" fill="#8C8C8C"/>
+    <path fill-rule="evenodd" clip-rule="evenodd" d="M83.52 75.373C83.52 74.0199 82.4231 72.923 81.07 72.923H78.2117C76.8586 72.923 75.7617 74.0199 75.7617 75.373C75.7617 76.7261 76.8586 77.823 78.2117 77.823H81.07C82.4231 77.823 83.52 76.7261 83.52 75.373Z" fill="#919191"/>
+    <g filter="url(#filter0_d_697_1274)">
+      <path fill-rule="evenodd" clip-rule="evenodd" d="M81.0701 77.4147C79.9426 77.4147 79.0285 76.5006 79.0285 75.373C79.0285 74.2454 79.9426 73.3314 81.0701 73.3314C82.1977 73.3314 83.1118 74.2454 83.1118 75.373C83.1118 76.5006 82.1977 77.4147 81.0701 77.4147Z" fill="#CDCDCD"/>
+    </g>
+    <path d="M24.8874 74.0835C24.9425 74.03 25.0173 74 25.0953 74H27.4473C27.5252 74 27.6 74.03 27.6552 74.0835C27.7103 74.137 27.7413 74.2095 27.7413 74.2851V75.1219C27.7413 76.4368 26.5897 76.8719 26.3658 76.9442C26.3046 76.9653 26.2379 76.9653 26.1768 76.9442C25.9528 76.8719 24.8013 76.4368 24.8013 75.1219V74.2851C24.8013 74.2095 24.8322 74.137 24.8874 74.0835Z" fill="#CDCDCD"/>
+    <rect x="21.3711" y="87.1334" width="65.66" height="6.86" rx="1.96" fill="#262626"/>
+    <rect x="30.6812" y="90.0734" width="34.79" height="1.47" rx="0.735" fill="#595959"/>
+    <path d="M81.1511 89.5834L82.1311 90.5634L81.1511 91.5434" stroke="#595959" stroke-width="0.98" stroke-linecap="round" stroke-linejoin="round"/>
+    <rect x="25.7812" y="89.5834" width="2.45" height="2.45" rx="0.49" fill="#595959"/>
+    <rect x="21.3711" y="96.9333" width="65.66" height="6.86" rx="1.96" fill="#262626"/>
+    <rect x="30.6812" y="99.8734" width="34.79" height="1.47" rx="0.735" fill="#595959"/>
+    <path d="M81.1511 99.3834L82.1311 100.363L81.1511 101.343" stroke="#595959" stroke-width="0.98" stroke-linecap="round" stroke-linejoin="round"/>
+    <rect x="25.7812" y="99.3834" width="2.45" height="2.45" rx="0.49" fill="#595959"/>
+    <rect x="21.3711" y="59.6934" width="65.66" height="6.86" rx="1.96" fill="#0F0F0F"/>
+    <rect x="39.0112" y="62.6334" width="30.87" height="1.47" rx="0.735" fill="#595959"/>
+    <rect x="80.1711" y="62.1434" width="2.45" height="2.45" rx="0.49" fill="#595959"/>
+  </g>
+  <defs>
+    <filter id="filter0_d_697_1274" x="78.7019" y="73.3314" width="4.73659" height="4.73665" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+      <feFlood flood-opacity="0" result="BackgroundImageFix"/>
+      <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
+      <feOffset dy="0.326667"/>
+      <feGaussianBlur stdDeviation="0.163333"/>
+      <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"/>
+      <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_697_1274"/>
+      <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_697_1274" result="shape"/>
+    </filter>
+  </defs>
+</svg>
diff --git a/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte b/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
deleted file mode 100644
index 884405a..0000000
--- a/src/modal/layouts/argent/ArgentDownload/ArgentDownload.svelte
+++ /dev/null
@@ -1,56 +0,0 @@
-<script lang="ts">
-  import AppleIcon from "../../../components/icons/brands/AppleIcon.svelte";
-  import PlayStore from "../../../components/icons/brands/PlayStore.svelte";
-  import ChromeIcon from "../../../components/icons/brands/ChromeIcon.svelte";
-  import FirefoxIcon from "../../../components/icons/brands/FirefoxIcon.svelte";
-  import EdgeIcon from "../../../components/icons/brands/EdgeIcon.svelte";
-  import BraveIcon from "../../../components/icons/brands/BraveIcon.svelte";
-
-  import MobileGraphic from "./graphics/MobileGraphic.svelte";
-  import ArgentXGraphic from "./graphics/ArgentXGraphic.svelte";
-
-  import ArgentDownloadItem from "./ArgentDownloadItem.svelte";
-  import Link from "../../../components/buttons/Link.svelte";
-  import HorizontalLine from "../../../components/HorizontalLine.svelte";
-
-  export let showInstallExtension: boolean = false
-
-  export let handleExtensionClick: () => void = () => {}
-</script>
-
-<section class="flex flex-col flex-grow justify-between">
-  <div class="flex flex-col gap-2">
-    <ArgentDownloadItem title="Argent mobile" subtitle="Download Argent wallet on your mobile." link="https://www.argent.xyz/app">
-      <svelte:fragment slot="icons">
-        <AppleIcon />
-        <PlayStore />
-      </svelte:fragment>
-
-      <svelte:fragment slot="graphic">
-        <MobileGraphic />
-      </svelte:fragment>
-    </ArgentDownloadItem>
-
-    {#if showInstallExtension}
-      <ArgentDownloadItem title="Argent X" subtitle="Install Argent extension." handleClick={handleExtensionClick}>
-        <svelte:fragment slot="icons">
-          <ChromeIcon />
-          <FirefoxIcon />
-          <EdgeIcon />
-          <BraveIcon />
-        </svelte:fragment>
-
-        <svelte:fragment slot="graphic">
-          <ArgentXGraphic />
-        </svelte:fragment>
-      </ArgentDownloadItem>
-    {/if}
-  </div>
-
-  <footer class="flex flex-col gap-4">
-    <HorizontalLine />
-    <p class="text-[13px] text-secondary">If you want to learn more about argent visit our site:
-      <Link as="a" className="text-brand" href="https://www.argent.xyz/">www.argent.xyz</Link>
-    </p>
-  </footer>
-</section>
\ No newline at end of file

From 2378e189d92a39eb283bbddd6065dcf23843e4f9 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 11:20:44 +0100
Subject: [PATCH 73/88] refactor: implement changed ux, remove redundant logic

---
 src/connectors/argent/argentMobile/index.ts |  3 ++-
 src/helpers/mapModalWallets.ts              | 23 +++++++++++++++++++--
 src/main.ts                                 |  4 ++--
 src/modal/Modal.svelte                      | 17 ++++++++-------
 4 files changed, 35 insertions(+), 12 deletions(-)

diff --git a/src/connectors/argent/argentMobile/index.ts b/src/connectors/argent/argentMobile/index.ts
index 1aa5547..c33cb2d 100644
--- a/src/connectors/argent/argentMobile/index.ts
+++ b/src/connectors/argent/argentMobile/index.ts
@@ -1,3 +1,4 @@
+import sn from "@starknet-io/get-starknet-core"
 import { type AccountChangeEventHandler } from "@starknet-io/get-starknet-core"
 import {
   Permission,
@@ -222,7 +223,7 @@ export class ArgentMobileBaseConnector extends Connector {
       url,
       icons,
       rpcUrl: providerRpcUrl,
-      modalWallet: getModalWallet(this),
+      modalWallet: getModalWallet(this, await sn.getDiscoveryWallets()),
     }
 
     if (projectId === DEFAULT_PROJECT_ID) {
diff --git a/src/helpers/mapModalWallets.ts b/src/helpers/mapModalWallets.ts
index 94cd0c4..45c5ace 100644
--- a/src/helpers/mapModalWallets.ts
+++ b/src/helpers/mapModalWallets.ts
@@ -9,6 +9,7 @@ import { ARGENT_X_ICON } from "../connectors/injected/constants"
 import type { ModalWallet, StoreVersion } from "../types/modal"
 import { isInArgentMobileAppBrowser } from "../connectors/argent/helpers"
 import { extractConnector, findConnectorById } from "./connector"
+import { getStoreVersionFromBrowser } from "./getStoreVersionFromBrowser"
 
 interface SetConnectorsExpandedParams {
   availableConnectors: (StarknetkitConnector | StarknetkitCompoundConnector)[]
@@ -23,7 +24,13 @@ export function getModalWallet(
     | StarknetkitConnector
     | StarknetkitCompoundConnector,
   discoveryWallets?: WalletProvider[],
+  _storeVersion?: StoreVersion | null,
 ): ModalWallet {
+  let storeVersion = _storeVersion
+  if (!storeVersion) {
+    storeVersion = getStoreVersionFromBrowser()
+  }
+
   const connector = extractConnector(
     connectorOrCompoundConnector,
   ) as StarknetkitConnector
@@ -32,6 +39,11 @@ export function getModalWallet(
     connectorOrCompoundConnector as StarknetkitCompoundConnector
   ).isCompoundConnector
 
+  const downloads = discoveryWallets?.find(
+    (d) =>
+      d.id === (connector.id === "argentMobile" ? "argentX" : connector.id),
+  )?.downloads
+
   return {
     name: isCompoundConnector
       ? connectorOrCompoundConnector.name
@@ -50,7 +62,8 @@ export function getModalWallet(
       "subtitle" in connector && isString(connector.subtitle)
         ? connector.subtitle
         : undefined,
-    downloads: discoveryWallets?.find((d) => d.id === connector.id)?.downloads,
+    download: downloads?.[storeVersion as keyof typeof downloads],
+    downloads: downloads,
   }
 }
 
@@ -92,6 +105,7 @@ export const mapModalWallets = ({
       if (installed) {
         let icon
         let name
+        let download
 
         if (isCompoundConnector) {
           icon = _c.icon
@@ -107,13 +121,18 @@ export const mapModalWallets = ({
           name = installed.name
         }
 
+        const downloads = discoveryWallets.find(
+          (d) => d.id === (installed.id === "argentMobile" ? "argentX" : c?.id),
+        )?.downloads
+
         return {
           name,
           id: installed.id,
           icon,
           connector: _c,
           installed: true,
-          downloads: discoveryWallets.find((d) => d.id === c?.id)?.downloads,
+          download: downloads?.[storeVersion as keyof typeof downloads],
+          downloads: downloads,
         }
       }
 
diff --git a/src/main.ts b/src/main.ts
index f151f39..1b55a87 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -170,7 +170,7 @@ export const connect = async ({
             modal.$set({ selectedWallet: modalWallet })
 
             if (!modalWallet.installed) {
-              modal.$set({ layout: Layout.extensionDownloadList })
+              modal.$set({ layout: Layout.download })
               return
             }
 
@@ -223,7 +223,7 @@ export const connect = async ({
         theme: modalTheme === "system" ? null : (modalTheme ?? null),
         modalWallets,
       },
-    }) as ModalInstance // Prevents vite build errors
+    }) as unknown as ModalInstance // Prevents vite build errors
   })
 }
 
diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index dbeb81f..29bb135 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -9,8 +9,7 @@
   import ArgentMobileQR from "./layouts/argent/ArgentMobileQR.svelte"
   import FailedLogin from "./layouts/FailedLogin.svelte"
   import SuccessfulLogin from "./layouts/SuccessfulLogin.svelte"
-  import ArgentDownload from "./layouts/argent/ArgentDownload/ArgentDownload.svelte"
-  import ExtensionDownloadList from "./layouts/ExtensionDownloadList/ExtensionDownloadList.svelte"
+  import DownloadWallet from "./layouts/DownloadWallet/DownloadWallet.svelte"
   import DynamicIcon from "./components/DynamicIcon.svelte"
 
   import { isInArgentMobileAppBrowser } from "../connectors/argent/helpers"
@@ -18,6 +17,7 @@
   import { StarknetkitCompoundConnector } from "../connectors"
   import { ArgentX } from "../connectors/injected/argentX"
   import { getModalWallet } from "../helpers/mapModalWallets"
+  import { getStoreVersionFromBrowser } from "../helpers/getStoreVersionFromBrowser"
 
   let nodeRef: HTMLElement | undefined
 
@@ -117,11 +117,14 @@
           handleFallback={() => callback(selectedWallet, true)}
         />
       {:else if layout === Layout.qrCode}
-        <ArgentMobileQR handleInstallClick={() => setLayout(Layout.argentDownload)} />
-      {:else if layout === Layout.extensionDownloadList}
-        <ExtensionDownloadList downloadLinks={selectedWallet?.downloads} extensionName={selectedWallet?.name} />
-      {:else if layout === Layout.argentDownload}
-        <ArgentDownload showInstallExtension={Boolean(selectedWallet?.downloads)} handleExtensionClick={() => setLayout(Layout.extensionDownloadList)} />
+        <ArgentMobileQR handleInstallClick={() => setLayout(Layout.download)} />
+      {:else if layout === Layout.download}
+        <DownloadWallet
+          store={getStoreVersionFromBrowser()}
+          isArgent={Boolean(selectedConnector && (selectedConnector?.id === "argentMobile" || selectedConnector?.id === "argentX"))}
+          storeLink={selectedWallet?.download}
+          extensionName={selectedWallet?.name === "Argent" ? "Argent X" : selectedConnector?.name}
+        />
       {/if}
 
     </main>

From 1b88b33889ca24ecd82c68cb7a4451ab032ac2ef Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 13:42:51 +0100
Subject: [PATCH 74/88] chore: add missing type

---
 src/types/modal.ts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/types/modal.ts b/src/types/modal.ts
index 97bff1f..af2134d 100644
--- a/src/types/modal.ts
+++ b/src/types/modal.ts
@@ -33,7 +33,7 @@ export interface ConnectOptions extends GetWalletOptions {
 
 export interface ConnectOptionsWithConnectors
   extends Omit<ConnectOptions, "webWalletUrl" | "argentMobileOptions"> {
-  connectors?: StarknetkitConnector[]
+  connectors?: (StarknetkitConnector | StarknetkitCompoundConnector)[]
 }
 
 export type ModalWallet = {

From be04ce35f11050f13c8a2f380ae96165f5e9b340 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 13:43:41 +0100
Subject: [PATCH 75/88] chore: use `Braavos` instead of `InjectedConnector`

---
 src/connectors/braavosMobile/index.ts | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/connectors/braavosMobile/index.ts b/src/connectors/braavosMobile/index.ts
index 0a24a16..f467b56 100644
--- a/src/connectors/braavosMobile/index.ts
+++ b/src/connectors/braavosMobile/index.ts
@@ -11,7 +11,8 @@ import {
   type ConnectorData,
   type ConnectorIcons,
 } from "../connector"
-import { InjectedConnector, InjectedConnectorOptions } from "../injected"
+import { InjectedConnectorOptions } from "../injected"
+import { Braavos } from "../injected/braavos"
 import { isInBraavosMobileAppBrowser } from "./helpers/inAppBrowser"
 import { BRAAVOS_MOBILE_APP_ICON } from "./constants"
 
@@ -105,9 +106,7 @@ export class BraavosMobileConnector {
   static init(params?: BraavosMobileConnectorInitParams): Connector {
     const { inAppBrowserOptions } = params || {}
     if (isInBraavosMobileAppBrowser()) {
-      return new InjectedConnector({
-        options: { id: "braavos", ...inAppBrowserOptions },
-      })
+      return new Braavos(inAppBrowserOptions)
     } else {
       return new BraavosMobileBaseConnector()
     }

From 09da0e27d5b7bbb1790ed3b87333faceaba4c0d2 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 14:00:24 +0100
Subject: [PATCH 76/88] refactor: add `Connector` to
 `ConnectOptionsWithConnectors.connectors`

---
 src/types/modal.ts | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/types/modal.ts b/src/types/modal.ts
index af2134d..8ad8c6c 100644
--- a/src/types/modal.ts
+++ b/src/types/modal.ts
@@ -2,6 +2,7 @@ import type { GetWalletOptions } from "@starknet-io/get-starknet-core"
 import { StarknetWindowObject } from "@starknet-io/types-js"
 import type { ArgentMobileConnectorOptions } from "../connectors/argent/argentMobile"
 import {
+  Connector,
   ConnectorData,
   ConnectorIcons,
   StarknetkitCompoundConnector,
@@ -33,7 +34,11 @@ export interface ConnectOptions extends GetWalletOptions {
 
 export interface ConnectOptionsWithConnectors
   extends Omit<ConnectOptions, "webWalletUrl" | "argentMobileOptions"> {
-  connectors?: (StarknetkitConnector | StarknetkitCompoundConnector)[]
+  connectors?: (
+    | Connector
+    | StarknetkitConnector
+    | StarknetkitCompoundConnector
+  )[]
 }
 
 export type ModalWallet = {

From f063b2f441e83126ecfb55c5ea0f4669fa7c6671 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 14:07:12 +0100
Subject: [PATCH 77/88] refactor: add missing `Connector` after changing
 `connect` signature

---
 src/helpers/connector.ts       | 9 +++++++--
 src/helpers/mapModalWallets.ts | 8 +++++++-
 src/types/modal.ts             | 2 +-
 3 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/src/helpers/connector.ts b/src/helpers/connector.ts
index 1c01d94..4aaa261 100644
--- a/src/helpers/connector.ts
+++ b/src/helpers/connector.ts
@@ -1,10 +1,11 @@
 import {
+  Connector,
   StarknetkitCompoundConnector,
   StarknetkitConnector,
 } from "../connectors"
 
 export function extractConnector(
-  connector: StarknetkitConnector | StarknetkitCompoundConnector,
+  connector: Connector | StarknetkitConnector | StarknetkitCompoundConnector,
   useFallback: boolean = false,
 ) {
   if ((connector as StarknetkitCompoundConnector).isCompoundConnector) {
@@ -16,7 +17,11 @@ export function extractConnector(
 }
 
 export function findConnectorById(
-  connectors: (StarknetkitConnector | StarknetkitCompoundConnector)[],
+  connectors: (
+    | Connector
+    | StarknetkitConnector
+    | StarknetkitCompoundConnector
+  )[],
   id: string | null,
 ) {
   const connector = connectors.find((c) => {
diff --git a/src/helpers/mapModalWallets.ts b/src/helpers/mapModalWallets.ts
index 45c5ace..08ac245 100644
--- a/src/helpers/mapModalWallets.ts
+++ b/src/helpers/mapModalWallets.ts
@@ -2,6 +2,7 @@ import { WalletProvider } from "@starknet-io/get-starknet-core"
 import { isString } from "lodash-es"
 import type { StarknetWindowObject } from "@starknet-io/types-js"
 import {
+  Connector,
   StarknetkitCompoundConnector,
   StarknetkitConnector,
 } from "../connectors/connector"
@@ -12,7 +13,11 @@ import { extractConnector, findConnectorById } from "./connector"
 import { getStoreVersionFromBrowser } from "./getStoreVersionFromBrowser"
 
 interface SetConnectorsExpandedParams {
-  availableConnectors: (StarknetkitConnector | StarknetkitCompoundConnector)[]
+  availableConnectors: (
+    | Connector
+    | StarknetkitConnector
+    | StarknetkitCompoundConnector
+  )[]
   installedWallets: StarknetWindowObject[]
   discoveryWallets: WalletProvider[]
   storeVersion: StoreVersion | null
@@ -21,6 +26,7 @@ interface SetConnectorsExpandedParams {
 
 export function getModalWallet(
   connectorOrCompoundConnector:
+    | Connector
     | StarknetkitConnector
     | StarknetkitCompoundConnector,
   discoveryWallets?: WalletProvider[],
diff --git a/src/types/modal.ts b/src/types/modal.ts
index 8ad8c6c..2fb88fc 100644
--- a/src/types/modal.ts
+++ b/src/types/modal.ts
@@ -50,7 +50,7 @@ export type ModalWallet = {
   downloads?: Record<string, string>
   subtitle?: string
   title?: string
-  connector: StarknetkitConnector | StarknetkitCompoundConnector
+  connector: Connector | StarknetkitConnector | StarknetkitCompoundConnector
 }
 
 export type Callback = (

From 010f3fc5eb44ad30eafd12af95e3c998db35d355 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 15:24:20 +0100
Subject: [PATCH 78/88] feat: add new approval layout

---
 .../argent/ArgentMobileApproval.svelte        | 34 +++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 src/modal/layouts/argent/ArgentMobileApproval.svelte

diff --git a/src/modal/layouts/argent/ArgentMobileApproval.svelte b/src/modal/layouts/argent/ArgentMobileApproval.svelte
new file mode 100644
index 0000000..71ad486
--- /dev/null
+++ b/src/modal/layouts/argent/ArgentMobileApproval.svelte
@@ -0,0 +1,34 @@
+<script lang="ts">
+
+</script>
+
+<section class="flex flex-col justify-center items-center flex-grow">
+
+  <div  class="flex flex-col h-full justify-center items-center gap-8 w-full flex-grow">
+
+    <div>
+      <svg width="140" height="141" viewBox="0 0 140 141" fill="none" xmlns="http://www.w3.org/2000/svg">
+        <mask id="mask0_82_210" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="140" height="141">
+          <path d="M69.9639 140.094C108.42 140.094 139.595 108.92 139.595 70.4639C139.595 32.008 108.42 0.833313 69.9639 0.833313C31.508 0.833313 0.333344 32.008 0.333344 70.4639C0.333344 108.92 31.508 140.094 69.9639 140.094Z" fill="#BFBFBF"/>
+        </mask>
+        <g mask="url(#mask0_82_210)">
+          <path d="M69.9639 140.094C108.42 140.094 139.595 108.92 139.595 70.4639C139.595 32.008 108.42 0.833313 69.9639 0.833313C31.508 0.833313 0.333344 32.008 0.333344 70.4639C0.333344 108.92 31.508 140.094 69.9639 140.094Z" fill="#BFBFBF" fill-opacity="0.2"/>
+          <circle opacity="0.5" cx="69.6835" cy="70.1833" r="28.5" stroke="#FF7A52" stroke-width="0.633333"/>
+          <circle opacity="0.4" cx="69.6835" cy="70.1833" r="36.1" stroke="#FF7A52" stroke-width="0.633333"/>
+          <circle opacity="0.2" cx="69.6834" cy="70.1833" r="50.0333" stroke="#FF7A52" stroke-width="0.633333"/>
+          <path d="M71.63 64.1667H68.3704C68.2614 64.1667 68.1742 64.2607 68.1718 64.3775C68.1059 67.6613 66.5044 70.7781 63.7479 72.9857C63.6603 73.0557 63.6404 73.1874 63.7044 73.2823L65.6115 76.1111C65.6764 76.2074 65.8028 76.2291 65.8918 76.1584C67.6154 74.7871 69.0018 73.1327 70.0002 71.2991C70.9985 73.1327 72.385 74.7871 74.1086 76.1584C74.1975 76.2291 74.3239 76.2074 74.3889 76.1111L76.296 73.2823C76.3599 73.1874 76.34 73.0557 76.2525 72.9857C73.4959 70.7781 71.8944 67.6613 71.8286 64.3775C71.8262 64.2607 71.7389 64.1667 71.63 64.1667Z" fill="#FF875B"/>
+          <path d="M42.2656 41.1541L97.3366 41.1541C102.578 41.1541 106.827 45.4032 106.827 50.6448L106.827 170.156C106.827 175.398 102.578 179.647 97.3366 179.647L42.2656 179.647C37.0241 179.647 32.775 175.398 32.775 170.156L32.775 50.6447C32.775 45.4032 37.0241 41.1541 42.2656 41.1541Z" fill="#FF875B" stroke="black" stroke-width="3.51504"/>
+          <path d="M44.6111 139.224L38.2837 139.224L31.9568 139.224L32.6599 47.1296L37.5617 41.0012L94.5247 40.803L44.6111 139.224Z" fill="white" fill-opacity="0.3"/>
+          <path d="M42.266 41.1541L97.337 41.1541C102.578 41.1541 106.828 45.4032 106.828 50.6448L106.828 170.156C106.828 175.398 102.578 179.647 97.3369 179.647L42.2659 179.647C37.0244 179.647 32.7753 175.398 32.7753 170.156L32.7753 50.6447C32.7753 45.4032 37.0244 41.1541 42.266 41.1541Z" stroke="black" stroke-width="3.51504"/>
+          <path d="M53.6909 39.3966L87.1044 39.3966L87.1044 40.9326C87.1044 44.0387 84.5865 46.5567 81.4804 46.5567L59.3149 46.5567C56.2088 46.5567 53.6909 44.0387 53.6909 40.9326L53.6909 39.3966Z" fill="black"/>
+          <path d="M73.0967 82.5333H66.9034C66.6965 82.5333 66.5307 82.7164 66.5262 82.9439C66.401 89.3387 63.3581 95.4081 58.1207 99.7072C57.9544 99.8436 57.9165 100.1 58.0381 100.285L61.6616 105.793C61.7849 105.981 62.0251 106.023 62.1942 105.886C65.469 103.215 68.1031 99.9935 70 96.4228C71.897 99.9935 74.5312 103.215 77.8061 105.886C77.975 106.023 78.2152 105.981 78.3386 105.793L81.9622 100.285C82.0836 100.1 82.0457 99.8436 81.8796 99.7072C76.642 95.4081 73.5991 89.3387 73.4741 82.9439C73.4696 82.7164 73.3036 82.5333 73.0967 82.5333Z" fill="white"/>
+        </g>
+      </svg>
+    </div>
+
+    <hgroup class="flex flex-col gap-1">
+      <h3 class="text-primary text-h4 font-bold">Approve the transaction</h3>
+      <h4 class="text-primary text-p3">Open Argent on your phone to <br/> approve the transaction</h4>
+    </hgroup>
+  </div>
+</section>
\ No newline at end of file

From bac63726f95d96651901aa9c21285866ca567506 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 15:24:54 +0100
Subject: [PATCH 79/88] chore: add approval layout to modal

---
 src/modal/Modal.svelte | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index 86de3a8..ddb7622 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -6,6 +6,7 @@
   import Header from "./components/Header.svelte"
   import WalletList from "./layouts/WalletList.svelte"
   import Connecting from "./layouts/Connecting.svelte"
+  import ArgentMobileApproval from "./layouts/argent/ArgentMobileApproval.svelte"
   import ArgentMobileQR from "./layouts/argent/ArgentMobileQR.svelte"
   import FailedLogin from "./layouts/FailedLogin.svelte"
   import SuccessfulLogin from "./layouts/SuccessfulLogin.svelte"
@@ -132,6 +133,8 @@
         />
       {:else if layout === Layout.qrCode}
         <ArgentMobileQR handleInstallClick={() => setLayout(Layout.download)} />
+      {:else if layout === Layout.approval}
+        <ArgentMobileApproval />
       {:else if layout === Layout.download}
         <DownloadWallet
           store={getStoreVersionFromBrowser()}

From 440012c296cc75ca0715f81f74811505bb4db1a4 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 15:25:10 +0100
Subject: [PATCH 80/88] chore: rename success component

---
 src/modal/Modal.svelte                                       | 4 ++--
 src/modal/layouts/{SuccessfulLogin.svelte => Success.svelte} | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
 rename src/modal/layouts/{SuccessfulLogin.svelte => Success.svelte} (78%)

diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index ddb7622..4b8eda1 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -9,7 +9,7 @@
   import ArgentMobileApproval from "./layouts/argent/ArgentMobileApproval.svelte"
   import ArgentMobileQR from "./layouts/argent/ArgentMobileQR.svelte"
   import FailedLogin from "./layouts/FailedLogin.svelte"
-  import SuccessfulLogin from "./layouts/SuccessfulLogin.svelte"
+  import Success from "./layouts/Success.svelte"
   import DownloadWallet from "./layouts/DownloadWallet/DownloadWallet.svelte"
   import DynamicIcon from "./components/DynamicIcon.svelte"
 
@@ -123,7 +123,7 @@
           {/if}
         </Connecting>
       {:else if layout === Layout.success}
-        <SuccessfulLogin />
+        <Success />
       {:else if layout === Layout.failure}
         <FailedLogin
           walletName={selectedConnector?.name}
diff --git a/src/modal/layouts/SuccessfulLogin.svelte b/src/modal/layouts/Success.svelte
similarity index 78%
rename from src/modal/layouts/SuccessfulLogin.svelte
rename to src/modal/layouts/Success.svelte
index 0e0ab1a..9f0919e 100644
--- a/src/modal/layouts/SuccessfulLogin.svelte
+++ b/src/modal/layouts/Success.svelte
@@ -8,5 +8,5 @@
     <SuccessCheckIcon />
   </div>
 
-  <h3 class="text-primary text-h4 font-bold">Successfully logged in!</h3>
+  <h3 class="text-primary text-h4 font-bold">Success!</h3>
 </section>
\ No newline at end of file

From 864d6e4024db92cd7798b64bb8b2af91555bb46e Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 15:25:34 +0100
Subject: [PATCH 81/88] fix: missing import, missing error

---
 src/modal/Modal.svelte | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index 4b8eda1..f0cdfe1 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -17,6 +17,7 @@
   import { extractConnector } from "../helpers/connector"
   import { StarknetkitCompoundConnector } from "../connectors"
   import { ArgentX } from "../connectors/injected/argentX"
+  import { Braavos } from "../connectors/injected/braavos"
   import { getModalWallet } from "../helpers/mapModalWallets"
   import { getStoreVersionFromBrowser } from "../helpers/getStoreVersionFromBrowser"
 
@@ -72,7 +73,7 @@
     if (isBraavosMobileApp) {
       try {
         void callback(getModalWallet(new Braavos()))
-      } catch {
+      } catch (e) {
         console.error(e)
       }
       return

From 960e17c52869d6e562c0794c071214a48c71e13c Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 15:25:56 +0100
Subject: [PATCH 82/88] feat: add `approval` prop to `Layout` enum

---
 src/types/modal.ts | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/types/modal.ts b/src/types/modal.ts
index 2fb88fc..7c18f24 100644
--- a/src/types/modal.ts
+++ b/src/types/modal.ts
@@ -20,6 +20,7 @@ export enum Layout {
   failure = "failure",
   qrCode = "qrCode",
   download = "download",
+  approval = "approval",
 }
 
 export interface ConnectOptions extends GetWalletOptions {

From 94f970db227378af8e979015dce0243bab3e2495 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 15:26:31 +0100
Subject: [PATCH 83/88] refactor: change timeout for closing modal

---
 src/connectors/argent/argentMobile/modal/argentModal.ts | 2 +-
 src/main.ts                                             | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/connectors/argent/argentMobile/modal/argentModal.ts b/src/connectors/argent/argentMobile/modal/argentModal.ts
index b073052..dff5069 100644
--- a/src/connectors/argent/argentMobile/modal/argentModal.ts
+++ b/src/connectors/argent/argentMobile/modal/argentModal.ts
@@ -176,7 +176,7 @@ class ArgentModal {
     const modal = this.standaloneConnectorModal
     if (success) {
       modal?.$set({ layout: Layout.success })
-      setTimeout(() => modal?.$destroy(), 3000)
+      setTimeout(() => modal?.$destroy(), 500)
     } else {
       modal?.$set({ layout: Layout.failure })
     }
diff --git a/src/main.ts b/src/main.ts
index 1b55a87..4b51844 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -202,7 +202,7 @@ export const connect = async ({
               })
 
               modal.$set({ layout: Layout.success })
-              setTimeout(() => modal.$destroy(), 3000)
+              setTimeout(() => modal.$destroy(), 500)
             } else {
               resolve({
                 connector: selectedConnector,

From b47b23ff2ac13f4725edfbbe158ea6f95ee20a1c Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 15:27:23 +0100
Subject: [PATCH 84/88] refactor: remove old and redundant logic, integrate new
 approval modal

---
 .../argent/argentMobile/modal/argentModal.ts  | 153 +++---------------
 .../argentMobile/modal/starknet/adapter.ts    |   4 +-
 2 files changed, 22 insertions(+), 135 deletions(-)

diff --git a/src/connectors/argent/argentMobile/modal/argentModal.ts b/src/connectors/argent/argentMobile/modal/argentModal.ts
index dff5069..d6d09c2 100644
--- a/src/connectors/argent/argentMobile/modal/argentModal.ts
+++ b/src/connectors/argent/argentMobile/modal/argentModal.ts
@@ -11,41 +11,6 @@ export interface RequestArguments {
   params?: unknown[] | object
 }
 
-// TODO - SK-47 - remove this
-const overlayStyle = {
-  position: "fixed",
-  top: "0",
-  left: "0",
-  right: "0",
-  bottom: "0",
-  backgroundColor: "rgba(0,0,0,0.8)",
-  backdropFilter: "blur(10px)",
-  zIndex: "9999",
-  display: "flex",
-  alignItems: "center",
-  justifyContent: "center",
-  flexDirection: "column",
-  color: "white",
-  fontWeight: "500",
-  fontFamily: "'Barlow', sans-serif",
-}
-
-// TODO - SK-47 - remove this
-const iframeStyle = {
-  width: "840px",
-  height: "540px",
-  zIndex: "99999",
-  backgroundColor: "white",
-  border: "none",
-  outline: "none",
-  borderRadius: "40px",
-  boxShadow: "0px 4px 40px 0px rgb(0 0 0), 0px 4px 8px 0px rgb(0 0 0 / 25%)",
-  position: "fixed",
-  top: "50%",
-  left: "50%",
-  transform: "translate(-50%,-50%)",
-}
-
 const iframeStyleOnlyQR = {
   width: "245px",
   height: "245px",
@@ -56,19 +21,6 @@ const iframeStyleOnlyQR = {
   outline: "none",
 }
 
-// TODO - SK-47 - remove this
-const overlayHtml = `
-  <div id="argent-mobile-modal-container" style="position: relative">
-    <iframe class="argent-iframe" allow="clipboard-write"></iframe>
-    <div class="argent-close-button" style="position: absolute; top: 24px; right: 24px; cursor: pointer;">
-      <svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
-        <circle cx="16" cy="16" r="16" fill="#F5F3F0"/>
-        <path fill-rule="evenodd" clip-rule="evenodd" d="M22.2462 9.75382C22.7018 10.2094 22.7018 10.9481 22.2462 11.4037L17.6499 16L22.2462 20.5963C22.7018 21.0519 22.7018 21.7906 22.2462 22.2462C21.7905 22.7018 21.0519 22.7018 20.5962 22.2462L16 17.6499L11.4039 22.246C10.9482 22.7017 10.2096 22.7017 9.75394 22.246C9.29833 21.7904 9.29833 21.0517 9.75394 20.5961L14.3501 16L9.75394 11.4039C9.29833 10.9483 9.29833 10.2096 9.75394 9.75396C10.2096 9.29835 10.9482 9.29835 11.4039 9.75396L16 14.3501L20.5962 9.75382C21.0519 9.29821 21.7905 9.29821 22.2462 9.75382Z" fill="#333332"/>
-      </svg>
-    </div>
-  </div>
-`
-
 const overlayHtmlOnlyQR = `
   <div id="argent-mobile-modal-container" style="position: relative; display: flex; justify-content: center; align-items: center">
     <iframe class="argent-iframe" allow="clipboard-write"></iframe>
@@ -148,28 +100,25 @@ class ArgentModal {
     }
   }
 
-  // TODO - SK-47 - handle this
   public showApprovalModal(_: RequestArguments): void {
     if (device === "desktop") {
-      this.showModalOld({
-        desktop: `${this.bridgeUrl}?action=sign`,
-        ios: "",
-        android: "",
-      })
+      this.getModal(undefined, Layout.approval)
       return
     }
     const href = encodeURIComponent(window.location.href)
-
-    /* 
+    /*
     //https://docs.walletconnect.com/2.0/web3wallet/mobileLinking?platform=ios#ios-wallet-support
-    Additionally when there is a signing request triggered by the dapp it will hit the deep link with an incomplete URI, 
+    Additionally when there is a signing request triggered by the dapp it will hit the deep link with an incomplete URI,
     this should be ignored and not considered valid as it's only used for automatically redirecting the users to approve or reject a signing request.
     */
-    this.showModalOld({
-      desktop: `${this.bridgeUrl}?action=sign&device=desktop&href=${href}`,
-      ios: `${this.mobileUrl}app/wc/request?href=${href}&device=mobile`,
-      android: `${this.mobileUrl}app/wc/request?href=${href}&device=mobile`,
-    })
+    this.showModal(
+      {
+        desktop: `${this.bridgeUrl}?action=sign&device=desktop&href=${href}`,
+        ios: `${this.mobileUrl}app/wc/request?href=${href}&device=mobile`,
+        android: `${this.mobileUrl}app/wc/request?href=${href}&device=mobile`,
+      },
+      undefined,
+    )
   }
 
   public closeModal(success?: boolean) {
@@ -182,25 +131,15 @@ class ArgentModal {
     }
   }
 
-  // TODO - SK-47 - remove this
-  public closeModalOld(success?: boolean) {
-    if (success) {
-      this.overlay
-        ?.querySelector("iframe")
-        ?.contentWindow?.postMessage("argent-login.success", "*")
-      this.popupWindow?.postMessage("argent-login.success", "*")
-      this.closingTimeout = setTimeout(this.close, 3400)
-    } else {
-      this.close()
-    }
-  }
-
-  private showModal(urls: Urls, modalWallet: ModalWalletExtended) {
+  private getModal(
+    modalWallet?: ModalWalletExtended,
+    modalLayout: Layout = Layout.qrCode,
+  ) {
     this.standaloneConnectorModal = new Modal({
       target: getModalTarget(),
       props: {
-        layout: Layout.qrCode,
-        dappName: modalWallet.dappName,
+        layout: modalLayout,
+        dappName: modalWallet?.dappName,
         showBackButton: false,
         selectedWallet: modalWallet,
         callback: async (wallet: ModalWallet | null) => {
@@ -215,64 +154,12 @@ class ArgentModal {
         },
       },
     })
-
-    this.getQR(urls)
   }
 
-  // TODO - SK-47 - remove this
-  private showModalOld(urls: Urls) {
-    clearTimeout(this.closingTimeout)
-    if (this.overlay || this.popupWindow) {
-      this.close()
-    }
-
-    if (device === "android" || device === "ios") {
-      const toMobileApp = document.createElement("button")
-      toMobileApp.style.display = "none"
-      toMobileApp.addEventListener("click", () => {
-        window.location.href = urls[device]
-      })
-      toMobileApp.click()
+  private showModal(urls: Urls, modalWallet?: ModalWalletExtended) {
+    this.getModal(modalWallet, Layout.qrCode)
 
-      return
-    }
-    if (this.type === "window") {
-      const features =
-        "menubar=no,location=no,resizable=no,scrollbars=no,status=no,width=840,height=540"
-      this.popupWindow =
-        window.open(urls.desktop, "_blank", features) || undefined
-      return
-    }
-
-    // type=overlay, device=desktop
-    const overlay = document.createElement("div")
-    overlay.innerHTML = overlayHtml
-    overlay.id = "argent-mobile-modal-overlay"
-    for (const [key, value] of Object.entries(overlayStyle)) {
-      overlay.style[key as any] = value
-    }
-    document.body.appendChild(overlay)
-    overlay.addEventListener("click", () => this.closeModal())
-    this.overlay = overlay
-
-    const iframe = overlay.querySelector("iframe") as HTMLIFrameElement
-    iframe.setAttribute("src", urls.desktop)
-    for (const [key, value] of Object.entries(iframeStyle)) {
-      iframe.style[key as any] = value
-    }
-
-    const closeButton = overlay.querySelector(
-      ".argent-close-button",
-    ) as HTMLDivElement
-    closeButton.addEventListener("click", () => this.closeModal())
-  }
-
-  // TODO - SK-47 - remove this
-  private close = () => {
-    this.overlay?.remove()
-    this.popupWindow?.close()
-    this.overlay = undefined
-    this.popupWindow = undefined
+    this.getQR(urls)
   }
 }
 
diff --git a/src/connectors/argent/argentMobile/modal/starknet/adapter.ts b/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
index 06dcedb..387a2ae 100644
--- a/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
+++ b/src/connectors/argent/argentMobile/modal/starknet/adapter.ts
@@ -186,10 +186,10 @@ export class StarknetAdapter
       const chainId = this.formatChainId(this.chainId)
       argentModal.showApprovalModal(request)
       const response = await this.client.request({ topic, chainId, request })
-      argentModal.closeModalOld(true)
+      argentModal.closeModal(true)
       return response
     } catch (error) {
-      argentModal.closeModalOld()
+      argentModal.closeModal()
       if (error instanceof Error) {
         throw new Error(error.message)
       }

From d7bc2d4b085d64c43e2153de517efb9f5ba43db4 Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Wed, 13 Nov 2024 16:10:47 +0100
Subject: [PATCH 85/88] refactor: move navigator helpers to separate file

---
 src/helpers/defaultConnectors.ts | 27 +++------------------------
 src/helpers/navigator.ts         | 19 +++++++++++++++++++
 2 files changed, 22 insertions(+), 24 deletions(-)
 create mode 100644 src/helpers/navigator.ts

diff --git a/src/helpers/defaultConnectors.ts b/src/helpers/defaultConnectors.ts
index bb8cfdf..3ad65dd 100644
--- a/src/helpers/defaultConnectors.ts
+++ b/src/helpers/defaultConnectors.ts
@@ -2,28 +2,12 @@ import {
   StarknetkitCompoundConnector,
   StarknetkitConnector,
 } from "../connectors"
-import {
-  type ArgentMobileConnectorOptions,
-} from "../connectors/argent/argentMobile"
+import { type ArgentMobileConnectorOptions } from "../connectors/argent/argentMobile"
 import { BraavosMobileBaseConnector } from "../connectors/braavosMobile"
 import { WebWalletConnector } from "../connectors/webwallet"
 import { Braavos } from "../connectors/injected/braavos"
 import { Argent } from "../connectors/argent"
-
-const isMobileDevice = () => {
-  // Primary method: User Agent + Touch support check
-  const userAgent = navigator.userAgent.toLowerCase()
-  const isMobileUA =
-    /android|webos|iphone|ipad|ipod|blackberry|windows phone/.test(userAgent)
-  const hasTouchSupport =
-    "ontouchstart" in window || navigator.maxTouchPoints > 0
-
-  // Backup method: Screen size
-  const isSmallScreen = window.innerWidth <= 768
-
-  // Combine checks: Must match user agent AND (touch support OR small screen)
-  return isMobileUA && (hasTouchSupport || isSmallScreen)
-}
+import { isMobileDevice, isSafari } from "./navigator"
 
 export const defaultConnectors = ({
   argentMobileOptions,
@@ -32,11 +16,6 @@ export const defaultConnectors = ({
   argentMobileOptions: ArgentMobileConnectorOptions
   webWalletUrl?: string
 }): (StarknetkitConnector | StarknetkitCompoundConnector)[] => {
-  const isSafari =
-    typeof window !== "undefined"
-      ? /^((?!chrome|android).)*safari/i.test(navigator.userAgent)
-      : false
-
   const defaultConnectors: (
     | StarknetkitConnector
     | StarknetkitCompoundConnector
@@ -44,7 +23,7 @@ export const defaultConnectors = ({
 
   defaultConnectors.push(new Argent({ mobile: argentMobileOptions }))
 
-  if (!isSafari) {
+  if (!isSafari()) {
     defaultConnectors.push(new Braavos())
   }
 
diff --git a/src/helpers/navigator.ts b/src/helpers/navigator.ts
new file mode 100644
index 0000000..6e4d482
--- /dev/null
+++ b/src/helpers/navigator.ts
@@ -0,0 +1,19 @@
+export const isMobileDevice = () => {
+  // Primary method: User Agent + Touch support check
+  const userAgent = navigator.userAgent.toLowerCase()
+  const isMobileUA =
+    /android|webos|iphone|ipad|ipod|blackberry|windows phone/.test(userAgent)
+  const hasTouchSupport =
+    "ontouchstart" in window || navigator.maxTouchPoints > 0
+
+  // Backup method: Screen size
+  const isSmallScreen = window.innerWidth <= 768
+
+  // Combine checks: Must match user agent AND (touch support OR small screen)
+  return isMobileUA && (hasTouchSupport || isSmallScreen)
+}
+
+export const isSafari = () =>
+  typeof window !== "undefined"
+    ? /^((?!chrome|android).)*safari/i.test(navigator.userAgent)
+    : false

From e991c896460b26067ef33b4b7412b46254772b2b Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Fri, 15 Nov 2024 11:03:58 +0100
Subject: [PATCH 86/88] fix: mobile connector bug

---
 src/modal/Modal.svelte | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte
index f0cdfe1..f2c7788 100644
--- a/src/modal/Modal.svelte
+++ b/src/modal/Modal.svelte
@@ -59,7 +59,9 @@
 
     if (isInAppBrowser) {
       try {
-        void callback(getModalWallet(new ArgentX()))
+        setTimeout(() => {
+          void callback(getModalWallet(new ArgentX()))
+        })
       } catch (e) {
         console.error(e)
       }
@@ -72,7 +74,9 @@
 
     if (isBraavosMobileApp) {
       try {
-        void callback(getModalWallet(new Braavos()))
+        setTimeout(() => {
+          void callback(getModalWallet(new Braavos()))
+        })
       } catch (e) {
         console.error(e)
       }

From f383f4b1f6da3358c93eabad69414b72653b2ecf Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 10 Dec 2024 09:48:38 +0100
Subject: [PATCH 87/88] chore: run pnpm install

---
 pnpm-lock.yaml | 34 +++++++++++++++++++++-------------
 1 file changed, 21 insertions(+), 13 deletions(-)

diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 70c8fd5..8e37abc 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -12,11 +12,11 @@ importers:
         specifier: ^1.70.1
         version: 1.70.1(mcfj3t5w5z7ehabnwpmzvhdirm)
       '@starknet-io/get-starknet':
-        specifier: ^4.0.2
-        version: 4.0.2
+        specifier: ^4.0.4
+        version: 4.0.5
       '@starknet-io/get-starknet-core':
-        specifier: ^4.0.2
-        version: 4.0.2
+        specifier: ^4.0.4
+        version: 4.0.5
       '@starknet-io/types-js':
         specifier: ^0.7.7
         version: 0.7.7
@@ -2139,11 +2139,11 @@ packages:
   '@stablelib/x25519@1.0.3':
     resolution: {integrity: sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw==}
 
-  '@starknet-io/get-starknet-core@4.0.2':
-    resolution: {integrity: sha512-JxUOMV6HYVUzmGJb0lyI+/L3KGQCcyQlCuEA9UvPVcR8okqTFFQgZpUm8YTyrgwF/5P/eRH620+Kc73i341eLw==}
+  '@starknet-io/get-starknet-core@4.0.5':
+    resolution: {integrity: sha512-aMnDHhWO0IMdwusZcoyPPnvAxzREWv+XkPMAtB2O1h64x1QKvpR/oVoDl/ZY81JKS4YlUWqcuD+sMGGUVZAa7w==}
 
-  '@starknet-io/get-starknet@4.0.2':
-    resolution: {integrity: sha512-/yp6xE0sBYTtnRxOO+T1m1kMgw5AohBF/ppWuBxuT2Xc2GL/V9z7CGe1ltjvFLSSTHT7tly+0HpvYmBEst/QFQ==}
+  '@starknet-io/get-starknet@4.0.5':
+    resolution: {integrity: sha512-eAj3Zh9PVrn3E2jC9N7E+HxU7VlMxiUckGpL9lrWLa7vnORJkZg/3tDmjfqzgVNGN9d7ElcjIXeJB6/5d5CUCg==}
 
   '@starknet-io/types-js@0.7.7':
     resolution: {integrity: sha512-WLrpK7LIaIb8Ymxu6KF/6JkGW1sso988DweWu7p5QY/3y7waBIiPvzh27D9bX5KIJNRDyOoOVoHVEKYUYWZ/RQ==}
@@ -2719,6 +2719,9 @@ packages:
   async-limiter@1.0.1:
     resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==}
 
+  async-mutex@0.5.0:
+    resolution: {integrity: sha512-1A94B18jkJ3DYq284ohPxoXbfTA5HsQ7/Mf4DEhcyLx3Bz27Rh59iScbB6EPiP+B+joue6YCxcMXSbFC1tZKwA==}
+
   async-retry@1.3.3:
     resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==}
 
@@ -8304,7 +8307,7 @@ snapshots:
       '@types/node': 20.5.1
       chalk: 4.1.2
       cosmiconfig: 8.3.6(typescript@5.5.4)
-      cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4))(typescript@5.5.4)
+      cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4))(typescript@5.5.4)
       lodash.isplainobject: 4.0.6
       lodash.merge: 4.6.2
       lodash.uniq: 4.5.0
@@ -9662,14 +9665,15 @@ snapshots:
       '@stablelib/random': 1.0.2
       '@stablelib/wipe': 1.0.1
 
-  '@starknet-io/get-starknet-core@4.0.2':
+  '@starknet-io/get-starknet-core@4.0.5':
     dependencies:
       '@module-federation/runtime': 0.1.21
       '@starknet-io/types-js': 0.7.7
+      async-mutex: 0.5.0
 
-  '@starknet-io/get-starknet@4.0.2':
+  '@starknet-io/get-starknet@4.0.5':
     dependencies:
-      '@starknet-io/get-starknet-core': 4.0.2
+      '@starknet-io/get-starknet-core': 4.0.5
       bowser: 2.11.0
 
   '@starknet-io/types-js@0.7.7': {}
@@ -10586,6 +10590,10 @@ snapshots:
 
   async-limiter@1.0.1: {}
 
+  async-mutex@0.5.0:
+    dependencies:
+      tslib: 2.6.3
+
   async-retry@1.3.3:
     dependencies:
       retry: 0.13.1
@@ -11032,7 +11040,7 @@ snapshots:
 
   core-util-is@1.0.3: {}
 
-  cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.4))(typescript@5.5.4):
+  cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.4))(ts-node@10.9.2(@types/node@20.14.15)(typescript@5.5.4))(typescript@5.5.4):
     dependencies:
       '@types/node': 20.5.1
       cosmiconfig: 8.3.6(typescript@5.5.4)

From 7eed3172b176a908e2db31678be4c863664f554d Mon Sep 17 00:00:00 2001
From: Aleksandar Cakalic <aleksandar@argent.xyz>
Date: Tue, 10 Dec 2024 09:54:01 +0100
Subject: [PATCH 88/88] chore: add `keplr` and `metamask` injected connector
 exports

---
 package.json                        | 10 ++++++++++
 src/connectors/injected/keplr.ts    |  7 +++++++
 src/connectors/injected/metamask.ts |  7 +++++++
 vite.config.ts                      |  2 ++
 4 files changed, 26 insertions(+)
 create mode 100644 src/connectors/injected/keplr.ts
 create mode 100644 src/connectors/injected/metamask.ts

diff --git a/package.json b/package.json
index 88ecb8a..fdd5346 100644
--- a/package.json
+++ b/package.json
@@ -57,6 +57,16 @@
       "import": "./dist/braavos.js",
       "require": "./dist/braavos.cjs"
     },
+    "./metamask": {
+      "types": "./dist/metamask.d.ts",
+      "import": "./dist/metamask.js",
+      "require": "./dist/metamask.cjs"
+    },
+    "./keplr": {
+      "types": "./dist/keplr.d.ts",
+      "import": "./dist/keplr.js",
+      "require": "./dist/keplr.cjs"
+    },
     "./braavosMobile": {
       "types": "./dist/braavosMobile.d.ts",
       "import": "./dist/braavosMobile.js",
diff --git a/src/connectors/injected/keplr.ts b/src/connectors/injected/keplr.ts
new file mode 100644
index 0000000..a7a118f
--- /dev/null
+++ b/src/connectors/injected/keplr.ts
@@ -0,0 +1,7 @@
+import { InjectedConnector, InjectedConnectorOptions } from "./index"
+
+export class Keplr extends InjectedConnector {
+  constructor(options?: Omit<InjectedConnectorOptions, "id">) {
+    super({ options: { id: "keplr", ...options } })
+  }
+}
diff --git a/src/connectors/injected/metamask.ts b/src/connectors/injected/metamask.ts
new file mode 100644
index 0000000..0b665fd
--- /dev/null
+++ b/src/connectors/injected/metamask.ts
@@ -0,0 +1,7 @@
+import { InjectedConnector, InjectedConnectorOptions } from "./index"
+
+export class MetaMask extends InjectedConnector {
+  constructor(options?: Omit<InjectedConnectorOptions, "id">) {
+    super({ options: { id: "metamask", ...options } })
+  }
+}
diff --git a/vite.config.ts b/vite.config.ts
index ec42e9a..5615239 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -34,6 +34,8 @@ export default defineConfig({
         argent: resolve(__dirname, "src/connectors/argent/index.ts"),
         argentX: resolve(__dirname, "src/connectors/injected/argentX.ts"),
         braavos: resolve(__dirname, "src/connectors/injected/braavos.ts"),
+        metamask: resolve(__dirname, "src/connectors/injected/metamask.ts"),
+        keplr: resolve(__dirname, "src/connectors/injected/keplr.ts"),
       },
       formats: ["es", "cjs"],
     },