From 2c1852a96648f87ae35303d167ea02244151099f Mon Sep 17 00:00:00 2001 From: Ivan Zinchenko Date: Thu, 19 Jun 2025 23:35:07 +0300 Subject: [PATCH] Upload Zinchenko 408657 Lab[1-6] --- .../zinchenko_408657/lab1/README.md" | 1 - .../zinchenko_408657/lab1/code/README.md" | 1 + .../zinchenko_408657/lab1/code/input.txt" | 5 + .../zinchenko_408657/lab1/code/input2.txt" | 5 + .../lab1/code/jest.config.js" | 7 + .../lab1/code/package-lock.json" | 4059 ++++++++++++ .../zinchenko_408657/lab1/code/package.json" | 21 + .../zinchenko_408657/lab1/code/src/index.ts" | 57 + .../zinchenko_408657/lab1/code/src/io.ts" | 113 + .../lab1/code/src/math.test.ts" | 70 + .../zinchenko_408657/lab1/code/src/math.ts" | 88 + .../zinchenko_408657/lab1/code/tsconfig.json" | 110 + .../zinchenko_408657/lab1/report.pdf" | Bin 0 -> 50880 bytes .../zinchenko_408657/lab2/README.md" | 1 - .../zinchenko_408657/lab2/code/.gitignore" | 4 + .../zinchenko_408657/lab2/code/README.md" | 1 + .../lab2/code/jest.config.js" | 4 + .../lab2/code/package-lock.json" | 4457 +++++++++++++ .../zinchenko_408657/lab2/code/package.json" | 27 + .../zinchenko_408657/lab2/code/src/cli.ts" | 19 + .../lab2/code/src/functions.ts" | 63 + .../zinchenko_408657/lab2/code/src/graphs.ts" | 174 + .../zinchenko_408657/lab2/code/src/index.ts" | 141 + .../lab2/code/src/methods.ts" | 83 + .../lab2/code/src/tests/methods.test.js" | 47 + .../lab2/code/src/tests/methods.test.ts" | 52 + .../zinchenko_408657/lab2/code/tsconfig.json" | 110 + .../zinchenko_408657/lab2/report.pdf" | Bin 0 -> 217666 bytes .../zinchenko_408657/lab3/README.md" | 1 - .../zinchenko_408657/lab3/code/.gitignore" | 13 + .../zinchenko_408657/lab3/code/README.md" | 29 + .../lab3/code/jest.config.js" | 11 + .../lab3/code/package-lock.json" | 5665 +++++++++++++++++ .../zinchenko_408657/lab3/code/package.json" | 34 + .../lab3/code/rsbuild.config.ts" | 9 + .../zinchenko_408657/lab3/code/src/App.tsx" | 237 + .../lab3/code/src/components/chart.tsx" | 50 + .../code/src/components/ui/color-mode.tsx" | 107 + .../lab3/code/src/components/ui/provider.tsx" | 15 + .../lab3/code/src/components/ui/toaster.tsx" | 43 + .../lab3/code/src/components/ui/tooltip.tsx" | 46 + .../zinchenko_408657/lab3/code/src/env.d.ts" | 1 + .../zinchenko_408657/lab3/code/src/index.tsx" | 13 + .../lab3/code/src/math/index.test.ts" | 75 + .../lab3/code/src/math/index.ts" | 151 + .../zinchenko_408657/lab3/code/tsconfig.json" | 23 + .../zinchenko_408657/lab3/report.pdf" | Bin 0 -> 69614 bytes .../zinchenko_408657/lab4/README.md" | 1 - .../zinchenko_408657/lab4/code/.gitignore" | 13 + .../zinchenko_408657/lab4/code/README.md" | 29 + .../lab4/code/jest.config.js" | 11 + .../lab4/code/package-lock.json" | 5665 +++++++++++++++++ .../zinchenko_408657/lab4/code/package.json" | 34 + .../lab4/code/rsbuild.config.ts" | 9 + .../zinchenko_408657/lab4/code/src/App.tsx" | 181 + .../lab4/code/src/components/PointsTable.tsx" | 148 + .../lab4/code/src/components/chart.tsx" | 95 + .../code/src/components/ui/color-mode.tsx" | 107 + .../lab4/code/src/components/ui/provider.tsx" | 15 + .../lab4/code/src/components/ui/toaster.tsx" | 43 + .../lab4/code/src/components/ui/tooltip.tsx" | 46 + .../zinchenko_408657/lab4/code/src/env.d.ts" | 1 + .../zinchenko_408657/lab4/code/src/index.tsx" | 13 + .../lab4/code/src/math/index.ts" | 187 + .../zinchenko_408657/lab4/code/tsconfig.json" | 23 + .../zinchenko_408657/lab4/report.pdf" | Bin 0 -> 192665 bytes .../zinchenko_408657/lab5/README.md" | 1 - .../zinchenko_408657/lab5/code/.gitignore" | 13 + .../zinchenko_408657/lab5/code/README.md" | 29 + .../lab5/code/jest.config.js" | 11 + .../zinchenko_408657/lab5/code/package.json" | 34 + .../lab5/code/pnpm-lock.yaml" | 4044 ++++++++++++ .../lab5/code/rsbuild.config.ts" | 9 + .../zinchenko_408657/lab5/code/src/App.tsx" | 307 + .../code/src/components/DifferencesTable.tsx" | 54 + .../code/src/components/FunctionSelector.tsx" | 134 + .../src/components/InterpolationResults.tsx" | 174 + .../lab5/code/src/components/PointsTable.tsx" | 181 + .../lab5/code/src/components/chart.tsx" | 187 + .../code/src/components/ui/color-mode.tsx" | 107 + .../lab5/code/src/components/ui/provider.tsx" | 15 + .../lab5/code/src/components/ui/toaster.tsx" | 43 + .../lab5/code/src/components/ui/tooltip.tsx" | 46 + .../zinchenko_408657/lab5/code/src/env.d.ts" | 1 + .../zinchenko_408657/lab5/code/src/index.tsx" | 13 + .../lab5/code/src/math/interpolation.ts" | 324 + .../lab5/code/src/utils/validation.ts" | 12 + .../zinchenko_408657/lab5/code/tsconfig.json" | 23 + .../zinchenko_408657/lab5/report.pdf" | Bin 0 -> 142923 bytes .../zinchenko_408657/lab6/README.md" | 1 - .../zinchenko_408657/lab6/code/.gitignore" | 13 + .../zinchenko_408657/lab6/code/README.md" | 29 + .../zinchenko_408657/lab6/code/changes.md" | 35 + .../lab6/code/jest.config.js" | 11 + .../zinchenko_408657/lab6/code/package.json" | 34 + .../lab6/code/pnpm-lock.yaml" | 4044 ++++++++++++ .../lab6/code/rsbuild.config.ts" | 9 + .../zinchenko_408657/lab6/code/src/App.tsx" | 187 + .../lab6/code/src/components/ODESelector.tsx" | 148 + .../code/src/components/ResultsTable.tsx" | 74 + .../lab6/code/src/components/chart.tsx" | 117 + .../code/src/components/ui/color-mode.tsx" | 107 + .../lab6/code/src/components/ui/provider.tsx" | 15 + .../lab6/code/src/components/ui/toaster.tsx" | 43 + .../lab6/code/src/components/ui/tooltip.tsx" | 46 + .../zinchenko_408657/lab6/code/src/env.d.ts" | 1 + .../zinchenko_408657/lab6/code/src/index.tsx" | 13 + .../lab6/code/src/math/ode.ts" | 224 + .../lab6/code/src/utils/validation.ts" | 12 + .../zinchenko_408657/lab6/code/tsconfig.json" | 23 + .../zinchenko_408657/lab6/report.pdf" | Bin 0 -> 185228 bytes 111 files changed, 33806 insertions(+), 6 deletions(-) delete mode 100644 "\320\2403212/zinchenko_408657/lab1/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/input.txt" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/input2.txt" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/jest.config.js" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/package-lock.json" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/package.json" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/src/index.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/src/io.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/src/math.test.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/src/math.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab1/code/tsconfig.json" create mode 100644 "\320\2403212/zinchenko_408657/lab1/report.pdf" delete mode 100644 "\320\2403212/zinchenko_408657/lab2/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/.gitignore" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/jest.config.js" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/package-lock.json" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/package.json" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/src/cli.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/src/functions.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/src/graphs.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/src/index.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/src/methods.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/src/tests/methods.test.js" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/src/tests/methods.test.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab2/code/tsconfig.json" create mode 100644 "\320\2403212/zinchenko_408657/lab2/report.pdf" delete mode 100644 "\320\2403212/zinchenko_408657/lab3/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/.gitignore" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/jest.config.js" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/package-lock.json" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/package.json" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/rsbuild.config.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/App.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/components/chart.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/components/ui/color-mode.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/components/ui/provider.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/components/ui/toaster.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/components/ui/tooltip.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/env.d.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/index.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/math/index.test.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/src/math/index.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab3/code/tsconfig.json" create mode 100644 "\320\2403212/zinchenko_408657/lab3/report.pdf" delete mode 100644 "\320\2403212/zinchenko_408657/lab4/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/.gitignore" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/jest.config.js" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/package-lock.json" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/package.json" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/rsbuild.config.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/App.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/components/PointsTable.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/components/chart.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/components/ui/color-mode.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/components/ui/provider.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/components/ui/toaster.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/components/ui/tooltip.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/env.d.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/index.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/src/math/index.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab4/code/tsconfig.json" create mode 100644 "\320\2403212/zinchenko_408657/lab4/report.pdf" delete mode 100644 "\320\2403212/zinchenko_408657/lab5/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/.gitignore" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/jest.config.js" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/package.json" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/pnpm-lock.yaml" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/rsbuild.config.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/App.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/components/DifferencesTable.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/components/FunctionSelector.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/components/InterpolationResults.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/components/PointsTable.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/components/chart.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/components/ui/color-mode.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/components/ui/provider.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/components/ui/toaster.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/components/ui/tooltip.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/env.d.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/index.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/math/interpolation.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/src/utils/validation.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab5/code/tsconfig.json" create mode 100644 "\320\2403212/zinchenko_408657/lab5/report.pdf" delete mode 100644 "\320\2403212/zinchenko_408657/lab6/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/.gitignore" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/README.md" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/changes.md" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/jest.config.js" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/package.json" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/pnpm-lock.yaml" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/rsbuild.config.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/App.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/components/ODESelector.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/components/ResultsTable.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/components/chart.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/components/ui/color-mode.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/components/ui/provider.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/components/ui/toaster.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/components/ui/tooltip.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/env.d.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/index.tsx" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/math/ode.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/src/utils/validation.ts" create mode 100644 "\320\2403212/zinchenko_408657/lab6/code/tsconfig.json" create mode 100644 "\320\2403212/zinchenko_408657/lab6/report.pdf" diff --git "a/\320\2403212/zinchenko_408657/lab1/README.md" "b/\320\2403212/zinchenko_408657/lab1/README.md" deleted file mode 100644 index 5dd8dcc..0000000 --- "a/\320\2403212/zinchenko_408657/lab1/README.md" +++ /dev/null @@ -1 +0,0 @@ -Лабораторная работа 1 diff --git "a/\320\2403212/zinchenko_408657/lab1/code/README.md" "b/\320\2403212/zinchenko_408657/lab1/code/README.md" new file mode 100644 index 0000000..660f8bf --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/README.md" @@ -0,0 +1 @@ +Для запуска прописать `npm run start` \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab1/code/input.txt" "b/\320\2403212/zinchenko_408657/lab1/code/input.txt" new file mode 100644 index 0000000..64887a0 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/input.txt" @@ -0,0 +1,5 @@ +3 +4 1 1 +2 5 2 +1 2 4 +6 12 10 \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab1/code/input2.txt" "b/\320\2403212/zinchenko_408657/lab1/code/input2.txt" new file mode 100644 index 0000000..c2ba34a --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/input2.txt" @@ -0,0 +1,5 @@ +3 +2 2 10 +10 1 1 +2 10 1 +14 12 13 \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab1/code/jest.config.js" "b/\320\2403212/zinchenko_408657/lab1/code/jest.config.js" new file mode 100644 index 0000000..2f3ecbe --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/jest.config.js" @@ -0,0 +1,7 @@ +/** @type {import('ts-jest').JestConfigWithTsJest} **/ +module.exports = { + testEnvironment: "node", + transform: { + "^.+\.tsx?$": ["ts-jest",{}], + }, +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab1/code/package-lock.json" "b/\320\2403212/zinchenko_408657/lab1/code/package-lock.json" new file mode 100644 index 0000000..8bfd25b --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/package-lock.json" @@ -0,0 +1,4059 @@ +{ + "name": "1", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "1", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "ts-node": "^10.9.2", + "typescript": "^5.8.2" + }, + "devDependencies": { + "@types/jest": "^29.5.14", + "jest": "^29.7.0", + "ts-jest": "^29.2.6" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ampproject/remapping/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.10.tgz", + "integrity": "sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.10", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.10", + "@babel/parser": "^7.26.10", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.10", + "@babel/types": "^7.26.10", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.10.tgz", + "integrity": "sha512-rRHT8siFIXQrAYOYqZQVsAr8vJ+cBNqcVAY6m5V8/4QqzaPl+zDBe6cLEPRDuNOUf3ww8RfJVlOyQMoSI+5Ang==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.26.10", + "@babel/types": "^7.26.10", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", + "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.26.5", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.10.tgz", + "integrity": "sha512-UPYc3SauzZ3JGgj87GgZ89JVdC5dj0AoetR5Bw6wj4niittNyFh6+eOGonYvJ1ao6B8lEa3Q3klS7ADZ53bc5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.10.tgz", + "integrity": "sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.26.10" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz", + "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz", + "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz", + "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.10.tgz", + "integrity": "sha512-k8NuDrxr0WrPH5Aupqb2LCVURP/S0vBEn5mK6iH+GIYob66U5EtoZvcdudR2jQ4cmTwhEwW1DLB+Yyas9zjF6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.10", + "@babel/parser": "^7.26.10", + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.10", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.10.tgz", + "integrity": "sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "license": "MIT" + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "license": "MIT" + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "license": "MIT" + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "license": "MIT" + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/node": { + "version": "22.13.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.11.tgz", + "integrity": "sha512-iEUCUJoU0i3VnrCmgoWCXttklWcvoCIx4jzcP22fioIVSdTmjgoEvmAO/QPw6TcS9k5FrNgn4w7q5lGOd1CT5g==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.20.0" + } + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "license": "MIT" + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "license": "MIT", + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001706", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001706.tgz", + "integrity": "sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz", + "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/dedent": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.123", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.123.tgz", + "integrity": "sha512-refir3NlutEZqlKaBLK0tzlVLe5P2wDKS7UQt/3SpibizgsRAPOsqQC3ffw1nlv3ze5gjRQZYHoPymgVZkplFA==", + "dev": true, + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true, + "license": "MIT" + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jake": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", + "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "license": "MIT", + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT" + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "license": "ISC" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ], + "license": "MIT" + }, + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "license": "ISC", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-jest": { + "version": "29.2.6", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.2.6.tgz", + "integrity": "sha512-yTNZVZqc8lSixm+QGVFcPe6+yj7+TWZwIesuOWvfcn4B9bz5x4NDzVCQQjOs7Hfouu36aEqfEbo9Qpo+gq8dDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "bs-logger": "^0.2.6", + "ejs": "^3.1.10", + "fast-json-stable-stringify": "^2.1.0", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "^4.1.2", + "make-error": "^1.3.6", + "semver": "^7.7.1", + "yargs-parser": "^21.1.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/transform": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-node": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", + "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", + "license": "MIT", + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "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 + } + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.8.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz", + "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==", + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "license": "MIT" + }, + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", + "dev": true, + "license": "ISC", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git "a/\320\2403212/zinchenko_408657/lab1/code/package.json" "b/\320\2403212/zinchenko_408657/lab1/code/package.json" new file mode 100644 index 0000000..7da9e69 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/package.json" @@ -0,0 +1,21 @@ +{ + "name": "1", + "version": "1.0.0", + "main": "index.js", + "scripts": { + "start": "ts-node ./src/index.ts", + "test": "jest" + }, + "author": "", + "license": "ISC", + "description": "", + "dependencies": { + "ts-node": "^10.9.2", + "typescript": "^5.8.2" + }, + "devDependencies": { + "@types/jest": "^29.5.14", + "jest": "^29.7.0", + "ts-jest": "^29.2.6" + } +} diff --git "a/\320\2403212/zinchenko_408657/lab1/code/src/index.ts" "b/\320\2403212/zinchenko_408657/lab1/code/src/index.ts" new file mode 100644 index 0000000..d28d181 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/src/index.ts" @@ -0,0 +1,57 @@ +#!/usr/bin/env ts-node + +import { printMatrix, printVector, readInput } from './io'; +import { + isDiagonallyDominant, + findDiagonalDominantPermutation, + calculateIterationMatrixNorm, + iterateSimpleIterations +} from './math' + +async function main() { + let { A, b, epsilon } = await readInput(); + console.log("Исходная матрица A:"); + printMatrix(A); + console.log(); + + console.log("Вектор b:"); + printVector(b); + console.log(); + + if (!isDiagonallyDominant(A)) { + console.log("Матрица не обладает диагональным преобладанием. Попытаемся переставить строки для достижения диагонального преобладания..."); + const result = findDiagonalDominantPermutation(A, b); + if (!result) { + console.log("Не удалось достичь диагонального преобладания перестановками строк."); + return; + } + console.log("Успешно достигнуто диагональное преобладание после перестановки строк. Новая матрица A:"); + printMatrix(result.A); + console.log(); + + console.log("Новый вектор b:"); + printVector(result.b); + console.log(); + + A = result.A; + b = result.b; + } + console.log("Матрица обладает диагональным преобладанием."); + + const B_norm = calculateIterationMatrixNorm(A); + console.log(`Норма матрицы итераций: ${B_norm.toFixed(6)}`); + if (B_norm >= 1) { + console.warn("Норма матрицы итераций >= 1, метод может не сходиться."); + } + + const { x, iterations, errorVector } = iterateSimpleIterations(A, b, epsilon); + console.log("Вектор неизвестных (решение системы):"); + printVector(x); + console.log(); + + console.log(`Количество итераций: ${iterations}`); + console.log("Вектор погрешностей на каждой итерации:"); + console.table(errorVector); +} + +main(); \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab1/code/src/io.ts" "b/\320\2403212/zinchenko_408657/lab1/code/src/io.ts" new file mode 100644 index 0000000..75b5ef6 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/src/io.ts" @@ -0,0 +1,113 @@ +import { randomInt } from 'crypto'; +import * as fs from 'fs'; +import * as readline from 'readline'; + +function prompt(question: string): Promise { + const rl = readline.createInterface({ + input: process.stdin, + output: process.stdout + }); + return new Promise(resolve => rl.question(question, ans => { + rl.close(); + resolve(ans); + })); +} + +async function readInput(): Promise<{ A: number[][], b: number[], epsilon: number }> { + const choice = await prompt("Выберите способ ввода коэффициентов матрицы (1 - с клавиатуры, 2 - из файла, 3 - рандом): "); + let A: number[][] = []; + let b: number[] = []; + switch (choice.trim()) { + case "1": + await readKeyboard(); + break; + case "2": + await readFile(); + break; + case "3": + await randomMatrix(); + break; + default: + console.error("Неверный выбор ввода."); + process.exit(1); + break; + } + const epsilonStr = await prompt("Введите точность (epsilon): "); + const epsilon = parseFloat(epsilonStr.trim()); + return { A, b, epsilon }; + + async function randomMatrix() { + const nStr = await prompt("Введите размерность системы (n): "); + const n = parseInt(nStr.trim()); + for (let i = 0; i < n; i++) { + A.push([]); + for (let j = 0; j < n; j++) { + A[i].push(randomInt(100)); + } + } + for (let i = 0; i < n; i++) { + b.push(randomInt(100)); + } + } + + async function readFile() { + const filename = await prompt("Введите имя файла с данными: "); + try { + const data = fs.readFileSync(filename.trim(), 'utf8'); + const lines = data.trim().split('\n').map(line => line.trim()).filter(line => line.length > 0); + const n = parseInt(lines[0]); + for (let i = 1; i <= n; i++) { + const row = lines[i].split(/\s+/).map(Number); + if (row.length !== n) { + console.error(`Некорректное количество элементов в строке ${i}`); + process.exit(1); + } + A.push(row); + } + b = lines[n + 1].split(/\s+/).map(Number); + if (b.length !== n) { + console.error("Некорректное количество элементов в векторе b"); + process.exit(1); + } + } catch (err) { + console.error("Ошибка чтения файла:", err); + process.exit(1); + } + } + + async function readKeyboard() { + const nStr = await prompt("Введите размерность системы (n): "); + const n = parseInt(nStr.trim()); + console.log("Введите коэффициенты матрицы A (по строкам, разделяя пробелами):"); + for (let i = 0; i < n; i++) { + const rowStr = await prompt(`Строка ${i + 1}: `); + const row = rowStr.trim().split(/\s+/).map(Number); + if (row.length !== n) { + console.error("Некорректное количество элементов в строке"); + process.exit(1); + } + A.push(row); + } + console.log("Введите вектор свободных членов b:"); + const bStr = await prompt(`Введите ${n} чисел, разделённых пробелами: `); + b = bStr.trim().split(/\s+/).map(Number); + if (b.length !== n) { + console.error("Некорректное количество элементов в векторе b"); + process.exit(1); + } + } +} + +function printVector(v: number[], separator: string = '\t'): void { + console.log(v.map(num => num.toFixed(6)).join(separator)); +} + +function printMatrix(A: number[][], separator: string = ' '): void { + A.forEach(v => printVector(v, separator)); +} + +export { + readInput, + printVector, + printMatrix +} \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab1/code/src/math.test.ts" "b/\320\2403212/zinchenko_408657/lab1/code/src/math.test.ts" new file mode 100644 index 0000000..c4b0512 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/src/math.test.ts" @@ -0,0 +1,70 @@ +import { + isDiagonallyDominant, + findDiagonalDominantPermutation, + calculateIterationMatrixNorm, + iterateSimpleIterations +} from './math'; + +describe('Метод простых итераций - тесты', () => { + + test('Проверка диагонального преобладания: матрица с диагональным преобладанием', () => { + const A = [ + [5, 1, 1], + [1, 4, 1], + [1, 1, 3] + ]; + expect(isDiagonallyDominant(A)).toBe(true); + }); + + test('Проверка диагонального преобладания: матрица без диагонального преобладания', () => { + const A = [ + [1, 2, 3], + [4, 5, 6], + [7, 8, 9] + ]; + expect(isDiagonallyDominant(A)).toBe(false); + }); + + test('findDiagonalDominantPermutation: должна найти перестановку с диагональным преобладанием, если возможно', () => { + const A = [ + [1, 2], + [3, 1] + ]; + const b = [4, 5]; + const result = findDiagonalDominantPermutation(A, b); + expect(result).not.toBeNull(); + if (result !== null) { + expect(isDiagonallyDominant(result.A)).toBe(true); + } + }); + + test('calculateIterationMatrixNorm: вычисление нормы матрицы итераций', () => { + // Для матрицы A: + // A[0]: [10, 2] -> сумма для i=0: |2/10| = 0.2 + // A[1]: [3, 15] -> сумма для i=1: |3/15| = 0.2 + // Ожидаемая норма = 0.2 + const A = [ + [10, 2], + [3, 15] + ]; + const norm = calculateIterationMatrixNorm(A); + expect(norm).toBeCloseTo(0.2, 4); + }); + + test('iterateSimpleIterations: итерационный процесс сходится к ожидаемому решению', () => { + // Рассмотрим систему: + // 10x + 2y = 14 + // 3x +15y = 27 + // Ожидаемое решение: x = 13/12 ~ 1.08333, y = 19/12 ~ 1.58333 + const A = [ + [10, 2], + [3, 15] + ]; + const b = [14, 27]; + const epsilon = 1e-6; + const { x, iterations } = iterateSimpleIterations(A, b, epsilon, 1000); + expect(x[0]).toBeCloseTo(13 / 12, 4); + expect(x[1]).toBeCloseTo(19 / 12, 4); + expect(iterations).toBeGreaterThan(0); + }); +}); diff --git "a/\320\2403212/zinchenko_408657/lab1/code/src/math.ts" "b/\320\2403212/zinchenko_408657/lab1/code/src/math.ts" new file mode 100644 index 0000000..7b28c4b --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/src/math.ts" @@ -0,0 +1,88 @@ +function rowAbsSum(row: number[]): number { + return row.reduce((prev, curr) => prev + Math.abs(curr), 0); +} + +function isDiagonallyDominant(A: number[][]): boolean { + const n = A.length; + for (let i = 0; i < n; i++) { + if (2*Math.abs(A[i][i]) < rowAbsSum(A[i])) { + return false; + } + } + return true; +} + +function findDiagonalDominantPermutation(A: number[][], b: number[]): { A: number[][], b: number[], perm: number[] } | null { + const n = A.length; + const used = Array(n).fill(false); + const perm: number[] = []; + let bestResult: { A: number[][], b: number[], perm: number[] } | null = null; + + function backtracking(level: number) { + if (level === n) { + const A_perm = perm.map(i => A[i]); + if (!isDiagonallyDominant(A_perm)) return; + const b_perm = perm.map(i => b[i]); + bestResult = { A: A_perm, b: b_perm, perm: [...perm] }; + return; + } + for (let i = 0; i < n; i++) { + if (!used[i]) { + used[i] = true; + perm.push(i); + backtracking(level + 1); + if (bestResult !== null) return; + perm.pop(); + used[i] = false; + } + } + } + backtracking(0); + return bestResult; +} + +function calculateIterationMatrixNorm(A: number[][]): number { + const n = A.length; + let norm = 0; + for (let i = 0; i < n; i++) { + let rowSum = A[i].reduce((prev, curr) => prev + Math.abs(curr/A[i][i]), 0) - 1; + norm = Math.max(rowSum, norm) + } + return norm; +} + +function iterateSimpleIterations(A: number[][], b: number[], epsilon: number, maxIterations: number = 1000): + { x: number[], iterations: number, errorVector: number[] } { + const n = A.length; + let x: number[] = new Array(n).fill(0); + let x_new: number[] = new Array(n).fill(0); + let errorVector: number[] = []; + + for (let iter = 1; iter <= maxIterations; iter++) { + for (let i = 0; i < n; i++) { + let sum = 0; + for (let j = 0; j < n; j++) { + if (j !== i) { + sum += A[i][j] * x[j]; + } + } + x_new[i] = (b[i] - sum) / A[i][i]; + } + + let error = x_new.reduce((prev, curr, index) => Math.max(prev, Math.abs(curr - x[index])), 0); + errorVector.push(error) + if (error < epsilon) { + return { x: x_new, iterations: iter, errorVector }; + } + x = [...x_new]; + } + console.warn("Достигнуто максимальное число итераций без сходимости"); + return { x: x_new, iterations: maxIterations, errorVector }; +} + +export { + isDiagonallyDominant, + findDiagonalDominantPermutation, + calculateIterationMatrixNorm, + iterateSimpleIterations, +} \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab1/code/tsconfig.json" "b/\320\2403212/zinchenko_408657/lab1/code/tsconfig.json" new file mode 100644 index 0000000..56a8ab8 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab1/code/tsconfig.json" @@ -0,0 +1,110 @@ +{ + "compilerOptions": { + /* Visit https://aka.ms/tsconfig to read more about this file */ + + /* Projects */ + // "incremental": true, /* Save .tsbuildinfo files to allow for incremental compilation of projects. */ + // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */ + // "tsBuildInfoFile": "./.tsbuildinfo", /* Specify the path to .tsbuildinfo incremental compilation file. */ + // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects. */ + // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */ + // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */ + + /* Language and Environment */ + "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ + // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ + // "jsx": "preserve", /* Specify what JSX code is generated. */ + // "experimentalDecorators": true, /* Enable experimental support for legacy experimental decorators. */ + // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */ + // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'. */ + // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */ + // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'. */ + // "reactNamespace": "", /* Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit. */ + // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */ + // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */ + // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */ + + /* Modules */ + "module": "commonjs", /* Specify what module code is generated. */ + // "rootDir": "./", /* Specify the root folder within your source files. */ + // "moduleResolution": "node10", /* Specify how TypeScript looks up a file from a given module specifier. */ + // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ + // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */ + // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */ + // "typeRoots": [], /* Specify multiple folders that act like './node_modules/@types'. */ + // "types": [], /* Specify type package names to be included without being referenced in a source file. */ + // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ + // "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */ + // "allowImportingTsExtensions": true, /* Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set. */ + // "resolvePackageJsonExports": true, /* Use the package.json 'exports' field when resolving package imports. */ + // "resolvePackageJsonImports": true, /* Use the package.json 'imports' field when resolving imports. */ + // "customConditions": [], /* Conditions to set in addition to the resolver-specific defaults when resolving imports. */ + // "noUncheckedSideEffectImports": true, /* Check side effect imports. */ + // "resolveJsonModule": true, /* Enable importing .json files. */ + // "allowArbitraryExtensions": true, /* Enable importing files with any extension, provided a declaration file is present. */ + // "noResolve": true, /* Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project. */ + + /* JavaScript Support */ + // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */ + // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */ + // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */ + + /* Emit */ + // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */ + // "declarationMap": true, /* Create sourcemaps for d.ts files. */ + // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ + // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ + // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ + // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ + // "outDir": "./", /* Specify an output folder for all emitted files. */ + // "removeComments": true, /* Disable emitting comments. */ + // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ + // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ + // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ + // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ + // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */ + // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */ + // "newLine": "crlf", /* Set the newline character for emitting files. */ + // "stripInternal": true, /* Disable emitting declarations that have '@internal' in their JSDoc comments. */ + // "noEmitHelpers": true, /* Disable generating custom helper functions like '__extends' in compiled output. */ + // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */ + // "preserveConstEnums": true, /* Disable erasing 'const enum' declarations in generated code. */ + // "declarationDir": "./", /* Specify the output directory for generated declaration files. */ + + /* Interop Constraints */ + // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */ + // "verbatimModuleSyntax": true, /* Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting. */ + // "isolatedDeclarations": true, /* Require sufficient annotation on exports so other tools can trivially generate declaration files. */ + // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ + "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */ + // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */ + "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */ + + /* Type Checking */ + "strict": true, /* Enable all strict type-checking options. */ + // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied 'any' type. */ + // "strictNullChecks": true, /* When type checking, take into account 'null' and 'undefined'. */ + // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */ + // "strictBindCallApply": true, /* Check that the arguments for 'bind', 'call', and 'apply' methods match the original function. */ + // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */ + // "strictBuiltinIteratorReturn": true, /* Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'. */ + // "noImplicitThis": true, /* Enable error reporting when 'this' is given the type 'any'. */ + // "useUnknownInCatchVariables": true, /* Default catch clause variables as 'unknown' instead of 'any'. */ + // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */ + // "noUnusedLocals": true, /* Enable error reporting when local variables aren't read. */ + // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read. */ + // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */ + // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */ + // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */ + // "noUncheckedIndexedAccess": true, /* Add 'undefined' to a type when accessed using an index. */ + // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */ + // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type. */ + // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */ + // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */ + + /* Completeness */ + // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */ + "skipLibCheck": true /* Skip type checking all .d.ts files. */ + } +} diff --git "a/\320\2403212/zinchenko_408657/lab1/report.pdf" "b/\320\2403212/zinchenko_408657/lab1/report.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..2b60efba239068d732cf5da5b3debd4155450c01 GIT binary patch literal 50880 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�$G@vebM;*MhScE%H=tvve<3As3z|-OQU1 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 J>vC%H{{zlu?REeF literal 0 HcmV?d00001 diff --git "a/\320\2403212/zinchenko_408657/lab2/README.md" "b/\320\2403212/zinchenko_408657/lab2/README.md" deleted file mode 100644 index 2999024..0000000 --- "a/\320\2403212/zinchenko_408657/lab2/README.md" +++ /dev/null @@ -1 +0,0 @@ -Лабораторная работа 2 diff --git "a/\320\2403212/zinchenko_408657/lab2/code/.gitignore" "b/\320\2403212/zinchenko_408657/lab2/code/.gitignore" new file mode 100644 index 0000000..bd9920e --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/.gitignore" @@ -0,0 +1,4 @@ +node_modules +.vscode +*.html +.idea \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab2/code/README.md" "b/\320\2403212/zinchenko_408657/lab2/code/README.md" new file mode 100644 index 0000000..324f10e --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/README.md" @@ -0,0 +1 @@ +Для запуска программы используйте `npm run run` \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab2/code/jest.config.js" "b/\320\2403212/zinchenko_408657/lab2/code/jest.config.js" new file mode 100644 index 0000000..f7475c3 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/jest.config.js" @@ -0,0 +1,4 @@ +module.exports = { + preset: "ts-jest", + testEnvironment: "node", +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab2/code/package-lock.json" "b/\320\2403212/zinchenko_408657/lab2/code/package-lock.json" new file mode 100644 index 0000000..29adf33 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/package-lock.json" @@ -0,0 +1,4457 @@ +{ + "name": "2", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "2", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "chartjs-node-canvas": "^5.0.0", + "readline-sync": "^1.4.10", + "yargs": "^17.7.2" + }, + "devDependencies": { + "@types/jest": "^29.5.14", + "@types/node": "^22.14.1", + "@types/readline-sync": "^1.4.8", + "jest": "^29.7.0", + "ts-jest": "^29.3.2", + "ts-node": "^10.9.2", + "typescript": "^5.8.3" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.10.tgz", + "integrity": "sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.10", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.10", + "@babel/parser": "^7.26.10", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.10", + "@babel/types": "^7.26.10", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", + "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz", + "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.26.8", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", + "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", + "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz", + "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz", + "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz", + "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", + "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.27.0", + "@babel/parser": "^7.27.0", + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", + "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@kurkle/color": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.4.tgz", + "integrity": "sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==", + "license": "MIT", + "peer": true + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/node": { + "version": "22.14.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz", + "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/readline-sync": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/@types/readline-sync/-/readline-sync-1.4.8.tgz", + "integrity": "sha512-BL7xOf0yKLA6baAX6MMOnYkoflUyj/c7y3pqMRfU0va7XlwHAOTOIo4x55P/qLfMsuaYdJJKubToLqRVmRtRZA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true, + "license": "MIT" + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "license": "MIT", + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001714", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001714.tgz", + "integrity": "sha512-mtgapdwDLSSBnCI3JokHM7oEQBLxiJKVRtg10AxM1AyeiKcM96f0Mkbqeq+1AbiCtvMcHRulAAEMu693JrSWqg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/canvas": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-3.1.0.tgz", + "integrity": "sha512-tTj3CqqukVJ9NgSahykNwtGda7V33VLObwrHfzT0vqJXu7J4d4C/7kQQW3fOEGDfZZoILPut5H00gOjyttPGyg==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "node-addon-api": "^7.0.0", + "prebuild-install": "^7.1.1" + }, + "engines": { + "node": "^18.12.0 || >= 20.9.0" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/chart.js": { + "version": "4.4.9", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.9.tgz", + "integrity": "sha512-EyZ9wWKgpAU0fLJ43YAEIF8sr5F2W3LqbS40ZJyHIner2lY14ufqv2VMp69MAiZ2rpwxEUxEhIH/0U3xyRynxg==", + "license": "MIT", + "peer": true, + "dependencies": { + "@kurkle/color": "^0.3.0" + }, + "engines": { + "pnpm": ">=8" + } + }, + "node_modules/chartjs-node-canvas": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/chartjs-node-canvas/-/chartjs-node-canvas-5.0.0.tgz", + "integrity": "sha512-+Lc5phRWjb+UxAIiQpKgvOaG6Mw276YQx2jl2BrxoUtI3A4RYTZuGM5Dq+s4ReYmCY42WEPSR6viF3lDSTxpvw==", + "license": "MIT", + "dependencies": { + "canvas": "^3.1.0", + "tslib": "^2.8.1" + }, + "peerDependencies": { + "chart.js": "^4.4.8" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "license": "ISC" + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz", + "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dedent": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.138", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.138.tgz", + "integrity": "sha512-FWlQc52z1dXqm+9cCJ2uyFgJkESd+16j6dBEjsgDNuHjBpuIzL8/lRc0uvh1k8RNI6waGo6tcy2DvwkTBJOLDg==", + "dev": true, + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", + "license": "(MIT OR WTFPL)", + "engines": { + "node": ">=6" + } + }, + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "license": "MIT" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "license": "MIT" + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true, + "license": "MIT" + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "license": "ISC" + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jake": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", + "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "license": "MIT", + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT" + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true, + "license": "ISC" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/napi-build-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz", + "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==", + "license": "MIT" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-abi": { + "version": "3.74.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.74.0.tgz", + "integrity": "sha512-c5XK0MjkGBrQPGYG24GBADZud0NCbznxNx0ZkS+ebUTrmV1qTDxPxSL8zEAPURXSbLRWVexxmP4986BziahL5w==", + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "license": "MIT" + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/prebuild-install": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz", + "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==", + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^2.0.0", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pump": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", + "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ], + "license": "MIT" + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readline-sync": { + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/readline-sync/-/readline-sync-1.4.10.tgz", + "integrity": "sha512-gNva8/6UAe8QYepIQH/jQ2qn91Qj0B9sYjMBBs3QOB8F2CXcKgLxQaJRP76sWVRQt+QU+8fAkCbCvjjMFu7Ycw==", + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tar-fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.2.tgz", + "integrity": "sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==", + "license": "MIT", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "license": "MIT", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "license": "ISC", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-jest": { + "version": "29.3.2", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.3.2.tgz", + "integrity": "sha512-bJJkrWc6PjFVz5g2DGCNUo8z7oFEYaz1xP1NpeDU7KNLMWPpEyV8Chbpkn8xjzgRDpQhnGMyvyldoL7h8JXyug==", + "dev": true, + "license": "MIT", + "dependencies": { + "bs-logger": "^0.2.6", + "ejs": "^3.1.10", + "fast-json-stable-stringify": "^2.1.0", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "^4.1.2", + "make-error": "^1.3.6", + "semver": "^7.7.1", + "type-fest": "^4.39.1", + "yargs-parser": "^21.1.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/transform": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-jest/node_modules/type-fest": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.0.tgz", + "integrity": "sha512-ABHZ2/tS2JkvH1PEjxFDTUWC8dB5OsIGZP4IFLhR293GqT5Y5qB1WwL2kMPYhQW9DVgVD8Hd7I8gjwPIf5GFkw==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ts-node": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", + "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "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 + } + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true, + "license": "MIT" + }, + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", + "dev": true, + "license": "ISC", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git "a/\320\2403212/zinchenko_408657/lab2/code/package.json" "b/\320\2403212/zinchenko_408657/lab2/code/package.json" new file mode 100644 index 0000000..c929295 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/package.json" @@ -0,0 +1,27 @@ +{ + "name": "2", + "version": "1.0.0", + "scripts": { + "build": "tsc", + "start": "node dist/index.js", + "run": "ts-node src/index.ts", + "test": "jest" + }, + "author": "", + "license": "ISC", + "description": "", + "dependencies": { + "chartjs-node-canvas": "^5.0.0", + "readline-sync": "^1.4.10", + "yargs": "^17.7.2" + }, + "devDependencies": { + "@types/jest": "^29.5.14", + "@types/node": "^22.14.1", + "@types/readline-sync": "^1.4.8", + "jest": "^29.7.0", + "ts-jest": "^29.3.2", + "ts-node": "^10.9.2", + "typescript": "^5.8.3" + } +} diff --git "a/\320\2403212/zinchenko_408657/lab2/code/src/cli.ts" "b/\320\2403212/zinchenko_408657/lab2/code/src/cli.ts" new file mode 100644 index 0000000..0324ba2 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/src/cli.ts" @@ -0,0 +1,19 @@ +import * as readline from 'readline'; + +async function question(query: string, defaultValue?: string): Promise { + const rl = readline.createInterface({ + input: process.stdin, + output: process.stdout + }); + return new Promise(resolve => { + rl.question(query, ans => { + rl.close(); + const trimmed = ans.trim(); + resolve(trimmed === '' ? defaultValue ?? '' : trimmed); + }); + }); +} + +export { + question +} \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab2/code/src/functions.ts" "b/\320\2403212/zinchenko_408657/lab2/code/src/functions.ts" new file mode 100644 index 0000000..3c20f90 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/src/functions.ts" @@ -0,0 +1,63 @@ +type Func = (x: number) => number; +type Derivative = (x: number) => number; + +interface Equation { + name: string; + f: Func; + df: Derivative; +} + +const equations: Equation[] = [ + { + name: 'f1(x) = -1.8*x^3 - 2.94*x^2 + 10.37*x + 5.38', + f: x => -1.8 * x ** 3 - 2.94 * x ** 2 + 10.37 * x + 5.38, + df: x => -5.4 * x ** 2 - 5.88 * x + 10.37, + }, + { + name: 'f2(x) = x^3 - 3.125*x^2 - 3.5*x + 2.458', + f: x => x ** 3 - 3.125 * x ** 2 - 3.5 * x + 2.458, + df: x => 3 * x ** 2 - 6.25 * x - 3.5, + }, + { + name: 'f3(x) = ln(x)^3 + e^x - π', + f: x => Math.log(x) ** 3 + Math.exp(x) - Math.PI, + df: x => 3 * Math.log(x) ** 2 / x + Math.exp(x), + }, +]; + +interface System { + name: string; + phi1: (x: number, y: number) => number; + phi2: (x: number, y: number) => number; + f1: (x: number, y: number) => number, + f2: (x: number, y: number) => number; + graphDomain: { xMin: number; xMax: number }; +} + +const systems: System[] = [ + { + name: 'Система 1: x^2+2y^2=1 и sin(x+y)=1.5x-0.1', + phi1: (x, y) => x + 0.2*(1 - (x*x + 2*y*y)), + phi2: (x, y) => y + 0.2*(1.5*x - 0.1 - Math.sin(x + y)), + f1: (x, y) => x*x + 2*y*y - 1, + f2: (x, y) => Math.sin(x+y) - 1.5*x + 0.1, + graphDomain: { xMin: -Math.sqrt(2), xMax: Math.sqrt(2) }, + }, + { + name: 'Система 2: sin(y+2)-x=1.5 и y+cos(x-2)=0.5', + phi1: (_x, y) => Math.sin(y + 2) - 1.5, + phi2: (x, _y) => 0.5 - Math.cos(x - 2), + f1: (x, y) => Math.sin(y+2) - x - 1.5, + f2: (x, y) => y + Math.cos(x-2) - 0.5, + graphDomain: { xMin: -2.5, xMax: 2.5 }, + }, +]; + +export { + Func, + Derivative, + Equation, + System, + equations, + systems +} \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab2/code/src/graphs.ts" "b/\320\2403212/zinchenko_408657/lab2/code/src/graphs.ts" new file mode 100644 index 0000000..1be8d3b --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/src/graphs.ts" @@ -0,0 +1,174 @@ +import { Func, System } from "./functions"; +import * as fs from 'fs'; +import { RootResult, SystemResult } from "./methods"; + +// ==================== Graph Generation ==================== +function generateEquationGraph( + f: Func, + a: number, + b: number, + outputPath: string, + title: string, + root: RootResult +) { + const N = 200; + const pts: Array<{ x: number; y: number }> = []; + for (let i = 0; i <= N; i++) { + const x = a + ((b - a) * i) / N; + pts.push({ x, y: f(x) }); + } + + const rootPoint = { x: root.root, y: root.fAtRoot }; + + const html = ` + + + + + ${title} + + + + + + +`; + + fs.writeFileSync(outputPath, html); +} + +function generateSystemGraph( + sys: System, + outputPath: string, + root: SystemResult +): void { + const xMin = root.x - 2; + const xMax = root.x + 2; + const yMin = root.y - 2; + const yMax = root.y + 2; + const N = 200; + const data1: Array<{ x: number; y: number }> = []; + const data2: Array<{ x: number; y: number }> = []; + + function hasSignChange(vals: number[]): boolean { + const s0 = Math.sign(vals[0]); + return vals.slice(1).some(v => Math.sign(v) !== s0); + } + + for (let i = 0; i < N; i++) { + for (let j = 0; j < N; j++) { + const x1 = xMin + ((xMax - xMin) * i) / N; + const y1 = yMin + ((yMax - yMin) * j) / N; + const x2 = xMin + ((xMax - xMin) * (i + 1)) / N; + const y2 = yMin + ((yMax - yMin) * (j + 1)) / N; + + try { + const v1 = [ + sys.f1(x1, y1), + sys.f1(x2, y1), + sys.f1(x1, y2), + sys.f1(x2, y2) + ]; + if (hasSignChange(v1)) { + data1.push({ x: (x1 + x2) / 2, y: (y1 + y2) / 2 }); + } + } catch { } + + try { + const v2 = [ + sys.f2(x1, y1), + sys.f2(x2, y1), + sys.f2(x1, y2), + sys.f2(x2, y2) + ]; + if (hasSignChange(v2)) { + data2.push({ x: (x1 + x2) / 2, y: (y1 + y2) / 2 }); + } + } catch { } + } + } + + const rootPoint = { x: root.x, y: root.y }; + + const html = ` + + + + ${sys.name} + + + + + + +`; + + fs.writeFileSync(outputPath, html); +} + +export { + generateEquationGraph, + generateSystemGraph +}; diff --git "a/\320\2403212/zinchenko_408657/lab2/code/src/index.ts" "b/\320\2403212/zinchenko_408657/lab2/code/src/index.ts" new file mode 100644 index 0000000..cdb287b --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/src/index.ts" @@ -0,0 +1,141 @@ +import * as path from 'path'; +import { Equation, equations, systems } from './functions'; +import { + chord, + newton, + RootResult, + simpleIteration, + simpleIterationSystem +} from './methods'; +import { question } from './cli'; +import { generateEquationGraph, generateSystemGraph } from './graphs'; + +enum MainOption { + Equation = '1', + System = '2' +} + +enum EquationMethod { + Chord = '1', + Newton = '2', + SimpleIteration = '3' +} + +async function selectMainOption(): Promise { + console.log('=== Решение нелинейных задач ==='); + console.log('1) Решение уравнения'); + console.log('2) Решение системы уравнений'); + const choice = await question('Выберите опцию (1 или 2): '); + + if ([MainOption.Equation, MainOption.System].includes(choice as MainOption)) { + return choice as MainOption; + } + + console.error('Неверный выбор. Пожалуйста, введите 1 или 2.'); + process.exit(1); +} + +async function selectEquation(): Promise { + equations.forEach((eq, i) => console.log(`${i + 1}) ${eq.name}`)); + const idx = parseInt(await question('Выберите номер уравнения: '), 10); + const eq = equations[idx - 1]; + + if (!eq) { + console.error('Неверный номер уравнения'); + process.exit(1); + } + + return eq; +} + +const methods = { + [EquationMethod.Chord]: chord, + [EquationMethod.Newton]: newton, + [EquationMethod.SimpleIteration]: simpleIteration +} + +async function solveEquationFlow(): Promise { + const eq = await selectEquation(); + const a = parseFloat(await question('Введите левую границу a: ', '-5')); + const b = parseFloat(await question('Введите правую границу b: ', '5')); + const eps = parseFloat( + await question('Введите точность ε (например, 1e-5): ', '1e-5') + ); + + if (eq.f(a) * eq.f(b) > 0) { + console.error('На отрезке нет корня'); + return; + } + + console.log('Методы:\n1) Хорды\n2) Ньютона\n3) Итерации'); + const methodChoice = await question('Выберите метод (1, 2 или 3): '); + const method = methods[methodChoice as EquationMethod]; + if (!method) { + console.error('Неверный метод'); + return; + } + const result: RootResult = method(eq.f, eq.df, a, b, eps); + + console.log(`Корень: ${result.root}`); + console.log(`f(x): ${result.fAtRoot}`); + console.log(`Итераций: ${result.iterations}`); + + const outputFile = path.resolve(process.cwd(), 'equation_graph.html'); + generateEquationGraph(eq.f, a, b, outputFile, eq.name, result); + console.log(`График сохранён: ${outputFile}`); +} + +async function selectSystem(): Promise { + systems.forEach((sys, i) => console.log(`${i + 1}) ${sys.name}`)); + const idx = parseInt(await question('Выберите номер системы: '), 10); + const sys = systems[idx - 1]; + + if (!sys) { + console.error('Неверный номер системы'); + process.exit(1); + } + + return sys; +} + +async function solveSystemFlow(): Promise { + const sys = await selectSystem(); + const x0 = parseFloat( + await question('Введите начальное приближение x0: ', '0') + ); + const y0 = parseFloat( + await question('Введите начальное приближение y0: ', '0') + ); + const eps = parseFloat( + await question('Введите точность ε (например, 1e-5): ', '1e-5') + ); + + const result = simpleIterationSystem(sys, x0, y0, eps); + console.log(`Решение: x=${result.x}, y=${result.y}`); + console.log(`Итераций: ${result.iterations}`); + + console.log('Погрешности:'); + result.errors.forEach((err, i) => { + console.log(` k=${i + 1}: dx=${err.dx}, dy=${err.dy}`); + }); + + const outputFile = path.resolve(process.cwd(), 'system_graph.html'); + generateSystemGraph(sys, outputFile, result); + console.log(`График сохранён: ${outputFile}`); +} + +const mainOptions = { + [MainOption.Equation]: solveEquationFlow, + [MainOption.System]: solveSystemFlow +} + +async function main(): Promise { + try { + const method = mainOptions[await selectMainOption()]; + await method(); + } catch (error) { + console.error('Произошла ошибка:', error); + } +} + +main(); diff --git "a/\320\2403212/zinchenko_408657/lab2/code/src/methods.ts" "b/\320\2403212/zinchenko_408657/lab2/code/src/methods.ts" new file mode 100644 index 0000000..efefd6c --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/src/methods.ts" @@ -0,0 +1,83 @@ +import { Derivative, Func, System } from "./functions"; + +interface RootResult { root: number; fAtRoot: number; iterations: number; } +interface SystemResult { x: number; y: number; iterations: number; errors: Array<{ dx: number; dy: number }>; } +type EquationMethodCalc = (f: Func, df: Derivative, a: number, b: number, eps: number, maxIter?: number) => RootResult; + +const chord: EquationMethodCalc = (f, df, a, b, eps, maxIter = 1000): RootResult => { + let fa = f(a), fb = f(b), x = a, iter = 0; + while (iter < maxIter) { + x = (a * fb - b * fa) / (fb - fa); + const fx = f(x); + if (Math.abs(fx) < eps) break; + if (fa * fx < 0) { b = x; fb = fx; } + else { a = x; fa = fx; } + iter++; + } + return { root: x, fAtRoot: f(x), iterations: iter }; +} + +const newton: EquationMethodCalc = (f, df, a, b, eps, maxIter = 1000): RootResult => { + const h = Math.sqrt(eps); + const f2 = (x: number): number => (df(x + h) - df(x - h)) / (2 * h); + + const f2a = f2(a); + let x = (f(a) * f2a > 0) ? a : b; + + let iter = 0; + while (iter < maxIter) { + const fx = f(x), dfx = df(x); + const x1 = x - fx / dfx; + if (Math.abs(x1 - x) < eps) { x = x1; break; } + x = x1; + iter++; + } + return { root: x, fAtRoot: f(x), iterations: iter }; +} + +const simpleIteration: EquationMethodCalc = (f, df, a, b, eps, maxIter = 1000) => { + const N = 100; let M = 0; + for (let i = 0; i <= N; i++) { + const xi = a + ((b - a) * i) / N; + M = Math.max(M, Math.abs(df(xi))); + } + const lambda = -1 / M; + let q = 0; + for (let i = 0; i <= N; i++) { + const xi = a + ((b - a) * i) / N; + q = Math.max(q, Math.abs(1 + lambda * df(xi))); + } + if (q >= 1) console.warn('Условие сходимости (q < 1) не выполнено'); + let x = (a + b) / 2, iter = 0; + while (iter < maxIter) { + const x1 = x + lambda * f(x); + if (Math.abs(x1 - x) < eps) { x = x1; break; } + x = x1; iter++; + } + return { root: x, fAtRoot: f(x), iterations: iter }; +} + +function simpleIterationSystem(sys: System, x0: number, y0: number, eps: number, maxIter = 1000): SystemResult { + let x = x0, y = y0, iter = 0; + const errors: Array<{ dx: number; dy: number }> = []; + while (iter < maxIter) { + const x1 = sys.phi1(x, y), y1 = sys.phi2(x, y); + const dx = Math.abs(x1 - x), dy = Math.abs(y1 - y); + if ([x1, y1].some(v => isNaN(v))) { + console.error('Ошибка при расчёте. Получилось NaN'); + process.exit(0); + } + errors.push({ dx, dy }); x = x1; y = y1; iter++; + if (dx < eps && dy < eps) break; + } + return { x, y, iterations: iter, errors }; +} + +export { + RootResult, + SystemResult, + chord, + newton, + simpleIteration, + simpleIterationSystem +} diff --git "a/\320\2403212/zinchenko_408657/lab2/code/src/tests/methods.test.js" "b/\320\2403212/zinchenko_408657/lab2/code/src/tests/methods.test.js" new file mode 100644 index 0000000..c6c731e --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/src/tests/methods.test.js" @@ -0,0 +1,47 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const methods_1 = require("../methods"); +describe('Equation Solvers', () => { + const f = x => x * x - 2; + const df = x => 2 * x; + const a = 1; + const b = 2; + const eps = 1e-6; + const expectedRoot = Math.SQRT2; + it('chord method finds root approximately', () => { + const result = (0, methods_1.chord)(f, df, a, b, eps); + expect(result.root).toBeCloseTo(expectedRoot, 5); + expect(Math.abs(result.fAtRoot)).toBeLessThan(eps); + }); + it('newton method finds root approximately', () => { + const result = (0, methods_1.newton)(f, df, a, b, eps); + expect(result.root).toBeCloseTo(expectedRoot, 5); + expect(Math.abs(result.fAtRoot)).toBeLessThan(eps); + }); + it('simple iteration method finds root approximately', () => { + const result = (0, methods_1.simpleIteration)(f, df, a, b, eps); + expect(result.root).toBeCloseTo(expectedRoot, 5); + expect(Math.abs(result.fAtRoot)).toBeLessThan(eps * 10); + }); +}); +describe('System Solver', () => { + const sys = { + name: 'simple', + phi1: (x, y) => x / 2, + phi2: (x, y) => y / 2, + f1: (x, y) => x - x / 2, + f2: (x, y) => y - y / 2, + graphDomain: { xMin: -1, xMax: 1 } + }; + const x0 = 1; + const y0 = -1; + const epsSys = 1e-6; + it('simpleIterationSystem converges to fixed point (0,0)', () => { + const result = (0, methods_1.simpleIterationSystem)(sys, x0, y0, epsSys); + expect(result.x).toBeCloseTo(0, 5); + expect(result.y).toBeCloseTo(0, 5); + const lastError = result.errors[result.errors.length - 1]; + expect(lastError.dx).toBeLessThan(epsSys); + expect(lastError.dy).toBeLessThan(epsSys); + }); +}); diff --git "a/\320\2403212/zinchenko_408657/lab2/code/src/tests/methods.test.ts" "b/\320\2403212/zinchenko_408657/lab2/code/src/tests/methods.test.ts" new file mode 100644 index 0000000..44708f6 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/src/tests/methods.test.ts" @@ -0,0 +1,52 @@ +import { chord, newton, simpleIteration, simpleIterationSystem, RootResult, SystemResult } from '../methods'; +import { Func, Derivative, System } from '../functions'; + +describe('Equation Solvers', () => { + const f: Func = x => x * x - 2; + const df: Derivative = x => 2 * x; + const a = 1; + const b = 2; + const eps = 1e-6; + const expectedRoot = Math.SQRT2; + + it('chord method finds root approximately', () => { + const result: RootResult = chord(f, df, a, b, eps); + expect(result.root).toBeCloseTo(expectedRoot, 5); + expect(Math.abs(result.fAtRoot)).toBeLessThan(eps); + }); + + it('newton method finds root approximately', () => { + const result: RootResult = newton(f, df, a, b, eps); + expect(result.root).toBeCloseTo(expectedRoot, 5); + expect(Math.abs(result.fAtRoot)).toBeLessThan(eps); + }); + + it('simple iteration method finds root approximately', () => { + const result: RootResult = simpleIteration(f, df, a, b, eps); + expect(result.root).toBeCloseTo(expectedRoot, 5); + expect(Math.abs(result.fAtRoot)).toBeLessThan(eps*10); + }); +}); + +describe('System Solver', () => { + const sys: System = { + name: 'simple', + phi1: (x, y) => x / 2, + phi2: (x, y) => y / 2, + f1: (x, y) => x - x / 2, + f2: (x, y) => y - y / 2, + graphDomain: { xMin: -1, xMax: 1 } + }; + const x0 = 1; + const y0 = -1; + const epsSys = 1e-6; + + it('simpleIterationSystem converges to fixed point (0,0)', () => { + const result: SystemResult = simpleIterationSystem(sys, x0, y0, epsSys); + expect(result.x).toBeCloseTo(0, 5); + expect(result.y).toBeCloseTo(0, 5); + const lastError = result.errors[result.errors.length - 1]; + expect(lastError.dx).toBeLessThan(epsSys); + expect(lastError.dy).toBeLessThan(epsSys); + }); +}); diff --git "a/\320\2403212/zinchenko_408657/lab2/code/tsconfig.json" "b/\320\2403212/zinchenko_408657/lab2/code/tsconfig.json" new file mode 100644 index 0000000..56a8ab8 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab2/code/tsconfig.json" @@ -0,0 +1,110 @@ +{ + "compilerOptions": { + /* Visit https://aka.ms/tsconfig to read more about this file */ + + /* Projects */ + // "incremental": true, /* Save .tsbuildinfo files to allow for incremental compilation of projects. */ + // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */ + // "tsBuildInfoFile": "./.tsbuildinfo", /* Specify the path to .tsbuildinfo incremental compilation file. */ + // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects. */ + // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */ + // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */ + + /* Language and Environment */ + "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ + // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ + // "jsx": "preserve", /* Specify what JSX code is generated. */ + // "experimentalDecorators": true, /* Enable experimental support for legacy experimental decorators. */ + // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */ + // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'. */ + // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */ + // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'. */ + // "reactNamespace": "", /* Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit. */ + // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */ + // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */ + // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */ + + /* Modules */ + "module": "commonjs", /* Specify what module code is generated. */ + // "rootDir": "./", /* Specify the root folder within your source files. */ + // "moduleResolution": "node10", /* Specify how TypeScript looks up a file from a given module specifier. */ + // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ + // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */ + // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */ + // "typeRoots": [], /* Specify multiple folders that act like './node_modules/@types'. */ + // "types": [], /* Specify type package names to be included without being referenced in a source file. */ + // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ + // "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */ + // "allowImportingTsExtensions": true, /* Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set. */ + // "resolvePackageJsonExports": true, /* Use the package.json 'exports' field when resolving package imports. */ + // "resolvePackageJsonImports": true, /* Use the package.json 'imports' field when resolving imports. */ + // "customConditions": [], /* Conditions to set in addition to the resolver-specific defaults when resolving imports. */ + // "noUncheckedSideEffectImports": true, /* Check side effect imports. */ + // "resolveJsonModule": true, /* Enable importing .json files. */ + // "allowArbitraryExtensions": true, /* Enable importing files with any extension, provided a declaration file is present. */ + // "noResolve": true, /* Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project. */ + + /* JavaScript Support */ + // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */ + // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */ + // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */ + + /* Emit */ + // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */ + // "declarationMap": true, /* Create sourcemaps for d.ts files. */ + // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ + // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ + // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ + // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ + // "outDir": "./", /* Specify an output folder for all emitted files. */ + // "removeComments": true, /* Disable emitting comments. */ + // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ + // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ + // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ + // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ + // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */ + // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */ + // "newLine": "crlf", /* Set the newline character for emitting files. */ + // "stripInternal": true, /* Disable emitting declarations that have '@internal' in their JSDoc comments. */ + // "noEmitHelpers": true, /* Disable generating custom helper functions like '__extends' in compiled output. */ + // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */ + // "preserveConstEnums": true, /* Disable erasing 'const enum' declarations in generated code. */ + // "declarationDir": "./", /* Specify the output directory for generated declaration files. */ + + /* Interop Constraints */ + // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */ + // "verbatimModuleSyntax": true, /* Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting. */ + // "isolatedDeclarations": true, /* Require sufficient annotation on exports so other tools can trivially generate declaration files. */ + // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ + "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */ + // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */ + "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */ + + /* Type Checking */ + "strict": true, /* Enable all strict type-checking options. */ + // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied 'any' type. */ + // "strictNullChecks": true, /* When type checking, take into account 'null' and 'undefined'. */ + // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */ + // "strictBindCallApply": true, /* Check that the arguments for 'bind', 'call', and 'apply' methods match the original function. */ + // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */ + // "strictBuiltinIteratorReturn": true, /* Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'. */ + // "noImplicitThis": true, /* Enable error reporting when 'this' is given the type 'any'. */ + // "useUnknownInCatchVariables": true, /* Default catch clause variables as 'unknown' instead of 'any'. */ + // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */ + // "noUnusedLocals": true, /* Enable error reporting when local variables aren't read. */ + // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read. */ + // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */ + // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */ + // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */ + // "noUncheckedIndexedAccess": true, /* Add 'undefined' to a type when accessed using an index. */ + // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */ + // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type. */ + // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */ + // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */ + + /* Completeness */ + // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */ + "skipLibCheck": true /* Skip type checking all .d.ts files. */ + } +} diff --git "a/\320\2403212/zinchenko_408657/lab2/report.pdf" "b/\320\2403212/zinchenko_408657/lab2/report.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..00719fd8acb56336c2ab0c536fdd02bbaf8ba063 GIT binary patch literal 217666 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 O9JogJo~5%giT<#+UQ#XRr?}3 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л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
+ + + ( + field.onChange(value)} + onInteractOutside={() => field.onBlur()}> + + Функция + + + + + + + + + + + + {functionSelect.items.map((func) => ( + + {func.label} + + + ))} + + + + + )} /> + + ( + field.onChange(value)} + onInteractOutside={() => field.onBlur()}> + + Метод + + + + + + + + + + + + {methodList.items.map((method) => ( + + {method.label} + + + ))} + + + + + )} /> + + + + Левая граница + + + + + Правая граница + + + + + + Точность вычисления + + + + + + + + + + + + + + + + + {console.map(str => {str.element})} + + + + + ); +}; + +export default App; diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/components/chart.tsx" "b/\320\2403212/zinchenko_408657/lab3/code/src/components/chart.tsx" new file mode 100644 index 0000000..c6848e9 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/components/chart.tsx" @@ -0,0 +1,50 @@ +import { + Chart as ChartJS, + CategoryScale, + LinearScale, + PointElement, + LineElement, + Title, + Tooltip, + Legend, +} from 'chart.js'; +import { Line } from 'react-chartjs-2'; + +ChartJS.register( + CategoryScale, + LinearScale, + PointElement, + LineElement, + Title, + Tooltip, + Legend +); + +export const options = { + responsive: true, + plugins: { + }, +}; + +export type ChartProps = { + labels: (number | string)[]; + data: number[]; +} + +const Chart = (props: ChartProps) => { + return ( + + ) +} + +export default Chart; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/color-mode.tsx" "b/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/color-mode.tsx" new file mode 100644 index 0000000..f93feab --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/color-mode.tsx" @@ -0,0 +1,107 @@ +"use client" + +import type { IconButtonProps, SpanProps } from "@chakra-ui/react" +import { ClientOnly, IconButton, Skeleton, Span } from "@chakra-ui/react" +import { ThemeProvider, useTheme } from "next-themes" +import type { ThemeProviderProps } from "next-themes" +import * as React from "react" +import { LuMoon, LuSun } from "react-icons/lu" + +export interface ColorModeProviderProps extends ThemeProviderProps {} + +export function ColorModeProvider(props: ColorModeProviderProps) { + return ( + + ) +} + +export type ColorMode = "light" | "dark" + +export interface UseColorModeReturn { + colorMode: ColorMode + setColorMode: (colorMode: ColorMode) => void + toggleColorMode: () => void +} + +export function useColorMode(): UseColorModeReturn { + const { resolvedTheme, setTheme } = useTheme() + const toggleColorMode = () => { + setTheme(resolvedTheme === "dark" ? "light" : "dark") + } + return { + colorMode: resolvedTheme as ColorMode, + setColorMode: setTheme, + toggleColorMode, + } +} + +export function useColorModeValue(light: T, dark: T) { + const { colorMode } = useColorMode() + return colorMode === "dark" ? dark : light +} + +export function ColorModeIcon() { + const { colorMode } = useColorMode() + return colorMode === "dark" ? : +} + +interface ColorModeButtonProps extends Omit {} + +export const ColorModeButton = React.forwardRef< + HTMLButtonElement, + ColorModeButtonProps +>(function ColorModeButton(props, ref) { + const { toggleColorMode } = useColorMode() + return ( + }> + + + + + ) +}) + +export const LightMode = React.forwardRef( + function LightMode(props, ref) { + return ( + + ) + }, +) + +export const DarkMode = React.forwardRef( + function DarkMode(props, ref) { + return ( + + ) + }, +) diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/provider.tsx" "b/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/provider.tsx" new file mode 100644 index 0000000..fd0331b --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/provider.tsx" @@ -0,0 +1,15 @@ +"use client" + +import { ChakraProvider, defaultSystem } from "@chakra-ui/react" +import { + ColorModeProvider, + type ColorModeProviderProps, +} from "./color-mode" + +export function Provider(props: ColorModeProviderProps) { + return ( + + + + ) +} diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/toaster.tsx" "b/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/toaster.tsx" new file mode 100644 index 0000000..df6c2c3 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/toaster.tsx" @@ -0,0 +1,43 @@ +"use client" + +import { + Toaster as ChakraToaster, + Portal, + Spinner, + Stack, + Toast, + createToaster, +} from "@chakra-ui/react" + +export const toaster = createToaster({ + placement: "bottom-end", + pauseOnPageIdle: true, +}) + +export const Toaster = () => { + return ( + + + {(toast) => ( + + {toast.type === "loading" ? ( + + ) : ( + + )} + + {toast.title && {toast.title}} + {toast.description && ( + {toast.description} + )} + + {toast.action && ( + {toast.action.label} + )} + {toast.meta?.closable && } + + )} + + + ) +} diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/tooltip.tsx" "b/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/tooltip.tsx" new file mode 100644 index 0000000..43a8a6c --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/components/ui/tooltip.tsx" @@ -0,0 +1,46 @@ +import { Tooltip as ChakraTooltip, Portal } from "@chakra-ui/react" +import * as React from "react" + +export interface TooltipProps extends ChakraTooltip.RootProps { + showArrow?: boolean + portalled?: boolean + portalRef?: React.RefObject + content: React.ReactNode + contentProps?: ChakraTooltip.ContentProps + disabled?: boolean +} + +export const Tooltip = React.forwardRef( + function Tooltip(props, ref) { + const { + showArrow, + children, + disabled, + portalled = true, + content, + contentProps, + portalRef, + ...rest + } = props + + if (disabled) return children + + return ( + + {children} + + + + {showArrow && ( + + + + )} + {content} + + + + + ) + }, +) diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/env.d.ts" "b/\320\2403212/zinchenko_408657/lab3/code/src/env.d.ts" new file mode 100644 index 0000000..b0ac762 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/env.d.ts" @@ -0,0 +1 @@ +/// diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/index.tsx" "b/\320\2403212/zinchenko_408657/lab3/code/src/index.tsx" new file mode 100644 index 0000000..55f29bf --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/index.tsx" @@ -0,0 +1,13 @@ +import React from 'react'; +import ReactDOM from 'react-dom/client'; +import App from './App'; + +const rootEl = document.getElementById('root'); +if (rootEl) { + const root = ReactDOM.createRoot(rootEl); + root.render( + + + , + ); +} diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/math/index.test.ts" "b/\320\2403212/zinchenko_408657/lab3/code/src/math/index.test.ts" new file mode 100644 index 0000000..22266c8 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/math/index.test.ts" @@ -0,0 +1,75 @@ +import {describe, expect, test, it} from '@jest/globals'; +import { integrate, IntegrationMethod, f1, f2, f3 } from './index'; + +describe('Базовые тесты для функций f1, f2, f3', () => { + test('f1(x) = 2x³ − 3x² + 5x − 9', () => { + expect(f1(0)).toBe(-9); + expect(f1(1)).toBe(-5); + expect(f1(2)).toBe(2 * 8 - 3 * 4 + 5 * 2 - 9); // 16 - 12 + 10 - 9 = 5 + expect(f1(2)).toBe(5); + }); + + test('f2(x) = 3x³ − 2x² + 7x + 26', () => { + expect(f2(0)).toBe(26); + expect(f2(1)).toBe(3 - 2 + 7 + 26); // =34 + expect(f2(1)).toBe(34); + // ещё одна точка + expect(f2(2)).toBe(3 * 8 - 2 * 4 + 7 * 2 + 26); // 24 - 8 + 14 + 26 = 56 + expect(f2(2)).toBe(56); + }); + + test('f3(x) = ∛x + sin(x)/e^{sin(x)}', () => { + // при x=0 должно получиться 0 + expect(f3(0)).toBe(0); + // при x=π/2 сравним с явным выражением + const x = Math.PI / 2; + const expected = Math.cbrt(x) + Math.sin(x) / Math.exp(Math.sin(x)); + expect(f3(x)).toBeCloseTo(expected, 12); + }); +}); + +describe('Тесты интегрирования методом Simpson и др.', () => { + const eps = 1e-6; + + test.each([ + // [метод, функция, a, b, аналитическое значение] + [IntegrationMethod.Simpson, f1, 0, 2, -8], + [IntegrationMethod.Trapezoidal, f1, 0, 2, -8], + [IntegrationMethod.Midpoint, f1, 0, 2, -8], + [IntegrationMethod.Simpson, f2, 0, 1, 29.5833333333], + [IntegrationMethod.Trapezoidal, f2, 0, 1, 29.5833333333], + ])( + '%s интегрирует корректно заданную функцию от %p до %p', + (method, fn, a, b, analytic) => { + const { result, n } = integrate(method as IntegrationMethod, fn as any, a as number, b as number, eps); + expect(result).toBeCloseTo(analytic, 5); + // проверим, что разбиений хоть сколько-то используется + expect(n).toBeGreaterThan(0); + // для Симпсона число разбиений должно быть чётным + if (method === IntegrationMethod.Simpson) { + expect(n % 2).toBe(0); + } + } + ); +}); + +describe('Интегрирование простой функции x на [0,1]', () => { + // проверим convergence для примера f(x)=x, ∫0^1 x dx = 0.5 + const eps = 1e-6; + const linear: (x: number) => number = x => x; + + it('Simpson даёт ~0.5', () => { + const { result } = integrate(IntegrationMethod.Simpson, linear, 0, 1, eps); + expect(result).toBeCloseTo(0.5, 6); + }); + + it('Trapezoidal даёт ~0.5', () => { + const { result } = integrate(IntegrationMethod.Trapezoidal, linear, 0, 1, eps); + expect(result).toBeCloseTo(0.5, 6); + }); + + it('Midpoint даёт ~0.5', () => { + const { result } = integrate(IntegrationMethod.Midpoint, linear, 0, 1, eps); + expect(result).toBeCloseTo(0.5, 6); + }); +}); diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/math/index.ts" "b/\320\2403212/zinchenko_408657/lab3/code/src/math/index.ts" new file mode 100644 index 0000000..a47cb0f --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/math/index.ts" @@ -0,0 +1,151 @@ +export type Integrand = (x: number) => number; + +export enum IntegrationMethod { + LeftRectangle = 'LeftRectangle', + RightRectangle = 'RightRectangle', + Midpoint = 'Midpoint', + Trapezoidal = 'Trapezoidal', + Simpson = 'Simpson', +} + +/** f₁(x) = 2x³ - 3x² + 5x - 9 */ +export function f1(x: number): number { + return 2 * x ** 3 - 3 * x ** 2 + 5 * x - 9; +} + +/** f₂(x) = 3x³ - 2x² + 7x + 26 */ +export function f2(x: number): number { + return 3 * x ** 3 - 2 * x ** 2 + 7 * x + 26; +} + +/** f₃(x) = ∛x + sin(x)/e^{sin(x)} */ +export function f3(x: number): number { + return Math.cbrt(x) + Math.sin(x) / Math.exp(Math.sin(x)); +} + +export function integrate( + method: IntegrationMethod, + f: Integrand, + a: number, + b: number, + epsilon: number +): { result: number; n: number } { + let n = 4; + let I = compute(method, f, a, b, n); + + while (true) { + n *= 2; + const I2 = compute(method, f, a, b, n); + const p = getOrder(method); + const errorEstimate = Math.abs(I2 - I) / (2 ** p - 1); + if (errorEstimate < epsilon) { + return { result: I2, n }; + } + I = I2; + } +} + +const methods = { + [IntegrationMethod.LeftRectangle]: computeLeftRectangle, + [IntegrationMethod.RightRectangle]: computeRightRectangle, + [IntegrationMethod.Midpoint]: computeMidpoint, + [IntegrationMethod.Trapezoidal]: computeTrapezoidal, + [IntegrationMethod.Simpson]: computeSimpson, +} + +function compute( + method: IntegrationMethod, + f: Integrand, + a: number, + b: number, + n: number +): number { + return methods[method](f, a, b, n); +} + +function computeLeftRectangle( + f: Integrand, + a: number, + b: number, + n: number +): number { + const h = (b - a) / n; + let sum = 0; + for (let i = 0; i < n; i++) { + sum += f(a + i * h); + } + return sum * h; +} + +function computeRightRectangle( + f: Integrand, + a: number, + b: number, + n: number +): number { + const h = (b - a) / n; + let sum = 0; + for (let i = 1; i <= n; i++) { + sum += f(a + i * h); + } + return sum * h; +} + +function computeMidpoint( + f: Integrand, + a: number, + b: number, + n: number +): number { + const h = (b - a) / n; + let sum = 0; + for (let i = 0; i < n; i++) { + sum += f(a + (i + 0.5) * h); + } + return sum * h; +} + +function computeTrapezoidal( + f: Integrand, + a: number, + b: number, + n: number +): number { + const h = (b - a) / n; + let sum = (f(a) + f(b)) / 2; + for (let i = 1; i < n; i++) { + sum += f(a + i * h); + } + return sum * h; +} + +function computeSimpson( + f: Integrand, + a: number, + b: number, + n: number +): number { + const h = (b - a) / n; + let sum = f(a) + f(b); + for (let i = 1; i < n; i++) { + const x = a + i * h; + sum += (i % 2 ? 4 : 2) * f(x); + } + return (sum * h) / 3; +} + +function getOrder(method: IntegrationMethod): number { + switch (method) { + case IntegrationMethod.LeftRectangle: + case IntegrationMethod.RightRectangle: + case IntegrationMethod.Midpoint: + case IntegrationMethod.Trapezoidal: + return 2; + + case IntegrationMethod.Simpson: + return 4; + + default: + throw new Error(`Неизвестный метод: ${method}`); + } +} diff --git "a/\320\2403212/zinchenko_408657/lab3/code/tsconfig.json" "b/\320\2403212/zinchenko_408657/lab3/code/tsconfig.json" new file mode 100644 index 0000000..e53d1e5 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/tsconfig.json" @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "lib": ["DOM", "ES2020"], + "jsx": "react-jsx", + "target": "ES2020", + "noEmit": true, + "skipLibCheck": true, + "useDefineForClassFields": true, + + /* modules */ + "module": "ESNext", + "isolatedModules": true, + "resolveJsonModule": true, + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + + /* type checking */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true + }, + "include": ["src"] +} diff --git "a/\320\2403212/zinchenko_408657/lab3/report.pdf" "b/\320\2403212/zinchenko_408657/lab3/report.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..894abeb18c5cda4d2af457088cbb34be9b1410ef GIT binary patch literal 69614 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.0.0" + } + }, + "node_modules/@ark-ui/react": { + "version": "5.9.1", + "resolved": "https://registry.npmjs.org/@ark-ui/react/-/react-5.9.1.tgz", + "integrity": "sha512-CPJtUy20x1kUAQ+8iPbgpq/RmqlF1Pfx91+8nHnYbR2dYI4mNKnxT8m7TGkoWT72W+P8YKYUehFJOPvspZqG2Q==", + "license": "MIT", + "dependencies": { + "@internationalized/date": "3.8.0", + "@zag-js/accordion": "1.12.2", + "@zag-js/anatomy": "1.12.2", + "@zag-js/angle-slider": "1.12.2", + "@zag-js/auto-resize": "1.12.2", + "@zag-js/avatar": "1.12.2", + "@zag-js/carousel": "1.12.2", + "@zag-js/checkbox": "1.12.2", + "@zag-js/clipboard": "1.12.2", + "@zag-js/collapsible": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/color-picker": "1.12.2", + "@zag-js/color-utils": "1.12.2", + "@zag-js/combobox": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/date-picker": "1.12.2", + "@zag-js/date-utils": "1.12.2", + "@zag-js/dialog": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/editable": "1.12.2", + "@zag-js/file-upload": "1.12.2", + "@zag-js/file-utils": "1.12.2", + "@zag-js/floating-panel": "1.12.2", + "@zag-js/focus-trap": "1.12.2", + "@zag-js/highlight-word": "1.12.2", + "@zag-js/hover-card": "1.12.2", + "@zag-js/i18n-utils": "1.12.2", + "@zag-js/listbox": "1.12.2", + "@zag-js/menu": "1.12.2", + "@zag-js/number-input": "1.12.2", + "@zag-js/pagination": "1.12.2", + "@zag-js/pin-input": "1.12.2", + "@zag-js/popover": "1.12.2", + "@zag-js/presence": "1.12.2", + "@zag-js/progress": "1.12.2", + "@zag-js/qr-code": "1.12.2", + "@zag-js/radio-group": "1.12.2", + "@zag-js/rating-group": "1.12.2", + "@zag-js/react": "1.12.2", + "@zag-js/select": "1.12.2", + "@zag-js/signature-pad": "1.12.2", + "@zag-js/slider": "1.12.2", + "@zag-js/splitter": "1.12.2", + "@zag-js/steps": "1.12.2", + "@zag-js/switch": "1.12.2", + "@zag-js/tabs": "1.12.2", + "@zag-js/tags-input": "1.12.2", + "@zag-js/time-picker": "1.12.2", + "@zag-js/timer": "1.12.2", + "@zag-js/toast": "1.12.2", + "@zag-js/toggle": "1.12.2", + "@zag-js/toggle-group": "1.12.2", + "@zag-js/tooltip": "1.12.2", + "@zag-js/tour": "1.12.2", + "@zag-js/tree-view": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + }, + "peerDependencies": { + "react": ">=18.0.0", + "react-dom": ">=18.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.2.tgz", + "integrity": "sha512-TUtMJYRPyUb/9aU8f3K0mjmjf6M9N5Woshn2CS6nqJSeJtTtQcpLUXjGt9vbF8ZGff0El99sWkLgzwW3VXnxZQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.1.tgz", + "integrity": "sha512-IaaGWsQqfsQWVLqMn9OB92MNN7zukfVA4s7KKAI0KfrrDsZ0yhi5uV4baBuLuN7n3vsZpwP8asPPcVwApxvjBQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.1", + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helpers": "^7.27.1", + "@babel/parser": "^7.27.1", + "@babel/template": "^7.27.1", + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@babel/generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.1.tgz", + "integrity": "sha512-UnJfnIpc/+JO0/+KRVQNGU+y5taA5vCbwN8+azkX6beii/ZF+enZJSOKo11ZSzGJjlNfJHfQtmQT8H+9TXPG2w==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.27.1", + "@babel/types": "^7.27.1", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.1.tgz", + "integrity": "sha512-9yHn519/8KvTU5BjTVEEeIM3w9/2yXNKoD82JifINImhpKkARMJKPP59kLo+BafpdN5zgNeIcS4jsGDmd3l58g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.1.tgz", + "integrity": "sha512-FCvFTm0sWV8Fxhpp2McP5/W53GPllQ9QeQ7SiqGWjMf/LVG07lFa5+pgK05IRhVwtvafT22KF+ZSnM9I545CvQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.2.tgz", + "integrity": "sha512-QYLs8299NA7WM/bZAdp+CviYYkVoYXlDW2rzliy3chxd1PQjej7JORuMJDJXJUb9g0TT+B99EwaVLKmX+sPXWw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.1" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", + "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", + "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz", + "integrity": "sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.1.tgz", + "integrity": "sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.1.tgz", + "integrity": "sha512-ZCYtZciz1IWJB4U61UPu4KEaqyfj+r5T1Q5mqPo+IBpcG9kHv30Z0aD8LXPgC1trYa6rK0orRyAhqUgk4MjmEg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.1", + "@babel/parser": "^7.27.1", + "@babel/template": "^7.27.1", + "@babel/types": "^7.27.1", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.1.tgz", + "integrity": "sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@chakra-ui/react": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/@chakra-ui/react/-/react-3.19.0.tgz", + "integrity": "sha512-w68Xd3ihlGQDvKhJFQAYXZDHCoGcueM6ywLX4S32aH0fe0mUJFpEkR7S+9O1eAJV8SlsgULFyM7DCJKkUoLbMA==", + "license": "MIT", + "dependencies": { + "@ark-ui/react": "5.9.1", + "@emotion/is-prop-valid": "1.3.1", + "@emotion/serialize": "1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "1.2.0", + "@emotion/utils": "1.4.2", + "@pandacss/is-valid-prop": "0.53.6", + "csstype": "3.1.3", + "fast-safe-stringify": "2.1.1" + }, + "peerDependencies": { + "@emotion/react": ">=11", + "react": ">=18", + "react-dom": ">=18" + } + }, + "node_modules/@emotion/babel-plugin": { + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/serialize": "^1.3.3", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/cache": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@emotion/memoize": "^0.9.0", + "@emotion/sheet": "^1.4.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/hash": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz", + "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==", + "license": "MIT" + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz", + "integrity": "sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==", + "license": "MIT", + "dependencies": { + "@emotion/memoize": "^0.9.0" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", + "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==", + "license": "MIT" + }, + "node_modules/@emotion/react": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", + "license": "MIT", + "dependencies": { + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/unitless": "^0.10.0", + "@emotion/utils": "^1.4.2", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/sheet": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz", + "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==", + "license": "MIT", + "peer": true + }, + "node_modules/@emotion/unitless": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", + "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==", + "license": "MIT" + }, + "node_modules/@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", + "license": "MIT", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@emotion/utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==", + "license": "MIT" + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz", + "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==", + "license": "MIT", + "peer": true + }, + "node_modules/@floating-ui/core": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.0.tgz", + "integrity": "sha512-FRdBLykrPPA6P76GGGqlex/e7fbe0F1ykgxHYNXQsH/iTEtjMj/f9bpY5oQqbjt5VgZvgz/uKXbGuROijh3VLA==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.9" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.13", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.13.tgz", + "integrity": "sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.9" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.9.tgz", + "integrity": "sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==", + "license": "MIT" + }, + "node_modules/@internationalized/date": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.8.0.tgz", + "integrity": "sha512-J51AJ0fEL68hE4CwGPa6E0PO6JDaVLd8aln48xFCSy7CZkZc96dGEGmLs2OEEbBxcsVZtfrqkXJwI2/MSG8yKw==", + "license": "Apache-2.0", + "dependencies": { + "@swc/helpers": "^0.5.0" + } + }, + "node_modules/@internationalized/number": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.6.1.tgz", + "integrity": "sha512-UVsb4bCwbL944E0SX50CHFtWEeZ2uB5VozZ5yDXJdq6iPZsZO5p+bjVMZh2GxHf4Bs/7xtDCcPwEa2NU9DaG/g==", + "license": "Apache-2.0", + "dependencies": { + "@swc/helpers": "^0.5.0" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@kurkle/color": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.4.tgz", + "integrity": "sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==", + "license": "MIT" + }, + "node_modules/@module-federation/error-codes": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/error-codes/-/error-codes-0.13.1.tgz", + "integrity": "sha512-azgGDBnFRfqlivHOl96ZjlFUFlukESz2Rnnz/pINiSqoBBNjUE0fcAZP4X6jgrVITuEg90YkruZa7pW9I3m7Uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@module-federation/runtime": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/runtime/-/runtime-0.13.1.tgz", + "integrity": "sha512-ZHnYvBquDm49LiHfv6fgagMo/cVJneijNJzfPh6S0CJrPS2Tay1bnTXzy8VA5sdIrESagYPaskKMGIj7YfnPug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/error-codes": "0.13.1", + "@module-federation/runtime-core": "0.13.1", + "@module-federation/sdk": "0.13.1" + } + }, + "node_modules/@module-federation/runtime-core": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-core/-/runtime-core-0.13.1.tgz", + "integrity": "sha512-TfyKfkSAentKeuvSsAItk8s5tqQSMfIRTPN2e1aoaq/kFhE+7blps719csyWSX5Lg5Es7WXKMsXHy40UgtBtuw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/error-codes": "0.13.1", + "@module-federation/sdk": "0.13.1" + } + }, + "node_modules/@module-federation/runtime-tools": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-tools/-/runtime-tools-0.13.1.tgz", + "integrity": "sha512-GEF1pxqLc80osIMZmE8j9UKZSaTm2hX2lql8tgIH/O9yK4wnF06k6LL5Ah+wJt+oJv6Dj55ri/MoxMP4SXoPNA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/runtime": "0.13.1", + "@module-federation/webpack-bundler-runtime": "0.13.1" + } + }, + "node_modules/@module-federation/sdk": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/sdk/-/sdk-0.13.1.tgz", + "integrity": "sha512-bmf2FGQ0ymZuxYnw9bIUfhV3y6zDhaqgydEjbl4msObKMLGXZqhse2pTIIxBFpIxR1oONKX/y2FAolDCTlWKiw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@module-federation/webpack-bundler-runtime": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.13.1.tgz", + "integrity": "sha512-QSuSIGa09S8mthbB1L6xERqrz+AzPlHR6D7RwAzssAc+IHf40U6NiTLPzUqp9mmKDhC5Tm0EISU0ZHNeJpnpBQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/runtime": "0.13.1", + "@module-federation/sdk": "0.13.1" + } + }, + "node_modules/@pandacss/is-valid-prop": { + "version": "0.53.6", + "resolved": "https://registry.npmjs.org/@pandacss/is-valid-prop/-/is-valid-prop-0.53.6.tgz", + "integrity": "sha512-TgWBQmz/5j/oAMjavqJAjQh1o+yxhYspKvepXPn4lFhAN3yBhilrw9HliAkvpUr0sB2CkJ2BYMpFXbAJYEocsA==" + }, + "node_modules/@rsbuild/core": { + "version": "1.3.20", + "resolved": "https://registry.npmjs.org/@rsbuild/core/-/core-1.3.20.tgz", + "integrity": "sha512-5VxOddgGHaq5x4ONdKOZvLYLj8dhVfCAz+cERNLXrKLzBISouY1A9TJcbZBK4xoH/0DJrDtDzapNA+dI9Jr07Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rspack/core": "1.3.10", + "@rspack/lite-tapable": "~1.0.1", + "@swc/helpers": "^0.5.17", + "core-js": "~3.42.0", + "jiti": "^2.4.2" + }, + "bin": { + "rsbuild": "bin/rsbuild.js" + }, + "engines": { + "node": ">=16.10.0" + } + }, + "node_modules/@rsbuild/plugin-react": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@rsbuild/plugin-react/-/plugin-react-1.3.1.tgz", + "integrity": "sha512-1PfE0CZDwiSIUFaMFOEprwsHK6oo29zU6DdtFH2D49uLcpUdOUvU1u2p00RCVO1CIgnAjRajLS7dnPdQUwFOuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rspack/plugin-react-refresh": "~1.4.2", + "react-refresh": "^0.17.0" + }, + "peerDependencies": { + "@rsbuild/core": "1.x" + } + }, + "node_modules/@rspack/binding": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding/-/binding-1.3.10.tgz", + "integrity": "sha512-9TjO+Ig5U4VqdYWpBsv01n4d2KsgFfdXGIE7zdHXDDbry0avL0J4109ESqSeP9uC+Bi7ZCF53iaxJRvZDflNVQ==", + "dev": true, + "license": "MIT", + "optionalDependencies": { + "@rspack/binding-darwin-arm64": "1.3.10", + "@rspack/binding-darwin-x64": "1.3.10", + "@rspack/binding-linux-arm64-gnu": "1.3.10", + "@rspack/binding-linux-arm64-musl": "1.3.10", + "@rspack/binding-linux-x64-gnu": "1.3.10", + "@rspack/binding-linux-x64-musl": "1.3.10", + "@rspack/binding-win32-arm64-msvc": "1.3.10", + "@rspack/binding-win32-ia32-msvc": "1.3.10", + "@rspack/binding-win32-x64-msvc": "1.3.10" + } + }, + "node_modules/@rspack/binding-darwin-arm64": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-arm64/-/binding-darwin-arm64-1.3.10.tgz", + "integrity": "sha512-0k/j8OeMSVm5u5Nzckp9Ie7S7hprnvNegebnGr+L6VCyD7sMqm4m+4rLHs99ZklYdH0dZtY2+LrzrtjUZCqfew==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rspack/binding-darwin-x64": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-x64/-/binding-darwin-x64-1.3.10.tgz", + "integrity": "sha512-jOyqYW/18cgxw60wK5oqJvM194pbD4H99xaif89McNtLkH3npFvBkXBHVWWuOHGoXNX0LhRpHcI89p9b9THQZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rspack/binding-linux-arm64-gnu": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.3.10.tgz", + "integrity": "sha512-zhF5ZNaT/7pxrm8xD3dWG1b4x+FO3LbVeZZG448CjpSo5T57kPD+SaGUU1GcPpn6mexf795x0SVS49aH7/e3Dg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-arm64-musl": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.3.10.tgz", + "integrity": "sha512-o3x7IrOSCHK6lcRvdZgsSuOG1CHRQR00xiyLW7kkWmNm7t417LC9xdFWKIK62C5fKXGC5YcTbUkDMnQujespkg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-x64-gnu": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.3.10.tgz", + "integrity": "sha512-FMSi28VZhXMr15picOHFynULhqZ/FODPxRIS6uNrvPRYcbNuiO1v+VHV6X88mhOMmJ/aVF6OwjUO/o2l1FVa9Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-x64-musl": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-musl/-/binding-linux-x64-musl-1.3.10.tgz", + "integrity": "sha512-e0xbY9SlbRGIFz41v1yc0HfREvmgMnLV1bLmTSPK8wI2suIEJ7iYYqsocHOAOk86qLZcxVrTnL6EjUcNaRTWlg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-win32-arm64-msvc": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.3.10.tgz", + "integrity": "sha512-YHJPvEujWeWjU6EUF6sDpaec9rsOtKVvy16YCtGaxRpDQXqfuxibnp6Ge0ZTTrY+joRiWehRA9OUI+3McqI+QA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/binding-win32-ia32-msvc": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.3.10.tgz", + "integrity": "sha512-2iwSBzVBC89ZSk56MYwgirh3bda2WKmL9I3qPajiTEivChXpX7jp83jAtGE6CPqPYcccYz6nrURTHNUZhqXxVw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/binding-win32-x64-msvc": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.3.10.tgz", + "integrity": "sha512-ehWJ9Y5Zezj/+uJpiWbt29RZaRIM00f91PWuabM6/sKmHJhdCEE21u5iI3B8DeW/EjJsH8zkI69YYAxJWwGn9A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/core": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/core/-/core-1.3.10.tgz", + "integrity": "sha512-YomvSRGuMUQgCE2rNMdff2q1Z0YpZw/z6m5+PVTMSs9l/q69YKUzpbpSD8YyB5i1DddrRxC2RE34DkrBuwlREQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/runtime-tools": "0.13.1", + "@rspack/binding": "1.3.10", + "@rspack/lite-tapable": "1.0.1", + "caniuse-lite": "^1.0.30001717" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@swc/helpers": ">=0.5.1" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@rspack/lite-tapable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@rspack/lite-tapable/-/lite-tapable-1.0.1.tgz", + "integrity": "sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@rspack/plugin-react-refresh": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@rspack/plugin-react-refresh/-/plugin-react-refresh-1.4.3.tgz", + "integrity": "sha512-wZx4vWgy5oMEvgyNGd/oUKcdnKaccYWHCRkOqTdAPJC3WcytxhTX+Kady8ERurSBiLyQpoMiU3Iyd+F1Y2Arbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "error-stack-parser": "^2.1.4", + "html-entities": "^2.6.0" + }, + "peerDependencies": { + "react-refresh": ">=0.10.0 <1.0.0", + "webpack-hot-middleware": "2.x" + }, + "peerDependenciesMeta": { + "webpack-hot-middleware": { + "optional": true + } + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@swc/helpers": { + "version": "0.5.17", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.17.tgz", + "integrity": "sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/node": { + "version": "22.15.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.18.tgz", + "integrity": "sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", + "license": "MIT", + "peer": true + }, + "node_modules/@types/react": { + "version": "19.1.4", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.4.tgz", + "integrity": "sha512-EB1yiiYdvySuIITtD5lhW4yPyJ31RkJkkDw794LaQYrxCSaQV/47y5o1FMC4zF9ZyjUjzJMZwbovEnT5yHTW6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.1.5", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.1.5.tgz", + "integrity": "sha512-CMCjrWucUBZvohgZxkjd6S9h0nZxXjzus6yDfUb+xLxYM7VvjKNH1tQrE9GWLql1XoOP4/Ds3bwFqShHUYraGg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.0.0" + } + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@zag-js/accordion": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/accordion/-/accordion-1.12.2.tgz", + "integrity": "sha512-EoTVa4Tppgp3bfaOhBrgSyOUeeGWFmXn2gGT9AuMq0x46sc4xw5IsRveYPHwBzifrTE3tAKVIZBA5rFoTaA43Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/anatomy": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/anatomy/-/anatomy-1.12.2.tgz", + "integrity": "sha512-avPmEivu4QFAICJ4rogt9ZFMp4trwva11jQfIAHXYDDL6YoF58z69129eLuyVSuSjEQ9EOzxg+fxMjXH2xm7yQ==", + "license": "MIT" + }, + "node_modules/@zag-js/angle-slider": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/angle-slider/-/angle-slider-1.12.2.tgz", + "integrity": "sha512-pd62FEJZmnJAjrUcV5J+IayRGrUuMp90EPf5Sd2nwlBoxarmz6mSYr8jpeAPSjeT73rYkph8D+USM4qc3xHanQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/rect-utils": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/aria-hidden": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/aria-hidden/-/aria-hidden-1.12.2.tgz", + "integrity": "sha512-xhtgOYYzTztQNKmROpEjkbeVbbvqm70595kOVsQOPhaWKVBK4EySLhYEeTRCjLmK9jVwUWQAETISqyA2za9AfQ==", + "license": "MIT" + }, + "node_modules/@zag-js/auto-resize": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/auto-resize/-/auto-resize-1.12.2.tgz", + "integrity": "sha512-LhkL85yuLsIS4t3+XjpJZmZb1hAG9pTf1JIRNQ5HtmoCiOf/wxX73SJdOeQBKfzm1w8Hz5C6skNSxgJuYo0Wzg==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/avatar": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/avatar/-/avatar-1.12.2.tgz", + "integrity": "sha512-zAgxzx6dzH2Kds0hGgPBGm1wWjwurn3CojdID6V9awHq+u5aDf/HIKDOIdjaNlTPdXtBeWrzJaKQiqHmNGrong==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/carousel": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/carousel/-/carousel-1.12.2.tgz", + "integrity": "sha512-5nxNzar7wwGJIMV2As2/a2HLju8s7XahaLuq8BCiLQlhDN0N894Y2JazXm1gCthS7FdMlxa433G7bjYrxMYw9Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/scroll-snap": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/checkbox": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/checkbox/-/checkbox-1.12.2.tgz", + "integrity": "sha512-9kkmo9lz0eQcIkEmPCbevv6cl5fNRhMvyGKgsCENbaeU2VpntYlF8eRn81S2/7naE0JpXCGq+7jMgHHjKhNHeA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/clipboard": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/clipboard/-/clipboard-1.12.2.tgz", + "integrity": "sha512-lANTh8XOPmEiFUgVfd8+ORdpHC7grPImB3X71Kj1a2hfvEDLI/INop379aNsncboCdJkWp0slRzyquHSOgfaTA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/collapsible": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/collapsible/-/collapsible-1.12.2.tgz", + "integrity": "sha512-vmYHRhWex2LkcNRvg3oAzhmnF5gR+vBLfRpP8vu3hsX4zAn6GS2GggVeH3prBnNAIsErA4ech29BzqAhp5xeLA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/collection": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/collection/-/collection-1.12.2.tgz", + "integrity": "sha512-IVEXMBguC/QljCT6L5DsrSYUWvi+SWacGweDm12fckMEwPBpGOxv+dR0yqcjaeNEDuTkT0WHeZaWI/0TNV533g==", + "license": "MIT", + "dependencies": { + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/color-picker": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/color-picker/-/color-picker-1.12.2.tgz", + "integrity": "sha512-HXE5iyQaM7KOyu1SXcVJdDqtuZ+GRpdP8CaJVTz4RkBqaFBd3jrMVr3eW/Hv5N3b7v3vsfGHXXLchte+tcVpnQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/color-utils": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/color-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/color-utils/-/color-utils-1.12.2.tgz", + "integrity": "sha512-ZfshXAqaHhgo8tieADVZ99AoUTn3IK+K8UZ2cYmiTHkrmXGkXQUGysdqsCYkPE/nzC3CmIXLK4LPj5tHYJVydQ==", + "license": "MIT", + "dependencies": { + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/combobox": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/combobox/-/combobox-1.12.2.tgz", + "integrity": "sha512-PaNSh27057I+kwrfyUWSo0K54hwWK6oP+d0NPez9mrQRABj1wVbPc8R5ouseZqI6LL0zRGc4oZB7Inq1o5usWw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/aria-hidden": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/core": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/core/-/core-1.12.2.tgz", + "integrity": "sha512-deECf4FGOSjmD+f3Y116D9dHYs4NP87GBtQgQQ9oCXP8SOCR3A9gSkUGcFU+cQq2tNA5I1F9KqUElc0fDYfh4w==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/date-picker": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/date-picker/-/date-picker-1.12.2.tgz", + "integrity": "sha512-su741tKtQgGQ6KwTE2+oOIgGezOq/cQQyIWXUF0jkEyvsSPio06LRel/cvho3QO9oMzR6W7pus5fMOQPPO9Omw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/date-utils": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/live-region": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + }, + "peerDependencies": { + "@internationalized/date": ">=3.0.0" + } + }, + "node_modules/@zag-js/date-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/date-utils/-/date-utils-1.12.2.tgz", + "integrity": "sha512-FTpwgfk+xoHLQEHEVYO1yoXwgNdwTVlA4XX/IhSqj+3KOTXIu60SymX63fE/rqWzayXmH5m8doP7LGW758u1mg==", + "license": "MIT", + "peerDependencies": { + "@internationalized/date": ">=3.0.0" + } + }, + "node_modules/@zag-js/dialog": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/dialog/-/dialog-1.12.2.tgz", + "integrity": "sha512-Eqs/fpFc9wzYQQne4VOh8qivxuJyEcUR+MO/onTSFVV/AaJfXXowsXk7kAzcQrNzbvLn+yuTOCYFlh4QsPlLXA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/aria-hidden": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-trap": "1.12.2", + "@zag-js/remove-scroll": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/dismissable": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/dismissable/-/dismissable-1.12.2.tgz", + "integrity": "sha512-YIuUx+9mzzf2x9gWayt6T2e2N6nyrlBqzkJfwXJ9R3wEz065AW5X1PeKGGrvYlojPok1yNAaDq6mFL6Rqb6IVg==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2", + "@zag-js/interact-outside": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/dom-query": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/dom-query/-/dom-query-1.12.2.tgz", + "integrity": "sha512-UvFHQbkX6zscdYnMYc5TnrV/FkKlb4dMombXO2rD20NStU9gxb7uYtq91aPSO2x7aVCwNWuPWRb1nFAYGFBOvw==", + "license": "MIT", + "dependencies": { + "@zag-js/types": "1.12.2" + } + }, + "node_modules/@zag-js/editable": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/editable/-/editable-1.12.2.tgz", + "integrity": "sha512-kL6LulJKFOU8riW4tzM5QhAm6I6+zjfw28FjhOny7r4Mtc0HRQUJfh6WzlBcq72fqxvvf8J2OuVq2yeWPE9XBw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/interact-outside": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/file-upload": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/file-upload/-/file-upload-1.12.2.tgz", + "integrity": "sha512-JOjW4JGwRKVpDjZcLCU/qEAVNeUJbb9hYdmAvIAtBmf34VL3q17jsCKDvIZsxasSI0cOhuROhtWhnPXK0/lj6A==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/file-utils": "1.12.2", + "@zag-js/i18n-utils": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/file-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/file-utils/-/file-utils-1.12.2.tgz", + "integrity": "sha512-E28mzjlG53RyApOGrc+gELXcrUpm6lIyWTo0ScJ7Nqlu5fe2Cy69bHyULECz3cI7/XK454yRA5Le7DifbyJQwQ==", + "license": "MIT", + "dependencies": { + "@zag-js/i18n-utils": "1.12.2" + } + }, + "node_modules/@zag-js/floating-panel": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/floating-panel/-/floating-panel-1.12.2.tgz", + "integrity": "sha512-L7nxKWQEg4LB+FTwcqs5qlWaYJ8ZA3aDrZXtxqDtqltGeICAlV/0CkjwNhdX4DyGt4VLgLLYqE3Ciq0tJ1PO9g==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/rect-utils": "1.12.2", + "@zag-js/store": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/focus-trap": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/focus-trap/-/focus-trap-1.12.2.tgz", + "integrity": "sha512-YhlkuxvRcmVhWZa08GqGbqkbL2M0Ae72+NVjoFhlpourgERsatJjvQ8SCx5SEpPcVQQc86Zh+4QAHrdQ4//20g==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/focus-visible": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/focus-visible/-/focus-visible-1.12.2.tgz", + "integrity": "sha512-rXr8+ngjbSYDZDzpP3ckCvaqodvlOuIjfKYUnTYM717l5rYCIrn2vFF+ncDdelcWRBRv5nq7o79vjsqKU+1Bww==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/highlight-word": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/highlight-word/-/highlight-word-1.12.2.tgz", + "integrity": "sha512-M3bX0EeFZ5mh49B6IKTQKyPUZPMmO/7gImPr/1OmffUHUzr8EQT6M6WJBoDGB3dvGcPoahbNuGoZd3Jw48+1mA==", + "license": "MIT" + }, + "node_modules/@zag-js/hover-card": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/hover-card/-/hover-card-1.12.2.tgz", + "integrity": "sha512-lxReLOp0kB6roMiZHz3yigKjqX541x9axIyWzwfeZmZ1Hqg46hoh5OYi0NclQ2zEFw6BMNLAc8ZVoWToBQSfTg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/i18n-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/i18n-utils/-/i18n-utils-1.12.2.tgz", + "integrity": "sha512-P3wuPeFXWC8LW+ZzSdmaRLsSDlrQT0FU7Sx3z4IkZXr8mV+QMg5fh95dmXNIDkEcG6zL7PHwt2ho80m/KuFcfA==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/interact-outside": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/interact-outside/-/interact-outside-1.12.2.tgz", + "integrity": "sha512-ii7ZKufyF+kDr2WcwVgGZZQXrd/GmNYeJ4heR/RO7q3PxYv9le+GFq3evbtBhhVQ/0P3IqZZ8bZL0f/7qQyKKg==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/listbox": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/listbox/-/listbox-1.12.2.tgz", + "integrity": "sha512-EczE94iUzcKIqZhQ5SqaSiLkH88M+APrOp+xI+kHSDUt0SD4TQur6O/ALKFfBPT8Kip5iPK3Er5+t7PkC1wnvg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/live-region": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/live-region/-/live-region-1.12.2.tgz", + "integrity": "sha512-yu1a7jKoheMmeiU4cYRqod2u7JiD1o7Cgi9af1PSBcU9vFJTUpIDJErRCI79vuPSugFvpP38Cjtc3LlgE3uGyA==", + "license": "MIT" + }, + "node_modules/@zag-js/menu": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/menu/-/menu-1.12.2.tgz", + "integrity": "sha512-Ja2RfNLHZOIBuSDRu7lS+0dfRfOov0xdA2RU8yZJBJupZBKT49tBEktJfWNr1YV3GDdlPoGSFVL2ogjNxtzDXQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/rect-utils": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/number-input": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/number-input/-/number-input-1.12.2.tgz", + "integrity": "sha512-YesH2jaFwjRxfqdXUfjGgaAcLjoPPCYkltdC7wEBCNgAqU8UKZ+tktVHnfzZoLZiKqkQ9TXXOC4Ic6cmjXC2UQ==", + "license": "MIT", + "dependencies": { + "@internationalized/number": "3.6.1", + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/pagination": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/pagination/-/pagination-1.12.2.tgz", + "integrity": "sha512-5ly8eQg/58RV0blov46oZ5vhudWMxH+9rZw0LA6Hci3lGrmDjEezOkKmN0Om8PV+xoYcrCl0nnptxALChHCNSQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/pin-input": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/pin-input/-/pin-input-1.12.2.tgz", + "integrity": "sha512-cRg4FOpL9wTGRztx+qk1Sx8aakXsGw7B8+AnboT12zcW64pYF72hqJUSrz13S2um7MhDJskPrdOetal4GBqWFw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/popover": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/popover/-/popover-1.12.2.tgz", + "integrity": "sha512-wOYf4eNXWoZlBwNlF4EGYHsaGOrGsVIVVteCB/xSr9AXBrTF7CQiSwH445+m7u0KBZnDfsY61JweNx5U9FAmKA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/aria-hidden": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-trap": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/remove-scroll": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/popper": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/popper/-/popper-1.12.2.tgz", + "integrity": "sha512-FoUx39kjStc7CUEtxCfcIlrQ0Oq9HH2As9HKz9b4IMwBg3u39sVP2XtHUQdHqNzMoscSsRtAqaTHMmRBz++GIA==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "1.6.13", + "@zag-js/dom-query": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/presence": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/presence/-/presence-1.12.2.tgz", + "integrity": "sha512-V2oNmwe3qYXxAi9Cx1y+RAdb75fexJA+m0VgmO2R5tL4DIFA/CcHB5lc4yPxUzYw2fNwVZGd6F6eUX0Ys0Sp3A==", + "license": "MIT", + "dependencies": { + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2" + } + }, + "node_modules/@zag-js/progress": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/progress/-/progress-1.12.2.tgz", + "integrity": "sha512-B1jgP7iKYV3CwI33bnXPG4Hg7dr/9xl3FkYoM7hk8m5gD4b3zW1eJN8vQejKbARbxki0w/sv3r2DHCF14S7yMQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/qr-code": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/qr-code/-/qr-code-1.12.2.tgz", + "integrity": "sha512-t5dByXkS3dBnhv2IS4GStAnVg0Ybm1gtWprspL97ndAHabE7tV1qwPaUV42cT16gFE6/l3aFtbjC+s0fVEFFsA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2", + "proxy-memoize": "3.0.1", + "uqr": "0.1.2" + } + }, + "node_modules/@zag-js/radio-group": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/radio-group/-/radio-group-1.12.2.tgz", + "integrity": "sha512-4QsVREhwP0colnrsaWJIP1jjIZGqfKO7grh3K+gI4vmzD3hU9c2F6ZeRLdzdkDyK+CXcE9MYkDW0aJKxEsJr4Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/rating-group": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/rating-group/-/rating-group-1.12.2.tgz", + "integrity": "sha512-n6DJCdtu2hLhZDzFQd0iS7dXL0LJlCVVAFX1pPFrLAl1QQLDZLHftGZAsTnHpF2xAgrOyvzm1p+DPB5arQVcEw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/react": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/react/-/react-1.12.2.tgz", + "integrity": "sha512-kjMP2ikLNbHSEhkrUkg20mtWyYzhOIIBMR4DXlS3nBnB2vNUGq71iUf45xgO7qq7jF/ANOazT5cKJkvBFzs7qw==", + "license": "MIT", + "dependencies": { + "@zag-js/core": "1.12.2", + "@zag-js/store": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + }, + "peerDependencies": { + "react": ">=18.0.0", + "react-dom": ">=18.0.0" + } + }, + "node_modules/@zag-js/rect-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/rect-utils/-/rect-utils-1.12.2.tgz", + "integrity": "sha512-GM1nRRsUDhlYULdouSQ/Hwow9Wy2dJUeK5qX/CruRkkkUKNkcAB97rv8oxZtTLBBa0KemD5X/JwY4W3rfY1mgw==", + "license": "MIT" + }, + "node_modules/@zag-js/remove-scroll": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/remove-scroll/-/remove-scroll-1.12.2.tgz", + "integrity": "sha512-SYMGGlwnh2VCnae5pEcCgxhVqlCAquqclxp9KVbuypUIZ8Tby1cP78aWwQ5i9QgNGz5V1WfINsZaE0AFr++s0g==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/scroll-snap": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/scroll-snap/-/scroll-snap-1.12.2.tgz", + "integrity": "sha512-OCYEKKubAwshRI0PvVdt0W5vb7aq06xci5Z3mK3Fu3vIIZe1e1JVHC1vPfjJf4wso5vSdQBN9KLHgdoths4Fvg==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/select": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/select/-/select-1.12.2.tgz", + "integrity": "sha512-kSa3EAkUxbEShRVnrkujujFTY22HK4aYSWl1F3u2Yqjmp9EJRX9kR1CXVXbDK8Ta9JmW82XPFyvIa+ah30isPA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/signature-pad": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/signature-pad/-/signature-pad-1.12.2.tgz", + "integrity": "sha512-xg5P8XRynjtpNU3KFET+Gw/pQpFj4yV+MnKHIX51Pb6JF8iCBkzx5lF6yNCp8y24ANG8ndGq8LCzv+sCC4tJnA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2", + "perfect-freehand": "^1.2.2" + } + }, + "node_modules/@zag-js/slider": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/slider/-/slider-1.12.2.tgz", + "integrity": "sha512-iAlV+A/PgJoCZaqsIAPBaTd7xDLHYbUe3QbjnDqmOHIVpRIV5kM1MH8creRFtDauHIh1xHD1TIvwKPVi6Ik6Xw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/splitter": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/splitter/-/splitter-1.12.2.tgz", + "integrity": "sha512-YQLtL9AKiJtm2D7KLCvQGfHKtZ/FwikvABUW1ldUM2m1he6oKkKdGjSycT4yJg7+K5TbaZfV8jmc+bc7w0/5hA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/steps": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/steps/-/steps-1.12.2.tgz", + "integrity": "sha512-0bI8WYVQAiXOAn36i61Q+rqJzt6+cJK77q5/jMqDvlquQ2lvfhW2XXmBwYXmKadnmfiFprrCvGW1GGwSV/R82A==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/store": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/store/-/store-1.12.2.tgz", + "integrity": "sha512-Vy1QK0cmaaruzpkIwJ1lvCO3q0E0K/M1ZY71cDbEYKRYfpRqgV+7xluWbfTueqiAIYyGPa7+nCpakdr9zPPsnQ==", + "license": "MIT", + "dependencies": { + "proxy-compare": "3.0.1" + } + }, + "node_modules/@zag-js/switch": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/switch/-/switch-1.12.2.tgz", + "integrity": "sha512-vRKuCwYi5pDLgZMQ6I6cAzdLRFqC627aFycXRU1mC/0uVo/fCrrbjPvdaascLdmTtEq6/IvkjqZwQovedXbKyg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tabs": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tabs/-/tabs-1.12.2.tgz", + "integrity": "sha512-7IPumMCwJXP+ukU9AvnmpQJtUoMXbO+b4trG8kZeSGQps5VVZhUntrAOIZ6QYRv6psR1eoNo+4giTepr8dIt3g==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tags-input": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tags-input/-/tags-input-1.12.2.tgz", + "integrity": "sha512-bldiVV08yPCDVWGGmhCw4NbK44LuKT9SYYbGUtngRfABiiQUjvc8wQZNSdRgAV1ZXrniwLiMDsQ7L9pc585SRg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/auto-resize": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/interact-outside": "1.12.2", + "@zag-js/live-region": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/time-picker": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/time-picker/-/time-picker-1.12.2.tgz", + "integrity": "sha512-dv4+ZDOWW7xOFNPQGqm2aMkuBLUkUaHCa/zTzV/0Ypl+A/6gBwjv81HIBDTJOHfhcJhlhuoZtgxU/n0ZRFB0yw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + }, + "peerDependencies": { + "@internationalized/date": ">=3.0.0" + } + }, + "node_modules/@zag-js/timer": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/timer/-/timer-1.12.2.tgz", + "integrity": "sha512-1cmdgRSuZNKEoyv5CNb4GZeU3MUi+WJBMZKeXMWy4niBz5sheaLl1FqfW9vUnXAKpfqKif/OFj/QYeo9+m8LqA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/toast": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/toast/-/toast-1.12.2.tgz", + "integrity": "sha512-uaSlF3PiQ/hlFamBRkrxUESDYd8vXo/iRqvNiROy18bBygpvhfNIi+f8vrvkGXuSqzZ8VWJbbgiNMtqPX6I/8w==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/toggle": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/toggle/-/toggle-1.12.2.tgz", + "integrity": "sha512-AUDEVjZtXwwYFSEHF4cDTJlGvjsaYcXdk3P7j9JQLoKkDci3x25QgOw6W670/RWpFNpbfjO8qBjWMs1P5+Dw4w==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/toggle-group": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/toggle-group/-/toggle-group-1.12.2.tgz", + "integrity": "sha512-pFgU9OjhcBVIWS5izSlTG+K3MlKK+LeD1qKaMIHvX//0pJWkn9oEcNVs58Ae4DrizN5A8WB5i5FjV7BC3hDNYw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tooltip": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tooltip/-/tooltip-1.12.2.tgz", + "integrity": "sha512-RAZ0wslbHWfcH1MPVmfwFJfP3vzQ2Cf5hc5oJZzTURhNpgM3vIhtbCyjXwal/L82eW+Iu2bRrezE/fNRjwBIbw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/store": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tour": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tour/-/tour-1.12.2.tgz", + "integrity": "sha512-3TNE2p/mUe52RgndOpoSEVlB57TWuK6dM1X/atVMfDBDDBwTjDFkw5OnHSh3nDugva54EJVArn/0+9QGZhvl+w==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-trap": "1.12.2", + "@zag-js/interact-outside": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tree-view": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tree-view/-/tree-view-1.12.2.tgz", + "integrity": "sha512-S/+a6KCFGSocMKlMG8GmfEkfjbuDeams4s/NTy1JYOTlYO72J5T0L9FD8i9q/bXBhHNno985b5QGpjlfHG6Brg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/types": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/types/-/types-1.12.2.tgz", + "integrity": "sha512-coJfIU/1Cg1RkWEkf4ArXK6rD3EU+lwxQdtVRlhvGk4c2ts2YTqNi/Sis5CT4/dzaKAk3pk8O2H3ry4IcL2tsg==", + "license": "MIT", + "dependencies": { + "csstype": "3.1.3" + } + }, + "node_modules/@zag-js/utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/utils/-/utils-1.12.2.tgz", + "integrity": "sha512-JLmzHzJVggOy+4z3jbJ8v86O6Gqm4h1/+ExtwfiTiba0O7j2+4Had7XQxSjVw+H7fNDAfwbZY8af7XzrnumcLQ==", + "license": "MIT" + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "license": "MIT", + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.5.tgz", + "integrity": "sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001716", + "electron-to-chromium": "^1.5.149", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001718", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz", + "integrity": "sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/chart.js": { + "version": "4.4.9", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.9.tgz", + "integrity": "sha512-EyZ9wWKgpAU0fLJ43YAEIF8sr5F2W3LqbS40ZJyHIner2lY14ufqv2VMp69MAiZ2rpwxEUxEhIH/0U3xyRynxg==", + "license": "MIT", + "dependencies": { + "@kurkle/color": "^0.3.0" + }, + "engines": { + "pnpm": ">=8" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz", + "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "license": "MIT", + "peer": true + }, + "node_modules/core-js": { + "version": "3.42.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.42.0.tgz", + "integrity": "sha512-Sz4PP4ZA+Rq4II21qkNqOEDTDrCvcANId3xpIgB34NDkWc3UduWj2dqEtN9yZIq8Dk3HyPI33x9sqqU5C8sr0g==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" + }, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/dedent": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.6.0.tgz", + "integrity": "sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.155", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.155.tgz", + "integrity": "sha512-ps5KcGGmwL8VaeJlvlDlu4fORQpv3+GIcF5I3f9tUKUlJ/wsysh6HU8P5L1XWRYeXfA0oJd4PyM8ds8zTFf6Ng==", + "dev": true, + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/error-stack-parser": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "stackframe": "^1.3.4" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", + "license": "MIT" + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "license": "MIT", + "peer": true + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/html-entities": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz", + "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ], + "license": "MIT" + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true, + "license": "MIT" + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "license": "MIT" + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jake": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", + "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "license": "MIT", + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jiti": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", + "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "license": "MIT" + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true, + "license": "ISC" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/next-themes": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.4.6.tgz", + "integrity": "sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "license": "MIT", + "peer": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "license": "MIT" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/perfect-freehand": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/perfect-freehand/-/perfect-freehand-1.2.2.tgz", + "integrity": "sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/pretty-format/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proxy-compare": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/proxy-compare/-/proxy-compare-3.0.1.tgz", + "integrity": "sha512-V9plBAt3qjMlS1+nC8771KNf6oJ12gExvaxnNzN/9yVRLdTv/lc+oJlnSzrdYDAvBfTStPCoiaCOTmTs0adv7Q==", + "license": "MIT" + }, + "node_modules/proxy-memoize": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/proxy-memoize/-/proxy-memoize-3.0.1.tgz", + "integrity": "sha512-VDdG/VYtOgdGkWJx7y0o7p+zArSf2383Isci8C+BP3YXgMYDoPd3cCBjw0JdWb6YBb9sFiOPbAADDVTPJnh+9g==", + "license": "MIT", + "dependencies": { + "proxy-compare": "^3.0.0" + } + }, + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ], + "license": "MIT" + }, + "node_modules/react": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react/-/react-19.1.0.tgz", + "integrity": "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-chartjs-2": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/react-chartjs-2/-/react-chartjs-2-5.3.0.tgz", + "integrity": "sha512-UfZZFnDsERI3c3CZGxzvNJd02SHjaSJ8kgW1djn65H1KK8rehwTjyrRKOG3VTMG8wtHZ5rgAO5oTHtHi9GCCmw==", + "license": "MIT", + "peerDependencies": { + "chart.js": "^4.1.1", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/react-dom": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.1.0.tgz", + "integrity": "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.26.0" + }, + "peerDependencies": { + "react": "^19.1.0" + } + }, + "node_modules/react-hook-form": { + "version": "7.56.3", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.56.3.tgz", + "integrity": "sha512-IK18V6GVbab4TAo1/cz3kqajxbDPGofdF0w7VHdCo0Nt8PrPlOZcuuDq9YYIV1BtjcX78x0XsldbQRQnQXWXmw==", + "license": "MIT", + "engines": { + "node": ">=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-hook-form" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17 || ^18 || ^19" + } + }, + "node_modules/react-icons": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-5.5.0.tgz", + "integrity": "sha512-MEFcXdkP3dLo8uumGI5xN3lDFNsRtrjbOEKDLD7yv76v4wpnEq2Lt2qeHaQOr34I/wPN3s3+N08WkQ+CW37Xiw==", + "license": "MIT", + "peerDependencies": { + "react": "*" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "license": "MIT", + "peer": true + }, + "node_modules/react-refresh": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", + "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/scheduler": { + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", + "integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/stackframe": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", + "dev": true, + "license": "MIT" + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==", + "license": "MIT", + "peer": true + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "license": "ISC", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-jest": { + "version": "29.3.3", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.3.3.tgz", + "integrity": "sha512-y6jLm19SL4GroiBmHwFK4dSHUfDNmOrJbRfp6QmDIlI9p5tT5Q8ItccB4pTIslCIqOZuQnBwpTR0bQ5eUMYwkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "bs-logger": "^0.2.6", + "ejs": "^3.1.10", + "fast-json-stable-stringify": "^2.1.0", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "^4.1.2", + "make-error": "^1.3.6", + "semver": "^7.7.2", + "type-fest": "^4.41.0", + "yargs-parser": "^21.1.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/transform": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/type-fest": { + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", + "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uqr": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/uqr/-/uqr-0.1.2.tgz", + "integrity": "sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==", + "license": "MIT" + }, + "node_modules/uuid": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.1.0.tgz", + "integrity": "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist/esm/bin/uuid" + } + }, + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", + "dev": true, + "license": "ISC", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git "a/\320\2403212/zinchenko_408657/lab4/code/package.json" "b/\320\2403212/zinchenko_408657/lab4/code/package.json" new file mode 100644 index 0000000..ed5ddec --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/package.json" @@ -0,0 +1,34 @@ +{ + "name": "rsbuild-react-ts", + "version": "1.0.0", + "private": true, + "type": "module", + "scripts": { + "build": "rsbuild build", + "dev": "rsbuild dev --open", + "preview": "rsbuild preview", + "test": "jest" + }, + "dependencies": { + "@chakra-ui/react": "^3.19.0", + "chart.js": "^4.4.9", + "dayjs": "^1.11.13", + "next-themes": "^0.4.6", + "react": "^19.1.0", + "react-chartjs-2": "^5.3.0", + "react-dom": "^19.1.0", + "react-hook-form": "^7.56.3", + "react-icons": "^5.5.0", + "uuid": "^11.1.0" + }, + "devDependencies": { + "@jest/globals": "^29.7.0", + "@rsbuild/core": "^1.3.15", + "@rsbuild/plugin-react": "^1.3.0", + "@types/react": "^19.1.2", + "@types/react-dom": "^19.1.3", + "jest": "^29.7.0", + "ts-jest": "^29.3.3", + "typescript": "^5.8.3" + } +} diff --git "a/\320\2403212/zinchenko_408657/lab4/code/rsbuild.config.ts" "b/\320\2403212/zinchenko_408657/lab4/code/rsbuild.config.ts" new file mode 100644 index 0000000..47207f7 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/rsbuild.config.ts" @@ -0,0 +1,9 @@ +import { defineConfig } from '@rsbuild/core'; +import { pluginReact } from '@rsbuild/plugin-react'; + +export default defineConfig({ + plugins: [pluginReact()], + html: { + title: 'Лаб. 4' + } +}); diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/App.tsx" "b/\320\2403212/zinchenko_408657/lab4/code/src/App.tsx" new file mode 100644 index 0000000..db6cd0a --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/App.tsx" @@ -0,0 +1,181 @@ +import { + Box, + Button, + Card, + Heading, + HStack, + SimpleGrid, + Stack, + Text, + VStack, +} from "@chakra-ui/react"; +import { Provider } from "./components/ui/provider"; +import { approximateLeastSquares } from "./math"; +import { ReactNode, useState } from "react"; +import Chart from "./components/chart"; +import PointsTable, { Point } from "./components/PointsTable"; +import dayjs from "dayjs"; +import { v4 } from "uuid"; + +type ConsoleInput = { + id: string; + element: ReactNode; +} + +const App = () => { + const [console, setConsole] = useState([]); + const consolePush = (msg: string | ReactNode) => { + setConsole(prev => [...prev, ({ + id: v4(), + element: ( + + {dayjs().format('HH:mm:ss')} + {msg} + + ) + })]); + } + + const [models, setModels] = useState<{ + labels: string[]; + points: number[]; + models: Array<{ + name: string; + predictions: number[]; + rms: number; + r2: number; + }>; + } | null>(null); + + const [points, setPoints] = useState([ + { x: 1, y: 2 }, + { x: 2, y: 4 }, + { x: 3, y: 6 }, + { x: 4, y: 8 }, + { x: 5, y: 10 }, + { x: 6, y: 12 }, + { x: 7, y: 14 }, + { x: 8, y: 16 }, + ]); + + const handleApproximate = () => { + try { + if (points.length < 8 || points.length > 12) { + consolePush('Количество точек должно быть от 8 до 12'); + return; + } + + const result = approximateLeastSquares(points); + + const hasNegativeY = points.some(p => p.y <= 0); + const hasNegativeOrZeroX = points.some(p => p.x <= 0); + + if (hasNegativeY) { + consolePush( + + Экспоненциальная и степенная модели не построены, так как присутствуют отрицательные или нулевые значения Y + + ); + } + + if (hasNegativeOrZeroX) { + consolePush( + + Степенная и логарифмическая модели не построены, так как присутствуют отрицательные или нулевые значения X + + ); + } + + result.models.forEach(model => { + consolePush( + + Модель: {model.name} + Коэффициенты: {model.coefficients.map(c => c.toFixed(4)).join(', ')} + Среднеквадратичное отклонение: {model.rms.toFixed(4)} + Коэффициент детерминации R²: {model.r2.toFixed(4)} + {model.pearsonCorrelation !== undefined && + Коэффициент корреляции Пирсона: {model.pearsonCorrelation.toFixed(4)} + } + + ); + }); + + consolePush( + + Лучшая модель: {result.bestModel.name} + + ); + + setModels({ + labels: points.map(p => p.x.toFixed(2)), + points: points.map(p => p.y), + models: result.models.map(model => ({ + name: model.name, + predictions: model.predictions, + rms: model.rms, + r2: model.r2, + })) + }); + + } catch (error: unknown) { + if (error instanceof Error) { + consolePush(`Ошибка: ${error.message}`); + } else { + consolePush('Произошла неизвестная ошибка'); + } + } + }; + + return ( + + + + + + + Аппроксимация функций + + + + + + + + + {console.map(str => {str.element})} + + + + + + {models && ( + + {models.models.map((model) => ( + + + + + + ))} + + )} + + + + + ); +}; + +export default App; diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/components/PointsTable.tsx" "b/\320\2403212/zinchenko_408657/lab4/code/src/components/PointsTable.tsx" new file mode 100644 index 0000000..39e31b4 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/components/PointsTable.tsx" @@ -0,0 +1,148 @@ +import { + Button, + HStack, + Input, + Table, + Text, + VStack, +} from "@chakra-ui/react"; +import { ChangeEvent, useRef } from "react"; + +export interface Point { + x: number; + y: number; +} + +interface PointsTableProps { + points: Point[]; + onChange: (points: Point[]) => void; +} + +const PointsTable = ({ points, onChange }: PointsTableProps) => { + const handlePointChange = (index: number, axis: 'x' | 'y', value: string) => { + const newValue = Number(value); + if (isNaN(newValue)) return; + + const newPoints = [...points]; + newPoints[index] = { + ...newPoints[index], + [axis]: newValue, + }; + onChange(newPoints); + }; + + const addPoint = () => { + if (points.length >= 12) return; + onChange([...points, { x: 0, y: 0 }]); + }; + + const removePoint = () => { + if (points.length <= 8) return; + onChange(points.slice(0, -1)); + }; + + const handleFileChange = (e: ChangeEvent) => { + const file = e.target.files?.[0]; + if (!file) return; + + const reader = new FileReader(); + reader.onload = (event) => { + const text = event.target?.result as string; + const lines = text.split('\n') + .map(line => line.trim()) + .filter(line => line.length > 0); + + const newPoints: Point[] = lines.map(line => { + const [x, y] = line.split(',').map(Number); + return { x, y }; + }).filter(point => !isNaN(point.x) && !isNaN(point.y)); + + if (newPoints.length < 8 || newPoints.length > 12) { + alert('CSV файл должен содержать от 8 до 12 точек'); + return; + } + + onChange(newPoints); + }; + reader.readAsText(file); + }; + + const downloadRef = useRef(null); + + return ( + + + Точки ({points.length}/12) + + + + + + + + + + + + + X + Y + + + + {points.map((point, index) => ( + + {index + 1} + + handlePointChange(index, 'x', e.target.value)} + type="number" + step="any" + /> + + + handlePointChange(index, 'y', e.target.value)} + type="number" + step="any" + /> + + + ))} + + + + ); +}; + +export default PointsTable; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/components/chart.tsx" "b/\320\2403212/zinchenko_408657/lab4/code/src/components/chart.tsx" new file mode 100644 index 0000000..a130840 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/components/chart.tsx" @@ -0,0 +1,95 @@ +import { + Chart as ChartJS, + CategoryScale, + LinearScale, + PointElement, + LineElement, + Title, + Tooltip, + Legend, +} from 'chart.js'; +import { Line } from 'react-chartjs-2'; + +ChartJS.register( + CategoryScale, + LinearScale, + PointElement, + LineElement, + Title, + Tooltip, + Legend +); + +export const options = { + responsive: true, + maintainAspectRatio: false, + plugins: { + legend: { + display: false, + }, + title: { + display: true, + text: '', + } + }, +}; + +const COLORS = { + points: { border: 'rgb(53, 162, 235)', background: 'rgba(53, 162, 235, 0.5)' }, + line: { border: 'rgb(255, 99, 132)', background: 'rgba(255, 99, 132, 0.5)' }, +}; + +export interface ChartProps { + title: string; + labels: (number | string)[]; + points: number[]; + predictions: number[]; + rms: number; + r2: number; +} + +const Chart = (props: ChartProps) => { + const datasets = [ + { + label: 'Точки', + data: props.points, + borderColor: COLORS.points.border, + backgroundColor: COLORS.points.background, + pointRadius: 5, + showLine: false, + }, + { + label: 'Модель', + data: props.predictions, + borderColor: COLORS.line.border, + backgroundColor: COLORS.line.background, + pointRadius: 0, + borderWidth: 2, + }, + ]; + + return ( + + ); +} + +export default Chart; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/color-mode.tsx" "b/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/color-mode.tsx" new file mode 100644 index 0000000..f93feab --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/color-mode.tsx" @@ -0,0 +1,107 @@ +"use client" + +import type { IconButtonProps, SpanProps } from "@chakra-ui/react" +import { ClientOnly, IconButton, Skeleton, Span } from "@chakra-ui/react" +import { ThemeProvider, useTheme } from "next-themes" +import type { ThemeProviderProps } from "next-themes" +import * as React from "react" +import { LuMoon, LuSun } from "react-icons/lu" + +export interface ColorModeProviderProps extends ThemeProviderProps {} + +export function ColorModeProvider(props: ColorModeProviderProps) { + return ( + + ) +} + +export type ColorMode = "light" | "dark" + +export interface UseColorModeReturn { + colorMode: ColorMode + setColorMode: (colorMode: ColorMode) => void + toggleColorMode: () => void +} + +export function useColorMode(): UseColorModeReturn { + const { resolvedTheme, setTheme } = useTheme() + const toggleColorMode = () => { + setTheme(resolvedTheme === "dark" ? "light" : "dark") + } + return { + colorMode: resolvedTheme as ColorMode, + setColorMode: setTheme, + toggleColorMode, + } +} + +export function useColorModeValue(light: T, dark: T) { + const { colorMode } = useColorMode() + return colorMode === "dark" ? dark : light +} + +export function ColorModeIcon() { + const { colorMode } = useColorMode() + return colorMode === "dark" ? : +} + +interface ColorModeButtonProps extends Omit {} + +export const ColorModeButton = React.forwardRef< + HTMLButtonElement, + ColorModeButtonProps +>(function ColorModeButton(props, ref) { + const { toggleColorMode } = useColorMode() + return ( + }> + + + + + ) +}) + +export const LightMode = React.forwardRef( + function LightMode(props, ref) { + return ( + + ) + }, +) + +export const DarkMode = React.forwardRef( + function DarkMode(props, ref) { + return ( + + ) + }, +) diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/provider.tsx" "b/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/provider.tsx" new file mode 100644 index 0000000..fd0331b --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/provider.tsx" @@ -0,0 +1,15 @@ +"use client" + +import { ChakraProvider, defaultSystem } from "@chakra-ui/react" +import { + ColorModeProvider, + type ColorModeProviderProps, +} from "./color-mode" + +export function Provider(props: ColorModeProviderProps) { + return ( + + + + ) +} diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/toaster.tsx" "b/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/toaster.tsx" new file mode 100644 index 0000000..df6c2c3 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/toaster.tsx" @@ -0,0 +1,43 @@ +"use client" + +import { + Toaster as ChakraToaster, + Portal, + Spinner, + Stack, + Toast, + createToaster, +} from "@chakra-ui/react" + +export const toaster = createToaster({ + placement: "bottom-end", + pauseOnPageIdle: true, +}) + +export const Toaster = () => { + return ( + + + {(toast) => ( + + {toast.type === "loading" ? ( + + ) : ( + + )} + + {toast.title && {toast.title}} + {toast.description && ( + {toast.description} + )} + + {toast.action && ( + {toast.action.label} + )} + {toast.meta?.closable && } + + )} + + + ) +} diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/tooltip.tsx" "b/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/tooltip.tsx" new file mode 100644 index 0000000..43a8a6c --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/components/ui/tooltip.tsx" @@ -0,0 +1,46 @@ +import { Tooltip as ChakraTooltip, Portal } from "@chakra-ui/react" +import * as React from "react" + +export interface TooltipProps extends ChakraTooltip.RootProps { + showArrow?: boolean + portalled?: boolean + portalRef?: React.RefObject + content: React.ReactNode + contentProps?: ChakraTooltip.ContentProps + disabled?: boolean +} + +export const Tooltip = React.forwardRef( + function Tooltip(props, ref) { + const { + showArrow, + children, + disabled, + portalled = true, + content, + contentProps, + portalRef, + ...rest + } = props + + if (disabled) return children + + return ( + + {children} + + + + {showArrow && ( + + + + )} + {content} + + + + + ) + }, +) diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/env.d.ts" "b/\320\2403212/zinchenko_408657/lab4/code/src/env.d.ts" new file mode 100644 index 0000000..b0ac762 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/env.d.ts" @@ -0,0 +1 @@ +/// diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/index.tsx" "b/\320\2403212/zinchenko_408657/lab4/code/src/index.tsx" new file mode 100644 index 0000000..55f29bf --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/index.tsx" @@ -0,0 +1,13 @@ +import React from 'react'; +import ReactDOM from 'react-dom/client'; +import App from './App'; + +const rootEl = document.getElementById('root'); +if (rootEl) { + const root = ReactDOM.createRoot(rootEl); + root.render( + + + , + ); +} diff --git "a/\320\2403212/zinchenko_408657/lab4/code/src/math/index.ts" "b/\320\2403212/zinchenko_408657/lab4/code/src/math/index.ts" new file mode 100644 index 0000000..e6dc67e --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/src/math/index.ts" @@ -0,0 +1,187 @@ +export interface DataPoint { + x: number; + y: number; +} + +export interface ModelResult { + name: string; + coefficients: number[]; + rms: number; + r2: number; + predictions: number[]; + pearsonCorrelation?: number; +} + +export interface ApproximationResult { + models: ModelResult[]; + bestModel: ModelResult; +} + +export function approximateLeastSquares(data: DataPoint[]): ApproximationResult { + const n = data.length; + const xs = data.map(p => p.x); + const ys = data.map(p => p.y); + const meanY = mean(ys); + const ssTot = ys.reduce((sum, y) => sum + (y - meanY) ** 2, 0); + + const results: ModelResult[] = []; + + function addModel( + name: string, + coeffs: number[], + predict: (x: number) => number, + pearson?: number + ) { + const preds = xs.map(x => predict(x)); + const ssRes = ys.reduce((sum, y, i) => sum + (y - preds[i]) ** 2, 0); + const rms = Math.sqrt(ssRes / n); + const r2 = 1 - ssRes / ssTot; + const model: ModelResult = { name, coefficients: coeffs, rms, r2, predictions: preds }; + if (pearson !== undefined) model.pearsonCorrelation = pearson; + results.push(model); + } + + { + const { a: slope, b: intercept } = linearRegression(xs, ys); + const pearson = pearsonCorrelation(xs, ys); + addModel("Linear", [intercept, slope], x => intercept + slope * x, pearson); + } + + { + const coeffs = polyFit(xs, ys, 2); + addModel( + "Quadratic", + coeffs, + x => coeffs[0] + coeffs[1] * x + coeffs[2] * x * x + ); + } + + { + const coeffs = polyFit(xs, ys, 3); + addModel( + "Cubic", + coeffs, + x => coeffs[0] + coeffs[1] * x + coeffs[2] * x ** 2 + coeffs[3] * x ** 3 + ); + } + + if (ys.every(y => y > 0)) { + const logYs = ys.map(y => Math.log(y)); + const { a: B, b: lnA } = linearRegression(xs, logYs); + const A = Math.exp(lnA); + addModel("Exponential", [A, B], x => A * Math.exp(B * x)); + } + + if (xs.every(x => x > 0)) { + const logXs = xs.map(x => Math.log(x)); + const { a: B, b: A } = linearRegression(logXs, ys); + addModel("Logarithmic", [A, B], x => A + B * Math.log(x)); + } + + if (xs.every(x => x > 0) && ys.every(y => y > 0)) { + const logXs = xs.map(x => Math.log(x)); + const logYs = ys.map(y => Math.log(y)); + const { a: B, b: lnA } = linearRegression(logXs, logYs); + const A = Math.exp(lnA); + addModel("Power", [A, B], x => A * Math.pow(x, B)); + } + + const bestModel = results.reduce((best, model) => + model.rms < best.rms ? model : best); + + return { models: results, bestModel }; +} + + +function mean(arr: number[]): number { + return arr.reduce((s, v) => s + v, 0) / arr.length; +} + +function linearRegression(xs: number[], ys: number[]): { a: number; b: number } { + const n = xs.length; + const meanX = mean(xs); + const meanY = mean(ys); + let num = 0; + let den = 0; + for (let i = 0; i < n; i++) { + num += (xs[i] - meanX) * (ys[i] - meanY); + den += (xs[i] - meanX) ** 2; + } + const a = num / den; + const b = meanY - a * meanX; + return { a, b }; +} + +function pearsonCorrelation(xs: number[], ys: number[]): number { + const n = xs.length; + const meanX = mean(xs); + const meanY = mean(ys); + let num = 0; + let denX = 0; + let denY = 0; + for (let i = 0; i < n; i++) { + const dx = xs[i] - meanX; + const dy = ys[i] - meanY; + num += dx * dy; + denX += dx ** 2; + denY += dy ** 2; + } + return num / Math.sqrt(denX * denY); +} + +function polyFit(xs: number[], ys: number[], degree: number): number[] { + const n = xs.length; + const m = degree + 1; + const A: number[][] = Array.from({ length: m }, () => Array(m).fill(0)); + const b: number[] = Array(m).fill(0); + + for (let i = 0; i < n; i++) { + const xi = xs[i]; + const yi = ys[i]; + for (let j = 0; j < m; j++) { + for (let k = 0; k < m; k++) { + A[j][k] += Math.pow(xi, j + k); + } + b[j] += yi * Math.pow(xi, j); + } + } + + return solveLinearSystem(A, b); +} + +function solveLinearSystem(A: number[][], b: number[]): number[] { + const n = A.length; + const M = A.map(row => row.slice()); + const B = b.slice(); + + for (let i = 0; i < n; i++) { + let maxRow = i; + for (let k = i + 1; k < n; k++) { + if (Math.abs(M[k][i]) > Math.abs(M[maxRow][i])) maxRow = k; + } + [M[i], M[maxRow]] = [M[maxRow], M[i]]; + [B[i], B[maxRow]] = [B[maxRow], B[i]]; + + const pivot = M[i][i]; + if (Math.abs(pivot) < 1e-12) { + throw new Error("Матрица вырождена или близка к вырождению"); + } + + for (let j = i; j < n; j++) { + M[i][j] /= pivot; + } + B[i] /= pivot; + + for (let k = 0; k < n; k++) { + if (k !== i) { + const factor = M[k][i]; + for (let j = i; j < n; j++) { + M[k][j] -= factor * M[i][j]; + } + B[k] -= factor * B[i]; + } + } + } + + return B; +} diff --git "a/\320\2403212/zinchenko_408657/lab4/code/tsconfig.json" "b/\320\2403212/zinchenko_408657/lab4/code/tsconfig.json" new file mode 100644 index 0000000..e53d1e5 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab4/code/tsconfig.json" @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "lib": ["DOM", "ES2020"], + "jsx": "react-jsx", + "target": "ES2020", + "noEmit": true, + "skipLibCheck": true, + "useDefineForClassFields": true, + + /* modules */ + "module": "ESNext", + "isolatedModules": true, + "resolveJsonModule": true, + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + + /* type checking */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true + }, + "include": ["src"] +} diff --git "a/\320\2403212/zinchenko_408657/lab4/report.pdf" "b/\320\2403212/zinchenko_408657/lab4/report.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..4e4e8ad405b1a1457dc13d4a1ba4d7a56a48be56 GIT binary patch literal 192665 zcmce;1ymhPx91()L(q_52Mg{T+}$+<_u%dh0YZS_?(Q1g9fE5J?h+ulB)Ci;^1Sz* zXXcrEzi;kZb80URUA?P%*Y4`>wfgrzMWHAvPS4E1flToM_#h)Qvx1mFwuTnSyu8RD z5aU~SJ7W-|xUG#7WJ|@_(CMiHQq2UZ5jJo%hU^6~ipi;}3yadqnj0EBIGNixJE|Bv zn48cG+giP+mwIn(<7DpSPA>^*BW7b{``+Bf6vX)VdQoFXBV(KQ1~yKR9vwki%xpj` z$~sSR*s9u?1I>&<%dTls9$|E07(C z69>e=kY0c;IYAt3KntKb7l?zM9RzFu#tsJZ3#11a0FW0pAU!Nk`D0@R1`Fcg1ik9FRN!uIwNVCN2;g2gEob=jq9S@#_3->Ov;-zo)LOv5l#d8E^y^$n^Mg z?TN@4*g>|`7o-iw{kLe0OpUCfs?VQG32s0ZG8QTpe?7+)A zY&+GeU?%*gS}n+(s2161F(!#)%h z;sf>j?Stid=VKI}vCPX+eNOFZF+GjhHg(IgCh;AJti~S*nJR2SRqwu!v zySVDw!f)PhM9~s1t<}^>u9RGMDmlBMW%#Pfkv5E74el87?yB19EiVT|Kh&|h>wMi_ z5E6e)=ZTWj0`j0sKh5iXuH*_LXEmP0$Un|OX4u?b&OfxObM8-}exKZ)EsL9Rz;|cO z<7<%neU6azB6y&bV1hD$Uv|=Csx#U8+Na?Xmg`-SEJPb-XsqY11!z zb2^-X2maY@WN3O^gM90Yz~7#()d7@58C;$VA5DpHI==qKUVPravARQGbZtMySeXe}RW?Lqe?xT8w*XhaifL5X zV>ZhOcN$q?eN5!owWNw}@+(x)SkP}YLlBxTfk(=n!CA_kkWNpg*R!t753X_%YdW!H zLm$Zk`N3TN2x#bOEbBss&98M(IKS;`3LB7qgDQx99qG_o)zG5yYbB^9p24b_>hxXQ z*ouvh3WvSgO`clc??bGg&gaDT_|ij=`{!R%=0EPF9RD~Snb|m=Zdd;>?SP5-9}k89 z`3@`cw+T6|;jWFXRuAuY6cIC%P4|&O#W<`lDJ0}I;Ur$}W~3v2|<`@vQ)F0TDs4eY&nLc0h7CpqvR$V{7g^sONVwdhOrRce_gOV(Nzeki zyb&8ybuxb}*irgGJ+cl~OxwLHH9nM{`{DW3hihY-X|VkVW)Lx9E`m}(1b4afO`_xH z;Y9}AL@&QWkRqqn9I576*lu!T*I2+M8rM#Vw@c_1{i(pGF~V)`vY+UlOD_6YRb%Tv zd%mo*o_<-XBZH4L`!#SvaNIOsBhmdLqc=agKQlHKsG#nz zBEvm;NDtk>2Mwy8e6>!(u0z*>2c!*>++&`^6&>MUM75g(4^TFUy-YzBZOSm(zw}qw}^^qN7!nhugB~>InT#7vE#IwJPC&%Z&Ul1%#*d>_T z5gM_ZhvF1W-zdU(>%zXrU6WWhMhX)-D&K9ARram#wi8`_j2Vbb9=^IBHMrOA|7H8V zqF8bNfzDs4jm+*!$c>`O2*Dw7BxYRHMv46O4}LORV-(c*4?D%59Zi&5B~M-5+Mt+H zQ*jVQJE=fWJ?-1u&=I!t&C(2Hl{~gKX6;gkhG^nQc_`B1*9jemjedPfbF;b8`=w^x zXF2%@d2a=mvp*8$+>W$IE*23?+rWjmbcJ%ZjH{bcW5;hFGMi#}mhr4ATEv>CU{YG7 zuFXJ6;5lGwAI`jjCSEToHkT28QxMp10SzY2j|q`UNSZ{H@gRydI^i`MJiPn(A<$pJ zA(6gTk!z24rg|8ajMpJ)SsJUU>xB_7rC&p!+Bu8Dt`wFnLB3RNvU|v+^ouu1k+9tK z`7xF%VP_0=BuZ_9?}aqnd{k#`f+^7YHju03C#)naz+b!ai~DA zNv-Y9$@&?)2yr{93K`eQS9s)hDGC!yBq?m2VwK+;SzCE}k~wxdk95w1UQD?YKE>W}OsM^@*VjnA_AB`8mGvCNnaWCATgZ<*uO$9UWManY;K(66V3P0B1?iW+Xo#JLu2-s6Z=F zM7=6g&4eOB)SYy4@{!Zf(a^X~Rc~2EIHa69$S9{NTF!=P2QloKD_uhB7=357Y^4vv zu(*mv6Z>Ek4R`h=?F0yEhBxI@YC-yjvd|(XgiTD`FNQ`TeDFD?@YXtp(C7nwzr_&u z=b~kV`QtH3h9jC|tMP9h(Yw|pxchai&ZXNKWYTl!b3KHkVTXQXzmSsEeBZG3F8<_J z*Q12dYglY`rPduWaf|K9*3lPLySGMec_#nmCFx6tb$+OsySeA7c*MkdE}{ELel-ea zXUc8lt+KjE#WKe-y+me)Jcx6sL|12a$(McKb#A5H4jWHe?L&wu+C>ATG#LX2_@N5U zq04^gevtQ~Nbz|a?0!ngz9PWfcXOP6qmx5wQO;g5>Rsp(WHt(L zQsbw>mSpaYT#qA4NMT8L;Md1>0-uT*R7^*Q$DxuSf}dEF{acurm8Z zUzmjo-eR^SQ}|BOd%xK;^WZc(ruL?3Y5auUQO1eFae#~=zZ9l$YSk<#Z*z_kj7DPO z*)gt0UsxUCVp+kas1W$`viJK7Fop5-XlVqQ1lv`h+Jww;LRrzOxOJ(m)By>1i#4Hh z+*~lGZFtKej<=fjzKMT06I=qRt8UG!EMeBu*3V1#^QwvZ(iiAjD!I}p!~vMRc;yKOlJACDxX)ChnwakBX+ugC#szE$<_z&`!cNiE zyZV+Ev!v3a+fA9*cB6uHjTQH&x$HGUhVl@JBeS;R8Wo|nhzps?F{+EwnFm{qx8itN z1^9vnidmBAu-S75w3Sj+sW6A#h{G#bzc%_QWX5_4hItN7N4~lV4lni`m~eox-Q~OP zb__INJ#%lQ8rP>tQk~DSG30+?uy7$lgzm8f^YC=)H;!+zO*9IW&1rho zg+T*2!Bamq-CT*ozU&XDWrKta@xqtary48;mc_ih3ePeN8;;Ub#F)ijhLtjVDPLr7 zb@xfLCB#`IPWmZ~T7;hFoSgXrwn~`p=K8k(UjP6p=Ak z(DK;T5EC+GV)n4MD)!rqHm_YMq}CEOyHQ!UdJ(BvhrYf22GfFDRd>*S?@7F662;IJ zw<7q`f_4sz^uUNP%yAM)pS*cnnW6Kd8}F)1j4?}zbTfW{vV3Qp;!xRJ`HiVLeuO^v&c!wfHa{1-2EGjiP)e{*x$k!Gex33;FT0R=cGbTl6)M+Mb}w{ zubc~Ro(!9gcov+tUfnqqS~=9`>mx7;(v!u~GV8t=nGLlo)Y-zYrJHJ01z4N!r*H$6 zn2!Tx(@BN8K)Pr2vaN`uZVv^Q4Q4c4$n@Rg^%<2u6Rl8aVn_Iiw_nbS{p<4Z(3Ix% z4Y0y$n*0np1i}PG^vPXd*s1IexWf)PmqiR#byMEGwjlp4d?22fe&=GAX3oae9w_!YrfmDw z-)eaCKao31dY;@4)`bKr#q-pV$&uzVjmM;Brt8_z4;9ImD}7HaeJxs7GFSG@Q04<2 zUBYLy#UuQe9jv^PM1#RAJA`K{W*+{Xr5~fM6lca*FkDC&d_5fxh$b`UJ~Y#d3YPH- ziWT4Oxy~e&vW9*eYB28K>D!?QdD|`dV=S&HsyAut!J?&K6@}Nk7rZ69&-UT^p(LICf1Njq=d!B2xPay0hxHbvKwS0X$3{NLGpw{|8x|AsFVOGRhzGCSjfgOqD=V(cG3IBH!ER<#~&W@D5t zqh0^Rld;*yEyS>zl&-NrcbIH4qs0<#@{dS7@zN2gWaRr+^Y(9nGGYTf z>pyj|MSO(V(s&R(jR<6JDRnzJ#dB ztQ*0Wz`mrrkG0`XJ>SiceBDFik z@O#kJ$?LC{zL)qSRcj5TX2j-F9Zd#IY=L-_E=fmiY<)ruU}Vt&)ktcyPN!Z)M5u0 zgtkkOai_s%GqepiJP4K%Zq<#=`ptyIhf>qtVZ!GgcCcI4?x5n|?hk(#)DbS8IuZ86 zY$DWb;;kL5?VQ)q-fzEd-$C6gEfBPxTX%!cO5IyI!xHI9CePy`3-c(apvYA%aWNZ< zf`T1Q$NOX~(vvaI=9gbX<6yQ7&^cE&(M>zE6!a(Pe9oH4b~HrCJ?Tg(AGuziM%;0n z2hUj}_-vVd4HzaZDUp#WEg_Q*@ON(y{+NH%m5(v4YJ697@@*{(@gez2*)KiHV*k}5pnTc0wl)qqSiN? zs$yYn#+YjfjZgJipT2=C_tae_wO^j)sfS~{ELhhR>(dpnCS(>u9@lwW`Fo|Z3R&lo*J`WNUiB{ZfKf6_L(E2ZI&FBu6mQL>1Dnkqeml>$5-ptJ_k_Mk z@-Hwy=8zb7)_p_#jA)6qN3JCM$a`b(ubT`cB}xci(dNvAWtA zJwetMbXbB88#d3Evuor9kZWZ zn)TkNZtsi@PjBs2hf60NM0XXrf8rvosEoa#emAy$YI_uWGXAKP{K!|Z7P9mh!*XRD!x_PciYCtbq5XKkLnK@aO1HLW;BCGwB;<| z^9M$>e*VxZClEag8#`oM#K2C{*xc023B=9@ zhE%8k$mktFOE?*x_CtmMytp?8*b3w=>)#0$=l@~MPyPHS&`n8NRY*zxe}irSoN~4@ zaQMIGZd{N6{}=8C5S;%tYKYrEovFV?{Xf4IhV1w^G5pVihxquL1L)XO0caHjy|J+aAP6XI01$$pH#PtQLD1V1aC<^; z?CbzEdqQtu2r+v?Z(t?>pFN>BHV9*TLT~JxfIC3n0G!7O)I9+=4hX$_0&W~kK;08? zgY5kS+}MG-Kfvv&?g_YY0Fdkta03Hy@DFff1MuL#fExheo`4$|fL{>c2BB8Ke?T>W z#Q>1@7kUFQ7=)?;SpdfO2eYvQpz9B2V}($(zhO3@7l_{zT!Wy>KX46_$v<$70|?{~ zT;upd)_}k4Kz{$gH82Mxe-L8<2KEQ8u>qj-4_xD9`xjhe17iFG*PiNtYQO-*2e3`R zAZ-EO2^a+V0h|ypHUR2@A@mf;DJKZB0l|?#3kZ7zU>yJ%fej!H0J;Pi=#v3;PX@^v z`;#$qL9idhAb6A=2>s7_2Tm+tkTcE>+*ddO#0l&Lh$zsUjrniz@9B#A_x1A^{9|Y1 zg3QDJ2KI8KK=Q%S?(3-53%p7S{1XzCjV!)J(nI7*Dxu-7$9D470qW0) z184T1&bQGh`0v~VWM>Mv=RZ=q>2_*B%t>sXn*4-w%0ul-rEs zPuGeh;e?--L+>A?`0qNbXP4$U*)Imd_{h#?@D{O;y8A?G9%0eFb@Z&wVon<^(nEY> z^&ft#YbHdk-_kU_-?037{!WV~>dvQlR>-jhh)x*n7 z`l>^xu}6Z`r1oDw(`4F_^Ki4^f(?fyS>Wk=LdO?*g0X9$kysT}$Mus!rkCw-1`J*ZIZgV~$hHYt z-bt822yzdV3O&UAxRIat}5ArttGP}Tm&GMG|@W+z+NY&2VOx5(ea#ezTt7+-<&Z^HJHB2Nys3d-2 zl$2yri09QXv*Xx-rUUpx63WZ_r z_Iq1O+}2##cNc{!XS8(cyJFh9zP2{;o5sVL;PmCMn=igit;W9l6~mmjU$huD3DXD& zlPfH7Z^f=|zMP$-N1{dGFoXwViz6Vwe~s`yn+-FcGL=ndw(c9LO7*|%=bxXMbDqQ? zd1#%h3caop!kA<}=HhJKTHCFpqv)xhOG$-#u&Ahemz2yj-AyXasqygRta`!t{c`X_ z^u2hZn$TL()*J%Y)%P?xWUjcL5^; zBhpPyl`h_K&95%TneNwH!QIi`3}iPk(;g zmd!Ydo6%Q%Ie=>AJCwLkJ)L;r`ie5P7!H1(+BieFCJaq4UbuoWZB$GllK`1u3wDN2 zfl4o%oCwWm_1Upq0lvvQeiURX=r;vsW5_gAGAMFMPcy#S{&Pg!Q;s?e}%sMrnJDG;O|Hk%;Bp5j&ytCmfm1YrnVf;sQMe1}swLdA;$#`Tb9HWlj z3T3$CZ8>o&U48iL{C3eFDzGNl0@bmZZ|M25Ep|S5N;oN=!fOv()NXw@0awwovYa8? zsWdAafU2ks1G{o+Hv*g7uLGIINcPFvTzX?uuc9A@PZ-tbXimYQ^;!z38vLKm3f=gH zoCb`BYdmpq0})ge?){64Li&3l_?_|}ca z&0rP*_RQCZdkC=%3(Y0VES+yF5xrnFJ_Ihq^4qUUbXs%X!c#stSj#Rcanx}bb3`m8149$g9ZbG=ffm!l3 zNGrq5onX%KJ9mA`M%hss9Xd5F6V&v>($uLXIVw=%(%k{7S>)hX}}XU+U8qJ zUr<1cA?3ho=Sen{4DjaDF+xYmM{EWqh}F9$#uLzxp7WqRUVZkI()uP^%Zwk!+(nM6 zZ*b~Jem06M9D)0Nc+T^uM{{v;IE~}0LJ9N)vXRMDF7*Jf>HZ}3*VJ> z^udX7mC?>)I66v}susSf^3Z6>iRT{blP@)VNnO7Ynxw^HQO6sj`DKpcKCFD~t$GM8 zmxi(0DP6(7`k+szB`jGf;r^F^!vOhuB@V6!sP&Nj)6QkM!>3r4|5B=UKnT5k`OYLoEH}gV|U>^vGN|TifrdmfJWk2lS(WQ@Tjl>$Ae=D{>rQ zCl$FK1icD5L4*c5V{hFgCD{+frCVTz5;{3-Sj44lrjoeXg2K6P-Fg=iVlrFV{oXt5i&@tjZ#n zBi_eP-Y_uhNbJ??(Wg;|zF8JqLgaH%9fX8Np#F}~_}z<`Hk@jjJ3BRbBi8vz-J5G1 z2ABPnoR08EE15ZYBER3m?~%cQMAzQB&k9TO+Hwd4CTp-+wm(J&jdg>(>!ZSkRq^&3 z^}(frrb7ed+6~ec)?a40+0mg7vs75;MqfSRy#LT3f52E$L9(EE-m&}Rp&F_cy0GHx z^DiV2wD-oWZ#SG)m&@2%7n~h|lNMp~=Ar(Y%c*!*!zxK6hWkaCv*_T7R1?-v;AR?G zUyNo>lzW|9&yDOi;pCrA=^I(qsxFH8_G;rQha_3}SU=zig&*u~YQHO~DnMUnTWkB_ zdu#=h;iI=eZS$Wj8<(NAhAAt;^TpT1zTJ<{4Zuq}eNUyU6T@-JjSDa6eGdf2y<;i(~*#{wlR;Q_wigR~5P-bRB4w>&nZ2Orjdyy-O)0iSs$u z;8p7n2Dw<;EzZjOu2x?dSLs%@inc{;5Yr?EB%b*=z5+ zdP!Ox;Z)v&Fpz1xJ{usz%KL`HJ?mGxc9M^-tNp=qxpY(g?TgbvGF>G058P`k2@sy8 zmD{JpJk-+|mR=dnf)*_@#~0KFrQ`EW-;GEqghW4wEAb%U5l)gkCdi0&BuNMIb8e_z12nATlhw=vxM%&S zt?2R?zjYYHRha5f(Y|K$9%Gn&RYGfL*{p3vLa{B|gu_Tx9rqGxxNRrMTAP-HS!SjRG$R1pUnGM*k};hO_OQV-^oRK zZSi#zOuH-p){VC4GbKi8;%Z;@iwWQzh%#j}r$^<~4BF)xA-AicI8H(eP zIwQoHzOaw3C@m4DfuCW*SK%_##AC`6qoBOhyY)4RU@VGwc~m{IfyJg52FLmQ&Be2W z9ld%#3_IkIL#!UPcOIS5hTk5p(DaFREQT>Tp_*+!pCn^L>$bS%{<@XPvqbT)uL=K2 zb?u1oqN~-ipPgd{$x(!mW^acl2X{LvK~~dL7+ZOP;kaO7u2wqWCUMU$1+c`+Z;rEE)*b;FmiII8kIPcvN7wyIs3v2jG0Wq+gP-+$qRgg-6>=p^rx7 zxhNSJ7&v`5vYeqB#vJmp6&%rFRHemnV1L(c#_qIcy-pjDF?1~4oRbqqk=v*yH(aAn^|Ywgt8aLu)f-fgrUd#Q?4euv*W7KCxrf7&D?q{3SI5PaVa^#>- zm4y!|ekZu6Vw=#2^gI;gZCZBrA`Cas>8;loa=%J83+`3H#J0ERIzz4g{=TTMN)M{W z`839SaYj~iO=}WEE+IHZn)HNI$q@BtN*v`gH+-gEF5M1Tc5N5vnit;gLMr%o+T^#D z1-P(FcR8gMImzl*Iaw9H3`I&Ve3|4vt)_}A?Z1@YsoUvqnRwMz!^54CVzXxa(3h@D zH*9ltp9gVIzCW7Mqjzr>p1)U=K}6dKQb8;`%+#hVeq^c47UF8}VYV zlQ($1O`Qky>)tn2zOA#{ZdfsNCfqRWr8xr=Qu_5U@q?LXId`)$75cAO76QGq_{Zc4 zY)Cdve02p0q7X%{5v&Sb@1NtY%etYAc)1)n#*B9OO}vA3MRUF_o>`stsw7M?jX7whHy;$Tby(x0a$G zk|SZI$O+@r1_di@=|u8A7hh>XT=LsY>vJ}V`NmYqqlO=vg6=?@_m$Z*MA%1h%!ELG z>E1@NnyaGmom#r_y!W6>GlZWx{uFoms;Bqm;SPeSQjDMg#p-`HZASZ$h=@@?z3XWfRpFX*o^wl<_GX zmNrQ;rK&^MZ7FF>HR_Lg|G-wMs6J~;XPgCK%rM4uNd(j zozIY(Nc)4(H>(z2tVYK5rHA_a#V?Yv+7>T1Q4-2gz0rfNJoS;2nADx>E5Z*B zxiwv$A&8Erq00=Q25ML`51>o(Q1DsZC#1`rsCvy*D}Hg_qET4cYG|?>{9*?^C(_uh z_`-3i3Q0XpkU4l=opqRH1eukT2V(?VsZ7yO5*%GoO6*b!A{#3&a87J9{%SM(j1{2* zAp*rFfaB&7YUx8yp`?iiR{mz(Z~TUHsd#Z$(5>jZ!QGM!_(SyV;}OasxlWCe_;2Q) zYY$g)=1H*)9K~qKT*gfiD&j^mx(UNJ2*wZ?A03Jvxt;uM_PtvZ%G%-5h$K>sHqq96 zdysl%IA3-RCkhU&8o|2|Qds7?sJX4j7Ib6SEza$Q@TCp}SEp==Yn!$V4Gt!Runr6r zeTxJo-nO5`ZqfG=Jk-A>dB}kEa)ME8JG34M+|Znug26}-;bqo)!VzFCYK7i2S($7RTTM)_Q?__#k^M|5vVrYj=S+B+Sq_7bVW|`O z?9`mTTrHzi(T!?FK|8Hd8~0Vl>ugzNieaj3)Cd<2nyF$``j(ZqH$ASL>LYjcUfkoN zDR1A@X;8vwUyjuNa-%2tE{?z7BzPsf&am!BOIi5qE$$0UjoL}g&zUCdKgksJhtx?* zM2VodWbJ9Jh17rM*wo&?-f=U1#zvBLAS8H>dUmapO5GuNT$r+Ku%!h`Bnvlq$*P^C zCbjUc(uczq3zLSU&1{90O8odZ|J;6JymhY0O5=@rjLGC1vKB38#Yri}H)0;O352=f z?sM$)Uhgnkmm_uD^N@}nW7)cBMN+b?&0lK%QpgXT!%52bj2=Ur@%w%sQFmF$d5BP) zb~`3p3KrD)NG>7wy- zc=^4Q?;n-2HK& zdzPFZB5K{GTJ!KB0*~~55*xGCUC8O?1AH88PE|3SjwTv!;Fpd!TO6++@0`ro8g_oXeuW7J6H zno>%69h^c@FF+A;KZeC})?kw}_w0*1Vifd*+nio;_Wv9xY5bN(|BG^McvvH|uiiBq zbl|mx7N@p&+g0IHcsnI=U!3rfEXja$ioeD8XQ}u-$ujE$T6Qk+ZG((Kf{NoDQyLEF zCESas!8@#tZk%SRi^a64q6qBY4edKrvgXZiQ`%_ff{p_iPkDphk0x>}q;n?_Vds&N z)g>3hxd|oLRhx=TwZyKZL9P0y)v$h8JPmMH(=(%;L^)D;@Wk(RNeYQcD**+$v`A4_ z>os*^#AvQ*Ael@z`)vAh?&eRdSh! zI#SZzhdm}dE!O>r7$GYm7a2n2&1QQ%x$mZ6gE+3%?2Yy+Q$M(0g`&DwG?bvOhU1*> zQ`=S32z|@U=_MVYoGOw5IZpK^D>X8)Q)5UibC6#WL@qgUf9pnKjG$&@WME*7q<)Sb z8G=NqeX9}?gkpsrh5LF2IRQ=ow4RrzfjFona$V~8y!dGTcWo+zii_DIsbo=L8XIRS z8kb~Yy|m0-V<2$~(Hp*y!w^R~!LF*O3Ll9Nsm?hWxN78E;T!xdvA_2mJLE(!+*p0MYklbE-kb4{?I8ncHK`vD^)Xp?JJ$~Olj=5U`fpoT6*}&|Bk;q1 zv1&%6v|3Kfo0A>5S8bbOD~Pb2Q~UR0cl2%l08i}Zp- zPBsoHRt%n+K}8CC@HWu;YmjoRm zT)oGrwm~b&39|Um3@@b&`XzlLHv<1AdpJ{&G3DYmH#Jkl$y+C6kGuKw0mn+<>U>Rs z_;O@P#zL`Yrmo?zljJCIog<49V=EuIS8I)W%>2#k%f9HqsYFq?Zt7t%incuKcC6R-o95woW?zKr_iYqGcnB|GYFC<=s{D z5FtF@1T#5uzHne^+>H}ONV#8&wFjr}xmo#SAr5@J69&H4uqTt;g}L-E`0HH*=bXgc~|_a5&s~+7bN{owsc6 zzy#9}>o`J-*9xaXhm82F842e|$I?vAO+Ty|OLkf@jEKvo%wb8IQHU1@8U{o^HX?09 z)e6(2Vtx4Nuvi){S!vaZI*_{`={J~Il_{wAdM6HQ#0D<4>2dCk^*!d?YEE}PH2=?I z%HLYuf#!4rY!Z4M!(S`>6Bi<95-?8T!p5(TJ;FA-Ioi{p3i2>dz*VkRFZ}M~NO*O6 zDi3lM(Cxb3gVywYQyWK({DYr~&!orXz_aDJ9^ct-J-SdM^M8>4q3`N9?{-kMIG?M< zQ}v}w4~B~>yRT9joNw{{gT?zIDEYV}$xvk_^V+wRMwXL&$h!U(7cLA=@2@|{@#2su zofneBz`&Typ@mPt*pJ6458ugS>gNX8|Z;TW50mCw(U(sqYDYOGq| zeWO|ESn`H1+gm&ZyG&htk{jS^IbC}X-NNY;ztbI_-`@7{UWzmZzB`sQaMG*ZR=-f0)JXMEp10>ZM~B!+?b*qTZ$dTo7?RBdn41>nT=R zL>0myVoYI*wb*L`XTQV?=flShNv6BtFQ4NA1>RD2rV_Ff{O~@7qg=#%(RKRFdW69_ z_f5K@Ii6>da+7QYNI(N|-fryn#M&ih=7okIOy*^B=5?v}r|dT5E+d|14G&?#hM%w{ z&yUaxHIg;lC7GClrLLgNwmVH4qo=)pquTM`lPx-b6020xx8(deW9|7W6c)u=m7p@F z>6yoPP^wxt^-pEjvIp8jjLJ%c5xB9e_fCfJA{m{D*P9cGugaMBKjy_K(@I&iTus%E z;^rq;Pgv2NIT+McA^XlXlHJzvSFduOU={wl#d7W3WpIJdvGXt#o?BSPSF4$2Kuc%O zL~(_}JtlR#f6)n#Akc!?FM6F%5rk3fm)5;!!Hw{!wcet&F4NLrbNgNd?W#yp#gK|J z(`$9(R?Fu1?6p9~qx~hw$!-p|=6~!d}t7?;9vGtnQ;uS+;+C()FL~z2iR7uiUV@#>Mq%sA z>Gv*hzP=81ckHcFm|Fs`PBG=Lk-f8JCHS*0(HU6tFum%sP8tda6_qkC?W8!&x81Xye|qA;f73q!+LV7DF9Zz#2LXnp;pz9! z|CSKR$O*|RtI^6EyNbxk8912%%MI9C{@==;06EG($e#YU6|PjQyi|0z(8!Pm2sdy8g4s02`$4&msd%z*qo@4I4}A;P_{m0mw28f0h}54EtaDCm=(BFOUvE zoAgKj^pv%yWd@%7o|YMaMEyqz1yOzh5+gtY1?lgP{t3+Suf+u*eh~c=kXp!IKu83n z7tk>Q3a2MQ)4$YAke(rGCNPMLiRJIAqJLgefb&U{_}@_#MQ%V;MZl5**%UXOy%Dj` z%5gEtMK>lwQ)Wh98TN>hhE@|m))e5v-;<=%Q|0=d(NL(D+5hz&wrSH^2laJ~^W?h_ z?T@yF4i~?$aimfQTip|tB`1ydUn;*7Qy%{GF=#icFr0>OYp@)ry7apEJ>?g3e(YT$ za;yDD-=Sqw>YUVY^lA{pBkb1l#ELm8caWnbJR=uY`X1kGeZeN0jRwX*MiL33;q#)a(1 zR?xW;l1Bb@{0L7~?p783aO!tbB(PF4%K5(8`Ej8vX8-G>+!+c3k=09WXV=WSH z{iviONu3N#jr6n9v^M46Rs)u08R17)QJ3DRJbE#{g+p;)RJrnxER4($H1Q4j%}fXC zu>I?^_{_|MRl-7rP@8ZD;KV@Bk%fp5mz!)Q(KxU_P?;e)2q~6};`v)xIAS0UdAVg3 z{fag!LM_w!g<=&EP$s}9!;lLSM=LMS6^xb14lGAyb}J-7j3>}cnCK2bayQD+l&RhD z!S*;AZzVBQg%u$ef4?lj-Lc4zssGNLP4po3c7VUnbGIb4cP40GekMeIAa%rtN!N3% zzf^AXR9=7aG$Z>Vi?F%qa<|Vo(q_)4)l-9WrOk#nLy0}z)0bt@tJQ>o_}HUf!p1Tp zmXG5`|L1M4z@U_t>Rw*zeh-0`xA>Iy#igP~oJZVs5=vPM3fQ~%5lUFnZ1bODNG0?WEJ;Et{w{Nr!`AmEG%gQZDtan>1AL(^1&jK zAZa1Kh>1d|#^@#j9o)9VQ7Kw*EG$&1YArN7m2G~ra6U+rVdOqW3Ohf&9J@R1-f?Vd z;<{Yf;oad~{o%J>Z5W6W(BXbcaZMY6DIQoTj?_9O>Q7bGK+Znoxsx66u);4z8giM@I6$Rj5qFsaUMW^mTB*X6 zIz0Ba+KXe#|0W~okrM|!Dn9Kb4_X`U;Xv*NhLy78x6}NV*Vme@MeDE- z1WoM#9ZzlBFJ{IbOt#I}O%#>72KgY|7=Z!b6GmDUwR;2AoR*f`5fOaesGzR_KAamE zV`NZ~zxZxiB#u2kxh>3l&TaQE5ve#3ZI9Tu-;7RdF7S(!~jQ@6pl;#I^D!2XiS>l|NO+} z{QIx(PE%42djkZ)#{)Ep8eefkm`CGGgnhsxZlR4Y;q@Dv8(MN(ayu;W9^j3F)+3`T zqJ`kURsW*NEr6xdr(u4ZW1copTNK`;4KDibF5Qd%{!RF&Id21W0!cmsOuV!W1^EV^ z=V>FN0&iGNtDCphP_lnwR54dEN1rjd5xJoDSa11d;`NM&G2>n+Riu5*TxK~xuc?+k zD|P!mZlg*;5pOJA>MwDucdFM;qn1G9Muakp3)6n4Y44b@Ubk`k_1SYD*ztZS6(3F# zUbYC6c42`;aS15RJ6c7}J(Ys_GL8TYdT~Zxd1olB4j4D@J#?SKoKM29pXbPD5qH7p zI-xR6k*Jl@PneS+JQX5t|ooW@(=;cC#hv-#j?fH(jT~s1nJPl_pIe(|@eKHF6 z#<$J6aM&Q>(s`Xu|E{1&R5QQg8M2T$L(wyQY>jZ|>6eGggZQHhO-nMPqwr$(CZQC}s=d0bF*_qj`Mb-Y7s-%+CNuA`R z-sgROa33R^NKPDNd$VGjP;9w1d2X9LrdGiawdGO}a%W2B$~5z5Vt5>5$!vY{qae!U zi*YMV%Fp=ESJyKYC%Lf044i>W`w(&JU>&`@XQ%v$tbI2;0HXmgQ&)Lh9=GK;T-bt5 z4^I!?J0?(dHwP7vP%;6XB+T-OiK*t2HoMJD&5d`bq^B)x_;6Y2SX5z3ByrqjOcfJ- z5XK34lRP_Xyg;E}ib3qE<9~#${i)!tigXQ7jN+ll@NAik!=>^|^4$7)_(WvX1QQYFe-;s?vu-Ev-uDlpr90&;Xzn79fukqefDn$TqIcm zIL0}^VI*alHIy3o@+MZy7sm&IeE8r!SuYKHIhpCO0Hu7yn2^;Vq1zG2L>Iv-)D4mB zxlb(`y+6BGT1lM;W@cw1>uL8bIU*abx>rE0FJ&nuCCbb1CF@-;BOc3h8g9#dv=5TV zC+u5s5W^k5OYVvsB+^cdRzClIYQt&@0XD@X0RHxZKH;3rb?yJzqdgP?&r#P#J@tj% z^*?Yn$r-C;^~b3j5bGjuLyskq@FsoBy5s{3Fgf|^78B%u6e$)_F9o6&s~UH&_ZpX! zv@C_}88ULwbV5;RVBNJJd24%c$V%A*X~(cLrhLKZiu>b%@bwae1-3)_6aaKzK|_Hz z1E77>Iiz1&JJaKGW8-VwK>&NpWxBVeSpDkN9%@LBLCrObiqRO{>v#LmPaA*IP}7h6 z2o71Tq-B+D^J8%Ox#+8-YYFftHuhn(dilID$R-458@&z&oMlueXzCOh#j@I~$!B1< zeJra);3>#m8(zKM^&jPs#gk>%!G@pB*4jc}w*a#oto?BRWk{Q6XhLD2#E8KazwKWF zVsQO2e@pn$l)LEO__|ep%Nv+37eJ0Y2?%&R=^qEGuMVi4LDv%<`O_qk!SBwp#!irQ zxrBT!cAZQl-1Ar|+mPIeZ7yTTt2n7XHmFrjk&F*Y4RM?-Fi^K#6^jSCVL!SYZ8%u; zCOWXAVU!E9vD*ZxjgTuZ!ovCSCKYA_UGZtfLO}+JGC3v(P7F=X%(Q`f#cI_vf$6fk zu@{h@(;jt?KgU^T=_y-qn~|^kw;nbzW)V%o?M19{0mW(sD>A|`Z%s9VQyG-sP@0)% z>+xSFhg1Ddd)|I=8q#^eR7h#9L9wabV!BecOoqO`WX-ezr4o5$@?VhTQ%C>UiP?$Z zP_Va`-<(t_pW-V^ry80#KQ?ZAPHAgz$nGeO5QF(E)jZW`Mx}$PP711w6og3xi@drG zeWlPQ-D0Eh6shII^HnCi@G!P*1GVwntZ6OGLW_JZZd#D{`3$DYL@#j@{|q&;obpEz zP0gA0oBoWgy0oPN>uy7z{SuxJrawKPDCBdVL zFJD{37vC{tt0sKGN|S94)*Azuvucz(tAS8(G`sKk9wemjrXTew33A8+yd zxREQevAcJqwr=+z%?RKkwoFDVIXyiw@$dJvEox(Xb#WR}<1_uih5C{4fL}#RkMFV% zNH7oC98RuU>iOUM8Ww^K>7v<`d4opI71YS{4N=jV0RXrfj;MFm$^dSi=pAtU{M-*| zQP1C*dBc{UY@Dr{g#-w+1=RZ z^62B$;Cw5gWds7sN-R6C7n%{fu9}vb5ioO&OO+FgVy`H$P2?i&RQ+wIu-ai?+TgRN z9IxGJwnSg*zPojV&m~kNricCn7{@7Jl7od*^I$0~3Ze z+rKR?`40E}r|2K-tpKb6Jez+@>Eae_BsXUQ4*gRzYa65TT?~Tiq1?JNZR0Ed9OrJY zs&n|C+t5EHiByyo{;26H((3baoe4YaJZUr?XoEa4Iok~hr{<=AV0lB-fP7+T$kp$5 zdRbpyuCATsH9Q@OBn0U>T3MGx#`>w0%ylKVa=X^h-mhV_1j${>8ofp{OD(bYoXCAtaj!wsAIpeO@FnNP<5Fpf)r|1|}c07^`fPiBgs~ucl^6$EX@8y?$W19By2%xN?H7 z!sZ_2fCt`RJdvMgeQnGLzr_H*6tkIR%Y{F+w#;mVPGmvUKBMBYQo)%Ermx2dCm^|D zY2I-z8owik(JQ`W>>CRl+v?K90~9i^i}%K33igINZGuzH%tcjMh{-9|zI*WH$X!}B z9fFN~-W3I`;cvu5aj2Xl!BvBvvGBYnuzwE0T@!DvY!yTpFEh+mgd5I4Br190aS1W1fBFx&r;}ehabOE{o^cvcl!^SXocuD4Pc4MsRc+b^bFxnyDTR35e#d6IvoUK#N;i8&;8T&6Gn zX@k=XF7Jjtba(JV{aUD@*gyU2cOv~{yrQzvQr5&}CH2d8^U?{MN%NGA`$;+2Cz(2N zpQhDeKSbmaO_Oz5=tpU#Wl?1aDj+Wvc@V#KA}a|$wNKB*I6_~TL5}IWP>fsy@92|R zI~_{vS=l*gDJ%ZGbT#=X@*b_Q<66>Wk1gJrOJKxQ4S43`CW@T1LBVRE`=oTH!#k)) z#iuWme^8mOQ^+f{oxNdTKAP=o;&O^~TJ!2bC{I)dmk#%fZsv6?2y&IZRdue#r-rX+ z#*R@zrM$_=fCgUO^gE?Agh*o8hRjIm3YqU_Xf+sjgDXGHcZ$y?NG|$>qTp@kpISmQ zw84CTae!9)1EKmI%#%2zCDr7`BA0&9ZZQlh5&Ft-#7O!7Ehh6bxBH_LQtc(=15&K;2vtBmF{`a=<)nBBQlj~U>8>+#v(p_HkH6uopP^FX zWP>22g{Xj33IilHPc0gl=&h44Yg%m4n3FMGQ*5P-QY@zTfNzWWt{M_u z0Dh3=EwP2UaLV1lh}tFXSxDKHH8qAJgA40bUtUk%h8hl=Q?Q>;ww?BB)CQX)=(TNy zf(9dFl7v7ywj=0-Te6ul!aPyVW~Pa<3MIZYL;MjJP0qbXx6XWGq+6PMuwm{M)vLW`|)3?}a zT+u@?!%yHVBRoYi=xmRGE!?)XG>&YJZ2!u4sq(k&S#mQ~coSM)lQYgN7Zz7Fq&CGmPXC}urGUF zhes^1y`J^N!USZB_Hylga3|DF`Gi^)knV$rTiaWP?8Y)+u*4pjM(C3Xk? zjZpKNzvF<=u^-Ta$gzerP3#N*_w(^I^%TvG?Jsp&V)Jlu^R$u&kgDXmSP;j?;OMRT zyeirTAZ>un=5v+}o;xr0gpv_5vLBc{l|ihxX6eNAm|;op2;heN#f0HIP~j7XGrpaaboKq(W`%_ zAuoa-E_?ui#o(`n2*shkltj$$7J#5ay-TqwDP5&(m~%b4pOIj)S>ctuW=V_e$TDSX z!63IJ#%qB^E1RXPDN2be&y$f%vOfa*@b#>OInxQI^I;fJ*I_s(H1e-?Ke@IB%-8fh z9Vg*mCG1sY&;;`4+9>Yv*W~)n-9N&iz$}R*(#X%pSQUlSjZmZ1y^G47{k8_ zeWuo!*p)f{)~3lzLTU-p@Pnk+W4!4}1SF@!pofrv2WN`z+IDe$YupwVjV*VpjvcKu zaTDLo?|E@~aqVVo&^N|X!_cCf0#~48*i3*Ym9Ij9UTRZs(&@%% z0e}`MU0W(9loj;s!l~P9($l~`W})$pQUks=VYOuu%z-}ed*JLbIRC`)Yl1HdQ9s3a zlZ0OXWrm)5{O!BP%Q=-4!qr9MgQ^B_O*%V7CG{VJJOB&>wyqj76gJs~iagT*?+I1E z!=rUZ@EabZWxamnl?|$sP&NjB!G4E_`EuD$&J^dAWq35=bnc^B$jTNp%86ZY+Oh73 zV!84+x#OOG8)h`wQ$$O47G)Y)B^(zJ*OiJzq=YXV-S>^zzaYlOetL$XaU8eE56@@^ zwJ-)3X&ORUhMkF-LLdeeJ-G_X><7xnluJf8ZyT__6g~>^0^G(7+SuN`^51oz6Kkn1 z18u1^I+|*IJRmx^ zao+6X->LoagMU6AG%+5u;>Kp2=>T!~6MgZ8YF^W8;=2~FnYZ9SSNo1fpd2GM=54%l z5+V)@|It!IQX8^^%7M=gu1GgK&lQ10m5Y9F1oU*j0LG_8iHSEOzYZxPK9s{4lgPRZ>$nIL52KQ?>b#n62}69_#$T)7u;9&gGL(pI zxLdK)wm&fF_DL6pJ0#Vs6Z)PG%;=;zknjgabi~oAtxqUDUoOjJ%=aJND$N?U7aiEu zI%-eIYp*baXV0ac5uXvC?PMQRP%&Q4VzqxL>XhZM>m*+q8=Yr;Hvs(Lt(#~e}dQUXyA2RZW(_<^g5{Kq7= zDn(fP1ij|tkrCybIV&z4ni2{D%2W^vQ6L*fGh%8{1F;oJfzFPOXMC>>9GCPD?y&_E zWxV&_Q_{FxiS0G@e-|e>gf?%Af4qC`^v&SOWk!xTucn0u`CXhn2XqQomEcPn%G)pI z^S-S*rFTi$>eG4@+ksgCrkZl9!51bOFH@A?Q!p)OJ_CVH;+xVlWn_$FcM*<&Q#FrS`X8PCh!gPQXZHV7>_;qA zuOc1w{`;Cn4^9t$7FQU9A&0;YBLg1yl z*98vPbQiD{oUYL?lC?kldPD(h9?nLBA(J(lMl8vu&ArULw!sEN3h(*0p4l*dN0h0? zasf%-QA6By}{Z3^~E$S3X-`z!yWcK!U=Kuzr4L$MtB4?!l9_f znZ%CHEX_n^qjNJdIu1v3ebYKQE9(5uYGD6Qoj3od48ebcdHnCzng7*xLr?cx)TU;n z`_)%4(Xp}q7k$ZZO`4g7?*AJ0p!?5x{&(BWulC|Utipe_-LNtK2YmRC?dE?1d;AZw zn_pkY|2x=2P)I{eP?A#UpSiw@lcK)0gS3sc&40P}|Ls7D-^%{~NO=4f_y0Sw&3_L2 ze?oZtN7w&fsg(cI8~y){@c0E6{yU$|@1>P&M8$=E(**u&?#6!^y#HiOu>JB2bPP0f z%yj?9e1iXs&3_$<|4rFI_x~}UAZg5cgAPgff*)Psh64s|EnMKz+{%|Z1Jwn|59CsKQ_`aZ;qv!hjw zdC1lA>Go9XY}}!#N7-rxsS8u7Tifcw{I+VN{S{5p<@!x`V!liDNp;{b@4gNqPPM}^GxZR(dX{xS`K7DiLPbAX0oggmAak`h%W3UEmuK8lRW-GU%=2pS6EgI=9N zz>p}ogjzD08Ueyktx&Dn8Zig;HN1t!<`cxfvtLbfICn#RPGM6mT3KKIT7yviK$_Sy zu*BwA$}Y}cc4!9~JG~l$%%oV97yUlz^`Ybt>@*VZ6h+x3vk|#>I=7^F#h#S7g^>R&Le%j1viE!LZEO)}f;qSHy z-ozo(SZo~aaoFT&3I4>W$)KO71_yB*TWlYQjK!#lAPA)mpMjj*1}4&?bCCZ+wY=>* z7O)9I-fkm0#PnYmHwT2Mcvh1DglXdNu4epzCfoJD#6~M*n^!ELf%*N%2$(9GKU z3({Y1CMbq0Z=B3pi+lc=)&u3vIjr6rjSH2xh}{&^I~)n_>z{y1ij~R#lehOT6ZGG{ z(Eis+LjMaJ{b!o|&%`GGZCb~chnpUf^72iWlljGYRr^AgjEQWzOenq)A-KLIB3>nd zzg|DhUn5XqB_WVla7~~-K*RvDIQhUxp!{GwG`hdB!tlf#^`p71zVL1^cmgN)GRiJ+ zUzsmnKHV>;N-OiqF6SDfyQ9hq_s}V`@;5C={fsz?)7kg)ftz{>- zt>`sf-?zVLje`h|YciZ`c5GsH0tuHA)fUOC$2$5aw+Dhw>;+qPtRrZ4OB&Nx9VvH2 zeqG38v}?E5`s5w#8*kjm-rLLi+ha&}CUN6!SfG)f2a)rz-~y?T&XhO!%mr9p%v3u2 zM_ofguqVG*h_fq?$#Maru@gt5ECJC4vOpo2f@t))CbSpI3u0XqM}49uUn^%0M?J33 z$>YcQseF58cf?3WC~gmGLQWY_h$#%t(m_LzCzcL1>BST2#2zOD=yR;>n7%zmOm{(> z@65ccI2LzE74=UQYUxPB*DE*dd0y=B?Aal5JF;eGh}Sd`B-^G#K;04S8=~v4dliY- zVwBQ|1jm9+kispyLoE2w`au9OC9MpLwfD`Tik?#zkaxW&cV zeEodIALJP**Qg!338Ul2dGnO{Bg>mDYqsJer*Dbv^mLAH*}Srv?P@26k7I7)ieB?_ zUiMS`)UJKIue(#XVK^ciuANtX>!^_@bDHSSkuyl~D&9|dnuZXzCg@tuo+O6dq=bS} zkW$2wZ7D-~K6aciWrp9(mccrW!Wu^Uy#}}U6Ra$jjLFMOL9)lVy4<;;`w&#hNE$}e z&Eqeb zD6|dSS$Op~+a5^^OEik6Q_&6`sr)K3oJbNRg-Y@*d{9w`1R4mHYyW-RfHuLsX>P~V zVUJ3oLu=Ibs5p;;b@oS^L6AQ{}nr4V2n(+(Jy>nh(p~yb2>>VY+ntjWIpUB z7wRO0{GN4yP25qHXXzMVv6#F=@HgXIBDIzQ}lHTg#K{Pcq==3*eIuI#bR zSLS?;?i+A1ESzKPQ5a$nUdPxjaqKCXq8%3_-_qI8231z5nr}f!Bv^OhIS8^8?5Uob zm37MEVU;0ki!6Mr*gpI9?>atU5bi95m%&Q)v+|H=&&T)ZAcgxsv$1$&%H%{U?KOKf zrSTB1QJ8wkOH$`oe)p>e#gYt}Y<6U{1^dPX9ySs}JNOt{A*zN12F0!}ib=he=f52d znyJ=EfF5$RC3DN)^&CV*AR~QiN}Q}^mQUyPNfoL!ov#y5lBhMhAr2)x793vfXAO!M zYowQy&e>iPif|MKW*&jg9KcWAXdg{+AGNAuV1pn@$?m@?F`)!;SLb8H$54y7&+hlB z(ha;hs>Bq^R&_+l!|U^67*k3MmOT3f+)6oCaOgsyWdWAY@=7gYC)nyi?XN>wIp-hl z)Z->M``Ixj1Dnq;pATviC7-JcvQ(iq1!H~$4DdQAIt2JcTd2nHMwE*Pm{zeC$ZMv2 zJBZ31LwVVk^QSlSsd;ar<_}9WY(mnsizp|N4eSD(ilh|86DTRjCW4{sqarcc4xgWQ z7|TKlK`Cm2Zjw(62g{Zm<5AQlTXN5wwKLhFY9IzAS6N%=5FkV4%{^6 z4jVCFLb;WKVw}3EeL#QV{#ZU0g9OcUD|7zL)hFV1xLv+J6gKq;WvYUm?Lwj|na5iQYl!I7 zhC)N262J%GrB@B_NInPzv(!L!EYnKJN9LzXai>!?a2T1~hmrp7L#+dLN~de-B<3i; z_Hp%W<3*N9gst4bs69ex`~?;##EpV)aD)l=>Wb+qgvH_wbz&;UW9s!5KBOQnb4&bviPS zt%Psbuwoj%v+5u=T?InHYUv_Y`kY06zQXvHHHtG$Knkn(g;_WIWNV4`PW0YOFN{qvTPKS z47yq3zw^bHMs-VD1ry}8!xPs%y=)=v*X<~Sb}N^XIKl8yw`84l*m6~ z^edYr%7;e%F{osY)o`D+9aYD?k6tm73uMW&MkoTq&kPuB@1RiW`^ae9aLgEo9#;2h zh^}-_F*bMcmO^BrItvHOk!rAAbxqu2KShU;4=-+ooC>Vy)@_lZzF4+8N~G?2hZqlz zPNjEvovnXgvY7c+dQ*EVKvtcuCik&jib7RwBUGvCk>`LtDI|HP*i?vW9yLy z;EOQczGhJNy2bJMxYD0Li}mFBBI9G-!tUS!M9O!<%RNi)L?e3_<%`W@o0S@}Ran*7 z%)|R~mBtM?{i~Q&c(R6d$FYJ`|ow;+M{ z2>SItLYNE|h7uLzZSX&8-4+l1{kR)i9O`OwUDc5y5b-}Rhr0sKXkmk}m%RakD&~$E z1s1Dr*CvgmfP`r)s021hdpAY}ukAowVfhM)rKO}_uk6Ku@_3&AIQkHQ(yg>#aMf71 zFJBfG4=mxe0YX;6rFRlyDX9f?Oi7ozb&OMnCIL&(*aOCZd)Ks_4OF#Nl1w=>%$rlI zXd;F(Yl2h5hU7@DTGTNFEX$W7>G|p>p1YHE@G(X&^m5OaQzNdQb6oMai?axbFHK7v z6KOM5aaGyZNH(@eTG;#I^{z}WEG{f)87K=z$qFMfjq(6_r{>i3NuX?YJUl%=kO^00 zdVGv*oOirAe4n>vNvGB(tQ|4fY`0EDymNi1r9KForS6UfT?qxGRoMGa9W~wXQ9?Ud z{1@F}M6l|Y*SGIP+6S^!!lN;+A6MNFa1JiZ5eRDvBtiNm;ncp7bRQ%5BgGwn`H4%o zy8;;UFiJmz8O9zhXOaejXENyxR>!lqytlZVie_5u&yRIGmQbrZ>%5f%J(eO^RZx;^ z*gcB&=k7-+d^kE-=x~M5y=nFv!V+KC$4c42or1LjFk&YNO-_7A`L{IdmNcjCTjYfwXxizm% zYt@K9$$UMziKh9OY52LpUI$8nMf(*mtev~UwLMf#&EwiISrdYUeq!M4A0qUwjYPdl z0e{*D7AmNo9)V}k-E9uf`#i}B4_>~VKv$VGA{mOR9MOv)1}@H-;=S+YrrxQ=`d0z747F=dJTMT_t_naCkm(V|p~!8bcT#WV31!UZKeBC< zo=qiJ_?Vq909A9Zd~=dEm_{oj#gO|_4*t0+L-Db4CquajG`=40MGuJat~=OvJJ{is zsHjoAJ4%k3;pr&1XMX86JSJfYoAz>3ny}A1n~+_;J`UHQ;cYOQvrm*qJeL}LjTJk7 z^)yB_p>H?H|M!QKy!y9>_gQ*MH-v^gz$s3?HNq*8_0d0W>6zBDt+K=-K|d@ccGwLz zH?N9-eb=>4U?Cu`Gy7S@jI6T89K{XXNk&KP#i4Lfcuhx6J=BM87MqSN{bW{Te^oYY zz$mac@KGKznZs&t(sM+a!HcfId9=q3%hhz4zG*SABZH0J9X8|D;q~zm@_2Jn7g&?i zW7aaFn3KfZZK}^<5~kj;dt_zjx0(I4cg3H*F_Lo1A}mUT(W`@jU``eRL)`#WziE2$ z-3NDv(8%f@Yoy$gB+C1jn|S$&i*?FL z430RbeAsy7LhatnIU9dWL(U%fBV(A*N2O;~YeEI_%_vY%H3sY*tMTb+5qumQH5>cE zsa^ZqIC5}Z&8MnQ+xD=nWq^g%AM-OAev1G{WOkelu-F|w%u|ST6QB`@8ZCHi)@~|P zw=U>Pe)#Qxr+P8_9@;P=cVKxihmZiue#&rxZgY<*t+Ucyabi)WpaO|TN}V7U)8|yi z%MH|Bgef$IY8(q@CvI;r-gbuY{Vt94WNG{MIRK!)2!K#mY>%L{g$){__m zTQ+gnc}aTS6ODpZOiHGUyaPh>Lyfjmv;mvH{}fNW1>b;81W&R(E(c(fb1w^A7|aF- zU0>$G*rt|Ta;-%+DhdcyxecdK8cB(cofR=&lRQSabunJrPMV$J^@?^>bEA{TZ}(9U z`Js9UUDvj(w^*dE0|Q%c@_Rrd5!RGp@{(1Q(nmwK4c0uA2*)&cs`w88={^e(6UDAe&o%f&-B*2(rP5AtkwcaIqvu zPAW#d+JXFJl}IMAvT%9s1*}Thw+u}{Vlh4-9~bO1DIuV&FtWk$R&5#AT#;x{M4MP4 zH*oFgF$_dNDo{DtLBEiUMInpTjFrW(@sKU*ch@s^Qx=`Rl+QHPiOB-_^0lm)uU+VNG{6$FzGv0N+Iv zf9{feGRKa6CyI($flb`XtAq`(zojF95h8&-^%)E~D^C@*^WrOLEOhEwRxK{T>T+$J z;4u@pX=F4(P%K;d)GKW5#13=^c$w0`77NC;4tAS`<6H6BjP#okZpU7Zr~UaQEUEI+ zq?_~lh)3z$X05yaK}c3dA{T>qJn3&}k4yS@QvAK!PWHsflsngQmWJ+E-;cziy*5i~ z%wEo{8|(7T_3gF0h4P@ci(uk(y9eRV^)n`8YlpWBD`IXBs4`LipXA?vQ(YZ}`b0?C zvUJjG9 zPSGqZh8=`;TZ7Ba#8uj182=E4H=aWzX**Fwz8Zb0bucj&| z+8!z;A6_1JS5Qy+r(z(^)Vygdp^mdjx-|~V!416eo)+f;LJ!T3p^s6=Jen;eshFT%`gpNm%Vy>&m__hu|~r+hR%>c3c< zXy@kc!*xFM3u7w}Px7NeiKb0ZfpMz z9DS2%xwIr(wTUun9hghDz?i~J*bARN=ork@M29D>ssPbp?Rm}8gC=Wq`DmWM;SBFv zYv9{XbWMTd<+Sw+`XFY$&GJk>5%!dM29S-V%Uc#%m#x#hR#hZ}Vt^vQVx6skaF7iF z-XSqxdRNQr$Zw!9GIK@4Z=;2tk#2JwE7 zi(Gb^@sQkY_+!-Tk>{G{i01%}Avk((n9MK|a}=cAZvz1H6}lh9E})TrTW>YjlFpiN zwWt&I^cTZYPHAcpV`^Ca#2x* zcf0ddNlvxS5zPq{M&g3qE`T*RLiWHV*hgydoaNw7qxmzDX5i2$=^4X2YP&DZ!jglSf;LR?}T4rUj&()Z&oiwx{n2kDy}Rk^{!jT~9!s0zI7*Uy1Arq-1fm z@kDL|rd*aN3{;3j8-_<95}H?VbscUh!_U*f=6QZm)8?N54DV^*c5nAU5!1!xgSG>A zOIFiUXvraBqqNBYA%3E8>qNiwj%!zzTVLq{(NFo4iRl82zg+z~xriF)Xv@wZg3wg6 zCqYjvIl{RUZk7?ZnWGkeJKiFB*e&Hlq^|xzHfOJfNA0dRHt%u4*SrZ>4)Cq-YQ(U} zCeCDly`Lcvh=UTx@_~d$t6`Z3d1ssuOj@FkNt?O>f+`QZFE$>YYFWa3q~Vr*7$TjW zM-b1IPhrS|%Vd48=UeHQk4f}jq8DG*LeW#UH+@s|rWVh`|BH2f`j;7F z-w-P}m1vSu?u_)06I|0940S(!$rtztcw*Lfs+Mo3G55#b`aljh*WGTbG^aCHkG1yM zyGaVtl5F~i&W@sz8Vr3{NcP8RNFYl{1BX(jXR-N$;)2PH#m4j2>gvMHqzAEY*HCH8 znOXqi*k4_QWp29HRv`M(Aa>MhsSaB=jR<~df0VP*-WTF7BJSoh=A9onXJ;aNji=#! zcy@H7Y*aSd5i=(YZXCDpmwBB=Jz9@PQLPbo0G%G?sO1*$k$W-QEPRxvYr6!AAvrT$ z5y~W1LrW1CsnALAK?H0HBcWnUu|{rcnp%KdNd`IWIpVaB4Gw_KCcIq!puz~&uz6AM zb)CEU;~ekTjeTJYb>8=DR#p^Rod=ALY43l)n|sL(4=UeQ?5uH48O%R%`_iC0>fiB% zkFHO12V{&^Rt9*{hz<_ArnAdO65rB65FlHdjM9J(Hl2*QJ5V?+e{NkT{%n>fi?(%r zlQLD%mYTh_ljOp3Hfz_kc+IZt>?%j5{+a;gH_(lg{0fgMd=4Q*3>I7c>37Hs5rRDd z(P4{C$tb%UQYAPj&De4wzad@5t$z-V?y$cSSsMJuBM|?OPSv>mje8bdY6eYJZh(%Zu_4ma=Z$OE8O)@WffC8%EyK8K)8ja zg}VcekMD`h%>c&cCu;p5=4>SG)$qV*CY=h{GecBJNdUZxbbr!|{RFqO?q#2^!sjC! z1#KL4wPxMCYeI~j#&Ov915mHg*J%0+1k5JF9>c}!fED&9erP_8-T7tBd73{J>~fI1 zD4T=ZoJrh8H#gko?z(+&)!oP@|2d^OeGq7H!+mWDS#|4(RP9>JHI7%w^CvLma);4? zON09HB@;vck#enwNWDk)`-5&M86eMMhV0v`$tn_7hy$sHOq0|Se%zCayzF?i>#SHmUNly${`DhO=5T8oqcIaHJMWZ>2>`)}t7EzY6xgw`` zX@Wt5ih;v~l15^mpijW7o@$V)=b7mt;i}-hep^aERNmT#7TPCbn21K4CW+E+w-rbu zfmLr2>^ZX-64Mrm6?P}O~l8Ji5XCH zds;#LTcDc-uTxoE*$=|Gg{<3jxT;cJE80^_cJ5_8Y8ij_Y4`4aJs;}DN}t1VKE03v z^~^F-1u)bKr3YE;ifjhR+(nRo!K$emKP2o0V2VXWk{9^{2d#wUfpBG&X)J{raBIH@ zd+YD>iETRM4;qn46=JV1keWH<1Xq6qWKF;t;-S@>sF}Ql7SaE=1&tGrbm^31xsO`3pPBoKK*q{yo5`$w?ZtU2sxOV)Adr9kkl! zptzzs_W^IQfkwjli_4ri{P@0C++9yG>oqxZ0vHCLF` zboGF1OljD<13`~RG?hB*FB+~Tm!BG8Vg~i5Oc*XAai(-+!=AxA`x(HzeK_L4PJ-`})8X?5JIHG5QXG+|Y zWGl{6tfDeJv|>?B6oM^kCYKYxJ=d46{0;JH&%eYHKOVWkj9?YaW&|i?y=B1$w|>Eh zZlWBnzf2nlw|osmkH+6xPx3D;iYWQXrj#}Adsx4w2dPzd;|nzeFE&Ao9ZA5cGfP#` zpOWq|onpgn%eH>(0*f`gtPoid%=AEqx>!0bQpN`Y6J%dO<8Cll0(MwrehFu z;Xet1i-zcIxL4S*Qd@e#3_w*|W$(PW12oV@c^8Oz}y-TeF?BI1w)NU7Ja3B~`ow^l5; z(yMRm(O@(*Y`@zc;W(g%-ko!$F~eTQxbDH{jD>2s3pDFwhn0V04XWZ6D8>9x4r<9z zgfu-+n0>3Fqryr(Sw|Qh8x&zPvvM|k)LKf}Gk<7TrAJg&m}mQUWVG1j*R%PJ-XQsX~Y+kIu4H@gR0 zmYf)*cvlR;c~Kw}1fSYq2HUEaS8DUcvu6T`2Ky`WTd!Pb%gJVKq$?36|B*XpyK8 zw_SmkV`tV$#Jd;Q)itf|y^!@ftn_Xn#OEh<2i&JkQ6^MTo@?*cV(} zZ!Nv9&@a=hh(%Uv6X&oH?U-)uXv_%&xwE6n{^145Nhoe0i~8Btu-m|21YNz={vq=L zIvC|*@Lfzeatwd&CR_6pYsg95ZN_@&Zct0vmMunZp1PiH@dXob)WaF2fjfI-9YK&_2Uw*-Yvg4Xw2TuWo>oVqF05^ zqr+P67xe`7M(dHV1tSb1_SdCC!6Z&tly?_*9+e%xIOGNi(Qn-&B-TW)^t6OxMM1-5 zu4Z0F>tP5h_AWLnMlRM^pm%6}lYD@d#FXTnV4BdFcvRwp3{IUePCf#L>IdGxhE{n}}Wdhbj3wDnlDk0swgYq=? z{~i={|EOCXhx*J8dWjrxCOz<~d;OHUe8K-};caFVvJtk})9JJTv3_fv5=w(v_{fQp zom$+O?3Fh%K=FEcsFH2rnE;ObdDfM?KkRw^dk)#cWAvAY70vF8Kk*#Eo>!uPl)M+Y zUy1>P(lN*g?kuR8Jw8%c{F&q>j_R@k_e{idFpLF5c72yZki`vvemU@DMx;&R#r#C%e1!%Yh3V@#opf?wja z`2WJ*dq+i;d{LvLBB&s!pyVVXDgu%-NDxGcq99pv&N&MRNJer-g5;bt5^OR^rpY-s zG&wX4uNrm6`OVB*>;3z_?>`r-y|-@Ns#E*yz0bLKR?o;k%$R>XHKrjNEM95JIyI(V zgO4SX$J(BJS6bfqqVoam^L;#mJp7b)w?__+=tz3P%UDrtdM(K=L7&NYj;+7vn;qX? zrPcUK@Qx7DGkwP+mJq&XQo%^>QmK0Xq;WdZ`DD-VS>qm4MO|>c4XZ$f9NMtc$spR{ zK~H95y=h}lCcK_NSsgBmu59x)==OJiAtRmd%C?9Pn`~!7rWIC&Z!2D3!1tSRM4xgd zrgUnV9=mer)!>;4XZ6UpX*zPP^xR>eQ8VF?zo5p%(J|erpKj*WpidK*^`7B$1+VTM zyeC{_CQ-5{pBy@Y% zLzj1* z2kZOS97P()$m_>2HT(Dl4@QlYYFqe14oopzZ)Pc(}u0QZ%rz@Di9wRW)uDfIB z(XfVfs_spMuEeJFfsU{MdNJR)=xTncrv#hbUO3*&;1T@AwUhV;5p)LTjLGRcS$^tG zFS807t}|r9lP|6j*1V6e`T8!NFe|~7;WeXO9q((6v+&!}TjM54?hTfDN
Ir90b( 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 z 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 Fe*rBu4MYF{ literal 0 HcmV?d00001 diff --git "a/\320\2403212/zinchenko_408657/lab5/README.md" "b/\320\2403212/zinchenko_408657/lab5/README.md" deleted file mode 100644 index ed3b3d4..0000000 --- "a/\320\2403212/zinchenko_408657/lab5/README.md" +++ /dev/null @@ -1 +0,0 @@ -Лабораторная работа 5 diff --git "a/\320\2403212/zinchenko_408657/lab5/code/.gitignore" "b/\320\2403212/zinchenko_408657/lab5/code/.gitignore" new file mode 100644 index 0000000..38d7344 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/.gitignore" @@ -0,0 +1,13 @@ +# Local +.DS_Store +*.local +*.log* + +# Dist +node_modules +dist/ + +# IDE +.vscode/* +!.vscode/extensions.json +.idea diff --git "a/\320\2403212/zinchenko_408657/lab5/code/README.md" "b/\320\2403212/zinchenko_408657/lab5/code/README.md" new file mode 100644 index 0000000..5fc0306 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/README.md" @@ -0,0 +1,29 @@ +# Rsbuild project + +## Setup + +Install the dependencies: + +```bash +pnpm install +``` + +## Get started + +Start the dev server: + +```bash +pnpm dev +``` + +Build the app for production: + +```bash +pnpm build +``` + +Preview the production build locally: + +```bash +pnpm preview +``` diff --git "a/\320\2403212/zinchenko_408657/lab5/code/jest.config.js" "b/\320\2403212/zinchenko_408657/lab5/code/jest.config.js" new file mode 100644 index 0000000..031eabf --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/jest.config.js" @@ -0,0 +1,11 @@ +import { createDefaultPreset } from 'ts-jest' + +const tsJestTransformCfg = createDefaultPreset().transform + +/** @type {import("jest").Config} **/ +export default { + testEnvironment: "node", + transform: { + ...tsJestTransformCfg, + }, +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab5/code/package.json" "b/\320\2403212/zinchenko_408657/lab5/code/package.json" new file mode 100644 index 0000000..ed5ddec --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/package.json" @@ -0,0 +1,34 @@ +{ + "name": "rsbuild-react-ts", + "version": "1.0.0", + "private": true, + "type": "module", + "scripts": { + "build": "rsbuild build", + "dev": "rsbuild dev --open", + "preview": "rsbuild preview", + "test": "jest" + }, + "dependencies": { + "@chakra-ui/react": "^3.19.0", + "chart.js": "^4.4.9", + "dayjs": "^1.11.13", + "next-themes": "^0.4.6", + "react": "^19.1.0", + "react-chartjs-2": "^5.3.0", + "react-dom": "^19.1.0", + "react-hook-form": "^7.56.3", + "react-icons": "^5.5.0", + "uuid": "^11.1.0" + }, + "devDependencies": { + "@jest/globals": "^29.7.0", + "@rsbuild/core": "^1.3.15", + "@rsbuild/plugin-react": "^1.3.0", + "@types/react": "^19.1.2", + "@types/react-dom": "^19.1.3", + "jest": "^29.7.0", + "ts-jest": "^29.3.3", + "typescript": "^5.8.3" + } +} diff --git "a/\320\2403212/zinchenko_408657/lab5/code/pnpm-lock.yaml" "b/\320\2403212/zinchenko_408657/lab5/code/pnpm-lock.yaml" new file mode 100644 index 0000000..d2c6c38 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/pnpm-lock.yaml" @@ -0,0 +1,4044 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@chakra-ui/react': + specifier: ^3.19.0 + version: 3.19.2(@emotion/react@11.14.0(@types/react@19.1.6)(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + chart.js: + specifier: ^4.4.9 + version: 4.4.9 + dayjs: + specifier: ^1.11.13 + version: 1.11.13 + next-themes: + specifier: ^0.4.6 + version: 0.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + react: + specifier: ^19.1.0 + version: 19.1.0 + react-chartjs-2: + specifier: ^5.3.0 + version: 5.3.0(chart.js@4.4.9)(react@19.1.0) + react-dom: + specifier: ^19.1.0 + version: 19.1.0(react@19.1.0) + react-hook-form: + specifier: ^7.56.3 + version: 7.57.0(react@19.1.0) + react-icons: + specifier: ^5.5.0 + version: 5.5.0(react@19.1.0) + uuid: + specifier: ^11.1.0 + version: 11.1.0 + devDependencies: + '@jest/globals': + specifier: ^29.7.0 + version: 29.7.0 + '@rsbuild/core': + specifier: ^1.3.15 + version: 1.3.22 + '@rsbuild/plugin-react': + specifier: ^1.3.0 + version: 1.3.2(@rsbuild/core@1.3.22) + '@types/react': + specifier: ^19.1.2 + version: 19.1.6 + '@types/react-dom': + specifier: ^19.1.3 + version: 19.1.6(@types/react@19.1.6) + jest: + specifier: ^29.7.0 + version: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + ts-jest: + specifier: ^29.3.3 + version: 29.3.4(@babel/core@7.27.4)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.27.4))(jest@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0))(typescript@5.8.3) + typescript: + specifier: ^5.8.3 + version: 5.8.3 + +packages: + + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + + '@ark-ui/react@5.9.1': + resolution: {integrity: sha512-CPJtUy20x1kUAQ+8iPbgpq/RmqlF1Pfx91+8nHnYbR2dYI4mNKnxT8m7TGkoWT72W+P8YKYUehFJOPvspZqG2Q==} + peerDependencies: + react: '>=18.0.0' + react-dom: '>=18.0.0' + + '@babel/code-frame@7.27.1': + resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.27.5': + resolution: {integrity: sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.27.4': + resolution: {integrity: sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.27.5': + resolution: {integrity: sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.27.2': + resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.27.1': + resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.27.3': + resolution: {integrity: sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-plugin-utils@7.27.1': + resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.27.1': + resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.27.1': + resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.27.6': + resolution: {integrity: sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.27.5': + resolution: {integrity: sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-syntax-async-generators@7.8.4': + resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-bigint@7.8.3': + resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-class-properties@7.12.13': + resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-class-static-block@7.14.5': + resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-import-attributes@7.27.1': + resolution: {integrity: sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-import-meta@7.10.4': + resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-json-strings@7.8.3': + resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-jsx@7.27.1': + resolution: {integrity: sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-logical-assignment-operators@7.10.4': + resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3': + resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-numeric-separator@7.10.4': + resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-object-rest-spread@7.8.3': + resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-optional-catch-binding@7.8.3': + resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-optional-chaining@7.8.3': + resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-private-property-in-object@7.14.5': + resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-top-level-await@7.14.5': + resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-typescript@7.27.1': + resolution: {integrity: sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/runtime@7.27.6': + resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.27.2': + resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.27.4': + resolution: {integrity: sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.27.6': + resolution: {integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==} + engines: {node: '>=6.9.0'} + + '@bcoe/v8-coverage@0.2.3': + resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + + '@chakra-ui/react@3.19.2': + resolution: {integrity: sha512-ZQfYXQ20ftR1U8kdwDxqx4qk8+8y9RcReb2heptAFD6IBnTg2dOylfjS7Qj2WF7mkPHnWd0W1/FUWDjJD1OgVQ==} + peerDependencies: + '@emotion/react': '>=11' + react: '>=18' + react-dom: '>=18' + + '@emotion/babel-plugin@11.13.5': + resolution: {integrity: sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==} + + '@emotion/cache@11.14.0': + resolution: {integrity: sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==} + + '@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.14.0': + resolution: {integrity: sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==} + peerDependencies: + '@types/react': '*' + react: '>=16.8.0' + peerDependenciesMeta: + '@types/react': + optional: true + + '@emotion/serialize@1.3.3': + resolution: {integrity: sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==} + + '@emotion/sheet@1.4.0': + resolution: {integrity: sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==} + + '@emotion/unitless@0.10.0': + resolution: {integrity: sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==} + + '@emotion/use-insertion-effect-with-fallbacks@1.2.0': + resolution: {integrity: sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==} + peerDependencies: + react: '>=16.8.0' + + '@emotion/utils@1.4.2': + resolution: {integrity: sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==} + + '@emotion/weak-memoize@0.4.0': + resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==} + + '@floating-ui/core@1.7.1': + resolution: {integrity: sha512-azI0DrjMMfIug/ExbBaeDVJXcY0a7EPvPjb2xAJPa4HeimBX+Z18HK8QQR3jb6356SnDDdxx+hinMLcJEDdOjw==} + + '@floating-ui/dom@1.6.13': + resolution: {integrity: sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==} + + '@floating-ui/utils@0.2.9': + resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} + + '@internationalized/date@3.8.0': + resolution: {integrity: sha512-J51AJ0fEL68hE4CwGPa6E0PO6JDaVLd8aln48xFCSy7CZkZc96dGEGmLs2OEEbBxcsVZtfrqkXJwI2/MSG8yKw==} + + '@internationalized/number@3.6.1': + resolution: {integrity: sha512-UVsb4bCwbL944E0SX50CHFtWEeZ2uB5VozZ5yDXJdq6iPZsZO5p+bjVMZh2GxHf4Bs/7xtDCcPwEa2NU9DaG/g==} + + '@istanbuljs/load-nyc-config@1.1.0': + resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} + engines: {node: '>=8'} + + '@istanbuljs/schema@0.1.3': + resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} + engines: {node: '>=8'} + + '@jest/console@29.7.0': + resolution: {integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/core@29.7.0': + resolution: {integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + + '@jest/environment@29.7.0': + resolution: {integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/expect-utils@29.7.0': + resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/expect@29.7.0': + resolution: {integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@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} + + '@jest/globals@29.7.0': + resolution: {integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/reporters@29.7.0': + resolution: {integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + + '@jest/schemas@29.6.3': + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/source-map@29.6.3': + resolution: {integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/test-result@29.7.0': + resolution: {integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/test-sequencer@29.7.0': + resolution: {integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/transform@29.7.0': + resolution: {integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/types@29.6.3': + resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.0': + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + + '@kurkle/color@0.3.4': + resolution: {integrity: sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==} + + '@module-federation/error-codes@0.14.0': + resolution: {integrity: sha512-GGk+EoeSACJikZZyShnLshtq9E2eCrDWbRiB4QAFXCX4oYmGgFfzXlx59vMNwqTKPJWxkEGnPYacJMcr2YYjag==} + + '@module-federation/runtime-core@0.14.0': + resolution: {integrity: sha512-fGE1Ro55zIFDp/CxQuRhKQ1pJvG7P0qvRm2N+4i8z++2bgDjcxnCKUqDJ8lLD+JfJQvUJf0tuSsJPgevzueD4g==} + + '@module-federation/runtime-tools@0.14.0': + resolution: {integrity: sha512-y/YN0c2DKsLETE+4EEbmYWjqF9G6ZwgZoDIPkaQ9p0pQu0V4YxzWfQagFFxR0RigYGuhJKmSU/rtNoHq+qF8jg==} + + '@module-federation/runtime@0.14.0': + resolution: {integrity: sha512-kR3cyHw/Y64SEa7mh4CHXOEQYY32LKLK75kJOmBroLNLO7/W01hMNAvGBYTedS7hWpVuefPk1aFZioy3q2VLdQ==} + + '@module-federation/sdk@0.14.0': + resolution: {integrity: sha512-lg/OWRsh18hsyTCamOOhEX546vbDiA2O4OggTxxH2wTGr156N6DdELGQlYIKfRdU/0StgtQS81Goc0BgDZlx9A==} + + '@module-federation/webpack-bundler-runtime@0.14.0': + resolution: {integrity: sha512-POWS6cKBicAAQ3DNY5X7XEUSfOfUsRaBNxbuwEfSGlrkTE9UcWheO06QP2ndHi8tHQuUKcIHi2navhPkJ+k5xg==} + + '@pandacss/is-valid-prop@0.53.6': + resolution: {integrity: sha512-TgWBQmz/5j/oAMjavqJAjQh1o+yxhYspKvepXPn4lFhAN3yBhilrw9HliAkvpUr0sB2CkJ2BYMpFXbAJYEocsA==} + + '@rsbuild/core@1.3.22': + resolution: {integrity: sha512-FGB7m8Tn/uiOhvqk0lw+NRMyD+VYJ+eBqVfpn0X11spkJDiPWn8UkMRvfzCX4XFcNZwRKYuuKJaZK1DNU8UG+w==} + engines: {node: '>=16.10.0'} + hasBin: true + + '@rsbuild/plugin-react@1.3.2': + resolution: {integrity: sha512-H4blXmgvVOrQlVy4ZfJ5IGfQIF5uKwtkGzwVnEsn1HN7DRRI9VlFrcuXj6+e3GigvYxg6TDHAAUJi6FoIGbnKQ==} + peerDependencies: + '@rsbuild/core': 1.x + + '@rspack/binding-darwin-arm64@1.3.12': + resolution: {integrity: sha512-8hKjVTBeWPqkMzFPNWIh72oU9O3vFy3e88wRjMPImDCXBiEYrKqGTTLd/J0SO+efdL3SBD1rX1IvdJpxCv6Yrw==} + cpu: [arm64] + os: [darwin] + + '@rspack/binding-darwin-x64@1.3.12': + resolution: {integrity: sha512-Sj4m+mCUxL7oCpdu7OmWT7fpBM7hywk5CM9RDc3D7StaBZbvNtNftafCrTZzTYKuZrKmemTh5SFzT5Tz7tf6GA==} + cpu: [x64] + os: [darwin] + + '@rspack/binding-linux-arm64-gnu@1.3.12': + resolution: {integrity: sha512-7MuOxf3/Mhv4mgFdLTvgnt/J+VouNR65DEhorth+RZm3LEWojgoFEphSAMAvpvAOpYSS68Sw4SqsOZi719ia2w==} + cpu: [arm64] + os: [linux] + + '@rspack/binding-linux-arm64-musl@1.3.12': + resolution: {integrity: sha512-s6KKj20T9Z1bA8caIjU6EzJbwyDo1URNFgBAlafCT2UC6yX7flstDJJ38CxZacA9A2P24RuQK2/jPSZpWrTUFA==} + cpu: [arm64] + os: [linux] + + '@rspack/binding-linux-x64-gnu@1.3.12': + resolution: {integrity: sha512-0w/sRREYbRgHgWvs2uMEJSLfvzbZkPHUg6CMcYQGNVK6axYRot6jPyKetyFYA9pR5fB5rsXegpnFaZaVrRIK2g==} + cpu: [x64] + os: [linux] + + '@rspack/binding-linux-x64-musl@1.3.12': + resolution: {integrity: sha512-jEdxkPymkRxbijDRsBGdhopcbGXiXDg59lXqIRkVklqbDmZ/O6DHm7gImmlx5q9FoWbz0gqJuOKBz4JqWxjWVA==} + cpu: [x64] + os: [linux] + + '@rspack/binding-win32-arm64-msvc@1.3.12': + resolution: {integrity: sha512-ZRvUCb3TDLClAqcTsl/o9UdJf0B5CgzAxgdbnYJbldyuyMeTUB4jp20OfG55M3C2Nute2SNhu2bOOp9Se5Ongw==} + cpu: [arm64] + os: [win32] + + '@rspack/binding-win32-ia32-msvc@1.3.12': + resolution: {integrity: sha512-1TKPjuXStPJr14f3ZHuv40Xc/87jUXx10pzVtrPnw+f3hckECHrbYU/fvbVzZyuXbsXtkXpYca6ygCDRJAoNeQ==} + cpu: [ia32] + os: [win32] + + '@rspack/binding-win32-x64-msvc@1.3.12': + resolution: {integrity: sha512-lCR0JfnYKpV+a6r2A2FdxyUKUS4tajePgpPJN5uXDgMGwrDtRqvx+d0BHhwjFudQVJq9VVbRaL89s2MQ6u+xYw==} + cpu: [x64] + os: [win32] + + '@rspack/binding@1.3.12': + resolution: {integrity: sha512-4Ic8lV0+LCBfTlH5aIOujIRWZOtgmG223zC4L3o8WY/+ESAgpdnK6lSSMfcYgRanYLAy3HOmFIp20jwskMpbAg==} + + '@rspack/core@1.3.12': + resolution: {integrity: sha512-mAPmV4LPPRgxpouUrGmAE4kpF1NEWJGyM5coebsjK/zaCMSjw3mkdxiU2b5cO44oIi0Ifv5iGkvwbdrZOvMyFA==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@swc/helpers': '>=0.5.1' + peerDependenciesMeta: + '@swc/helpers': + optional: true + + '@rspack/lite-tapable@1.0.1': + resolution: {integrity: sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==} + engines: {node: '>=16.0.0'} + + '@rspack/plugin-react-refresh@1.4.3': + resolution: {integrity: sha512-wZx4vWgy5oMEvgyNGd/oUKcdnKaccYWHCRkOqTdAPJC3WcytxhTX+Kady8ERurSBiLyQpoMiU3Iyd+F1Y2Arbw==} + peerDependencies: + react-refresh: '>=0.10.0 <1.0.0' + webpack-hot-middleware: 2.x + peerDependenciesMeta: + webpack-hot-middleware: + optional: true + + '@sinclair/typebox@0.27.8': + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + + '@sinonjs/commons@3.0.1': + resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} + + '@sinonjs/fake-timers@10.3.0': + resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==} + + '@swc/helpers@0.5.17': + resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} + + '@types/babel__core@7.20.5': + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + + '@types/babel__generator@7.27.0': + resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==} + + '@types/babel__template@7.4.4': + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + + '@types/babel__traverse@7.20.7': + resolution: {integrity: sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==} + + '@types/graceful-fs@4.1.9': + resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==} + + '@types/istanbul-lib-coverage@2.0.6': + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + + '@types/istanbul-lib-report@3.0.3': + resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==} + + '@types/istanbul-reports@3.0.4': + resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==} + + '@types/node@22.15.30': + resolution: {integrity: sha512-6Q7lr06bEHdlfplU6YRbgG1SFBdlsfNC4/lX+SkhiTs0cpJkOElmWls8PxDFv4yY/xKb8Y6SO0OmSX4wgqTZbA==} + + '@types/parse-json@4.0.2': + resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} + + '@types/react-dom@19.1.6': + resolution: {integrity: sha512-4hOiT/dwO8Ko0gV1m/TJZYk3y0KBnY9vzDh7W+DH17b2HFSOGgdj33dhihPeuy3l0q23+4e+hoXHV6hCC4dCXw==} + peerDependencies: + '@types/react': ^19.0.0 + + '@types/react@19.1.6': + resolution: {integrity: sha512-JeG0rEWak0N6Itr6QUx+X60uQmN+5t3j9r/OVDtWzFXKaj6kD1BwJzOksD0FF6iWxZlbE1kB0q9vtnU2ekqa1Q==} + + '@types/stack-utils@2.0.3': + resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} + + '@types/yargs-parser@21.0.3': + resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} + + '@types/yargs@17.0.33': + resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} + + '@zag-js/accordion@1.12.2': + resolution: {integrity: sha512-EoTVa4Tppgp3bfaOhBrgSyOUeeGWFmXn2gGT9AuMq0x46sc4xw5IsRveYPHwBzifrTE3tAKVIZBA5rFoTaA43Q==} + + '@zag-js/anatomy@1.12.2': + resolution: {integrity: sha512-avPmEivu4QFAICJ4rogt9ZFMp4trwva11jQfIAHXYDDL6YoF58z69129eLuyVSuSjEQ9EOzxg+fxMjXH2xm7yQ==} + + '@zag-js/angle-slider@1.12.2': + resolution: {integrity: sha512-pd62FEJZmnJAjrUcV5J+IayRGrUuMp90EPf5Sd2nwlBoxarmz6mSYr8jpeAPSjeT73rYkph8D+USM4qc3xHanQ==} + + '@zag-js/aria-hidden@1.12.2': + resolution: {integrity: sha512-xhtgOYYzTztQNKmROpEjkbeVbbvqm70595kOVsQOPhaWKVBK4EySLhYEeTRCjLmK9jVwUWQAETISqyA2za9AfQ==} + + '@zag-js/auto-resize@1.12.2': + resolution: {integrity: sha512-LhkL85yuLsIS4t3+XjpJZmZb1hAG9pTf1JIRNQ5HtmoCiOf/wxX73SJdOeQBKfzm1w8Hz5C6skNSxgJuYo0Wzg==} + + '@zag-js/avatar@1.12.2': + resolution: {integrity: sha512-zAgxzx6dzH2Kds0hGgPBGm1wWjwurn3CojdID6V9awHq+u5aDf/HIKDOIdjaNlTPdXtBeWrzJaKQiqHmNGrong==} + + '@zag-js/carousel@1.12.2': + resolution: {integrity: sha512-5nxNzar7wwGJIMV2As2/a2HLju8s7XahaLuq8BCiLQlhDN0N894Y2JazXm1gCthS7FdMlxa433G7bjYrxMYw9Q==} + + '@zag-js/checkbox@1.12.2': + resolution: {integrity: sha512-9kkmo9lz0eQcIkEmPCbevv6cl5fNRhMvyGKgsCENbaeU2VpntYlF8eRn81S2/7naE0JpXCGq+7jMgHHjKhNHeA==} + + '@zag-js/clipboard@1.12.2': + resolution: {integrity: sha512-lANTh8XOPmEiFUgVfd8+ORdpHC7grPImB3X71Kj1a2hfvEDLI/INop379aNsncboCdJkWp0slRzyquHSOgfaTA==} + + '@zag-js/collapsible@1.12.2': + resolution: {integrity: sha512-vmYHRhWex2LkcNRvg3oAzhmnF5gR+vBLfRpP8vu3hsX4zAn6GS2GggVeH3prBnNAIsErA4ech29BzqAhp5xeLA==} + + '@zag-js/collection@1.12.2': + resolution: {integrity: sha512-IVEXMBguC/QljCT6L5DsrSYUWvi+SWacGweDm12fckMEwPBpGOxv+dR0yqcjaeNEDuTkT0WHeZaWI/0TNV533g==} + + '@zag-js/color-picker@1.12.2': + resolution: {integrity: sha512-HXE5iyQaM7KOyu1SXcVJdDqtuZ+GRpdP8CaJVTz4RkBqaFBd3jrMVr3eW/Hv5N3b7v3vsfGHXXLchte+tcVpnQ==} + + '@zag-js/color-utils@1.12.2': + resolution: {integrity: sha512-ZfshXAqaHhgo8tieADVZ99AoUTn3IK+K8UZ2cYmiTHkrmXGkXQUGysdqsCYkPE/nzC3CmIXLK4LPj5tHYJVydQ==} + + '@zag-js/combobox@1.12.2': + resolution: {integrity: sha512-PaNSh27057I+kwrfyUWSo0K54hwWK6oP+d0NPez9mrQRABj1wVbPc8R5ouseZqI6LL0zRGc4oZB7Inq1o5usWw==} + + '@zag-js/core@1.12.2': + resolution: {integrity: sha512-deECf4FGOSjmD+f3Y116D9dHYs4NP87GBtQgQQ9oCXP8SOCR3A9gSkUGcFU+cQq2tNA5I1F9KqUElc0fDYfh4w==} + + '@zag-js/date-picker@1.12.2': + resolution: {integrity: sha512-su741tKtQgGQ6KwTE2+oOIgGezOq/cQQyIWXUF0jkEyvsSPio06LRel/cvho3QO9oMzR6W7pus5fMOQPPO9Omw==} + peerDependencies: + '@internationalized/date': '>=3.0.0' + + '@zag-js/date-utils@1.12.2': + resolution: {integrity: sha512-FTpwgfk+xoHLQEHEVYO1yoXwgNdwTVlA4XX/IhSqj+3KOTXIu60SymX63fE/rqWzayXmH5m8doP7LGW758u1mg==} + peerDependencies: + '@internationalized/date': '>=3.0.0' + + '@zag-js/dialog@1.12.2': + resolution: {integrity: sha512-Eqs/fpFc9wzYQQne4VOh8qivxuJyEcUR+MO/onTSFVV/AaJfXXowsXk7kAzcQrNzbvLn+yuTOCYFlh4QsPlLXA==} + + '@zag-js/dismissable@1.12.2': + resolution: {integrity: sha512-YIuUx+9mzzf2x9gWayt6T2e2N6nyrlBqzkJfwXJ9R3wEz065AW5X1PeKGGrvYlojPok1yNAaDq6mFL6Rqb6IVg==} + + '@zag-js/dom-query@1.12.2': + resolution: {integrity: sha512-UvFHQbkX6zscdYnMYc5TnrV/FkKlb4dMombXO2rD20NStU9gxb7uYtq91aPSO2x7aVCwNWuPWRb1nFAYGFBOvw==} + + '@zag-js/editable@1.12.2': + resolution: {integrity: sha512-kL6LulJKFOU8riW4tzM5QhAm6I6+zjfw28FjhOny7r4Mtc0HRQUJfh6WzlBcq72fqxvvf8J2OuVq2yeWPE9XBw==} + + '@zag-js/file-upload@1.12.2': + resolution: {integrity: sha512-JOjW4JGwRKVpDjZcLCU/qEAVNeUJbb9hYdmAvIAtBmf34VL3q17jsCKDvIZsxasSI0cOhuROhtWhnPXK0/lj6A==} + + '@zag-js/file-utils@1.12.2': + resolution: {integrity: sha512-E28mzjlG53RyApOGrc+gELXcrUpm6lIyWTo0ScJ7Nqlu5fe2Cy69bHyULECz3cI7/XK454yRA5Le7DifbyJQwQ==} + + '@zag-js/floating-panel@1.12.2': + resolution: {integrity: sha512-L7nxKWQEg4LB+FTwcqs5qlWaYJ8ZA3aDrZXtxqDtqltGeICAlV/0CkjwNhdX4DyGt4VLgLLYqE3Ciq0tJ1PO9g==} + + '@zag-js/focus-trap@1.12.2': + resolution: {integrity: sha512-YhlkuxvRcmVhWZa08GqGbqkbL2M0Ae72+NVjoFhlpourgERsatJjvQ8SCx5SEpPcVQQc86Zh+4QAHrdQ4//20g==} + + '@zag-js/focus-visible@1.12.2': + resolution: {integrity: sha512-rXr8+ngjbSYDZDzpP3ckCvaqodvlOuIjfKYUnTYM717l5rYCIrn2vFF+ncDdelcWRBRv5nq7o79vjsqKU+1Bww==} + + '@zag-js/highlight-word@1.12.2': + resolution: {integrity: sha512-M3bX0EeFZ5mh49B6IKTQKyPUZPMmO/7gImPr/1OmffUHUzr8EQT6M6WJBoDGB3dvGcPoahbNuGoZd3Jw48+1mA==} + + '@zag-js/hover-card@1.12.2': + resolution: {integrity: sha512-lxReLOp0kB6roMiZHz3yigKjqX541x9axIyWzwfeZmZ1Hqg46hoh5OYi0NclQ2zEFw6BMNLAc8ZVoWToBQSfTg==} + + '@zag-js/i18n-utils@1.12.2': + resolution: {integrity: sha512-P3wuPeFXWC8LW+ZzSdmaRLsSDlrQT0FU7Sx3z4IkZXr8mV+QMg5fh95dmXNIDkEcG6zL7PHwt2ho80m/KuFcfA==} + + '@zag-js/interact-outside@1.12.2': + resolution: {integrity: sha512-ii7ZKufyF+kDr2WcwVgGZZQXrd/GmNYeJ4heR/RO7q3PxYv9le+GFq3evbtBhhVQ/0P3IqZZ8bZL0f/7qQyKKg==} + + '@zag-js/listbox@1.12.2': + resolution: {integrity: sha512-EczE94iUzcKIqZhQ5SqaSiLkH88M+APrOp+xI+kHSDUt0SD4TQur6O/ALKFfBPT8Kip5iPK3Er5+t7PkC1wnvg==} + + '@zag-js/live-region@1.12.2': + resolution: {integrity: sha512-yu1a7jKoheMmeiU4cYRqod2u7JiD1o7Cgi9af1PSBcU9vFJTUpIDJErRCI79vuPSugFvpP38Cjtc3LlgE3uGyA==} + + '@zag-js/menu@1.12.2': + resolution: {integrity: sha512-Ja2RfNLHZOIBuSDRu7lS+0dfRfOov0xdA2RU8yZJBJupZBKT49tBEktJfWNr1YV3GDdlPoGSFVL2ogjNxtzDXQ==} + + '@zag-js/number-input@1.12.2': + resolution: {integrity: sha512-YesH2jaFwjRxfqdXUfjGgaAcLjoPPCYkltdC7wEBCNgAqU8UKZ+tktVHnfzZoLZiKqkQ9TXXOC4Ic6cmjXC2UQ==} + + '@zag-js/pagination@1.12.2': + resolution: {integrity: sha512-5ly8eQg/58RV0blov46oZ5vhudWMxH+9rZw0LA6Hci3lGrmDjEezOkKmN0Om8PV+xoYcrCl0nnptxALChHCNSQ==} + + '@zag-js/pin-input@1.12.2': + resolution: {integrity: sha512-cRg4FOpL9wTGRztx+qk1Sx8aakXsGw7B8+AnboT12zcW64pYF72hqJUSrz13S2um7MhDJskPrdOetal4GBqWFw==} + + '@zag-js/popover@1.12.2': + resolution: {integrity: sha512-wOYf4eNXWoZlBwNlF4EGYHsaGOrGsVIVVteCB/xSr9AXBrTF7CQiSwH445+m7u0KBZnDfsY61JweNx5U9FAmKA==} + + '@zag-js/popper@1.12.2': + resolution: {integrity: sha512-FoUx39kjStc7CUEtxCfcIlrQ0Oq9HH2As9HKz9b4IMwBg3u39sVP2XtHUQdHqNzMoscSsRtAqaTHMmRBz++GIA==} + + '@zag-js/presence@1.12.2': + resolution: {integrity: sha512-V2oNmwe3qYXxAi9Cx1y+RAdb75fexJA+m0VgmO2R5tL4DIFA/CcHB5lc4yPxUzYw2fNwVZGd6F6eUX0Ys0Sp3A==} + + '@zag-js/progress@1.12.2': + resolution: {integrity: sha512-B1jgP7iKYV3CwI33bnXPG4Hg7dr/9xl3FkYoM7hk8m5gD4b3zW1eJN8vQejKbARbxki0w/sv3r2DHCF14S7yMQ==} + + '@zag-js/qr-code@1.12.2': + resolution: {integrity: sha512-t5dByXkS3dBnhv2IS4GStAnVg0Ybm1gtWprspL97ndAHabE7tV1qwPaUV42cT16gFE6/l3aFtbjC+s0fVEFFsA==} + + '@zag-js/radio-group@1.12.2': + resolution: {integrity: sha512-4QsVREhwP0colnrsaWJIP1jjIZGqfKO7grh3K+gI4vmzD3hU9c2F6ZeRLdzdkDyK+CXcE9MYkDW0aJKxEsJr4Q==} + + '@zag-js/rating-group@1.12.2': + resolution: {integrity: sha512-n6DJCdtu2hLhZDzFQd0iS7dXL0LJlCVVAFX1pPFrLAl1QQLDZLHftGZAsTnHpF2xAgrOyvzm1p+DPB5arQVcEw==} + + '@zag-js/react@1.12.2': + resolution: {integrity: sha512-kjMP2ikLNbHSEhkrUkg20mtWyYzhOIIBMR4DXlS3nBnB2vNUGq71iUf45xgO7qq7jF/ANOazT5cKJkvBFzs7qw==} + peerDependencies: + react: '>=18.0.0' + react-dom: '>=18.0.0' + + '@zag-js/rect-utils@1.12.2': + resolution: {integrity: sha512-GM1nRRsUDhlYULdouSQ/Hwow9Wy2dJUeK5qX/CruRkkkUKNkcAB97rv8oxZtTLBBa0KemD5X/JwY4W3rfY1mgw==} + + '@zag-js/remove-scroll@1.12.2': + resolution: {integrity: sha512-SYMGGlwnh2VCnae5pEcCgxhVqlCAquqclxp9KVbuypUIZ8Tby1cP78aWwQ5i9QgNGz5V1WfINsZaE0AFr++s0g==} + + '@zag-js/scroll-snap@1.12.2': + resolution: {integrity: sha512-OCYEKKubAwshRI0PvVdt0W5vb7aq06xci5Z3mK3Fu3vIIZe1e1JVHC1vPfjJf4wso5vSdQBN9KLHgdoths4Fvg==} + + '@zag-js/select@1.12.2': + resolution: {integrity: sha512-kSa3EAkUxbEShRVnrkujujFTY22HK4aYSWl1F3u2Yqjmp9EJRX9kR1CXVXbDK8Ta9JmW82XPFyvIa+ah30isPA==} + + '@zag-js/signature-pad@1.12.2': + resolution: {integrity: sha512-xg5P8XRynjtpNU3KFET+Gw/pQpFj4yV+MnKHIX51Pb6JF8iCBkzx5lF6yNCp8y24ANG8ndGq8LCzv+sCC4tJnA==} + + '@zag-js/slider@1.12.2': + resolution: {integrity: sha512-iAlV+A/PgJoCZaqsIAPBaTd7xDLHYbUe3QbjnDqmOHIVpRIV5kM1MH8creRFtDauHIh1xHD1TIvwKPVi6Ik6Xw==} + + '@zag-js/splitter@1.12.2': + resolution: {integrity: sha512-YQLtL9AKiJtm2D7KLCvQGfHKtZ/FwikvABUW1ldUM2m1he6oKkKdGjSycT4yJg7+K5TbaZfV8jmc+bc7w0/5hA==} + + '@zag-js/steps@1.12.2': + resolution: {integrity: sha512-0bI8WYVQAiXOAn36i61Q+rqJzt6+cJK77q5/jMqDvlquQ2lvfhW2XXmBwYXmKadnmfiFprrCvGW1GGwSV/R82A==} + + '@zag-js/store@1.12.2': + resolution: {integrity: sha512-Vy1QK0cmaaruzpkIwJ1lvCO3q0E0K/M1ZY71cDbEYKRYfpRqgV+7xluWbfTueqiAIYyGPa7+nCpakdr9zPPsnQ==} + + '@zag-js/switch@1.12.2': + resolution: {integrity: sha512-vRKuCwYi5pDLgZMQ6I6cAzdLRFqC627aFycXRU1mC/0uVo/fCrrbjPvdaascLdmTtEq6/IvkjqZwQovedXbKyg==} + + '@zag-js/tabs@1.12.2': + resolution: {integrity: sha512-7IPumMCwJXP+ukU9AvnmpQJtUoMXbO+b4trG8kZeSGQps5VVZhUntrAOIZ6QYRv6psR1eoNo+4giTepr8dIt3g==} + + '@zag-js/tags-input@1.12.2': + resolution: {integrity: sha512-bldiVV08yPCDVWGGmhCw4NbK44LuKT9SYYbGUtngRfABiiQUjvc8wQZNSdRgAV1ZXrniwLiMDsQ7L9pc585SRg==} + + '@zag-js/time-picker@1.12.2': + resolution: {integrity: sha512-dv4+ZDOWW7xOFNPQGqm2aMkuBLUkUaHCa/zTzV/0Ypl+A/6gBwjv81HIBDTJOHfhcJhlhuoZtgxU/n0ZRFB0yw==} + peerDependencies: + '@internationalized/date': '>=3.0.0' + + '@zag-js/timer@1.12.2': + resolution: {integrity: sha512-1cmdgRSuZNKEoyv5CNb4GZeU3MUi+WJBMZKeXMWy4niBz5sheaLl1FqfW9vUnXAKpfqKif/OFj/QYeo9+m8LqA==} + + '@zag-js/toast@1.12.2': + resolution: {integrity: sha512-uaSlF3PiQ/hlFamBRkrxUESDYd8vXo/iRqvNiROy18bBygpvhfNIi+f8vrvkGXuSqzZ8VWJbbgiNMtqPX6I/8w==} + + '@zag-js/toggle-group@1.12.2': + resolution: {integrity: sha512-pFgU9OjhcBVIWS5izSlTG+K3MlKK+LeD1qKaMIHvX//0pJWkn9oEcNVs58Ae4DrizN5A8WB5i5FjV7BC3hDNYw==} + + '@zag-js/toggle@1.12.2': + resolution: {integrity: sha512-AUDEVjZtXwwYFSEHF4cDTJlGvjsaYcXdk3P7j9JQLoKkDci3x25QgOw6W670/RWpFNpbfjO8qBjWMs1P5+Dw4w==} + + '@zag-js/tooltip@1.12.2': + resolution: {integrity: sha512-RAZ0wslbHWfcH1MPVmfwFJfP3vzQ2Cf5hc5oJZzTURhNpgM3vIhtbCyjXwal/L82eW+Iu2bRrezE/fNRjwBIbw==} + + '@zag-js/tour@1.12.2': + resolution: {integrity: sha512-3TNE2p/mUe52RgndOpoSEVlB57TWuK6dM1X/atVMfDBDDBwTjDFkw5OnHSh3nDugva54EJVArn/0+9QGZhvl+w==} + + '@zag-js/tree-view@1.12.2': + resolution: {integrity: sha512-S/+a6KCFGSocMKlMG8GmfEkfjbuDeams4s/NTy1JYOTlYO72J5T0L9FD8i9q/bXBhHNno985b5QGpjlfHG6Brg==} + + '@zag-js/types@1.12.2': + resolution: {integrity: sha512-coJfIU/1Cg1RkWEkf4ArXK6rD3EU+lwxQdtVRlhvGk4c2ts2YTqNi/Sis5CT4/dzaKAk3pk8O2H3ry4IcL2tsg==} + + '@zag-js/utils@1.12.2': + resolution: {integrity: sha512-JLmzHzJVggOy+4z3jbJ8v86O6Gqm4h1/+ExtwfiTiba0O7j2+4Had7XQxSjVw+H7fNDAfwbZY8af7XzrnumcLQ==} + + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@5.2.0: + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + argparse@1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + + async@3.2.6: + resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} + + babel-jest@29.7.0: + resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@babel/core': ^7.8.0 + + babel-plugin-istanbul@6.1.1: + resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} + engines: {node: '>=8'} + + babel-plugin-jest-hoist@29.6.3: + resolution: {integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + babel-plugin-macros@3.1.0: + resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} + engines: {node: '>=10', npm: '>=6'} + + babel-preset-current-node-syntax@1.1.0: + resolution: {integrity: sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==} + peerDependencies: + '@babel/core': ^7.0.0 + + babel-preset-jest@29.6.3: + resolution: {integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@babel/core': ^7.0.0 + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.25.0: + resolution: {integrity: sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + bs-logger@0.2.6: + resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} + engines: {node: '>= 6'} + + bser@2.1.1: + resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} + + buffer-from@1.1.2: + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + camelcase@5.3.1: + resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} + engines: {node: '>=6'} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + + caniuse-lite@1.0.30001721: + resolution: {integrity: sha512-cOuvmUVtKrtEaoKiO0rSc29jcjwMwX5tOHDy4MgVFEWiUXj4uBMJkwI8MDySkgXidpMiHUcviogAvFi4pA2hDQ==} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + char-regex@1.0.2: + resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} + engines: {node: '>=10'} + + chart.js@4.4.9: + resolution: {integrity: sha512-EyZ9wWKgpAU0fLJ43YAEIF8sr5F2W3LqbS40ZJyHIner2lY14ufqv2VMp69MAiZ2rpwxEUxEhIH/0U3xyRynxg==} + engines: {pnpm: '>=8'} + + ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} + engines: {node: '>=8'} + + cjs-module-lexer@1.4.3: + resolution: {integrity: sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + co@4.6.0: + resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} + engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} + + collect-v8-coverage@1.0.2: + resolution: {integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + convert-source-map@1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + core-js@3.42.0: + resolution: {integrity: sha512-Sz4PP4ZA+Rq4II21qkNqOEDTDrCvcANId3xpIgB34NDkWc3UduWj2dqEtN9yZIq8Dk3HyPI33x9sqqU5C8sr0g==} + + cosmiconfig@7.1.0: + resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} + engines: {node: '>=10'} + + create-jest@29.7.0: + resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + hasBin: true + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + + dayjs@1.11.13: + resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} + + debug@4.4.1: + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + dedent@1.6.0: + resolution: {integrity: sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA==} + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true + + deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + + detect-newline@3.1.0: + resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} + engines: {node: '>=8'} + + diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + ejs@3.1.10: + resolution: {integrity: sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==} + engines: {node: '>=0.10.0'} + hasBin: true + + electron-to-chromium@1.5.165: + resolution: {integrity: sha512-naiMx1Z6Nb2TxPU6fiFrUrDTjyPMLdTtaOd2oLmG8zVSg2hCWGkhPyxwk+qRmZ1ytwVqUv0u7ZcDA5+ALhaUtw==} + + emittery@0.13.1: + resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} + engines: {node: '>=12'} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + + error-stack-parser@2.1.4: + resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@2.0.0: + resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} + engines: {node: '>=8'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + + execa@5.1.1: + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} + + exit@0.1.2: + resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==} + engines: {node: '>= 0.8.0'} + + expect@29.7.0: + resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-safe-stringify@2.1.1: + resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} + + fb-watchman@2.0.2: + resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} + + filelist@1.0.4: + resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-root@1.1.0: + resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} + + find-up@4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-package-type@0.1.0: + resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} + engines: {node: '>=8.0.0'} + + get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported + + globals@11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + hoist-non-react-statics@3.3.2: + resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} + + html-entities@2.6.0: + resolution: {integrity: sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==} + + html-escaper@2.0.2: + resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + + human-signals@2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + import-local@3.2.0: + resolution: {integrity: sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==} + engines: {node: '>=8'} + hasBin: true + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + 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. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-generator-fn@2.1.0: + resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} + engines: {node: '>=6'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + istanbul-lib-coverage@3.2.2: + resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} + engines: {node: '>=8'} + + istanbul-lib-instrument@5.2.1: + resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==} + engines: {node: '>=8'} + + istanbul-lib-instrument@6.0.3: + resolution: {integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==} + engines: {node: '>=10'} + + istanbul-lib-report@3.0.1: + resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} + engines: {node: '>=10'} + + istanbul-lib-source-maps@4.0.1: + resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} + engines: {node: '>=10'} + + istanbul-reports@3.1.7: + resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} + engines: {node: '>=8'} + + jake@10.9.2: + resolution: {integrity: sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==} + engines: {node: '>=10'} + hasBin: true + + jest-changed-files@29.7.0: + resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-circus@29.7.0: + resolution: {integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-cli@29.7.0: + resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + hasBin: true + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + + jest-config@29.7.0: + resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@types/node': '*' + ts-node: '>=9.0.0' + peerDependenciesMeta: + '@types/node': + optional: true + ts-node: + optional: true + + jest-diff@29.7.0: + resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-docblock@29.7.0: + resolution: {integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-each@29.7.0: + resolution: {integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-environment-node@29.7.0: + resolution: {integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-get-type@29.6.3: + resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-haste-map@29.7.0: + resolution: {integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-leak-detector@29.7.0: + resolution: {integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-matcher-utils@29.7.0: + resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + 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} + + jest-mock@29.7.0: + resolution: {integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-pnp-resolver@1.2.3: + resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} + engines: {node: '>=6'} + peerDependencies: + jest-resolve: '*' + peerDependenciesMeta: + jest-resolve: + optional: true + + jest-regex-util@29.6.3: + resolution: {integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-resolve-dependencies@29.7.0: + resolution: {integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-resolve@29.7.0: + resolution: {integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-runner@29.7.0: + resolution: {integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-runtime@29.7.0: + resolution: {integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-snapshot@29.7.0: + resolution: {integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-util@29.7.0: + resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-validate@29.7.0: + resolution: {integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-watcher@29.7.0: + resolution: {integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-worker@29.7.0: + resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest@29.7.0: + resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + hasBin: true + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + + jiti@2.4.2: + resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} + hasBin: true + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@3.14.1: + resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} + hasBin: true + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + + json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + kleur@3.0.3: + resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} + engines: {node: '>=6'} + + leven@3.1.0: + resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} + engines: {node: '>=6'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + locate-path@5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} + + lodash.memoize@4.1.2: + resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} + + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + + make-dir@4.0.0: + resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} + engines: {node: '>=10'} + + make-error@1.3.6: + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + + makeerror@1.0.12: + resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} + + merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@5.1.6: + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + engines: {node: '>=10'} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + next-themes@0.4.6: + resolution: {integrity: sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==} + peerDependencies: + react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + + node-int64@0.4.0: + resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} + + node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + npm-run-path@4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=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'} + + 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-locate@4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} + + p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + 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-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + perfect-freehand@1.2.2: + resolution: {integrity: sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + pirates@4.0.7: + resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==} + engines: {node: '>= 6'} + + pkg-dir@4.2.0: + resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} + engines: {node: '>=8'} + + pretty-format@29.7.0: + resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + prompts@2.4.2: + resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} + engines: {node: '>= 6'} + + proxy-compare@3.0.1: + resolution: {integrity: sha512-V9plBAt3qjMlS1+nC8771KNf6oJ12gExvaxnNzN/9yVRLdTv/lc+oJlnSzrdYDAvBfTStPCoiaCOTmTs0adv7Q==} + + proxy-memoize@3.0.1: + resolution: {integrity: sha512-VDdG/VYtOgdGkWJx7y0o7p+zArSf2383Isci8C+BP3YXgMYDoPd3cCBjw0JdWb6YBb9sFiOPbAADDVTPJnh+9g==} + + pure-rand@6.1.0: + resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==} + + react-chartjs-2@5.3.0: + resolution: {integrity: sha512-UfZZFnDsERI3c3CZGxzvNJd02SHjaSJ8kgW1djn65H1KK8rehwTjyrRKOG3VTMG8wtHZ5rgAO5oTHtHi9GCCmw==} + peerDependencies: + chart.js: ^4.1.1 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + react-dom@19.1.0: + resolution: {integrity: sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==} + peerDependencies: + react: ^19.1.0 + + react-hook-form@7.57.0: + resolution: {integrity: sha512-RbEks3+cbvTP84l/VXGUZ+JMrKOS8ykQCRYdm5aYsxnDquL0vspsyNhGRO7pcH6hsZqWlPOjLye7rJqdtdAmlg==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^16.8.0 || ^17 || ^18 || ^19 + + react-icons@5.5.0: + resolution: {integrity: sha512-MEFcXdkP3dLo8uumGI5xN3lDFNsRtrjbOEKDLD7yv76v4wpnEq2Lt2qeHaQOr34I/wPN3s3+N08WkQ+CW37Xiw==} + peerDependencies: + react: '*' + + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + + react-is@18.3.1: + resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + + react-refresh@0.17.0: + resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==} + engines: {node: '>=0.10.0'} + + react@19.1.0: + resolution: {integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==} + engines: {node: '>=0.10.0'} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + resolve-cwd@3.0.0: + resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} + engines: {node: '>=8'} + + 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.exports@2.0.3: + resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==} + engines: {node: '>=10'} + + resolve@1.22.10: + resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + engines: {node: '>= 0.4'} + hasBin: true + + scheduler@0.26.0: + resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==} + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.7.2: + resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + engines: {node: '>=10'} + hasBin: true + + 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'} + + signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + + sisteransi@1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + source-map-support@0.5.13: + resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==} + + 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'} + + sprintf-js@1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + + stack-utils@2.0.6: + resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} + engines: {node: '>=10'} + + stackframe@1.3.4: + resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} + + string-length@4.0.2: + resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} + engines: {node: '>=10'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-bom@4.0.0: + resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==} + engines: {node: '>=8'} + + strip-final-newline@2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + stylis@4.2.0: + resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} + + 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-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + test-exclude@6.0.0: + resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} + engines: {node: '>=8'} + + tmpl@1.0.5: + resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + ts-jest@29.3.4: + resolution: {integrity: sha512-Iqbrm8IXOmV+ggWHOTEbjwyCf2xZlUMv5npExksXohL+tk8va4Fjhb+X2+Rt9NBmgO7bJ8WpnMLOwih/DnMlFA==} + engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@babel/core': '>=7.0.0-beta.0 <8' + '@jest/transform': ^29.0.0 + '@jest/types': ^29.0.0 + babel-jest: ^29.0.0 + esbuild: '*' + jest: ^29.0.0 + typescript: '>=4.3 <6' + peerDependenciesMeta: + '@babel/core': + optional: true + '@jest/transform': + optional: true + '@jest/types': + optional: true + babel-jest: + optional: true + esbuild: + optional: true + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + type-detect@4.0.8: + resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} + engines: {node: '>=4'} + + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + + type-fest@4.41.0: + resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==} + engines: {node: '>=16'} + + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + engines: {node: '>=14.17'} + hasBin: true + + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + + update-browserslist-db@1.1.3: + resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uqr@0.1.2: + resolution: {integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==} + + uuid@11.1.0: + resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==} + hasBin: true + + v8-to-istanbul@9.3.0: + resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==} + engines: {node: '>=10.12.0'} + + walker@1.0.8: + resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + write-file-atomic@4.0.2: + resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yaml@1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} + engines: {node: '>= 6'} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + + '@ark-ui/react@5.9.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@internationalized/date': 3.8.0 + '@zag-js/accordion': 1.12.2 + '@zag-js/anatomy': 1.12.2 + '@zag-js/angle-slider': 1.12.2 + '@zag-js/auto-resize': 1.12.2 + '@zag-js/avatar': 1.12.2 + '@zag-js/carousel': 1.12.2 + '@zag-js/checkbox': 1.12.2 + '@zag-js/clipboard': 1.12.2 + '@zag-js/collapsible': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/color-picker': 1.12.2 + '@zag-js/color-utils': 1.12.2 + '@zag-js/combobox': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/date-picker': 1.12.2(@internationalized/date@3.8.0) + '@zag-js/date-utils': 1.12.2(@internationalized/date@3.8.0) + '@zag-js/dialog': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/editable': 1.12.2 + '@zag-js/file-upload': 1.12.2 + '@zag-js/file-utils': 1.12.2 + '@zag-js/floating-panel': 1.12.2 + '@zag-js/focus-trap': 1.12.2 + '@zag-js/highlight-word': 1.12.2 + '@zag-js/hover-card': 1.12.2 + '@zag-js/i18n-utils': 1.12.2 + '@zag-js/listbox': 1.12.2 + '@zag-js/menu': 1.12.2 + '@zag-js/number-input': 1.12.2 + '@zag-js/pagination': 1.12.2 + '@zag-js/pin-input': 1.12.2 + '@zag-js/popover': 1.12.2 + '@zag-js/presence': 1.12.2 + '@zag-js/progress': 1.12.2 + '@zag-js/qr-code': 1.12.2 + '@zag-js/radio-group': 1.12.2 + '@zag-js/rating-group': 1.12.2 + '@zag-js/react': 1.12.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@zag-js/select': 1.12.2 + '@zag-js/signature-pad': 1.12.2 + '@zag-js/slider': 1.12.2 + '@zag-js/splitter': 1.12.2 + '@zag-js/steps': 1.12.2 + '@zag-js/switch': 1.12.2 + '@zag-js/tabs': 1.12.2 + '@zag-js/tags-input': 1.12.2 + '@zag-js/time-picker': 1.12.2(@internationalized/date@3.8.0) + '@zag-js/timer': 1.12.2 + '@zag-js/toast': 1.12.2 + '@zag-js/toggle': 1.12.2 + '@zag-js/toggle-group': 1.12.2 + '@zag-js/tooltip': 1.12.2 + '@zag-js/tour': 1.12.2 + '@zag-js/tree-view': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + + '@babel/code-frame@7.27.1': + dependencies: + '@babel/helper-validator-identifier': 7.27.1 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/compat-data@7.27.5': {} + + '@babel/core@7.27.4': + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.27.1 + '@babel/generator': 7.27.5 + '@babel/helper-compilation-targets': 7.27.2 + '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.4) + '@babel/helpers': 7.27.6 + '@babel/parser': 7.27.5 + '@babel/template': 7.27.2 + '@babel/traverse': 7.27.4 + '@babel/types': 7.27.6 + convert-source-map: 2.0.0 + debug: 4.4.1 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.27.5': + dependencies: + '@babel/parser': 7.27.5 + '@babel/types': 7.27.6 + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 3.1.0 + + '@babel/helper-compilation-targets@7.27.2': + dependencies: + '@babel/compat-data': 7.27.5 + '@babel/helper-validator-option': 7.27.1 + browserslist: 4.25.0 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-module-imports@7.27.1': + dependencies: + '@babel/traverse': 7.27.4 + '@babel/types': 7.27.6 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.27.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-module-imports': 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 + '@babel/traverse': 7.27.4 + transitivePeerDependencies: + - supports-color + + '@babel/helper-plugin-utils@7.27.1': {} + + '@babel/helper-string-parser@7.27.1': {} + + '@babel/helper-validator-identifier@7.27.1': {} + + '@babel/helper-validator-option@7.27.1': {} + + '@babel/helpers@7.27.6': + dependencies: + '@babel/template': 7.27.2 + '@babel/types': 7.27.6 + + '@babel/parser@7.27.5': + dependencies: + '@babel/types': 7.27.6 + + '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/runtime@7.27.6': {} + + '@babel/template@7.27.2': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/parser': 7.27.5 + '@babel/types': 7.27.6 + + '@babel/traverse@7.27.4': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/generator': 7.27.5 + '@babel/parser': 7.27.5 + '@babel/template': 7.27.2 + '@babel/types': 7.27.6 + debug: 4.4.1 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.27.6': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 + + '@bcoe/v8-coverage@0.2.3': {} + + '@chakra-ui/react@3.19.2(@emotion/react@11.14.0(@types/react@19.1.6)(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@ark-ui/react': 5.9.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@emotion/is-prop-valid': 1.3.1 + '@emotion/react': 11.14.0(@types/react@19.1.6)(react@19.1.0) + '@emotion/serialize': 1.3.3 + '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@19.1.0) + '@emotion/utils': 1.4.2 + '@pandacss/is-valid-prop': 0.53.6 + csstype: 3.1.3 + fast-safe-stringify: 2.1.1 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + + '@emotion/babel-plugin@11.13.5': + dependencies: + '@babel/helper-module-imports': 7.27.1 + '@babel/runtime': 7.27.6 + '@emotion/hash': 0.9.2 + '@emotion/memoize': 0.9.0 + '@emotion/serialize': 1.3.3 + 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.14.0': + dependencies: + '@emotion/memoize': 0.9.0 + '@emotion/sheet': 1.4.0 + '@emotion/utils': 1.4.2 + '@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.14.0(@types/react@19.1.6)(react@19.1.0)': + dependencies: + '@babel/runtime': 7.27.6 + '@emotion/babel-plugin': 11.13.5 + '@emotion/cache': 11.14.0 + '@emotion/serialize': 1.3.3 + '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@19.1.0) + '@emotion/utils': 1.4.2 + '@emotion/weak-memoize': 0.4.0 + hoist-non-react-statics: 3.3.2 + react: 19.1.0 + optionalDependencies: + '@types/react': 19.1.6 + transitivePeerDependencies: + - supports-color + + '@emotion/serialize@1.3.3': + dependencies: + '@emotion/hash': 0.9.2 + '@emotion/memoize': 0.9.0 + '@emotion/unitless': 0.10.0 + '@emotion/utils': 1.4.2 + csstype: 3.1.3 + + '@emotion/sheet@1.4.0': {} + + '@emotion/unitless@0.10.0': {} + + '@emotion/use-insertion-effect-with-fallbacks@1.2.0(react@19.1.0)': + dependencies: + react: 19.1.0 + + '@emotion/utils@1.4.2': {} + + '@emotion/weak-memoize@0.4.0': {} + + '@floating-ui/core@1.7.1': + dependencies: + '@floating-ui/utils': 0.2.9 + + '@floating-ui/dom@1.6.13': + dependencies: + '@floating-ui/core': 1.7.1 + '@floating-ui/utils': 0.2.9 + + '@floating-ui/utils@0.2.9': {} + + '@internationalized/date@3.8.0': + dependencies: + '@swc/helpers': 0.5.17 + + '@internationalized/number@3.6.1': + dependencies: + '@swc/helpers': 0.5.17 + + '@istanbuljs/load-nyc-config@1.1.0': + dependencies: + camelcase: 5.3.1 + find-up: 4.1.0 + get-package-type: 0.1.0 + js-yaml: 3.14.1 + resolve-from: 5.0.0 + + '@istanbuljs/schema@0.1.3': {} + + '@jest/console@29.7.0': + dependencies: + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + chalk: 4.1.2 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + slash: 3.0.0 + + '@jest/core@29.7.0(babel-plugin-macros@3.1.0)': + dependencies: + '@jest/console': 29.7.0 + '@jest/reporters': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + ansi-escapes: 4.3.2 + chalk: 4.1.2 + ci-info: 3.9.0 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-changed-files: 29.7.0 + jest-config: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-resolve-dependencies: 29.7.0 + jest-runner: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + jest-watcher: 29.7.0 + micromatch: 4.0.8 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-ansi: 6.0.1 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + - ts-node + + '@jest/environment@29.7.0': + dependencies: + '@jest/fake-timers': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + jest-mock: 29.7.0 + + '@jest/expect-utils@29.7.0': + dependencies: + jest-get-type: 29.6.3 + + '@jest/expect@29.7.0': + dependencies: + expect: 29.7.0 + jest-snapshot: 29.7.0 + transitivePeerDependencies: + - supports-color + + '@jest/fake-timers@29.7.0': + dependencies: + '@jest/types': 29.6.3 + '@sinonjs/fake-timers': 10.3.0 + '@types/node': 22.15.30 + jest-message-util: 29.7.0 + jest-mock: 29.7.0 + jest-util: 29.7.0 + + '@jest/globals@29.7.0': + dependencies: + '@jest/environment': 29.7.0 + '@jest/expect': 29.7.0 + '@jest/types': 29.6.3 + jest-mock: 29.7.0 + transitivePeerDependencies: + - supports-color + + '@jest/reporters@29.7.0': + dependencies: + '@bcoe/v8-coverage': 0.2.3 + '@jest/console': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@jridgewell/trace-mapping': 0.3.25 + '@types/node': 22.15.30 + chalk: 4.1.2 + collect-v8-coverage: 1.0.2 + exit: 0.1.2 + glob: 7.2.3 + graceful-fs: 4.2.11 + istanbul-lib-coverage: 3.2.2 + istanbul-lib-instrument: 6.0.3 + istanbul-lib-report: 3.0.1 + istanbul-lib-source-maps: 4.0.1 + istanbul-reports: 3.1.7 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + jest-worker: 29.7.0 + slash: 3.0.0 + string-length: 4.0.2 + strip-ansi: 6.0.1 + v8-to-istanbul: 9.3.0 + transitivePeerDependencies: + - supports-color + + '@jest/schemas@29.6.3': + dependencies: + '@sinclair/typebox': 0.27.8 + + '@jest/source-map@29.6.3': + dependencies: + '@jridgewell/trace-mapping': 0.3.25 + callsites: 3.1.0 + graceful-fs: 4.2.11 + + '@jest/test-result@29.7.0': + dependencies: + '@jest/console': 29.7.0 + '@jest/types': 29.6.3 + '@types/istanbul-lib-coverage': 2.0.6 + collect-v8-coverage: 1.0.2 + + '@jest/test-sequencer@29.7.0': + dependencies: + '@jest/test-result': 29.7.0 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + slash: 3.0.0 + + '@jest/transform@29.7.0': + dependencies: + '@babel/core': 7.27.4 + '@jest/types': 29.6.3 + '@jridgewell/trace-mapping': 0.3.25 + babel-plugin-istanbul: 6.1.1 + chalk: 4.1.2 + convert-source-map: 2.0.0 + fast-json-stable-stringify: 2.1.0 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + jest-regex-util: 29.6.3 + jest-util: 29.7.0 + micromatch: 4.0.8 + pirates: 4.0.7 + slash: 3.0.0 + write-file-atomic: 4.0.2 + transitivePeerDependencies: + - supports-color + + '@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': 22.15.30 + '@types/yargs': 17.0.33 + chalk: 4.1.2 + + '@jridgewell/gen-mapping@0.3.8': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.2.1': {} + + '@jridgewell/sourcemap-codec@1.5.0': {} + + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + + '@kurkle/color@0.3.4': {} + + '@module-federation/error-codes@0.14.0': {} + + '@module-federation/runtime-core@0.14.0': + dependencies: + '@module-federation/error-codes': 0.14.0 + '@module-federation/sdk': 0.14.0 + + '@module-federation/runtime-tools@0.14.0': + dependencies: + '@module-federation/runtime': 0.14.0 + '@module-federation/webpack-bundler-runtime': 0.14.0 + + '@module-federation/runtime@0.14.0': + dependencies: + '@module-federation/error-codes': 0.14.0 + '@module-federation/runtime-core': 0.14.0 + '@module-federation/sdk': 0.14.0 + + '@module-federation/sdk@0.14.0': {} + + '@module-federation/webpack-bundler-runtime@0.14.0': + dependencies: + '@module-federation/runtime': 0.14.0 + '@module-federation/sdk': 0.14.0 + + '@pandacss/is-valid-prop@0.53.6': {} + + '@rsbuild/core@1.3.22': + dependencies: + '@rspack/core': 1.3.12(@swc/helpers@0.5.17) + '@rspack/lite-tapable': 1.0.1 + '@swc/helpers': 0.5.17 + core-js: 3.42.0 + jiti: 2.4.2 + + '@rsbuild/plugin-react@1.3.2(@rsbuild/core@1.3.22)': + dependencies: + '@rsbuild/core': 1.3.22 + '@rspack/plugin-react-refresh': 1.4.3(react-refresh@0.17.0) + react-refresh: 0.17.0 + transitivePeerDependencies: + - webpack-hot-middleware + + '@rspack/binding-darwin-arm64@1.3.12': + optional: true + + '@rspack/binding-darwin-x64@1.3.12': + optional: true + + '@rspack/binding-linux-arm64-gnu@1.3.12': + optional: true + + '@rspack/binding-linux-arm64-musl@1.3.12': + optional: true + + '@rspack/binding-linux-x64-gnu@1.3.12': + optional: true + + '@rspack/binding-linux-x64-musl@1.3.12': + optional: true + + '@rspack/binding-win32-arm64-msvc@1.3.12': + optional: true + + '@rspack/binding-win32-ia32-msvc@1.3.12': + optional: true + + '@rspack/binding-win32-x64-msvc@1.3.12': + optional: true + + '@rspack/binding@1.3.12': + optionalDependencies: + '@rspack/binding-darwin-arm64': 1.3.12 + '@rspack/binding-darwin-x64': 1.3.12 + '@rspack/binding-linux-arm64-gnu': 1.3.12 + '@rspack/binding-linux-arm64-musl': 1.3.12 + '@rspack/binding-linux-x64-gnu': 1.3.12 + '@rspack/binding-linux-x64-musl': 1.3.12 + '@rspack/binding-win32-arm64-msvc': 1.3.12 + '@rspack/binding-win32-ia32-msvc': 1.3.12 + '@rspack/binding-win32-x64-msvc': 1.3.12 + + '@rspack/core@1.3.12(@swc/helpers@0.5.17)': + dependencies: + '@module-federation/runtime-tools': 0.14.0 + '@rspack/binding': 1.3.12 + '@rspack/lite-tapable': 1.0.1 + caniuse-lite: 1.0.30001721 + optionalDependencies: + '@swc/helpers': 0.5.17 + + '@rspack/lite-tapable@1.0.1': {} + + '@rspack/plugin-react-refresh@1.4.3(react-refresh@0.17.0)': + dependencies: + error-stack-parser: 2.1.4 + html-entities: 2.6.0 + react-refresh: 0.17.0 + + '@sinclair/typebox@0.27.8': {} + + '@sinonjs/commons@3.0.1': + dependencies: + type-detect: 4.0.8 + + '@sinonjs/fake-timers@10.3.0': + dependencies: + '@sinonjs/commons': 3.0.1 + + '@swc/helpers@0.5.17': + dependencies: + tslib: 2.8.1 + + '@types/babel__core@7.20.5': + dependencies: + '@babel/parser': 7.27.5 + '@babel/types': 7.27.6 + '@types/babel__generator': 7.27.0 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.20.7 + + '@types/babel__generator@7.27.0': + dependencies: + '@babel/types': 7.27.6 + + '@types/babel__template@7.4.4': + dependencies: + '@babel/parser': 7.27.5 + '@babel/types': 7.27.6 + + '@types/babel__traverse@7.20.7': + dependencies: + '@babel/types': 7.27.6 + + '@types/graceful-fs@4.1.9': + dependencies: + '@types/node': 22.15.30 + + '@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/node@22.15.30': + dependencies: + undici-types: 6.21.0 + + '@types/parse-json@4.0.2': {} + + '@types/react-dom@19.1.6(@types/react@19.1.6)': + dependencies: + '@types/react': 19.1.6 + + '@types/react@19.1.6': + dependencies: + csstype: 3.1.3 + + '@types/stack-utils@2.0.3': {} + + '@types/yargs-parser@21.0.3': {} + + '@types/yargs@17.0.33': + dependencies: + '@types/yargs-parser': 21.0.3 + + '@zag-js/accordion@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/anatomy@1.12.2': {} + + '@zag-js/angle-slider@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/rect-utils': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/aria-hidden@1.12.2': {} + + '@zag-js/auto-resize@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/avatar@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/carousel@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/scroll-snap': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/checkbox@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/clipboard@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/collapsible@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/collection@1.12.2': + dependencies: + '@zag-js/utils': 1.12.2 + + '@zag-js/color-picker@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/color-utils': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/color-utils@1.12.2': + dependencies: + '@zag-js/utils': 1.12.2 + + '@zag-js/combobox@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/aria-hidden': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/core@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/date-picker@1.12.2(@internationalized/date@3.8.0)': + dependencies: + '@internationalized/date': 3.8.0 + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/date-utils': 1.12.2(@internationalized/date@3.8.0) + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/live-region': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/date-utils@1.12.2(@internationalized/date@3.8.0)': + dependencies: + '@internationalized/date': 3.8.0 + + '@zag-js/dialog@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/aria-hidden': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-trap': 1.12.2 + '@zag-js/remove-scroll': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/dismissable@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + '@zag-js/interact-outside': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/dom-query@1.12.2': + dependencies: + '@zag-js/types': 1.12.2 + + '@zag-js/editable@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/interact-outside': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/file-upload@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/file-utils': 1.12.2 + '@zag-js/i18n-utils': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/file-utils@1.12.2': + dependencies: + '@zag-js/i18n-utils': 1.12.2 + + '@zag-js/floating-panel@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/rect-utils': 1.12.2 + '@zag-js/store': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/focus-trap@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/focus-visible@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/highlight-word@1.12.2': {} + + '@zag-js/hover-card@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/i18n-utils@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/interact-outside@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/listbox@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/live-region@1.12.2': {} + + '@zag-js/menu@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/rect-utils': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/number-input@1.12.2': + dependencies: + '@internationalized/number': 3.6.1 + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/pagination@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/pin-input@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/popover@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/aria-hidden': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-trap': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/remove-scroll': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/popper@1.12.2': + dependencies: + '@floating-ui/dom': 1.6.13 + '@zag-js/dom-query': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/presence@1.12.2': + dependencies: + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + + '@zag-js/progress@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/qr-code@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + proxy-memoize: 3.0.1 + uqr: 0.1.2 + + '@zag-js/radio-group@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/rating-group@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/react@1.12.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@zag-js/core': 1.12.2 + '@zag-js/store': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + + '@zag-js/rect-utils@1.12.2': {} + + '@zag-js/remove-scroll@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/scroll-snap@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/select@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/signature-pad@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + perfect-freehand: 1.2.2 + + '@zag-js/slider@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/splitter@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/steps@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/store@1.12.2': + dependencies: + proxy-compare: 3.0.1 + + '@zag-js/switch@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tabs@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tags-input@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/auto-resize': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/interact-outside': 1.12.2 + '@zag-js/live-region': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/time-picker@1.12.2(@internationalized/date@3.8.0)': + dependencies: + '@internationalized/date': 3.8.0 + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/timer@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/toast@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/toggle-group@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/toggle@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tooltip@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/store': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tour@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-trap': 1.12.2 + '@zag-js/interact-outside': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tree-view@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/types@1.12.2': + dependencies: + csstype: 3.1.3 + + '@zag-js/utils@1.12.2': {} + + ansi-escapes@4.3.2: + dependencies: + type-fest: 0.21.3 + + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@5.2.0: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + argparse@1.0.10: + dependencies: + sprintf-js: 1.0.3 + + async@3.2.6: {} + + babel-jest@29.7.0(@babel/core@7.27.4): + dependencies: + '@babel/core': 7.27.4 + '@jest/transform': 29.7.0 + '@types/babel__core': 7.20.5 + babel-plugin-istanbul: 6.1.1 + babel-preset-jest: 29.6.3(@babel/core@7.27.4) + chalk: 4.1.2 + graceful-fs: 4.2.11 + slash: 3.0.0 + transitivePeerDependencies: + - supports-color + + babel-plugin-istanbul@6.1.1: + dependencies: + '@babel/helper-plugin-utils': 7.27.1 + '@istanbuljs/load-nyc-config': 1.1.0 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-instrument: 5.2.1 + test-exclude: 6.0.0 + transitivePeerDependencies: + - supports-color + + babel-plugin-jest-hoist@29.6.3: + dependencies: + '@babel/template': 7.27.2 + '@babel/types': 7.27.6 + '@types/babel__core': 7.20.5 + '@types/babel__traverse': 7.20.7 + + babel-plugin-macros@3.1.0: + dependencies: + '@babel/runtime': 7.27.6 + cosmiconfig: 7.1.0 + resolve: 1.22.10 + + babel-preset-current-node-syntax@1.1.0(@babel/core@7.27.4): + dependencies: + '@babel/core': 7.27.4 + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.27.4) + '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.27.4) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.27.4) + '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.27.4) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.27.4) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.27.4) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.27.4) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.27.4) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.27.4) + + babel-preset-jest@29.6.3(@babel/core@7.27.4): + dependencies: + '@babel/core': 7.27.4 + babel-plugin-jest-hoist: 29.6.3 + babel-preset-current-node-syntax: 1.1.0(@babel/core@7.27.4) + + balanced-match@1.0.2: {} + + brace-expansion@1.1.11: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.1: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.25.0: + dependencies: + caniuse-lite: 1.0.30001721 + electron-to-chromium: 1.5.165 + node-releases: 2.0.19 + update-browserslist-db: 1.1.3(browserslist@4.25.0) + + bs-logger@0.2.6: + dependencies: + fast-json-stable-stringify: 2.1.0 + + bser@2.1.1: + dependencies: + node-int64: 0.4.0 + + buffer-from@1.1.2: {} + + callsites@3.1.0: {} + + camelcase@5.3.1: {} + + camelcase@6.3.0: {} + + caniuse-lite@1.0.30001721: {} + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + char-regex@1.0.2: {} + + chart.js@4.4.9: + dependencies: + '@kurkle/color': 0.3.4 + + ci-info@3.9.0: {} + + cjs-module-lexer@1.4.3: {} + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + co@4.6.0: {} + + collect-v8-coverage@1.0.2: {} + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + concat-map@0.0.1: {} + + convert-source-map@1.9.0: {} + + convert-source-map@2.0.0: {} + + core-js@3.42.0: {} + + cosmiconfig@7.1.0: + dependencies: + '@types/parse-json': 4.0.2 + import-fresh: 3.3.1 + parse-json: 5.2.0 + path-type: 4.0.0 + yaml: 1.10.2 + + create-jest@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0): + dependencies: + '@jest/types': 29.6.3 + chalk: 4.1.2 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-config: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + jest-util: 29.7.0 + prompts: 2.4.2 + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + csstype@3.1.3: {} + + dayjs@1.11.13: {} + + debug@4.4.1: + dependencies: + ms: 2.1.3 + + dedent@1.6.0(babel-plugin-macros@3.1.0): + optionalDependencies: + babel-plugin-macros: 3.1.0 + + deepmerge@4.3.1: {} + + detect-newline@3.1.0: {} + + diff-sequences@29.6.3: {} + + ejs@3.1.10: + dependencies: + jake: 10.9.2 + + electron-to-chromium@1.5.165: {} + + emittery@0.13.1: {} + + emoji-regex@8.0.0: {} + + error-ex@1.3.2: + dependencies: + is-arrayish: 0.2.1 + + error-stack-parser@2.1.4: + dependencies: + stackframe: 1.3.4 + + escalade@3.2.0: {} + + escape-string-regexp@2.0.0: {} + + escape-string-regexp@4.0.0: {} + + esprima@4.0.1: {} + + execa@5.1.1: + dependencies: + cross-spawn: 7.0.6 + get-stream: 6.0.1 + human-signals: 2.1.0 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + + exit@0.1.2: {} + + expect@29.7.0: + dependencies: + '@jest/expect-utils': 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + + fast-json-stable-stringify@2.1.0: {} + + fast-safe-stringify@2.1.1: {} + + fb-watchman@2.0.2: + dependencies: + bser: 2.1.1 + + filelist@1.0.4: + dependencies: + minimatch: 5.1.6 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-root@1.1.0: {} + + find-up@4.1.0: + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + gensync@1.0.0-beta.2: {} + + get-caller-file@2.0.5: {} + + get-package-type@0.1.0: {} + + get-stream@6.0.1: {} + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + + globals@11.12.0: {} + + graceful-fs@4.2.11: {} + + has-flag@4.0.0: {} + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hoist-non-react-statics@3.3.2: + dependencies: + react-is: 16.13.1 + + html-entities@2.6.0: {} + + html-escaper@2.0.2: {} + + human-signals@2.1.0: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + import-local@3.2.0: + dependencies: + pkg-dir: 4.2.0 + resolve-cwd: 3.0.0 + + imurmurhash@0.1.4: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + is-arrayish@0.2.1: {} + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-fullwidth-code-point@3.0.0: {} + + is-generator-fn@2.1.0: {} + + is-number@7.0.0: {} + + is-stream@2.0.1: {} + + isexe@2.0.0: {} + + istanbul-lib-coverage@3.2.2: {} + + istanbul-lib-instrument@5.2.1: + dependencies: + '@babel/core': 7.27.4 + '@babel/parser': 7.27.5 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.2 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + istanbul-lib-instrument@6.0.3: + dependencies: + '@babel/core': 7.27.4 + '@babel/parser': 7.27.5 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.2 + semver: 7.7.2 + transitivePeerDependencies: + - supports-color + + istanbul-lib-report@3.0.1: + dependencies: + istanbul-lib-coverage: 3.2.2 + make-dir: 4.0.0 + supports-color: 7.2.0 + + istanbul-lib-source-maps@4.0.1: + dependencies: + debug: 4.4.1 + istanbul-lib-coverage: 3.2.2 + source-map: 0.6.1 + transitivePeerDependencies: + - supports-color + + istanbul-reports@3.1.7: + dependencies: + html-escaper: 2.0.2 + istanbul-lib-report: 3.0.1 + + jake@10.9.2: + dependencies: + async: 3.2.6 + chalk: 4.1.2 + filelist: 1.0.4 + minimatch: 3.1.2 + + jest-changed-files@29.7.0: + dependencies: + execa: 5.1.1 + jest-util: 29.7.0 + p-limit: 3.1.0 + + jest-circus@29.7.0(babel-plugin-macros@3.1.0): + dependencies: + '@jest/environment': 29.7.0 + '@jest/expect': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + chalk: 4.1.2 + co: 4.6.0 + dedent: 1.6.0(babel-plugin-macros@3.1.0) + is-generator-fn: 2.1.0 + jest-each: 29.7.0 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + p-limit: 3.1.0 + pretty-format: 29.7.0 + pure-rand: 6.1.0 + slash: 3.0.0 + stack-utils: 2.0.6 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + + jest-cli@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0): + dependencies: + '@jest/core': 29.7.0(babel-plugin-macros@3.1.0) + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 + chalk: 4.1.2 + create-jest: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + exit: 0.1.2 + import-local: 3.2.0 + jest-config: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + jest-util: 29.7.0 + jest-validate: 29.7.0 + yargs: 17.7.2 + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + jest-config@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0): + dependencies: + '@babel/core': 7.27.4 + '@jest/test-sequencer': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.27.4) + chalk: 4.1.2 + ci-info: 3.9.0 + deepmerge: 4.3.1 + glob: 7.2.3 + graceful-fs: 4.2.11 + jest-circus: 29.7.0(babel-plugin-macros@3.1.0) + jest-environment-node: 29.7.0 + jest-get-type: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-runner: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + micromatch: 4.0.8 + parse-json: 5.2.0 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-json-comments: 3.1.1 + optionalDependencies: + '@types/node': 22.15.30 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + + jest-diff@29.7.0: + dependencies: + chalk: 4.1.2 + diff-sequences: 29.6.3 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + + jest-docblock@29.7.0: + dependencies: + detect-newline: 3.1.0 + + jest-each@29.7.0: + dependencies: + '@jest/types': 29.6.3 + chalk: 4.1.2 + jest-get-type: 29.6.3 + jest-util: 29.7.0 + pretty-format: 29.7.0 + + 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': 22.15.30 + jest-mock: 29.7.0 + jest-util: 29.7.0 + + jest-get-type@29.6.3: {} + + jest-haste-map@29.7.0: + dependencies: + '@jest/types': 29.6.3 + '@types/graceful-fs': 4.1.9 + '@types/node': 22.15.30 + anymatch: 3.1.3 + fb-watchman: 2.0.2 + graceful-fs: 4.2.11 + jest-regex-util: 29.6.3 + jest-util: 29.7.0 + jest-worker: 29.7.0 + micromatch: 4.0.8 + walker: 1.0.8 + optionalDependencies: + fsevents: 2.3.3 + + jest-leak-detector@29.7.0: + dependencies: + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + + jest-matcher-utils@29.7.0: + dependencies: + chalk: 4.1.2 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + + jest-message-util@29.7.0: + dependencies: + '@babel/code-frame': 7.27.1 + '@jest/types': 29.6.3 + '@types/stack-utils': 2.0.3 + chalk: 4.1.2 + graceful-fs: 4.2.11 + micromatch: 4.0.8 + 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': 22.15.30 + jest-util: 29.7.0 + + jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): + optionalDependencies: + jest-resolve: 29.7.0 + + jest-regex-util@29.6.3: {} + + jest-resolve-dependencies@29.7.0: + dependencies: + jest-regex-util: 29.6.3 + jest-snapshot: 29.7.0 + transitivePeerDependencies: + - supports-color + + jest-resolve@29.7.0: + dependencies: + chalk: 4.1.2 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0) + jest-util: 29.7.0 + jest-validate: 29.7.0 + resolve: 1.22.10 + resolve.exports: 2.0.3 + slash: 3.0.0 + + jest-runner@29.7.0: + dependencies: + '@jest/console': 29.7.0 + '@jest/environment': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + chalk: 4.1.2 + emittery: 0.13.1 + graceful-fs: 4.2.11 + jest-docblock: 29.7.0 + jest-environment-node: 29.7.0 + jest-haste-map: 29.7.0 + jest-leak-detector: 29.7.0 + jest-message-util: 29.7.0 + jest-resolve: 29.7.0 + jest-runtime: 29.7.0 + jest-util: 29.7.0 + jest-watcher: 29.7.0 + jest-worker: 29.7.0 + p-limit: 3.1.0 + source-map-support: 0.5.13 + transitivePeerDependencies: + - supports-color + + jest-runtime@29.7.0: + dependencies: + '@jest/environment': 29.7.0 + '@jest/fake-timers': 29.7.0 + '@jest/globals': 29.7.0 + '@jest/source-map': 29.6.3 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + chalk: 4.1.2 + cjs-module-lexer: 1.4.3 + collect-v8-coverage: 1.0.2 + glob: 7.2.3 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-mock: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + slash: 3.0.0 + strip-bom: 4.0.0 + transitivePeerDependencies: + - supports-color + + jest-snapshot@29.7.0: + dependencies: + '@babel/core': 7.27.4 + '@babel/generator': 7.27.5 + '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.27.4) + '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.27.4) + '@babel/types': 7.27.6 + '@jest/expect-utils': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + babel-preset-current-node-syntax: 1.1.0(@babel/core@7.27.4) + chalk: 4.1.2 + expect: 29.7.0 + graceful-fs: 4.2.11 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + natural-compare: 1.4.0 + pretty-format: 29.7.0 + semver: 7.7.2 + transitivePeerDependencies: + - supports-color + + jest-util@29.7.0: + dependencies: + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + 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-watcher@29.7.0: + dependencies: + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + ansi-escapes: 4.3.2 + chalk: 4.1.2 + emittery: 0.13.1 + jest-util: 29.7.0 + string-length: 4.0.2 + + jest-worker@29.7.0: + dependencies: + '@types/node': 22.15.30 + jest-util: 29.7.0 + merge-stream: 2.0.0 + supports-color: 8.1.1 + + jest@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0): + dependencies: + '@jest/core': 29.7.0(babel-plugin-macros@3.1.0) + '@jest/types': 29.6.3 + import-local: 3.2.0 + jest-cli: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + jiti@2.4.2: {} + + js-tokens@4.0.0: {} + + js-yaml@3.14.1: + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + + jsesc@3.1.0: {} + + json-parse-even-better-errors@2.3.1: {} + + json5@2.2.3: {} + + kleur@3.0.3: {} + + leven@3.1.0: {} + + lines-and-columns@1.2.4: {} + + locate-path@5.0.0: + dependencies: + p-locate: 4.1.0 + + lodash.memoize@4.1.2: {} + + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + + make-dir@4.0.0: + dependencies: + semver: 7.7.2 + + make-error@1.3.6: {} + + makeerror@1.0.12: + dependencies: + tmpl: 1.0.5 + + merge-stream@2.0.0: {} + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mimic-fn@2.1.0: {} + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.11 + + minimatch@5.1.6: + dependencies: + brace-expansion: 2.0.1 + + ms@2.1.3: {} + + natural-compare@1.4.0: {} + + next-themes@0.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0): + dependencies: + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + + node-int64@0.4.0: {} + + node-releases@2.0.19: {} + + normalize-path@3.0.0: {} + + npm-run-path@4.0.1: + dependencies: + path-key: 3.1.1 + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + onetime@5.1.2: + dependencies: + mimic-fn: 2.1.0 + + p-limit@2.3.0: + dependencies: + p-try: 2.2.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@4.1.0: + dependencies: + p-limit: 2.3.0 + + p-try@2.2.0: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-json@5.2.0: + dependencies: + '@babel/code-frame': 7.27.1 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + + path-exists@4.0.0: {} + + path-is-absolute@1.0.1: {} + + path-key@3.1.1: {} + + path-parse@1.0.7: {} + + path-type@4.0.0: {} + + perfect-freehand@1.2.2: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + pirates@4.0.7: {} + + pkg-dir@4.2.0: + dependencies: + find-up: 4.1.0 + + pretty-format@29.7.0: + dependencies: + '@jest/schemas': 29.6.3 + ansi-styles: 5.2.0 + react-is: 18.3.1 + + prompts@2.4.2: + dependencies: + kleur: 3.0.3 + sisteransi: 1.0.5 + + proxy-compare@3.0.1: {} + + proxy-memoize@3.0.1: + dependencies: + proxy-compare: 3.0.1 + + pure-rand@6.1.0: {} + + react-chartjs-2@5.3.0(chart.js@4.4.9)(react@19.1.0): + dependencies: + chart.js: 4.4.9 + react: 19.1.0 + + react-dom@19.1.0(react@19.1.0): + dependencies: + react: 19.1.0 + scheduler: 0.26.0 + + react-hook-form@7.57.0(react@19.1.0): + dependencies: + react: 19.1.0 + + react-icons@5.5.0(react@19.1.0): + dependencies: + react: 19.1.0 + + react-is@16.13.1: {} + + react-is@18.3.1: {} + + react-refresh@0.17.0: {} + + react@19.1.0: {} + + require-directory@2.1.1: {} + + resolve-cwd@3.0.0: + dependencies: + resolve-from: 5.0.0 + + resolve-from@4.0.0: {} + + resolve-from@5.0.0: {} + + resolve.exports@2.0.3: {} + + resolve@1.22.10: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + scheduler@0.26.0: {} + + semver@6.3.1: {} + + semver@7.7.2: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + signal-exit@3.0.7: {} + + sisteransi@1.0.5: {} + + slash@3.0.0: {} + + source-map-support@0.5.13: + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + + source-map@0.5.7: {} + + source-map@0.6.1: {} + + sprintf-js@1.0.3: {} + + stack-utils@2.0.6: + dependencies: + escape-string-regexp: 2.0.0 + + stackframe@1.3.4: {} + + string-length@4.0.2: + dependencies: + char-regex: 1.0.2 + strip-ansi: 6.0.1 + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-bom@4.0.0: {} + + strip-final-newline@2.0.0: {} + + strip-json-comments@3.1.1: {} + + stylis@4.2.0: {} + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + test-exclude@6.0.0: + dependencies: + '@istanbuljs/schema': 0.1.3 + glob: 7.2.3 + minimatch: 3.1.2 + + tmpl@1.0.5: {} + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + ts-jest@29.3.4(@babel/core@7.27.4)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.27.4))(jest@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0))(typescript@5.8.3): + dependencies: + bs-logger: 0.2.6 + ejs: 3.1.10 + fast-json-stable-stringify: 2.1.0 + jest: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + jest-util: 29.7.0 + json5: 2.2.3 + lodash.memoize: 4.1.2 + make-error: 1.3.6 + semver: 7.7.2 + type-fest: 4.41.0 + typescript: 5.8.3 + yargs-parser: 21.1.1 + optionalDependencies: + '@babel/core': 7.27.4 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.27.4) + + tslib@2.8.1: {} + + type-detect@4.0.8: {} + + type-fest@0.21.3: {} + + type-fest@4.41.0: {} + + typescript@5.8.3: {} + + undici-types@6.21.0: {} + + update-browserslist-db@1.1.3(browserslist@4.25.0): + dependencies: + browserslist: 4.25.0 + escalade: 3.2.0 + picocolors: 1.1.1 + + uqr@0.1.2: {} + + uuid@11.1.0: {} + + v8-to-istanbul@9.3.0: + dependencies: + '@jridgewell/trace-mapping': 0.3.25 + '@types/istanbul-lib-coverage': 2.0.6 + convert-source-map: 2.0.0 + + walker@1.0.8: + dependencies: + makeerror: 1.0.12 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrappy@1.0.2: {} + + write-file-atomic@4.0.2: + dependencies: + imurmurhash: 0.1.4 + signal-exit: 3.0.7 + + y18n@5.0.8: {} + + yallist@3.1.1: {} + + yaml@1.10.2: {} + + yargs-parser@21.1.1: {} + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + yocto-queue@0.1.0: {} diff --git "a/\320\2403212/zinchenko_408657/lab5/code/rsbuild.config.ts" "b/\320\2403212/zinchenko_408657/lab5/code/rsbuild.config.ts" new file mode 100644 index 0000000..31ba722 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/rsbuild.config.ts" @@ -0,0 +1,9 @@ +import { defineConfig } from '@rsbuild/core'; +import { pluginReact } from '@rsbuild/plugin-react'; + +export default defineConfig({ + plugins: [pluginReact()], + html: { + title: 'Лаб. 5' + } +}); diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/App.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/App.tsx" new file mode 100644 index 0000000..65d6217 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/App.tsx" @@ -0,0 +1,307 @@ +import { + Box, + Card, + Heading, + HStack, + Stack, + VStack, + Text, +} from "@chakra-ui/react"; +import { Provider } from "./components/ui/provider"; +import { useState, useMemo } from "react"; +import Chart from "./components/chart"; +import PointsTable, { Point } from "./components/PointsTable"; +import FunctionSelector from "./components/FunctionSelector"; +import DifferencesTable from "./components/DifferencesTable"; +import InterpolationResults from "./components/InterpolationResults"; +import { + finiteDifferences, + lagrangePolynomial, + gaussInterpolation, + predefinedFunctions, + newtonInterpolation +} from "./math/interpolation"; + +const App = () => { + const [points, setPoints] = useState([ + { x: 1, y: 2 }, + { x: 2, y: 4 }, + { x: 3, y: 6 }, + { x: 4, y: 8 }, + { x: 5, y: 10 }, + { x: 6, y: 12 }, + { x: 7, y: 14 }, + { x: 8, y: 16 }, + ]); + + const [inputMethod, setInputMethod] = useState<'table' | 'function'>('table'); + const [selectedFunction, setSelectedFunction] = useState(null); + + const [visibility, setVisibility] = useState({ + points: true, + original: true, + lagrange: true, + newton: true, + gauss: true, + }); + + const [errors, setErrors] = useState<{ + lagrange: string | null; + newton: string | null; + gauss: string | null; + }>({ + lagrange: null, + newton: null, + gauss: null + }); + + const interpolationPoints = useMemo(() => { + if (points.length === 0) return { + lagrange: [], + newton: [], + gauss: [] + }; + + const minX = Math.min(...points.map(p => p.x)); + const maxX = Math.max(...points.map(p => p.x)); + const step = (maxX - minX) / 100; + + const result = { + lagrange: [] as Point[], + newton: [] as Point[], + gauss: [] as Point[] + }; + + setErrors({ + lagrange: null, + newton: null, + gauss: null + }); + + for (let x = minX; x <= maxX; x += step) { + try { + result.lagrange.push({ + x, + y: lagrangePolynomial(points, x) + }); + } catch (error) { + setErrors(prev => ({ + ...prev, + lagrange: (error as Error).message + })); + } + + try { + result.newton.push({ + x, + y: newtonInterpolation(points, x) + }); + } catch (error) { + setErrors(prev => ({ + ...prev, + newton: (error as Error).message + })); + } + + try { + result.gauss.push({ + x, + y: gaussInterpolation(points, x) + }); + } catch (error) { + setErrors(prev => ({ + ...prev, + gauss: (error as Error).message + })); + } + } + + return result; + }, [points]); + + const originalPoints = useMemo(() => { + if (!selectedFunction || points.length === 0) return undefined; + + const minX = Math.min(...points.map(p => p.x)); + const maxX = Math.max(...points.map(p => p.x)); + const step = (maxX - minX) / 100; + const result: Point[] = []; + + const func = predefinedFunctions[selectedFunction].func; + for (let x = minX; x <= maxX; x += step) { + result.push({ + x, + y: func(x) + }); + } + + return result; + }, [selectedFunction, points]); + + const handleInputMethodChange = (method: 'table' | 'function') => { + setInputMethod(method); + if (method !== 'function') { + setSelectedFunction(null); + } + }; + + const toggleVisibility = (key: keyof typeof visibility) => { + setVisibility(prev => ({ + ...prev, + [key]: !prev[key] + })); + }; + + return ( + + + + + + + Интерполяция функций + + + handleInputMethodChange('table')} + > + Таблица + + handleInputMethodChange('function')} + > + Функция + + + + + {inputMethod === 'table' && ( + + )} + {inputMethod === 'function' && ( + + )} + + + + + + + + + + + + + + + + + + + + + + + Отображение графиков + + + Узлы интерполяции + toggleVisibility('points')} + /> + + {selectedFunction && ( + + Исходная функция + toggleVisibility('original')} + /> + + )} + + + Многочлен Лагранжа + {errors.lagrange && ( + {errors.lagrange} + )} + + toggleVisibility('lagrange')} + /> + + + + Многочлен Ньютона + {errors.newton && ( + {errors.newton} + )} + + toggleVisibility('newton')} + /> + + + + Многочлен Гаусса + {errors.gauss && ( + {errors.gauss} + )} + + toggleVisibility('gauss')} + /> + + + + + + + + + + + + + + + + ); +}; + +export default App; diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/components/DifferencesTable.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/components/DifferencesTable.tsx" new file mode 100644 index 0000000..42ae58e --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/components/DifferencesTable.tsx" @@ -0,0 +1,54 @@ +import { + Heading, + Table, + Text, + VStack, +} from "@chakra-ui/react"; +import { Point } from "../math/interpolation"; + +interface DifferencesTableProps { + points: Point[]; + differences: number[][]; +} + +const DifferencesTable = ({ points, differences }: DifferencesTableProps) => { + const maxDifferences = differences.length; + + return ( + + Таблица конечных разностей + + + + x + y + {Array.from({ length: maxDifferences - 1 }, (_, i) => ( + Δ{i + 1} + ))} + + + + {points.map((point, rowIndex) => ( + + {point.x.toFixed(4)} + {point.y.toFixed(4)} + {Array.from({ length: maxDifferences - 1 }, (_, colIndex) => { + if (rowIndex >= points.length - colIndex - 1) { + return ; + } + const diff = differences[colIndex + 1][rowIndex]; + return ( + + {diff.toFixed(4)} + + ); + })} + + ))} + + + + ); +}; + +export default DifferencesTable; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/components/FunctionSelector.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/components/FunctionSelector.tsx" new file mode 100644 index 0000000..2a42050 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/components/FunctionSelector.tsx" @@ -0,0 +1,134 @@ +import { + Button, + Box, + HStack, + Input, + VStack, + Text, +} from "@chakra-ui/react"; +import { predefinedFunctions } from "../math/interpolation"; +import { Point } from "../math/interpolation"; +import { useState, ChangeEvent } from "react"; +import { isValidNumber, parseNumber } from "../utils/validation"; + +interface FunctionSelectorProps { + onGenerate: (points: Point[]) => void; + onFunctionSelect: (func: keyof typeof predefinedFunctions | null) => void; +} + +const FunctionSelector = ({ onGenerate, onFunctionSelect }: FunctionSelectorProps) => { + const [selectedFunction, setSelectedFunction] = useState("sin"); + const [start, setStart] = useState("0"); + const [end, setEnd] = useState(Math.PI.toString()); + const [pointsCount, setPointsCount] = useState("8"); + const [error, setError] = useState(null); + + const validateAndGenerate = () => { + const startNum = parseNumber(start); + const endNum = parseNumber(end); + const countNum = parseNumber(pointsCount); + + if (startNum === null || endNum === null || countNum === null) { + setError("Пожалуйста, введите корректные числовые значения"); + return; + } + + if (!Number.isInteger(countNum) || countNum < 2) { + setError("Количество точек должно быть целым числом не меньше 2"); + return; + } + + if (startNum >= endNum) { + setError("Начало интервала должно быть меньше конца"); + return; + } + + setError(null); + const func = predefinedFunctions[selectedFunction].func; + const step = (endNum - startNum) / (countNum - 1); + const points: Point[] = []; + + for (let i = 0; i < countNum; i++) { + const x = startNum + i * step; + points.push({ + x, + y: func(x) + }); + } + + onFunctionSelect(selectedFunction); + onGenerate(points); + }; + + const handleInputChange = (value: string, setter: (value: string) => void) => { + if (isValidNumber(value)) { + setter(value); + setError(null); + } + }; + + return ( + + + Функция + + + + + + Начало интервала + ) => + handleInputChange(e.target.value, setStart) + } + /> + + + + Конец интервала + ) => + handleInputChange(e.target.value, setEnd) + } + /> + + + + + Количество точек (минимум 2) + ) => + handleInputChange(e.target.value, setPointsCount) + } + /> + + + {error && ( + + {error} + + )} + + + + ); +}; + +export default FunctionSelector; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/components/InterpolationResults.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/components/InterpolationResults.tsx" new file mode 100644 index 0000000..3847357 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/components/InterpolationResults.tsx" @@ -0,0 +1,174 @@ +import { + Box, + Button, + Input, + Table, + Text, + VStack, +} from "@chakra-ui/react"; +import { newtonGeneralInterpolation, Point } from "../math/interpolation"; +import { ChangeEvent, useState } from "react"; +import { + lagrangePolynomial, + gaussInterpolation, +} from "../math/interpolation"; +import { isValidNumber, parseNumber } from "../utils/validation"; + +interface InterpolationResultsProps { + points: Point[]; +} + +const InterpolationResults = ({ points }: InterpolationResultsProps) => { + const [x, setX] = useState("0"); + const [inputError, setInputError] = useState(null); + const [methodErrors, setMethodErrors] = useState<{ + lagrange: string | null; + newton: string | null; + gauss: string | null; + }>({ + lagrange: null, + newton: null, + gauss: null + }); + const [results, setResults] = useState<{ + lagrange: number | null; + newton: number | null; + gauss: number | null; + } | null>(null); + + const handleCalculate = () => { + const xNum = parseNumber(x); + if (xNum === null) { + setInputError("Пожалуйста, введите корректное числовое значение"); + return; + } + + if (points.length < 2) { + setInputError("Необходимо задать как минимум 2 точки для интерполяции"); + return; + } + + setInputError(null); + setMethodErrors({ + lagrange: null, + newton: null, + gauss: null + }); + + const newResults = { + lagrange: null as number | null, + newton: null as number | null, + gauss: null as number | null + }; + + try { + newResults.lagrange = lagrangePolynomial(points, xNum); + } catch (error) { + setMethodErrors(prev => ({ + ...prev, + lagrange: (error as Error).message + })); + } + + try { + newResults.newton = newtonGeneralInterpolation(points, xNum); + } catch (error) { + setMethodErrors(prev => ({ + ...prev, + newton: (error as Error).message + })); + } + + try { + newResults.gauss = gaussInterpolation(points, xNum); + } catch (error) { + setMethodErrors(prev => ({ + ...prev, + gauss: (error as Error).message + })); + } + + setResults(newResults); + }; + + const handleInputChange = (value: string) => { + if (isValidNumber(value)) { + setX(value); + setInputError(null); + } + }; + + return ( + + Интерполяция в точке + + + Значение X + ) => handleInputChange(e.target.value)} + _invalid={{ borderColor: 'red.500' }} + aria-invalid={!!inputError} + /> + + + {inputError && ( + + {inputError} + + )} + + + + {results && ( + + + + Метод + Значение + + + + + + + Многочлен Лагранжа + {methodErrors.lagrange && ( + {methodErrors.lagrange} + )} + + + {results.lagrange?.toFixed(6) ?? '—'} + + + + + Многочлен Ньютона + {methodErrors.newton && ( + {methodErrors.newton} + )} + + + {results.newton?.toFixed(6) ?? '—'} + + + + + Интерполяция Гаусса + {methodErrors.gauss && ( + {methodErrors.gauss} + )} + + + {results.gauss?.toFixed(6) ?? '—'} + + + + )} + + ); +}; + +export default InterpolationResults; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/components/PointsTable.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/components/PointsTable.tsx" new file mode 100644 index 0000000..3170a97 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/components/PointsTable.tsx" @@ -0,0 +1,181 @@ +import { + Button, + HStack, + Input, + Table, + Text, + VStack, +} from "@chakra-ui/react"; +import { ChangeEvent, useRef, useState } from "react"; +import { isValidNumber, parseNumber } from "../utils/validation"; + +export interface Point { + x: number; + y: number; +} + +interface PointsTableProps { + points: Point[]; + onChange: (points: Point[]) => void; +} + +interface PointInput { + x: string; + y: string; +} + +const PointsTable = ({ points, onChange }: PointsTableProps) => { + const [inputPoints, setInputPoints] = useState( + points.map(p => ({ x: p.x.toString(), y: p.y.toString() })) + ); + const [error, setError] = useState(null); + + const handlePointChange = (index: number, axis: 'x' | 'y', value: string) => { + if (!isValidNumber(value)) return; + + const newInputPoints = [...inputPoints]; + newInputPoints[index] = { + ...newInputPoints[index], + [axis]: value + }; + setInputPoints(newInputPoints); + setError(null); + + const validPoints = newInputPoints.map(p => ({ + x: parseNumber(p.x), + y: parseNumber(p.y) + })); + + if (validPoints.every(p => p.x !== null && p.y !== null)) { + onChange(validPoints.map(p => ({ x: p.x!, y: p.y! }))); + } + }; + + const addPoint = () => { + setInputPoints([...inputPoints, { x: "0", y: "0" }]); + }; + + const removePoint = () => { + if (inputPoints.length <= 1) return; + setInputPoints(inputPoints.slice(0, -1)); + }; + + const handleFileChange = (e: ChangeEvent) => { + const file = e.target.files?.[0]; + if (!file) return; + + const reader = new FileReader(); + reader.onload = (event) => { + const text = event.target?.result as string; + const lines = text.split('\n') + .map(line => line.trim()) + .filter(line => line.length > 0); + + try { + const newPoints: PointInput[] = lines.map(line => { + const [x, y] = line.split(','); + if (!isValidNumber(x) || !isValidNumber(y)) { + throw new Error("Некорректный формат данных"); + } + return { x, y }; + }); + + const validPoints = newPoints.map(p => ({ + x: parseNumber(p.x), + y: parseNumber(p.y) + })); + + if (validPoints.every(p => p.x !== null && p.y !== null)) { + setInputPoints(newPoints); + onChange(validPoints.map(p => ({ x: p.x!, y: p.y! }))); + setError(null); + } else { + setError("Некорректные числовые значения в файле"); + } + } catch (err) { + setError("Ошибка при чтении файла"); + } + }; + reader.readAsText(file); + }; + + const downloadRef = useRef(null); + + return ( + + + Точки ({inputPoints.length}) + + + + + + + + + {error && ( + + {error} + + )} + + + + + + X + Y + + + + {inputPoints.map((point, index) => ( + + {index + 1} + + handlePointChange(index, 'x', e.target.value)} + /> + + + handlePointChange(index, 'y', e.target.value)} + /> + + + ))} + + + + ); +}; + +export default PointsTable; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/components/chart.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/components/chart.tsx" new file mode 100644 index 0000000..aa029af --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/components/chart.tsx" @@ -0,0 +1,187 @@ +import { + Chart as ChartJS, + CategoryScale, + LinearScale, + PointElement, + LineElement, + Title, + Tooltip, + Legend, +} from 'chart.js'; +import { Line } from 'react-chartjs-2'; + +ChartJS.register( + CategoryScale, + LinearScale, + PointElement, + LineElement, + Title, + Tooltip, + Legend +); + +const PADDING_FACTOR = 0.1; + +export const options = { + responsive: true, + maintainAspectRatio: false, + plugins: { + legend: { + display: true, + position: 'top' as const, + }, + title: { + display: true, + text: '', + } + }, + scales: { + x: { + type: 'linear' as const, + display: true, + title: { + display: true, + text: 'X' + } + }, + y: { + display: true, + title: { + display: true, + text: 'Y' + } + } + } +}; + +const COLORS = { + points: { border: 'rgb(53, 162, 235)', background: 'rgba(53, 162, 235, 0.5)' }, + original: { border: 'rgb(75, 192, 192)', background: 'rgba(75, 192, 192, 0.5)' }, + lagrange: { border: 'rgb(255, 99, 132)', background: 'rgba(255, 99, 132, 0.5)' }, + newton: { border: 'rgb(255, 159, 64)', background: 'rgba(255, 159, 64, 0.5)' }, + gauss: { border: 'rgb(153, 102, 255)', background: 'rgba(153, 102, 255, 0.5)' }, +}; + +export interface ChartProps { + title: string; + points: Array<{ x: number; y: number }>; + interpolationPoints: { + lagrange: Array<{ x: number; y: number }>; + newton: Array<{ x: number; y: number }>; + gauss: Array<{ x: number; y: number }>; + }; + originalPoints?: Array<{ x: number; y: number }>; + visibility: { + points: boolean; + original: boolean; + lagrange: boolean; + newton: boolean; + gauss: boolean; + }; +} + +const Chart = (props: ChartProps) => { + const datasets = []; + + if (props.visibility.points) { + datasets.push({ + label: 'Узлы интерполяции', + data: props.points, + borderColor: COLORS.points.border, + backgroundColor: COLORS.points.background, + pointRadius: 5, + showLine: false, + }); + } + + if (props.visibility.lagrange) { + datasets.push({ + label: 'Многочлен Лагранжа', + data: props.interpolationPoints.lagrange, + borderColor: COLORS.lagrange.border, + backgroundColor: COLORS.lagrange.background, + pointRadius: 0, + borderWidth: 2, + }); + } + + if (props.visibility.newton) { + datasets.push({ + label: 'Многочлен Ньютона', + data: props.interpolationPoints.newton, + borderColor: COLORS.newton.border, + backgroundColor: COLORS.newton.background, + pointRadius: 0, + borderWidth: 2, + }); + } + + if (props.visibility.gauss) { + datasets.push({ + label: 'Многочлен Гаусса', + data: props.interpolationPoints.gauss, + borderColor: COLORS.gauss.border, + backgroundColor: COLORS.gauss.background, + pointRadius: 0, + borderWidth: 2, + }); + } + + if (props.originalPoints && props.visibility.original) { + datasets.unshift({ + label: 'Исходная функция', + data: props.originalPoints, + borderColor: COLORS.original.border, + backgroundColor: COLORS.original.background, + pointRadius: 0, + borderWidth: 2, + }); + } + + let minY = Infinity; + let maxY = -Infinity; + + if (props.originalPoints) { + props.originalPoints.forEach(point => { + minY = Math.min(minY, point.y); + maxY = Math.max(maxY, point.y); + }); + } else { + props.points.forEach(point => { + minY = Math.min(minY, point.y); + maxY = Math.max(maxY, point.y); + }); + } + + const padding = (maxY - minY) * PADDING_FACTOR; + minY -= padding; + maxY += padding; + + return ( + + ); +}; + +export default Chart; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/color-mode.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/color-mode.tsx" new file mode 100644 index 0000000..f93feab --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/color-mode.tsx" @@ -0,0 +1,107 @@ +"use client" + +import type { IconButtonProps, SpanProps } from "@chakra-ui/react" +import { ClientOnly, IconButton, Skeleton, Span } from "@chakra-ui/react" +import { ThemeProvider, useTheme } from "next-themes" +import type { ThemeProviderProps } from "next-themes" +import * as React from "react" +import { LuMoon, LuSun } from "react-icons/lu" + +export interface ColorModeProviderProps extends ThemeProviderProps {} + +export function ColorModeProvider(props: ColorModeProviderProps) { + return ( + + ) +} + +export type ColorMode = "light" | "dark" + +export interface UseColorModeReturn { + colorMode: ColorMode + setColorMode: (colorMode: ColorMode) => void + toggleColorMode: () => void +} + +export function useColorMode(): UseColorModeReturn { + const { resolvedTheme, setTheme } = useTheme() + const toggleColorMode = () => { + setTheme(resolvedTheme === "dark" ? "light" : "dark") + } + return { + colorMode: resolvedTheme as ColorMode, + setColorMode: setTheme, + toggleColorMode, + } +} + +export function useColorModeValue(light: T, dark: T) { + const { colorMode } = useColorMode() + return colorMode === "dark" ? dark : light +} + +export function ColorModeIcon() { + const { colorMode } = useColorMode() + return colorMode === "dark" ? : +} + +interface ColorModeButtonProps extends Omit {} + +export const ColorModeButton = React.forwardRef< + HTMLButtonElement, + ColorModeButtonProps +>(function ColorModeButton(props, ref) { + const { toggleColorMode } = useColorMode() + return ( + }> + + + + + ) +}) + +export const LightMode = React.forwardRef( + function LightMode(props, ref) { + return ( + + ) + }, +) + +export const DarkMode = React.forwardRef( + function DarkMode(props, ref) { + return ( + + ) + }, +) diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/provider.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/provider.tsx" new file mode 100644 index 0000000..fd0331b --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/provider.tsx" @@ -0,0 +1,15 @@ +"use client" + +import { ChakraProvider, defaultSystem } from "@chakra-ui/react" +import { + ColorModeProvider, + type ColorModeProviderProps, +} from "./color-mode" + +export function Provider(props: ColorModeProviderProps) { + return ( + + + + ) +} diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/toaster.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/toaster.tsx" new file mode 100644 index 0000000..df6c2c3 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/toaster.tsx" @@ -0,0 +1,43 @@ +"use client" + +import { + Toaster as ChakraToaster, + Portal, + Spinner, + Stack, + Toast, + createToaster, +} from "@chakra-ui/react" + +export const toaster = createToaster({ + placement: "bottom-end", + pauseOnPageIdle: true, +}) + +export const Toaster = () => { + return ( + + + {(toast) => ( + + {toast.type === "loading" ? ( + + ) : ( + + )} + + {toast.title && {toast.title}} + {toast.description && ( + {toast.description} + )} + + {toast.action && ( + {toast.action.label} + )} + {toast.meta?.closable && } + + )} + + + ) +} diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/tooltip.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/tooltip.tsx" new file mode 100644 index 0000000..43a8a6c --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/components/ui/tooltip.tsx" @@ -0,0 +1,46 @@ +import { Tooltip as ChakraTooltip, Portal } from "@chakra-ui/react" +import * as React from "react" + +export interface TooltipProps extends ChakraTooltip.RootProps { + showArrow?: boolean + portalled?: boolean + portalRef?: React.RefObject + content: React.ReactNode + contentProps?: ChakraTooltip.ContentProps + disabled?: boolean +} + +export const Tooltip = React.forwardRef( + function Tooltip(props, ref) { + const { + showArrow, + children, + disabled, + portalled = true, + content, + contentProps, + portalRef, + ...rest + } = props + + if (disabled) return children + + return ( + + {children} + + + + {showArrow && ( + + + + )} + {content} + + + + + ) + }, +) diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/env.d.ts" "b/\320\2403212/zinchenko_408657/lab5/code/src/env.d.ts" new file mode 100644 index 0000000..b0ac762 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/env.d.ts" @@ -0,0 +1 @@ +/// diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/index.tsx" "b/\320\2403212/zinchenko_408657/lab5/code/src/index.tsx" new file mode 100644 index 0000000..55f29bf --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/index.tsx" @@ -0,0 +1,13 @@ +import React from 'react'; +import ReactDOM from 'react-dom/client'; +import App from './App'; + +const rootEl = document.getElementById('root'); +if (rootEl) { + const root = ReactDOM.createRoot(rootEl); + root.render( + + + , + ); +} diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/math/interpolation.ts" "b/\320\2403212/zinchenko_408657/lab5/code/src/math/interpolation.ts" new file mode 100644 index 0000000..832d43e --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/math/interpolation.ts" @@ -0,0 +1,324 @@ +export interface Point { + x: number; + y: number; +} + +function validatePoints(points: Point[], minPoints: number = 2): void { + if (!Array.isArray(points)) { + throw new Error('Ожидается массив точек'); + } + if (points.length < minPoints) { + throw new Error(`Требуется как минимум ${minPoints} точек для интерполяции`); + } + if (points.some(p => typeof p.x !== 'number' || typeof p.y !== 'number' || isNaN(p.x) || isNaN(p.y))) { + throw new Error('Все координаты точек должны быть числами'); + } + + const xValues = points.map(p => p.x); + if (new Set(xValues).size !== points.length) { + throw new Error('Все x-координаты должны быть различны'); + } +} + +export function lagrangePolynomial(points: Point[], x: number): number { + validatePoints(points); + if (typeof x !== 'number' || isNaN(x)) { + throw new Error('Значение x должно быть числом'); + } + + const n = points.length; + let result = 0; + for (let i = 0; i < n; i++) { + let term = points[i].y; + for (let j = 0; j < n; j++) { + if (j !== i) { + const denominator = points[i].x - points[j].x; + if (Math.abs(denominator) < 1e-10) { + throw new Error('Деление на ноль при вычислении многочлена Лагранжа'); + } + term *= (x - points[j].x) / denominator; + } + } + result += term; + } + return result; +} + +export function finiteDifferences(points: Point[]): number[][] { + validatePoints(points); + const pts = [...points].sort((a, b) => a.x - b.x); + const n = pts.length; + + const h = pts[1].x - pts[0].x; + for (let i = 2; i < n; i++) { + if (Math.abs((pts[i].x - pts[i - 1].x) - h) > 1e-8) { + throw new Error('Узлы должны быть равноотстоящими для вычисления конечных разностей'); + } + } + + const diffs: number[][] = Array.from({ length: n }, () => Array(n).fill(0)); + + for (let i = 0; i < n; i++) { + diffs[0][i] = pts[i].y; + } + + for (let k = 1; k < n; k++) { + for (let i = 0; i < n - k; i++) { + diffs[k][i] = diffs[0][i + k] - diffs[0][i]; + + if (k > 1) { + diffs[k][i] = diffs[k - 1][i + 1] - diffs[k - 1][i]; + } + } + } + + return diffs; +} + +export function newtonForwardInterpolation( + points: Point[], + x: number +): number { + const n = points.length; + if (n === 0) { + throw new Error('Нет точек для интерполяции'); + } + if (n === 1) { + return points[0].y; + } + const pts = [...points].sort((a, b) => a.x - b.x); + const h = pts[1].x - pts[0].x; + for (let i = 2; i < n; i++) { + if (Math.abs((pts[i].x - pts[i - 1].x) - h) > 1e-8) { + throw new Error('Узлы не равноотстоящие, используйте общий многочлен Ньютона'); + } + } + const x0 = pts[0].x; + const t = (x - x0) / h; + const diffs = finiteDifferences(pts); + + let result = diffs[0][0]; + let tTerm = 1; + for (let k = 1; k < n; k++) { + tTerm *= (t - (k - 1)); + const deltaY = diffs[k][0]; + result += (tTerm / factorial(k)) * deltaY; + } + return result; +} + +export function newtonBackwardInterpolation( + points: Point[], + x: number +): number { + const n = points.length; + if (n === 0) { + throw new Error('Нет точек для интерполяции'); + } + if (n === 1) { + return points[0].y; + } + const pts = [...points].sort((a, b) => a.x - b.x); + const h = pts[1].x - pts[0].x; + for (let i = 2; i < n; i++) { + if (Math.abs((pts[i].x - pts[i - 1].x) - h) > 1e-8) { + throw new Error('Узлы не равноотстоящие, используйте общий многочлен Ньютона'); + } + } + const xn = pts[n - 1].x; + const t = (x - xn) / h; + const diffs = finiteDifferences(pts); + let result = diffs[0][n - 1]; + let tTerm = 1; + for (let k = 1; k < n; k++) { + tTerm *= (t + (k - 1)); + const deltaY = diffs[k][n - 1 - (k)]; + result += (tTerm / factorial(k)) * deltaY; + } + return result; +} + +export function newtonGeneralInterpolation( + points: Point[], + x: number +): number { + validatePoints(points); + if (typeof x !== 'number' || isNaN(x)) { + throw new Error('Значение x должно быть числом'); + } + + const n = points.length; + const pts = [...points].sort((a, b) => a.x - b.x); + + const divDiff: number[][] = Array.from({ length: n }, () => Array(n).fill(0)); + + for (let i = 0; i < n; i++) { + divDiff[i][0] = pts[i].y; + } + + for (let j = 1; j < n; j++) { + for (let i = 0; i < n - j; i++) { + const numerator = divDiff[i + 1][j - 1] - divDiff[i][j - 1]; + const denominator = pts[i + j].x - pts[i].x; + if (Math.abs(denominator) < 1e-10) { + throw new Error('Деление на ноль при вычислении разделенных разностей'); + } + divDiff[i][j] = numerator / denominator; + } + } + + let result = divDiff[0][0]; + let term = 1; + for (let k = 1; k < n; k++) { + term *= x - pts[k - 1].x; + result += divDiff[0][k] * term; + } + return result; +} + + +export function newtonInterpolation(points: Point[], x: number): number { + validatePoints(points); + if (typeof x !== 'number' || isNaN(x)) { + throw new Error('Значение x должно быть числом'); + } + + const n = points.length; + if (n === 0) { + throw new Error('Нет точек для интерполяции'); + } + if (n === 1) { + return points[0].y; + } + + const pts = [...points].sort((a, b) => a.x - b.x); + + const h = pts[1].x - pts[0].x; + let isEquidistant = true; + for (let i = 2; i < n; i++) { + if (Math.abs((pts[i].x - pts[i - 1].x) - h) > 1e-8) { + isEquidistant = false; + break; + } + } + + if (!isEquidistant) { + return newtonGeneralInterpolation(pts, x); + } + + const xMin = pts[0].x; + const xMax = pts[n - 1].x; + const xMid = (xMin + xMax) / 2; + + if (x <= xMid) { + return newtonForwardInterpolation(pts, x); + } else { + return newtonBackwardInterpolation(pts, x); + } +} + +export function gaussInterpolation(points: Point[], x: number): number { + const n = points.length; + if (n < 1) { + return 0; + } else if (n === 1) { + return points[0].y; + } + + const pts = [...points].sort((a, b) => a.x - b.x); + const h = pts[1].x - pts[0].x; + for (let i = 2; i < n; i++) { + if (Math.abs((pts[i].x - pts[i - 1].x) - h) > 1e-8) { + throw new Error('Узлы должны быть равноотстоящими для формулы Гаусса'); + } + } + + const i0 = Math.floor((n - 1) / 2); + const x0 = pts[i0].x; + const y0 = pts[i0].y; + + const t = (x - x0) / h; + + const diffs = finiteDifferences(pts); + + let result = y0; + + if (x >= x0) { + for (let k = 1; k < n; k++) { + const m = Math.floor(k / 2); + let numerator = 1; + + if (k % 2 === 1) { + for (let j = -m; j <= m; j++) { + numerator *= (t + j); + } + const diffIndex = i0 - m; + if (diffIndex < 0 || diffIndex >= diffs[k].length) { + break; + } + result += (numerator / factorial(k)) * diffs[k][diffIndex]; + } else { + for (let j = - (m - 1); j <= m; j++) { + numerator *= (t + j); + } + const diffIndex = i0 - m; + if (diffIndex < 0 || diffIndex >= diffs[k].length) { + break; + } + result += (numerator / factorial(k)) * diffs[k][diffIndex]; + } + } + + return result; + } else { + for (let k = 1; k < n; k++) { + const m = Math.floor(k / 2); + let numerator = 1; + + if (k % 2 === 1) { + for (let j = -m; j <= m + 1; j++) { + numerator *= (t + j); + } + const diffIndex = i0 - (m + 1); + if (diffIndex < 0 || diffIndex >= diffs[k].length) { + break; + } + result += (numerator / factorial(k)) * diffs[k][diffIndex]; + } else { + for (let j = - (m - 1); j <= m; j++) { + numerator *= (t + j); + } + const diffIndex = i0 - m; + if (diffIndex < 0 || diffIndex >= diffs[k].length) { + break; + } + result += (numerator / factorial(k)) * diffs[k][diffIndex]; + } + } + + return result; + } +} + +function factorial(k: number): number { + if (k < 0) { + throw new Error('Неверный аргумент для factorial'); + } + let result = 1; + for (let i = 2; i <= k; i++) { + result *= i; + } + return result; +} + +export const predefinedFunctions = { + sin: { + name: 'sin(x)', + func: Math.sin, + }, + polynomial: { + name: 'x^7 - 2x^5 + 3x^3 - 4x', + func: (x: number) => Math.pow(x, 7) - 2 * Math.pow(x, 5) + 3 * Math.pow(x, 3) - 4 * x, + }, +}; + diff --git "a/\320\2403212/zinchenko_408657/lab5/code/src/utils/validation.ts" "b/\320\2403212/zinchenko_408657/lab5/code/src/utils/validation.ts" new file mode 100644 index 0000000..366733e --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/src/utils/validation.ts" @@ -0,0 +1,12 @@ +export const isValidNumber = (value: string): boolean => { + // Разрешаем пустую строку, минус в начале, десятичную точку + const regex = /^-?\d*\.?\d*$/; + return regex.test(value); +}; + +export const parseNumber = (value: string): number | null => { + if (!isValidNumber(value)) return null; + if (value === '' || value === '-') return null; + const num = Number(value); + return isNaN(num) ? null : num; +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab5/code/tsconfig.json" "b/\320\2403212/zinchenko_408657/lab5/code/tsconfig.json" new file mode 100644 index 0000000..e53d1e5 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab5/code/tsconfig.json" @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "lib": ["DOM", "ES2020"], + "jsx": "react-jsx", + "target": "ES2020", + "noEmit": true, + "skipLibCheck": true, + "useDefineForClassFields": true, + + /* modules */ + "module": "ESNext", + "isolatedModules": true, + "resolveJsonModule": true, + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + + /* type checking */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true + }, + "include": ["src"] +} diff --git "a/\320\2403212/zinchenko_408657/lab5/report.pdf" "b/\320\2403212/zinchenko_408657/lab5/report.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..efe7ec1852bb27fded0a03fc5391a0490841196b GIT binary patch literal 142923 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�G~xUedr-u%lU zgAwC#2^!o3jX@OZ6LE_UvtoR)HsDQw+SjZ42s;v`8XL!1};Vp-bT2&xwbd2Mv-6c`b|%(?KB zcJS(}OA^co!Z4Y?NjjxqNS{ut*<}gzl3PNGgF6XwQcfLrUm)@phw4yVwY@6;0x{uu zp!g}@taM8IHioeVQ|-)_u4ILq;ZXfVV0j5uVuFpp+RM^+=yIgS*;_b*cJFxkqj=Lw zb{Qn=>;(x9O@gZLqAmHVrsR;nEC!c@Xtk3iXh&xX*9pDFxy-{8C7(sc0iOeL)60Rc zm4VBEt}BV>`H^wI5t-qF9@8IL-N$0TleuTpyvr89TLk^DbaCiC;N)&miLda*Q-AqB z>cY;EYgF&kcDU`t=4uxhO&=R28XDHR6WpHZo72L4QP1hZH}6FpOC_FKZynf#d&j+h zQj4^|=Tgs}xH5b;BP+f(|ME56vl9o$Pk9pCjvK21_d*#z18s*LEa)MmTds(B$dt- z&Ep4kXp@yt`4$8B_u5tD|4RJ8)DuDA3Tp_9Vt`1V%t4bIr|!c?!FzUW9<5|4~% zUw5%SSnstB*vv{FnJj_Gra3<^^n6){t3E-%VDMVYm@7CwunvH&k>Lz!zQId*t+3qt z0YTdTJAH}*6VV1SBzgk7tH?ZOZ^|eNuV0q%=P6vU;|@&D>__msx+E_vhG;_j*EcsA|U&H1oo=H@1ty@nvnt>(mVSz*0|%$;1G?4P<<@}0lX zk+%Il>6~-QCbZAlTcw=7snSwqgddRh&a>T_A-RWJ>F{H99OA~-=aDg|S`7G6E+J_tysftx4lJou;`+0ls3q6JM4>=j& z=fw*7;Jf+I{jb;2;}l2DW!OF6$ImgfSVT34BY(75K4FC7jWRnT^-hx}aL(+?h|ds~F3v{QBQve?bTK>UW5 z(HJsEE?O>rxej_63g+bRkYRgs7Kz*`GyAE2F7xaq?aGfK-rDh(5m@A8U2Q*z;eM4& zmwEQ*=&v(8IzUT^tvgm58W{wb?HD5t=yGLS#D`mE}8id2@Iry{!Y zTc{1=%WcZz#fsL>7L`xiUFy( zgG*cWcehQlD1n39${kSc3)n2mY#8a%6j$L7QcqEL`-VX_J(1Y{3AXW<*?7pE)a$kf zIQ{EDyyo~k+cvh(P0G)zIelF&G{S;cr`ovTKrS!Mu`>!4fAMy7lZj6~)+DTjR!0g8@Rr^HP&;=dfw#BJAw&>|oE5f!;Ti70DE;aAmp}9NHz)MTXh#h@|3Z+#Y!y+I`J*i=k*jM`RjV-H`ozHk#)uyiUq^SB-+BnGY5?+H7`F5RV$6^d8Zp$HXd=3Z^je@ ze(ih-F$|nL=AZYObbm5yvl;B|_MzMr)a&uy|qLfL1?hvz;f#9W-KfLea?ofRh98HUh9sJ;Szdng zCe350HSU*$*26ztH0~#OuiG1Xc~mza``&s7Ehb^hNmj%kz;f*uV7YU8&s?eHxv!F7 z*ZQx+zFV&faTCrO7ACSHUp>}g2BAxS&4Bf-9^rk2!CSF#Cj8}bxv)i%(Pqonav3sz`Q2ttjuYZ2c*Vp?e50g^_-EHpgi|?%a=zW;&!Bd%8>!Zm=cO__ z^Kdse`e#y2MXiD#J#7U7EN07n8RTsqu7;gL;8M1{hxwhc zlb62oNlwk!d!>_sFAf=$+w3PAGOj;*xC~596PL|-giTFiRn8hOwD*~2TX8C-#FbX8 zOc!@-DS@!V5^#wtC@U!heShKQY5LU)g~zXYlK-K3?Qn!;gBV&jXg)}h^GV;S1RPiO zW?4;2dhPOM7ZRyU(q}HysRljMPkN?J)z!<_rsnv4DLFiPoZ}4#EzQ^MnMt~RQ`12P zmoHP(LHRVLbS=|A#_7?XU&f4r!1y(w@0KGR1=Ra?HOC5z&ff&N)Rq?ClhGkPjy}M6 zr+5twYDM5 zG2b`Qoo!<`F+m5_?d)yeg`9UO6KjE)-tSoAdS&dERS`TJn=CO3vE217S5~xb#m)&%=}C3RbYY zT;kE-QsQ^DM6VDr@{G!LjX6k8OIjG&zVA7%Lc^w=k6PeTT0cqX3NhVt=6lCFH!6ES ztGzExaYglL$pK{FM!sM_U$jRE(qE)J9yJO-v72ulA~$sZRYGU|<&=X9%ZgZ&H{Y5Z zUqvBqGSvKF%Gsq(F(RfYjP~*6>5ZrAm*i@{_@pv0J5m}G0?Fd@@$w;b`>&apUQvdZQ*EY8$h=W#+u2L2G`fx_0TMR8CI|$5iDm;qf*RYPLrLBF_M-(o$ zK8&Er?U6W<86x6MYZO4MbcfVy5X5GR(k`v0Qh8qz{@M6h6)1gQROk%#6#jiuzSpwc zJKTnj-Wnk)QGyP6RYOH#u&K__L%?Uki1&3T;%lkGtgcI}^)C_ci)0p3Q)jZJB1Mx> zleITsTsVaj*1OfwsO7P*$}B!y7m-~n2|8XxP}LqSWg}_37a`5YU8YMt7TaSsAlp?j zkK)JuC}`W~5yn*4+H*8{DQow-i{PVh(m)Yf@~}Nz#7zewn_fZIdj|8if^1aIO-fmLcnY=NceaO8l)-P^_K}5vds#ta zgq(BWM;+1YKJ>^OM9lCm%^y=aR+dDlg2A;GVFC%9s@NmTus*^)CX3tDknvC-5I!h#P28wF|K zC90f15P#hoDvz8GzP}@XIKbw#eD~{|YIKE$TtA%3^;d)s|68kN_Zz(jk4VeHzD`4T zvQ*mG+-!BjACOuV-I1fV-^SK6br8LpE!WQqqHGCil>K3CQL9Qyl2(1>h>x=vKA6aq z9A^(`cyPpf5*v-h)dAs#=R-{%uKw}DS1U@YGx$}`4Slr6E)K^aW}S9=UGdWh88G{iAs;2myDGZEokbv zXywhc^Y_o2sb>jUjlH9_{r#h({r$D0y}h-ylCbCXd{;Br2agSNR^K?WJZg_SN`&_x z9y8FNUGkp8SvJO#32SI5C}Abw#*|ZlaihWJdsW1?6$bOf_I`|N#u<91tag~fw!++%UisIqd$m3-E zpOz3Ltuj2rLxb_9wB1Gw!_&itGK*@FLMc6*2v0jbqiiI0K()Vp`SGy~am~@GwFV7G zg$!30%dF$a=9mD7_jT7}BZ{4um8-(5?xc@q;4G$4`aO}7-=}1w-lU(3@BE82J_J~8 zV9;d$@a|hhxGhGISo?k%BgnIqhF)^wCHRHVW(BzxiS=e@dk1dOzcf9!_H1e)?lv&C zqif6Rcx5U*3US^ufP5LfcD3nqIDFlYg}!Hm!o$De1f%A8?8Qln;0k!MoxG0=Giq3P z<3nYUFLQUi1kLD)vk3|NqdDL6-ZM=*F2}Wz2<|2|1t@2kl^MV5dGNhsCbt%0ChOG1 z53Om7Y8+!YUrY*kHKc{L0iVYt!^|r&%l{Gm$1hF=R_E=)KqR|K3Fq(-4K1`x{cm!4 zUvost%Ejr$7A4%Xd5$?3QI9bT7d|+L*Lr=~XlabEqGL3xLrHIi)1cxfC0OHD$Mj6DKHU1L@)NW7|q37xp?#~VP=7=MN#4f zIk-jdqxr3SOB{8C0&nUsB#j{{)l-i#h!M49KqW>mw zsDjh`Van&TOcs9Xr!jwKbi~ji!k?}4x)d8 ze^OjA)#o>xAeB1aHjF)w7+Xrwe#MQ{rkU>XEMaZ53p?biEom2K2qnIx?}dU@#urrE z%KoCw{hDZZJ7Pr3B6_qV%d$v`1aZsp&#uw8hPN;J=|(6_xcd^FWynd)fA*ANyxwMZ zkQ^S?R94MT$oeCMFWhRO+Nt<6xbuTif_(ub%1-&yKGAln!#c)HzN+`wecoTFk zqoXyIy~_4JMB4pyRPkidmO%ZSoV_A(HxDKR=7>q9x)%H+o68@AGaFnrq$_r}Gavks z8AND=c$UP)Nz@;f9X2zM)!VH27$-hOhO2(|Aw~Nxi6e1v7`Ak4x#ZGnLf*!83~J%6 zIm!O~i-qbdNOoEp5ly_^C4o$}7KUxv!-*0la#`}19^F;+3KEt@j))`TXojeyjru3~ z;)`{@qEW%Zw=WTW6xzQb3ZC}2@OmJI?yRUQ1Z9v@Nfgce)WbC%96iQAyRo6xz14v& zC3!x*yqp)eOvnnOVTvjCiKVo*I(DezG3)vx373A{@5%2|Q{EUd<3@k_0~FDn3kSlo zl9`&eEp%Wro!_MUPGp&>5+da!)+JF!NEz9luK9(-Z9U*O4@ymJXBFBk-x^QmdDAWF zg}yxzb;^XyN5NVYs;2L+dU__Nq$qif<2D6;^@J(rn?~j=b1O}OXUg*w!b^PaSFZbuGG&#j}u zgq4Lal;D_28A7GI^C<47;UxACX0Ezc-e2qauzes13axr^`C?y=dfxSbS#Lx)qsbpp zwG6LS?rdcf*QP*WH4L0ON`!!N+ltrpWG&|Zm#MDvmI)fLH>!BVRW#upb} zRb@|2BVKmr`2Apgk2kf(w~&Wy@jl++Dhan&M`HO$d5cMoVkmvbu$w)_k+WtV#&Tl{ zKJC4BV@CpZolm_3XI479&e_q!5ytepvB7dHv8btC zwRX4_C{lLvT%S*{=Y#5+PV)wHe)CIeJrZ8U1kxBooc$1r;Ubo)W`Cpw4e8*7-dKEG z9+94c;(6RGY7$xfchQ~j*-{}ESY(3i9kE{2IiEWBt%45kdGgSfvzth|h8P~jQwtkZ zwVD9-mwo+Fvv|L?G<6(IOm(Ho@rJLhCD3(fIL-_8n6_}-OsMDt zJgL@|w8TtSNlR!sPJ3$@z!t{ykg^V!6Ygcokk%`BcLj3Q!CeSBg7FNmAckr8wfVNEVha(*3L95*}nW|S@UvEw%c}4{z!m0%*^56gZfE!r$j!rda zhn>48W=4AZR}T+OEjv;@RmsY=5k(jBF=|9EMaZwX+^x>#k)Za4q(7qs-#Iw;naK!S zYP{rHeLaP(%|%g52PxF$1>$?Vu^xXi-9OUP-90|jL5dCicYqzLgZihy)!;oX0C2a)%3a$+LV z^zuedqH=P2_9npIA=c*qZN1&U+dBjhLjA9LJE+^gdvl=ThkvVbfOh;-Z})F=hPwR! zC$synb`9ZzYR;hYI;dOezv?+?+h6q@JD}_WWPyNz zIf34%EkGcEzU!}g4gyHd{;KDo8T?hxJ&gs_bAV(F*aYRTW)9j0)yx4~fI#=~_`3xN z(EE1_5HR5MS4a0x?dd<{bR58i|H|pOpdkR29UyK4q-cNTbWgoc`+q=XeE*Qs0e=73 z{{y%HkSSnKbp#Y|fS?T83zQTPw?TV>6F|=fl;ZEc9vnbEe+6^wz)b%N=AL?i6F`Q> z!t$>&w12 z%a)JKZ(r+=NcgPJpAhNHbqF3coG8X3g7G|QZ{EwzOe7FcGvAuA5ak+8;!4+)N=s3e zE^Y=XJ0yS$DElA_yN%!s&6E`0{1Vm{zoK#4DR-{};m8uxfp#vzvrCIm^4EcDV%4J@ zzvoagFsRnk3X&Sf-+jd|n`EO!ktx9!Yeo!Olp9Mib^Z0T$er4@%pEZlJHfd4?V%uj zsB}_e14l7k^&fRCZ<-kufyj93KP+i-nmWC`m~J3N;uV*|oB}&{vMl;$9iU*pvL8-i9(7ZPIqm(4HU6Q9cdSMR2+5#(*pP0-6nzjHg@oDA3p0} zm1V?7cPGzH0}L*ImRfSj$Z_Q)Gip`5WlskW&yzwBKfruWe;$D}JWCqJCyZGKD}v}R z*@hXEDDuoj2lY9V{%*Jn_xXz@gcp2rKBCKg?t;H95Te_+Fr5{ZgPJmtUXtaD>I-=P zrdy5nMXA){%4!Zi=;8JytG1`{Mz}P2&x8FrQ8qoIV$r8L`4X?i!(DY>P2xP3lFr&S zWQ$~pL8)cZeS`LT*wp%DkFNa&1y5c`SN!>;*QrgIkN?=pfK8b4SN2Z~^JpBy{#vtV zVXW_lJbvI_nZZA1I69Wbp4o7onbs!NO?1PHyT5_UfPD1lO&PL210(jQ5xG_EquKHf zXsAtX7B!%B5^K3h+Z9`JDyXPJ2JYu^9h=Y?UFW{Q{Y)|a^Y1>}{_PGR5D44T7B&BU z@z^&PBrQ#qStoKdqPbvlRvt6zwy>ij>z|Wh#k2X<6Nkm_j5+i;BGaPkSXh%UBVUT7 zQc#eh$bcxkg|IFu_u-31CuZ{pH0SCas@6u$9LBL-M{b7T-HmTHZ#|e>Ncsl*ny!+Q zw{Dn!+u?`cF>80~vK%f(F)TE?Ic0KLZshLo%etD#Y-bGHs&^yZ`?P6P1frB3*E6gJ zTy88e{6DUUf1VRMbzCd)orlYWMfDq;l0tZ!Y%&xlC#)RN>*!I^b3H(>}v}xsgyNPFlwFj^ppE3q;}3_Y+TiUUpiI%w()i=dZ5R6Y5m~`-iHBLZdt~cK5?E zGkFIGr*yT<`v=3AuzN+^$tg)Ms-R2)cc~h?=o9+4x+G1V4a9nf<)=y7i`D18f;}L6 zCkYoFCSLW-R2n$$HnUmm2(*Y#x^*Yp6H1pZ%7#_HAU#XS64y4csrW(q)$uDPYE7W= zzdvbHrN4Hs3kR=`(HN!z_n4gl;$`o7u=@itpg$vSSLk8M0B+vu-faIA+x^b49;HDFV2C6Q!qPR!&^0)3 z@1uu>i4!~3p6dsKC2C#W4}hP$4QB6lzXXQ8hh;+j3I;nS0vp~9YjBI24_?{hS^%~T zC;Gf#BpZVyy%_#bDJqxKjq`y(B!v%rPH*$}E|mVJ$b%rKPJ)5q!E75GYIKZpgwYc@ z8*dks-+bALRmKR~?t0q*9qu;i#OA;Z*Mlu;!rdPbtgw6DdI?;(=wNtoJK-T2#ZB1q zzo1Bn>~E71PGXE`kN`%)Z*9yU-34X`rD&v(eucNt#cKSbdyH>FV9EuK>#P9Q$j$32 z?%YlM(^dqkt@3cp4`iTCBAyNovBK?sf#eiWJ-fNNA-}GF285aRlVaq9Nm;D2RLMel zPI|S>oM?R)^*W+@y2&J?9$LB)$JFEeWM}49@gO3dLXjAO zECQ0xS4dhIN2Zx{W-_Xfpj1eA*fi@hkF=0OSII;56gA9;A=7j-albK-`@&Uhe4JCM zhjuzoUkFb)HkVO(xt$jD4HV2`0)k9Pt^#E|Xfy`N$`8rah3ON)$#;9}NW8!sr~ZRo z479d#B1lbl{LkYQ$%zPc-CAa%C%?pm&{{bb7GRF|x&xvYMz|4%RT~DKzoJbN+|TjE z@OX%@HaSIq7X=j)Hw!CIF1)(B1OMcGEi|Xh%a@v_@e4l=rtBrJR7CMX>OlL`6#0UH zsqw1u^==9bqs^h~35Jzye-Zg)I!?(2rIX#4wRKOeGr%+8CwVdWLo9gG(fZLq2gcqS z=!s&B_CF4y+i+fal10n0~q)q`FGTi;uWZnoR4xVwpZ3yK~B9F{Bg)cld|nwj4ZNrMoloFZ+rRTA@S1rt47k9JO}oz zIPwOfQYH}-GmnAToP^v2r>DEOZ;gtv^3;vkuWB4 zw&tzx$|N){>F6iKGYZW^z4tqD8xC#>fZB&P`7(+?Fyf$tzCPt#|XN!*OjTvlMymCnp zBS(e+9)u(B(LOvcV?fyA%mAfZ=wuZ!Yqsm3_gh2JE0_0{x%V-1yy&`z_`&<9)^Cqt zk5wP9o5oS^0DfKQMJ6u_FdHVKSKUa?hNNbQ+hwsF|3@?HpB2A&7Mo4<76+CR?1L!+ zR77185O(|%^snWVFA@k5t6{aS+mAd^Y37@|sJv2qqJDkMoYO{|Jz!)d^GR2d&?db} z1eh?G+qL^3-&IxrA+*Z1?aX_KVLt~hM`*?sn^RJmT_J9@#qTqlL4Pnxr%cqpc)F`4 z!-`gwqYPF@wIfHK-g5PL)!eOsJ+rjHz(`~!)>;C#IE5v4J&iHcYTwWq3Y&;+4r#fR zzhrF&z8Ply1+11LkUf)i5$F1hF9TE<;kZvkXnqx7hZaAOcFX>*fR8jYuh|PkLa3ir ztO}~jD~q>;2Z$pE@s%pVt=2$I86d-)#&0835u;Jr7&Q~F0Y1fWSI4*~GPs|~f8yjJ zn!eXIm_P^ean)1PTwR5oenL%?vke^ugxrbLZ47F}7l#Pe7G>R}zYvCNz|whnjZH98 zy|}Uv>P#+*PZ@}ns7ZS707QKWXk+xdffMP>L~5(&3R6E%;~fN(PVo)jhs4pqbQ)yj zXC8;F%qDz_#3tl|VQkej6ByRQM@cE&yCxr?8EezZ4R-(L3r-IuJaY8?N)ysNitA5r z%~s)F%JmFaSIPr^ov0OjJ5(r2TCBc8YZ9DP!HzYsIpOCo{@cjq(4#O+JJ~n5_$bz>pd%bM? zxz}M7w30Nbd5!G|HP$vBhs+=yG;$a)EH`I?dH@$bsi#^mG5YM8M}&7lmiC))*ZA@N zM8Bw%Et>< z%cBUdEPZ^)qng2U#sq{>C<@5cd-sI(tLv|+SCWU`!IrLLe3ZSrSMU>QuF;A*rMRdG zUulT6rQu zw%c0DE+|N81X{^Xbed$#`$Lw-@l{*0BY~tQ0mbOjoash-%DZvnA`4~ZJQV=4?hXlo zc3~R(2-8L>%m>v)AcDCWy(COxaRr0G&=l4a%USV?URl6$ELVCfPJf~iox*GJ^{p(wbXL2-wWGEn7}Uhz znyt!O$xC=Y(a*}oQwD?acBkg_N~RR@Q$&RV<1;Vi51rmJn&yFG6a`iq{dQ7^k|@D3 zqKH@ALlBdagfccMDVhbgIUu(SopY?8gOxs%aTLiNKE%GmIv@8z*9pc~J%%&zn%h#n zChTocj&&X7FZ-Q{JczT=81bF25a?a{t79_^moM6}D_Wlqg?b+5$!(}DiIkQya07UI zes%Ah$eje;Fc8g9UueF=>No0hFya^u35KLnZOT~`**B$>AO2S*5VEBLO<*KEDbUbJ z1$Vm1!xe_b{ERxQ#A6OGzm81wtFH>wU%n`?(%FlMfAoEUPk^g9HRE#(1|zGWQY=M2 zVNyOQu*zLFoK7;t~IvOITo4%f=aj?o9NyjFahw}bAADv}+-+tc(g zshK0ZphFQwPC0wZ7b*Zhkm@rZ-E0h?=q5*8Ay>Mnu3X5Ho9&00L$AyGXE*4Hd;o&I zy+V5?=q7%6D=*pJ>~VPFHEU;zq$Vgf!E{7m)3H`cJ5F35m@?JE31$JCqlf9mK_k$& zxa$jgoz`Y@4B;4}Zljear+rb>$`hO(ewhxjn)q-~V*;w3)l`Lj@aeFv{%7l6MTJW3 z_VU@2ed*Jmqv5*|wQ*TP>xWc4%U!OVX~`ji#e0i!*JEicA8$WQj$2wVRwJTYGn<+@ zPp)a`)LqYj!qc4Sr%nKmT|F9F6!MU{Hkdx15neeA-Rv?NfJJ{`mZ^1sf zc8|^(uw;c1kTed_DM4C!h2r2EoKk)Z%3rgJYLhaZvkL~0`A0FHY?R5;#E2vYALeY3E#Bc3B_01G+E3Aj@tEt=>3c@FkOqmD+R? z6YKest>rW?@hR>hrc5z19-4qHvtSX(s1?JAxz(dag&=jt*c!NPnq5h)1TCX&J#!EP z`G0+dQnxD7L7?WoTJ&p%x?`c%QX?3WTc9|r@P}bhsKu8`o#Pkx67`>@kn>z<%u`^cBLDB z-@!NtYj%kDQ`hLFy($L79KFk_!j`%7)IXqoTo(7$37 zESLTQa;Q7bThg`iz{?f(gBfV6+^73P*0-csGAX zQvC3)_`^7uYu)RuUsCV3lr7gUG0{i|W^I=SnghA^slYXBu*Ca4>Hr>5?h4PgA&- zPxPM$YYsSLd3|XV`nM5dQkCIKQ_7HZ1k4q^R#nx@Y0^4O0pn@GYaGp_JLlKGqQ9KD zb=$&FrJb60eCU{8C6?BVjditTPOY6RibQ6 zN>0cp(2zL+u#^eul#HsImX_*9emB^eKZ@D?!BL7U#&hJAelz&l>>_0*9;WcB7?!_e z36+ir-k-tg6STIxP#xs#B)6PYfm|j2rTl*61&$$|6l^!?8KxkepI;z})K=B(g|hd& zcbK#48CjO`GB8;)^Kzkmkr&uhkhvKfOQcgxlZZ>D6X6p06~o90o^f<#I;Kk@t7Mc? zgoJ#6$f~45%?cU`Ee)4SOFk#8emV?NC(2H})5O9I%Ap~GIlb~$(RrlvK*95ehHg_O zE5nta{Fh*hc`o$V)|`=bRsGy##hOHhL@oslk#y*WMq2ay{`r9r4mQkbFnWDPO`

5x3dt&19rB=)VoYqhym6TjKCf{m;g^(fQMw$%45p;FYvWX|U>xOL zyKcYaji7f27;XAlCO;_70yYzhPZhqh;>xPjXsM^BXQAig}4Zc2NbS_PmPU{#G0m^Z^No zP^Ock+gDLh-U>Ch>Q^vqdk8Sj=9-#$h|Wiih4)1YIG`}?FM{8<4B=PpU4e%({JDFx zkKoz-cIKmwv&~61Im~%^<^wD}@{4b?EN`$~r*)V0Nyxdnh%I@pxj6-wxTwx}*2aEe z*JG0a8wj|C6Y<2%*m6nOP@LShb9=+QL|_6Bx%kxRgG}+m;=1(7t2^kZxCASG=q9l% z2Z6-qGt3q5Nd?t+ecIU#@5>TdYmRUJteuMVt2z@Qg@26hNRA95#2uu)p~`JfFTBEZn-DdSgV}pk#;_jH))Lw17BnheT z{p~D4*Fmoxk<%c|L2=^mW_|1 zV?yVwl40&SJf(KbfLQcc0^p#af6#K_(tKE0s3YZ$LO(o$9FxPzHi7}@R>vu6*fTqi z>;3Drx+A`d*zlE^ol{qBw=Ll>Y^!5jotzrwI>04>L5FIbsLL2k`1y!*yXPpls8e){ zeBLaIOetuR7_6s@pdYbB6RROo@B@a8UfvF+jiZ*g2<8^lzr^4yX*x^sA~H6q%=d4~ zoUN9uGggpb*Y!g<__Jvb!ADTQ@wYWD5}C=)D6EY?!{yl`ax2#?Z7Q)Z(cRM)gm}ym zbD{%nQC`u!aCgUI`f7M`qHsSE&Fzuw#FevO7puaUXuG3DGk5xF;oQlKU7{4rZ*f~( z?a4-1O3+>U3U1U6RTk-28Og;x#12WD#IV?}_T(2a(@`#oPWyY9`^gPM4iAT_n%q-5 zM-TAO*RUJ8}Eley-^by5hcDy0!2CJV^oQ)E5 zM=Oi&KlO-&Iurk7d;=~ZrtJquv&A~WIkCYZM(!88?$$*aDwWksEiBHRANb=3{@wh{fo6+#HBozFS z0xM|1z*IF6g`Z{24$0Yx14}#eYisi!DrAlO`;pk)TS`@SZ-g%s@>95nVvPM=^_8+v z+A+i;QzUq?cbapK=-fXHA3m=zyqi(i?@VVC&7c7-cPOVJ4maja=o3R2mU?_t0Z9RPpc?n&i)7O}v@w9+=98XHoPTxutWLFV5WL?VjC4rE$} zK!!m!3sVCXgWk_A5@zX-p|TT9U2yOuzX!=R8tRr zih~}Aib=(&?P11^$%$u!<9$D>)Tkf`uaH#{hJ=JE&iG3{_BN&5)tQd!p?(IVN!n)Y zmZyQiit9X>QUb&^kC)i5~u%1giOBBiAn#~6! zx<9tWvcoIad#ieuxzOD&fkG+iH-+=(Zp$U@oc5!8omfU!vJ*PZPBf;_tX0lXw%>*rJ5Ou5LD=P#`EE3tgU=q6h}(nWr=b z9-te={U3{tc&?;TAQOlKOeK*dc|%apwm@`2_`>NCFl)$XGmC-D&V@~@Gm@f+T>M3s zduyK)@AUBO?l4$ynG2S_*^9`%{D)(iBAp{0zxs~?)jw05w7ns|>U%N!#V`H0RRIGp z*vYX+VCOCZ9Y(wt{@hWZZHVssLxYTT;2+joh+-&!NCkR?yyCHO@|l3*cnwHQaU*{) zF+Mg}#2r~c>${Ba`A-s`68?;ABKH#+PNjudXli``9s`)uzTKt6tU65C4**v0R^v0< zA3#(RIlX!fjbn3sG2K$E9)L%!8k7<%(-y&O1HD@$1+n2fCIN%vWl5X^6h8_@O&c+x zy}zOJz2I?4eMG-9A;$@QK$V8Tb?4<46y%k~IA+2f`?%j=7aYqUd;zk7%5VLhoAkdL zQ}l1$_kRH-{xc}(KLU#A>Ao#nYDT*6xDh5gHrBrqXTBX^W|nU|_SgYTT7@Av#~?!UHA;&9$IpD|u>Cv#=U>f%))QifI7TCyzUtaG1pfDS95 z^Kmb=(r3&*vV&8FK?;Aj2|ZtUIKKa~(Pwo>MenKOiswwCW5FlM!d z#JR&tL(OpH&oYFSM3|z?5N0n|jX5C66>)NwamU>P)J&nQ_1KbXFuk4dZ#_FS%(s!N zZgd~IQ$=yBc_XfNXaDB3^qs}@um9Blm}&a&ZaaTX_5Z%fO`PDPG_Q=*^NifoIg~lj zj7;v?EFnOd8gG0wN)=xSM=W+ggkD3->tNO3WsfHVrq4!GqrZ1hBH)X+L}w!6r|=Nq zjm1bE<6hAqb8K`bs9dY*XBHI0@gA}R3R-BAubWAo0Qo`p+W}#(27#NH3F#) zOrlvK#UeR0GU7Chy;s=Oq8Mo_$auk?o4e{PA%mQ0BEP*hXg*38@&esheQ$B8$7vaq+_C3J+EGi zANFUfKlJw#fI0z+zV(CG7Zbd@I@ACy7`(gkn zZ2hd~%cZk9r64uY`mFZvhf7=>`?Kq6ofBa;b~4Trc^|ghh5c0H_xx+;LfHpZ z$5b}#c<^;?s!j$m1?CX5Jbc9R*?4yNaLORTx}-dRtm#o%4YaXf1{e`^8kGp+igC$wgVE20gk{r01u!63l#=HG?z0br*a|NV z)|Wn16}*z-EBYH=nZZ&$|$|SFo@-qF~sUcp@?$5Jmcsk;QM8mIvb0`@_P3$dmw9=I}(| z-5wiUOd+z--D8iJrI69mrY&@5uUD1a1lY6-{yO#P(udy%M=XGI+>>Lq) zPkl@G|BJr;n*h##6v_X>0e_R0|5`Tx$vyv7HUAT>{TqR+tRkW!Ekh|}Y@x5>tf+6} zC~a$F``1SQ(~Sea(ayh7wf_VB`;XQBDdGOj2>&H)li{yX{8Nel+kyUHgMYsP*8iqz zzjv)Lgi zet_@wxt$U+zTW0Fk@D$d*>%*#?V{YJ<-LJ3H8rhj?Ywbp@{;J7b*|XpV+*6L`RGPB zK4~$35lrtquS7e{k>l{0+0Y-;T&qUfpG3KCscX8#H z;n?%WV|$aE?FQIYhWqLjsr|>Q0G7$EF_9OVc#ezoX4oi~OowR|-D4F-;L-M?w-dXx zx9ep{$2OB}<*m`;Z~(*Pi@GQF*Ja4nqSi#;RvHH{{OiWI%wV2A+9P_3+3CNva~(|( zGd!N%Sh(LFH2R!($(a-g-WEBWYuOgu)`3-rr1JK(I!Ck3g@&;dwx;+*l=<5W)nA=qMQ#vN+4X}j-EpZEO3SH zi(BO4VoP-6a{Yd>-R|Oxq2oZv@tKC>ISo<5jX_wT$f4-NhPj33G0LCkYSjDiUjY7W zAG9ts0rZh~?v)SZ&Ls|yQ6_+j<_=%uwLsaG4DUTwC+;;3Bff-B5_4^?h@aVGf~7_g z4U4)izLOp^{n6kvX z`cu=C(Qr$2+U zJz!3WKR*-)eoc8v!I3X4p*h~F%=C6tA=hKXyK%QzJK+AzIufMAwe~a7F zGq5xMe#`Ek?3O;76h^Z7pW*vip_lQC^{!YGZ(P)NuqK?n@J_F4kI9l@eR zSl)Ti*-#R!D6CZF?1`e)ru;X(gdpMXWF6(XttO4-B1q}QOW~x^{SO{f5(%H@Pw#Ht z?Pq6)ql@Xg&F-A*ANql@ILP?^3Zy)Yv`-d6M!uXOaC-`*({2t&WHxWYY_@?O?KzpX zW_Kfgz*+DF8SrE2bjEXtL33U|ryYTAxGW(yVn48Ae;9gjx~SbM=Z z7yHpfCfwZTGGT^e#K2w+;NuD6aI@x~EII(A6Y`*WHAbn0Hv%SOqWc_WJf>r0cNbr< z*|zgL4dPW>22%cbZ_;vZ#+uFnU+1|1vh0qFE zmit@=E%YtQzi3NYhyzCVGR~I2IGfqiKd@s`AMT7m2Pg9$O!sZV&PuGX>|&3C5AHfZFgi=M`C0A+n-xae`D@^K0HXEchPXfl=NZ z5$E|y`l~$mLcyi`HbFr5nTWu$v4FAefD6p#>o$nvqyiVL!+3&~*#DSefAOYw&x|CI zjia@rzurZSEia7}G~!ARo&tl;hfWg5Q6iBUig>wQYf7Dr(d>yCUOb^_VE5bbJ7+^% zRk0odyW9tX{1FI9cRXrmTmGbp@{X+hfZqz~wA~}W5pm6bw=-(cg}WBn)Sm**haPB> zAa&x!qCr&wZBvTTWc1yHDCCLRVh5@UacxX`h?s6|oo{lr5OXY;CqL-C6zw{|p3odT zostR9NbnD_{0?}Ce1@7c?D3^`%kZ-r{{<-FUi|v|5rayS!E-LZM`VP-$MZET#SUQ* zyhmUu_Wz3`#jHk%QHqo0t z-RoNq15%kV?SiUXC$$2Zvsfsu9D(sy^1kxiG=y;WKv$>)euAb&J#{r0jbsI%E_&#) zW6WvR;$ZbXsx3Cj4I~`kqxg}YdT3o;1j=SHF3pOnOH zjRvmJD3Vbx+^Xhkm9-4%cJjYzw1hefDlDqa9!(5$Yqtz0NBwN7Hmo}GbwVzWoGqh? zNs-t0FPd&5A1bWc!95J(goV*hRm!NJ1|kr2;aWUj9{mX!OK`A-uV<(2FQR06zdM|QSiPY!Vjnv0fiE!>2ej~Qbpf78pv|}!0Jo>pu{4j}&_aNSk zOMtkDRoVp=PZDgu>9?&G9k@;_qEGE9qEJAsEzLzlWyq7I58%J-W%K;cIPpA3dpwOKfM>4pR z5u{F2X$o;0q1h6A0M-GRmd!5L+IY9jwwsf^6=7RVy~AKK9eI#)nI#J@sSdyY^v?sv zM_e{qw5`|OD=PFcttSrFyhUt+4jl=%16~ZR6jfusf?#FiTv>g3JA8R(y&__GE?4QY zqP?R}+NB0b;83r+5+!Sq)5qIf zs=89^^X@Dgj^UUugWkCplt>sfD#ShGU1Ox+IZv4cybN*Zx*d*Ik+?^W8E*N;bgQ%1 zjW<3UFOK<`#G#BPJ(rSXV+;z$* zzYUQk^S315ptnn8_~QRv0P^~ zi+#s4sh{vQfXNzyS^n(skMw6kUa*)6Y(u6qsTonZoK_k*l5#!XMZ~yndTWZ~67Qc4 zS&m;F5#{D*{fkN!>tDykN$)RN`=mMolOM!A9er|~x`DX{0a}E63J>|>6^bo%;HN)l z&6ap2CMi#?bWT;4XyxQ1ha!t{M8+pv)X_crR>MAS8QK=6LtD?OXH{NT5)j9M$PcVm z0lv=p)oDP~pUmnqLrq>aC=tR#nb{^0e%nhFEw#k2^v@Pir&?jwCj3f6nw_CeM!n3^ z?B6*5k!y!yP4=j21Cm<7SX6)Dds**)BV006I8;1TG^CnGp*5&XuKaens~k;Xnp95F z#{|MV(|<8x6+wzfMIab5$k+`A$i=@Vyck+cuV|Zxxq?wx8=DBw<1EPmaIIB7hnHo=OK#UjT^%8 zu}@2zY!FqSj2=f`KI~k~m0VuZxv`LeV8VjWAO@@^@N{xa(pE>+R$KOwMe~{sEvEBQ zknp(EO9w;h#{=ZW;JcwF$io)f5$!eB2Di6k3KrewWi52mQ{{Tca#8;_FNb59p{dBd zVbA&NjgrIJ#frm-?IdZLIJYg02`GfjUnNU9UC^qurkcMY+bAlFul)0WMC z0^ge5YU5l=Q&rK&O;>wr!Sl5?CwU=L)~b?LhyCy&ZP&Z#{M61yccI6qbZj+>Ssm@X zanreQHH|={=y}izoBsndhf=`yGIsNFVCN_ZIw*8`pqYWJ4#eH zJAMwT*+NC;V(-f5j{fhShc-mDb)ro0{^0tGXngXgN%UGLFww|(Nk#r!Q zSP@-$FpX$&K4w#P8q%FR0`m!lM{UTWh#TXaX_N&}>Nj+;^iFMY;0`ZvXEzJBF4~80 zT(`NCheeUG_~4&o8gSu9pnGC{dnQhN7e|ek66LY6nyO7HawrPJ%M^ZR{+3i$cy!x! zi{>)TrlcjHWuT>?<(SqM3V$KU6Qha`KOoSKQz)c`q;*VWAJ;O5H;yxwH=Z@NfyD`6 zo^;#|iCnd<#CW!NU*MrMy`H$BFWsNY+e9MltoHI_oVdc_YXK!6s)um$*ziS{p&t9y=LU{#VP57rhB#d#YDPomlU zW4K9*2?U7k5K22ZC4T>bYX2E2R5O`B(nMIf>q;bKbOc^z){!G10B&lphM@e6t~?Z* z>i4V>6Q>l3VHbvp5Q%n~(}KZo$of(f!WF|&3QdoUwh;P&a`Yd{2}4+N&0k0by_OdU zef3W&k;5+pu8-(R3Dk9q#&+nM=^E+ln(p6=C|VM|8C0N6rcob1_oNBD1_=6U)A7Jd zlck7l`s>O`w$qOM2JACec*z8>)U^{Do!TfN_I?x;YwDp`=ce&d zkea_1b6n}rz4w8=W7MIwZ6al#%}{PByh}`yC_Md>48`1iy0bXwJpu#O*HV`ms~`)> zB0K}ds`c#;O2nziv1%0(aGzD{%bK`)(}NKqoKHZ5 zxZ%+&4`sS!3bY7T>Bh?e)(ZEJ2_QEzqJG3SaNM&{B0*u66eMQZOjGk9m&&`QBqY4^7Rj+dU7 zS~`@I=!|~NTrTv}=la~Yv&MvkCb|3HdwcQmdwa?URLhSkLydyLhG;lVI~Ti3U!%vU zQ>>o1>;-N=B1M1xN%cMY<03u6?q` zi-K)sQJr!_eoR>6Opn;?f+m9X?WU$5Xb8Wq{@q+=a@hmQ{Q*BY#NBY=Y1k7d0S@oY z8P!J9x{!$i!=_q>3dAx>eJBNYrYBpC#Yp^M!Sl0vXVdLIKJ$Dw*TYLarOoJOGxyi) zXdLHDrkC|P4@;pfZVb7>c|0~KclO%EL>OWC9Gl|AP*HUU{O|#!>U_?K=PU$Q)NR^e zCENizu}}qp14U%cX;gCTPKiNW{dxtAtRzi+7IVe~txi`*%Ws4EVu)GyAeZ+e%eCE% z^Ouut+PyasvuCJ=b^uoj{O0M2<B;f1s9Wp>8#Z5mOC1DQn>`_w z_;NeHJ*1Npb43R`0o2{h=Y^SrFqv@)CNrYNpzPef6V!1ZtV4SyjVR-%3eGfIDuNx| zQ7r^v-;{cwu1=x5IKD2Xe*#?%c>s)u3Bs9+K6^YXb6=9hMLA;fxj(@(ABcavYywP$OhqJof7VKQU#3&tY+EEtp)H?2pJNj z%5mj*aMOL^xtO3lt*9}b1+dHF`0PPe;L5Lb<+ZiFq1mjzu7>+bE*<{j&Pw)v+`JV% za()e-wPc#%%2UT7B7sF%8Xpm9PiaAifvs6A}tXAqTz(t2BnZg@c2D9nPui zHsE!ZFf(%x?+PVlekH#dgk;);wze1J&+yWYMI|&r?F6FjrE%}&IO`CK(;wCeA{&A1 zL6g6OkE6K3sgoc*F#;e%t0_cOKa=BCFbYduEPRQ1uK^kAfVS1e?BQ?Y8J zQLO%CC@6Y-BR+QvJbxgWfs`VW9M?LNTzjch2=CS;L| zPf1R5cC(RD#->lRmq;^^QBegAa%a(qMa1{w1E;i1@l{WYBISzh6@$pf3~b2N2WSs- zkh2w&DP(Svk|V_?K5Il{xS2)Eb=JHag1paHvHT$!S2V}0R$zse6^NuhW_gq4F zI#lel14TTM_*#I}%sw-Z>>@cHc3g0TvUz**^wrs;Ts*WcGB$vSxL9{(h3aU4*qOc| zquW^Ug~R84+Yj$}v=^k7Kjh+pv0zj)N^h{<5D&%zGNIa$9V2PN3BpWZ`4>QMx@Jb4 zPGzc=k{&1kKe`W%#qkBj@f>~O!g^YvrJAV&-djpL$Xh!sU8t5_eLs6i zGWN#tD_!P&cD!Cb1hkMx2rf@#gLtcBBEaq#1G4~lAJ?40c!Mn~W`8E8rRZfMgx{gV z3t2m>_4OE2m7@ZcDBA^*`|(wgki-36ZH;+<_-QUKBOppTJ|5r|NC#;)pZh8*c09VB zD~%ph;F-f;i{DG48M|2OSc;lz8t54c9?he>Yk46MRYW5N>JAIb6o1{!nP?XxQ$kmy z%5SFDV5TpR2@}i~$$(?GD{HFTy775>U7N1%m4{XR*ey!_ed~fOo1IE7oHqFDvoTBa zN_ltxJJo*`{OFaSUe(NZ8s>$8G@#>5=m%hc?EoIMNX^r!l_^Uopf5hUiZN(hk2ic) zfFhdNq~sYaUCoSsAPQQ)Zw=_s%4iJg4zM@xNBRe#&PI+0B-4i_MgT3dFpxSNkxp(v zBnt{sM7);_>Th`iXXYgit?zD*!H`R2g@~2hd;SXOOwYNuku0z^$aiof2sX>P5Gc?? zyNkTh8B9)Z-BnOt@3;C+2s)Y{y)9vbjMH7Bqz>PLiqULG4R1ItPrDt4a+|^Qi6Oyq z@tvBJ87KJ0UydkAw@*GJ8k18!@48E<(3U zRlafh)y-SqQ26lUO4pTTQ;uyY+1GZ{1Kr0;_KolXyiv@XmKVo=thILyJ3z?lLzdk40<^r zY^9*pH8tuFv(eQ6cOn)W1AdNHtJPs!owB6rTeZ)+?Qkr(vbL_;qRIWlo8|JEX=2Gs zYbIlkxBJnAY0f-kAE3#fAFw*o4PZ90@m*EmRf$^6=md+%SA$`%lG_wAP( z_9Px-7l>*zgU}g3SW4|{r9ceqRT$TLgN%!Ik}vD(SB@sfTtZDo_JqTb=Eon#-W0Gl z8{BqPb!&h3aRVBP?^scbbgBdvFmQ2mp|g@au$vq!^rXXDy!caTLNx|U%2~64>MSN% zxmow>-9vW5LR}i{EI5nwmJv;^BQyx(OZ_-9@fbKdmxs(jUJm8Jsj(mmKt&Xq>%ZxF zs`p3u{>7Fu%Z0|df*(62~>lO1es}?Ng-^u@GBG|y>2Wjji$Sx zHm{{AR!&=2L1=2NR)5pg|pW-3uvUXn@T#pm-51H7=paT z>7NkP6!wSX*zv_kO8Qk2RC?QowuSIBKCy3p*x;b0DPZ2JmMnwo5j^qxR&El^l4J=!A}2bc!j*KL(WxQ}*QYu>v*VG5+oSOv z{lXKQyN~rKMXDt@WDgwZ1<94fQba5QDMJ(XHXQ1iad-e@Va*lB^Jc|l>pYNS#{(LW zlOzHHDHhtI9ub7nrHx*jvVSlrbvlL`_Tqlu_C4JLcsP4dXC|y0vsja&?PU6cD3+XrPHUmDamEv`;2Qruc%>$W%tMlBvt$N&|-mjvk^jludq5} zNagVCLN&W$L2;(nDP3S0P z&O%Pg(})~d@X3mY}!*JYX!c%{3So9>TXW@SS*qg1W&iykO9T&TAD5BpY=n~gug4)|+4=IN6a=#h# zGduI${Mx1*b=r+&DM>-|v6uI|GeC*&7R3NDhtf_20o8CKHs6CMS=|!<1B5(wj0a(D zdtaZw+-^)-9;nii+|(08Mlg58|3lncheh?Z{oe*M>dpSnJ;R`oz7~u86CT z65O#>q?UVvTsU4(SHBTaUH-)Qd1$?KWKyhcH^$xCMH%L;2hMkxqE#ONGm43R2OB-F zCO4W=^v&a@ET3x75%GTPNEC>}qmAsJ+EINaHqFPl_|Fo6+AqmX6y|n@qV2)p1YXiS<&)bZ882w(U=3(Ub z985ZckI_$ZRurQjdQo<@xM@*#&hPs1v&wZv?K-+irg~G8ez&|WHD8T2`NMjU%Pq+!sZ8ebjypzEGvd|EuUWzw!rAbd@Y$b;^oDeyPx$jK zQ~LJtLJZ`O2&4iRTk2Z6^u59^IpXD2jmU*$AJc|LwRO%r7R+A`$>WG;mIj#KdDmAW z|F!LXa3JxEU)|^B69lC3$VS-qL}X+oT2gZ4+!Z|%CN$H~sohV>@uL3R$9qcUWeSu^9Jmos`KD zlo00=zWCCSBm6wt0{4VatRs-$$B^R;FqH}Bm>F-W5Ac*kaU12}Yhjwx(XN)+;&(<) zqNPo+xco~7Z%z~%PJba{LuukP$Bh+#)2w1T z_FlUwa~?i<{zh8jujgTDUyc$9-Gu4+clHX+GYg~HOPx1(U zv!tkjKVzT2jQaM3hDf6{KY69okFbZxsKvNFH=DD6Ong%5m*&c=E^T-vZqxg~c?&%e zMfm_{Td$*MB{GjXk|w{33jD_7#WEmDXn3ZE%S<<>Y!icrJrMNheKY#iE16;klGe}E zx<1qCw@VqG557*C_CYIu_WSXK2@EDN#p&7Hm2kvKO%^%q$?~w@GODAwOOP0Rcbga; zD$D&w_4k{c=j4S+uGq|9=;h1}lRSl})?Tz!fm)V9Q{QcV)K;#o-1y%5dE`yyJ9MCb zfUZfIlY(%0^F-Yp9E-*BV4}LWU%xXvDVKeM3gGB0%+^Q}`Fgjng)GTfL9@+`L4V?A z@aq?N>mrA8sWoA3#J}}x$OK;JqsA!?ZJDPIXArlc*we3rzcn;`JL7!S-P}mGHCD~gJt-@B-~ zcoUq;s8Q#taL=UxaPPW44h|<#g-upFZjP6G#BBrzpXyC^(#Odur+jQaU!vA zVhNQ^a6_fAeNAM#i7J0H9XhpdSf4nVR!&!SZa-&dJi=XbuD{cOUL5y|yziV-u}(Fa z*pE9D(bv3<`(BL-MEuj==vyi9ay4ZmgjT4+Je76a4(Wwvh3l${lxplV)pa0 zt%K3tmiD_78x1!mPj;5Rrma^{9j*UN6y2KCB0MzU`8XzJ9h3^i+^8B6{gO^P(e=)- z5uX(Fk_}V&p`*`}PQp?`S&;a>9@hTVHBwi})t|v1AHP?9Q%YuFNkPU*C|TaD>Rmo^ z@8ak#J%zg3^HNunl8#P$?&XKc_RmLUJ0d-7qiT<**x$brGaA25q?GgP{?lhUQy-sU z7G{QKK3$Oujb=OqBeL%O#x&POUwe>5Ng`SOw!fVM0R85_@BCLZ`6 zCzjNyRNQ_vU+!q6M8E_m>GiGkou9+0V94@kX7DrGg+a}weM=|lUOnc!WiD{bz@sQ~ zTqdJdLWVij;K-?XHQOpAmiDuNf=C;pk>yQG>oK-CMtP7XbetEX`}zBP-T1rW@SoJ0 z!Y=O}zqH%Q{(8}u-kv_}A(fwhZ2T(PNBy0SMjM;hE+&Ss$f#vU6xqV~ykopf1F5X! zu!gp|tFiLykY;US{~skUUOAFH#WhgI6~XS$f!sl}sxoP*7Hb7Yel!_NypglE$B=w) zTW|kv+%J6{Ur+8F-KLyuJPO`iI@6TJ`8b`rqu$sqhgDu-lAW2$wIz>D?G~2=sc-Q* zpO--gM~^1GKPymA2!|0yKIr-QCZw(gL%zzFy8MYpMin;w>pQk2bZ1(Lo*$tT@?O>H z<6j`EokkqrM`K+pvDIxCeTWwxbUxMzAMbkS_2d@rO@b0g8hwpIQ6};Pv&ggLtQsX{ zTM5E#KBY^2mjf4_SIf0|Ud?Lz#r)=B*`xh{vNpo|6P?R;>DX^n^|k%!qalV2?yA!9 zJy;zJ_{4)5gN_~6G9frj5WeE!B74e*A{Vqq(Q-eIa;XlZn;Lf8H`8<*tsboV&K{ri z?JSb%W>lk?EAF~{L3OuUrs?*|WTz}MxaHZlpTdg0#~*oTuMUy)c55x&eYYPfTHDC2 zdJCKO9+AQv(T}58{bG%DdfJ!`@wiE!vhRbf(vV$>{dXsKYaa?w-Lk*v-D%L{Pil=N zYTNduKauaw zF|t(pnC-rm0um7=bh5ca`Nk*49IvC9MfW2gU)@{JXr9QGR7kr}8lrS~*BTNJiCj)m zh>&32FjFW+M;L6qT;G%T+6h8u;2Y~BZ}??KjDUJ;M|w5E$r>rDIy#WWv@bDGXKCG!BRzN@1v2P+W7jRioU9(Bi|3xR;QjVbarmajg`7= zE-`9KR@tbresS*l;^F}h^&fureC`Mbe%@#t{2*byYxJVgzP+4%naO5&HDzp!c}C~V zf@L?cMJz}q!-(toW4C?#7p8~y1!ef-SptjY~Ct7+pobo~1ySSe>qBz9ce8VO1mLgYsweH{=n{o8@{ggD~Hh$-Qwv|3FgR{pB zQ@bo1%hyd4JntGQ4lE5IeEN(1D0wV0{;5J%>cnfK{8HLg$>^tTiluA=#@4wSK>{ig z%FIKfkR1MZJ}UHnQQ7EAz9lw@L=W8coi`kA)_dg5=?{1FP(AL3YgAtNb9!B}8LwWv zqMAJufb^A`FNK~fD8PdbrBk-X3iez0_DPmLdiJ6`-CD=wMG5nkZg`>7pX@Y!@=%zD z6CY$>>XIDX1SRj-j^PZFYj6&nHCa0nnJDTrLsWSc>cCQdPa2iF>EP$HT)itqw*vJE zQlf_GtCfqi)N73wYtxbvZ7#_{nArsd!3sB=g_AXdV}(7$=2ik` zm*sDm-p+3lsgJ`j&9Mbf+@5_XLa+%MbRuij5BRVKA}c2q<++Xbp0)f@G4xR>DV`4( zB0c9pb6|VA&QD1at!9eko7SA)YX~iZQr|#6e>uf1YIWJ7D8h>t%M<4&k>HA`_k1`c zBSie$-y51Trjh*AhNxKlX%^9-EGly^rJ&=%g42$mb~KYVL`ET|uZzXFK(Tmg*k$DK zC&ADD0U#1cUbpDAh>PUvN6m!}SnrW|klZD){8ZVtDXk=}DIF+18&BlW;1=qZUfbrW zZJo6tU#uSfrs`|#u8L7_rA?(bVRk?z78zL;-iu9+tle1gzfsNG3OSQ@u4Y(m^Bt6%kl~$y8eBgB8SI;ePCJWtY6=o4{~&? zA5BDNDlva<<*rEl8sc}YC$gov7m9j8RE5i(1cLqe;^}HinTT_Wl-G8@`K%CcY8|iR z`1R1EzPisOC9PkY2__QrwPoJVKRa3?Ib!sK5Dnq=Wxv8{@#!z!+JDHMc6(NOu+bH2 zDfCDq;dYb5uN17G8_KTCj~dhP&IQv2PObSwDpb^P&gTl%OO{&%$;^1A(QqbDPEAX8 z3ekvnWmLzF$LJ+k?dQSiOA2|)b7Jk+iGByrj9>N5W-mzbmDd9)F)SQK1U|2q5|%&o znR2=3Ga}B zlGydxS2657R12VbuvY!CJDgN}enqhdrST}(ecPSWHz%_ELj|Dy^#P&j%OvT}lg5EX^|!)M zy|a+&$thXUl{(Fpcq-n22|(`F)!02uUtUi<#oLb>@wB3Zf1R%Qd5TI$JM*L)n(2_F zqbuYu*Av^RENB^zv_&m!$x#W~c*rzQ_rXkc_SE>d+)htE^xi1KoIJE4ed-wW-B~#l z^X!rNC2_)cxA+5`gWKMW6SaBgi35+0IL(*a5VMC5>s(9kNwYWK(W7p5C$xM|R49;g z5Q_^H2C?fce>n*KoU%LN^<{dlf^Q7+{=TFH^8WqL3zRf2$WG?FohdX6%ad8(`=if1 z{hGWi{cP)_rROVf^8F9g~TVv1O0 zW)8qF3pNEWz2xlIEz)fZleHM1%_{7yLn6LcM|(byXv|*da~ucdT=HaiP3v+`s?D@uUV~3&MBoh;^KaVeS(gfWN>`vn;6M z=Me2#5MCbb`MNWK^U<92!(&VCz4;DTQ`0?w)BKKe}Tr|Dr@1*%EBAT zs>c$GOI1)Bnxx4{?3Jc3$s(Ex1W?ecKQ4 zHA2Ki-(c;k3wL6fbmA&gk&~PgH3!q(_!8sVNs6N`)A>?TMX~J5*pq_KnPbok;ZA!= zZ&)X>w~!x0My459{iL4eyP~9bwI73B)ba~;t0(=6Wj>LnFA{|Mse2$%$MThjUVZ)S z;cj9_wJL0*?Lso0O3^*(Mh6Ap?`!sKmL~N2BZO?_LNF%&g_d_wM`uhX;92O-Il0fICvlp@ ziotX3vm;Ec;~m`h{jWW}wQi}p-AM^IrFQdP+a=mbp+nsgS#gY8P#i2JLJ3RY6LRN- zSI7kuP8`yVM;p;h`Y}kdoklw6-h#n37-vHIP= z>aK)+5({`-H1eDrT@_++Z^AEv%c^G4Q_-?G{I!IoYk6hdGkXfZ*OD3vk-`#E?Arm$ zI5QiW{t2!xf*?u$u9CkEqWo)Uo^d7o*rTyo8JCgZpivN>d?ESd9eo7T{Z~Q3_i1VH z&6)>%{U)RQw>%B1bKeUjj49v0v*|znfvB-s(coQz=1vf{z}H7#?wFf$k=!azi1)2v zCn0J!qRysX|0K+p0sSOg?Y>}>zr6+j@I zJWLQS&i}X!2pb0r6B|1R`}HeQ{)Cwb#^$DGj?_Hd*S7*S zcXW_9wikg}+rn&&Z5*kuZ$-k!(b(P=W~J|FOl_iX<#2s;5ttRsUddM9(3o12SwckQ zY9gc&uyV#frdle==sQ?my)NTwO5)$=9j%?uj#{f~(;n%jHCu;mdL7-h*lVqBUkQdC zg*JYzE6qR6t|Nci`*`@Rz1i*V><|sCL=gD(du;#5ym#gAmGZxmSNvjy<@mpxvXQ^+do5)aO$so8gl znHo0R$aLQ}K?)NrJj>kASD(8l4jD^KOZ3*YmHj|_5sIL`ad~nSB0@*edaKalAsOA) zVQ-iR)$7rt0cpdM(!{chz~0Z6eM+Tno99Y=g<)=vn;F_>z%jC&HK=w&hi5dhD6G#vxD+3Zyj(Zi z72}txBt92eF*(;1j1cmhKWD5~@u+25W25#w7+-GMi7C!zRAYD)+-gv&CVLnu>eVlB z=;@*rR{YdYy7qM+{mw};XI6BE5i!cH(`c~kzE5Tw&(E(A?qP1lRp>ZuI=4_jhQQu; zqr`~irx{D|jY9A~nr(NoT zcyVNe)CXPk(VWXN3$-Y%g~O|IsCJBvPu`{N2JUqu&c>*`RK2zAeTTR&$NFJCSi%6r_D8@RAtw_@^EC%Q@U4Vk(9e#>Ujbau1pzxy(oG0T8~OGvVLR794BJu;)6jr z=I#Y!S_jql?Tgr?JcJf;D1`cK!$r5jeZSK&dG=%khXMr3(I(v&*dH1l#N28n)?J$@ zWb|9Z_f6ST)Np5SR`hLX43)9hh>UYjoHCo&Tl}_a$R{a>L^d?0vWzIlg6M2sBIw)I z1H+vT>z|U_DizNU3*-qk+v@>cz3&Ngcs(^~P62feq3Si8&%L@~Z@H!sq@s7nX!Dys z{T)TQDbhxIDOe909b|#B)8W}1%EjYjY;FxeggK{IHeKB^7Pvm)`W{lg5*%r)0{_}X4X|BIJP1C%JFhIW;j!#C@&R127oz`Vv`rQKQ z(S)*6dv4S&$9+KF0I4<6rZpUdz&y(>p8-3$=YgG9jRS+9@&Qd_+F#wc5A6cii$cXg zKI|KhF`$N58|YTzro${|?R8QTVSvrr0eeA-kAcmfU61dBe4gJ42Z1Ws0&amm2iM1w`{zP?v>Cjjq^%pMk!SnEZF2_gr=cQoOxm*kGH*6Ope1Uc zGd>Rog@IuW+i!V1r0LWpo+{alRMw-iRdWurk62-a^WlW|LGf|GhmQ&^UqFNHoEIHc z{pp5FH0NlMwiJ(%MxChnQ*)*Io-h1`e&L{R4ZsJef_I#CAq3L6+H|^kA%uwGk(C}$ zPkpA&JgqP3hLkCm-ISD5Qb{oAIV-xps-cV1#!a{^8kt}0F^%3mdDys^%noBjWZjBs zSznOnSax!9jvHO(LVA#wDsew<)7 zUiL=Z?s#{$;7&wX^zM{{dRHhHxte!!7>hL*B7ct+X00|;mbvZ%`esgh-3FbZV5Q`k z`AUtxc154q!SDBrv+nXd=`L04!ayR)e`m!`>kG%Vv{eYw8uAGBgekcnM2MgeG;gI~ z{Yky`HTH{==4l$SglrU|6vbI>=5(6f=&<|HCEH4VifP%xA33>R__9*r@goZk{SH)0 zNm}6z!40_;<7YJm($?owQ|+gZE`R?y;ugOJ+>g?6>3H zh!;U!Blh>lD8PQwSf+ghyU5&iEAG6h_LBfU)VF|PdKwwVUG??-=)Q*DJrjnT5bd`(;r60u1K=%P#f#K?Jr!L z6&tS8mAMzOtVZX|eM%v6@|0xZgdp-kiC*Ry{A)?>LYxMk3D1216Zck7Bc+61u1z9aH zP}vM;;!DO#=pWjkFq#oRHwRj85NJK)mB_o|h*A|D^`bVVJ89<0>XbRJ6voAC{ah)x z79g^mIzuBV*&Dd3vip!qhLCO+kGyROx>AcxksgOTq7Mp(?DtBNPWUFcg)dUraKVs0 zm)OnqFXx5u&4v7_L(-m|flmi6OmsRgntmV&j^_w2_bfuGcbHGkG`&}~QLo&z%7XV| zciQ%L;RkC5jybJEGdXoXhh}R(ZB)c(O(f-4WE4_uGYrpY{R2n*=K)mK6E~r_J^tcp z&s2;W~Cg%IN#i5{ZN}6E>dXh3frN;XgUyOjBcZ1wa*u}zOBAr zMhh=phAvMJ11C`GO>T@es>A@vRwDQ)`0!xvL6Xe5Qu8frgfAH#K!bSq3;AtREE*~b z`Fed<=ehi4*;meWU0dcw~$EF_V7F|@UU!R@p$q6k(8uCK}6n%#Z_@qIrx+mto=H=6# zqAnWJ>s}Q&h36@)L$bl@d5Bs`zKN52n>y=-Zzl#u!dwq6n9l=Q=4W?;&cKfC=T}i^ zug$&9YV>iw%R0^>ex&}Z9)J%5FVh(yF@0biw_GdQbJ#JntVCy*5XI7Z&LyLz{e;Tz z%9FJI9cRhUakFaAFLN-ynnGp$!x6iQ4&?*uL)j+Kr3@K61C*h9)MY}=nhkooRE(g2 z$u-mznV#*Eg@{fHI_&Z&;-&C#O@e`bMf2PS8^L7UCXxhV(hefScN{D1s!Iy_D0+27 zPbYD#yO6oRlM5USA;QVni=ylm*%z{$p{%&z^4yD!3q;7;=2k}XVnzZ0J>A*60+ty^ zgciDy11|gTgLf(}hJ`%qGICR7*NgZm)}c!9`UL59M+=wsuh*~?E!N;sS*>C&mL&8W zXs#71CVIsPU^IMA`f#`fiBlZjTcnypP10B|v0wR{HwaKCj#BJ>k^ z_YiyWU?REAUbgb$>A4K2js{Y;TgFf9bh7)sVh$I_hU`SCNQXW9%5{$pkV5}-CyU=- z-MJbhjB0n?RE5K06|kS|5F7)YYC@6~%Tu$`naP-q^m>Kh5=B0u z^6x>v6y_Rh!F&?)-CPHSqnJ9#BB6JACMW%CN>_hSLwYBv8^3>Pc~ zH$9$VnwUL#K*yKYR9)`Lk#U|Pb&{gv9gs5yzO<49;<9TGLui=*73XnWDs)nGRWvtu+!JI3+TV`0N2H0lpybGS&f~V z5o?_C1rMae5|$<9USIZ%y1jZ2rYk#w-sT)&sd{!`<9AwTsav|70pY2f@QQorl}>kR zVka^WTJ{kY?6=eRi_kKQ8ItV@1eH2nwF~>;nCZp!h3e(38AF)T{z&$TS|(@9^ge#^ zTE6PLA!J#`S*(tn)bnHy?M=su@4y{&-I$lV{2_GNEp~CFU47Yow%157HSD$NVP3mQ zylF23go5l8XXY{7)GXleTCdu)@yR4Yt8+!is-;N@5-96mT7MU-4 z`D|)YGxhL=NoG%Wf%64g!G$&s5RhfBPK=G#rYc+M)sPNzkmpjxOjyRF7-1rq>W$W6b^_+f1Wn}E2S zKhWz1KP212d0=b)A#a$|q!rX`YW1HRxhE^t^n#6QNnDuy_)nxe=I|PW{h=LuMT#MF zxSjLb56Yq~A46jgfPABt!)xNXY<>AVp;#ayc2CbWKhfs-RUXnPG{RMg9D2nW#kx+-kS|TmU@sC9IEx(leeWGhsdylk%@z|GxtUg z(f6P?zwydUQ)pgAvU`C(ZUTGTjM4WKS&n__j+x|d+9uEuh(3=q<~W`WdDM)~Y<#xh zggc)MBpWq7o!y{JCDHiB5H&p@(lOJxN?7Jy3^3FYlmN_YUEzMm;mm&BUssy4_Lyxp z)NRjkX-Bd4hXFnYn%t`05<1d3#{@Pyw8tNxbefT^Ei*1o0>VberR&6f)nrrL{goNB zAGvnjYAE}@{t(#6OZ>Vy`p=JZHV~&`z%xudvmMZX{d`|H2#E-jX=Qa3C1MSb0`6VO z6@W%z&jalHrOfsx%`MogkO5=UngR2j@cmY6(M_-#Q|NTPiL9F;j9Qg+bhItOg8bK& z(07>Mcxb-0Urm%gvE`^yu^(hsD%}HSE=`Ys(xxOq*L<>T?8*oPwnVd9I6I>(;K!U4D00^d>BHBD*LxI_DLBFv}lspEmy&xR3OU6k80> z^yXY7a8izB3w)Sr<*G`7mvtvs-6g(yNdL`*-h>q-Z6M{5k_Xi~)DmvWT8T7>{Rh7U zFo5OX`Q_0y$T^k0k^`d7Nrkhi4Ibz08Px4m5SuRMAf9FNQ&>;EF~jiE%I{F$%)Ml<1lq0d21d6 zuk##|&2d&u4Rub>ZJL(OcIK_DH&p)D)o20)?i#7;>=C3V?Zb{=Ul1OoTnR+aJy?Ah zRBw}~;JwXOHg+2vvgIAn$ z37W{bz!&~Xm?16V?@5qDfJgfAa5%g~QXbXSFWYnxZOCGjOr zpq40QI4xIUkf?za=SlY=<@LhJsex-)_%Dt=@DCiNKZ|vx4wkvFg9F(YWi2riTB_&# zdb|k0yBh(jbkglrPTzHEqq=nh!xyO!A$|-2ag`6D*x)cIW&#$Nc>O)0z4_IXp13v* zvUhc=QF7yT=FP)9q?nmSmWsgykZ%uj#|y|;FH%Fb;qT;{QDZHBNYt2YyC8Osp{Z=U zP6ZBHh@!q{cec(k|4Ib?+)0NC_OMj^5Mh|$zVucjswHG5I&W`={L?2ceD($aZNIju zXhJZ&aC#ZYB@+_I#hJFgvMbx&`}y!olR5=776)fYYO}lQ^pLBpsfEx!Hq0ci$su={ zEsH-rPG*0}F^l?1`}2&=Rhei>MhDx0q_;7o{g1V-vGl-|>YLl-kT7BH)x)RqU+P;l zmGF|e-mzV6ila-s)B>=ol)A1m%WM+2kSu+-XjknwCti+WZcz%T?3>S;r%9C21-Vuw zx!Z%1f?7!*I~3>7Sci*8MsI7w;pMsYhAyLWTlD8Ciyrl6aI{?J+Kcv}+MU0Ewd5Pg z$Z&%|^2p3@=>^hul6_Q)NAh1{23!`~X{IGZ9CRXP<9B2K3#gi*=zoQ(^^5;R12IO2 z`-GZAspN~%w}(uqR+q&C5+^Ige$jmPQb0snU850WYDuscL&4k=M@NxuiKNUH+*mBM zJ&2gvBqvODomKx9`c2pfDfCKdibKQBBVtlUz($aEG4^2~byYm`$2F%bmH79F8b>CD zbfdyAoa{hw!hhtV4-iXe{MJnJ4$S6jaa}ZMU8l*1Q!V)8=43sz$NtDnf6{=5%vBor z|B96VuL0KIh8+&eIuWr0aZFmSy6$x6Fc*_4+ZK9}|F_6hhYj66}Px>6;h_VNk?UE^e1mtE-YfP}v<+xnV9XVYO=r!2Y z5W!6NQl&o;TUPTBn!UK@7p_{QB{3|1nUsbNzTuM*FG+p5^)47Syy@k2lXgkI0OC~&^Is@Bj$|mWt(LhM1Da(8MD;5l-F+u#CV0^dNsdH7#gvV zT*5%ZQUFog^x9=TTo6gI(4w+Mz2R**aqSWvd>3;-7TQ!GXFa%4hYnV!jE);b4%Rp1 z?l|skfqXzbdS|G#qh&;0 z2ms*s?(IdT9fgx2L7KmyF2(LA!fQCN* zdYqL_SXNz(7t(Fj0-Pl^m^%i0hQ{iJ8K z@nm|_lTW~Pp~-V_`bs$nit!7d)?ZQ?Y`Xt@AKEb!$zC_3-lHxt8~`>F9H_U^szxCu zaPD*?dCjFQ1KMNxIGuVj+$Hn?{3THA`O>f8bTX-ehu_yD4`<(GS5&dwGrdp$CXdqu zAE=}vlC|-iw()Yi=~PQ6fig4aDy~!v1i(fKM)8X6k#-cu&leiNM((N<=&W|cc+fEd zfY=rqdPo3cYP-7UNFDZt2?9EH&SwCd?k0LZ=J{Blo5ITvq86rLZ``edZ}*I*ic7h( zG`y98L`6{uXUnMntRshNsOj4J zwXd=VTxk%mAB6U<$x0MG^)|c|eATF|N~ggZ9zTXjhNRWS@aukyuj4x~#{+_POe`N8 zjP%u6aakinMt@lQ0AOBi#j>vtx_P(r0lZsiUDxu-2F-f7XQJoq3-rE_9N!c<^dOYI zsX9*XK(;*<8@yX@&+JazKjrQU681T4*sm0mpq}*@Mb{+&^ao^CnMYX0_o>QV4lpU4 zM|D?iUFlkNFvo#uNNspQ>R902y^gY!8UIJS$hkXLKE@B2YdE6baFk4_OS)sQQP8JO zQjCX!Z`QP-an}iU(@1bFw*>=q({rO=$Z2z0sEp@b!&WH7^Makgg&jcpS73N2Issez z259Lo*4v>Z3Ov>fy??0zIiCOkp_X{#kBuis0^rLMj(^9p|6hs*S2%0N5t)BwtF`O{ zzL}uQ29aAWVD_lPfn2f_gK&vy1KfF-<^1AMV9J4@70d8!MOg!DB^~<8QEQ1&Y9+C5 z_=co8u3)2$XJDs$>gf4=GDicNUcPg`Rfb6ES*>IHM0& zDlh7H#C@{`P$th%|z0f)hcoAhb&(y_|Gx2kF;8VqD89xPM zpYlA56Fi5l&45E>GULJq6O7cyZ8E8c!=9eGK4tSEmr*U7!72oRJxgwPue(y7{Ws3x8cm(Xx_K6($)B?)q(S?&%lo2|VWPq8 z!`$CWns{_4Y;Uxj*hef5d!b+uU{ndnFZYCDoYc>8?5YbU4gd}vN#D_GZ{KP!q}!n` zduBLES2fXkW+^n=xvo}BsrUMF9do9uC^_GHpt)Qsj-RIf%|rq?$h!wu7VelOkl}U* zdyN2gO%uWG1vZLx$YYbUa)4Vddaes#FV>+?lQ#1e@!2T00v^DS`84$1i-X5)jL5YF6zph+b-}Ace=3E z08)OQjm?lBjf4ctA$EUc`Lk}< z6nwx(P^Q2Ox$rnQgYTY|ZY+v0p34w)-RZV<{72StPu3cVyGpxZCgz9!Org|F&;?e+c*YbWXGA&d9L)##NPq=yj7RL z9Ir1E`&esF>I|T+$3J5r_#z!AxBLoZmjP_M|5m9h_eRSt&ZeP<&`>5Buu-whW}3VQ zcwvc`e7hr#8>m+@Q)FvvI*Rh;!Rq&1&!0W-t48{YU3Aj|E015BVONlLKaPS4ti$ZL z#<=)>Xt|9kfvw?}oLjDoqUdxs;C}cq$axU6@IdV7vvLh*`I zh@mz`ElW>}`*Q%l>RabalKDya?^CMF`u@cj)GPNtB~&91ps^AG`-rhnwg>hzglvd> z+10`M85v-rdrr|8{G#6>D@gXQs* zdk@)aN#$tMWEsrbHCv5)iYK!hxE)R}y73?lWf&mtn^(bv zz8p>!xmiIIa+8i8nyHukf!qs!%RS3*a(Ot_En~D;j@N2vj1?O|ra~ zDqR32ygn9&IdT*7tu4mbXpx?OfnvkcO@FWK&jO3ih=Ai5laX>xnkfxLz8iN0i zB)Ya!4!13|ZH--xx5NOV8z`44mLf*imZ&o=`e9DG3dAK<3+E8Rr9hU5DEH zSlMxsL$M;Yyo^0bFYCKcUpCJ#5wgJw8}hBH1glQIIpcznGu>S?Cg`>-Ngh=O=EcxG zUNy=gu|YH^s6_0_Nh_EIREtPn6FS1~gt2?T0F?E#n=BA)l&Yr=k!9>o1k4*7piDCZ z%fj2dov=)0r@tYktlj;5g@yx3iEbeqMnC`ikv3S==ux^@+wOoa(OIjW@|}prjVvJi z`1NL;-E|&Gp_fBvvKEq1YHkb-vBJKJ$fYif^F`GWi!WhNrtFT(Jd4VD*w=B#$Lk6O z>7D<{8FZ}l?1z7{Mp3Vo0+vtM$eMa{f)2QS&06FY@kC(o|_rxAUN?piyq z&?+D}526X}mA#J91Mshf#hKH5mL{(0n?)z>i|&q)VOKB$Cm^l82>o z`6*{GpJ%I+PN^?0dnSf5x}Anj5=IA;o*P^P&#cG>=OW~suC!PZfC2rJ>|9s)*p{gf zL6^h}U0R~&r{l9-s#gjj*$F3MRswmsmo2K7cS~KCf>aJODWlS2UWT* zTvUp(%u?kIWsR-QGZ9zaIwU4^;xSqzP+r>`C8u*b*6v-L)Y%9Kj~n%)!7sXbo}0f` z7L{52vWR${pG?X=!L4`>J9NwBb+YJDhNIIBgE+3tn?u+}23~;M{7^kWo-~f%%Xnb~ zGS*WxR_mWroZo#vEtCipBPn3JNm9mSWS$I19}K-y{OGIrqhe0mi6fdc(_~uz<=Y(R z|3XRA`=~2{BLAXWF_jWfM2ni7e{Xq@WT;B=L+tRSfHG4zccXFH&5bbxyWr}AZ9AY$ zOs?V4?ebuf%_v@!Yo@iz<9|;69)8KF2qYbkRiNPdY(#HI!^RbnRx&fEqrJ3GHhfJI@#gYT@_)5U!T2e-bYCtp5t(vMtk6^@I=SfI%R?@i;>Jmf<<~%dM0L z-E&rLQw4FROFou)cErYxEM~)CR#2*} zwsH8YNUB!S_P1a7DgBY|vcHjsz3PJ z#Phn4nac?q+VOkpmkk>fC_PfZ1ha#m0pfIRPO>l_C^;HICX6rFGj)h8&5`92@&Y_z zfYtF_Fm6u7UEml0a_qXUIEqUSU3Xl2YRl{F{2r*(ld7}UX1bk9{Bz-<;~c<^E&*=z z%x{YCm`ZeB%nJk>pTVOJBrZkyyDs80J0-`AEZiI2dOpPS7@+-zFSi;v?m|s@a;cHs(8@`8BB2VJQ4grb&s&L05XPLuwd-gMJ{rBapp2e-cW&=(oYUm;^)7sEFw= z>ojf~q~gb^j-)|ra~D_Y>xK_qM4|;w@EHE)kbG?%T?VcgkcT46GVbSQh0}^j(9O`% zE4juXQ=@TWs4e%jkL@I?73axm79mT@FDsMJ872l&vN_!r|5bs>vCjHGxO)$%CbKSF z7D_a2!dFM)JTn^2r5dEUIL>CNSC5WNunY(6zMfY zgb*P>AR#~kB=-b$KAa)n`tSYMf7gHSTCmmLqR{`>4k z-5B1)Ijc2%@4Lb)|8zXkd6WyN5}d2H3TsY&fXU;7jhY>R_7kN}uj>erU!TuSf+u)Zi3$77 zloBysj7(r57Cx?p0tQin2XTI=DA9*@W7ztIwa;Wl4mZL3<%!z#-3f0ZCDC`f7>Z&( z5-mH@#aP6-Hx+gQJmOfH0A`S|0w_6sg&}U~$2xw1&*J2z zLB)i_F@C=H%}-PSqe^*|79U@feVqW`?aFP!07D+JH3StP4R?h>H;rws+&x(B&j;eg zF`{4^|4)ZDw5#(Z)kboYQ_+AN)#1$m^;V>|*8D6SsFtAD0-DuTf}a~4{&ZC@AV(Q* zscmsH5mSxVm$$ISW#*KdI5!*8YvY}~+%f3&rF|zC1fry7O2l<9y~XBfW;DqaP9s&| zNdrSadFCq53Zt7=0~Ng1cT+*&4zJn!l4VfYEl@w7!sC8NWkb|yUD?zU4touar60ZH z-~mbR(Y051gKa0&-*QVcpZS{{XgdOC-zT);5;)*@A7q_B6J}cT<|lmFjBmOi z_~r+EG1BM47n|)Rwv|GN-31#h*U`oM>HB z#S>W=Y+B{;tj^kJs)wK4PkjteQe626$LaCHD;9Qct z#oCEY-@Io+?1yu&{P6}L4SFU(8jspyZS?YtbKU@?aW`raX>7dk-;l=pVD8O0DC<{O ztRga6p+<5uc4vGy$dpAd4|SjWwOPapcuDSwm>Qj8WQSg;KY5$>uxI7nI_j z8*mX@*eO_k(@&yuCWyWkOqu2>QJwC5bU|N>Oaqzs2aY61^z-#eT)PV|Jz%uRX5|*u zp}Pt48Gz3Ea~gN*VqG7t-*WRHJR?7$V!eaHkUi$5+!_lw03>kWTkJPWjM`_v-(TEH z8&Rl?xtQyQDpV${^wI$xPFWLethhhnph6E3(?@>yoEr^W#WKgq#76yc>WbCK+j@<9{@$>Q}$88D- z727+MLb#P!5N%bjGPncK#~bq$N2vgAF6AYEl(}8Dq92Ky``VUilnSds_);DK)z%{S zl$8k7nB#A=UxT0?V}^S`ASLioZMwRIw`+TeivMUT`AiN7q1JcI^oVn!v_Ap}N~Y={#_9Gm?l zY6O<*%2k;)9XR%=Db6eV#?0&^D^ZuNUQ=4xE>+>GeKj+#!>i#L&EA0utMvyCkyj(D z#uuEjjdXV;#;co*E302huv(Abv>ixDZv6`CkZ^wQIxlYFpk?9eZQ*eV;wQ)fUlX#$roOYddWi`NO(DWMrzXZp`Kd@>fia4+j`l7?FpF$Q%bEvkSR z?Fq=v%f?r2FUtYLW`$u57U34qKMfm%6l$3aI@H=fBxPkjGi|N0i`~~5POYLF6lnXrTZxlaP`aoPH^$RMh5wxA~^s5 zXF0D!#>?mpbaErPDnyfY&C7>guLSyu9{LekdmRGK5(aoA{y!P!uR}lpDD5~X(1T&_ zOkVLyU@K`D-f$V%RaEA~bXh1Y!~x|-W0i&FFYL-r4}suP`n163Z4qlR16h)3Ya9zm z6SOGrs!%b$gq=UL(sQpsjOiQRnHV6PKNDqD04y6N5-?Gzt*i0vIaU}|AJe{@nlGD> zw*X5QN3*Bw-lDbg#%uP9!3S%pY9N!0N$D8k;*k^(-ilxp^}5`!@&qjFte)sf#{qM( zHSZ=XO;hCDbTmKO{9fxp%jAa1@?E$={WK4a=yY^@l8bMsuGb~h6yscdGm+Ga9@*ro z4GLkfMM2X=;=0}VYxfzbO_E;U`i1-^u!R<7vy)A$nQevYv}%VUEQLKMSxtdjdcDr_ z8O?)6JhdpDc2g>9LOT)WOhB4&?PmeVp9>ML#p;%aDv%(qwBhac9+DTR2_2Zyt1cF&vIcXCa&O}IEf^T_+EjgRmQDA+eoV4 z@%1UFI_v(vpir-l6Fu1T0Xy*{SfreR6LF9fBo5m*QUO{e6k8G7AyE8In z9%d?(Z^WjEBg#uh(gPOL&8JZA*Q5WDZnnOAhF@Sb*+rugA1ze*qO{KcAeR%aWF8nQ zm7)$v8qd&)xjBkvZ}dmL%HA^$ZM9pRoNw0|Ji;Rv6x;gUE~>Jbjt{uKATD@qGkOpR`&o&6q_0S zB{I$Zp3<+?SZa5pxtrZux_er#!@o{JNPmvS3au*LYX>qWV-yhG_fmIH*M;nPz1sW8 z-GsQmE`Dc>zII+h7*(yQSp!ds=#J-8@q%EvtkENv64EP^D~5-{1yePxm8nO_`eJgI zFIsEnm8t5Z$_Hg~nUmi)_ZxyedrGO4o%{8+u{9#@O6(soB+mdY{?R)45B$St1vY8= zT=8BzzivR}Ya`@&x9rxT25XdjaCzqLOR9V(9HpHxqgIxVq()4*sDor0;sU?GVii`J zy*4^uIKPz5mXPvG&t)r>z4`)5FbRyJ?J^KM!h+j-F~c%h`5^#`{uhD5uu52Eo{3cT zVlju1WBB1t&t_YU{SDL%#ckB)lCgXZI_t+ViRE7QYJZ^${ zPsfiq3RB3z09d71VUaHnr?2uALr#NavR=K*L3m&kDOeFxmu6w-Qs^AB9u}tO)`Gw6 z9cBn!s|O{0wl7qMKTUgF;4gB3krT#cEwvnX7^XI#LZs!t!F{J6tb@#a&AezdqW|F% z^aG_{;mjio!--SGws`rNOGCfqDq#*CO`N>*efcU+7(U^BdudqXWwKjbaYUxgW zW;F_TN;+4ymozO$&Vfa`7dk(&Iuqd~@3sGm%10N_{SA)G%V{%lJ|$+f$zd~Na>h#4 z)bc>SxRn4T&G2R~28Z94c>9uMW5A;C2$-Y3yRLT)`}uAvEiaQxx#cKx&PqaSC_TV4 z-QkcRF)~GIh{4eP3|co7e-{7P5Av?XHr%!xW6)!Z1?*ufzB8vl?(*-lqW`ZNApD(C z`d{q8P*WqgvnBPXYccoE?dc9+8Tk@ye)My&lj9JrJ!y8)!IwjPuyffkB*2mG_o&N^D90Y8hv!w`I0N> zR^sOUb)GRjK#9|?7D5q^@7P-GGrtCK4}!Kpr!}WcDhusrQT&vMV3=<>zQt!^nDbfn z;HS+Ysw zn8?c+N;6q%>sEN>wGADWk*^MExi8{9R3$U>N+}Wkx%Hi2TnNO7xL=f6+hT>!{~)5b zE(C@wo9R<+s;# zoh&&u^u)RFcw(apgHf&1Imd4GhW2b*@Eb~&P4f0LrJ5I#ZoI|{(;Bo%h&`zAK;i_; znOdF!Yq2Qoo7tlw+XD@uTlDVA9rb;n=(CA305zfryUe0x5YROVrDiA=NzL;UbZ{bm zRq~ITz#5D8%|I)UR?+_Y^gHP|^SPxK9`I5%`;q(2Ur9#4%Z-*Dj8xG*4P|@{duBCs z2tqxAQ&nd-WBq*mR6%z5g2Y(I%ku%DQogm2{vlzPi_Luw=vw0~sQsYXn3I_b<9HEB zxQ%&|u3b=PE!3>A9Ucw%W6&jXeH8V)mp9t!)*s0iwrNGdm=^DiLz{&2eORRO5z9uK zSq+f(q}(p``G$e^h(HFJ`%g+5m<9TdR$>v!MDeXxe@bZnN8x;L6%!Tf`e6JJpk{Vq zb%Y?4D$-MOroc^=`EBbVji#bI^-mQtXSrO<@^2@PxPy~8?4KpgNO5vvy9G#PXGYVD z=9QyogxFt%g12fJ`hKp85ionQ*OAaUljhek^v9qGY5hguIA_T|F)(J$ShYaU_r%K=}zlw$OS zAg(o3{o;gF@E22%%J1V1EA^IJE_pR%Sp z0ko`%8(Gykzi`lc)@!BJ!X{N5$f)KV)14myQ!kES<`6FOtFScESCy;>bd4uuYe9$( z>|x)e(2Nx>6S?vZsD^;vTF}@wofki=C5TfwRQrQg%3Xw=k~}FZacz;!UK>C4OO#qNCu0c*G>mo>LbnkL!39541o8E)w+gMpL9M}1`hC)*h7NYGT`mn!Bm75Gbal%1 z+EMQV;&02T96_g)h}e>Y*y4ZcmA$$*C)Mz z`7+Hq>Ilx9@TMM|jR$hHq@&ziY>Nt_%x6KuXGFyjs2EVc>f_$?wdA<3f3oiI#2j2u z&8P=2IsSTOGDgnEq)*Fl?)C*T?BWgnE{qS6>158|^^_n{8m&T9e<$y|VC-a#N+mVE zX8&P{erLdJokX^z*;@NCv0BkpAY;#H`Pg*$@liK?;0YO=AeU3%3aeG>&CkZe$T-h zmF(KsQ-9b2XEH9bim|!5w(NoUqs1;JCYb2LnP<7}zGp%xWjWp|`C^rahsVmx6Zacl zSGm;O^tJBQpi2teaZAbov(3eyWa;kwm@uaX2x?bDJavF(vY`+3mD)4=41KW$r`Md- z#1^*n>$I4Ri8A-6TI9WaCi%YED?%r$1n=ON?f zmp1vAo>Uqndk%~*fEFbFv@k}7>ij-HArGEL3M5M!z~2}RX2$ILbQmX}_5k>kcd~## zc_?+GGw>%L1uy!Ot3%x1#&Z416$!i2Wc=&oZ5sqYI#eT&Hjto^deC{R`eyLlTbtdE zI_0ZD%-D-q+wV8!v31|Ybb#ym091emK!Bjvzx1{=+& zH~VP9uQJL_n5VPlY-Z0Xo}YV(eT<PO3lTzEe zwI(I)rGvJKGcl6UOJe1h3%o$Q^Og2oP7{zwH+8n zUHjLKRTRYg;m+Y#ifInz=tVj*w>)tLP~Vy3YjK{#7t-0tsCv9hv;yHAGtEC6uSL&9 znsS{<0Zr(aZ-&RWOoM(gpz5mphE|k$o7;U*&*CwCwp**~%W4!&8r7UvHdTgs^{{jlCOstGS>p1_gq04`{^A%lkK%Io z$D(*4Xup_Xtxb^7og|0n(ATU%3tK}k`BYJh6s2CdBufnu4s@1gYKUQ5)u4?q3U z+V+tH48T!tZEwACeTQYNNt8lDS(wNXk{{{j^$g{dCj>^=mut@Urc~$syToJ-uUlxQ zE~=Z&I*;-x%p_9WDv+8<(h3dwu8cy{=v$_ zfv)uQhoC)|rzzAeZoi?Ub)$Uz{)V!V-QtOD7Y&c>*qkN^0p7mJ0Aan6a(0?bqF6$j znf0t2DD}98ayW;wyPC!@&AXAcxR#qSS|1A|=3fg!=<}6jtqNNMskO~wbQUXtGNqh5 zT3`5^vV@^EKmxS#Z0QS7J^pRwjXmGRWl^$sbJLw@!-cIbQ+qqY{6ppE%hoSS`;$ev z;+A){*K7rqxYb+z`U1YMFx~c*>sAPtk7&29_z1*q9SpJLnsDoi?z$fiu!#Hj)&M@D zDk$7HSbi2yAklmOEgv8?ZCDwqFRE2JL09}ft3_$&mQ`JpwyjPPfY{D@ik(`V)uLc= zg9lmR@`KI)cPys?6h!}%)|&s|pPO5G=Kt8EYS|{Pod`p*L99R`2X|-kD^oifYMmn{ ztwi*3H4E>HH|+ya0m26UWe>W=OiX)d{`OX_p=Y>pX-Y!0rq~pXx#eqc0|^2L9)! z#eigm8-B5W0!XQV?rGS$XDW*47PaT%Q$zapTn;c`$<`6_X3+o8M%*ih26k@nDWSiv zk{&p6O+Gi>sIUrrImrtEx?cctm$BFwYqCz_{>7g2O^D?g%I$mLD(~*d@_3F%icC5L*B)-+g-l;HoA7 z{Eqx##R0oP5Li~D+GF^y#=M#uY67)ycclNWeLEo-9N?Ys2LxWwpMbHt22Tv$?2s{O z;%wi6-=vg=;*uf{wY3t{5e=iw&W06t%Nu=XsADFm=tJ{v)09m9_j${_Zp~~xjy+_~ z{zl1Vj!DbSchQA3*jhy|8A3bh^Es?N^;U^3L9bmDk0#W|#50~{iaQz}9gkAl6zkCf z-Z$Hhx7S~+ZM(yzUj%?0(v3YJsuI|-?k2Zan3JZb4!JU?FLr%-jTyEGbl7ML!2dql z!IcD2t$*1WtJX9uZH&XPwVs3dk%yIhXjIhHpVC%y?-e+M*c&jqb>i6O0??v><+r(9 z`3ee@#Xv#iNGH4mBM6~r1UIbfoi}ThXMjqKT|~9ij@-i1{@*Hm1t3BF-1cvL4*uMp z6~9_ay2}m@3(2Xn_8ny6*I@xlKj`=Nt1&M0?q&L317=qvejCQvhA z_YRIrKRtK^W!hbqrRbAG^~HIbjgih6eUQ9|BY|?gf5~83LWiZ-5F6)BOc#j?tB0oJ6NkI+oMUu-BCk%{gcOAgnw)LN-=oz# zl|1?inqBX27*(9#b8zN_rryAdUYp`{9GsXS)jHR$-stf|KtQsBmw-UYsM$zq?p}ZZ z&?Rsb$CbNezvs{PHJzwI*WQXKr9ktesq$#av`8sF88d4%&ETk@>-aSVhYNyzomfrnkzwFdqh*9m2`dX|ZYP)Oo06=>_AewH$UMaiPg5It|AB(qWAnj&)kW?Y^QUH*65R zzw0D6>N4mny%iMhgYGUxYlnaLN`6`{F6A$tXlgDEvpoOGtGn|@a>5G42kF}!0ME!* zEnd~`2Dh1^S?j|73h~5>SR8_}@iUNRK)yOjc#z+sv9N#T?VDQvhB<3JX<|^e5sqyV zEKc>E2--3}i@6UHvb6O{^K(V>O&z7b|HvCGBa`eJ-wr<(4CW2GM8KkrS296in3|OT zJoj1<=P3w}wLhZX{{~ScpFvmRyn`gC`vGSb>A8Inhv76O9P49!>ELvP_-302{0PPT z3(P@B0--QEZlRf2wvfj8@=-%*epJ#5Gh>v5T1atVbFT>8n(a~aGy3!I``hlonc59w z#B*j>amG-r2~pxqST0)#M;oNbY0zgoa6Ph>KLU~evI5bJw`!#*M*Fx!AA3;A%4Y(K z>y>Tf_4Jl0ha}b0J6mX-%7psrypl%`o1u2fjXScZ46StC~i2&sOv+uXv+JE>Po`xLO z?d^kz`Py$mi#TXGXTgEqKLfT7=GD_m;khO1Rz7*&gnolO*koAxV%N3hJRiDxA1Cqt zZ!~Eq;%9Da&}EMx@qX`8FFROYTQnzU z?oTzab)5N{`t^&|fXlfzmKgdtm|3veTSY(*S^lh$w2qJ+dqN#Or{Ly2+=ea7x=?DK zJ?J$8gFQr#h_^iVYjUB3GX(@2w~(29gqu%XRyaba(@J3LsqEO@io72ho+w@%?uX%;@ zI-%at-8dI8SoJN--MlVIahH&!;r;o}T#rTi_p+|1qGTCZ;C$1NV<=kKrLNdD_f?Wr ziJMAx4IXro3>ZUzfb#qZx7e=;U1k9)00)4zQXR^l?3<=U*RovvF{*ayW|%j|q3Qbx zfH_V3L6Ro1%&Dpp=RGe;+L&4Ao{^ArvWsFnE&MU|f?YPkW$sYCt>5;EAs5XZ-=VdT ze=GFW#5*~2ACx5gLvb^CfOejL!6iO_ZYIq!*3Ts( zEq;L%9qo+5)FW~_7xk+Y)yvZNx2>@4ayf>g`%%v3bwu}*I}JA4 z&2V?5{*~t4z7wAl3AiG{3Dk{IhHzc>JAzs0IjAM-NWzO7FM$(2MOjSasLn zX(_YS^ytA2@Zcw>pi`!D8&$lvG9p)l*8PF!N8De!p@!L;%Ud#AoD;IhzYMH(_%S5;igJyD1-itjl*jp-rjX8cH{P4h)c1^OV$g} zv}kyIEup5kmj$v|0px%n8>g7$JELql39Zd4#yhMoE1-fIUf^=fY4QIn9K<{g2)i5R z9Eg2m$N0NkS%y_Pk*@aMgo6UcRIPjQjS_N!C2T;wiS`gD47V#!-C0<#CQ%x1s2n}p zCkNoLFP>VD*LpNQUh7+4B!{=$?WUun&Tb26WLOR>K{GK4=`jDJ6Gc9tj_O|)zi2L5 zA80Y5Ugz6p)e@lho7b=fv`trDACYRN(I|_FaE-A_hyJJZ38HqD~7Lqo@ z-UK2m(HV9&%r7!H#=l%i{zDjjDM&^cc4Pt&<>6>+=$P z(!~mS=V;KLU8;>~h2p939DNm#yI$I7QNLfo04Q zTVw(Cb2)7Gq`- zaehxG5!uh{eVGkN?q*_1!Q*?DBE^RrKK{(;HJnAm7;|d`>@KlK!v5P+2n?{#K8=m; z(n|sV(wScvnK#FIfV2A?UxHBYKnwpkW3ygQGMX%8iS;SYs=L9>y5|ppD0lqaEIS}H}a=ns%wSI5sA`NBU`d+}Rmv?y~Y1N^nQLQRa6EcbI~eI7KI{*QCP9e0qR zr=yIy96m*V&F<#HWUs5&V~NiMZ%*+Ci6MN>JKY8p2Dt+*ih=QQ*UKzW-j?HIM;h7n{gB0Lcl;( z+L{AGgeJCpmk&VfE;Lsh7R~=HL|0(X-ywS8-Tps=>64&hPVZ}xjgv#W+UqRP5$$D{{)o%A zwCy_6MVhY@l+`2^6_XeDUH^`ZhaW!QKKwBIp;ElfpMz7+m7oo$Fj<7RAOks{Sw z`g~`iFYFxp!#(Y&|G|Q7LF$d!(H10KX8=5ZpBnlS>DrhkSEoGcLhaNG2{1PVm5<=X zPL*s`xeScnEx;>A)$#*H-CHcM{fWH+2@rtRDKd8hE_I zpx@Pc2Q82BV2tTfd3xK>$o8GNUnB{<7sd^ODnNOLl;O_!f?TgO6%8?rQ$IE#7%i<7 zjBQ;D!p5B5LrU+&N4!88d>_l_`tY<~@uT_nt8X4T6&ta@zdQH|GYC^(Qx-_fhvy*& zg>2T(%O)uUM?|Z_$DsO|l1E^et#OhE+TrAM+^wDdPnPPYH|~BjjUbAH@PQX?*Q!oz z2YF(06fHABjj^{PW$?Q4eWx1(p0|QKYW?5$yVYN!wz-7WSbdB|pgE=oTW%}W%WOcou79RmTDH$rX)mcp^66Tjt-o!~;Yp`H@PQaHBs z?q{fS2xO}g$$BcssYsKD;f0?k7jbQBD#ucahy5N-r&BrO{YR?R1c$V9p7F4kQ?1OQ z^0}rmD!KH{QdGBeM$c3^wHUD7oHvzoO&fX4sO2mf$|(Y{Rg)irnz1E3UTnkjBOkuR z${A{-iGCd*#xzvqMp=pxm+VvLoGRxyRuoMww(ihB|)1Xn7N! zM|5wPNoIzfCx)ahjdd`NmaGXwML4<_p4IqW9j+?M!qKg#zrV7YWxf>dFQr&~BEN$`~|A($zMJ5gs(=6?8I5f)e|~iMjPLEV(>a9B~e=6jJU-g zv_2%qDR!&lUb~+RW3Gq1bY@*gAt<^Lec_tiJbR1F%HgO|4=)&xba|LDgoyU zAP$Wh?HKBq0y@C_po=g1{7Y`;jy9$=irK=M`e=*rnUTa$`pM0-$~8E)5p4QR(tLR? z@_U2nWfraE&Yrh+ETC)*^J|5R^^f=nuCvUF*duZ_6^e=(^|7c=cp^^EuRCR!S z=ck<-d0f7BE3%FzfT5|R=XgRQH;4bzAzX3{S(pZdPYalsD-t=!>tc3^_=1_aUNNcI%h8uWj#_g1O_6)F#GJ)!r-y!J>KQB;sdFDp*vmH;~ayvul zhz&+M7K2Y+R^3pK<|5C&Spy}EYOb!gjQ2r(zhOWnxLOYarC#wPn7kt~ULChPRxE(- zc)+LPvV4}8j6wNsU*}&; zs4r0x7cJ2U6doMjbZH4(2XMcp4pv=BUf--=epar+OUfK?*8BSEquIFajW0&8YHu-) z&(DvRAG+826n?+I-vE;-xD{UI>JNJIuejTC;(NSg$yF-(;a6a%4G7`ZMN@$MlJzNe7+-uJ#%5_`weF2?$xJk67iu8pl zXQ87+vTOmEPKNb};cgK03jowYIr^a%d^jKIdX)HEXY0Foqi%g&CirX!!EK8dToRxj z6rfPm(aQW0=XfSS>?IOy|#$Si-^ZEn(c#b_*%W?3FxcY`8`1L1{`=_|v zNT-WAsewSm44p6xI$sSx2uJcO&M{a zQ@|eUMXN@N=}d0{jc~t*+?E*K3+Ko)SPBU0GN;E)M75@;K;Qj`2di$Vpz$-U4HQby zsYGuk=o4_?;Hg6q!(!BhFXe`cY}TB4H#tfLF5zoBZVPCEB9Dfle6OkBBb!SUMuHET zGxa>$@Dtl8x&&?j09jB)0NEyGDoc=5GGZm`{#SGlXdrZ^b1|4_=LLP5cne)nTNqJR zIF7ia;x*C*+W$COQ?E6#!3QkC;d9fPOQHDOqU#BT!4Zjb9&i@-Sh$Uo|8# zbD`*mzQY3qGpXfK5Pt?;jOYfY?Q4n*;9=%=jm$siMh3aYX~Bf&W1Dk%fFgus%e0)2zocbdO)oog;z{`kUMstP~xa;Lq z2y)N+#?|lq)g>DD9&mL)aJEQg!<-Zk!PD+G=dkZ_nqS*7IhZnD)vZ38w zeXB|q%_Dj^RQ<+dS?ccWwi(I9hrZr3t!=@aB8(a*EE7wAz)^@p?QEvQhd^AxbT`4l zO-HHxv_kWfp^;*{QzZ)91**|!E`GdxIQ)~@#pba{LQGp~yzlzAc>*6Q6+L!lm5Z!& z*5dcyE2cQ+tE6}t+bEMX-GBBxVf=arbJnDdl9HP>GLkVeUKEmnBO;Tois%92>`0Ax z{&l_Tt=Ihzy$FVo!JnoF3B*K3n%)#*A_}(9@O}*FUf5`o`K-UH-yLCskww|jBbp?N7 zY#MSkm7I4@2k3~lz zR5~^Lt<>P3tJWY#J0rQj=_#VB-UC7{-EoGJrRd+z__`6>S0BU@br z!5=iKYr zi>KKyyZmh@d3}hX_``*82T?Q}jPO~B<IykS7b1U;7ok|ET zMN<2E4KHXprFtzM#o`}0+2>A;J6OlZ{z)YiHa1*AQ86kb4H&VV$E*$2f;{A@JLnYa zQdJM3uAA1W`+i(&`ST4>7=e4w*kPY^du|$WmvIsYez3M>W9f-h+eq6~pH6qIsh#se zoT%|HB9!jJt~?7izQ6l~()W!|MgK#}bX~FRI3OkU&rd}2cw|~7*HQ)CHGJcqk`s%o zJv27@@E2uJSmTMOw)|d|^U$}W`NRy5ffQAQ8gCp4)pixNOaaUO3lZbtapD(YiF3tz zJAw&cHteSLoG|@<+W(q!%~e26f#4F&9diu@=Xt|E9d^h^0O1gty&|P8tY{w&?T@`@=eDc%mhEd`c3qr0+;k^4c9ZyQUzNGxhDvv~R+zQ$US^ zrH%I%s{vgT`W8X-{PuZGy0%_*@V+IgzGN4)3^_=RqSlF3KN6vpROyg&#flxrvetXc z^}d!q_Y|nRfq@>_{6sQW8>{-vo^IDp6$Gm0#nK!4*sfxLNtqd3Z>JdbL>+8X?nMO_ zts$&Kkj=#Oh_=1DCE&PHfbURs@QwvL`p{%6#Py%^C{P?N9*y-Cl^Wa)tKVK-Iosbz z^TxirPL5X_-DoNx1(YqrPSEV=FQ;VJN1wy82m4NuWEBImuEX@4J)*r zdmd{c5dtp6O1`s3L!sy4OK-->9iDUdp)jl(MNG%(TEZW+cFKh<>jxvDigK~&R{_gf zyiB@KriZ1E(ZI3Mum?ACtT`U%wAd}lr5DQDCfz4v_AWn1a*DJyJIMQOLrMRera)^) z3yHZ-%}}#do=vBsD|14Zf0N7LZC2y+8M(5_k7`N_U=KOCO+9SZa|u+DPnz$}%vA2} zNvwl_|FJ~lXIQv_64Ba%V~-~KtL&Cnyc4Yk7>Rxg2_uJWdq8azFR^| zkNQZU^Tf1=zg3Y+NxTMftiS+kiJR7Hap3u~Au?1c=S29?P$5DWOIIcE+>)bxUAF#* z-OFLNb5-65?QK#7ucZZ_GzB;yS12U}c5}{?*GO^~J&B*vccN&cc0yr1hSD^{`5Z+n zI? zZZ?$B>cDQA_H{JTc@A~^vNfxbJE`%JRtT?=1nZKBKox5ws7mwNCCefr0Bwy)@qP5mehHVafOimsPf$yj|P~^9tGaM&UJ$?{XUZG^>!!aNl_x!dO@0l-o z{c+$XYt^;5vBvYgNyKoCck@YYQv(}01xyD#(Wi&H28f^3B2@qTpjp4=l$JCd^SiZg ztSi>=9$3R=0W%Zhil^J6Lr-pMzm)oBtm|>3p{3SliAz1IIb*A6jf&@^733g69W|1~ z>8b>K0nbb6*=Uwcmuc+RxgaUG|a6Y9Nm;?kZZx7ek_=WH|`XV7NB zbdSUK3`d7%&#hOKf}1>mlPykYbTy3|{s}jAuB<`;b`zItDih4n;* zRy_Y&AsQ4Q%Xw|FRq?zlDaol)%5D<#X7$l}k^G}i-^N*`&6+*d{)nH;Qrz@BJTla? zx?&6Zrlg_6ir?=h{^h^uLXmF$@M4OJT+K_a0fZt~vfuqam_c`9D5+MCVJ~3jv^`$0 zx;4jx^2)zXGRpUDdbYt>FeC9G*-_C?A~H0*?GZ5WUynwH@_lZJShQ{bQGn9{LyFt0 zg972v)hczzB0~+@tW}50^UUKb+jBeJFp={WM)8&XodyPuljmz2Zvli$y>0KUrRXb` z9b$wQ4<=lC6=mR|>;W&!mL+Wj>w_y*q`3cf*Xrdz=kHAC!dW8uB{3vLF3dG%#X$&u zCdp2q%Y$4aBX_37&CRt(mN9z`T$HEn)I_6Dq4SYx%K4?q<#|T& z^AAVcJ7T|nJYtag?vO#4F8kA0cs6G(xRx^ixR&)72r%dU)oC56&6!sRxt z|FJ$!)f!#^2UX@OFa;*lwRvH`NrvE6Jq&TkO@Ixw}KgQL+ zo45uo;bloZq^hc_QH@$Ar62Xu4>)!I`Gu$x*BOOwHN^R<{rJ)FBY+|PY8X)o|Xq7;b)Ywg2&4iwlOHsR97-kY$+XSUOe`oCGZ@A_zdeY z>e3kvJ@dvUd|6DIDwK?M1ID`Sj$wu)v2lEWcGrZ<059J(M)W?y}0kG>;YmIov-B?VR?CZqk-EcFxl@2 z4zQhkhwlDrZCcFFQI*}Mx?tkl7P>x+5=T8$X~$XZd8=vpD(QWTGI$ahtwyga2(tX6 zU@mC)JN(=>KQlC`FxPMiGsiL& z1aW{vk{v`=tC@aZ*=Py5MGf(?8_4pu1d+oO0XkYBep)2qh5x|=N>9OC3=C|iuQQ|L z?FC|CSr+Ps)Aw$X=FS-A746|WCUou>GAEb0u2w)j1cjvC z`S6z3*bTny_Dx7{F`)ZXwGTgf<#4Ohby#6e^VUwP_w>b8#ZGP&2f7vt6vuVnIDn0c zA%l;f7%6uphE^CpVlI#f5(QNeja@MWIao^Bz!e)+Z>`PNCF%Y*=k8@cF0Vr`{}PS| zv*9c7jWtTa1U_NX3iHEX1ymL&7UWXokWnKp>VE!;yH;txSmKx+2OyGjo_)s@1*`rCd+!<5)Y`R;qNr>{ zzzqT_(nLh0_f8N6lq#b1qSB;G@1TOP1!>Z|ihy(h0ck-+dJ`g@5a}I+&_YP^-Jxv7 z2haQdIOmMVRgH^4|$Lx#FuaI$#F zxc-Xp`~_{PvtsCP0^CaKSfM})`#>72TSMkWtJ(wvRoC}BfmL=QYjwaIVx~o$(f*LG zCNs2o&F+Eo=)*Zuvib>i!a`PKm^oE~lwfUFL68?+g7b3@OSoC#>Q*o-aCY)9?g1CV_2D{5Zp25^T`-fKlE?PZuiFdM4XB*Q4jD`Np@q^dY1K z(wMlbLfVDKjh~;A1d+Fko373E)k-D^SvM`V(2FL~+?J`^GpaCJHJ^=P6Jbf8?ia!| z+*n7@o!L9^Fh-f@>ys@mhUW)mQC<`WPZEM5iSA`KNl1HmMr+G$#zSplla4QAp>?(Q$;=^e9N1U@rq)G z?iUjr78R%%&B2yc``T40O{P#!BATR;4Iou}GMwqLYfIY{xiKQEd_N}|*KApLyT4kE zxKDS_ulOc5Ghk~2po`v(ns1}O7(%XWY9ysZ+XuhFDv$LE=Ryj5{x0C8;d2VH{c>JY zAOS!QoDd}H5Hs`*o!|4JK_IDWwh{wxLh=O zMcaB{%c6P-?(OCQq1-IFIqC%eh^yy`{#uB#W1UZo57l}qadVQ&SJmiQ*f|v zpq}~`fw@yYr9~*}VlX5A%evz;NPBVY48>~qdS_3-S<ps5ZsvLZ7;u&Fp9KR5*a`aH%wpC{)4BGm>Xyvsn=|ZSyeJ1)c6*vPUTglv@}}$(fpo08 zco6^6EFKTvb2ZheS4XmUAQ1=EH;3--dJjR7VUhsu-h~NEc3lEaATEFU)|Hmq3`XUV=y+Uh8Q`M}?t+a~`+2HvpU{VE+~>t*08` z8m2Qo31j>o*3&k~K5N|GLJ}}Y+1U^GYUBcp2nkvq?H{IS=3C7nVUUa|6ye1F2IFQ%vVkP=MOv2|9tb4IM`MoWJ zA%BN-UOA*g^be0pr&{gO1ZUk+nZq6{-9cjU(+WK zYy+SMy|E(1yBfdzH$hW6ySlax+t$NJYo@y7XnIni0pytJCEW!M5!@`W>WosZ zx&=~$_*}yt5RvZnZ4oEsWrP19BKtMH6YU?Aks-V9g zQHd2&tHuPaq+H#}2?$p!ID-AdYi^X`*!lw87B7*3o?A;Dk{)YSIBa*SJmkjj_n3HV z=)t7#n)7(8?O{J}@)X664u=)c+oRX?6NE#}xGi@Q85p$Lt^2fI#N82Yyy>@Oh2N*k4m0Ww+3w zp7tO_zN;aI>@2(o|9KCNC`s^@Z}*pMKLXFmTx|+(tv2L(e?D z7v`=IwWN45Mtl(s5jR>9Cik(uQ@)mU?dYx)?NKUrU7Ku&`DP+$rSt2@Es71{9w}#% zsu!BrQ?Lx{Hs~5?C?(awfpK2jH2J~@R0dHHg?(cKr8Z&TX&2nappyr^>*&qbhY$7# zs8H~sP+U(6x$ zoAX1Gg0l?MAJmnUtzt^vNGY{m^B& zkaaLzp!bYHA{JW6NQ<7-cbkTJ9Ju2H%+H#B@$B$)nqAM;1p!w?9^=z@aq_NTT=%L3 z@tz{qa;s~JoZM^W#%qOx*IwVbrWlw5nJoiy5iX5Y#zL+F)}lR!^qFW6!#w@En% zz+Ns^DC^C(hpFBYJ}R3_{Uzkv*`@9XE>nfs5mFBFzvg)|a}?;W;2Hq}m-% zHJxZAf6tIF(fPURlJvI!44~0c8@PM7w&7+31O;pNTEOw{N3$NIGv4m zbmxXwW(^%zZf_HqSl;Y<$nbE$sQA^RC-cO$J-hmDvQ<@{EQ4%&beEV&xA_Xs7eao! zyJ}Bx58hWXj4{2oooyvH-&K1qZ}vN|s4rv-iVhRt;^qYveinTElIkb0yFcQ;sdvxA z)m!G9bxX}(C8~syj{FZJ&dkw|YfEqe>vGk6E@pacJ8}5`Fyq2QWG=Z zUPFcJ+Y>yITEYC=7F!!fjgFJ-c$50uVb`CBJvgTcu{`IQ)D=3}rfjM4W?@&<&u&wt zPQ&Rk759Nx*ym2!ov3;)KTPYZmAdTA>|KH1xm?ag{#q1Y^@e-}IUlUC8h(lWZG(v3s~Rcd_NUoGYL{a@)PnVzi&M*=(e9>9e= zd3K6UAj`*?*_jY-W*pUClSwXa+2C+p3f(6U&#$z*jeAjwOM6>h!feuH0^PE=&9R>@ z#f0HD^Klcobv!3hCH8OlF|kS7{3O8IC_8_r{UV;Z7a0Z?f&cV41z!cGQ;~bJbg>ed zH-f!C2M%Ecq$1qwvd2SjGXs57oM~xM#w2+|9hlOs>5T`u!U~7>{JA>tv|`iVjnnc5>fnQz-ek*O%>*aMXu z;FcufL>zbLsd`LUU$B*Ne%QKS1eHIE5+wMP^M8oq4`;^x-|ni{mMW|~M<6P}J^vSm z(l0~2>gNP#KJ0we@!*cU~ zlsSVe)O_(;8dzNYGruiHB(lxgyloKZvoZfuZNKgU9=eP#5Fs_P%W+)lj*NK>wuO$H zvzf(s)*z@h<^d;@uHmqQI=~6xhMq?Fd!O5XZ{HV4VEtt4$v#2vs_5XZi&0s1;#rD# zZNclyn^aR!G?2?;%o`7&H5(euQnt%q=8{MJB5FmMf;25JGYvpLPo{G)4S3^k&I>6g=)&k=@f;YP6_r;wV;5BANg9%>N0@N zjs_Uf`v3jgEjJ}5=|;^LD)BLh>~v(|4Ls-bPb#ycT@+HBZiku8!J9aps`E(}KX)8& z1?f?YpeEQ)fX}Y`3ZNgEYbu=K+aT? z`GZcuL?dU$gMIUhHkUpRzh4T-R5|GG6Lt9Xo(&*k)?!eSMP}_>3w`g+)x9S{3N0Pk zv={uR=G#LTvYyc~PPQoyl)Q;AIA9&XO9|?7^p)xd8n)H|e2A2>Z{$TW2eq53_IqpoM%|Xtf_kx(e?%O zB?Wi$<}(!0^I0;_0yJPxw*W!fRj}EfhV=mSt9J=)!E(}sj?35||91g2?Y&1z<+1Bc zNt#t3z$@&0YdoEJe{(H4;r>IHGPDF2jn7)G4~D@DH)D@6)J^F zFcAkXU;dzU2#1f`%5wdr0df#AhzhtGnyUbi@V!Hgw~M>B$O_P6W%GN@iOW3J7h2~* zbZ?pkSSNsOO(_alszc*`{3wxa4^e%dA&hWuF7H4E^A@_cLbwKANZxe-$T!}n0eC>x zP-c=eb~*)HsxCz(ylr<+hlTG1RwT7jVWN|OjG8cSL@E1?*Zuq?8X@A?RxSy2Irbr} zAu1afK#!Ehg+{5>kKB;!yCY2?x~tmYgIm|m@D$o{lz16OEe+AzRzVN7*>hC0et~Hl z-AiS)H&|a729XN<64Rn9Up|9;zCM2;cD^#YMJh^?5ua(;^@FhJMOMy>Y)jBrZgGs7(ru!#1XDO|zxM(E@P*WajaPi#ldWt7*BqrRfX5;%_T* zZ7!TuEB!dJ#dPIV&Ac;SD`w-zmIs|GxILVGW{z$jcz#AajZLzChZesx?FCWXjM;Rj z=rlXYT8hsqWJqw$*3uci1$(y1Td_1=?}8g;7GGyTUBE-<+tUA&EVwhH;x-g^0H!%% zMrvIC@KUaR9NZ3sU@ATj>v8U`nnHy@#xq@d@!R~LN$0obZPjkT{ z(i}nA-7Ec@1~bfmxY8mL30GvDsRtN*Dniu@MED1hz2rFUz2~2?#AyZ9d}YFqf4GpX!EL_Dv15r}nyX5R^u!-_?3Ji3O26E5_!?#dKD+{( zgfaeMvHy-iVoEcR6M{4KfC}khqwM>qwYk;?k`7*z8%sUNi42#a>x7L5k5H~yl%aQh z`sf3$vntt|Zw{I6YLuVV8arb7IZ+cHgT-u+g$Z*iF!&_m0nP&#QNiAOJkD`Caa&yb zNr)31PwjCyb{MTYLaN{9)>GmLUmDE^%nu75kQ zm=EQoXZv-qkN|vMrJ5!;dUoayYYEuAwHQ3l;JsN!3b~Gu@?MRzB}-e)reHnz7?q3Zt}$RbkEh>OaP4;0{)hvJtbm6Cw}Vk!J878gKHi3!45A}y5a$<3>;7S$}^DE=F(po zp^--@mvX3hxUk@1u>&+g`T3qI`@7x#l7IvrG!Q-1|CRyCTj+?PSwMJCrK(Z@aBJHU z{7q!?8e$j_l9Od#srd_ZRmjYaqoJzbLWOhb;3CmoFK{bUc`22+dw7&y*CY$ z0I#BW2m%O~&NzQkT1o=U13` zR5@A-%L6Yq#+a<*kh!+PGxf5Tats)4yL<6gddn+A+p?`c!yM1|@{z!L4oQ zra?wS#=vulrLW(?aiwHAsV@Ko6A&?R22?VCpILMLl8Le@wqYbWebvf)u+$ezU~vhj zABNznMwtl*3ePWdKN-=KLp?(+!NF@cYxAFt&|F)~S;j`!IskG<{Trid`FMk(=^z<| z`cI}q#prjeV?C!VCYFm{g_dEU5H}UmJtt+knpf7oSiL;GWN9GAgU+lnbiG@j1c5}p zeZG6>NKj|rRr0iGdS<>SYo&RGD(B;7O-MHI)H1jrL^l`%Z!^enwIfg|np-7p zx))HN2?yG>%8(VRi(W<*vmLjacg6JSeNruuiPa^TSU)xUH9eiTqFU=%G$acCKrBtm z?Ncm5L+0?eo2Yg<@NARX0goki<|y~i>1I@Pqr`yVyQtTfgu*CSYZTV^o_TTT)z5LX z4@M)>6R6W1CX~O0#+=At$W5LDr0#7Zd#WGDDa(&@2v1Tisqf{Nn40AcV)EnRw`HP3 zGZa(cF?7>Aov85c03%C?kVje6|c~+Wdh>Ff%>bz zZiv}Pl5popHfwpk)rnT+cH7v^Grv5P^FFkkgXY;dg?(X?YI+%~aX~h4ZC)np;0{MA zc*sPzH-{^Tw`a5`AOCQPX~1B@bVib?+2@qy=IrScXMYiLeuxK~e!&merX6-`rHLQr zmW;10+_nxR3VeN)-*dkDAumg!{ zUn>2lPbR-of+PQGbN!cMeVK_SqS+|ghVJ1JP)x3Y4an#gUTbV4)=rF1o#xhfnr>PD zp1wlTiC9~r;1W}i?aS$p52rkS;+Ct=tX<#RLF-?8>v<}lMVrio{X4N56=?^{3!D*}KcPzj|QRtP+ECtSO!z9G&z|l#J9EiYdQ>FTOlL#kzlnS;8t& zDajj49uBZjdPO+%-Y9-6Hb~MKg!PUVyk*EQm#A8knGwR5B>txz2INfKgr@oQ>hu#) zO8Ds08uPI_0c^l+5GU`DoPR4V@jbn&ZYkw3whFid%;awZLFVwFNu7E5c75*pddQpn zn2<^U6;{3DeF{<=2ae#RTJ_59QKitya|ra(>tRQ9>of+DCJlh~U2Jim6SOHhBPreq z@FrU_uZj2`OU-n3z}+|qWLL74ts4E>VTOBXykbUFdA+>-aoeq4O;v5Pf;Dmg| zYIn&bu|GV>{SqKr&}}snId9?lG)|agJn6-`-Hg6q++{kCB}H_0bbTVdt67~CWDX8m zgz2caAiP0nXS*2UnjUxbkWVmIB*7!#h>ev^`OZN%FpMI9Sm*3EAMFpT1EW;S_gMb{ z7)MmAM!a%Dl@4|AYHf%kE@O3c5HY38zj=!^$cD zp3a`?m<5Bgo}Xqz{(K8OC+rzv0Ry&iiZs*=ZX_i~E#ZyHRmIE`j%KcbB-gf>;+b3q zP1}%t&0n;cibKG9C~YGbO16<<7aMjM_8%3?&^F{8}QhJgPScPH}a&*%1MN0f3? zv9+q5oIxihpx3dgSYzVoIN|Wli#Jk3VeQ%;{A?@)M5% z@e5TY8m!Ghi!>IKMfk@G!r^TTjSH$(Al5lZ_*ybUH%o2P&~h*rMfhl$1MKrr za}2XGd8HBTQ?=*a`s%HRJ(?-K377k`^IpIy!rGI=Xgx+^q8@U@RS^AprFO zg5{Acy9knSoBdzS%Ig=&GAg14@~-gXStAE2%Ea5>0A(9491j&1PU6SGMwXro*D>{m zaw>|KvV;Kc=K;?NwgXOTH*N$ohagKX@^Jw`>u6<&A$smm58|u>ATxj%vLgg=6%I(% zbr}q94by1OZ+`X_$J&jT09COD+%~0EKai9wg?|&NEZ37T;7O$Bx(;#W3C1yPb0`j2 zP6ap$c@^*Uv8XQ6d11c4Hmk>Lu0F{=Op4nex1l2WQ20cfB2A0A6l`=Vc$&5SVmdxa z{hz{9B4%ra`+<)gu&hLd3&0WABy*B|pzO{z}Zgik54|s{!;Z2@m zKCangsCs;PRdy*hI49s7sCS(rY)5Q;={1!4z^sO+pzo}#F@O)YOUB-=Vmmqp3em!V zGPHReTSJYfWFI~}KwBGtLiOq6KeD6r>VeW!Ur4o&CMnXF;~9+)ZutaQ9>zrX|Xx z4KPCa6TN2E?m$G*L<3R|Dh;Eh?K)MnYsy61G=tp}K)rla9|mRVo5|-^Y_MN?>vyDK z;PV{KmD!Zn_I(-g&i*a*+Ife95U0k4yS4;jONfiLzD2APhHtkD-Lm_peP31YEsMCm zF2eGhv822D+4uymjk(nvq@oVDUKsrcNz4jrrLkk=hM`W8N4I~KGK;aZsOSh;_qqf+0!+B}!{&LByT}qHPF{C;R-mr%O%u9HMSM*rNzd+4a+$Q!f{r zm6>uhl}`h1c`GOo?3TRK6fhSRx|jes=g{Jc+V2z}zq z{GHwC2x=af4+w#lji!FnXYh_S@Zpv8wAJx+8ofJ%oD?bz>61jzsQ~Z_pj?QptkfO@ zTtW?q-oLjnShWIs!kYD_fcR$^)BgGrd-P*KnAQy{tkkm9=NC%4lha$BHXQ|mlcm@Z zwE3oe9|q-{p)DgcZv=BTjK5EwQbIBV&QRWypn4@WnF;PYa~P36E=lDIszbLktcgYY zXd@{o4)4&CI&_-{sBFD{fC78$>Q!-k*?0<~0`r;FV`yOAEuBfcsGh4Sk!DS-ZO|C4 zO4IH5kK^p$t>d6Jur%DOBON_}eUn>zcZoB~kjbaTm}DkBMZjzA!GeAGzzSznOpCgn zTM66Dk(*VZny|O1YTlPFgcOvbo+!x>AWf{}ADt zUyEU`=i$a~eo0UjS3)D3G?5&pEZ%;qx!0ajYwH1?yH2EDO5ZA33poGkfj&X1QRF%) zBSeR$@<5($nl9%C%&f>Ix4RTG$N7GKVZnO+ZhLY<^{Ug#-6`80314YicCOWBFeWv& zbDF-dx7-5t(JG$hC&zrh>pt4Gve5)Q@!+7^7J7xrR!enJV7<8FBJwK4IICGPV||WO z(pjP8=y4=kD430?q-7-hbSq z$;%vdTo5EjWsmA?y%}HR$5DWUt}LOpCw!SaN-}$kB{EFRh1ZtR4k%kL>vn#Lq%HDo6nC7y=QGOaFjPmkGLcjaO-HSFtokCDIJ>^VD;f{` z=<0b;RAbTIc-IO5;s8QU$91;P@n!rJ-$A$od0b3-nUxr zr^{RmbdskxV|Pe0k_DA;@2M$-r_Vq`ys%tMm5BSKI&X}h8@mje5uA~z($*;-NX<&A%~`wDGmy2Uz6G>#IyeX`x*=g`m~szaYUG~XTV zJ13X*Y~3ftz>6zayW@j#%j@j3G5)CbSHjiMm7vtciKtPt`u=cs4MTS%l4fYlz1-}A zwW|Q&Crn4E-r_W;xWC;@2%kQA0a{ZWdc-pkmel{=9OhQf0cs+|LN#SHW?JchqIB;$ z!|sxdnkwPW2Y!f%N9)2|+o|tAh^B#`9OIp+k$)W&X(r@Z>XA)=5^Fe3dr}Yf?o2+% z2GXN6)S$=|xE!gaxCdjOXyh2ssD@CV6oyDIEWUIob4`GFr)v*BDSiWV?jVpp?a-iN zvTD?Q)l}HDJ-Nzmw2o2=TB-ngPm8};y$iZk#I0{Z<%h70UAh`V*mj~4A7o=y-+JX# z-%@2$vsBB%oC>+yl=P^@H;9{1uFnNYN3-(PO~;XhhfZ`g|Jx3_G^C zGGr%dPdeJxvhp*x_lvdp@`p9a97EkCFb=Qz?+8vr+<1zGYQ#wp(C>3r{-OO(=hb0Uj*nV1~jgydOu!sThlDRFG)BIV1A2C zcw>Gh(x_U8<*^ca&HeA}MWdZew2h)yO*6gmA_X>>8ex&@w>1sz!1ar5ezTSD!OR4a+jt|1LNgW- z;R_$q>|UfADt0x3S@_NP`WptxXz#UK zATt)9nbXtS56>BGjUUQcY}G;Jpy#8G@tIS+{#W#N8eGj?2hD*%LzD}%pTJB!Tl(Kk z0uyrUxoSu{rh+!c@eJCef5qN?I&)<#zOGmw04?+%s?=BkrI{0&Zl|u^b5Ad>5xO`_D&R++k9OWJ&cSY3{}6|`>Uvmmo(4t<&FYK*)$_Q&h-K21pB zMizNAmz3-J3-F>G@Cwq}g^V6spVjIi+-klMzq(|>jrBvjSkoC=TE#B@$3T44C&K8a zdmLoi`oD^h8yBpPHq4~NG*@wlK+zLEL;Y%3MUZwwm5!etrY3IH-P~MzSnjA|BwWi* zoj#kV0_brz)n#^cGgRy8UF<`8>tkogZRoXe-3<}dXS{5hM_7F{haMxJM~Nc_&)5gg zeJbi(P+|hA03Q_ntm;u&9q%fbltg@>P%isItNq?|rCgA?Ppfhwe{r)W1QpczW3bMg zs)*OeTjw1kr(PJBVXp|^W;{DB>F{dLn*?e>vKacZS87y4#TVfGog)65uf%DShRNxz z^tMbe%+r~I(*RroVJxU~HH1bFdGTZJaaa$$SesJ<1-oQ;{bx**E(+A%HNjui)lR_g zeA$u_RE}-;@bXlR3=6Hqd;$j_?k>|{rH8sd`l2s0dT4N|1Lt|yW9TY1pjF*-He1U) z=vErJnt363jiG-_?0m&(d;$gdR$()j*=gGiiqK%0+C3cyVtN)DZ4!&!V~!Qx`cDzf z?q+8h11`)4&H7?&@xAs2%ajGeIKeO)>*wVHYd2gSCgokK_@JO`av~AmqhH;CU2Jnz zfjG|17Ew=Q(~F#3x515MCHY{!hE(f9i`vlALIwYJd-*k$)_s-5co^6UYlx%3>Z!e2 z?focVm6puf`GddOqn+%j**~LFyWMZ_>GAEFuiXxMd&O!8fCGEYX?`8 zVS{%Ii16Qds;&)#TA3t*V+L#9THXOI2plpTZsX;-mi@~0BOv$K`Cv&{Xq6Z9tPMHQ zfvBVu+!jOo#;33O`{<_sdg;cNbymtfx4)VciWj}|J2GXY{WLblW89@-q>2}31>=6Q z)mG{8$LQU|hby_a!}nF_UfjIbXla|#r`kXg%2Phv_K zlE6pdRp*gCO7%Vor^wrqV|`vNH&5i6W{~^;njOO@HFp6JCPNQu@sv|86CTN9ip}>$ zwY?RV?%7T06}WOZ=dvNR&namRUA+iso=xMnsh%GUm&Tj&^@dv0FDW9;l-G=+7uoVt z2fA~|#dXP5T9S1K)v>%msed=mF5PF-zYtw*kE-wZ=WvFCJSfzbL=1hBO!!?F;O88#e7^L#P9b&D5SyHGc%oyfT%Z7}Qr`HohS9 z9{ZZDx%)VXAtll`yyKyI&OX@hS?hjQIy5mUTG(ivYR7`=uf`xXM?`qUQdefe=Y~0a z@+L9yp@SzJNn4vvh-d=qB;}{9$~LBIt}7F*SvU@R8pY7}-p~Yl2YfeR%Zz@lyso-r zL=7^3BW1N><(_6RSsi@owMwow_V0LT&HbbL*vk=gWW+Z!foR-sUn?PZ77@Cw{4?o| z&q?j*kOrB8wU&gM5;T!UDXa13+~dx1NhV#FYl(BW_~3BLLM=lY7a_^gAdnQCZDng~ zJa#iPeLW?;H0PpnO6$;NUBp_EOG!yZMJe1@(!*v*%lT*U_?xPvZnA9m45(UGaR(tB zD$79(6r>wIs+fKsXab6u4XHC+ZBWh1UPt31xIsGimAU-a5`^chC})O`O2e`_XV5W` zLw@YlS5>-~O%{z%XkDyOLbXd2g0Pvjma|%wy82?%V*5Dd(Nf9wACB}Vynb&4w3`}t zyAs2>8GpH$(jYe7(`&L@aUe2^{6_Meqk-F@-fvH%X)Bjmih{U1qCoIJ+&f-aFfWWK z=YD`nYl5JGZDw;mR9tvWB`V$Uh;l|~1IfqNeoAQ$jsjg#wX}CpuJeD0)Aq`5_qq0a ziA{XI^q}0(wu$-w+0F<&a%e!diQB@`mB-2Xw`r@5QVF2)wDCowf$?Zva35i(z%Qkj zzYNb;D4=Da_O+iL2vZ78nhQb8P&WDq2qWkoT4)#8a|8DBXKmRpwve>#93P^Z7vamh zcp9|C0XTMbtr@I9|6EYj`66#VOEz7@%h~Kj=%}#b`~Nna+t!14uZXn&93MA5lA`bu zy?SOC2cBD67$(UMwAEnd&jOuap?rmgWekjs33==mv9|Dk?u$A@I}_4?H-^C>Nu}Jc zMJgdhtgv{umfZU|!ATQ<3g1!1C!;csxv4gsNu=b1P#O0TSHJdx{2S(OqyO7pL&g;@ zCfE%bnH`i1bf|?0aIdUpBP& z-vwXSTol8%Q|0klZsx^0=rL3@7r1x8w@>-nUe`X;KB_&>XTKeWe3%3Sk2GeK`?H5y7 zbMvn^SOCwtZbaBf*0yK&A%$YK_IDe3pII2sUx9wU6;j(EWF@MZrPpt4Ze}9$`mA=F zTcvi}P+IoQ+aa}*wH5Mf-PQvOueXv!Q=G=CNs(y4cfRxS2pFph=!u`%N33q@ZRb7v&(eu%`95Z6}{89C-ftGLbXeB0|+Bakqdmg zp$iooO=uVAp$D(eW$Qp$n#*pvMSKtIBB)K_oFmpw0yY947+=uuDDlf#Xn(mki}MN% zt|Xy1ZeO%CU#7~VD7;k^+GtBtPof^qVUZD$8%e>ZG(b^U-a4>1(rd(LIA-f}%-Ex> zJI76dj!RnBKANajB8IAPv=b>24hy`*RP#PMtWUD5>hbO_Gz5yU8ec$5AG<_$GH)|5 zJCfTj+b>6@>32Dy~XwN_6T^(9#|#D%6K==x}lP(`37dA!Hm3)zyKjEJkUhtWtj z0F<7CYx}rSp&{p(6&%Uq zp)rd#UOPYTMFUbEp^ZbggETK)Zq1W8z3GcTL?J7B#BtmbumTfv0~ym<=-eS?avQOU zyk6X!UWat8(-Xk2K`b*juaBipXTO(x$!++zFx@dNZ%}#zTh}v)Geu}EJwbi)%FQ2i z?!Y7cWGWoqL+LfWK~;`T5Zfg&S-o0KE3Ye$X5PbJ74T>i$4O?-d)yv4`_6p5VWg&e zw77`8V)-uU7lS{How_W>(6g=L?=t~s$r-l!{t^$YAngJ4bc)3w zU=dTAR9h2ho31qzouV};3Vg5!N0I2D6qiC4H%sskXfJ=phLszY-dtJ)(VfVM+7QWF z;Wz|r?dYK_bu9Y2Wxj|u0Pv*(#vwVU7EP7O+Yl+b2y-MIw<`7%@#fQ=wb20Q0&03w zCfcLqJ|ynGYQxAq)QDXnMWIuxuGI1Tw;TOy!Jri$N-A(%|D-r4Q*)qg&eqDvYzbE{ zc)QZ2zBHo0VyY$uR>J@*DsxNv$gXy+#c z8ifR5s6c~1Hs??!P8MS~q6ToxR%tEKzBKEnNQRcxhEbZ_KIGQq<2IPf5mk)RkGko4 zSUoZibw`nv_e*4%X(JhzyjzwHURoQ1A&i%%cdsXQ3!}Q#Z$v6KEbF?s z^=vMqxSEcd+8qvD9EQ7A%YO!q)wf#o+*TRU}w7+Ou~v7a_+hJoSX6bN39~qw+=<{}%G5V{e%# z@dwNVJU|$jxwf+nTQBF1+=T2I#g`g*i^uR!5<_GX!A$+0{`)2mqbdkuHzE8MxMxY< zKC67pVfc5&D*Yodo�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 + {/* Your app content */} + + ) +} +``` \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab6/code/jest.config.js" "b/\320\2403212/zinchenko_408657/lab6/code/jest.config.js" new file mode 100644 index 0000000..031eabf --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/jest.config.js" @@ -0,0 +1,11 @@ +import { createDefaultPreset } from 'ts-jest' + +const tsJestTransformCfg = createDefaultPreset().transform + +/** @type {import("jest").Config} **/ +export default { + testEnvironment: "node", + transform: { + ...tsJestTransformCfg, + }, +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab6/code/package.json" "b/\320\2403212/zinchenko_408657/lab6/code/package.json" new file mode 100644 index 0000000..ed5ddec --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/package.json" @@ -0,0 +1,34 @@ +{ + "name": "rsbuild-react-ts", + "version": "1.0.0", + "private": true, + "type": "module", + "scripts": { + "build": "rsbuild build", + "dev": "rsbuild dev --open", + "preview": "rsbuild preview", + "test": "jest" + }, + "dependencies": { + "@chakra-ui/react": "^3.19.0", + "chart.js": "^4.4.9", + "dayjs": "^1.11.13", + "next-themes": "^0.4.6", + "react": "^19.1.0", + "react-chartjs-2": "^5.3.0", + "react-dom": "^19.1.0", + "react-hook-form": "^7.56.3", + "react-icons": "^5.5.0", + "uuid": "^11.1.0" + }, + "devDependencies": { + "@jest/globals": "^29.7.0", + "@rsbuild/core": "^1.3.15", + "@rsbuild/plugin-react": "^1.3.0", + "@types/react": "^19.1.2", + "@types/react-dom": "^19.1.3", + "jest": "^29.7.0", + "ts-jest": "^29.3.3", + "typescript": "^5.8.3" + } +} diff --git "a/\320\2403212/zinchenko_408657/lab6/code/pnpm-lock.yaml" "b/\320\2403212/zinchenko_408657/lab6/code/pnpm-lock.yaml" new file mode 100644 index 0000000..d2c6c38 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/pnpm-lock.yaml" @@ -0,0 +1,4044 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@chakra-ui/react': + specifier: ^3.19.0 + version: 3.19.2(@emotion/react@11.14.0(@types/react@19.1.6)(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + chart.js: + specifier: ^4.4.9 + version: 4.4.9 + dayjs: + specifier: ^1.11.13 + version: 1.11.13 + next-themes: + specifier: ^0.4.6 + version: 0.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + react: + specifier: ^19.1.0 + version: 19.1.0 + react-chartjs-2: + specifier: ^5.3.0 + version: 5.3.0(chart.js@4.4.9)(react@19.1.0) + react-dom: + specifier: ^19.1.0 + version: 19.1.0(react@19.1.0) + react-hook-form: + specifier: ^7.56.3 + version: 7.57.0(react@19.1.0) + react-icons: + specifier: ^5.5.0 + version: 5.5.0(react@19.1.0) + uuid: + specifier: ^11.1.0 + version: 11.1.0 + devDependencies: + '@jest/globals': + specifier: ^29.7.0 + version: 29.7.0 + '@rsbuild/core': + specifier: ^1.3.15 + version: 1.3.22 + '@rsbuild/plugin-react': + specifier: ^1.3.0 + version: 1.3.2(@rsbuild/core@1.3.22) + '@types/react': + specifier: ^19.1.2 + version: 19.1.6 + '@types/react-dom': + specifier: ^19.1.3 + version: 19.1.6(@types/react@19.1.6) + jest: + specifier: ^29.7.0 + version: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + ts-jest: + specifier: ^29.3.3 + version: 29.3.4(@babel/core@7.27.4)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.27.4))(jest@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0))(typescript@5.8.3) + typescript: + specifier: ^5.8.3 + version: 5.8.3 + +packages: + + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + + '@ark-ui/react@5.9.1': + resolution: {integrity: sha512-CPJtUy20x1kUAQ+8iPbgpq/RmqlF1Pfx91+8nHnYbR2dYI4mNKnxT8m7TGkoWT72W+P8YKYUehFJOPvspZqG2Q==} + peerDependencies: + react: '>=18.0.0' + react-dom: '>=18.0.0' + + '@babel/code-frame@7.27.1': + resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.27.5': + resolution: {integrity: sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.27.4': + resolution: {integrity: sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.27.5': + resolution: {integrity: sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.27.2': + resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.27.1': + resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.27.3': + resolution: {integrity: sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-plugin-utils@7.27.1': + resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.27.1': + resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.27.1': + resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.27.6': + resolution: {integrity: sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.27.5': + resolution: {integrity: sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-syntax-async-generators@7.8.4': + resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-bigint@7.8.3': + resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-class-properties@7.12.13': + resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-class-static-block@7.14.5': + resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-import-attributes@7.27.1': + resolution: {integrity: sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-import-meta@7.10.4': + resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-json-strings@7.8.3': + resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-jsx@7.27.1': + resolution: {integrity: sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-logical-assignment-operators@7.10.4': + resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3': + resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-numeric-separator@7.10.4': + resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-object-rest-spread@7.8.3': + resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-optional-catch-binding@7.8.3': + resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-optional-chaining@7.8.3': + resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-private-property-in-object@7.14.5': + resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-top-level-await@7.14.5': + resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-typescript@7.27.1': + resolution: {integrity: sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/runtime@7.27.6': + resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.27.2': + resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.27.4': + resolution: {integrity: sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.27.6': + resolution: {integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==} + engines: {node: '>=6.9.0'} + + '@bcoe/v8-coverage@0.2.3': + resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + + '@chakra-ui/react@3.19.2': + resolution: {integrity: sha512-ZQfYXQ20ftR1U8kdwDxqx4qk8+8y9RcReb2heptAFD6IBnTg2dOylfjS7Qj2WF7mkPHnWd0W1/FUWDjJD1OgVQ==} + peerDependencies: + '@emotion/react': '>=11' + react: '>=18' + react-dom: '>=18' + + '@emotion/babel-plugin@11.13.5': + resolution: {integrity: sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==} + + '@emotion/cache@11.14.0': + resolution: {integrity: sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==} + + '@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.14.0': + resolution: {integrity: sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==} + peerDependencies: + '@types/react': '*' + react: '>=16.8.0' + peerDependenciesMeta: + '@types/react': + optional: true + + '@emotion/serialize@1.3.3': + resolution: {integrity: sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==} + + '@emotion/sheet@1.4.0': + resolution: {integrity: sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==} + + '@emotion/unitless@0.10.0': + resolution: {integrity: sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==} + + '@emotion/use-insertion-effect-with-fallbacks@1.2.0': + resolution: {integrity: sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==} + peerDependencies: + react: '>=16.8.0' + + '@emotion/utils@1.4.2': + resolution: {integrity: sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==} + + '@emotion/weak-memoize@0.4.0': + resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==} + + '@floating-ui/core@1.7.1': + resolution: {integrity: sha512-azI0DrjMMfIug/ExbBaeDVJXcY0a7EPvPjb2xAJPa4HeimBX+Z18HK8QQR3jb6356SnDDdxx+hinMLcJEDdOjw==} + + '@floating-ui/dom@1.6.13': + resolution: {integrity: sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==} + + '@floating-ui/utils@0.2.9': + resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} + + '@internationalized/date@3.8.0': + resolution: {integrity: sha512-J51AJ0fEL68hE4CwGPa6E0PO6JDaVLd8aln48xFCSy7CZkZc96dGEGmLs2OEEbBxcsVZtfrqkXJwI2/MSG8yKw==} + + '@internationalized/number@3.6.1': + resolution: {integrity: sha512-UVsb4bCwbL944E0SX50CHFtWEeZ2uB5VozZ5yDXJdq6iPZsZO5p+bjVMZh2GxHf4Bs/7xtDCcPwEa2NU9DaG/g==} + + '@istanbuljs/load-nyc-config@1.1.0': + resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} + engines: {node: '>=8'} + + '@istanbuljs/schema@0.1.3': + resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} + engines: {node: '>=8'} + + '@jest/console@29.7.0': + resolution: {integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/core@29.7.0': + resolution: {integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + + '@jest/environment@29.7.0': + resolution: {integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/expect-utils@29.7.0': + resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/expect@29.7.0': + resolution: {integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@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} + + '@jest/globals@29.7.0': + resolution: {integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/reporters@29.7.0': + resolution: {integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + + '@jest/schemas@29.6.3': + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/source-map@29.6.3': + resolution: {integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/test-result@29.7.0': + resolution: {integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/test-sequencer@29.7.0': + resolution: {integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/transform@29.7.0': + resolution: {integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/types@29.6.3': + resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.0': + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + + '@kurkle/color@0.3.4': + resolution: {integrity: sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==} + + '@module-federation/error-codes@0.14.0': + resolution: {integrity: sha512-GGk+EoeSACJikZZyShnLshtq9E2eCrDWbRiB4QAFXCX4oYmGgFfzXlx59vMNwqTKPJWxkEGnPYacJMcr2YYjag==} + + '@module-federation/runtime-core@0.14.0': + resolution: {integrity: sha512-fGE1Ro55zIFDp/CxQuRhKQ1pJvG7P0qvRm2N+4i8z++2bgDjcxnCKUqDJ8lLD+JfJQvUJf0tuSsJPgevzueD4g==} + + '@module-federation/runtime-tools@0.14.0': + resolution: {integrity: sha512-y/YN0c2DKsLETE+4EEbmYWjqF9G6ZwgZoDIPkaQ9p0pQu0V4YxzWfQagFFxR0RigYGuhJKmSU/rtNoHq+qF8jg==} + + '@module-federation/runtime@0.14.0': + resolution: {integrity: sha512-kR3cyHw/Y64SEa7mh4CHXOEQYY32LKLK75kJOmBroLNLO7/W01hMNAvGBYTedS7hWpVuefPk1aFZioy3q2VLdQ==} + + '@module-federation/sdk@0.14.0': + resolution: {integrity: sha512-lg/OWRsh18hsyTCamOOhEX546vbDiA2O4OggTxxH2wTGr156N6DdELGQlYIKfRdU/0StgtQS81Goc0BgDZlx9A==} + + '@module-federation/webpack-bundler-runtime@0.14.0': + resolution: {integrity: sha512-POWS6cKBicAAQ3DNY5X7XEUSfOfUsRaBNxbuwEfSGlrkTE9UcWheO06QP2ndHi8tHQuUKcIHi2navhPkJ+k5xg==} + + '@pandacss/is-valid-prop@0.53.6': + resolution: {integrity: sha512-TgWBQmz/5j/oAMjavqJAjQh1o+yxhYspKvepXPn4lFhAN3yBhilrw9HliAkvpUr0sB2CkJ2BYMpFXbAJYEocsA==} + + '@rsbuild/core@1.3.22': + resolution: {integrity: sha512-FGB7m8Tn/uiOhvqk0lw+NRMyD+VYJ+eBqVfpn0X11spkJDiPWn8UkMRvfzCX4XFcNZwRKYuuKJaZK1DNU8UG+w==} + engines: {node: '>=16.10.0'} + hasBin: true + + '@rsbuild/plugin-react@1.3.2': + resolution: {integrity: sha512-H4blXmgvVOrQlVy4ZfJ5IGfQIF5uKwtkGzwVnEsn1HN7DRRI9VlFrcuXj6+e3GigvYxg6TDHAAUJi6FoIGbnKQ==} + peerDependencies: + '@rsbuild/core': 1.x + + '@rspack/binding-darwin-arm64@1.3.12': + resolution: {integrity: sha512-8hKjVTBeWPqkMzFPNWIh72oU9O3vFy3e88wRjMPImDCXBiEYrKqGTTLd/J0SO+efdL3SBD1rX1IvdJpxCv6Yrw==} + cpu: [arm64] + os: [darwin] + + '@rspack/binding-darwin-x64@1.3.12': + resolution: {integrity: sha512-Sj4m+mCUxL7oCpdu7OmWT7fpBM7hywk5CM9RDc3D7StaBZbvNtNftafCrTZzTYKuZrKmemTh5SFzT5Tz7tf6GA==} + cpu: [x64] + os: [darwin] + + '@rspack/binding-linux-arm64-gnu@1.3.12': + resolution: {integrity: sha512-7MuOxf3/Mhv4mgFdLTvgnt/J+VouNR65DEhorth+RZm3LEWojgoFEphSAMAvpvAOpYSS68Sw4SqsOZi719ia2w==} + cpu: [arm64] + os: [linux] + + '@rspack/binding-linux-arm64-musl@1.3.12': + resolution: {integrity: sha512-s6KKj20T9Z1bA8caIjU6EzJbwyDo1URNFgBAlafCT2UC6yX7flstDJJ38CxZacA9A2P24RuQK2/jPSZpWrTUFA==} + cpu: [arm64] + os: [linux] + + '@rspack/binding-linux-x64-gnu@1.3.12': + resolution: {integrity: sha512-0w/sRREYbRgHgWvs2uMEJSLfvzbZkPHUg6CMcYQGNVK6axYRot6jPyKetyFYA9pR5fB5rsXegpnFaZaVrRIK2g==} + cpu: [x64] + os: [linux] + + '@rspack/binding-linux-x64-musl@1.3.12': + resolution: {integrity: sha512-jEdxkPymkRxbijDRsBGdhopcbGXiXDg59lXqIRkVklqbDmZ/O6DHm7gImmlx5q9FoWbz0gqJuOKBz4JqWxjWVA==} + cpu: [x64] + os: [linux] + + '@rspack/binding-win32-arm64-msvc@1.3.12': + resolution: {integrity: sha512-ZRvUCb3TDLClAqcTsl/o9UdJf0B5CgzAxgdbnYJbldyuyMeTUB4jp20OfG55M3C2Nute2SNhu2bOOp9Se5Ongw==} + cpu: [arm64] + os: [win32] + + '@rspack/binding-win32-ia32-msvc@1.3.12': + resolution: {integrity: sha512-1TKPjuXStPJr14f3ZHuv40Xc/87jUXx10pzVtrPnw+f3hckECHrbYU/fvbVzZyuXbsXtkXpYca6ygCDRJAoNeQ==} + cpu: [ia32] + os: [win32] + + '@rspack/binding-win32-x64-msvc@1.3.12': + resolution: {integrity: sha512-lCR0JfnYKpV+a6r2A2FdxyUKUS4tajePgpPJN5uXDgMGwrDtRqvx+d0BHhwjFudQVJq9VVbRaL89s2MQ6u+xYw==} + cpu: [x64] + os: [win32] + + '@rspack/binding@1.3.12': + resolution: {integrity: sha512-4Ic8lV0+LCBfTlH5aIOujIRWZOtgmG223zC4L3o8WY/+ESAgpdnK6lSSMfcYgRanYLAy3HOmFIp20jwskMpbAg==} + + '@rspack/core@1.3.12': + resolution: {integrity: sha512-mAPmV4LPPRgxpouUrGmAE4kpF1NEWJGyM5coebsjK/zaCMSjw3mkdxiU2b5cO44oIi0Ifv5iGkvwbdrZOvMyFA==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@swc/helpers': '>=0.5.1' + peerDependenciesMeta: + '@swc/helpers': + optional: true + + '@rspack/lite-tapable@1.0.1': + resolution: {integrity: sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==} + engines: {node: '>=16.0.0'} + + '@rspack/plugin-react-refresh@1.4.3': + resolution: {integrity: sha512-wZx4vWgy5oMEvgyNGd/oUKcdnKaccYWHCRkOqTdAPJC3WcytxhTX+Kady8ERurSBiLyQpoMiU3Iyd+F1Y2Arbw==} + peerDependencies: + react-refresh: '>=0.10.0 <1.0.0' + webpack-hot-middleware: 2.x + peerDependenciesMeta: + webpack-hot-middleware: + optional: true + + '@sinclair/typebox@0.27.8': + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + + '@sinonjs/commons@3.0.1': + resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} + + '@sinonjs/fake-timers@10.3.0': + resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==} + + '@swc/helpers@0.5.17': + resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} + + '@types/babel__core@7.20.5': + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + + '@types/babel__generator@7.27.0': + resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==} + + '@types/babel__template@7.4.4': + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + + '@types/babel__traverse@7.20.7': + resolution: {integrity: sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==} + + '@types/graceful-fs@4.1.9': + resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==} + + '@types/istanbul-lib-coverage@2.0.6': + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + + '@types/istanbul-lib-report@3.0.3': + resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==} + + '@types/istanbul-reports@3.0.4': + resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==} + + '@types/node@22.15.30': + resolution: {integrity: sha512-6Q7lr06bEHdlfplU6YRbgG1SFBdlsfNC4/lX+SkhiTs0cpJkOElmWls8PxDFv4yY/xKb8Y6SO0OmSX4wgqTZbA==} + + '@types/parse-json@4.0.2': + resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} + + '@types/react-dom@19.1.6': + resolution: {integrity: sha512-4hOiT/dwO8Ko0gV1m/TJZYk3y0KBnY9vzDh7W+DH17b2HFSOGgdj33dhihPeuy3l0q23+4e+hoXHV6hCC4dCXw==} + peerDependencies: + '@types/react': ^19.0.0 + + '@types/react@19.1.6': + resolution: {integrity: sha512-JeG0rEWak0N6Itr6QUx+X60uQmN+5t3j9r/OVDtWzFXKaj6kD1BwJzOksD0FF6iWxZlbE1kB0q9vtnU2ekqa1Q==} + + '@types/stack-utils@2.0.3': + resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} + + '@types/yargs-parser@21.0.3': + resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} + + '@types/yargs@17.0.33': + resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} + + '@zag-js/accordion@1.12.2': + resolution: {integrity: sha512-EoTVa4Tppgp3bfaOhBrgSyOUeeGWFmXn2gGT9AuMq0x46sc4xw5IsRveYPHwBzifrTE3tAKVIZBA5rFoTaA43Q==} + + '@zag-js/anatomy@1.12.2': + resolution: {integrity: sha512-avPmEivu4QFAICJ4rogt9ZFMp4trwva11jQfIAHXYDDL6YoF58z69129eLuyVSuSjEQ9EOzxg+fxMjXH2xm7yQ==} + + '@zag-js/angle-slider@1.12.2': + resolution: {integrity: sha512-pd62FEJZmnJAjrUcV5J+IayRGrUuMp90EPf5Sd2nwlBoxarmz6mSYr8jpeAPSjeT73rYkph8D+USM4qc3xHanQ==} + + '@zag-js/aria-hidden@1.12.2': + resolution: {integrity: sha512-xhtgOYYzTztQNKmROpEjkbeVbbvqm70595kOVsQOPhaWKVBK4EySLhYEeTRCjLmK9jVwUWQAETISqyA2za9AfQ==} + + '@zag-js/auto-resize@1.12.2': + resolution: {integrity: sha512-LhkL85yuLsIS4t3+XjpJZmZb1hAG9pTf1JIRNQ5HtmoCiOf/wxX73SJdOeQBKfzm1w8Hz5C6skNSxgJuYo0Wzg==} + + '@zag-js/avatar@1.12.2': + resolution: {integrity: sha512-zAgxzx6dzH2Kds0hGgPBGm1wWjwurn3CojdID6V9awHq+u5aDf/HIKDOIdjaNlTPdXtBeWrzJaKQiqHmNGrong==} + + '@zag-js/carousel@1.12.2': + resolution: {integrity: sha512-5nxNzar7wwGJIMV2As2/a2HLju8s7XahaLuq8BCiLQlhDN0N894Y2JazXm1gCthS7FdMlxa433G7bjYrxMYw9Q==} + + '@zag-js/checkbox@1.12.2': + resolution: {integrity: sha512-9kkmo9lz0eQcIkEmPCbevv6cl5fNRhMvyGKgsCENbaeU2VpntYlF8eRn81S2/7naE0JpXCGq+7jMgHHjKhNHeA==} + + '@zag-js/clipboard@1.12.2': + resolution: {integrity: sha512-lANTh8XOPmEiFUgVfd8+ORdpHC7grPImB3X71Kj1a2hfvEDLI/INop379aNsncboCdJkWp0slRzyquHSOgfaTA==} + + '@zag-js/collapsible@1.12.2': + resolution: {integrity: sha512-vmYHRhWex2LkcNRvg3oAzhmnF5gR+vBLfRpP8vu3hsX4zAn6GS2GggVeH3prBnNAIsErA4ech29BzqAhp5xeLA==} + + '@zag-js/collection@1.12.2': + resolution: {integrity: sha512-IVEXMBguC/QljCT6L5DsrSYUWvi+SWacGweDm12fckMEwPBpGOxv+dR0yqcjaeNEDuTkT0WHeZaWI/0TNV533g==} + + '@zag-js/color-picker@1.12.2': + resolution: {integrity: sha512-HXE5iyQaM7KOyu1SXcVJdDqtuZ+GRpdP8CaJVTz4RkBqaFBd3jrMVr3eW/Hv5N3b7v3vsfGHXXLchte+tcVpnQ==} + + '@zag-js/color-utils@1.12.2': + resolution: {integrity: sha512-ZfshXAqaHhgo8tieADVZ99AoUTn3IK+K8UZ2cYmiTHkrmXGkXQUGysdqsCYkPE/nzC3CmIXLK4LPj5tHYJVydQ==} + + '@zag-js/combobox@1.12.2': + resolution: {integrity: sha512-PaNSh27057I+kwrfyUWSo0K54hwWK6oP+d0NPez9mrQRABj1wVbPc8R5ouseZqI6LL0zRGc4oZB7Inq1o5usWw==} + + '@zag-js/core@1.12.2': + resolution: {integrity: sha512-deECf4FGOSjmD+f3Y116D9dHYs4NP87GBtQgQQ9oCXP8SOCR3A9gSkUGcFU+cQq2tNA5I1F9KqUElc0fDYfh4w==} + + '@zag-js/date-picker@1.12.2': + resolution: {integrity: sha512-su741tKtQgGQ6KwTE2+oOIgGezOq/cQQyIWXUF0jkEyvsSPio06LRel/cvho3QO9oMzR6W7pus5fMOQPPO9Omw==} + peerDependencies: + '@internationalized/date': '>=3.0.0' + + '@zag-js/date-utils@1.12.2': + resolution: {integrity: sha512-FTpwgfk+xoHLQEHEVYO1yoXwgNdwTVlA4XX/IhSqj+3KOTXIu60SymX63fE/rqWzayXmH5m8doP7LGW758u1mg==} + peerDependencies: + '@internationalized/date': '>=3.0.0' + + '@zag-js/dialog@1.12.2': + resolution: {integrity: sha512-Eqs/fpFc9wzYQQne4VOh8qivxuJyEcUR+MO/onTSFVV/AaJfXXowsXk7kAzcQrNzbvLn+yuTOCYFlh4QsPlLXA==} + + '@zag-js/dismissable@1.12.2': + resolution: {integrity: sha512-YIuUx+9mzzf2x9gWayt6T2e2N6nyrlBqzkJfwXJ9R3wEz065AW5X1PeKGGrvYlojPok1yNAaDq6mFL6Rqb6IVg==} + + '@zag-js/dom-query@1.12.2': + resolution: {integrity: sha512-UvFHQbkX6zscdYnMYc5TnrV/FkKlb4dMombXO2rD20NStU9gxb7uYtq91aPSO2x7aVCwNWuPWRb1nFAYGFBOvw==} + + '@zag-js/editable@1.12.2': + resolution: {integrity: sha512-kL6LulJKFOU8riW4tzM5QhAm6I6+zjfw28FjhOny7r4Mtc0HRQUJfh6WzlBcq72fqxvvf8J2OuVq2yeWPE9XBw==} + + '@zag-js/file-upload@1.12.2': + resolution: {integrity: sha512-JOjW4JGwRKVpDjZcLCU/qEAVNeUJbb9hYdmAvIAtBmf34VL3q17jsCKDvIZsxasSI0cOhuROhtWhnPXK0/lj6A==} + + '@zag-js/file-utils@1.12.2': + resolution: {integrity: sha512-E28mzjlG53RyApOGrc+gELXcrUpm6lIyWTo0ScJ7Nqlu5fe2Cy69bHyULECz3cI7/XK454yRA5Le7DifbyJQwQ==} + + '@zag-js/floating-panel@1.12.2': + resolution: {integrity: sha512-L7nxKWQEg4LB+FTwcqs5qlWaYJ8ZA3aDrZXtxqDtqltGeICAlV/0CkjwNhdX4DyGt4VLgLLYqE3Ciq0tJ1PO9g==} + + '@zag-js/focus-trap@1.12.2': + resolution: {integrity: sha512-YhlkuxvRcmVhWZa08GqGbqkbL2M0Ae72+NVjoFhlpourgERsatJjvQ8SCx5SEpPcVQQc86Zh+4QAHrdQ4//20g==} + + '@zag-js/focus-visible@1.12.2': + resolution: {integrity: sha512-rXr8+ngjbSYDZDzpP3ckCvaqodvlOuIjfKYUnTYM717l5rYCIrn2vFF+ncDdelcWRBRv5nq7o79vjsqKU+1Bww==} + + '@zag-js/highlight-word@1.12.2': + resolution: {integrity: sha512-M3bX0EeFZ5mh49B6IKTQKyPUZPMmO/7gImPr/1OmffUHUzr8EQT6M6WJBoDGB3dvGcPoahbNuGoZd3Jw48+1mA==} + + '@zag-js/hover-card@1.12.2': + resolution: {integrity: sha512-lxReLOp0kB6roMiZHz3yigKjqX541x9axIyWzwfeZmZ1Hqg46hoh5OYi0NclQ2zEFw6BMNLAc8ZVoWToBQSfTg==} + + '@zag-js/i18n-utils@1.12.2': + resolution: {integrity: sha512-P3wuPeFXWC8LW+ZzSdmaRLsSDlrQT0FU7Sx3z4IkZXr8mV+QMg5fh95dmXNIDkEcG6zL7PHwt2ho80m/KuFcfA==} + + '@zag-js/interact-outside@1.12.2': + resolution: {integrity: sha512-ii7ZKufyF+kDr2WcwVgGZZQXrd/GmNYeJ4heR/RO7q3PxYv9le+GFq3evbtBhhVQ/0P3IqZZ8bZL0f/7qQyKKg==} + + '@zag-js/listbox@1.12.2': + resolution: {integrity: sha512-EczE94iUzcKIqZhQ5SqaSiLkH88M+APrOp+xI+kHSDUt0SD4TQur6O/ALKFfBPT8Kip5iPK3Er5+t7PkC1wnvg==} + + '@zag-js/live-region@1.12.2': + resolution: {integrity: sha512-yu1a7jKoheMmeiU4cYRqod2u7JiD1o7Cgi9af1PSBcU9vFJTUpIDJErRCI79vuPSugFvpP38Cjtc3LlgE3uGyA==} + + '@zag-js/menu@1.12.2': + resolution: {integrity: sha512-Ja2RfNLHZOIBuSDRu7lS+0dfRfOov0xdA2RU8yZJBJupZBKT49tBEktJfWNr1YV3GDdlPoGSFVL2ogjNxtzDXQ==} + + '@zag-js/number-input@1.12.2': + resolution: {integrity: sha512-YesH2jaFwjRxfqdXUfjGgaAcLjoPPCYkltdC7wEBCNgAqU8UKZ+tktVHnfzZoLZiKqkQ9TXXOC4Ic6cmjXC2UQ==} + + '@zag-js/pagination@1.12.2': + resolution: {integrity: sha512-5ly8eQg/58RV0blov46oZ5vhudWMxH+9rZw0LA6Hci3lGrmDjEezOkKmN0Om8PV+xoYcrCl0nnptxALChHCNSQ==} + + '@zag-js/pin-input@1.12.2': + resolution: {integrity: sha512-cRg4FOpL9wTGRztx+qk1Sx8aakXsGw7B8+AnboT12zcW64pYF72hqJUSrz13S2um7MhDJskPrdOetal4GBqWFw==} + + '@zag-js/popover@1.12.2': + resolution: {integrity: sha512-wOYf4eNXWoZlBwNlF4EGYHsaGOrGsVIVVteCB/xSr9AXBrTF7CQiSwH445+m7u0KBZnDfsY61JweNx5U9FAmKA==} + + '@zag-js/popper@1.12.2': + resolution: {integrity: sha512-FoUx39kjStc7CUEtxCfcIlrQ0Oq9HH2As9HKz9b4IMwBg3u39sVP2XtHUQdHqNzMoscSsRtAqaTHMmRBz++GIA==} + + '@zag-js/presence@1.12.2': + resolution: {integrity: sha512-V2oNmwe3qYXxAi9Cx1y+RAdb75fexJA+m0VgmO2R5tL4DIFA/CcHB5lc4yPxUzYw2fNwVZGd6F6eUX0Ys0Sp3A==} + + '@zag-js/progress@1.12.2': + resolution: {integrity: sha512-B1jgP7iKYV3CwI33bnXPG4Hg7dr/9xl3FkYoM7hk8m5gD4b3zW1eJN8vQejKbARbxki0w/sv3r2DHCF14S7yMQ==} + + '@zag-js/qr-code@1.12.2': + resolution: {integrity: sha512-t5dByXkS3dBnhv2IS4GStAnVg0Ybm1gtWprspL97ndAHabE7tV1qwPaUV42cT16gFE6/l3aFtbjC+s0fVEFFsA==} + + '@zag-js/radio-group@1.12.2': + resolution: {integrity: sha512-4QsVREhwP0colnrsaWJIP1jjIZGqfKO7grh3K+gI4vmzD3hU9c2F6ZeRLdzdkDyK+CXcE9MYkDW0aJKxEsJr4Q==} + + '@zag-js/rating-group@1.12.2': + resolution: {integrity: sha512-n6DJCdtu2hLhZDzFQd0iS7dXL0LJlCVVAFX1pPFrLAl1QQLDZLHftGZAsTnHpF2xAgrOyvzm1p+DPB5arQVcEw==} + + '@zag-js/react@1.12.2': + resolution: {integrity: sha512-kjMP2ikLNbHSEhkrUkg20mtWyYzhOIIBMR4DXlS3nBnB2vNUGq71iUf45xgO7qq7jF/ANOazT5cKJkvBFzs7qw==} + peerDependencies: + react: '>=18.0.0' + react-dom: '>=18.0.0' + + '@zag-js/rect-utils@1.12.2': + resolution: {integrity: sha512-GM1nRRsUDhlYULdouSQ/Hwow9Wy2dJUeK5qX/CruRkkkUKNkcAB97rv8oxZtTLBBa0KemD5X/JwY4W3rfY1mgw==} + + '@zag-js/remove-scroll@1.12.2': + resolution: {integrity: sha512-SYMGGlwnh2VCnae5pEcCgxhVqlCAquqclxp9KVbuypUIZ8Tby1cP78aWwQ5i9QgNGz5V1WfINsZaE0AFr++s0g==} + + '@zag-js/scroll-snap@1.12.2': + resolution: {integrity: sha512-OCYEKKubAwshRI0PvVdt0W5vb7aq06xci5Z3mK3Fu3vIIZe1e1JVHC1vPfjJf4wso5vSdQBN9KLHgdoths4Fvg==} + + '@zag-js/select@1.12.2': + resolution: {integrity: sha512-kSa3EAkUxbEShRVnrkujujFTY22HK4aYSWl1F3u2Yqjmp9EJRX9kR1CXVXbDK8Ta9JmW82XPFyvIa+ah30isPA==} + + '@zag-js/signature-pad@1.12.2': + resolution: {integrity: sha512-xg5P8XRynjtpNU3KFET+Gw/pQpFj4yV+MnKHIX51Pb6JF8iCBkzx5lF6yNCp8y24ANG8ndGq8LCzv+sCC4tJnA==} + + '@zag-js/slider@1.12.2': + resolution: {integrity: sha512-iAlV+A/PgJoCZaqsIAPBaTd7xDLHYbUe3QbjnDqmOHIVpRIV5kM1MH8creRFtDauHIh1xHD1TIvwKPVi6Ik6Xw==} + + '@zag-js/splitter@1.12.2': + resolution: {integrity: sha512-YQLtL9AKiJtm2D7KLCvQGfHKtZ/FwikvABUW1ldUM2m1he6oKkKdGjSycT4yJg7+K5TbaZfV8jmc+bc7w0/5hA==} + + '@zag-js/steps@1.12.2': + resolution: {integrity: sha512-0bI8WYVQAiXOAn36i61Q+rqJzt6+cJK77q5/jMqDvlquQ2lvfhW2XXmBwYXmKadnmfiFprrCvGW1GGwSV/R82A==} + + '@zag-js/store@1.12.2': + resolution: {integrity: sha512-Vy1QK0cmaaruzpkIwJ1lvCO3q0E0K/M1ZY71cDbEYKRYfpRqgV+7xluWbfTueqiAIYyGPa7+nCpakdr9zPPsnQ==} + + '@zag-js/switch@1.12.2': + resolution: {integrity: sha512-vRKuCwYi5pDLgZMQ6I6cAzdLRFqC627aFycXRU1mC/0uVo/fCrrbjPvdaascLdmTtEq6/IvkjqZwQovedXbKyg==} + + '@zag-js/tabs@1.12.2': + resolution: {integrity: sha512-7IPumMCwJXP+ukU9AvnmpQJtUoMXbO+b4trG8kZeSGQps5VVZhUntrAOIZ6QYRv6psR1eoNo+4giTepr8dIt3g==} + + '@zag-js/tags-input@1.12.2': + resolution: {integrity: sha512-bldiVV08yPCDVWGGmhCw4NbK44LuKT9SYYbGUtngRfABiiQUjvc8wQZNSdRgAV1ZXrniwLiMDsQ7L9pc585SRg==} + + '@zag-js/time-picker@1.12.2': + resolution: {integrity: sha512-dv4+ZDOWW7xOFNPQGqm2aMkuBLUkUaHCa/zTzV/0Ypl+A/6gBwjv81HIBDTJOHfhcJhlhuoZtgxU/n0ZRFB0yw==} + peerDependencies: + '@internationalized/date': '>=3.0.0' + + '@zag-js/timer@1.12.2': + resolution: {integrity: sha512-1cmdgRSuZNKEoyv5CNb4GZeU3MUi+WJBMZKeXMWy4niBz5sheaLl1FqfW9vUnXAKpfqKif/OFj/QYeo9+m8LqA==} + + '@zag-js/toast@1.12.2': + resolution: {integrity: sha512-uaSlF3PiQ/hlFamBRkrxUESDYd8vXo/iRqvNiROy18bBygpvhfNIi+f8vrvkGXuSqzZ8VWJbbgiNMtqPX6I/8w==} + + '@zag-js/toggle-group@1.12.2': + resolution: {integrity: sha512-pFgU9OjhcBVIWS5izSlTG+K3MlKK+LeD1qKaMIHvX//0pJWkn9oEcNVs58Ae4DrizN5A8WB5i5FjV7BC3hDNYw==} + + '@zag-js/toggle@1.12.2': + resolution: {integrity: sha512-AUDEVjZtXwwYFSEHF4cDTJlGvjsaYcXdk3P7j9JQLoKkDci3x25QgOw6W670/RWpFNpbfjO8qBjWMs1P5+Dw4w==} + + '@zag-js/tooltip@1.12.2': + resolution: {integrity: sha512-RAZ0wslbHWfcH1MPVmfwFJfP3vzQ2Cf5hc5oJZzTURhNpgM3vIhtbCyjXwal/L82eW+Iu2bRrezE/fNRjwBIbw==} + + '@zag-js/tour@1.12.2': + resolution: {integrity: sha512-3TNE2p/mUe52RgndOpoSEVlB57TWuK6dM1X/atVMfDBDDBwTjDFkw5OnHSh3nDugva54EJVArn/0+9QGZhvl+w==} + + '@zag-js/tree-view@1.12.2': + resolution: {integrity: sha512-S/+a6KCFGSocMKlMG8GmfEkfjbuDeams4s/NTy1JYOTlYO72J5T0L9FD8i9q/bXBhHNno985b5QGpjlfHG6Brg==} + + '@zag-js/types@1.12.2': + resolution: {integrity: sha512-coJfIU/1Cg1RkWEkf4ArXK6rD3EU+lwxQdtVRlhvGk4c2ts2YTqNi/Sis5CT4/dzaKAk3pk8O2H3ry4IcL2tsg==} + + '@zag-js/utils@1.12.2': + resolution: {integrity: sha512-JLmzHzJVggOy+4z3jbJ8v86O6Gqm4h1/+ExtwfiTiba0O7j2+4Had7XQxSjVw+H7fNDAfwbZY8af7XzrnumcLQ==} + + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@5.2.0: + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + argparse@1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + + async@3.2.6: + resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} + + babel-jest@29.7.0: + resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@babel/core': ^7.8.0 + + babel-plugin-istanbul@6.1.1: + resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} + engines: {node: '>=8'} + + babel-plugin-jest-hoist@29.6.3: + resolution: {integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + babel-plugin-macros@3.1.0: + resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} + engines: {node: '>=10', npm: '>=6'} + + babel-preset-current-node-syntax@1.1.0: + resolution: {integrity: sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==} + peerDependencies: + '@babel/core': ^7.0.0 + + babel-preset-jest@29.6.3: + resolution: {integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@babel/core': ^7.0.0 + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.25.0: + resolution: {integrity: sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + bs-logger@0.2.6: + resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} + engines: {node: '>= 6'} + + bser@2.1.1: + resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} + + buffer-from@1.1.2: + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + camelcase@5.3.1: + resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} + engines: {node: '>=6'} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + + caniuse-lite@1.0.30001721: + resolution: {integrity: sha512-cOuvmUVtKrtEaoKiO0rSc29jcjwMwX5tOHDy4MgVFEWiUXj4uBMJkwI8MDySkgXidpMiHUcviogAvFi4pA2hDQ==} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + char-regex@1.0.2: + resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} + engines: {node: '>=10'} + + chart.js@4.4.9: + resolution: {integrity: sha512-EyZ9wWKgpAU0fLJ43YAEIF8sr5F2W3LqbS40ZJyHIner2lY14ufqv2VMp69MAiZ2rpwxEUxEhIH/0U3xyRynxg==} + engines: {pnpm: '>=8'} + + ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} + engines: {node: '>=8'} + + cjs-module-lexer@1.4.3: + resolution: {integrity: sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + co@4.6.0: + resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} + engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} + + collect-v8-coverage@1.0.2: + resolution: {integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + convert-source-map@1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + core-js@3.42.0: + resolution: {integrity: sha512-Sz4PP4ZA+Rq4II21qkNqOEDTDrCvcANId3xpIgB34NDkWc3UduWj2dqEtN9yZIq8Dk3HyPI33x9sqqU5C8sr0g==} + + cosmiconfig@7.1.0: + resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} + engines: {node: '>=10'} + + create-jest@29.7.0: + resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + hasBin: true + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + + dayjs@1.11.13: + resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} + + debug@4.4.1: + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + dedent@1.6.0: + resolution: {integrity: sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA==} + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true + + deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + + detect-newline@3.1.0: + resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} + engines: {node: '>=8'} + + diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + ejs@3.1.10: + resolution: {integrity: sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==} + engines: {node: '>=0.10.0'} + hasBin: true + + electron-to-chromium@1.5.165: + resolution: {integrity: sha512-naiMx1Z6Nb2TxPU6fiFrUrDTjyPMLdTtaOd2oLmG8zVSg2hCWGkhPyxwk+qRmZ1ytwVqUv0u7ZcDA5+ALhaUtw==} + + emittery@0.13.1: + resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} + engines: {node: '>=12'} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + + error-stack-parser@2.1.4: + resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@2.0.0: + resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} + engines: {node: '>=8'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + + execa@5.1.1: + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} + + exit@0.1.2: + resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==} + engines: {node: '>= 0.8.0'} + + expect@29.7.0: + resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-safe-stringify@2.1.1: + resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} + + fb-watchman@2.0.2: + resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} + + filelist@1.0.4: + resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-root@1.1.0: + resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} + + find-up@4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-package-type@0.1.0: + resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} + engines: {node: '>=8.0.0'} + + get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported + + globals@11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + hoist-non-react-statics@3.3.2: + resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} + + html-entities@2.6.0: + resolution: {integrity: sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==} + + html-escaper@2.0.2: + resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + + human-signals@2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + import-local@3.2.0: + resolution: {integrity: sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==} + engines: {node: '>=8'} + hasBin: true + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + 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. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-generator-fn@2.1.0: + resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} + engines: {node: '>=6'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + istanbul-lib-coverage@3.2.2: + resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} + engines: {node: '>=8'} + + istanbul-lib-instrument@5.2.1: + resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==} + engines: {node: '>=8'} + + istanbul-lib-instrument@6.0.3: + resolution: {integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==} + engines: {node: '>=10'} + + istanbul-lib-report@3.0.1: + resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} + engines: {node: '>=10'} + + istanbul-lib-source-maps@4.0.1: + resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} + engines: {node: '>=10'} + + istanbul-reports@3.1.7: + resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} + engines: {node: '>=8'} + + jake@10.9.2: + resolution: {integrity: sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==} + engines: {node: '>=10'} + hasBin: true + + jest-changed-files@29.7.0: + resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-circus@29.7.0: + resolution: {integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-cli@29.7.0: + resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + hasBin: true + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + + jest-config@29.7.0: + resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@types/node': '*' + ts-node: '>=9.0.0' + peerDependenciesMeta: + '@types/node': + optional: true + ts-node: + optional: true + + jest-diff@29.7.0: + resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-docblock@29.7.0: + resolution: {integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-each@29.7.0: + resolution: {integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-environment-node@29.7.0: + resolution: {integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-get-type@29.6.3: + resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-haste-map@29.7.0: + resolution: {integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-leak-detector@29.7.0: + resolution: {integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-matcher-utils@29.7.0: + resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + 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} + + jest-mock@29.7.0: + resolution: {integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-pnp-resolver@1.2.3: + resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} + engines: {node: '>=6'} + peerDependencies: + jest-resolve: '*' + peerDependenciesMeta: + jest-resolve: + optional: true + + jest-regex-util@29.6.3: + resolution: {integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-resolve-dependencies@29.7.0: + resolution: {integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-resolve@29.7.0: + resolution: {integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-runner@29.7.0: + resolution: {integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-runtime@29.7.0: + resolution: {integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-snapshot@29.7.0: + resolution: {integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-util@29.7.0: + resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-validate@29.7.0: + resolution: {integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-watcher@29.7.0: + resolution: {integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-worker@29.7.0: + resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest@29.7.0: + resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + hasBin: true + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + + jiti@2.4.2: + resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} + hasBin: true + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@3.14.1: + resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} + hasBin: true + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + + json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + kleur@3.0.3: + resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} + engines: {node: '>=6'} + + leven@3.1.0: + resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} + engines: {node: '>=6'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + locate-path@5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} + + lodash.memoize@4.1.2: + resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} + + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + + make-dir@4.0.0: + resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} + engines: {node: '>=10'} + + make-error@1.3.6: + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + + makeerror@1.0.12: + resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} + + merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@5.1.6: + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + engines: {node: '>=10'} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + next-themes@0.4.6: + resolution: {integrity: sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==} + peerDependencies: + react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + + node-int64@0.4.0: + resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} + + node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + npm-run-path@4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=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'} + + 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-locate@4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} + + p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + 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-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + perfect-freehand@1.2.2: + resolution: {integrity: sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + pirates@4.0.7: + resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==} + engines: {node: '>= 6'} + + pkg-dir@4.2.0: + resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} + engines: {node: '>=8'} + + pretty-format@29.7.0: + resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + prompts@2.4.2: + resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} + engines: {node: '>= 6'} + + proxy-compare@3.0.1: + resolution: {integrity: sha512-V9plBAt3qjMlS1+nC8771KNf6oJ12gExvaxnNzN/9yVRLdTv/lc+oJlnSzrdYDAvBfTStPCoiaCOTmTs0adv7Q==} + + proxy-memoize@3.0.1: + resolution: {integrity: sha512-VDdG/VYtOgdGkWJx7y0o7p+zArSf2383Isci8C+BP3YXgMYDoPd3cCBjw0JdWb6YBb9sFiOPbAADDVTPJnh+9g==} + + pure-rand@6.1.0: + resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==} + + react-chartjs-2@5.3.0: + resolution: {integrity: sha512-UfZZFnDsERI3c3CZGxzvNJd02SHjaSJ8kgW1djn65H1KK8rehwTjyrRKOG3VTMG8wtHZ5rgAO5oTHtHi9GCCmw==} + peerDependencies: + chart.js: ^4.1.1 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + react-dom@19.1.0: + resolution: {integrity: sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==} + peerDependencies: + react: ^19.1.0 + + react-hook-form@7.57.0: + resolution: {integrity: sha512-RbEks3+cbvTP84l/VXGUZ+JMrKOS8ykQCRYdm5aYsxnDquL0vspsyNhGRO7pcH6hsZqWlPOjLye7rJqdtdAmlg==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^16.8.0 || ^17 || ^18 || ^19 + + react-icons@5.5.0: + resolution: {integrity: sha512-MEFcXdkP3dLo8uumGI5xN3lDFNsRtrjbOEKDLD7yv76v4wpnEq2Lt2qeHaQOr34I/wPN3s3+N08WkQ+CW37Xiw==} + peerDependencies: + react: '*' + + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + + react-is@18.3.1: + resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + + react-refresh@0.17.0: + resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==} + engines: {node: '>=0.10.0'} + + react@19.1.0: + resolution: {integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==} + engines: {node: '>=0.10.0'} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + resolve-cwd@3.0.0: + resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} + engines: {node: '>=8'} + + 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.exports@2.0.3: + resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==} + engines: {node: '>=10'} + + resolve@1.22.10: + resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + engines: {node: '>= 0.4'} + hasBin: true + + scheduler@0.26.0: + resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==} + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.7.2: + resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + engines: {node: '>=10'} + hasBin: true + + 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'} + + signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + + sisteransi@1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + source-map-support@0.5.13: + resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==} + + 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'} + + sprintf-js@1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + + stack-utils@2.0.6: + resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} + engines: {node: '>=10'} + + stackframe@1.3.4: + resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} + + string-length@4.0.2: + resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} + engines: {node: '>=10'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-bom@4.0.0: + resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==} + engines: {node: '>=8'} + + strip-final-newline@2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + stylis@4.2.0: + resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} + + 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-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + test-exclude@6.0.0: + resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} + engines: {node: '>=8'} + + tmpl@1.0.5: + resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + ts-jest@29.3.4: + resolution: {integrity: sha512-Iqbrm8IXOmV+ggWHOTEbjwyCf2xZlUMv5npExksXohL+tk8va4Fjhb+X2+Rt9NBmgO7bJ8WpnMLOwih/DnMlFA==} + engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@babel/core': '>=7.0.0-beta.0 <8' + '@jest/transform': ^29.0.0 + '@jest/types': ^29.0.0 + babel-jest: ^29.0.0 + esbuild: '*' + jest: ^29.0.0 + typescript: '>=4.3 <6' + peerDependenciesMeta: + '@babel/core': + optional: true + '@jest/transform': + optional: true + '@jest/types': + optional: true + babel-jest: + optional: true + esbuild: + optional: true + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + type-detect@4.0.8: + resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} + engines: {node: '>=4'} + + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + + type-fest@4.41.0: + resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==} + engines: {node: '>=16'} + + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + engines: {node: '>=14.17'} + hasBin: true + + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + + update-browserslist-db@1.1.3: + resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uqr@0.1.2: + resolution: {integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==} + + uuid@11.1.0: + resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==} + hasBin: true + + v8-to-istanbul@9.3.0: + resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==} + engines: {node: '>=10.12.0'} + + walker@1.0.8: + resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + write-file-atomic@4.0.2: + resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yaml@1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} + engines: {node: '>= 6'} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + + '@ark-ui/react@5.9.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@internationalized/date': 3.8.0 + '@zag-js/accordion': 1.12.2 + '@zag-js/anatomy': 1.12.2 + '@zag-js/angle-slider': 1.12.2 + '@zag-js/auto-resize': 1.12.2 + '@zag-js/avatar': 1.12.2 + '@zag-js/carousel': 1.12.2 + '@zag-js/checkbox': 1.12.2 + '@zag-js/clipboard': 1.12.2 + '@zag-js/collapsible': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/color-picker': 1.12.2 + '@zag-js/color-utils': 1.12.2 + '@zag-js/combobox': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/date-picker': 1.12.2(@internationalized/date@3.8.0) + '@zag-js/date-utils': 1.12.2(@internationalized/date@3.8.0) + '@zag-js/dialog': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/editable': 1.12.2 + '@zag-js/file-upload': 1.12.2 + '@zag-js/file-utils': 1.12.2 + '@zag-js/floating-panel': 1.12.2 + '@zag-js/focus-trap': 1.12.2 + '@zag-js/highlight-word': 1.12.2 + '@zag-js/hover-card': 1.12.2 + '@zag-js/i18n-utils': 1.12.2 + '@zag-js/listbox': 1.12.2 + '@zag-js/menu': 1.12.2 + '@zag-js/number-input': 1.12.2 + '@zag-js/pagination': 1.12.2 + '@zag-js/pin-input': 1.12.2 + '@zag-js/popover': 1.12.2 + '@zag-js/presence': 1.12.2 + '@zag-js/progress': 1.12.2 + '@zag-js/qr-code': 1.12.2 + '@zag-js/radio-group': 1.12.2 + '@zag-js/rating-group': 1.12.2 + '@zag-js/react': 1.12.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@zag-js/select': 1.12.2 + '@zag-js/signature-pad': 1.12.2 + '@zag-js/slider': 1.12.2 + '@zag-js/splitter': 1.12.2 + '@zag-js/steps': 1.12.2 + '@zag-js/switch': 1.12.2 + '@zag-js/tabs': 1.12.2 + '@zag-js/tags-input': 1.12.2 + '@zag-js/time-picker': 1.12.2(@internationalized/date@3.8.0) + '@zag-js/timer': 1.12.2 + '@zag-js/toast': 1.12.2 + '@zag-js/toggle': 1.12.2 + '@zag-js/toggle-group': 1.12.2 + '@zag-js/tooltip': 1.12.2 + '@zag-js/tour': 1.12.2 + '@zag-js/tree-view': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + + '@babel/code-frame@7.27.1': + dependencies: + '@babel/helper-validator-identifier': 7.27.1 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/compat-data@7.27.5': {} + + '@babel/core@7.27.4': + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.27.1 + '@babel/generator': 7.27.5 + '@babel/helper-compilation-targets': 7.27.2 + '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.4) + '@babel/helpers': 7.27.6 + '@babel/parser': 7.27.5 + '@babel/template': 7.27.2 + '@babel/traverse': 7.27.4 + '@babel/types': 7.27.6 + convert-source-map: 2.0.0 + debug: 4.4.1 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.27.5': + dependencies: + '@babel/parser': 7.27.5 + '@babel/types': 7.27.6 + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 3.1.0 + + '@babel/helper-compilation-targets@7.27.2': + dependencies: + '@babel/compat-data': 7.27.5 + '@babel/helper-validator-option': 7.27.1 + browserslist: 4.25.0 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-module-imports@7.27.1': + dependencies: + '@babel/traverse': 7.27.4 + '@babel/types': 7.27.6 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.27.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-module-imports': 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 + '@babel/traverse': 7.27.4 + transitivePeerDependencies: + - supports-color + + '@babel/helper-plugin-utils@7.27.1': {} + + '@babel/helper-string-parser@7.27.1': {} + + '@babel/helper-validator-identifier@7.27.1': {} + + '@babel/helper-validator-option@7.27.1': {} + + '@babel/helpers@7.27.6': + dependencies: + '@babel/template': 7.27.2 + '@babel/types': 7.27.6 + + '@babel/parser@7.27.5': + dependencies: + '@babel/types': 7.27.6 + + '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/runtime@7.27.6': {} + + '@babel/template@7.27.2': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/parser': 7.27.5 + '@babel/types': 7.27.6 + + '@babel/traverse@7.27.4': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/generator': 7.27.5 + '@babel/parser': 7.27.5 + '@babel/template': 7.27.2 + '@babel/types': 7.27.6 + debug: 4.4.1 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.27.6': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 + + '@bcoe/v8-coverage@0.2.3': {} + + '@chakra-ui/react@3.19.2(@emotion/react@11.14.0(@types/react@19.1.6)(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@ark-ui/react': 5.9.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@emotion/is-prop-valid': 1.3.1 + '@emotion/react': 11.14.0(@types/react@19.1.6)(react@19.1.0) + '@emotion/serialize': 1.3.3 + '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@19.1.0) + '@emotion/utils': 1.4.2 + '@pandacss/is-valid-prop': 0.53.6 + csstype: 3.1.3 + fast-safe-stringify: 2.1.1 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + + '@emotion/babel-plugin@11.13.5': + dependencies: + '@babel/helper-module-imports': 7.27.1 + '@babel/runtime': 7.27.6 + '@emotion/hash': 0.9.2 + '@emotion/memoize': 0.9.0 + '@emotion/serialize': 1.3.3 + 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.14.0': + dependencies: + '@emotion/memoize': 0.9.0 + '@emotion/sheet': 1.4.0 + '@emotion/utils': 1.4.2 + '@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.14.0(@types/react@19.1.6)(react@19.1.0)': + dependencies: + '@babel/runtime': 7.27.6 + '@emotion/babel-plugin': 11.13.5 + '@emotion/cache': 11.14.0 + '@emotion/serialize': 1.3.3 + '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@19.1.0) + '@emotion/utils': 1.4.2 + '@emotion/weak-memoize': 0.4.0 + hoist-non-react-statics: 3.3.2 + react: 19.1.0 + optionalDependencies: + '@types/react': 19.1.6 + transitivePeerDependencies: + - supports-color + + '@emotion/serialize@1.3.3': + dependencies: + '@emotion/hash': 0.9.2 + '@emotion/memoize': 0.9.0 + '@emotion/unitless': 0.10.0 + '@emotion/utils': 1.4.2 + csstype: 3.1.3 + + '@emotion/sheet@1.4.0': {} + + '@emotion/unitless@0.10.0': {} + + '@emotion/use-insertion-effect-with-fallbacks@1.2.0(react@19.1.0)': + dependencies: + react: 19.1.0 + + '@emotion/utils@1.4.2': {} + + '@emotion/weak-memoize@0.4.0': {} + + '@floating-ui/core@1.7.1': + dependencies: + '@floating-ui/utils': 0.2.9 + + '@floating-ui/dom@1.6.13': + dependencies: + '@floating-ui/core': 1.7.1 + '@floating-ui/utils': 0.2.9 + + '@floating-ui/utils@0.2.9': {} + + '@internationalized/date@3.8.0': + dependencies: + '@swc/helpers': 0.5.17 + + '@internationalized/number@3.6.1': + dependencies: + '@swc/helpers': 0.5.17 + + '@istanbuljs/load-nyc-config@1.1.0': + dependencies: + camelcase: 5.3.1 + find-up: 4.1.0 + get-package-type: 0.1.0 + js-yaml: 3.14.1 + resolve-from: 5.0.0 + + '@istanbuljs/schema@0.1.3': {} + + '@jest/console@29.7.0': + dependencies: + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + chalk: 4.1.2 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + slash: 3.0.0 + + '@jest/core@29.7.0(babel-plugin-macros@3.1.0)': + dependencies: + '@jest/console': 29.7.0 + '@jest/reporters': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + ansi-escapes: 4.3.2 + chalk: 4.1.2 + ci-info: 3.9.0 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-changed-files: 29.7.0 + jest-config: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-resolve-dependencies: 29.7.0 + jest-runner: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + jest-watcher: 29.7.0 + micromatch: 4.0.8 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-ansi: 6.0.1 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + - ts-node + + '@jest/environment@29.7.0': + dependencies: + '@jest/fake-timers': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + jest-mock: 29.7.0 + + '@jest/expect-utils@29.7.0': + dependencies: + jest-get-type: 29.6.3 + + '@jest/expect@29.7.0': + dependencies: + expect: 29.7.0 + jest-snapshot: 29.7.0 + transitivePeerDependencies: + - supports-color + + '@jest/fake-timers@29.7.0': + dependencies: + '@jest/types': 29.6.3 + '@sinonjs/fake-timers': 10.3.0 + '@types/node': 22.15.30 + jest-message-util: 29.7.0 + jest-mock: 29.7.0 + jest-util: 29.7.0 + + '@jest/globals@29.7.0': + dependencies: + '@jest/environment': 29.7.0 + '@jest/expect': 29.7.0 + '@jest/types': 29.6.3 + jest-mock: 29.7.0 + transitivePeerDependencies: + - supports-color + + '@jest/reporters@29.7.0': + dependencies: + '@bcoe/v8-coverage': 0.2.3 + '@jest/console': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@jridgewell/trace-mapping': 0.3.25 + '@types/node': 22.15.30 + chalk: 4.1.2 + collect-v8-coverage: 1.0.2 + exit: 0.1.2 + glob: 7.2.3 + graceful-fs: 4.2.11 + istanbul-lib-coverage: 3.2.2 + istanbul-lib-instrument: 6.0.3 + istanbul-lib-report: 3.0.1 + istanbul-lib-source-maps: 4.0.1 + istanbul-reports: 3.1.7 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + jest-worker: 29.7.0 + slash: 3.0.0 + string-length: 4.0.2 + strip-ansi: 6.0.1 + v8-to-istanbul: 9.3.0 + transitivePeerDependencies: + - supports-color + + '@jest/schemas@29.6.3': + dependencies: + '@sinclair/typebox': 0.27.8 + + '@jest/source-map@29.6.3': + dependencies: + '@jridgewell/trace-mapping': 0.3.25 + callsites: 3.1.0 + graceful-fs: 4.2.11 + + '@jest/test-result@29.7.0': + dependencies: + '@jest/console': 29.7.0 + '@jest/types': 29.6.3 + '@types/istanbul-lib-coverage': 2.0.6 + collect-v8-coverage: 1.0.2 + + '@jest/test-sequencer@29.7.0': + dependencies: + '@jest/test-result': 29.7.0 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + slash: 3.0.0 + + '@jest/transform@29.7.0': + dependencies: + '@babel/core': 7.27.4 + '@jest/types': 29.6.3 + '@jridgewell/trace-mapping': 0.3.25 + babel-plugin-istanbul: 6.1.1 + chalk: 4.1.2 + convert-source-map: 2.0.0 + fast-json-stable-stringify: 2.1.0 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + jest-regex-util: 29.6.3 + jest-util: 29.7.0 + micromatch: 4.0.8 + pirates: 4.0.7 + slash: 3.0.0 + write-file-atomic: 4.0.2 + transitivePeerDependencies: + - supports-color + + '@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': 22.15.30 + '@types/yargs': 17.0.33 + chalk: 4.1.2 + + '@jridgewell/gen-mapping@0.3.8': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.2.1': {} + + '@jridgewell/sourcemap-codec@1.5.0': {} + + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + + '@kurkle/color@0.3.4': {} + + '@module-federation/error-codes@0.14.0': {} + + '@module-federation/runtime-core@0.14.0': + dependencies: + '@module-federation/error-codes': 0.14.0 + '@module-federation/sdk': 0.14.0 + + '@module-federation/runtime-tools@0.14.0': + dependencies: + '@module-federation/runtime': 0.14.0 + '@module-federation/webpack-bundler-runtime': 0.14.0 + + '@module-federation/runtime@0.14.0': + dependencies: + '@module-federation/error-codes': 0.14.0 + '@module-federation/runtime-core': 0.14.0 + '@module-federation/sdk': 0.14.0 + + '@module-federation/sdk@0.14.0': {} + + '@module-federation/webpack-bundler-runtime@0.14.0': + dependencies: + '@module-federation/runtime': 0.14.0 + '@module-federation/sdk': 0.14.0 + + '@pandacss/is-valid-prop@0.53.6': {} + + '@rsbuild/core@1.3.22': + dependencies: + '@rspack/core': 1.3.12(@swc/helpers@0.5.17) + '@rspack/lite-tapable': 1.0.1 + '@swc/helpers': 0.5.17 + core-js: 3.42.0 + jiti: 2.4.2 + + '@rsbuild/plugin-react@1.3.2(@rsbuild/core@1.3.22)': + dependencies: + '@rsbuild/core': 1.3.22 + '@rspack/plugin-react-refresh': 1.4.3(react-refresh@0.17.0) + react-refresh: 0.17.0 + transitivePeerDependencies: + - webpack-hot-middleware + + '@rspack/binding-darwin-arm64@1.3.12': + optional: true + + '@rspack/binding-darwin-x64@1.3.12': + optional: true + + '@rspack/binding-linux-arm64-gnu@1.3.12': + optional: true + + '@rspack/binding-linux-arm64-musl@1.3.12': + optional: true + + '@rspack/binding-linux-x64-gnu@1.3.12': + optional: true + + '@rspack/binding-linux-x64-musl@1.3.12': + optional: true + + '@rspack/binding-win32-arm64-msvc@1.3.12': + optional: true + + '@rspack/binding-win32-ia32-msvc@1.3.12': + optional: true + + '@rspack/binding-win32-x64-msvc@1.3.12': + optional: true + + '@rspack/binding@1.3.12': + optionalDependencies: + '@rspack/binding-darwin-arm64': 1.3.12 + '@rspack/binding-darwin-x64': 1.3.12 + '@rspack/binding-linux-arm64-gnu': 1.3.12 + '@rspack/binding-linux-arm64-musl': 1.3.12 + '@rspack/binding-linux-x64-gnu': 1.3.12 + '@rspack/binding-linux-x64-musl': 1.3.12 + '@rspack/binding-win32-arm64-msvc': 1.3.12 + '@rspack/binding-win32-ia32-msvc': 1.3.12 + '@rspack/binding-win32-x64-msvc': 1.3.12 + + '@rspack/core@1.3.12(@swc/helpers@0.5.17)': + dependencies: + '@module-federation/runtime-tools': 0.14.0 + '@rspack/binding': 1.3.12 + '@rspack/lite-tapable': 1.0.1 + caniuse-lite: 1.0.30001721 + optionalDependencies: + '@swc/helpers': 0.5.17 + + '@rspack/lite-tapable@1.0.1': {} + + '@rspack/plugin-react-refresh@1.4.3(react-refresh@0.17.0)': + dependencies: + error-stack-parser: 2.1.4 + html-entities: 2.6.0 + react-refresh: 0.17.0 + + '@sinclair/typebox@0.27.8': {} + + '@sinonjs/commons@3.0.1': + dependencies: + type-detect: 4.0.8 + + '@sinonjs/fake-timers@10.3.0': + dependencies: + '@sinonjs/commons': 3.0.1 + + '@swc/helpers@0.5.17': + dependencies: + tslib: 2.8.1 + + '@types/babel__core@7.20.5': + dependencies: + '@babel/parser': 7.27.5 + '@babel/types': 7.27.6 + '@types/babel__generator': 7.27.0 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.20.7 + + '@types/babel__generator@7.27.0': + dependencies: + '@babel/types': 7.27.6 + + '@types/babel__template@7.4.4': + dependencies: + '@babel/parser': 7.27.5 + '@babel/types': 7.27.6 + + '@types/babel__traverse@7.20.7': + dependencies: + '@babel/types': 7.27.6 + + '@types/graceful-fs@4.1.9': + dependencies: + '@types/node': 22.15.30 + + '@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/node@22.15.30': + dependencies: + undici-types: 6.21.0 + + '@types/parse-json@4.0.2': {} + + '@types/react-dom@19.1.6(@types/react@19.1.6)': + dependencies: + '@types/react': 19.1.6 + + '@types/react@19.1.6': + dependencies: + csstype: 3.1.3 + + '@types/stack-utils@2.0.3': {} + + '@types/yargs-parser@21.0.3': {} + + '@types/yargs@17.0.33': + dependencies: + '@types/yargs-parser': 21.0.3 + + '@zag-js/accordion@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/anatomy@1.12.2': {} + + '@zag-js/angle-slider@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/rect-utils': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/aria-hidden@1.12.2': {} + + '@zag-js/auto-resize@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/avatar@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/carousel@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/scroll-snap': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/checkbox@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/clipboard@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/collapsible@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/collection@1.12.2': + dependencies: + '@zag-js/utils': 1.12.2 + + '@zag-js/color-picker@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/color-utils': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/color-utils@1.12.2': + dependencies: + '@zag-js/utils': 1.12.2 + + '@zag-js/combobox@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/aria-hidden': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/core@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/date-picker@1.12.2(@internationalized/date@3.8.0)': + dependencies: + '@internationalized/date': 3.8.0 + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/date-utils': 1.12.2(@internationalized/date@3.8.0) + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/live-region': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/date-utils@1.12.2(@internationalized/date@3.8.0)': + dependencies: + '@internationalized/date': 3.8.0 + + '@zag-js/dialog@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/aria-hidden': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-trap': 1.12.2 + '@zag-js/remove-scroll': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/dismissable@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + '@zag-js/interact-outside': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/dom-query@1.12.2': + dependencies: + '@zag-js/types': 1.12.2 + + '@zag-js/editable@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/interact-outside': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/file-upload@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/file-utils': 1.12.2 + '@zag-js/i18n-utils': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/file-utils@1.12.2': + dependencies: + '@zag-js/i18n-utils': 1.12.2 + + '@zag-js/floating-panel@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/rect-utils': 1.12.2 + '@zag-js/store': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/focus-trap@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/focus-visible@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/highlight-word@1.12.2': {} + + '@zag-js/hover-card@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/i18n-utils@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/interact-outside@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/listbox@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/live-region@1.12.2': {} + + '@zag-js/menu@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/rect-utils': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/number-input@1.12.2': + dependencies: + '@internationalized/number': 3.6.1 + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/pagination@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/pin-input@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/popover@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/aria-hidden': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-trap': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/remove-scroll': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/popper@1.12.2': + dependencies: + '@floating-ui/dom': 1.6.13 + '@zag-js/dom-query': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/presence@1.12.2': + dependencies: + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + + '@zag-js/progress@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/qr-code@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + proxy-memoize: 3.0.1 + uqr: 0.1.2 + + '@zag-js/radio-group@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/rating-group@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/react@1.12.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + '@zag-js/core': 1.12.2 + '@zag-js/store': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + + '@zag-js/rect-utils@1.12.2': {} + + '@zag-js/remove-scroll@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/scroll-snap@1.12.2': + dependencies: + '@zag-js/dom-query': 1.12.2 + + '@zag-js/select@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/signature-pad@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + perfect-freehand: 1.2.2 + + '@zag-js/slider@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/splitter@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/steps@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/store@1.12.2': + dependencies: + proxy-compare: 3.0.1 + + '@zag-js/switch@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tabs@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tags-input@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/auto-resize': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/interact-outside': 1.12.2 + '@zag-js/live-region': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/time-picker@1.12.2(@internationalized/date@3.8.0)': + dependencies: + '@internationalized/date': 3.8.0 + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/timer@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/toast@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/toggle-group@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/toggle@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tooltip@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-visible': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/store': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tour@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dismissable': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/focus-trap': 1.12.2 + '@zag-js/interact-outside': 1.12.2 + '@zag-js/popper': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/tree-view@1.12.2': + dependencies: + '@zag-js/anatomy': 1.12.2 + '@zag-js/collection': 1.12.2 + '@zag-js/core': 1.12.2 + '@zag-js/dom-query': 1.12.2 + '@zag-js/types': 1.12.2 + '@zag-js/utils': 1.12.2 + + '@zag-js/types@1.12.2': + dependencies: + csstype: 3.1.3 + + '@zag-js/utils@1.12.2': {} + + ansi-escapes@4.3.2: + dependencies: + type-fest: 0.21.3 + + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@5.2.0: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + argparse@1.0.10: + dependencies: + sprintf-js: 1.0.3 + + async@3.2.6: {} + + babel-jest@29.7.0(@babel/core@7.27.4): + dependencies: + '@babel/core': 7.27.4 + '@jest/transform': 29.7.0 + '@types/babel__core': 7.20.5 + babel-plugin-istanbul: 6.1.1 + babel-preset-jest: 29.6.3(@babel/core@7.27.4) + chalk: 4.1.2 + graceful-fs: 4.2.11 + slash: 3.0.0 + transitivePeerDependencies: + - supports-color + + babel-plugin-istanbul@6.1.1: + dependencies: + '@babel/helper-plugin-utils': 7.27.1 + '@istanbuljs/load-nyc-config': 1.1.0 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-instrument: 5.2.1 + test-exclude: 6.0.0 + transitivePeerDependencies: + - supports-color + + babel-plugin-jest-hoist@29.6.3: + dependencies: + '@babel/template': 7.27.2 + '@babel/types': 7.27.6 + '@types/babel__core': 7.20.5 + '@types/babel__traverse': 7.20.7 + + babel-plugin-macros@3.1.0: + dependencies: + '@babel/runtime': 7.27.6 + cosmiconfig: 7.1.0 + resolve: 1.22.10 + + babel-preset-current-node-syntax@1.1.0(@babel/core@7.27.4): + dependencies: + '@babel/core': 7.27.4 + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.27.4) + '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.27.4) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.27.4) + '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.27.4) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.27.4) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.27.4) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.27.4) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.27.4) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.27.4) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.27.4) + + babel-preset-jest@29.6.3(@babel/core@7.27.4): + dependencies: + '@babel/core': 7.27.4 + babel-plugin-jest-hoist: 29.6.3 + babel-preset-current-node-syntax: 1.1.0(@babel/core@7.27.4) + + balanced-match@1.0.2: {} + + brace-expansion@1.1.11: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.1: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.25.0: + dependencies: + caniuse-lite: 1.0.30001721 + electron-to-chromium: 1.5.165 + node-releases: 2.0.19 + update-browserslist-db: 1.1.3(browserslist@4.25.0) + + bs-logger@0.2.6: + dependencies: + fast-json-stable-stringify: 2.1.0 + + bser@2.1.1: + dependencies: + node-int64: 0.4.0 + + buffer-from@1.1.2: {} + + callsites@3.1.0: {} + + camelcase@5.3.1: {} + + camelcase@6.3.0: {} + + caniuse-lite@1.0.30001721: {} + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + char-regex@1.0.2: {} + + chart.js@4.4.9: + dependencies: + '@kurkle/color': 0.3.4 + + ci-info@3.9.0: {} + + cjs-module-lexer@1.4.3: {} + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + co@4.6.0: {} + + collect-v8-coverage@1.0.2: {} + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + concat-map@0.0.1: {} + + convert-source-map@1.9.0: {} + + convert-source-map@2.0.0: {} + + core-js@3.42.0: {} + + cosmiconfig@7.1.0: + dependencies: + '@types/parse-json': 4.0.2 + import-fresh: 3.3.1 + parse-json: 5.2.0 + path-type: 4.0.0 + yaml: 1.10.2 + + create-jest@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0): + dependencies: + '@jest/types': 29.6.3 + chalk: 4.1.2 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-config: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + jest-util: 29.7.0 + prompts: 2.4.2 + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + csstype@3.1.3: {} + + dayjs@1.11.13: {} + + debug@4.4.1: + dependencies: + ms: 2.1.3 + + dedent@1.6.0(babel-plugin-macros@3.1.0): + optionalDependencies: + babel-plugin-macros: 3.1.0 + + deepmerge@4.3.1: {} + + detect-newline@3.1.0: {} + + diff-sequences@29.6.3: {} + + ejs@3.1.10: + dependencies: + jake: 10.9.2 + + electron-to-chromium@1.5.165: {} + + emittery@0.13.1: {} + + emoji-regex@8.0.0: {} + + error-ex@1.3.2: + dependencies: + is-arrayish: 0.2.1 + + error-stack-parser@2.1.4: + dependencies: + stackframe: 1.3.4 + + escalade@3.2.0: {} + + escape-string-regexp@2.0.0: {} + + escape-string-regexp@4.0.0: {} + + esprima@4.0.1: {} + + execa@5.1.1: + dependencies: + cross-spawn: 7.0.6 + get-stream: 6.0.1 + human-signals: 2.1.0 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + + exit@0.1.2: {} + + expect@29.7.0: + dependencies: + '@jest/expect-utils': 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + + fast-json-stable-stringify@2.1.0: {} + + fast-safe-stringify@2.1.1: {} + + fb-watchman@2.0.2: + dependencies: + bser: 2.1.1 + + filelist@1.0.4: + dependencies: + minimatch: 5.1.6 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-root@1.1.0: {} + + find-up@4.1.0: + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + gensync@1.0.0-beta.2: {} + + get-caller-file@2.0.5: {} + + get-package-type@0.1.0: {} + + get-stream@6.0.1: {} + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + + globals@11.12.0: {} + + graceful-fs@4.2.11: {} + + has-flag@4.0.0: {} + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hoist-non-react-statics@3.3.2: + dependencies: + react-is: 16.13.1 + + html-entities@2.6.0: {} + + html-escaper@2.0.2: {} + + human-signals@2.1.0: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + import-local@3.2.0: + dependencies: + pkg-dir: 4.2.0 + resolve-cwd: 3.0.0 + + imurmurhash@0.1.4: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + is-arrayish@0.2.1: {} + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-fullwidth-code-point@3.0.0: {} + + is-generator-fn@2.1.0: {} + + is-number@7.0.0: {} + + is-stream@2.0.1: {} + + isexe@2.0.0: {} + + istanbul-lib-coverage@3.2.2: {} + + istanbul-lib-instrument@5.2.1: + dependencies: + '@babel/core': 7.27.4 + '@babel/parser': 7.27.5 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.2 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + istanbul-lib-instrument@6.0.3: + dependencies: + '@babel/core': 7.27.4 + '@babel/parser': 7.27.5 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.2 + semver: 7.7.2 + transitivePeerDependencies: + - supports-color + + istanbul-lib-report@3.0.1: + dependencies: + istanbul-lib-coverage: 3.2.2 + make-dir: 4.0.0 + supports-color: 7.2.0 + + istanbul-lib-source-maps@4.0.1: + dependencies: + debug: 4.4.1 + istanbul-lib-coverage: 3.2.2 + source-map: 0.6.1 + transitivePeerDependencies: + - supports-color + + istanbul-reports@3.1.7: + dependencies: + html-escaper: 2.0.2 + istanbul-lib-report: 3.0.1 + + jake@10.9.2: + dependencies: + async: 3.2.6 + chalk: 4.1.2 + filelist: 1.0.4 + minimatch: 3.1.2 + + jest-changed-files@29.7.0: + dependencies: + execa: 5.1.1 + jest-util: 29.7.0 + p-limit: 3.1.0 + + jest-circus@29.7.0(babel-plugin-macros@3.1.0): + dependencies: + '@jest/environment': 29.7.0 + '@jest/expect': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + chalk: 4.1.2 + co: 4.6.0 + dedent: 1.6.0(babel-plugin-macros@3.1.0) + is-generator-fn: 2.1.0 + jest-each: 29.7.0 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + p-limit: 3.1.0 + pretty-format: 29.7.0 + pure-rand: 6.1.0 + slash: 3.0.0 + stack-utils: 2.0.6 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + + jest-cli@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0): + dependencies: + '@jest/core': 29.7.0(babel-plugin-macros@3.1.0) + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 + chalk: 4.1.2 + create-jest: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + exit: 0.1.2 + import-local: 3.2.0 + jest-config: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + jest-util: 29.7.0 + jest-validate: 29.7.0 + yargs: 17.7.2 + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + jest-config@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0): + dependencies: + '@babel/core': 7.27.4 + '@jest/test-sequencer': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.27.4) + chalk: 4.1.2 + ci-info: 3.9.0 + deepmerge: 4.3.1 + glob: 7.2.3 + graceful-fs: 4.2.11 + jest-circus: 29.7.0(babel-plugin-macros@3.1.0) + jest-environment-node: 29.7.0 + jest-get-type: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-runner: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + micromatch: 4.0.8 + parse-json: 5.2.0 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-json-comments: 3.1.1 + optionalDependencies: + '@types/node': 22.15.30 + transitivePeerDependencies: + - babel-plugin-macros + - supports-color + + jest-diff@29.7.0: + dependencies: + chalk: 4.1.2 + diff-sequences: 29.6.3 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + + jest-docblock@29.7.0: + dependencies: + detect-newline: 3.1.0 + + jest-each@29.7.0: + dependencies: + '@jest/types': 29.6.3 + chalk: 4.1.2 + jest-get-type: 29.6.3 + jest-util: 29.7.0 + pretty-format: 29.7.0 + + 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': 22.15.30 + jest-mock: 29.7.0 + jest-util: 29.7.0 + + jest-get-type@29.6.3: {} + + jest-haste-map@29.7.0: + dependencies: + '@jest/types': 29.6.3 + '@types/graceful-fs': 4.1.9 + '@types/node': 22.15.30 + anymatch: 3.1.3 + fb-watchman: 2.0.2 + graceful-fs: 4.2.11 + jest-regex-util: 29.6.3 + jest-util: 29.7.0 + jest-worker: 29.7.0 + micromatch: 4.0.8 + walker: 1.0.8 + optionalDependencies: + fsevents: 2.3.3 + + jest-leak-detector@29.7.0: + dependencies: + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + + jest-matcher-utils@29.7.0: + dependencies: + chalk: 4.1.2 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + + jest-message-util@29.7.0: + dependencies: + '@babel/code-frame': 7.27.1 + '@jest/types': 29.6.3 + '@types/stack-utils': 2.0.3 + chalk: 4.1.2 + graceful-fs: 4.2.11 + micromatch: 4.0.8 + 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': 22.15.30 + jest-util: 29.7.0 + + jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): + optionalDependencies: + jest-resolve: 29.7.0 + + jest-regex-util@29.6.3: {} + + jest-resolve-dependencies@29.7.0: + dependencies: + jest-regex-util: 29.6.3 + jest-snapshot: 29.7.0 + transitivePeerDependencies: + - supports-color + + jest-resolve@29.7.0: + dependencies: + chalk: 4.1.2 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0) + jest-util: 29.7.0 + jest-validate: 29.7.0 + resolve: 1.22.10 + resolve.exports: 2.0.3 + slash: 3.0.0 + + jest-runner@29.7.0: + dependencies: + '@jest/console': 29.7.0 + '@jest/environment': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + chalk: 4.1.2 + emittery: 0.13.1 + graceful-fs: 4.2.11 + jest-docblock: 29.7.0 + jest-environment-node: 29.7.0 + jest-haste-map: 29.7.0 + jest-leak-detector: 29.7.0 + jest-message-util: 29.7.0 + jest-resolve: 29.7.0 + jest-runtime: 29.7.0 + jest-util: 29.7.0 + jest-watcher: 29.7.0 + jest-worker: 29.7.0 + p-limit: 3.1.0 + source-map-support: 0.5.13 + transitivePeerDependencies: + - supports-color + + jest-runtime@29.7.0: + dependencies: + '@jest/environment': 29.7.0 + '@jest/fake-timers': 29.7.0 + '@jest/globals': 29.7.0 + '@jest/source-map': 29.6.3 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + chalk: 4.1.2 + cjs-module-lexer: 1.4.3 + collect-v8-coverage: 1.0.2 + glob: 7.2.3 + graceful-fs: 4.2.11 + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-mock: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + slash: 3.0.0 + strip-bom: 4.0.0 + transitivePeerDependencies: + - supports-color + + jest-snapshot@29.7.0: + dependencies: + '@babel/core': 7.27.4 + '@babel/generator': 7.27.5 + '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.27.4) + '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.27.4) + '@babel/types': 7.27.6 + '@jest/expect-utils': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + babel-preset-current-node-syntax: 1.1.0(@babel/core@7.27.4) + chalk: 4.1.2 + expect: 29.7.0 + graceful-fs: 4.2.11 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + natural-compare: 1.4.0 + pretty-format: 29.7.0 + semver: 7.7.2 + transitivePeerDependencies: + - supports-color + + jest-util@29.7.0: + dependencies: + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + 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-watcher@29.7.0: + dependencies: + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 22.15.30 + ansi-escapes: 4.3.2 + chalk: 4.1.2 + emittery: 0.13.1 + jest-util: 29.7.0 + string-length: 4.0.2 + + jest-worker@29.7.0: + dependencies: + '@types/node': 22.15.30 + jest-util: 29.7.0 + merge-stream: 2.0.0 + supports-color: 8.1.1 + + jest@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0): + dependencies: + '@jest/core': 29.7.0(babel-plugin-macros@3.1.0) + '@jest/types': 29.6.3 + import-local: 3.2.0 + jest-cli: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + jiti@2.4.2: {} + + js-tokens@4.0.0: {} + + js-yaml@3.14.1: + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + + jsesc@3.1.0: {} + + json-parse-even-better-errors@2.3.1: {} + + json5@2.2.3: {} + + kleur@3.0.3: {} + + leven@3.1.0: {} + + lines-and-columns@1.2.4: {} + + locate-path@5.0.0: + dependencies: + p-locate: 4.1.0 + + lodash.memoize@4.1.2: {} + + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + + make-dir@4.0.0: + dependencies: + semver: 7.7.2 + + make-error@1.3.6: {} + + makeerror@1.0.12: + dependencies: + tmpl: 1.0.5 + + merge-stream@2.0.0: {} + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mimic-fn@2.1.0: {} + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.11 + + minimatch@5.1.6: + dependencies: + brace-expansion: 2.0.1 + + ms@2.1.3: {} + + natural-compare@1.4.0: {} + + next-themes@0.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0): + dependencies: + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + + node-int64@0.4.0: {} + + node-releases@2.0.19: {} + + normalize-path@3.0.0: {} + + npm-run-path@4.0.1: + dependencies: + path-key: 3.1.1 + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + onetime@5.1.2: + dependencies: + mimic-fn: 2.1.0 + + p-limit@2.3.0: + dependencies: + p-try: 2.2.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@4.1.0: + dependencies: + p-limit: 2.3.0 + + p-try@2.2.0: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-json@5.2.0: + dependencies: + '@babel/code-frame': 7.27.1 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + + path-exists@4.0.0: {} + + path-is-absolute@1.0.1: {} + + path-key@3.1.1: {} + + path-parse@1.0.7: {} + + path-type@4.0.0: {} + + perfect-freehand@1.2.2: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + pirates@4.0.7: {} + + pkg-dir@4.2.0: + dependencies: + find-up: 4.1.0 + + pretty-format@29.7.0: + dependencies: + '@jest/schemas': 29.6.3 + ansi-styles: 5.2.0 + react-is: 18.3.1 + + prompts@2.4.2: + dependencies: + kleur: 3.0.3 + sisteransi: 1.0.5 + + proxy-compare@3.0.1: {} + + proxy-memoize@3.0.1: + dependencies: + proxy-compare: 3.0.1 + + pure-rand@6.1.0: {} + + react-chartjs-2@5.3.0(chart.js@4.4.9)(react@19.1.0): + dependencies: + chart.js: 4.4.9 + react: 19.1.0 + + react-dom@19.1.0(react@19.1.0): + dependencies: + react: 19.1.0 + scheduler: 0.26.0 + + react-hook-form@7.57.0(react@19.1.0): + dependencies: + react: 19.1.0 + + react-icons@5.5.0(react@19.1.0): + dependencies: + react: 19.1.0 + + react-is@16.13.1: {} + + react-is@18.3.1: {} + + react-refresh@0.17.0: {} + + react@19.1.0: {} + + require-directory@2.1.1: {} + + resolve-cwd@3.0.0: + dependencies: + resolve-from: 5.0.0 + + resolve-from@4.0.0: {} + + resolve-from@5.0.0: {} + + resolve.exports@2.0.3: {} + + resolve@1.22.10: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + scheduler@0.26.0: {} + + semver@6.3.1: {} + + semver@7.7.2: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + signal-exit@3.0.7: {} + + sisteransi@1.0.5: {} + + slash@3.0.0: {} + + source-map-support@0.5.13: + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + + source-map@0.5.7: {} + + source-map@0.6.1: {} + + sprintf-js@1.0.3: {} + + stack-utils@2.0.6: + dependencies: + escape-string-regexp: 2.0.0 + + stackframe@1.3.4: {} + + string-length@4.0.2: + dependencies: + char-regex: 1.0.2 + strip-ansi: 6.0.1 + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-bom@4.0.0: {} + + strip-final-newline@2.0.0: {} + + strip-json-comments@3.1.1: {} + + stylis@4.2.0: {} + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + test-exclude@6.0.0: + dependencies: + '@istanbuljs/schema': 0.1.3 + glob: 7.2.3 + minimatch: 3.1.2 + + tmpl@1.0.5: {} + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + ts-jest@29.3.4(@babel/core@7.27.4)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.27.4))(jest@29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0))(typescript@5.8.3): + dependencies: + bs-logger: 0.2.6 + ejs: 3.1.10 + fast-json-stable-stringify: 2.1.0 + jest: 29.7.0(@types/node@22.15.30)(babel-plugin-macros@3.1.0) + jest-util: 29.7.0 + json5: 2.2.3 + lodash.memoize: 4.1.2 + make-error: 1.3.6 + semver: 7.7.2 + type-fest: 4.41.0 + typescript: 5.8.3 + yargs-parser: 21.1.1 + optionalDependencies: + '@babel/core': 7.27.4 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.27.4) + + tslib@2.8.1: {} + + type-detect@4.0.8: {} + + type-fest@0.21.3: {} + + type-fest@4.41.0: {} + + typescript@5.8.3: {} + + undici-types@6.21.0: {} + + update-browserslist-db@1.1.3(browserslist@4.25.0): + dependencies: + browserslist: 4.25.0 + escalade: 3.2.0 + picocolors: 1.1.1 + + uqr@0.1.2: {} + + uuid@11.1.0: {} + + v8-to-istanbul@9.3.0: + dependencies: + '@jridgewell/trace-mapping': 0.3.25 + '@types/istanbul-lib-coverage': 2.0.6 + convert-source-map: 2.0.0 + + walker@1.0.8: + dependencies: + makeerror: 1.0.12 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrappy@1.0.2: {} + + write-file-atomic@4.0.2: + dependencies: + imurmurhash: 0.1.4 + signal-exit: 3.0.7 + + y18n@5.0.8: {} + + yallist@3.1.1: {} + + yaml@1.10.2: {} + + yargs-parser@21.1.1: {} + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + yocto-queue@0.1.0: {} diff --git "a/\320\2403212/zinchenko_408657/lab6/code/rsbuild.config.ts" "b/\320\2403212/zinchenko_408657/lab6/code/rsbuild.config.ts" new file mode 100644 index 0000000..e19125a --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/rsbuild.config.ts" @@ -0,0 +1,9 @@ +import { defineConfig } from '@rsbuild/core'; +import { pluginReact } from '@rsbuild/plugin-react'; + +export default defineConfig({ + plugins: [pluginReact()], + html: { + title: 'Лаб. 6' + } +}); diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/App.tsx" "b/\320\2403212/zinchenko_408657/lab6/code/src/App.tsx" new file mode 100644 index 0000000..6383114 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/App.tsx" @@ -0,0 +1,187 @@ +import { + Box, + Card, + Heading, + HStack, + Stack, + VStack, + Text, + Checkbox, + ChakraProvider, + defaultSystem, + Button, +} from "@chakra-ui/react"; +import { useState } from "react"; +import Chart from "./components/chart"; +import { ODESelector } from "./components/ODESelector"; +import { ResultsTable } from "./components/ResultsTable"; +import { ODEProblem, eulerMethod, improvedEulerMethod, milneMethod, getExactSolution, predefinedODEs, Point } from "./math/ode"; + +const App = () => { + const [selectedODE, setSelectedODE] = useState(Object.keys(predefinedODEs)[0]); + const [odePoints, setODEPoints] = useState<{ + exact: Point[]; + euler: Point[]; + improvedEuler: Point[]; + milne: Point[]; + }>({ + exact: [], + euler: [], + improvedEuler: [], + milne: [], + }); + + const [visibility, setVisibility] = useState({ + exact: true, + euler: true, + improvedEuler: true, + milne: true, + }); + + const handleODECalculate = (method: 'euler' | 'improvedEuler' | 'milne', problem: ODEProblem) => { + let points: Point[] = []; + + if (odePoints.exact.length === 0 && predefinedODEs[selectedODE].hasExactSolution) { + const exactPoints = getExactSolution( + predefinedODEs[selectedODE].exactSolution!, + problem.x0, + problem.y0, + problem.xEnd, + 200 + ); + setODEPoints(prev => ({ ...prev, exact: exactPoints })); + } + + switch (method) { + case 'euler': + points = eulerMethod(problem); + setODEPoints(prev => ({ ...prev, euler: points })); + break; + case 'improvedEuler': + points = improvedEulerMethod(problem); + setODEPoints(prev => ({ ...prev, improvedEuler: points })); + break; + case 'milne': + points = milneMethod(problem); + setODEPoints(prev => ({ ...prev, milne: points })); + break; + } + }; + + const clearGraphs = () => { + setODEPoints({ + exact: [], + euler: [], + improvedEuler: [], + milne: [], + }); + }; + + const handleODEChange = (newODE: string) => { + setSelectedODE(newODE); + clearGraphs(); + }; + + const toggleVisibility = (key: keyof typeof visibility) => { + setVisibility(prev => ({ + ...prev, + [key]: !prev[key] + })); + }; + + return ( + + + + + + Решение ОДУ + + + + + + + + + + + Отображение графиков + + {predefinedODEs[selectedODE].hasExactSolution && ( + + Точное решение + + toggleVisibility('exact')} + /> + + + )} + + Метод Эйлера + + toggleVisibility('euler')} + /> + + + + Улучшенный метод Эйлера + + toggleVisibility('improvedEuler')} + /> + + + + Метод Милна + + toggleVisibility('milne')} + /> + + + + + + + + + + + + + + ); +}; + +export default App; diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/components/ODESelector.tsx" "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ODESelector.tsx" new file mode 100644 index 0000000..9d3fbab --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ODESelector.tsx" @@ -0,0 +1,148 @@ +import { + Box, + Button, + HStack, + Stack, + Text, + VStack, +} from "@chakra-ui/react"; +import { useState, ChangeEvent } from "react"; +import { ODEProblem, predefinedODEs } from "../math/ode"; + +interface ODESelectorProps { + onCalculate: (method: 'euler' | 'improvedEuler' | 'milne', problem: ODEProblem) => void; + onClear: () => void; + onODEChange: (newODE: string) => void; + selectedODE: string; +} + +export const ODESelector = ({ onCalculate, onODEChange, selectedODE }: ODESelectorProps) => { + const [x0, setX0] = useState(0); + const [y0, setY0] = useState(1); + const [xEnd, setXEnd] = useState(2); + const [h, setH] = useState(0.1); + const [epsilon, setEpsilon] = useState(0.01); + + const handleCalculate = (method: 'euler' | 'improvedEuler' | 'milne') => { + const problem: ODEProblem = { + f: predefinedODEs[selectedODE].f, + x0, + y0, + xEnd, + h, + epsilon, + }; + onCalculate(method, problem); + }; + + const handleODEChange = (e: ChangeEvent) => { + onODEChange(e.target.value); + }; + + return ( + + + Выберите ОДУ + + + + + + x₀ + ) => setX0(Number(e.target.value))} + step={0.1} + style={{ width: '100%', padding: '0.5rem' }} + /> + + + + y₀ + ) => setY0(Number(e.target.value))} + step={0.1} + style={{ width: '100%', padding: '0.5rem' }} + /> + + + + + Конец интервала + ) => setXEnd(Number(e.target.value))} + step={0.1} + min={x0} + style={{ width: '100%', padding: '0.5rem' }} + /> + + + + + Шаг h + ) => setH(Number(e.target.value))} + step={0.01} + min={0.0001} + max={1} + style={{ width: '100%', padding: '0.5rem' }} + /> + + + + Погрешность ε + ) => setEpsilon(Number(e.target.value))} + step={0.0001} + min={0.0001} + max={0.1} + style={{ width: '100%', padding: '0.5rem' }} + /> + + + + + + + + + + ); +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/components/ResultsTable.tsx" "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ResultsTable.tsx" new file mode 100644 index 0000000..1ae70ce --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ResultsTable.tsx" @@ -0,0 +1,74 @@ +import { + Table, + TableCaption, + Box, + Text +} from "@chakra-ui/react"; +import { Point } from "chart.js"; + +interface ResultsTableProps { + exactPoints: Point[]; + eulerPoints: Point[]; + improvedEulerPoints: Point[]; + milnePoints: Point[]; + hasExactSolution: boolean; +} + +export const ResultsTable = ({ + exactPoints, + eulerPoints, + improvedEulerPoints, + milnePoints, + hasExactSolution +}: ResultsTableProps) => { + const allX = new Set([ + ...(hasExactSolution ? exactPoints.map(p => p.x) : []), + ...eulerPoints.map(p => p.x), + ...improvedEulerPoints.map(p => p.x), + ...milnePoints.map(p => p.x) + ]); + const sortedX = Array.from(allX).sort((a, b) => a - b); + + const findY = (points: Point[], x: number): string => { + const point = points.find(p => Math.abs(p.x - x) < 1e-10); + return point ? point.y.toFixed(6) : "—"; + }; + + if (sortedX.length === 0) { + return ( + + Нет данных для отображения + + ); + } + + return ( + + + Таблица результатов + + + + + x + {hasExactSolution && Точное решение} + Метод Эйлера + Улучшенный метод Эйлера + Метод Милна + + + + {sortedX.map((x) => ( + + {x.toFixed(6)} + {hasExactSolution && {findY(exactPoints, x)}} + {findY(eulerPoints, x)} + {findY(improvedEulerPoints, x)} + {findY(milnePoints, x)} + + ))} + + + + ); +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/components/chart.tsx" "b/\320\2403212/zinchenko_408657/lab6/code/src/components/chart.tsx" new file mode 100644 index 0000000..24cee7f --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/components/chart.tsx" @@ -0,0 +1,117 @@ +import { Box } from "@chakra-ui/react"; +import { + Chart as ChartJS, + CategoryScale, + LinearScale, + PointElement, + LineElement, + Title, + Tooltip, + Legend, +} from 'chart.js'; +import { Line } from 'react-chartjs-2'; +import { Point } from "../math/ode"; + +ChartJS.register( + CategoryScale, + LinearScale, + PointElement, + LineElement, + Title, + Tooltip, + Legend +); + +type Visibility = { + exact: boolean; + euler: boolean; + improvedEuler: boolean; + milne: boolean; +}; + +interface ChartProps { + exactPoints: Point[]; + eulerPoints: Point[]; + improvedEulerPoints: Point[]; + milnePoints: Point[]; + visibility: Visibility; + hasExactSolution: boolean; +} + +const Chart: React.FC = ({ + exactPoints, + eulerPoints, + improvedEulerPoints, + milnePoints, + visibility, + hasExactSolution, +}) => { + const datasets = [ + ...(hasExactSolution ? [{ + label: 'Точное решение', + data: exactPoints.map(p => ({ x: p.x, y: p.y })), + borderColor: 'rgb(0, 0, 0)', + backgroundColor: 'rgba(0, 0, 0, 0.5)', + borderWidth: 2, + hidden: !visibility.exact, + pointRadius: 0, + pointHoverRadius: 0, + tension: 0.4, + }] : []), + { + label: 'Метод Эйлера', + data: eulerPoints.map(p => ({ x: p.x, y: p.y })), + borderColor: 'rgb(255, 99, 132)', + backgroundColor: 'rgba(255, 99, 132, 0.5)', + hidden: !visibility.euler, + }, + { + label: 'Улучшенный метод Эйлера', + data: improvedEulerPoints.map(p => ({ x: p.x, y: p.y })), + borderColor: 'rgb(53, 162, 235)', + backgroundColor: 'rgba(53, 162, 235, 0.5)', + hidden: !visibility.improvedEuler, + }, + { + label: 'Метод Милна', + data: milnePoints.map(p => ({ x: p.x, y: p.y })), + borderColor: 'rgb(75, 192, 192)', + backgroundColor: 'rgba(75, 192, 192, 0.5)', + hidden: !visibility.milne, + }, + ]; + + const options = { + responsive: true, + interaction: { + mode: 'index' as const, + intersect: false, + }, + scales: { + x: { + type: 'linear' as const, + display: true, + title: { + display: true, + text: 'x' + } + }, + y: { + type: 'linear' as const, + display: true, + title: { + display: true, + text: 'y' + } + } + }, + }; + + return ( + + + + ); +}; + +export default Chart; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/color-mode.tsx" "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/color-mode.tsx" new file mode 100644 index 0000000..f93feab --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/color-mode.tsx" @@ -0,0 +1,107 @@ +"use client" + +import type { IconButtonProps, SpanProps } from "@chakra-ui/react" +import { ClientOnly, IconButton, Skeleton, Span } from "@chakra-ui/react" +import { ThemeProvider, useTheme } from "next-themes" +import type { ThemeProviderProps } from "next-themes" +import * as React from "react" +import { LuMoon, LuSun } from "react-icons/lu" + +export interface ColorModeProviderProps extends ThemeProviderProps {} + +export function ColorModeProvider(props: ColorModeProviderProps) { + return ( + + ) +} + +export type ColorMode = "light" | "dark" + +export interface UseColorModeReturn { + colorMode: ColorMode + setColorMode: (colorMode: ColorMode) => void + toggleColorMode: () => void +} + +export function useColorMode(): UseColorModeReturn { + const { resolvedTheme, setTheme } = useTheme() + const toggleColorMode = () => { + setTheme(resolvedTheme === "dark" ? "light" : "dark") + } + return { + colorMode: resolvedTheme as ColorMode, + setColorMode: setTheme, + toggleColorMode, + } +} + +export function useColorModeValue(light: T, dark: T) { + const { colorMode } = useColorMode() + return colorMode === "dark" ? dark : light +} + +export function ColorModeIcon() { + const { colorMode } = useColorMode() + return colorMode === "dark" ? : +} + +interface ColorModeButtonProps extends Omit {} + +export const ColorModeButton = React.forwardRef< + HTMLButtonElement, + ColorModeButtonProps +>(function ColorModeButton(props, ref) { + const { toggleColorMode } = useColorMode() + return ( + }> + + + + + ) +}) + +export const LightMode = React.forwardRef( + function LightMode(props, ref) { + return ( + + ) + }, +) + +export const DarkMode = React.forwardRef( + function DarkMode(props, ref) { + return ( + + ) + }, +) diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/provider.tsx" "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/provider.tsx" new file mode 100644 index 0000000..fd0331b --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/provider.tsx" @@ -0,0 +1,15 @@ +"use client" + +import { ChakraProvider, defaultSystem } from "@chakra-ui/react" +import { + ColorModeProvider, + type ColorModeProviderProps, +} from "./color-mode" + +export function Provider(props: ColorModeProviderProps) { + return ( + + + + ) +} diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/toaster.tsx" "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/toaster.tsx" new file mode 100644 index 0000000..df6c2c3 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/toaster.tsx" @@ -0,0 +1,43 @@ +"use client" + +import { + Toaster as ChakraToaster, + Portal, + Spinner, + Stack, + Toast, + createToaster, +} from "@chakra-ui/react" + +export const toaster = createToaster({ + placement: "bottom-end", + pauseOnPageIdle: true, +}) + +export const Toaster = () => { + return ( + + + {(toast) => ( + + {toast.type === "loading" ? ( + + ) : ( + + )} + + {toast.title && {toast.title}} + {toast.description && ( + {toast.description} + )} + + {toast.action && ( + {toast.action.label} + )} + {toast.meta?.closable && } + + )} + + + ) +} diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/tooltip.tsx" "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/tooltip.tsx" new file mode 100644 index 0000000..43a8a6c --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/components/ui/tooltip.tsx" @@ -0,0 +1,46 @@ +import { Tooltip as ChakraTooltip, Portal } from "@chakra-ui/react" +import * as React from "react" + +export interface TooltipProps extends ChakraTooltip.RootProps { + showArrow?: boolean + portalled?: boolean + portalRef?: React.RefObject + content: React.ReactNode + contentProps?: ChakraTooltip.ContentProps + disabled?: boolean +} + +export const Tooltip = React.forwardRef( + function Tooltip(props, ref) { + const { + showArrow, + children, + disabled, + portalled = true, + content, + contentProps, + portalRef, + ...rest + } = props + + if (disabled) return children + + return ( + + {children} + + + + {showArrow && ( + + + + )} + {content} + + + + + ) + }, +) diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/env.d.ts" "b/\320\2403212/zinchenko_408657/lab6/code/src/env.d.ts" new file mode 100644 index 0000000..b0ac762 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/env.d.ts" @@ -0,0 +1 @@ +/// diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/index.tsx" "b/\320\2403212/zinchenko_408657/lab6/code/src/index.tsx" new file mode 100644 index 0000000..55f29bf --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/index.tsx" @@ -0,0 +1,13 @@ +import React from 'react'; +import ReactDOM from 'react-dom/client'; +import App from './App'; + +const rootEl = document.getElementById('root'); +if (rootEl) { + const root = ReactDOM.createRoot(rootEl); + root.render( + + + , + ); +} diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/math/ode.ts" "b/\320\2403212/zinchenko_408657/lab6/code/src/math/ode.ts" new file mode 100644 index 0000000..1990cdc --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/math/ode.ts" @@ -0,0 +1,224 @@ +export interface Point { + x: number; + y: number; +} + +export type ODEFunction = (x: number, y: number) => number; +export type ExactSolutionFunction = (x: number, C: number) => number; + +export interface ODEProblem { + f: ODEFunction; + x0: number; + y0: number; + xEnd: number; + h: number; + epsilon: number; +} + +export const getExactSolution = ( + exactSolution: ExactSolutionFunction, + x0: number, + y0: number, + xEnd: number, + pointsCount: number +): Point[] => { + const C = findIntegrationConstant(exactSolution, x0, y0); + + const points: Point[] = []; + const step = (xEnd - x0) / (pointsCount - 1); + + for (let i = 0; i < pointsCount; i++) { + const x = x0 + i * step; + points.push({ + x, + y: exactSolution(x, C) + }); + } + + return points; +}; + +const findIntegrationConstant = ( + exactSolution: ExactSolutionFunction, + x0: number, + y0: number +): number => { + switch (exactSolution) { + // y' = x + y: y = -x - 1 + Ce^x + case predefinedODEs.linear.exactSolution: + return (y0 + x0 + 1) / Math.exp(x0); + + // y' = y: y = Ce^x + case predefinedODEs.exponential.exactSolution: + return y0 / Math.exp(x0); + + // y' = x/y: y = ±√(x² + C) + case predefinedODEs.separable.exactSolution: + return y0 * y0 - x0 * x0; + + // y' = 3 + 5x - (0.5y)/(x+2): y = 2x^2 + 10/3x -4/3 + C/sqrt(x+2) + case predefinedODEs.complex.exactSolution: + return (y0 - (2 * x0 * x0 + (10/3) * x0 - 4/3)) * Math.sqrt(x0 + 2); + + default: + return 0; + } +} + +export const eulerMethod = ({ f, x0, y0, xEnd, h, epsilon }: ODEProblem): Point[] => { + const points: Point[] = [{ x: x0, y: y0 }]; + let x = x0; + let y = y0; + let currentH = h; + + while (x < xEnd) { + const dy = f(x, y); + const xNext = Math.min(x + currentH, xEnd); + const yNext = y + currentH * dy; + + const halfH = currentH / 2; + let yHalf = y; + for (let i = 0; i < 2; i++) { + const xHalf = x + i * halfH; + const dyHalf = f(xHalf, yHalf); + yHalf += halfH * dyHalf; + } + + const error = Math.abs(yNext - yHalf) / (Math.pow(2, 1) - 1); + + if (error > epsilon && currentH > 0.0001) { + currentH = currentH / 2; + continue; + } + + x = xNext; + y = yNext; + points.push({ x, y }); + } + + return points; +}; + +export const improvedEulerMethod = ({ f, x0, y0, xEnd, h, epsilon }: ODEProblem): Point[] => { + const points: Point[] = [{ x: x0, y: y0 }]; + let x = x0; + let y = y0; + let currentH = h; + + while (x < xEnd) { + const k1 = f(x, y); + const xNext = Math.min(x + currentH, xEnd); + const yPred = y + currentH * k1; + const k2 = f(xNext, yPred); + const yNext = y + (currentH / 2) * (k1 + k2); + + const halfH = currentH / 2; + let yHalf = y; + for (let i = 0; i < 2; i++) { + const xHalf = x + i * halfH; + const k1Half = f(xHalf, yHalf); + const yPredHalf = yHalf + halfH * k1Half; + const k2Half = f(xHalf + halfH, yPredHalf); + yHalf += (halfH / 2) * (k1Half + k2Half); + } + + const error = Math.abs(yNext - yHalf) / (Math.pow(2, 2) - 1); + + if (error > epsilon && currentH > 0.0001) { + currentH = currentH / 2; + continue; + } + + x = xNext; + y = yNext; + points.push({ x, y }); + } + + return points; +}; + +export const milneMethod = ({ f, x0, y0, xEnd, h, epsilon }: ODEProblem): Point[] => { + const calculateInitialPoints = (startX: number, startY: number, step: number): Point[] => { + const initialPoints = [{ x: startX, y: startY }]; + for (let i = 0; i < 3; i++) { + const x = initialPoints[i].x; + const y = initialPoints[i].y; + + const k1 = f(x, y); + const k2 = f(x + step/2, y + step*k1/2); + const k3 = f(x + step/2, y + step*k2/2); + const k4 = f(x + step, y + step*k3); + const yNext = y + (step/6) * (k1 + 2*k2 + 2*k3 + k4); + + initialPoints.push({ x: x + step, y: yNext }); + } + return initialPoints; + }; + + let currentH = h; + let points = calculateInitialPoints(x0, y0, currentH); + + let x = x0 + 3*currentH; + + while (x < xEnd) { + const xNext = Math.min(x + currentH, xEnd); + + const yPred = points[points.length-4].y + (4*currentH/3) * ( + 2*f(points[points.length-3].x, points[points.length-3].y) - + f(points[points.length-2].x, points[points.length-2].y) + + 2*f(points[points.length-1].x, points[points.length-1].y) + ); + + const yCorr = points[points.length-2].y + (currentH/3) * ( + f(points[points.length-2].x, points[points.length-2].y) + + 4*f(points[points.length-1].x, points[points.length-1].y) + + f(xNext, yPred) + ); + + const error = Math.abs(yCorr - yPred); + + if (error > epsilon && currentH > 0.0001) { + currentH = currentH / 2; + points = calculateInitialPoints(x0, y0, currentH); + x = x0 + 3*currentH; + continue; + } + + points.push({ x: xNext, y: yCorr }); + x = xNext; + } + + return points; +}; + +export const predefinedODEs: Record = { + linear: { + name: "y' = x + y", + f: (x, y) => x + y, + exactSolution: (x, C) => -x - 1 + C * Math.exp(x), + hasExactSolution: true + }, + exponential: { + name: "y' = y", + f: (x, y) => y, + exactSolution: (x, C) => C * Math.exp(x), + hasExactSolution: true + }, + separable: { + name: "y' = x/y", + f: (x, y) => x/y, + exactSolution: (x, C) => Math.sqrt(x * x + C), + hasExactSolution: true + }, + complex: { + name: "y' = 3 + 5x - (0.5y)/(x+2)", + f: (x, y) => 3 + 5 * x - (0.5 * y) / (x + 2), + exactSolution: (x, C) => 2 * x * x + (10/3) * x - 4/3 + C / Math.sqrt(x + 2), + hasExactSolution: true + } +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab6/code/src/utils/validation.ts" "b/\320\2403212/zinchenko_408657/lab6/code/src/utils/validation.ts" new file mode 100644 index 0000000..366733e --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/src/utils/validation.ts" @@ -0,0 +1,12 @@ +export const isValidNumber = (value: string): boolean => { + // Разрешаем пустую строку, минус в начале, десятичную точку + const regex = /^-?\d*\.?\d*$/; + return regex.test(value); +}; + +export const parseNumber = (value: string): number | null => { + if (!isValidNumber(value)) return null; + if (value === '' || value === '-') return null; + const num = Number(value); + return isNaN(num) ? null : num; +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab6/code/tsconfig.json" "b/\320\2403212/zinchenko_408657/lab6/code/tsconfig.json" new file mode 100644 index 0000000..e53d1e5 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab6/code/tsconfig.json" @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "lib": ["DOM", "ES2020"], + "jsx": "react-jsx", + "target": "ES2020", + "noEmit": true, + "skipLibCheck": true, + "useDefineForClassFields": true, + + /* modules */ + "module": "ESNext", + "isolatedModules": true, + "resolveJsonModule": true, + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + + /* type checking */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true + }, + "include": ["src"] +} diff --git "a/\320\2403212/zinchenko_408657/lab6/report.pdf" "b/\320\2403212/zinchenko_408657/lab6/report.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..5966790c07e41f40ca4242178f98b1c26dc9ab2e GIT binary patch literal 185228 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

Z!KTYe0A6+0hU6yPE)K*hz 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

ZLY{@qhE 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

`Iaq8dR#u?idxj}a%w@ypJ zN|U&saU1+P#8rL}cByfsnl$w=RV=U+jg=1T-GCMQt)yk=k4+wKWlcZgj|tn{BSN*( zO+(KXdY_sd#I0?wt#9v!M3rCv-dUF4Syu)=2QPC2D`DlHD;U?aw&Ucn+`8L)JaZ1i@8@ORC}vNd zVX}@#HkkG!tdYfITs)IM{e+cMx4#Y#qN_@FK3(SP_82eQWnR!-p-`?ZU7e3hP*#l%vUOG`VKG6E8t#9*7hcf^*5H>0)^6SElQ7LWO@Rgte0A}r1^3=sB`)=wJ6!G)d?oK8 zM0Tfk!3}Y>r`hsO1@D81v*WXlN<01NnmjWJ3nuJb9_D1?ThZQ~s(*X&-__=TQO$ma z(F3{Z^1k(XYEMIjg=y*(9(j2ftWb!CkYpa%kX;w!C}|$048Me%?ehougo=#_WMIdY z!^9NR!N(^xl0pR69}eDHnOyb`gAU7jdP#u#wbn3c<6NE#qJ9A+oM=@jZ^4>8KCBaPOB}+1`ejrw|e{k z%>n%3NLnRM{?c-h7+Ds*6=&1~=iu9(JKkxg^ETzU!OSH#rI10=YfAb+GWQh`{?$7%okl5R)2^a{fo=XtRx zqU)1m@>?61QVO@9db*)F@v8!@`rs{#yX|>{r{Z`YK~Tvh+J4FE^`bMQ3^BsPk!D7N zX{iHYgU;9M3Hl(wF(j0P*=y>M*&5iX!daM7|4HlwD^|Y4pc`H-4#htV!WJ8cuX6_^^6E z;Yxd7rg4kLvs*F4^)x~!Tws@Zx-Y-3r0aW9iEue2m~Z|%RQPuAC4H-T7(Qu@qM_-% zVn1iYh2m0{!!4LWD=8M<0!`fSDlAvhMiIdpbD@u9?v~t=*A{Urqkmt}Hrir+OQZfi z7?t7Gw>-(nyN`qn6=mq}P)c)@y6#ec+qAaTo5<)ztIc#gpmUwp`V{Utg`SPIm>VEm zsagZvtg_kAj<4D_%B<&ghq*UAn>hw(@{6ZG9@YW>vQcQYkT|+EmY^VoXu4V}i_(l` ziON)1rEVU_-~**zS-7$R^+HUHI8o&cdiKqgiJ9&Q^x;FS(a(PviBqH-VQQcu&IENH zJo{R~h4$sckcW-o=Pe8Xuni!#Z@n2H8oFLQLwvJ}b)8f$r zerb1xaweJSv@2WkZ1MrU0VM2Rh|YoNjbUpH+14QGN`h7cI??#6%9F%mtcZ= zW*o72(Z`imW`>9#+zOt|2YA!LRB0^g-Tl>_sM@E2I}dxdhK3wtD-k8LeV>+BYH;}p z3`NQN26Kn}3*6pArkv=PU){1=gLm`L#CMB6hJ)mDuW!%eKaMN!fay)vbTHsBV$>&@ zFrO>$>@(nbj2|;H9o5c=B4{m!etG;k@_`h+&>51fY{G|Xs!rXIw=B8bxFZIv1syJe z-r2M7FA@4VCHlGX&Uv>=YUvP6X_vSQKWir;Yd)?dQADc|p|sIjLw1I3aC_ciPbG|2 zx|nyQdysfj{)A?)6(SzpQPkbxRR-ZG$TFsH0`hdsd{v8#gTAhp&_PKHe83I9*$iBT zB3c7NNQ5VgpFU&NHYZ19m$3W|+0HCb=9qLysBU?m(|e2__-z00YESR&|oiF8o3@ghzU`Ug|_xwrJRy_z*I$0f{|N-m3rP}Tqmi1zqXbi zy+0b&6fx=(Tt!08wQ7U+ww0L(dN`@w%31l&uXID45M`nRkn+jE6%OU`c3T&sd8jgl|0|dVfu%8llK=c7(+1dSxK_5sw}ZjV z`?tLsp;L1Z)u7>uWbJdohjZkYOkX-(8MujgVgavGkR`_+QSB{Z;T0`a4Z&j!TtWzY z0z&TUmB&sqliDt`Tcxa*1bhGSeFzNezIx|qQ9QD*sJr$EV!PgaNdzDv1!;qt((Zqe zNv5zhv)ZcEWh50h@lJ(;t)#0Pdox=p{_VNaU%Ao9s_5@fWJKO5K~c;z~H?O5n3W2$)+_Ja11%X5dE+sKlGZ zRActG$MZn&R(DdC%teB#=3^zOw~i4XE#R4lKqmbQ9pH7Rlfo-JBB`Rb0wqpJBgJf= zFsc2`JcN_rnWG|>CPZM~D>$8N^w5X8HfY03D%UWup0%k;XpL0U zu9WcxZWtndW24A^Xr@96dfa`o=3!V9qanI3#PXyX4+?Ui>;dm1_m;ZDYHa9X1M%c7{z{c`5099qs?Yy) zUZ=zAkwYJu@=8wNgNVPK1YYb-`H`N|JT=I;P$U%;Y&T< zn`xdB(uZ*BA-wy>T;pkR5^KnUYcF`UE5@Hri-GyZ*dYRX7(@zaZ758>&xZ*tfm&!r zs+zK|TI2lNj_9i*n{LP_n(;F;4w-&fJo0A*Dt+1>vCcR6faoCMyyP>ux}T;rAE)N; zvHe{Ss@3jR2mSf>@Y<7;s)fRbxw;t#eOZI<9};(V=9ujGbvm}rsvtOd&U%e{n#n_i zplf68&NfF?;H^E6CUkQyu+p#bC#DRg#2_O46CFuu!*8H?}tZI4IdY$H6=I|i%Hn=+2+6Ok>R+^wRxH%*jElES9Cz<$Y>C|+eLyu$WvAfM<91tfBF{G- zZol#*0ZW*zuY5GObxqRd5Ypwc&Y>G?GS(D%O}oGp59#JL>_Of-W!6~a+~yQIITGA; z@wlXHq$wg|$)a}`Up;J(*l3LG`|wcEySrqM8gWzJ#&seovPT}beeAXtt(3XGE9u2)jX!5GVr*k~Yg*#Jo z8>-qjTvAvx?HB^SMk-*Bcb6-Zp4B54g<_{!T(jA+qVkBOkaubB_e&(b5ZslpDIe@8 zS(6g@Ayx0(;PSeXE3v=|tDeV%_UWo%M6tlF*gtK?0>B1Dmi&|DeEbih#JA(om&DuT zkIl!y1%!*?fO<(k7>;ei=B&SfQV^VcR{4aM<||X8dJ}n@qg4av-3fa%vQ z;ABvmT2+hui|&Jp7C?paRP)=KM;`fM?&Hpv!=sZgEV|nAsm@!QG`7FjTV+F6c*V-r z4jlx(*T-mDp4BF*5O)%*weU>utRvh_(d~U}@Vl)--d;#rU3Leu%&v2VB!pUq%LCCC zrErqhMUOiqty#Pfv=;CKy|bL9Yu7fYWvu@0W~~9^ve7L!UsuCaHjsFUiy(=r(Q5-Q~9K!IyJVG3xHnF>D}g(W3Jwcjs-? z_vv`+T%L4;&RmqGvu5^-i`WR_sau+9`bGw=x zNP@vBgPF|84}Nr17*-oJ;MR#!uSipZ!<9}c>PxoI@p#+UImboGZJW>97jQZFxqz|D zZ%*Mh>>R$BgI)P%ZH@C!Z}e0zp6_&H=`e<>N7(Ob?^3N3a&;rOC##1CrpImg9D3O+ zuRlxa&;ezi@Opy5(#kN^&tbj|hq%{!~{#ZwYI>wqNLE`lL^I~5i>8;(Ggugxg!TXWiyG+gTy$_qrS2k2rD zcKRg1*KpikHHa|YoJtaQ@1rF7@k>|7ye_8Y+B(W`EP%Cno~sOE2HIUFCf0d}KSq4) zArl~PCYOsRmDw3n>(1&hwyg06Iz;4%+AK`2IZC??85;Lv8a&wA~x5 zgsgh=Hq^&J|4^RX8D{gO?`6~EL*dEr6VOG^BOldxi_FUO+~eV}hNo+^1pQ?{{FsY# zuP??3lT(@dT=6i-Y$w7ok1aL6SVzQMDW$dCKSZa=XBGCAz0c>WfSSRS7rPZGQ=>9@ z=G`?`9I@56n8&w+cmj9B>0>kCakv#=X)-d^u_`B8f`l^s$vDJbg>==u3o?Y6c_^a4yn7D z&?qWbLedB8xEgYgsd3nIo>*nk9Gvx*y)1gAs{DDlySOQg)^N>3Fqq z`RA~tcH6ZAH8jUs6u%cS8x%99agiFOx@n;hTfn+W_8?QLym~H=^4+3>CvB!5gxNl^ z?0eON7%5MBNot$)%or!pmKaZg;(3s zqiCE&Vk(1!fE?ynr&&rMTl0}XpYGKS*lzgC0-0f2U1_sRguroH zh7>jY(2j-r*dC*b3gj6;{igcNE$2obo8o5~nzxfm>l9(3R1L0L$)^!u_zC_MaQIxO_;6fex`|6X_ixdC)W25r(br_Qs;QPM1+wv?rYwRLr z`i4`VxRGNn9%_*@XO4H5BBk#JS)!`VDw!p2KYhv`f2oYf8|dnO^?-LrJ7E<$z|TPN z@(M>+)_NY|g1(_*>0!kO^X2nAd@O5Ze}wI4Y-@}?f_^lvZCJr7lozMNHyzG#*1XB;P^+?9I+gh2@xQuYQ2oh} z7)=vo(~OQ1WVFQ^8!Fxx53EpgjRp0cfDC5VQk(9f3vmWJh9# zaiYZ8@fa&ia8i^sxJ^J24!nv{!!z#$iCia2HMw>KKPINxp*o$3b!wa+bb2&^70;;8b~WfErsol z=9tm+ZnSCaYf=pX(zm*qTJlds8>^g9O%5x_oxAvKHjTRHXIY?TphMP?+^sw z=3knCf8mgjwrNn$oqJX|+AVbqY5lB&GP9*i&T6?d<&>9U9fm+*?Ofjo ziz#KT-_sH+s3=k4#Lgv;RwYPps8G#%=B#h4Var;Q3@-Er!GV*`*h9If`@#_$tL*v% z+Xs)C$^n>-jFM)7#`ZQQ<7WB(*nQ6R>~6_%XHHa*!(NR#53b4O0NY&o_DJUo|M;`B zZpX5zRB1y=X+&JU)FY24;IX$hl0==iNIJeP@hU#0gXwjM(&@eoYCD&aI#x(siI8@w z;hAH==jMUvVYiz8Bt|74V04_K_iojta8ezM!dRXJ@$8t0nG?^!ECkHLy}sw4LMRhx z$X)?Ci5bGurNDB3@JQ19M-8Cu$rI1uC3^lzQB@Hob3_{CEyIFJK`dW z4eGr0?fEm*WzQWAD&IpR7;|#TkP^Nt%s|qrDekLM7jwA!EOFno`36LfKJk`L_EL9; zqVa=PzW=B{%>9hrS>o#V$$2=ugl9tx?XIAx2k=0zqGYP^2Zgma`~Ky^`J3XdybH=} zs`Nl!Jt+Q&9eOH6Pu1-TI?jy93iqDU+qT8_t^8Q9@*A>TS>h$ z=7}pIaMQOb_I_w$Z}#Ugh?e>`D>fB%lVDKE7rbxe&CPcKWn zx@9H1tX@ZStba*-LFevETKMOtL3x?TTo#s=UbEKCb(0R`Hsxj>;q!QJ&bgXPgstWg zC4g^`E1#T5Xag9`f4x^Jc8?9pEw1uA+P!=u2mejm*Xt-g-A&tZsBAam|FHKRU`;n$ zpTUBPA~rxl0Tom_NK?8X2qGdK3@wy|k^oYrW1&b9Q3)NSNw0y>1XM&IbPzCvB0}g* zde2UR?|a|-?YH~w-Tm%<`|NXld<6ex{xfH0&iS3+IWwb-e1+oAN-%ZGl{5>h4t-6^ zI{%{?&{N$*&+)HkPUDb~vP={Y5hTZ;cVeYj#B2>#9~bh6<9nX`Jz8msRNshHOB46% z6~OTNT&)T`gX?`p6!fTD3wI=*w52UQov?G=s+Rvlq}ZT+yyrGTCuliyn+nHT6c?a1 zB-r=s(q|kxG9Q-`ShP8(jB88r)IzzzR?Rk;`;#1GarNb%#jz#NA26N8M;&p6fIb|A}E-YNRrZy{xKk#;yFnMWC}-k&Db;c`n?&M{7PICM53 zn{J|R)}U^|p@;sS{-I5K4r2?bOihZxk42^t5lixYL(N#c3$EP#Ee%?i4?WHpwK1|- z`l3l+b-EclEV0UgY00k+&K~fePe{Gw#+~?J;}PFDyydvknK==gBjuhg{*Md_i4H&2 zpVtyIxNv2QVTO4>;k@Z_<@C&)J^@mNNj7dAidNPc=L;?UwwK+cqi0Rq`rCV&MeT%I z0F7F5Nv+9;N9>!!m7c*>1M@8P8#z+0<=gEMHrR~tpKIp9qygM4`{sy)aQZFmPDVx3 zA}K2wu|(G{fC=4YJeszYz5czWwJfIi{2ytX6oP0E{kZdCc;~9aS10PzlH6fu6;9Nt z^BVW8a9~i__=!&bN@R$CpU&06W`5q3(Nv|I46%4o&-ywzc7vvl-W}trrcsC?)}HcH z=RK~ptc5|JxLarx9Fm>$81>7=P2e?e7!#~K2wEKHz#+PQ?8S~wBb~wu_eRIbqiK@q zH+VWYyVjbq{0Li1V|c7jf#iCS4qpP!het6@(e4a`Y8BeZgD*cHH1;Pc+*+RZKAM44 z84;^m{IFIgytozF#LUT65rbDG1=G(bByt9~AXC;kHzA8c<#LIUU{Q++;7pHCm=0Yimf{&8>VtN7+&CYGl3X&$p>Z>OAN`jlu`fM zT|vB^nAD$jI(x!W)VF;i&`*KXputk1-x?1XT2aYeS|560C`*ghEB=t{grEC`n~+Nn z`HYxFRx-3)xr$4q7;Cgj#^-dm7dfrn9$35&2W?guzrPW7rQ_VUg;+Mfm!CpDV;pv^&jrYwx^ttPL+FTBQYxGzr1r0mbvtDC3u;ce^1NUhFvw z?6bR$<>VHAeM5roEZtslYUB{;wdGd`uayqFQtRzoNPJB(MR zXR5{ylT16{j1sNbE4)`jn?;2jMjM*=DtSBvrmTVuhv+pgH2gh#_?GW2waDguR$eXs zV*%*7NuBuI!Ve#u;RK|FTiz*#wQw9pLNPLtsLSNpM3O7>*P;`$=kJPAd zdRoLQ+s9u%V_v9YWS-N`ws~TMr5xpDgb1d0lJN$?Y6L(Xmqx46FzvV{!wgHar6LiB zXoE$0XUn%DNREwkD^Z=H6%1Q7P`4e=k||GYw@i#ysb=f_rP;SK+HMlGBu4JU4p3*C zP6t4n3DqWug8aDZoSC4^%J>>FtV}*B<-8AB_s0eS2qGn}2^W z=Q?%7T!-f1?z=j#H}37pt`oNFFLME}FEbw>Mv(f7^3l3iye3oNaQ zunMAf#MlT{7(M$A?Rfd^P@Xd!s%2A>$w=Urmapt{)LZsU06|t^)EhlE0!V^l=b!dlHhp6;X3e z)uvCV?M*XQ6GZr6%3>O8w&s5U9hp0iq3kVZXRxf~vtzGzDT0I~zsuU<8+^J~1kqh1e^f#b= zUuAe63ZP>(@&adgf;bMnh9F3S^$aVjvccZh8Q`3Cn1&ljN`NWyDhO%37$0-p;_eDQ zSzF8#>uTW<-wk(mGw$;Y!?|z~DlK6;xd1vzvQ=^C;~2QjYZ^}zh)CC%9cwP@@;++! zhnUml>xS{oFXBkLgyd6D(v^7$N|m!=aHzqB@guUPzwYOiiJo66Uev^c*mGK(RK&e^ zx(3YfVMWX}>9nW{XCb~jvikJtze-eUu$^4Ls$QIewR0zY>hWe|kf%@=U zGpv|bM)NllJg+}73a=7_UTj;|z#*5Utk-MQekJO<=uO#Q8ZSvC?PEoM846$O67uO^ zm`~01d9xNwSrpL?U`%~f%h#&qVu!$9_w}Bo8q=v$#0yrUp4@a9ZyJ$Mv5}d~<*%q=IBzZfjVPUpt-vT#NvcK)W@0P&{Uw329al(-r{)bk)4$t$7LNBeSO&jP#1qn+UpwYC_I`!IIH%-=?ASj55qX_Uzy^ZSE^+bXDy1* zi0Q33H$E(DI#kMQJfM5I@+TX+Xsf93hS9bu!E=79NuclTSG+&E3p+Y8+NH7t%+W>y zb~<=z;QjCmgIyW%&_`GcT2dQoC-#GJg%GC2h_WgPd}eUjZ_RCX^Cpz;ySmhKyZ>hY(-8k#sXWXCA!jx3?9-I*%(o|rur@J`*zhZ zp6YA2pA~{kH}YL4xP#Ib&Ha~)Tl0$$OAqt3!DO|)9{OP=!n-4(X-WP)z(;72vE^#% zAs!6xLkF+xgk*=VSo>=H3xfpai)qJ|vBtEncgX3xURt%yJ)T(3(1Mnd1OjILJ?i3e zbx+HUMwxrXQ3nNsTwh1e25z#8T>ir;?X@ zt^HB%$8@qTKLH?OCc`QrG?K6mxrCSK&mA6;sm+Q{$sTRd7d zBP7;rA9LY%196~%l12^IsW7<2!ub7Z$GB=suj;kz81x|jp^5u$r()CJ(kh zyCz%`RHVrsbO`*;7HENEeeQ8EgZBH(@vNRtpJz&#-^qGkAnXIW!v>9C%?|G^i0x1+P1u0T{6D8+y?{>kDi4j zN(4*QPgYikWE&&*dbkDXt{v-9kr~QplFh%?_6qU<0fg<3m=8#hY2^!FJQ|Hut`?|i zz-fMRFbW@{uJ|tZ=u<>)obl<1{MNoA2iKtMaWiis*D~DunOJ7AIsH%|E?mj0aXN)u z+J*A2f{TR*V&cgnOIvHAs?dLn=flQ!rmVj}&;U{w9fZnFbZd0;RvI4!<1 zY&sJun&c!%pTLs&T824Pp;4zHGBV&X5wB&0GZyvS<#tVnpSy4A-Jf-*(r|Ciz@t$U zU&!CaFb2*j^OqE{NUX2EE$do4~ z-H&qBa~_7Q^1KB$5AQj`i`7r47olTk+@h*b1?fkH^`I%|tFkH{3fiFxOC%>zH>~WF zhI0T~m?fJvvYkr_UE}a?k#G2=mMss5&e$zyS;7Qw+Fw&uj~x==GuDegBWBzw&~Ol9 z$w;v*b^V9yG=t-rlZKf&WW?lZB?A5KdM8}yo~Zu-ghyO2jiVk{w}0nYRB_E;wv^BI zR4@19#a~{Wv~4yS<)}}r9=jDv9SARky?qCK>1)nBw&~g| zPE4x!hl377x^pZ*al`9##UGTPsQb`;SWM+PQip9Q>be;{ z?BC&HHPh+e$%>&-9BSdOjxtWj7x93dtYWCWjX^Qs&7{Q(>u`qL;#U+F`xnYeUcSq| z9Mpt4f2R9w{me!T(KYkyBv?sAPCE1*>~xGqT^l%>v%Rx(seyOyakqdS@c@o;|fqImH4tv|PSV(>8tnkK^`@E5k{o* zZOojd9*!(*r}k4$cff&r(sqL&AP?C;*LZc@VxXhoEoErG|Kj*_~@pqS5vCWFA0(4t)4UpT{SThH<1$W^VCGK)%m9v=QS^8i8P z8;=*fh&r) z*{pW^QMI3BVGcZkcou66u%Dzf3gi+=*y2b0pIBoHhFyZ##Drhhs1(9Cp3#c{Xy-y6 zSAoT)Z_fLrsXLst2+=>Q*P%6ITI7Y~i zsMNs#!uJt(@}%WuUjI7LCL~6$64uEK`s<^{6)<&tm6#M)EjOkh$qtlgi5(~qW;p8pvz-c3r9!E}TqAO6B{)PK4%I{U z7)m>BNd3SyHRYqwc*RnIY+DA12`8BokWEz?Q)~$EN9&4;$t4*(-ZgJSpB}jO0|-s$ z@?3j{;#m{@I{J|`D5KbmY5I*L-y=I0bg8}>u&S|=+*U4;C)Mq~@5(Q!d*DgNXW|q$ zVCac4Gl^IWf1+Qvgn7hYD_neEkj~ymh+uuVzd#WJK~wL&O;B!qT74;;_l69XiVMnN zn5ZC@6dvJr-=K2q&+3UeT?G(l+xhCHgX_AYRnr}H$lq;S&q#xzu3+b3xr9g)QvS_| z&iN_-H$9?~XS$oQ;(iL2MwcNF6lHDXKQ!nk*!M%)Z&jp#T`)V8sUh#4Io+XxuqD4a z29Z59`F}E-cy3+2`QO7M6ZL<8?)}rM@sAX&M389wo#L*4PTXm23S;&)q$RNhxBhD+ z`{k#eXT3I64z4(9*y_z#DQzj+Bqz`05p<(Y@Jndz zv*-)i{)cj%rS?IJ$qwpYrvI}ZNd+<-GUJi^>@XOW``~#to@Rq#@k>zy7nr$mdM{y^ zkiwX0QE2&5BHpT&JnNctY#$Xbov741E7cmNh)uo0gWs&Hj4X|l%A@}L8#nkWc}O&> z7cp_X(qGnPDUP-X>pou+2;5cNWf=_PSR*WaNJoe;)e}R;L?ObzF_Dh6Z{4p(i^@1D z==tUhzGT|5p#2G~c~cG$-!!sj-O~#8`7tXB^04g7W=nx0KIe%+-BE%;Fy<>CTXg2` zQ=kAZQ@25a&_%U^SPN|T4Ji;QNMQwvWp7%O6$^U-D5B8X&C=2t?rZtOQUsm@$I>D^ zQDqLU)@VHThHV{BHIY8Z6X3^`a@5krvX08P!c@vpTt!{hc463$25%8+T7%Qt3v zWO8Iaq)O>ec|0l6e|R=6r=uOub0p`!=>yb1|5c!j~5_CH{(bXc=QgP?|O$FIgW z-JbW5T3Myc!DIIh2XAS01KsnN5dkyV$kTJX_pqOfo7D_GUQF~XI)4P6Zph0LIj^c? zgb9QJaFhxE4UTZg;L&oRgITi|!}*2JBVu!Pq!(!q{baZo0)gGpvlwJ5Jv2JR5RKIvpNVGQ&5n(4Gw9^B?;Je0fL zL$tPDfBDzxt{?btG^6{YfZE9=B~g`qioF_ z5RN}`oIp68yaocRl$CNoM1pB!aY|(|9jE=k@TSC-I#}ai#rMY>h7}}Wk)>2AqkR=j z-2&meY#4Tdy9P}#6RbB27brS`E1&{6gH(xi)Umk+qosx{lJG-Zq-LNCB)xd+vxf2g z5<~TtJIF{(deI8V;;zHh(a;7cMvDCnycE7Ue=xlxEa~;Gg3Oq{sT-T^O*v%LHHM>L z0;wHiK!xMSfC23l@NXG^n(;N47woVQkWse@jNP6l*n=CMPBw0SmL@2-31m13L(5(p zf77jAnRG^o&xQEV0;^y?0AhLg8JgU2Yp{g}#a+5xaS_8?QxF!7a(c!ajrwJ_QLyG3 zhjM0jtgbFU2^1fNx($EX7J5RV(kq(zVhz|{ziCYInm5m(ksTZ|`eCtWNL7 ziHSP2b@n?6;#Cvlpf|^}HXmIzxbshh`nPn}&2ZGYE;Vs@ zpw7_4vx&dVY7ZCUaegu8Shtu95e~e-arU*{Q&&Kh>zC=WKPNWAm;BsJ^p2&Vq7E={ zkA^Kxl*9>-DcjXD>ge*x5P&0uO;=y+U-NiHKV8a#fWCBWa@IAnwLJha$$U+LO0)5! z+k@I2=9rFRYW)}QRj&cR)N>SJgu7*{wV2M7XE2!4jID6kAgrl-Ls^#21B}B&!8m^b z$p5r?@*fs#enh+xud?S7ok@co*`eTlNO0$WDrET&tMLzc768n#fHWPD!qbdvPpZ^S zydVTe?jm)*hOs8{H?y2Min&hC+S#OKB(KieW0{%fdvWdZMew)?5Pljrba9CA;kh5+ zsqBO%a`-5_WHG4V(v>le=_@ynlT(z*CXGBs{58MaPfDr^a?$F0QNJv-Slmt=SI*Kp@$Z<>lSBjIc52ek;&cj z5D>-tja4G=w4vpb3>a7=G`o0C;xymS3|Z%#Iam(3;ExT+QaakQ_2TWnLdv#Tj{nKbVWiT-))NTZ^GGCEV{|MdIdl?eMx>e%f zYt#k8C?ForTrD6m!nC`>-e1Q*)=BGlS-4+G6?hfnmuFQ3A6drpJ_2myYU%4mW+Ec3{3M!sTtbr7 zOVVqbH}h|^TX=#mMo38ObMm6$D_lNK^PS~wxv)n|rt3@=5y>HIUg3$&AnHT69UsjId4xUS}j?-5+iTZ75x91JF(=4e`X5PQ4Et#*Q=>0_~5X?TU1}S2)v1G@2r_zdDkYgLjlbZ z0Q7-=CSTiX)rY3KN7u0E3ss9JTU82MER`+2Ujb-MX22ogz&>L<^8?qDmqjFF4~(g! z80Z-U&CuF9nmzZ(;iQD+F|Z9>Af86SKbrWagFp-_D{2xVAdPXHHmQfz!P1^xtql_f zj~G<0{?}N3e%9{}p~4bi@31|OlB{Hi9TReIn-CjW9P@I7IB*4#>>us_b&NeQphptsiKi<`V0lo(WVqt$GHmu7hI$ z!2QFjg~pFwbI*NA2r=z8oj|%_yDzbXQ1^&7J2yp}OP9(DYueU|RQ8+#OOjf3>e=rs zbunZ`Xf#)}n+Dpgv5G_9x$aqL+GteqeHH??6}c2z8ud{$2=%5J+0@l3%8X#94G*Pm zf!AkAs>#*fC>_297LERf4=~&3{>)Z_VsaveAzGzzMsVoyLg4oVhqk0B`!?013J*o6 z@n%n(PCTCedF4^nr9@aIf7(j^zKrz0aIJyG00413*PmddT@3MWg>S%|PdzgoMFNNLNog?$OEZGvXx#Z@U3 z77UM1a^dqV?&R0e;CC4+<7UkYZ4??4xx7QLI#RZEg89*i-o=1;;Ym;^P$e&>_bve`9-oQ^R3vrG4RZlAOfdDK$hwfczIJ`jz{Q-H^U zATN5Pr)crUsO4cNVL^qrn{X(17zS1L2-I#54FJVqDGT4ITrFRG(Ds0-IhyWL=vaB^ z*QaPPqj<%4bvQo6EpCw?bfsm|N;U;$k!bU}Lvz?T|3S5CO z8hKXJ?|_bwK2W@Z+qgQp`zcukkQrxX462tN3J%#>3YXXkFJdLHiFufiG5O>keaSqg z7^vty)?sV>UgBC2o`IY3qWv1Qs9E&x=cb_Vk{}jG%&^XKd+hWj%aKz6QdGf5omk5E zRcIXpb z{jWd&lEA+t@GlAcO9KCr!2h=r`1poOOOtTt-!tjL|DH(~6%Y`nSl@q+P5)oD+<$NW zq5R77@^Uao3v)I>P-zWAvbon(g*n==35k#|{GFwr88{TB)xAUdrFZgE&^4D^s^2V+ zb?7C_sDvo*DxN+adga!)vvp6O9z4oad068Bv*81EtEZ;&7P;?~)H9PcB64{uRpu9V zSZ@qJE?a9AaCOB;Zw;(XZ%9gGFs_I>yvMnD@70-eC;!Wbj8so9wA8$@=-^Qt4NcI} zQZV`C7P-TjU!#JXJ3EWgR3gEBqpTyk1?0;Y%?TDzgHLeVT7TN3jA%v%bQJfXcD7Ew zaiX6WXp67y*rhH5Yd-y=Zw4-{v1>a(K&dokPXSW;h#fQjgpSaTQhAWcIaVGNtkTqE zv#bn~ULM$h!+3oPl@%2Hv}kk-KrtE0)4g_a0w8xqE|Zf;3})bc$OA6RhF;_0DUP4* zFJDU4pcE?G!p)tnS8VwL>0#5G$IF$~X`BX1gcO#wu2#;&bxc+F=b3;DujrXYk>KUb zC)(v)TnzkBtO2>UF+bZdhDGMlU%t?j%P+F{^)oG^>}hCrh9%W}FXf3*al-cY_T8K# zUw=Q+5>p~lkcIO04hQ!kA`Q;iF~wWA3jZtuNQPWQFt-u7{Y{_-llz5ujnb-yWTr9@ zo@FGz7Sam1Tu7q=c?)KU*971>A+HRafEx^H5BPun)>UZy?DHe1+hj;jE1ajJg>Cy& zQH090A{-9qfBb?q%O^>b`j_zsV&fitjUMyh293(<0Ny7=HZjKuZ2m%w7JroJwJM^J zt&D-Uv;@32d%J#b&4#5Ogv6TAVlj6ZkaA?XSU-!KMb6emHEoO=oA4PZ_<`NEF8FwA z`m8GG>+72^dwiO&SM4ldBt5ywy!u*t`v&+>iKdP?)X@s@)A)7tQ5i>KPo*pCi$;UK z=%XgLz|rDhXwf=+z=-Um#wLRz5p4;)%5c6PD5y>Py{M>c_obwAp$DZgN4GvM7%JOT zAHmMhBKwPop`h} z)a#k+rbnV_m-PPeXeJ_ktE4(xe0FDUv&%ra4pGOW@ypB(PwfwMirUqrY0gXi5rMvnQNyE}OXA8=e1k|a8=O37f3c848eT)xm?nlW<_(>ynCjkL z9g==ZiuGD*7(2P0{z_FU-Q!*_J|nGqk4{qx1m_yQ zc$QyC;eAX?%Kthe_NAnKHEBldlXm|Y2J56+V>Tz(7t-qmZQkE!7wl!d)nNO>_G-(B zmaQS^cHbW6u-6paAtg>W1c@@Oigfp)KZdM^`SU4uX3~GwCya)!_R6B1sWH> ze@6P=%8krb9Bq$bBSE>~$$Y{Vx^Lb$zVL_ISr=}l)IPz=rPceT0WK_lHW52VI(OC1 zkE!S-fU#q)q9G3Th=<22FL7?Q9^akEbBwh17!BZSii?)cefGIN=A&(nn4Z$#O3Hpa z>#@}n>W(?$T6dNOoDja8uRaiR_{9{`Vo8f2EChCxhFD{exuGYFDte5gMePk4%PgH{ zE#F~QYPc3Syl+kh;Tv4O-9J@uRHRI;d%&Tbnxwz)mjtvlaSji2?GB*hWMy>* zpYd$p(SEYVrXthUqx!UjF~jzFmJikWvQ^B5oGNy#3e9)I?sbfFm4(^<-cFZ8Ga3-l zVUB&SUhZJ3f^ zrNiKJqN9%y%)1s4^Jt>yIQsAkL$ZSb=)nc(1NKy0P&u#4|p*thNJg@uvzOA^q^jGPOV zx%q~r=hxp<bNe00ao5vFn0TkBw;yrR81h>uY*@Ti;irkfjt z^^l~h4PSHXAf|oFV~?Cze>)VvS(8HdA?z8_&3XKkUTKe~Wj=fDvz7E2+}Js$xmqo7 z#$uAMGTD&8K!Ys0B4Ry;4nPN~rJ2j}gd$69yZ4c#PByRPdYpHx&6Ty`Cn4vpBadR% zDm`YtJj8^0>@QllWP(j|ifnh8gjDX|#jJ15=%(ym+P}Nvvi`_3JU*AX+9T}9lCf); zOyQ@H&qi^T-#fc!l}BH04B4-}v@0S))elrx@wxDd0Cm&gpPGZ1{+`|5fX@O$XKp@M zL&|D&|E3KLA1v-OvJe}nP^5ODEU?72;v}AGQ+F{_9O`2YUW9n!r;w#0A~i*7V2gYx zy-_H6EG2$%#;)?$ZF82b=6^I_@=L57BGn3SSz=d1w{|YpZbG>a#{nM`rJS zU7hdi?}|oULNG?fm)5kq&cki$e~!sSeeM|?S#9}(u7I0K41M2ijP;6ZK#)Hgk9wH` z!nY8m%a7u7k?uo+YmuhAtlW(k=i?yePS zJF`A&r!k*gyRItT`zwedJY2hDr)2!SZ`pE41Ds_{k)6m8J^=s|=jooKh}9Xg>>;7o zIgu##D|?cDQ|E?75e5g!9-Rhb!q>&>ZeQz~u(952C=K-Z~`mBTdD*3 zKwSs)bkL3jdC1G=hChqXE$`xuY6sZEV|)gWX$b(Jr@W=PB-`zP2VtnwvL~l}BWJ7K z6DMV|er}*EjqBB{ci)AAM{TiVC!3E)4HT5N*lvL}8bYL#&G6xam$vy`pMO}O}3?1)M+XNnbf9?RwP)(joZ<}rEE@H<{ z$wY;$5;$+g=i+ZT;14KEwYg-217&?4p{p^fD~Evy&KW@h#_^lFpS=-H9DG2(-pYIJ zHPh-d+P2j*Xk{BkXCsebjtZ;jZtdBx_H#<8?qC@Mwu1J9&K) z*_9(!2}-sr7zoq@yGlYvuhc}$x(`JJ<5cc7hb~mUR=%g~Mt7ZLD)OdP)INN&O#XrVsP)-GPj!3-=RX6lQ-b&q!41vJ zj2Ig@bbSVC(Zo&o*llMrXFJ-3-&yWGy)=F{)%|(H(SZteo8}6?&)Zw2efZ5vrl`^r z8@@nj`pe6gd*K@2SIN5NE`Y53Ncys4E;a3K1sGM4(?AA2QoTA7gnKyDcTUU2Hi=jICTkBrRYr{$5E zZaZyXf`}<8=**e0U~MM_WA@sFk3W(hePVra!KuHYRkR=uXfj!pBBD~8q5^Mn-?F*9 z9_*TyNN#1?4+dd-!ks+72)F|O*5N1R`BvhDW4$Ndw7fCf+1ImM9!>HJG@#>c$8UOp z#Tk$ZWN8pt*Rdfuh@fL~`{~OQa*6pR^xm2S3lH_Ibe4CU0WPva^^J?b#G_i8K4t4*R5E+&X!G$vcSHX4a;GWgFXPr9 z_RX21T)({|D{EPY4!n5I1o-V8HQ9NCybh));7!UqY~_?k-_iYFx#fVt@N#lqrm!IF z*P{*8I?1MkT!$lM#zd*;b>j;AA2r!KsGgnskH<`)TP{;&gYmXjK3hXwUyus}%SXT= zzPuE!MOo*1c|t0=y&thXI~~lOj95{rzS6f*e=XWvN1T8~&F4W&6E^Hd5zJz?rkC(! z3xhG^3$KLD3CETbG8KVlf?R#`xknKgI}S=!8}DA}eWO2vyv(dlh=FHgL?p&G_3$4O zfkoONG$%+AA}U&9M97>3QZ?o^c1fy*5j`5o(3bxD{gR8I4d6Ygkr1I;=M31KSfdVt z87^T?Hg)u=f3<+%&}#5WYkAO`oQ#YDpt;p+0UXWusmZigy=85!QG*GM>z&FsF*!Z> z{fp;>Om)rjt+A4V8i?FG#BrXHS7Z1V`0#kiGm&RBA(s|7!il2b8&6ZYkaub%zI(dN z#&mmC_A8PP$KLzShg6<{RENkEZ2)vNttJ^`-&Yl9pDr`)!j{>_e%vgCd-yo-)7|K! zL&;B<#*eXVeHgoSeID7OS!Rp(ktLLDhMBp_ibj^&mI8w#8AIaqd0OapO-y5Kb05Sv z72|~rkl>FObVHVIV^^-M$yp1ARC!8TiafWL6HAK&LLx^QFc{#McuzT#@hw%WnLz!q;Vhr7I*C@P3- zGG5xnl2qS3`*{N+UV`e$Hk%g7){UW)d29ojzXi_ICbwCQ{e8?l5~VUZS3L0ExY@r~ zb^#Gb&4srwJU5|bxc|IOLT-)!GY=YQDYf|M$1=U5rjKxl>3JHT5f8bHXjG621WuL*))%%XMo=SgonKt`-zyQ4uDlW<87Tvid zT;Pk6eT;hk@#`-2?i=_ZzOTf5C&Fs>I(FDy{{y^x9=UT6x&KnHqJ7hqve%+5F=R*W z#gEb=!}&@Fb+;EU%1?UhUVrhT^^fUxip>7tzm>$4-S6a=+dqGKtVSr(e3ixAdti#? zsy4zVQo^3K@6N*fkqJgJsvyNPR?(-hs64$;S z;hoO1`;fCI3hue6j^?h$i6%pHJ>hYQS zn1yYwp{S)ywCDD(D1X{DiM4(i2KtDYDCRMFM}&zG=uE8t@8W*;C@y4wL;ZSbGWM&b z)}M9bXE49>Y4`nxh4{`ympv`O6%VU5BA`m8Y|DnfPUqW^F;Fexw-=y<2L7UVto3HM zwQ+4vYdWpk5N-d6`$NKz&b&04&3^uEOmgWSzlRju_O>k>kP=y=>!0eySG@f8Haj{; z>4XjHz}or~+Rt6Kl}?lJdBMc2yo1gZg&(NemQbat;ia?ZSI8Ez=V5s9+eRiX2cKD! zs6OR|npo@Aq|)Y~Y|IdYF)dkMdHjEL?TbB%_w|?7p4LYqQr4TUtl77>*Vu$2a%QbG zRVPZg`xocTDEeFEJP-*m#E?etG}c@*>EZ0WG+bBR{ta9eW+QWNg~7~)2p#kaA-5;h z|MH)W=))`W=@jsS6COh2+GEEwDW#bc6#lGkA*N+vpgxPkh3a{O+OOZA(|-X@t0((b z=E@TuuZW+64(!U&P+m>_dg+g{Uw7k;Jb$IV=WN-W>5->H%?u_{KL7li{ck6VT}7_< z4<#u|Hguo?ul@cuPychTVEydUUrrB9qE|~vQmW0=L#m17&iuOM>0^ z5QIwCL_lSSGDR>}gX7}x8WK^zz_FcQ21Lyw*$XPCe)|82x;*hRrRu_sb^u0PaH$0) z;ZXn*fPx`eDxobD`xq-?GdE<`R|D)cy6=nUA%l(Rw?%#DFKZGuS>I<3p|(STo=2hI zr_Oq+E%|Y5q}44=l9_+s0;XxCYSTDl#H#$QeH@mr1<2@DIDWP{|7r{^7w#?v=lB-H z7_{{yTHDyJciGMkecN(;fXbY18+WqdjN%ujBhIZ&4}mYQk{%EFJpZVxaG#d;Oj8lj z{KrRj4H8u?CUAckoP~XRCR|ekm|6WY7a5Kzf<^GXmgl`t=krA?^?b%vXn$Ba4~aLdklkN2&+w( z16~C&d%VMx7-o}h*#6jcsLu5N5rbIcBy}{4W->hn8u=NLl`!0@g1E;*nBC2u36M`f z@iU7?9h>Y;SfR*JNd%9_jWPAGKcI`@Yh`fvMogD_{-iI^o=5Jl%dvT8^Bz;edQ6_CK}HV0AX+7L5on^0qzf3s-dVI*;A^3|Ik&A}1n^01)8PY54YJ#rk`&6NllF^2Qb@3c{(M{80TQ#=b)=D_%FxjPG`&(kIEvL zH~ee^gn-~2jlsW$r>DiCYoRnw*t|qKCv3R9(hz==QFhE-G& zD}~ze6(Xni9gHWn>btzmu95+cVYjr>N^Yo0a2Md{BabhX9+`h;lRj9VJ>mV_r@p zXGbc<78aY-d<@1E``6f(rgcbemunhb(D_^K(oZX|Zs)6}ac*0! zoF9e)6T!i_ELN5Nw{ETgD#S)YT;ih80;gvCMyPQarUZo;E!N|1$1CPVFzI>g$O$>` z1Y{W?D!TzolJXrel)br6tkUMT&gJpd(lP6$iY=bJRHJZz;Ec_9#i2D7GXlPEWWx2^ zleN3S=bv)J2X=P#wx2cifkuy3{~cx^>sF`ijTPhwjgwaf!>&g~S`Fq(n!fc}Kqt1A zYSynzeHZtF5h}ZQh0@ht{UM+^SL|+OSW*SqmGb?~E7}6~dGYE(2@P3cHyog-ZKozY z0I-2~pXp{(9=%8Ly<|)KjhTU?+lK z{i$#Yf~EMxz!YQRb5R%XiNJ7VpNs+W5e^EO9H24zr1al#`kfYyeD!I0tp-HieXe()7#63ycpJE2i- zb*(><2ewFo4WwJ&Nx22W;=qS8h(3cAJ*7F9A8L|^9B|IBY+WYtorPFmTuLc*J15K^ zHb>v7S}n4+#7G1A0aS+QqQdu9#Rhi-vwm~m8Yzuz<^s7@l?fXOV@FjMRf5O4r;!65 zukht17_mpX<=(1Pkdjv$_@NK?V{{eP=FG-Kx^}KN`MkLfkyUlUX1>S7Y|Tz%&0h>W zAy=!$lrlg-i3o|M=@;;4K}Dxj<554{J9nqZ46El8Kd^3qiY0qcHJR!wyYO-bIjecdTV=vU zy0%r+HxmmwnwC(1e3ledZg|5-Cmq}3?u@L0uiRZ4K4eGxV1vAlK=`vyKMh1FZA=0x zA=N!#)pV~WiZ=hr3B7a8^D?y@h<>QYYb3PP4fVJgGnZ#!U3}h5}5<{P=W@o5ea+%Sf5Wc59DM1)#2LQdhD~ z0Jch9g5vYm49hb;tWk_;=@F>7p&Dv?`Z zZ(v|7Sbx{zo&Ym-yKOT*x8`az2ta1e?m39>ytu z0s($PPyg;+GM9P&FHb2OGk;n>Rpqe;mN_?MsJpGwow(ck82 z{3dCNm|t+d0Ac@2_h8%*-!p&Q>WJ~)+3a0pykz8kA^rX~XwB)(m`ComMTe7@gbLnzXZH`4Z9~^>#>d%Y(T3K|N!~KJhx8 zY4w+(=D8PMG;0G#C7CWhM@}o|v$&&SYG=OBoZXn;@LfGt1*LX(rJ4L+D zhN1+gS^9yFo}5a!^ns`YW-$o`ovzUFLG;IuQ4PcwWop|NyCvj$xk&KUU`o8~-eE*s zE9x&kf5jC1*D<$Q1mY+|Y(*FmF{EanrK1nCcQFXvm&0P)tY?rrCw4}WA_z#0B1L)$gc2Ys(wovlAffjpv=AU6xhDY~XWn=I>#qCZuKVGB(*^v> zIcM+v>}NlF|JZ`HerI4~Ho8PrU3rH+pcc^D6%GnU+~0T5;EP89W)`rOYwyVq&#^n{ znm7hD0jKVOXAAfgwC-tO>V@U9s2%^UiK8H>Z)rK<3Ort<8R>pa?&>cMTX>1pfz2nP zU}J`t$dGT+N;fme&ME+5q*k^YR_UDq_(e z@O>H6r<8BQ(*rNLtR));6_)>_%RuU! za1|1sUae@6-F*93`or=4p(SGGOdd$Jk$?wF<(@vn_p%Ph(u{LMe;|JFrx!0?)Q*gK z%fPJT|NOE}naN&*Tep7rI^cpKAM*3_-KVAfl?K~Wx%Zc@lP%$Bt(>$v> zV@IVUq(Ar}F#F?{un#~_Y6MiD;KwWE?W%&}eMRL$5KD?oqgyX(zUSJuZ5IgznbwNy zSOviO%U)M+L{QYu<@7ptF_zrh_{kWN5``bH5)cu4LxdvvuPP+j2%XTgz9?THGRBI zOY(uMq2L|c`k(&BUuTOO+vPODQ@~{3iypmwKRveY{APZjy6JcL=uuf28Azd1_+e!H zngPSny#+vx*>Jk=8nXw855`*4+LojYD|#zozw>go%y^p-xb|I;6gl$#yL4t(tV|{o zd7KxW_ZSar`S@YQZ~Ei#I&|r?G}9xW%e;owE!D?Cn#0O8!VYr6B6SNg93sPqrVLFp zh1G3tnMD*&N!F?R6V)@N29MXxx`eGd5|&i?1U{ zG*0CtK+1>C@G_qjt8T?(<<%_Q1R*5&Q5yEP$8XZbi(!cbzN(Fpht~4kg4z(x_PZc z6WYeGhgTm_Z{jh_A$(8p@Zphkm@Vo1rDlR) zL>`FU#N0NE@1IpV*3b&K(ii}BCJqDhhKJxj@+n%dU|HCZ>-awo?LUCc-Q1{{m8A^9 zW_cD~0b<971yDB04A?ac?=pXW)tLFd>$s;%=E^5x<`H|qq1-Rdw}wsE89aI@Fx~By zm+%S0&;+A~*3MZxbb4EeoA8P0!{|QVwJassuB$erdft(c%KX!A?r`lQ2a-0Qmcc!c zWKfrzcA9so>r0++-N#UHLB(*K;l`t1ceWqZ2Qb8ACZmXZ~47N(*sieLx z>84kGBbM|3b=_}iX;;Vw_3<6>$4e$)N*WOLne4Av{*C-yJg#cMa zta|Vos6iecP3|2S1^|U;iFeK#0X4V#A--{)OFllh7n_p@>QX!Dw1H1NxU_sz?`soK;(B4wbrw{dDJ0uSds z2?B>&EMG4G20Omlxl{u`n%p^X-+eyzqOSDR`T&1NSeM^;*`1^8db1M9!?xqUr>(oWDqc7en%Q$s95Mq~Z_k ze7AIKsu4sWrDLg@?R&&tsd`!H4&2!4)n(a!_GP?!z)}9Xp2=?h1k~(B;Kr4E`Ht!T zP0HtgHz-{N$n?gCsnOOnSktnTY+Qa(P|iUBofe)4=Wmk0VcM;x4B0(&)MWoY^`x6- zto*6tP)=*&<3r|y88mroBYIVhwD|Nui2u9;R^V}m#pmh}xw=ThkfPJBcJbyVUX@JB zhQQ!0#R`w39i@32XXAu>8SUI^q)`iWZUJQ3P^CUE< zrn=&arR12*3NOe?pHJ-bCw(q$IRMc-88jbSh^;43qS!|6E!CgvK`V#gI9Hv$l_ViV zn*Gpv#R+En`w|rf)=3`R6Atq%+iuti#R{p6XJX=FV75nIo5W~`Z8d>;>J9lZto;Ta zsaq>U^aAFhuSII(tYKqJ^TDX9XQ*;#99qH*)rI%9If|Ar5FrvH29Hc2s$LJCe9tzN za-^+}s7iehO+8><{&pd!+@a~~3m|3LiIUIcvKRHbR1Lc&n$KyC!+8n`$`kmq!Y}S3 zEaf&hu_|Y4GF>BtyI@@if|7k+SEnj^jaB#eFAcUpX47^;gTZPVVq3o))SK0rHlZ1P z(cMf|D9on6$4OAZ`W^k8Pku-YJn8#8DdOD3@ICv*%yhMZ`jn zECAr1HQ{wbF|ipjo@c|Ex$JtXRM$rHuA$YAIK&y27pX=75=69CcJ+$LO;t5vU-}w!p+RFm-htKDG2y#)*d)28M>wyINj z&Q2Eyw_odi-|Gysm24&J5IiB3RrRedyE*UeWwhr=hu*KL6+eiLU$k0qya2H{_WpS1 z6w#p;)NLP)3;7i{sU@Y=uf$W=WVa-RD76z`D(1Bk?rQezG$cI9rOf67DQ=y;CU&O^ zgnNJC{7EK@kf1d!cLS&Ty7Mek_o`!}tx2Bow}M62(izd;CL}+53mE{zxG6E8OrBQzgG z##4%A`T_f&w+pwh;hI;7%!W+_yrWgtn622u2}!D5F4oWMnA{_0Jn#tSI11I^)2Av;ylI@CA@ zDO*_McIKpQKuKGA_0%e5NSpX-+%*%J^!vPLHk(1ugJa%cvN1uoCJxJ}nHGsO3|)6r ztLI4dCo9g0m5*X%rtX7}h;bL#q$G~~>NOHHI90=|3LcXd84PcbWd$e$#5a%JbIcQa z@qX8H5o@TR0}ec#d}aT)3ne=*uZd1`8+t%K$SK(7R;=AZT;uQmb$%$oBsjkw#{;;C zRxng{#TgIas1Ml3q`~LSo#Tgym(-C9?l^!lW5|-ZK*_9Pzn#(D70| z))}YV(5m_;;nMx?&0i?8Xf+7Br}f$(QTg>W90D)kATC8y@xFk5j1d2`GwX~1ac?p< zm-2w?*=wkuHAs9e{L(_T0em=3g*5SfU7u4sM6}{GNERFf z!gf!A6I&g5FzR8>Fns&fP7mB8OcNef6oX*Ow7q;I1DhxuLiD7~?zsKES*^RfwiV03 z?9IkHKf`){T7Ff_>HW&CDlK_88q;B82M3=GJyU)}e8F*TaC!Ae?iwKm5tC<@MLLfs zanv?CV4snP4+C-k-Ij^43gZR^2fxPvTlRd|@yBImT}ovFH|&sg8`fF+*c^WI zocdhGIlXiA2SYlM*IKd8Lm{5RC(wC#&lKgn%Y&*Atx21}s`u*&JM*_6+mC>aWmu1c zOSO?Us*rAT*{^MbN)&kDFHmC1KC46N$0XWMXv3s$An(#OjQgLSQGC*dmSu(&x!<6# zrsr%ZhIli#UA+&O7V_3ZE;p%U5eHDf^l2^kOq~0acjH_%VltGzO>%DEfJh|Qf;_|x z@xJ47|J^zp>;TEI0ATf-Owmb%!VA>|-0CYQ#g*3rc3p%im~~$0X#W^e^}uKy-2_J3 zyBZ(P(iEMCjRS}9>BDNUZ<^V{hbX7^1kp|YSBY{v84D>K%-&M4&A&mod1FxWph1?iKa@ zs5VZrnrF^As^pDK<34^FuiG^aPl<-y`MkbXZ0%ltUd1C(%7)?IpoEPaJsQ2{)YmKdq!(qPr9ikDqn*z}?*OiutV!wKW%c)=#1(&{0G-s7<}zio9@ZlVvTtB>`7=uU2TCP4H@I!xDhUL{9dz z=&LKWeq4{oidQYO=u05^=+cj5UPL48?d^T*Rw5M;MAyrTE9qN=z%Q>}x))@N3P}Oc zaV`ABMIa-b#hI(0a_t}`VC!mXcx`8gmM;m;ly(cf?u(X&lWti0}E0L zijBTwt(T51rh&gWBf8{mLx<~eT?Zejkl^=_ksYB*JlTHr5~$7VcfobxU0u6U8=x}p zSqFJ1{o?ZDoCASo2acu(P$Mo+AR2Mw#*MRYTgR|in>xYi!+1Ynpo%>T0Bv^N7ic#Bc`tsw;ZN!B^s@%0!*J&hg4eS-e4G>`~Pp^vFrcla;3R|^2Zopg}`>6k^9f>w9$u=K*=2zWuL%$0N{86 zR9yZ@Lst`EpSC9P(1n(T*`B%@LyJ`_Hl2e>JK;LMulZQv*3!3Wto(2qNP0oqdwFWD-(tYDhxq@xZfhsXUiWQd`@3Ej_9eA4e+Z&?Oz7cIS#okHu=?9!o z6-&%9-XN;wJ3G}Jc%Z>AFpT`#XQBENGcMxe2rpyk<(z6qh|Ep*OkmsVTUB3o?e2WE z;*3yrCYAyHW09geFZXKjeXZKy_gd*>@28(OB*9Uuag$KDMIVN16}n7;E1y@V#xWyG z<<<&ZQqN}@GZ)6u!-V^!=&&?QN=^Y);;T>vS3HUkPT+i70;cOI71`Zz{F6DlNe{_1<(q*)~PPJfI>Ol z(swHsD~PT}y)Txk>yQUbm(l5!9|!)!ghOr@8>nLrc0pgKkP2|ER;9VraM&1a{Y=Uu zLO4(CgPu?nuAEx8!hr(VzG>nosNmdcYYUjzN3||n_#LH{=%nykz_yK-T=f5g-z)fu@!0{!rWq?NN@)h)r;c?!qw<+ZyCDIj)(+Y5ee_k=J--ouk4|&R`EB&L z8RPWVLi;OHRnG-a*gu~^>8H~--DpvtNi9;k^t(tqLh=tor}FMEX#XfQ)zcBV@Uc4s zS*ziF{r#=2K*`MYR{$2_l+x)LSP+K4ML#=8n}NlzA#bQfH&hgoy45N>)k)qDpl^FT z1LMK2Xl#~aoI#xbr$t6@gnI4s)~pl^xOgj9cs4}w(pAn%^t5XU)M>$&B57})QLMXA zl}&8fmtZ#v z_ic8?f#Secvj&kBr{4cFpwwRsE(zu!E48EdC3mnqs!}AYm=F^|)LTM-p{tcdOE$@j zppM3iyEy4n?KD&vfmXs8c5Oa4&F|QCE|6$F+zHw>c_8WUp>1T>3CmDbWA@mLZxLypg8I$ga7gP53f-ot)=vNo|J)sso1cH{{GfIs&brB}`px0&f}-3!f!gRnJ)mX;IAS@{^y$l~oab1@6tUBDUL@Pl z-L9vb+DOTnkY};6eMov!w<22jR_QuQyaZK-U&sa3o$B(_Q5TDD#qnezXO(h$4 zXxO68%7?3a7v2K)2<|-``VA01#95qjaX$u33oot#o8$!oZE5FkB5=E zZWdpu7!hrg>mT&f_`UJGqR>CUWAU@tXH%_zxW_>+=#yfLXLibNEeU0ebq(6KA&1p- zXF6e*#NB!j_;GYxijAw?gKsEwe)`DyQlz-)gnQMADt`ase@RhB{9e{r^uroulaq@F zZ;U9Jlxqh&kFhg`<fSit}C(eRIzG`^_rBniuS4||%tpcysS zw{jh0w&QjSPQ1PM$>Y31nV^2Ygz!g(`15*tDqu#HqOAQybKr0?j(XAojT~VlbGJW% zg+fntPnXJizT@cXy697d@XeH=nX3VIP233PhD)`F!&dRDLH}{ZCIvD>%!2JSqI50Y zS`@az-0fy?it;$BmRpeQ!isjao{01fC}a>* zrlx!vk^=Yt%L1GvXOslPmO++yOxTS+E40#>FK$uPv@L0(T&mSeN4_ZYf% z^ob7TC%fROuI;S;4d{;Kwt;;^g3%$BM!9$Y`>wr^q~{Q)*pSBLs~7ZH6WFQN#G58o zifnYo0N37)BUnmUWa@noMoxZ>A+Q&9RXsVQ0X|UXR}D=s#bK2L|1h~550aMhwb15C z5Ys^X?3}#-Oc{;bG5MljZbA_~f}h&T@nH5ULe z$cvxLT)^Y2OI$$SQ$JUil8sftDj0tcNEU6XdhLn4Zxk>1WVV51J$GJ4jj2A6L89hk zQ*4;0X?Z@TE%R-~2^!40bKm`!;>c97Z8xA-39SC=`Yld;Lgi&{HQU9qZX zDq@Nr%tvEHB-#>mpEPkwyrWG)93g#A6!&mv>3Mj&e~+9eh)1BCDxTfkupEfL^HKRW zlVwysFypr2>VV((sWTYh)(0yrKar*wCg|yK5ZxDxK3bDFEH*{MeWN%(g@+41FAw$9yvtFI7-?rkT{0aAG zoudkaAx%Z7-&fo}%XfHxt-f!cOj@98`4v0|z+k`VIIh?U%LIZuXG%Wc+9CCkM~_%B z({yoH+wSBJ4ew0^c1)q|Lyj3CA%hq!m!*W7d68{nch$kd=bzk zZ{G$VtGWo1^5c4uGt}2r(iRJdouIr1RRz%M{!-5V*HfJDOS`?-y>B2(bZ>HpE$J%V zaKLv51YTl;NR+#(<84ui8Zs-MHe=zFUE0p0?YqldF_X1RFH(PM0A(-Z#G!SIjg61SS(A}A}z|t;*9GSEnt-%3W41T z1bHft+V~v5M7EF={^n&aYq+yc9zM)eM4Q`P#O{GA6imJD3Q+IT&n2}Hb3Z4EihGY? z+q|z&(1d;CZBBpHukgUFcqcGMTzTfmKNg;3Qv{0TfV_d=K@!Sjgl@)M<|Uy;>;s0y z3XDoy3DRQwNnpdEb7$Op>X~L&=TPzujUolt*SEHUCq9sZ4bj#<2du2qCm~2%?05hiQR=;Cf3<`4wgRg{97CuK|@;n-yuqb`}kX(ZryF*HD z=d3n&#|F#D9&mVjLHo1G>GpgTV3=o4cs_g8S*{5((H%>f=ugLb#4j)N7WogEB^)<$ zM9%-s4#&khn5?lgedr>g=tBcJk?joP$pd{Vts=&~Jw&_#ZGAH!DL$KO|7VKq3x4hv zsPvD^R=;vRTkwi~t%KnU;NkfGMM~h|lZ$mja*)N!r@dQgBZP*LFxqw3Jb;Wo=xXG+ z`)JHyz5(R8eN5r9HhBIeRg%*Oem?#)eES|Jzl;x3JgZy+*bcL{vkOHBp{PEj8PB6+ zTtPL_LcGyTOtcFU98nML2nnx|MHrKlx+q!}FWq|CukYWkOImOXOAibvc~kMjU0`&B zbH_RdL5k|;aAhPs8j5rx`z_&Fyo5*RSu|mY8?!L{+5RF$&Qyk2x+h(kAGttvlm|Wk z@_`OTOO#sDo+SWNYhhGyktZ2%2M-JtI^L@ zY3@n`$tnsp^w3u0kQNcF-6w1OZOwoyi z9g#%$635!m>dDUZl&L|2LgKkCkM#<9K9Scg2Y_A*d*{2b#x$rEdLr_Mg`a^>j zSFyi7(X!kGKOgr@nl_g+k*~5KKUY__1a@4x^WlEn#dhdgZ4@o?gx1l&HkH>ya4H9s zaza?C=V2*g%dyJ-v5cv#q)z8)PX*N!Ue-AqelZP?TA+wt6X~4InL$zU7p1u>xZ$sB zea1cO^+8_oNk11a?%naejQE0kwp@3$8e-LQ*Hp`0wi6J}CYs z^A`y*h6T##)ijmLr=e^ z$Sp8QSpOo<3vgyV4O{F8O|pV0$4Olz&6SopZ|HwyZcJ=i7nSAqs61rTmtPJtm~kL0 zYnK%d*t(j8JTYnV{weIpFXj>@eI&H zb{N&A{d;b%XY>PdgPm7GnWv-VE~wYSr!RVDM^qUDy-jPkm#AV*Y}WpDtY4snvqu5Z z`SU!7rkTimkkZO~1VW^uoO=-VyUjleaRgFViZpjB=Jte z&4yNnb0oqdgNXrx?~bQG&0p+qxFt${E9`PZj{{@hW(2kA`~b+kU7|@YJ=M8XDG|)V z@Wf($u~nkl&cbAuJWRC1WvovF+O87|4ZEbiJ~0P~MS$-+W3uF3mpN*CAm@X`cdRLO3MpefX+jK0@(N)swk1sr4C(3r!%**p4T6mew-8l+L{Yhl?`!DzVd=*a|z>IMkS9Va3ylr@uSTB57Wjm z9V2NzQrkc@j;?BQxRSEurT@X2AR+Syrbaa#bOXTt5!4h>HmDbb`7uWk(}k(0r4e0F z`UDhYvO{au(wIKBx^DN|#W5l}GLX$<^Gg3xpv`;Hcu_2|UcFH+HW@J;x6upPmjh`S z{u19-qB54)=GxUaM*)}gF=gI&YaOT{t4)*#Y*0UJvNz-lzx)T5bCc-bDlaC{q3MCb zg!cTS2wu`+-FE`lWW|cqm4*@rKhOh;<15HgiEZBZiKB{q) z?^{;bFXeAPswypasLJzR5vppZVw2@TQh%_1LQ&2HH`p^-MkvA}pXhOU)dL=7ew^Dj zm#l*pJ3)PhtciV@D>R*cZZeuTN`sR0ZZ zL1<|DeFk~_Lpr^%LayFkpE~R8f_TtzK$EgCE>9mKEP6j{J`KbMHo7p#jT_%{MqU_k zzdz*n2ln5pJ#f$6eOxm4Z{@_^cls%owH6}^hX8eeE1q%JE?KCjc+q~VT)2Lml_P0yAyvc2D3lBI2kwe zprFw70)*APX@`n_Yq}#z*0i{!DQts|yW4|OidmNVVlnR=HZ+_bPp(Hxs1^_9tPT~)G-G&QS20>hA8yVTqxRBm$U3YdraYk}xmqzquR75RRs_z++O<7*b{Jhi1+U3zpX z`s^6UjX@O!Y`JjB42LqyN$m?O^KDBFj{1B!&5Sw%$8xYMmim~8yr!X_mo7Fw)xREE zQ>><_ki}#KO*UB?lx+0SwL_nXP4Lcr=}tdiRqTDqMS|1Scb>;)q81_;Q?+lN!PL|pxEfuzV1#n8cZ^KvF1N`p z0+n;Ot?GbuTUzjbeyI9ydzWZYY3Vxz!F2v@jW`Q+j?@gTSyhrFh@>y33i;k6p2}1;HHm1T=WA-RG7x|DUAc_}`JULIBOT9Do z#WHrozg{~|$bIVCh|0Nigk-8shWjm$eg>CJ=SAPn?v4BHfF`-wHUkQs2*$u+DIHWC zu-TXAs)=XT1OzGQUbvP@U6?9Y%1dd> zNBD+ic-}Xu%HXi>m0~04nPU=m_oy@t4eTVkFzOqu{!jOTSn+>-T8oYDXP*@@l2pG* z0n7WC0W42M)`4WVX++(!$H-Ju0YD8Ey7xOC4Qb!ICrr)j3UfUgt-|fRJ1<(S1hx5% zufXDuxLU_+Ui?c?p`_Lyk}?pS5m$2+?4h`B)ieyCU<6AK<|Jtp|Wt6rYc6&VZsF zxuA9U=1F`H;heviqWT1JYU+2q6lna#5qlzt2hOdly7%|>^B0=0L4t%5Ae9B7M!Ivj zat&p+>5FAsvC2?ln?_cJJprI*9XuUNS2B#An8?Ieh}4=DeX%3DdRY512WJ*N-Z$@D zHi^rE6}R3cY?e2@-;DyQ@hi5wQM$G+<*K<{Bdk~vYRfqrFc0q6-Ln&PAM|pcH!Ucz z1>XAW?s@pjRMR0`be;vH7$Yj_3IRHZk_SK|(8;d9M^XgITSX_QQ&4gMy@gSK58M?H zDgHb^*Z38T#FGYT;CdEXlA*^%?Jyn>HaDBCf#N8^NmmeY9EPY1!la>;)wd(8mf;$vZ-^x zARX&@25rt&0bQY>`TbYtSu+?ImKG>1b)|yG`r>0k?@Cq*mvIK=(1s|p0H!cdB$x`F zZq(0ZM4VEa!w7RqDD8;}+cHcEsFa2(a2ojhghQv0m3W6uNk^Btm~kYFFu8}MQ;Ns@iHN0c0-pPt1Lr0lqzc1 zgp}X&)I#EK0VFJXk8aeSE+0T@fRgACB`9NPfrPrAIg@>Ms}O$t(GtrU%~ZM%oSc)x z&}-pWaD)T4t%eST2Q12@ubOV& z>9*PNSt6WBT&USF$4DJRo&?S0Mj1F)c{~iZk_DyB9$QR*j%h|n-tON68DoMIv3twb zU(i&>!RIEKXUtfaX*3DIExDOZmDluI+L0`6TV2_){awDUgtYJ_a zrK+j*=LW>TYo@RZc38r2lG%WsCfnz&(Etjdh6cEoe%OXJx?}R*k8Z66ZVhnC{LpXR zE1H&YaC=6c)5ZIDF0Rzr;xU~u;ekV0MkHeyl+0S%bJjOie>dc&gXEhzJswI9hScCf zzdAt`%Qk3a8)^^e2H&r__xP`@j=L>V1xzqZWTnp24I~5W4HTDzt1TM+f?^h(r}(4@ zDY>RRcXLVj5K?`LRfhJQEq%iAsF7vK19-Yjgs5SM5~&A8WK41|B?|*5&llVtcp7*L ze8HjVcA@KD+nj;ej9G8|QM4E_duWEDSt|!GT?rcNV-(nPE{g0+h6)6Yhzl}7n+j4~ zBs)vyQ^pH(x2^Q%S%cyhy~Z}6G)CMx0mKR8R2OQ;MV+sLKV>Rr&O-BJN>iPYjoEq^ zASCnla;Et7HM9KK0TNWw-I>+pzu?C&z_)WmbJTmXTAdAg%%U=f~Dt98ZvA zsN59en%3G_NxJob2@ulYzCfm@3LzviSfo=wg}{b_=Q*GpH-Coar3@+>r_b=1%nTA6fTG_U|3cIR0@=gEEz_h|~JTjrhBHwk*iZ=fDa7M(E&+WF2nTAD zC_z1u`|4)W=3hLtjXQ5n$P3@EZ#wH+-((>=a@JEY30RpUM~?h?Pnq<%zA9bH~1}SD{ zT5)0YjE8>7LMz3^t14S$UxGqG?|Z<70~iH}FtzS43R14_-1LUuVIXmXcLRjI?9Bi! z*>CjvEg+8)pp$oiHcG}g=a?esECjM{C=sZ0m-XBT?@GttEiT7&axA{?TxV()^c`B2 z+@hi0kuA?eEtJ|TY81Dv9|CE7Mb|8u-kB2MdFN}cWIsBPa69{#00a_~K#Pm_u7Cnx zV zgDg?Y;BRPv82MqqKT*M??Q91ljP9!-dzr-2FGw)WX#BLIuJ;rr>zQL%dQjBY|9JdgAbReaVku!pNEq2@a%OkISoohtxd%hg%T%8Y~jzuuU3U!PhjFvtTi*Y8-;+q{2R5Pg< zbiZG51VM!xLL3O%v}7x?iYg@Y05$cWb9Q#UD!9&@V*L|BDu^jmwjXY!6#&TAF*{Yw z5);*$*a-M4VO;{AJFnP6WL`%Xbezu^b|cs5;dM=SYn3jo2^h6m-1A%v%jsKAKR@T# zv>5-IYI%48?6NQ^=*tTK58=KJYTJHNtDe7dd}zvG2l3*652|J*sM7gw7}A- z=V?%U(1V{#_P;Z5<42mUnADmP){p@A+L|@7b6o<#+p%_R>mUQp)UmHgm(H-(SZp zQ{m8)gh{$b&2l`V5Aj&ArLr|B(JXVcJWXhwvu#^dV(`FZ7_Z#pQ3b(V8QGgh6~1c7 zb%poH+0pU8M2*>jicXc@+RxAQL}W#IBENr@1NnU<1-9iT?lkQJPSzcLPje|CY%O7Z zrr;`a09QxIrWbID*39SWXI8H;A0TqCM}EZyMNp&zk=C;bD%V1A_4 zi$eJkMH`^Vp} z9@-djWBfqz?B!&D<_^MhJpVE}QnJZnf8E#kdAYTkBfyB&Y!+h1_fe6u2kz-b#`XH>;|cg7+sP30w<2m78Zm)p6b#)56Z@3KeroA0NMX zwN$tPC=m_+OD_+yb(_qa&5|`;H*9ySD%~#EX6A{jC-xR4YJ!Ipb0H7yR?Ko?nm5?6 zG3lbk%8s8DK?>so1g;s4qb>62(!MEmO^2&jHzOH%dZOxa#x{O1zvY~T- zc^jlQr1+Bh{1s)wAN(kC33YJbY9}sORF*KyIIPKL^(^>cfE31bR%7auFHIR+0SnMM zYF6aYWq=7>zF|x~E;csSx@jwx^I>`9Skl|8UqNR2YhuwFWsQxej5#3g3qEZ%?T>f0 zFeo8C80cV#6OPUgAi9_fjCsJ9WO2+`F)U1IUo;|FYN#zIREQdw4cOdmw`dr>j1(V9RYBTKsOA~9rji*H;5T# zvtK^KNP1L>I}58;1H2M&dNL5L=A}b;5luK^ghxHOB?4rvW_;!m@z+2i-c+QYq@4jF z3ENNH+}Qga7}j*()D->%t3rNLwLzNq131S%t&qADu7FQDwa~{Pj84=e%zsY|O$$82 zQ)Q>{>M8$8_~b1}6yAD{KIEzwoD8q#!>tS`z$py$Km16(&w@Dr}f7$_yW z0=2*9;@~%FmBq<;Yh4|q-J}&uEAV3^+~3H*5Jk%bz!C$2V5$vre%#0TS?O5+mpcaCHA~$VJM?*reG@#PT5W#AzFbpkI5sv)+avIy64vv%})mXXd??C z<|Fs+A()01y&KUavnJ6PPURjG?!?pUn&cOeq%OV@uL4LNodHC~dheT<=FOrSGL}hokxoY5< zRidC6$5O^CsIsQa>0+p^wW}q!AALRkKkT^T{rM~NcVctUKud*agMvIaXuysH&WY)_ zzT(9Og8fjjuoHqBLs&2m9>YUV-J?xY-e>`J#=jm)re<&nDSyqm{N&=aNT6DD*C_GO zm4SSB=zq13Gkt%l=ux;<((&5?W(?7jy>IKw8iTZusL%htk{RslN6%Bj0700OtL9T< zNGTL-OQ(FBPYK#e8!ujpazc1o7GIS0$Pje=+%c(gs8U<_n;5D>C02q$?JjhEPn#=usFHn_ z5^`0j@6EDnU%w|;hBuh6TmC(iz^OJnkX|%(L^0L~YZbW%<{h?j5{jwt6T_rNOFjMg z>MyWq2r0)uc%5@!PFK)qs&k$Dz0A&LC0=dtYx(*-jcs_ji0j#@WnxVMMTMobiYOpt zF%@Q&fdDx%Ub0mgWt8ne^{8@>YW!g%aUuytMPFueXy^4dE=Z34nU)}UvM`l??KF?U zYuWXB6;%~Xr27l67k8W>Kce$w7OWw~&WYO~)wP`~FM}&WfbajX)mL|pzClo@7^G+< z`mMwsVivfOa%69*RkgLY~JeL++e=b*l>&b%(s0-7cA5g;sk4PAX(q( z|JTbVqKn4bYTjx&m?r|zTVgi#`2x@~BUHL0vmG(J3ION@%7NWT!KV~)6g8OZUwc7=LvrpPx2%3Mu?QM;Y_qh? z%wjAaE~RXz0$f40=a0iODr-`Vn<(lX(Dbq0(uO3#ifuB*3u#DULb5k#%y9yu%P0QI z!@c;1k&`%5+!n19zbvIn-{|$p--|DqJsayVL<{7-e0&RsWwibFKxPaF$fS$mfSZ9B zOdqiGL2LyxR3%OCT<2KLZf4JtRFjCi9Sj$}Cx{NG>*{?1bo!Z1>PdJC^mDsl_l_AGc}Vux^@EK!(RvYI?! zqZ%P?wYVq@x1tH>;O!pUJ@+Z4!}qzWdpYeTVC=v*q*kGC+IPPLsqKdj(6e}g$BkuU zsU7V=sM&AWz645#?SMSh7ve%C(z=>r<{of2*rj8k zeUfcw=E{%(`90z2fNC_0buo5bVvb$WQh_WfcYW%bJAKt^uBG~~IT0x+(-B=pZ5&pR zp!^ILRS0H8b3R>JJzEc^xVtuvpHHrD^=kD_i*_9alSrm72_2arBT#B%CD!1pWp=H$ z3(>-o(Uo-AoL1NDBcy45<$7mWocAZ{S$O@clXhO3&!$nmsWr+R;J zP7055ZN%bZv}}=^NKyhJAO$ z=DV++F%L-bU_^8MQ?6IZYeoIs@1fL`=(}Uw9s=gJ?Y_4aFW}du!KBwms|*~S8{Q^h z5jpePB`bYrI_8UCKMDE9dh@IeD@Zq+vu7VT%+}x8IPTT|{RJDl=nU&P5?Lq$=t*@0&PR?w}E?xQI$Hd-wO)xAnN?SpkmFs<5WeS;;KgV1)o^ zyAo58p`P^mJXd8`10zH+xeF+VZx>x#)FxoO@{}fq+#g{_pfOAP`UXXsS1$Q4^2|t6 zJbyZ-gOc6nM-$2GIJVCyC55^AdTQ?|!~~D+QMG|f6hGb6c&N&DU%QY( zi;8c2hkB7^qyoZ3cPs-Dxn>&foPy}vE@UqY$p0MMN5SJ9&iQ3Y--pod7J zYcyQVU!x634i!(|2RdzTauZ9mIGo$2IEYctybg3oe21U$&>ftD>|6`ZCF8GYIo%a# zQEUWpt-t7={dVBHMnJ39k&9JJGkw}xZDI7}N-b6!@E$xGIOsSzeA@EU<%0L-fDh_B z4CI7|jfWM+LATH=StO0g5>aWTcsd&4O`lLq*uFS{deG)MT5}O3fk?Y3_Py^lCu`ze zy8k-Z7Ace5BbYeeRMP$LU%$;R0h2qX@9bL*#;aJb*5h_aoGx9P$S2H;qa^6r+fUd; zsj}e!H_CXN>IOBThfq+N#m}wKRQrf@zpQP#!{~S1JB4+TJv( z$*T(+#>ZBxh*VKg5vU`I0tzw@(Ndv^fXXDZ2m}#AK;|*FDu{rnC^MvrfDBkAOsQt8AAwD0%Uwoz_!|_KI>iY`o6XJ)0*5l_da{P_O;J(wpeMW<0duS-u(X5 zJ&W+gj~_Ccru0Vk?)s@xaCY&phYy?@?dbo(O29e;Y$tUMGN^@c_du-Ukrn5atja%l zRs?e+wmR%ktu3S5W9tB~5U>lcVksE4tdUd!E3eW&?Bj2MJ+yjk#9B`b;Di7*{;M-# z?-?5~bO1oN1Neih=nf0JUumpTM8D0>_bh#B3HvcSeM#qaMMZWcmnes`XPp|XFKkhP(rA6XHF5 zFM_KJ1&L~Z9%105G;jXR5GM8*$G}DB~ks4V3T!O_rfKtuOyvaj1W`dziKwBiuX3^hw+<-VEm3S3{4>XAY-DZW* zfV~STz7n!}-_KcR%Bwd59V?fB2Wa%>sRE@>H(yXzXb? zqQdJP^b^&1Z&WZi(pQ#Z+dDFh853R3zJM0_OWdvP9q5-YU#_ANe;$A?KqG+P{=4KZ z>Tmi||Ek};4sfx5Mw*?>&5|J#-HXIJ*mLcTO!ehk5K8cSF=+}r=+e- zt{BSCuzBmoDaH5Y*tU%x^%b+M2`m-nqUdG@|rWRdVf^#nc7;g29 zgs%zczyn{43z*!zN7-I#O5#)ry7?p^i;`xaT8(0h0YrcAGh0^5w_wj zT0@x6{2dpacwXhNb$&IO03bs!laO2X0_VO;W^w)m)UnM|*{AD$0{nswXPzCPy{HCo zEKFv&PoKFRUoq5zGMV+*{F@6z>yW$8&9h`~1}p)b1awaM5ur*rSRWV|$X&t~FC9Y& zm<%DxHx>bqH~pj+OrxtuTY_PMKb7yRIRt>+C3^m)YcPHdm=r3ocEaqnsVN{DBBgG6 zr`j>yhd~S1SdIS9f}2ts4+%BC3x)&!w(PHA+-)Q63Xh%z-E_wQY`7{KFuTTf_M-@e zl-WM<#%9X=qEs^yaBTsUHvBr8u2Z&jM_*=_f=!w6O+gb=a7@GMm=GYw{&grqr2$1Q zY!1b*_3rEUQw)CWyYEM^H`Fr#BxOHW9h1|bx2P_$xji5@QW17Ef0C*i_i-kD?*}mJ z87G|ZD=0%h8{R+Pz2fFmtpO9MiL$Aox^Cv4%B*}_iU7czds4%C^yCS#=$!+4Y{o?R zK~`{;Zn+puq;BMdFoSE(euQ}-pLXey7+gMK|6kG<82Z1% zj(zYae;&v&aavPQX7!eXFtfCj@Ce!RJj*{{LA>z#93iHG&jo-(O;iO$yK=6_#8yKQ zG23?2;HR&C!aSc~#gF>TdA!%t;)1+0>KR^UtFBG#$??7ky0UvLkQy-ZuxdU8xB%fR2XSMtm}G%pII+4~mwbV9yEKOnCd)@U$x-{ggN?;+@<2 z=#G81%hi@+NaYu^phF^TQTWvQ)?eE8FJh>?P6!R+$+^v4FGdNt1?e8DfKT55V7IvH zislR>z5x3dnITlRcHe(2;OeoX29byI|hE-G%1QPMa$N7y*k?axUvxOZjTAX!Rhr|021*+q7Wl z+CaG8URN3J?_qQ&ChxZ|N?zGrMK7a8{ zu!!*Mqt z{#Tag?hZAjI-wM}P$Hy`{xKHG89rUYl+Ku~X{K@RN`}vlkMLgIyrYn1C~hK_Xp|_Q z(PnXJ$2q}Y{ZSELsHV?Y+xNn|PGfNCngL^jP+W$j-WjNkirZ^vcDr=LehMu43Y$T{ z`@LnOthjuwcXIl2D2;_Lo{zXfbr(*6gcPZZ2DAJt zqAGBRfsnezY-!Hu#Bqx|e$T&p+bo$ZRxN0a`&k{WTIitXszkK3d*oYcf!mwQXgy71 zB-0(|j=j2bY46)MmF!aU-J}#^N3xRZA$3@K8``7$)~0|JWWyuKbs&kSVhxR!Z)Fn; zUae5-{AMyK#cWop$KK3-hDzYaY!ZK5X-U%ww;*m;GL>+0LzVB`X>TIf&lZoJ=Pm_b z&Z8KL+by={eNeR^y5&R_iJ9dk=96`I;s~l1mr!71p5$79U767$Wf>--q395LZGg4J zv-fcQ(&Nc6;)``+qi{?_koa8_$z&jm<;!Z5GLCcF@la8$N2AY@j&r=LC-Mlv^EB7W zW_q!*7a7{)n1~vA+aDuur}dAWxonHLI-X83rCe!z!Emth&b{Nc^kSfW#;)`ad7awL zA^3zmW9HA7sF%0&G)-0ZbWm}5Di)ONHZ-d$L(Z}~57!#I--oLT)1F328#63S+fNi& z>^L_Wv?rx z^UK?fH+Psu8wA^PVLCU(+x#hWvIkft^tanXg>Py`^=tPxtMhGcqA*#aN zAM!D~0gK^S3SUDNapo0pT)M7G&{#eXevLMQENe7IhA_Mn5xjcri4>u~_S-IeWz?}| zb=M>0hGsfTrQB2+a2JJDMlNIKs3*!q+{cmTr>#u_@ZSx}C&R*Ij_G+q(cbeg#&zv7 zkpLV+(g2!T>!~7rWz9e?2PMp#MbK$THU0~DPL?YB`Xi=|g) z5VHePUC`;_>wBedke4rjMMfTu5iF9kvM|#BL%Qtg7LV2=BD>?G<%J!z>PC6j^!X<_ za|oxWz#GlqE!!G0tK^UlKqs$OK>07^I)n}E+{pJ2N(%f-gr7~OzBU(!>+!iX^*-t78U2Sk~k?kI;)d8q} zR`q%IrX})su(ApzlJ7#PqY~-Le!b3P(oz)DyrcIO6SnKQc`1>+50%NKp1$fEzR>LT z&OlDgT~zb%iC3}~D>LT#_RL(k_Of~r8yi&-7dEv^i5b#(DpA_2rS#$*`0;2?{I}*{+!gBQT_#Ct*ph z`A5%VpPoFgNcyQvF8%b?Ukb6O(s*UX^fawJ?rd+pC}OXLy@RrUpYqBBY@st6M6GiP}8nb%>xdRieN)4G@-)B88_`}7w7bupzVfqZk^?pe;)FT2BP z^#?L#9iKR(&q8f9+|E?nc#15@Z$@e;g18vyC2))_73NQSFqF#PJ=ic#H8UN(5^rj4 za~NaNPhAd3SN3gkC=%tK{nG-pl2NO%_WtubmmU*0B*P|OtgFnAsK?-bP+G#_``5>b zh!6OfVwHHogUpR-%f;ffhtK;(RKf?FjtDjX{fI?QIDF7a>B*B&aN zFMpz%yqbP_yinw}$)8KD$&DxKa3^uoD;2lal({=HYwyvB&kB8Cn|!=ztA2XQxe9ll zJ9AW8gY&{9ZN9+-8QL0xoxKasfN%$q$xJYWP|kEz2&dwq>9ahL%v8;fUEKVaac3Jt ztDB|hw3X4neq@wOrzm~aMaz$K_P$nX6R*bJ_T%dU`->nq7h|iX%RhxV@Ork=!@8pV zufVw?*UYNl97OkpHd__(#u_8-&^E5(6slOE=91&oj(5DsZ8WN$cO#oU2CpUwd49m z2F{5qV2|xM|K%@PB*@!U;f?vc4>>xu8n zGlPOdAVz*(-EE2Kk=n()*$VpDCE7;Otq?Uxfwi4Buj2bwBtMs~wRl$(Xp88;{2rUS z5a#g*e0;vKeL3*8j+?(wcksB(!>fK(WNI#Bi8`AM|Kvss*N;T>$L%(>?|T25 z<3*x5X%bA%HITdo-+blk$XF)!7KAsXm8lH!v?qDjL<9SrR1mG;C@hpi_)?y^GzZzJ zpzhcr{J@U+K3=@NdMx6k@)x<>_d>V2);#QnvB095Bl{Q)T6u%qg`qoT^}~Rm4v5af zR{XHOBmCv}EN)}QEV+TH2EU|&v;YOnYjdq;8!aO(e?@RQ*83xCul^cnT#(vq->TK9 zQN@P{qzKO%7)IK*bd;o11N7|PC0ZDrf6EAizzJ{F2;oO3qGts4(7!#7L7(H%2(y{O z^*WJbZZz>YQEb)oV9s=Y5u#^&TxYsblSkn;O0mo3pl#uJ11ui|>Z<80-+J1}oPF5| zpfe|Z_*y7!R{5&dxMS^@<%6Pq6LUB&mK|OD(a3~18{iKKm=JK1Bp(+V+N+>(zfhK%Gbvl?IE42?4Bhs9A z`dGIjamirE9G4%hK{>hU)&226;3b=lfeM}>u7=I3IyJJgdwo#i9TUVs6L(06*)o!H zr#kU$-%Px|_Oexxv6#CmnRN~yu+sk^$3bc7y?JJsGN>cgS&je0|pqwY|WbX-?S68s|M#y(1`9!;hJ`kEiXEx4ELttMpNzum;OiLO+Pj zRAT#rmqOmQQn-sI$Vzr)^e$UArq~!%On<$)>ZXP+msX1b?`BEB%snzl!%!}X=rWOcd+9l7r!<>oVi*fsb^J*MvXv7vt zQ4qY}W$G3hBs{8IVs7+?ye`+TgZ8>gEtU=9>=vut;af-aztppMrG0i4Q>;92?OxI^ z$1Uvx2K`j;bj1_5Y9!ttfnT>$o6&b1;{{oVEV?-kJ#SQ{@H*5fltmZK?5GO7)WQ=v z@(PjmfQ#=-JbOLsOVPCKc~A%_OOxF@dyO0^_|Cln_yjljq#p63^2wi8x1+ha61x@2(_2k%mM7tP z8%39q5YJkCfrykhPVt8&eq^N1RBVV2yA?Y?OM5nFx8d1SP}|(f4}5?LObMJm5~LP9 zo*rPKJ2Bc?gwpHkF+9HJ>EEj*fL$uQQZnBp0ne)^o!p?SNLn|3+519atxg&U^b65J z)|%s=yjGBjJQ_1VnvvOV&nRRM1k@&h3MM)SR=IGtNXzXy*1_oAKVH<5?6pHksOi^L zizv*5*hxO%oR#XC2|uGYG+q3uKgg0Y`#3I?cGe`!&3ePo8(h$!7-TUWlNR0{g|Oap zB=O5Pa0aJnJbbjextYvp!-n6Qfv?xcN_Es79SCMmBRMmh_*LU9QQ`@`iY1a)CeWQR zB~dK|#%GsN{XZ5aa4NSh@V7j6?MSP<`sR1zI057VPNH}G4wOnZOCz-_1h2909g(^V z<;>{j$mpUg!3#9H&U{R}{YnQ2sUS)1pQnfhuWUjjxBZKc5lYtCa|l;s0}Ahcdu`b= z*yv^Nz}^$W&3rWwp22kH0`P>_dCICa9)xESkWqfZ*}w@EI5`+er_^q#&+FXyrNXQ& z7q_wHR9rd)5uVuQPp@6d2*W&@z6iBJcS+LegB4XYtinSliHa5Pn27i-s*`mHr9*j1IALNxN}xt+^xh#; zeGm{pbmgzmD2Zp6o08WY4g0lRM%`$&=tShdKNRON!t@Hbd3;p}a=rG_bpgh!S|vc% zTKQV^6bUqUqE~uxk#^ad{cyaFXAqJ;n}Clro{0O_6Z6yjd7PDJa%Fa3;ul@_g~Pd+ zqKtYMLiKR3ehPU%FOstfK~NPJSrNbC2!;{YP)j%c+!RTA1FZF z+5L0!-EXr1;u5ejnix5EWK~I!u4tuRmB+d0F=7I0G!Wr!1ww7;HCl6>R0pqdUV?{i z-2@rr`0*>q>$4ln{rksk;B$pUk|d%h9BUoin{x8UwP$ZIvK8b)(QSgqM)mTkL_LDu zg!2tMSsqV8HO<$5xiM=f!KR@db4N+x2Y~gNxMKrDUo9^!L|R~3ujx9zsj68nKdJ;Z z9nYBM!RtmBpV2wqF1wF*-}*Yf2_^H|Jo1b3v(x$cn2(Z7Ajss$c{ zKRi(;hp!aphgIG_Xi_`U-~d99XqY;HCU+WI(pEBCrI#LrNzKkSH@)=dZq()o>aD~2 zw)0CaKh_JyZ+P-`+VSq4$HqakO0zU>`|NMGfw`ILM*sygiLk&9bxOln?-5vBSZ}l& zZ9Rt5EEmA5w=u?!X(IL(1Jy8C|NgIdrkM=xoOE_Z-!9}BHVP|nL#|f)TZc3Q2SMgH ziiHP{`sjo%AHfBlTXQrtLWnemR2eOAWm(6S?BA_ zwD^x_TMm|%GexC2ETS~KgUH?o38_X1s%a;)YOv$l^GImj$7smP^eu(ko#*#n{5w5p z0rNCJ9R%+CdwbbJE3q-V9ZdBXQa$9#RvsdZzdxTGFl$vE8lE_gop~nVxdY!XBF%U! z2MuL97_*%AfQb6|OIgKh?WY@CaS+YXGQ^E}6De$EFT+d0LCGOa5BxC9c0c4Tzu>NK&w%xl` z-Zt1N=|3;leUUtT+M=J|HQ$|e9Gs4_&e;2GSUgGd0Dn zJol`MvaKQuhziR0eD>R=Q2%}>WH9b|1r=UQbPqsuyn(QLl_LGsXeo&q#cCHszBCul zn-Q7$7Ip|OL-nsDg3HKnm;fo(ppb*Cy#2NZ>Ppp(SC&6*!=#0@%uv{)WAK5Ia0#C7 z1$WiHMen#EQnQ2aqO^S==doqFZ~Jj$>+*JQ!#W>O`YZqXg?W*F>=UT`GrW3 zBrctE$Ap?Xbj0;*RN&G0&D?( zMu`M2Ag&(SEhMDv&87tuG~}TbNoQ40Cf-k!-vX}A0Pae02{EP+NRUEOCcJSqu3h~b zFOa4ys<9tiA?!8a2jVu2HoVkR}$&_;^1c%q~_O}x>o%O8#GO2MsC?l*y1f=rbZahKQw<8`M{gUc-n;hYfcT#9J~0B_FiR{HlB z(^TJ8^h0w-^5C@-q4W2EXXV_3k!KN@-63QMycTy1&KgqoDYD(!6m|NK)hzZixC*St zT2K$BUq{&OtMk5*Kp>Y;x(p#Xyr8#l3xRF`peqqQS7p-mxBZII0ZjF88leJH3O$M*#j3&&4XUF(r^{Lh!R zU?RXV)_{j7FJk@ds90G!vk0j@rOapXrDluU>6MLr2Xo-3oUr23Aq)gRv?Y%;vqkJH z?f+ZN9uzt7_wNhzNFdlR&Z#SeHgpKm*Cc{xd5=#vPV3Vs#jYGc!4XlQ|G!$h30f9f zf^Zj;AizJHTi4XQyI*W6jr%FF4oqxUw?OLVqolQFlykPUSNfhyI`IvanC`$H3LTz3 zf#OcJ#ld)Of)uP%d}j7ZTsm(IA7NZ|!#v6M8{bVwZE_@^14%OByn6t5K%c^R7O69& zek#unAY7^`yaLyKfn71uqUo6HeiPsSyAo7y^{mxSn_HNDcAM%(v!iqCJ>i34nfluM zvn!|&=d$J+KgzhI_o(Oi2^QB6bBFxs-#0U}lr=WXU8oNc&C97kkQNN-WXE0+DPCU^ z!I;Epv6%_&G&H_4KLkKi9$Hhk$lwd#W&*ADgtqm$u@+I_kV(^3P+5PXpV}}G z%TlIm&Kea_fl0=Z!`jE}C^F$2DKKqSbY z>u#7&7=F2VslU4)JYoCl0J*D z<1!6h7kS!96&9uLwIFA%oO*WdU9am)sq;lw9CjQC!7(DMYA%LaPRjL&&!doO+cNGf z!*Vc}6d2;L!fRcuCu5sD>c$DG>M&>bz3YX35lG)ienl4~@F!5|T(maGx5k^xnLG)I z#{wqQIrX3dW&HQU`S5C`EkAs%u9-V-syLCLX{qPKa_>N^`i_;MTq6$RJZ$2dj7wnD zA?FfU;_EWJuyXIcdp4I3XgrQTnb)SGoxi8hzr{mSGF*#koJ=d%%N7ypY&ioe3fB(X z;;U!T-jm%~N_1sVZ9SUShf2uToSqKwO(2BN##U=NFQA;Pt9iGjcu5$#%^GEOrgygDck4!+D%g3Mk!#I(Ub)}S@IjNl^Hz$|1^sv?z zeHG4Zx?J(38cKQa>CkB<()GU0Pt|ah${r^48g*$kSd@uJ25s6yNN9^Y=*%U(S5YF> zE|E1oV}@X5KjS}u{I8PMkK|XemNMYDRksmr7Sana2V@axmVlV97JO=3GPCdlpmergcZ`q2Im&$dm~&geO6p7lV(btTf+zAi%Uv-U$uAyLL+ zMk5j(_E~ksXF^Ft$Lyt(kK;StaCVBM=}LyHa$I>u?NqKuP7wMCFsy^B_mW{d8!Q~B zK?gQ6);XVp&f68CbXSoi*0Hr(+N)W=&VnnkRqe>M&#&45co~#Nkn*7(vwuW3m-}Zn zLjv;cM8jGqb!8kXWVa~(W9L~vSKtY}Ke)wvu7-)u9ZMg6Ki2(9u=Pqfx7g&8OG|C& z)?p!3GR*yebx%}Lw^r<+$PIw^D};I<~t{}BFq zdzoG9Bt#gwqNlbZgXz%GnD)L3Mg`8!|-rH14#bq8ZQMP9~~;7J>q;RRkqB|tjgS#cbd~{joDrONm80j zJ4PB9w-*iXpk~ZPnd$^~I26_dU%zCP{WBYy-M?Q`P~i!ZqH4~3YeS&Kt2ULaP<#Zt zk5}F#vq+ULhZj0^wt1M!_N5U0WzFxh(p$4DP}UcF-3)%4iA-xhUYN)#tzv9$UxEO2 ztQsd&Y|}`8IQEEu(_PxRvnmZ{*blT3P(U>2_nU7G`*T+KMFzz7%Is*dG!`N{66fMn+Iy(SYd$-GPB)7 zSMGH|Mo-m$&RjN8O#Kbky_XNnbIj;Xsa0L3#wOIBn-dR-1j+^TXO%Ht?og7}eR-o} z#or4N&H`RSTJ_zoqbg-w5H8*sFv^+Ze60l$lR*FT?#S6;Ne9;GioU%!>}blDc~3U z3bMQGt;w*X$I7(X&u4#A$SP+pBKjvQZFJr{= zvBNLUwZbb8URd{Ktc)k_a(fOKAoVpM-ac$odGd&8ALzE+=XeaoeZy4BSV{u^IfRc0 zoNyvn(Nj$-Z<3W&&30nFSMDdf@>e9XiX3hJHDlWn3=NsA_j-K_Jcyi6Ug79NbU?BL zFP(HEGv`z@=Ew2;n_=8N@;g8Gb=NTU^tN3>w@O<)8US4kVYhv&_OYxAnYv*b4)H1B z6e{est`wsW!Tumo$H&Sj)D*60CEows*8aNn;rOEx3G^nMIxe`;R54+#Wzx)v5TKS2 zX!IU-?F?I2hT~?Q<63QYVvQX0kB-xA!9M9P^MZ!3GY0N)p_8dd)<+`{sosE$w-P_@ z;Pbu{!z(Uj>)6VIR={e`z1nbC1!!F2i4p4n!_97oPN3HXchQg*tVeB2gOjx;?UYH- z079yU+oG#)TX*eHwRi57&#bLA1Y3YUJu!kxY&cNHZFCtLi5yHN)J+;JWeeJblXzFD zdC+c?EWP@R8|>5NlFw9(wMLBqi8-3urm`3W4I$QheLQsv#bp`t4rhT}ZYJ4=#$+TS z0=nK{?WFWtvaWq*t^JJ#T~tYiO_17{h{QYUG9X`=tr#QdIOW@odxQ)>2WIScMdllO zr7I0Z=UYTN;bPoqmlR0*2VFcynzE2!H3d%Z zv@A+{J_{b+uM1?Z8q^k#>1T8%rWJn@!|slZr+@2pO`w|m#G%_8o2z4BVf6Dqhz2c+ z<4IiP$x6JS7`fZ5Fvxa|rrU}&Ju+`lM!)O7+;&EFk*?UY~6?4yxcaiW7KvMb{HL#Zf#HcO>hjy?O8Qac#`}r6|r|g z14f6BaUrN_?B|%{+Mx@e9zsu!WYgy>#P?NC*8-LtXm;1X_4W!o&@csHai(MwHrS%zzws||;o~kjxpZMkGw;rKXRy*=w_BOZ;s?3DQ1IH(R zN?3YPAxd6M<}-80rOSpPz}GUlTpq*D@qze zmF1N)DLAPrk5Nj!^S4y}$o{h0iTT+mz&fRM6a_DiI9apr#Y)u-rs`Y)P=JQ}L~kp6 zbA0PJbT+B8jd>q?=k^0_I)lH0iyPDcwvx&eoX+E9ttoK`b;N9jyf2EWb%#)^|d)rV*X?#C>aH&qS zZlayfX>_Qa``~WOHKgPF-+e;_yNlYGGFad2?mQB26Qx1YrqTJK~< zeM5^+GTWGmi3&t&G@l!%VCY8MYJzC#V5cos(M2Vfnx8)7zxsxUbZYTH@DqE=;`-^8 zBzO&P15g^1V6v1nhXAMtzKeABDOBvY-q^3zqsR&n#N$On-?&Sa4Cw*a&P_1kb{0AW z^|a^;m?Dd+-|!fY<;gULD%o!!ZY!cCH5<-(2=tPyed~qi z+n61i4Y?5Q8`Y9)KArs>oT^xY;J%B2bBBbnR=YMte(THi0y(qD*tXD?gBalLl%%VO z&6Hy5OeBBI2P^fWT;*G47SZm32x^QYGlo=QD^EaA(Q_m+G?*QL_>?am&Pp_FxcaSc zRym`wd}<|~%Ry*OssrF@f+xECPM9)VsgSl*BD|5ktNe8nGXMBp5 z_#>@bIei9fPN?_p(En0rf7v7zSZ2WmWS#k~AII8L9T<^TWlWfkncrg=W>EgZ{V96j4kwk@8%?ite4-<=$ z{P_&v4x~+jJH*LLj5zKm18hVdU z!*(bhy-ZLz=g&eMyLZgd zrhSJOLFFC=9a)hHl zo;iPu3OUcvC~0`X8bsXGrCI9d(5xti)v?-n!4^~2bFkA+<$VN(9C0Jr)b$=c^f}u{ z;{dmk-za_m1EsrZIYiM9JT;jCPhhy*o#%NrM6uw^&u>pl4 zP8S>Y#=(-Zck}2!LX60O7U{{!3uC^CiU5fSw6aE=&gkxfqSKkCxSlezVtaL1oOse4 zm6a1kwK4)VHe;v$V`5W2-M50onmTvB#fH04He)>4lQ4P5dB{E|?-dJ|(W}z?poA%pXSwzXr&jHfIAv(6I}+ovb2tunMUmu)xY_UuiY~$VzV|S# zc#_iyr%G02M8(1p#>qE!ZKdMEKTa#12FjoHseiiUIBiqd#Yn7tUjzuBX_MI19Yml}y= zH&Z<~o%8ue+Oa{t%qW0zG=w?w%XRzR&~3kHHq_O(cxo$;6 zMfGcWHP!8dZ*9E#qCdm0 zK3FVZQk|ja5hi+Fgle$(s&PF=Q}l{Ipa?OZ2~b|P>*soVp4M>(ti^m1&-f8 zUiiZZ?8n|R6t2lxU}VAeDe_Cuo?WjCOvK)2$Mz_Z2;2`4K+B?x%7Om~Zjm?B9d847 zYPQD}0L*K^+`LTck_uHkS88*ke?eqcL&igBQ%}EGegB^6Uprj2v+tS2psaAOF7sOy z3um-tLPQz%c2~fKNbByPm39$$2MxofpxOa@&7q`Vo(*EBZ+`~L>_=7b=-~C~ir|Xo z$x16r-1&t+>R&Ozg`nn$8N_6w$&FFB*r$3`9C`wG`UC&^WA1kq;oA=xgdOR*5aJF5 z!M}DX7{h2o<4GBtwR39P{O?eS8B6hoi8V{dUBgEg^UPXkdp2_aU@-@fwtKUM@FDlt zxV)cvRJS_H+M#<+Z9j-~mAH|t$C;SZz=6|U^3LS!u3Y(T=K7&z*uu_gTp7wi+*SOY z=~?X;_j3ZQY3s4z^&jC3J&ecpG3~N2+hi_e?>Jl$;$uJYYq0T^>gbN6OZIl{I5kYi z3zWj~^cw`r`U2z0cS@v3X?(ZLWY<(?vI`o2!@Uw%hSPWyUxlyL6^a!5fE+0tPVGgq z9d4wLjR#L9!*ck8*|8p<#}Xn!#LcgVc~be;h@O$@uA1k9jf0Y5HM&-L7r7)i(Q(AQ zrl9i;;rE>~&#ik|Ct`a0ANhppJu0zDILi%&oXm_KyE_!quRWNOuS~!M;5;;GGGnri zuP|l~gQu#0X`d2JC8F!D0Wyp=4XVq?A0${RTn6tib13~z@a~?;J8kYKLi=-N%4bw^ z{WBEHpTxgl;X#Wq(&!RruGt2TZgzW7)abd{($MUp$}x3s|u6qYP7kpv1X?VHV8=&xLVOr9(R0 z)N%XSIVXkXzEe4fg|w3{|4dsz&FyJZEpyZV*xO=jg)LO+NRRf{z#aM%O~TOj3yLS@ z-l(Gd<1$#h9FZl1DK~e@vuei9Y7pj0ZatKtaz^&~JyF;!Y;Pn0t`11Dq5P`>9aw#Oj2Jy{r!=zz-_s^lc%xw9-oE} zql^7}b6Or9-s!Bjybkd@uPv#0@`U@7K7^<=x3Nv!6z$5DXJNd^)df zcZ)~JIjDrK#?!A+D4Wd(%Uo{0d!-SD>TR+nUy+lH?4Ja2gq^~ku&xll^( z1v~Th%aFvvx>!Wm(Xqgh-`*BEb#__HF{cz2Ni*px(1Xu@YTyy_&~Fn^4{9~k9bd;5 z8#e0;tC3IICKm2hm4Z%_oZ1#yXP4w9O@7`7Z>zM~9hy62jktqHMm3YO0KhBs1opl# zwzEbp&q3$OX~yXrwQ4D07-R35Kd4eQiQ8Ix{jg*OdY}`bE5>)2`DFU(3*tS7+Dol= zinaMj!Xq2>)Q7B0Mc(vdH~&c%y<~oCB{7R?Gqo;!kM%|=hMu&OSgT-vNKe{5QXd(E zt_W1mwEOT~dF3)%_^B)Qdpi$jO=o;B^3vG!LjJ;!@on>pB!WTIAOxz@nS!mj*7~4# zV?Ns`(F#Ax-E-=O|KuVPermykYF+J{Kuqv`he8+>sIqqRlllO#$ynp;?>Ofs=lCQd z+Zifx`@vY#Wsv90k&Zn-p;#9CrlU$*;~x0(j>O9+ilS^x-=C(J*R-K4@J&JUjx>`i ziO(1q3tR1(f$}S}6g1in) z{vCK*DG&Qy04v`rG4>>pXrcchYo!XJaZkfdxFfc0$o*9u{WQg?V$x}wk_obXgW>a zJ6GsR3X6c5T}g3`faO2tZRv8;xWKdXMr@#Dc^VHVv|U!UXmL)jKLqszxX$XTtat|ahz{+3IOJO2rH z?}@`Olzy6o4?FPK*zcLNu-#WAU*7)d*b&yR!V@m|6C=t_ zIri|sT9QMoZkjHM44?;1b_4LRsRNx67}Zq4GwJtg*3ILhO>8~54S-u^6I*weU+ zglp)7liicO{X16T)CLWTlOV?kkokvIp0$Q?y|C}rl=}wx_7>n74*w6&ARrw6U%Qe2 z_2JgnE@=II-k-|dBpNS=4Hle)lR0LNL-lvv*acSXrdWIq+`NcVh4IcEh|G&GqoGND z!7mv#=8Tc1Jxcz2Deu?&lCyu$Q_t(3d}hESy3u}(u}DNNT~fxs<=(s%ZsFHUpk>lN znchh1!UAz`aLtV!HLNo-zs3elK{Gj`X%R$j%aiOWkq zGLyJ|5tUcnM7iG{sYhzb`EW85C%|-fpIBe3^0VLEV>`B`_(eu*@|2=XL=_`t?)T#Z zVMb=i(#zVXpcYO=1Chgb?HL(1N@>R9D4nR68g0u1;P;M>!({Kx{oHc^zyY7Y-E01b z^s?AE_RAEv;c)dci2DW}7mRGAC4*#;mm6Yu0ut`k;vES@s7*J9xN-LghWONyi?xkrF0I-`9Ll*z@l?II+%p|uokZk@e!w_Gr2&1g&mU&Ae7rB3>ZT!Y%! z_4-OryC7Z zSv5~?7}g}cKhk7|ixs~H zoAb9GC%B*+wkm1(&F8ALO}GMKtlMsR?%wf3fT#g7uBQB?;3#p$$!oF$)gNHNM{{N0 z(iq3=Po>_^;yE^ySk9QFE2ed>)RyP%-gyh~ zzhg?{O)5UW+HS zFrdF`c}I1}1iyaz|L0%-e|;~3LyA)ye&>c)xu3#^F`>x9 z(f~APR#_L;_udWHBktyugZTjY!X2LLX?kQ<=r5&eF)mBe^*f*6T@}gl7rN!W<_Wgg zLR0Hs?@qAja^QBoI+cCTe0$RNUfJ_T4wjYI`VAOE2Z}Zho*!1bQK$Z74ZQmg?|NG`TFXfiHdD0QSMK_Be(`y zcwgJHo~rD0CyCj4L0Hqg(D0c{Vsd`i;RsyMidz^ay~8HPc_gjR@p$j}fQ8J-+KX-Q zd^k9|7iQG4PN-=$1ATM(3N#gFK!HjRnNYH8N(xO!2^tKqQoi4N56yJUQ84g++;t%~ z6(6VRf+h;Sw%Tu8^-%7FM3-W3sGCorN8YYP;g?0N{aH6Jo9IxfR26Y=nksO1goT8< zc4I&H(G%648BI_q$py6mNb1n4&)jkyDiPm3w%7~sop#BsHkJLZIp2Ha)54@kOmnCW zrLtlhV8kC>`z-K1ckiShaed$qyF(cF&$VrQn!d|L2RL53g|CWB%_QSc>huXK( z?W=r4Sm!xzk_L0S8;uTf=1N}R01-)GBmhfk&%Wi4D8Da~N+np>SjYF=aEdvgY3^yq zK^F$IfJ+2Id*XsdJuQo>=*fMTy$@uEx9kNL1-^Z}jJ5+~F?aRC4^CCP7n*`~tisYW zlIk1stj}*7xziy3G1GC8}|V6-^0~M|F2Txf8_}ORhRrfe0b3n zYNNe6o(d9PYs1}H`vvY`y~{f-Q2E?PZ*Ay07o7kYrUcboS@Vv+C^o5gxk7$>J zfBToww(kT!u2YwKa$hZv)dRTYV0`FmH_AS2L_~F9_mL#Q8%qIx?}TK)KqX*LgUbox z-P==?d(JF&XwtWcT@biIQE?c{c9d-p7~LBD@kqwnmoY;VDa!6(==D-; z@?Z=|$qc-D?E+9&N^Y*qyEnXexV8YTeW>n!_aeIr@FQSCu8Kh*%~Tl%0?Sm(f8Gz~ zwfq=U65?{!8p&cC1e>zhxjQmbFyE$p$G(o!e`ALo?fhTtd~kz+Z{z)^s^mb^o#Y6E z(*mpbBVda@7!PoIxCJbD&jT=W(Dc(D@N$a#K$0DERuRa^Sq%*4?YZqNBozEkFh`}h zp#}WV!=a;K&Y>ybVd&d!`o^i~ODB4I+cz(awVUkRC2yOgT?Mi^^PN*R)=MhxggWn$ z#Yvm2SS9H66WLx2#$v{#r^M3r54^5jhfPHZ50<0rshw<|US6va>FvbW-X1F?Bz6`E zQ7Cy%@{sE@hh49mVo%*HxY-!|JgJ_{GR*^YvzREC&}$WkwM)*c;g4H5sG1HNKV@HR zGqzD8$&bq&?r}4${h8s{@2H)JLXH!Dd=>tG*n7*UIGe3ol#t-=PH=a3m*DOY+}&Lg z+%>qnTjMUl-QC>@nxLo2yY+tW8T&iu?sM-QcWiz%%|lo9)2nOEHP@_FRlwsTRUUyV zABynroi>KbhsNyDGCM#@RhCy9R7p}J2?CSM?)Z;?Hq z?FalgW&Ier9a#1m07&Rt*9KQ}->K9+Wl#!kW2iv1x;ba&pJmeqf<3pq$CG z?smmzh7y?Ct+$vq{8*s@$ZSNB3?u@-TolRQHvxrBVk&5m&=+ccY^6A11rRqJT^z-n z0b*Khzg~mX-plOo*0oAHys7)-18C%>&_9&(^BYU$C#+hl?pL&TKtc3y-$Ee)Gm`%< zCK{V*ovfM3iq~yP%2H4(`F7z-Z~-atu`A<9;acIENsV>l4X^_A!`tXL>i3Spb?liB zCUXK}97ZazDAPz2p?Ssu;&zzv0scmIPMXr>;`1trjr{DZ({#Jj11+@D5~Q!!(*bM9 z+h~iy+7NVbJhn;_e~V+`C?_e_Y#4POHn3DD@v>z_jXt@Z%N$q3&v{BFE6;7tLso#t zCepDwo>lHLw)19ZB07*Rk+*>^V1f%Vlp!=l&IySSD-5&`(JU{|6@1z=N$uw$Q6<}E~oXfSdFqSJN0N9JHLv0lb!zEVZ(}z zn#!k*@#Gq%QXcOI)!$j62@a59l(?u^SAEXysJW%RjXqx7S+Vghc3Aw zw5&d7Ua@LU4x}kke?9v5J1AlTrW!yH`c@&@)T{uk434}P{4gqff^ac|s z3sgeoMZUL2tR`_|qij;%fVKW2BeYWSnKGx8=4CYlI?ZVH6JQc)h47=!D7vt^v4gim zwISG}gZESd90Zg8A2DJONK@>Xw3Kt2`-N`HACBL>k6jW2##{Xft;6)CLff+R20mcT zA%iF{0PhYsd?GM@J1d!43~tf52@ZgxhI0h~oaYE{Vmt6Mc^nm5eh902etq`}%)hD+ zDtsEs#FcKa5jy$W8=65x72BOw&#K9>{;w!u62%6vKDS%ssBwn3C|x?JIcqU)02YIu zk@U@)dxu((AB`&Onwoa_H~>Ap%jk{I2$-xw4BcvJ7>l*C37t5$dRcWo4wpUq@&i{7 z;pB`gMQ#5Yn!l~c3Y%~3)4<93sQgU$MvqdD~(j%HC9`Te$!rAoHt#{eQ-7n- zKSawv_mF=BF8s@m0r392|22Ekv;P0Y&HXv~82t$!_ou1TPXBRuojq^?!trhEsr8C= zW7%E9I56_x!k67I9p&u1r?FaY)YbSnnLh$a$DFGo|HKkyX{O@0hs5KI@2MH<$RJ%! ze}o+`h#^Y*$RB#>@xSQ>a!&%qyyLQkAv8i+m0=ww%1DArp;1%EtAfh8@Z94CYK#k) z?U6{Iuq@6A+BCeD7Rl__RS#h1AWhtzmZfLj9=VIkL?@U407 zTt6n&8_5ueDs}i6)@;UWP=Pb#E|p_*XSTd<6{Va5T%WBuVKoB<>l(aX2rS=45&sQ8 zL!(vz+6qd8VRAq=(<9p|9$TTEgYvgWU?%Ufc&+MdkO+i~8Ie_04HK=iP9Siwo`Qj3 zV*GIZg z&2W*UY_szTW(`O{j`@ez6M+vgo=Z^=ldS=(@dXMgflZAT%ejMUjsl8Sf>l^|#uf|$ zGBeQ{7w#v4sgaDbjVciH{;);FBSEv&_k}&?7smYxwFWjJrZ`qoO>){`&jny=#5>@| z;~Dxe0}$6jaU;`A#o)DK#PE>+p7lKz)tBN+A=1lFCtaA3mp7*B_ckE7NrNk*Wr6iC z(x6%w4&SWHGtU0|N007M7|`#*TffS?1~2`h#qTs^|_ z0H+D#^N3B_95z&80kWprz?i|CMdW}6%t(AdGCrtyU@IuUg_el;d@>@Q-#jpfU+X@& z#IxcNXyIuI00oJF`5X2;E!vJg9GmO6091Ivt$a!u`=gKWwJNT80Ke}^=}m6gY%36! zWlam#);(bJJlY4I`iPM_zZGQsmmK?lMy>y)Pye~w{A6o5{>OZXV0H z&pEa$^*_FmFUo^){pk7pG@4p(d!1hpsZx^FNWmu9K2++;gh&ntg6Z_zl_D+(IQKjm z-;dUIH!+GusRSe=_jypMTbJX9>8jP}TVAHcZPmS6WF2Yzn3~7C17OlL{?6^6r|N1x z=R9zoF=PZ_zM9Y@pfL@uZQO4*|8){R#G4CDrAB4CD-UlO2q@EOA?luz58X~d4aR)09#y3`&$yW3gH#=S~E+0tqGEygXh-M{3_t%y~)g24%+psivQf@ixmaNtv+IQb5$M@g7`;Bril3RHfkC;9M!-1#4Py)+z z_Rsojxz;eW4x1G!BIUm+H;=>tDz@CAJx|EK< zNE-u{nIEqGf`7vjtt9Tl8?$d8`Z;Rw`CSxM&NG)9_G^}CW`LYSYeLI=D?~P&-ziLM z2mYi?EPuMqcqMyv05~Az{}>QE1f1ZZV`nPc7{Z+#12p?#w_Z$vjZ5o_@>t}!CTPH# z1T_AJ{jj;ao5a$Ln_pg2!2E*Ix#&8v&IDk;=3kd=&6RT7K36{usAmAGJyU-JsyBh= z6L2k66Z?B<1ks9X(HUL<+@0Nk`5cyWOiGh(rUY{p8bBHYFn{zQQHWtx2*IqcyIyI5XHTtna1PK&HO4C z)gDF)u=H6|UX+&&mHny+H! z^-&Q@hZ^wGmh+dDBF^+AtFr-yA707?YFRab%Wr~9{VUdufD3B&+Ug6dZh?!YRK}E> z@p}v18rGrbnl1L%|E8Gyp=;0>mMeCfM5Sha>kFDgF)U8LS^>(Tt6D|F&xIb>KR|#g z2~gBX!%gGGE~sXQX`g}Vdjbl4BUapFKY;||pHz(yB+Dl*7^*Z!NdRU8>$`L1X8u3q z+62P|;{!sUG_cJv^EzPsL~sTs-wA&Olggqh33T##;(`5P5DkJQX{0pZnn2?Pph^Rb zi@;c2M!%INv}R#AY`D{cIOhleV36Z4=;i`zU3l4(bb-|lf1y*~2{_4o#y0DKr7wN? zjn2qN)hWR91?iapG6vvj1}hKk{o8R!z@kO?VvzM#E_If~ zPVPDKhs%&lj#}|^n7YwGU6<>g_~cuu=(N?rd4bZ(lX|ooezJAxPOy1#F}m?vyb*wZ=KjHIyDijdfQ8OKG{&K zRxLf`41O865)Qsr?L5=uYI!*8treENO_QQ#Vb;oOg#aN7{!e1^CSLw;0?hw3F-gNQ z1+E}g$plX4)OiCJao6ft16N?rp`-x?4SX5avV;CemHNqn(%zEJvr}N6QU=sR!{P79lF}sTz-(W^)b$WC=25%+ zQ2rpjOkx}da%*q5jUp=DmV_O!n4|hWV}E{A{D`AJAZR$FZzeI@XG7SN2=H32;5(KNuO9pQJ#L^;SkAVxt(hDxW(=1L&Mv=o=;-^E7b? z(}vQcc(vxUJ@-87WnI6*c>AtPe%lvC&|0On`JJXD$aaeAQ{ikyM|U#A6aC@vt}(0W zTq}E14?O@0AkdZa0BdC1997Zv;DN&IQCod~^%7$Poe#H_3Ag$`+{q3>vm|I5OhHg9 z@c?E)Kc~sjojPS!IYfoIb--U{e5@LQCC{7~jUDm=_3`tK3;eaCY<;sp4V}w*uK%a= zGsB6TRYkhdKN<-*HSvGoM=$Q#clYBx2(+<{k)xA?vA*@&Gg|`-XlQ0u0tSM&XFNR6 z1O)Wb#x|x-W(17voJ?Ka#(YJCmhUVjg{>$fZOF!#+ z2M4rSPxecREdm5^x2;uU7 ziPrM^4sT(VnGN_F#kbfhV{BxuFJ$XRpv3^Z#LCG^$HdOcM!>ww#aomA!Y|m_S>8JSGw$$@ zp}jy&$`+Rpwqv4-V1mrN*C6enUeWQeLea(=L8kPKGPY$&>eU+y9egw<7_|cZJJaG% zK<5O2K>0~q7`F}l$oq2pMgM_Ya2e!Fw}jL1qLzx^u<|PAo7+`3SpU*-23he3uN~oj-FD!gL3j_fuMc($5fJ3?Ox_gMEKG zx}y&^dulz?bmE1%ZQR4Y_y}`L&cy8YAjdP68y0~*~L{Q);`q+oOK%1F4iWNw--C; zTI44<=FM`EfP^pVFPm=QsKyfktISA%b=B^XdTj>ze64`m4D0adW9Cm6gRTt{g~Fm$ zOdDJCKk^Mx_;z@!9G#R6WE;No;EwhFh>IJ8gU#=Yon<2vCjd8}>Xgx3C!#d2H#L@& zG2_0|`lwD%3A{&~Z1Qas+R^Bed=Q8r@_6?O!TXxcaOjLiqlXyu;OCLHFK1q}R-^-Jx53f9h7J6& z(q5^-C+;!S*J%f9MJR?tU=@ap0iP_PB{h4$g1MwfIuut{&VSZ`RL+??p`N=OHHffa zAdMj8Fz4_onXHGN9tgSOMnwT!xfsI^>lv<8DcEWbXVxOu(ZX;JtWjS<^-F+3j}GoB zPIN)(K*|!=P;J_1!HDh`CrPqz%FyF#jemS$6U?AMW@z4y5SGC3B|psMti|tGILZXveIDWd+l@E4g{Ab# zj^vk0oLYSQo=d7oL-u?Yu{lM;=U@ggF2i<{hdu0Ugm3_OwN6FAwZRL2RqrkKpEx+n zKe^Pu)xkOb>dgOr2Y+kwUmTo?os;vwk?TNZuP&i|SD{3aWq$3~^aM%pd+= zJ|KQ)pFzlh1&1U8&B1`Yy65EO=AM~TVxD2ne?}Y(YFb|FP*%$Tu29ICRoH%Qgyzpx zA?ins{>YE_;w`_1ag3QCvQEwY0;a3`db-As|N64AGoTB9^>bt(xcBxR^Hh{)ef8su z*UZFuqDr#q(~td`tpT-0Mac}`)u^ftU%0gs;n(rIs`IB(m3t4aPNiquGu>CGwqIM9 zNol>Fs$|Z}Es16v;$b}n#pO80kEL4om5;wlH+m6&(OqSdy6a@_k@6-_?NYQKK0E=% z>TPAZ>5Rux;LhM~vA%6b!8cz^OBezKip z0u-cEm38_B!wUuTWHD|-*_&vw+xB76?14{3fhg0)AG2Bl(?ZtX8$KP5okdWWW9pE{ z#^sCA-=ln2#W-A>cz+fa>m_jNJ_ut``7S#{mL!-;EVgK+q^R8j_2f#$Hqcqtpr9Eu z4OCw{-6M}O(o3t=SKsyrNeT@@lJai9~!<-n%6?6{ZW}#tb`uso;!wrhEPA z09_}E_TK4XhcAYaSPS{06>%4YTQ0#NMQ30bWflU2wyb>fsu}dH_V)D*$b_AipPQon{ z+!?M0kM5VldCs4*h=;g9@%XvMe~FM0m>rdjh~!9OKz{ExEN`PiAnccGf;B`oGtYHo z|H3La(RcU>6`zXd7(Jjf<$cqpfa#~pv#4PsW$yQCBiPYS1!0sX>LE}Y1+&`t&e$N1 z&+R5un1~hCO!ExQv^o6?eDj$4PP{)nz$fjR)VZ`XNK}WEi}EoFuprhRuM*Tov9*X> zsd^OlxK$~R1ALaC{4uze=bBU!f?$p`p!O5DV<-}E86Ct=XmyT;+O`;@ZExLgEF5yXj1_or1IUxBmOMYX}qwnlggQC@QGvm$p8v!2D5@zM?UDd zzPJK-Xs=v#H}~A&J;nw(dDaLKPid?f&KDhom&ERy^-^z`jtvHn&Duf2AFMNhbSNDJ z!snD0W{T}~u%fEpGB0nRNNme79t_Q8rnixls^uMC8x;L^KBPrk4Ey(Z=^wdXV{!%8 z55Z0=c#pG9D;;__clVHA!FAiT=;=_X1X19+f78>%uD2~Rh_*8Z6yL!f@_0w_E6?_z zyN_I`eNmK2?i&KIf@QsD@Z=V<%IgcV<0xgEHu5FL|u|y`>NsBizUiy7U z=7M>9z73>&t1XCGqlMIkE-kwOEuD~Z^{~~6iLMHSLIl~OstXZx`%Q&$Xj5sT7lGk% zS*?=s*|!dW^SdPPT8>II7mw8dWPVlN!*3PbjGae6jE*Eo+LtrpnesR&52mNU$+bg< zv-);ZxtdRsK&=nVrXj;-;`c1TF*1oXj;Y!#w>)$uMj{%Yeo{n;9wtY*Qo~W<1u#ux z^`?g+sFH=oAX~MF!%!T1b?sIcLw{B_Wh5q3o$U%c)>kg#5d4*mF)4a&!u1k`hxf&5 zEQ0SxUPg6j?4G`iu>{PH`bs4w>@N`qdk+uR_gqVB{TGa7pb}q(T?UH#@9tVHB8mm?N_4&Kltf6ryK%MUg70Gep~qtNo6dC-NMaxD)o!+RmSC!5EV6SLkS- zrpidRI^#2be-$418{ zu_w5nRVk28>mOLZST{D#FA`I^47ap*6JDC3jn=jwp=MC6AMG}>_%Rtl%xg9-!twED7k7k%+4|&;t=UTy@*hmx+Q~bx-wUS}KWBni zTFDA2z|b**XFYnFEd=S7#M+%#B_u(rY?QY$qxBWnAYYQ)UnF|6OPAo|opwCOeVRJB z5JN7>w-0ys-hWCjCfoh;X)l7=g|9{&2~VkZ@b37lC2yyinH=@WeH|8$1ICWEWBfY| zyw5~S=9PW%AXK2Zl@-`>6wZ-DL$muH+Qv+u2nS-%<|;>>VeIr)${g&FONou|=Jt~F zTVgtNR3pWb!^UY6_F1Gv5C}XPz3Pw~h;npOt~IKwOz=+>-epANky5C#;S3d12%gB` zNKSeTTR?FEPj>r(fNHMriHTWN|2X?Y)wPY1bNNEHgj-$Q}QONvyFv!c&x^?5nCpflTVviWf3YEA`Llh>xKc+Eb~ra zl4VF&^s_%lEjyMFo8iAP5|(^s5v#e%HZ1sNcYvCy#;mBJo|CtC)=|#lmcOGR=2}Ke z%8^#jX>a6ZeLiF?z(kb@3a#E|N;&$AF7FwQQaWt{^)97{PigTLCa|K2q!TVMhjK3m zExrO5?hyxG>m=ZsS0KaAVntf7LZxR=*IK3L)7yg^M0K+yMI}gsu2XK~p}&4u%2K$j zI%A!#Bj~XLyBa}Cu=1*s&*u0{LDRuLvPvmJbMtKJJEt#9Y3m@FBO2BXNfesu@VCmvny3R(6#xjE^Jw>r7G4Pc~tI`Z)&F7h%@&eQd|(Z53~)HuG|Bf)?QQl&iS%@^l3s8mVy z6&-MV9++9(`^=<$@9}Jd(0_rQv10FE#_Qy?lQ{2evzojLy1zgA#0-(5yT4z~3_HFz zInCs$S=QtSB5%EF$Hx(bpwqJC)i#c^NO@8;f`P}SF&;Y)g}UG~?E=@dzeCvAzm~g3 zY~goL=)OgwGiF9a6ag54JHLN@Ph6-^_9s;SpVjw&E0yQ`U#IeKP5vvD=V1D+!vCve z{Y*#8R=W|&XG6C}GJW10B^7sFp$-hY4&j|H(q+$c<3$qrtSM+*XVK0{#1=*;_cn~FmhXXd$~wK5O8}tFeg{FAw{`x1oqms z)9TRs*t_58;npct#r60t;qC|C?xhd+%h|{25!a)==rn|1H~0YYwDR7w>!8Y)gwLP% zvR2^jR`{(R77}rPP99Gj_4z(tKRgV~=~k)PijNehV{D#riR6?k1nG#WQ*(S4*$b$t z*6m~I(BUsp;P~tjKCfLy5#gXA+-}M7QYW-SZC(r>WP=#MHm?9@#a6fT%MU|Rs*IJD zUi_{w?~*b1{kSHyVc_-Ra?*l7eg!L0D&oGi`2OyglTbo)HJoZt3xJ5{;zKN*q+-r79tKCMLmJkTx6^64LVu4OvutZERJ_ekCu zP>EThe`)tfiX@=O3HIgFj)!pQ>V_&IGUm-rVi2IHhh%Kw9M7?HPsn># zoM}+f3%m-uAvdv+EXxVa@lcRPnP5%%jF=Z#*9%#;)%yX-{|eR5EIUn|deT2P zH}g`~;!5?4n!$nF&(=+-c=Pi8^cmUuzGI8IRv)hnA#^4mGKTiK=`2swl--O@W3mck z%Ngl&R{doUUXKKQUU}JoZo+3Le~F)>aNtud;0H;A|H@Ty4vo;k~Kg@Ok_;n^0Ssc4Ngd%{j1aW6Uf+6(i zs+NgI0qdei&Cj>?>cK1xx1eE|9|TE(1kqlDd~N&F(C&!7I;B|*>mZ6e3ag-)u_$3m zn=X}v*-Ij3&ZdO|_2T(1n-?P@o!xTJ$=@d|MZ{RF)| zo{I)AXNVYKcEJ!FKYT6bzbN>r9_7S_IA?l*rmiHW6vjlCZSHy?;{ zIfzyw?(WxvjTMQCv7QmVq+7G;@2djpg>g!0o$M&~0_PRDJc2qLtObkwEEyL-5{Qt< z(L)aSaRo;DH{QWNcREldQwiRN)@xW zbXf#BZcXv-r=5|?FGe+V;f{(sR~th#Iw9>yK-}!FMtK9eZ~OV{ho5c<^FFg1)MccW z8rK2$EvP{QN9m#VXd&k1VU(7}PKBguK%_5(>n=ka%uG=?8N{IKztb6<)_;&-K2eBF zFKIbSi0~l%sPY*Ge#29k{8L0I(#jyKY3&Q9&rZ+IH2cr@9?^DPeqtD^A81&xj(S7$ zLsAaFB#;24Q@;S1^MM{l}@!an(0^hY_Vhc`!k_17r;99R+rogM=I|`az1x6H* z?lVS`HHz6=@28k#G zu5SBGxJAj#oGv@pA=VM{!Q&r~fe_sJMaAB;Y#!Mn($fF{Pxd9LljL? zSlc9molw*BuAFL~0JUwx$uS4ZKe!ih_FtSa+O_0)=WOIimgnZJ;94LO7BkjDM!Lp>{({rw#82^kAyj{n=?udy$p z+G4xUBkx93I@3~us(jhgH7^w?=+ls!sW6ewL}Xt#cax`jBz(mLbjQyDwCLI`A-QuB zu$NBmg%kBXs^#|)$2bu9;mTzZppHXqUMY;^w!fV8M|B$g9GzUW`)X!``ns@gTNXP^4_WtHgRn#LLKH(CZ5knTNaYo$w&3OLUhAy9Qz4RjSQo zCY^bmA!YlVSLT;!2aQ!qL0m1ZIXw}1=Cv%49+a<(U*Ee9O3o^3e3ScJ|6r6wO7&pp zoc`)W&U^v?W9wvVz&4uFE_`(*Vf=1{_vSHl^GE3>l25a^z`H)0_4PK&i}GCQ6@tmyl)wVk7@iSfhqxmdHu9$_9b z0@F{R`oaR@sJg1_3xVTCqZ5CroxEtU2rOma0>LK4u2lC9z+k?0)%2t)QDr`%G#oR} zyLnI{+20dst|fY>i_H%HRy*C)_M=g9Xj_j<<}78@Ua2Gi1MKVEn$!3# z^eY&ll?o`{N2Q}N!97rAbq={H!v6Ad%-I>3x@oDRX|GJHDqhox*4twG^+Aw_@@0N|S~7Zma|Ea)0tZvzQ>p zA?Zi(2&?ryzCl&(UvANeM!I!5_NfwRGA6;mU8ANFQ&8?uW)^0P1oAt`n;R&-7~>(R zJV~ksD^I)eT_A8~*sS|#A*TSjp)TPxMrkRh?S?|fIpsy_vnGQh+0>`)`~{yHr%A5W z<6m4!o~zcJL)tU1Vjd5?5RV-)tZ(mLe?f)R{|V23n{WF&v;KGTe3rL)yWdlJ|82?s zcay*0&0lJMn3>ssSLgg|o-gINItbTsq9*-R>}+Kl9_cfkCR3{T4cB3XYK@6gMAlud ztaP#Ev{N_c8Zm9AD|<;sid3e#JS8^B2qhAn&r87HV`i)KBkN0uY8mEZ)32wMx!0q>nD09B-#T;N~+iYcMb9uShRrmtnTVDMo(->!V4{^NPdY=*> zuhb(6%R+@OVqME_9Bt}8Y5ruJz}%~*kg_nhppaaJZH9qa;5@1;TCRhLR%vIsEeUN> zenn_8IM(M~N^Lg@kz8R#-iEP3y~ESQJo7SQ_0>M4-%_2ex7oj&Eo*z#7=6_KMHNTZ zVIOo4z@wAYpwxjQo9xVFs#agF_boistnL82&2Mk=#V%Pt<$|(^ zY>I4zo@_>!bsNPT{`W%IGm0eA1DP{^0}xw<{A{OWOZLC=Uq2k1{7FvX^ zeolF{T~mx{VG+VMujKTY(Y;PA+*Yt*k;j?WUC@5FES$3fg;`LWyrTTNMqtg>(j_}@ zp_;LV2_;)r=4TT71p4c z@wRKW%nY9FU}e!MMsYq26T5|*L<_%9%B4oPMmY@Yp3vf}&Q+krgP$akr0nP+ z-G5XMuL1{{c5oYddT3yE7>H?gE%_wlD?m4hal6^^nRqPkvT)kW?*byZ?#%S)yiUWv z8`(CN^f9l@8noVA)48{B#=6)mw{cACUj+VAUHdv;Sx#4s4C3Ie{9C}in%;62BgCQE>JPSk3j4O% zqN4>#q{E`4qtP4oqWh~K9HR&`X?*SVS+X6%U5h`si7kGOusLhIJe`^RpjXfHa@``) zB_nqSiSzsx`~lK7PAfTXxku=|0moG73)HOZmw{E|eCU@?btjXST5xw?UFe;mklm<* z{Krm^$%x87t9z>XTP}SG_eKt@>ze_&Isc>DJj5@Eg())E)awq-iKY4LmLSiH(sDg z!$hkwmus^M3e${+Dbia@w#i16?hy0i>8E~ArfW0@K5rr4Qg(GG27yLg-T;9ttd<4V zt0JNAAA90=u!aqMB3OB?GfuXP1#y&(wEsAnb^T?CP=PwUm^pEob;giR2<7o^`4C^| zdD65!7ga)CsDdZC@mAa8u9X*u@iz+1V zIUtL_QYlg!pAtlH?_=CvN3Eo`l@FinHMvky5@O8gWl(C9u>zx%X@EB!s70m~Ty^uG zbIE69N^&E`-H%-ughzp8O~ZbtHz-FMi_L9g$j^z2>x{>)&QL;)8H|yaXs{Yqq8cg%e}) zcFOWYtJ7CZdTM5A0Q#26a9C|~{RtAq^1@&?=7qmyf>A;X&N5=IR!p9n&CCa7+gyZB?OaltRcoJnB?LbX` z^h=Knykm=jO4>rlS-$d^ti}JT%+?-=w>jPCF5IP}*g;*9V_vW+Yuu)oIb=hFl(Mo#KR3j@rt~Y@$f5 zMaZ{I7T%c0MuW23%gQF2wAe8_*i0y68h(#M5{)vAP7j9xqiH0#A-%N~CEA)-|4gbm z?ozm&;xbEr7A7F9Wv}+Z{NUy!$B8-yy%0z2uWM|3I%>A>$!{8t4ZPlo=GL-SZqVkbhvT z9xug|DR%OuZW0!BmYjoEHtBpUy7YjG z@NA}v1Dxs+)A+oSV#)aam7h|qF&jd1yU0st)cF~q*b0l)scK9tiZcpSL^&D76h0&s zVN}|MJ$BmYdKg?;;@)Dt&M+u~L}=3@G<6TFsis#7_zM=0&N_8bR+@K4Mgs&@?bx&{ zSIWr{^5Z&+`UQO-%n>rrBn;ngzq?L?t~*fwlE~M5T){zQuKl$kze_aXqUsXf>5}+- zah$K2nx>eR;=6(MM~1b2)oD+sf+ekv5=KH*n;9Fv4aK^_WaJjAkuE3v(neUX@Z9{A zK&KI;m6b*bVaLM8ss#1}k4I#Ew6!YN6*3$FcIO9*cIwIjl)12!ljYeEM?!8ci7|?m zx{}CCo$vf6oNzTa?JC$UaYbX;5i{dTmdvYGjLOlh#Y^zCxS1>_9U0AaY`k23zdS%Y z?Yw;x36BS8DPn^@%D_mLKCJVa$Ypj$@@sbOfN{>dq#*~i8&f5+itmLwN1e&ceBWly zu#)7qbqQR2RCy3S)^qzHWj!6k+egeBw6rL=-^d%6irHP6bW1t9qm50Kz^-hj{^2RP zM8zJdnxS4(>4WsX?RQc>sS=$C98Ybc4u_@sPYwJ1aa*E|M*yq~(_xB8f#?%9YS3DR zjthSwW3!%stW1j@|JN&s7`mv~Kgk9Exgzr4nhXA|7W2QK3%)h^lU$Jb_qvV$MlNWJ zGlT@p1rZxyE#uc*I$H<2_G<(k2Cd(%_23dgv=*TuE+suZR^(7v1RYbU$Y6*r6Tybp z7Ni^<4XEj=c(3iLqQ5+CZc0Ut&vMPq6>ZSHxNfoW+m#u}j4kyI*lrGdd`X+Ba((^v zdOULg)B5mqbhq8h-($hx?)*H`C%3Q?&hARvkC2l;cWaCB+M=mtxn(?FWoB(;B{7UqO&h^&yS`~X5Jk#Y09cq@^ zyqm5;?c~s<_1F&oQ{ii&9OTrlVg^D5dBA`wFJ9o0PA)5Bw{;KmS-MVqB!aqaM3(RJ zORvl;%FF)#nIsckK4HW8LGO87mTB)Rwke2CnH2=0-YgBCAd46nWi5j zq>eVTR#!1!EoG}Gy~euJ7SA~r@Sk$9vkWQ~7+%vO`@yZO-FH*Fl`*Vs_$cZyY8;31 z-@Rwcw_i_@&vw@ELx=Ag5tQ>B^8d;%d|B@vDL2SEmta3v_W;sNB8CES5oDTl;Du#k znp?HVCDO8z|9Ebr6VZlz84V3L`qE5JE51D7!us*s-6WkH#_IWjZj)ad*uoufPq03m z6X*!}>(oHMdab95v}5HKJ;#1c#>mk<(}@srP1|oY#RVwXKx*e4-H&x2Ej8?!@4Tn)T2A#*9vnyx*mEbH?er($PbXVqF4ScHz%V@!X4P$RO zLNAJ9b%)%)3t(+9z~x4UqZ!{#{+h&6jat2)dtTP<21A2*(Ybc~!laweJX*i>;o~wh zv^k9(-A;LgJD3{5<`zyxyVWZn2P)PV#c~ZF21XBsG9geSd)D|nTAt;vX_S)vym3se z%zn;v{vSkyz`!BWOZbFkxmP!!UE%$$8-~%oTYpG1>`{UyWYUoV-TJ7mn=&@vnt1kg z;|dOD4-aJyO4mVbC&`s=PhR%nP8sVvo~V0sA&M*0#t83d8Qp8GzgWz=nVX-gOOZSu z`Ek)U-$4NOX@wF)ME&3ncj@}Npj*9*o66=o?M1xB*rp=9j+;PWJnAI~9B)bXyPBx= zaA7XBE5E4m*}@)vtE{ikkouT0*(!Z1e947YRt^%|@*E-9bDJWgGkXS11gVdE$3Eg{=E-H+4rM$mBAGkCkduCc=g8x1G z>;uvkO0g4JiqF2RDi2}g4PIUqn83 zcHNlYP~p=*3bL#B!}>ve-OmSkKl335G=c~rdg}|pM*>F$AqA8NnvX_8==q2k)Agmk zc%5GKY$a6BB4bi)HX{|`6zU?2i7PfEU(NGAmBc4iu}Ig8RI(_03J2sW%pqfG%WgMe z>eCVDPo83dC33nj@fPyPQlAPL>{XlNDX}%7ehhJLl-X)#C>Ye1AZ2`fG|sLgn&f5T zZorHTS;=J(53*rQHVm@icB98XWL+K4-tJJvzgM~bE-SjzlarQ@4919sNX5!ZYy`rN z1rkBW^>KpDP=aSa)Tw*R|AAHmw!?B`sKdj{EupNYCL-UaxDKz##zL=ObSdh*m+{y8 z#z&6r33pZaZ;r^7*eOZGY(g4&O-RRRoTDEn;IGwo8LIj+;f_2F*6V6_C2VvgB0=|! zl_x)+@fD!!v^4ZgmRLY40WjadiUFN`5G$Ar^pNPCA{y4+}B2a;01!$hdI4 zZscg`6m!Wj#V)CCj57c3ziV|u5uGAcL459JSFyvyPx2Ge=`vwUza;g9V4&h@Q2@Nz zKt!}w^aJ6~SXg|gA6=049G?!m4@iIB`tg$EYqe%*(D`-ljE+HVXuYI1LFu%BItQw< zTkkxceIicMLNEwz-_k@Vth>rSPD%q?#wch{Gu!nmqtdP}kRC>wlqXLkVnD#u6q-y< zuw?4zg?^t9ol>t7hn2ncdF;%%7?YXAt#8`;1zryxE9}0q*RJ^ed>D`Au4tY0mqiIK zSBVrtPt)R-OT>5>JT$LJrk_mA;vskj=ly5)DhlPsMI#atm<`Mrfl3-A0TDzy%KSx) z)W;L*3xUq}jM_-c_Usrp*?8{gBsk~0MXrOp>8Qi@@#o7&jZEU?f?*iP61Ip6(gEnS+v0Pk<0GSCSA#4xvDx>zM?&rdm$mzjML>O>&I`6R5T+xI?Q`am^JK zOFpGDA}IB`A@;9|kr0fQNXLsC=beb6BS%K{0?qvixj@-v8H-pidg(wyRSEyOE#O&I znHI&US=ce#{oD`U3nZ0I3}@N_6Ryiou>l#Xq3(L7SivSpzVm>MNqnd6+bKId;%ba4 zWW;7q-(kxgvZ&pW1MjWyXPZ0NG})u3Bi4Ku9DPP*l~Cihho(oECfShVm#>vQk^|*G zFAv5r;Nsc@Y|C74&;SmC1GQuTkW;1fJt%#`bClRj_8x|4G^R`TYkF;F;p;^b1o9kD zi%?*FoO6_+H>2wfP5-Z^bJLg<$oRuE2;RcM#Ec%jFe}eH|6F?y7kGc@6%=j8ND5r< zi_)1%7naoNkO)5MV)yovHRauh>{gYPV~{#%$FJ!)yG-7bA%X0+K|#GJZZ_l23=bb{ zwB=XyhDZ(<#opWe2<$Zr`dM9~qioZ?q=|YjUJnXIAy9#+?6tMkf2`C#zV#Wo<}=%B zvk*m9+tV>Rs)W&g<^yqJ{yK^DSzmwIu9yZ|Aih}v@2z3?M(d9U+&zSjHwI`^K}dpcULZ~7h8ZZ4sg{MgsZNDjTh`@H<6j6KD{ z@99s49mmT&Ny3>%SA{G>s$-RZAisPpKh>j>Cso?*IKISKSCA_s>$p}n*6|^p5`X$8 zUAd=vlZS5dG24it;X1F}18_I0J}2_F2verCWRV9jxk&o8D*cOkLN(0#gP-NdxdtQd!AIqLPUa5iUu3%C_?b4j;$i-mAJWlf zgSRgyzd0l}Ga5>Nh+Mzrwal&M>%scFUbsheBUt0=F_|r7yVqwX51Eg33ZM2=={Iz7 zqoi$bILNPE{!+~SP?d`Q_(VWe-pz;Hm!8s*rG4qz{WL;<3aG&+CN zo56N#mgUQszkAv*+~R-0e+Sne4%H55w%iO)% z_pgdoM_ckLSC_imo65^;hCU|st$kiU?f>OL`!i|NhVQF0v*|s9`kx-vSx>7Sbxfj7 z^F7YxZn|!X!8~iq@#sp`z)0SGU+~8H+pF*6t1E+_PQL%~NF}cJ{K}aWbmzXA2V-W| zPk4)vZEkTcZ_ibI*DxDh@2Oi^b6D=ato`|Ox(j=w(Bw0035DHFss7nH1s79;&XLDt z4tAkDjtzzZmHG;fq$@&KGUCQfgDAA;WGnL0Q;l2>;7qVf-i21MBKwceqnw@UHQl;s z#F=M1FRbOtT~Q1+9k{hPsO6n%n6q-r4A@}z)A|qH_lZbHp)seZxCOuZ7@DqyiE~Oe7meqcTr;Lg2?+P_KLZz#9KeXj?viS|UAqNP_8|DE6v0^N_oh`1U zMd(^kLmY169$lfivBYDy!}~vu`dHad&rEmQ*^oJZYpraIpVxiE)Oi|0X?hCvTFz$L z<0ERdjhrd$gS^Pe8#k2e75$^TE(*uwNQrZ5`uv2Ke$8hB?h@5ldFVUeOZYt3>nCyF z%cpOAWO*$i(e|RPRpM}PSfM?to*>T`*G@*#Q8-Lm*&TlB1Ib9BnKa>RWvSnYiFet{ zdq(@|6hEMQnaS7W?WFwKZL9WPWtE@pUATl4AZy z8q-*TR`?AHLAVQx1E*zzQ-tTDR&Jo4_i$dT?q%wj*Fwh>+Me#=*NJCo<(_HA-eVlY=7kW4zZe3K`c+B3?bo82~BDy^9N|2 z-7A+}^!GdJXS8@xvN;$b9x0W8sHK`NNp?BFFwxZ?^_l5-oASIl1s^tq+p#w{`cO2o znY-R9Ay!G8dCn-;D#0#HY0~4^W723A%_wdUUO0PX!@J|TJP8F+iXkJUB}+pu?t60T zrNaDKj3Vq#1|dQ^EVP+iI8fQj2m&@X+x8(wgqKZFhL4wRL3%9e)Sb6N8C=&Y1J)`bi)PsEVg`IP+< zcD>w~xzWW_MZWenvW=uiFxA*x+$8i^*1d2Z{0dPHacNx z9T?+uU$tkf!#N*Gkz&<9b)Xjq7g~LODZ2lbpkVKS_X=(7^6fVFsDTES>W+Np8WJmU zA-k*BUt*kq`B2nw>)wcz!X4~mp7tvOKIEM^ zliBJs9hHpMGRJcT$%NU-J*)KYqpb$!59Rs_Dqj%p=Xj*$lF?7b$`zXi)rDsdkUO*v zor8^Cz+RxA;iM9|v#Xz#ZesBd4g_YbuUW>v{FK-ppSdQ<58TDrJUE5!GphOR8oo8=y!o!&Z>cu>=VCpDs(n(6 z51S0?&m%gH4YK{K&FSy)Y%sH2meoX_m4K8A%VB%=i$0DoDvOl68pYNP*;G{m#29^=mL zP`b={xovFUVD~xyyGdtSamMAoX-3>5R1Deeg;PrmxU0prN~50Dmj^yCtlu$?rj!^H z%b}zvcQT?9sYCX?^jWK0ppm|tSUtX5OC^kY?_~`xd8hJj;UB94#p3)7r^m(}60H_g z7ZqC*j?+k*n_f&r4WHvntG<(g=+cZxx;k~yA!n&_p;%SwHq}>b4|MPBc;Ks2fdFME zlIWFvjs>mzXq^h&QXjIq9mrGbsjTqGSjjED{itX_?ADX}v21L@v+pt+?kAAtMlSNl zD%6$Uvgh+6?XIEl-G`kud=T{hv&|97!>_n>A}c~H zsX51U_R$)8ieb56%Bbx=K}dk~^r0q79^PlYMr#6JQLpfZPB_$3( z1#la= zNe^m`5;LyU^VjIlJY2%z0a}i9!k+Q>Yrcv- zUJlu2bQ{q}7tGpzYZ6RlL4$_1%ekRd7*LL@{A+n2J8AHJ>RI}#SZhv4E@H+Kw zH1p|R4ujEM%Tr&vcVi%7q7_`ie)Yw>MVI-*TZEY?sP>xC@mXc5vmaN^%nD5ZL8iwT zA*)GC8Z~blL8TfmPcxKFSxGUil_6wXIqe@9jH1wHh z`Dpvncf+`FraR?gJwctuaz`|bXN680ECb1hje<3gT^XZlOF_!Ar7E3bz%^^#5j!5t z!3=v;booK9J84E>izZn{%MG+!M$3CFrJXBf0sUvP{y6zF!4W6ekmG`>Ct3*9uU2td zP`vo=0q`;-Cdh|JnZ7qQNGxip(^2?#Y*zW+c0r0^M$s_&M9(?ab^~a^5DgiPjfcy} zFRm?xY#btAH0~t^VCF|MWp3}`TWQYaOy#Y3GC`JhNt1+s4q`Vi~W=|LP(L3>MZp-Tzw?7x3tJv}H($Z<4SxUL}d{aY2(Au4a z;ydNH7aRu73@1E@|2(9J2Mc?yTn|6Yd)*?I;Qx#&RhQCEM~SI6Gq>WUV^;htf%Mf3 zzuJq^(}^pJX5RQ>vkavNmhUb3&8pfB`i?9NE111O9df>=p(w$uW3gK5=9#z-8MgPR8^#_Fcu_>yT86FmyMfX75b@p)! z85wDR!rR3?BA;}%UX3JwXG{*D?g~o#cFT)eEla!m%CYY^qiX^tBb?YjEi143@T|h&96_tM{s4dT+)(KiTt3J7)93Bmcxm;Q<3$P0sB=)CLhF63 z$?RqNhpXNDB6eSwqW7&dlBL~K(_UHozTdP=!GfjkfRuBNX{J7;=k0#1giBP4$90kq z_AAwpmv7JM-_{?`>3U~d{!P!O-QVsr2v~Oq~#4xkyECK$EH0)40@qj2admU*{HkuT_-Re0)|`QF(W2b$)ob^6q`} zAI4@s&VE|`usC&%MLOWeT2p}Z_Y31WSs0kjo{rc{=*El2k3UgPvT@l{x`ZsWEH-&o z^eT%$n1c_?W1;JB_yk$Pv%PDn-cnW_{E`&-5x+Y8IbH1Cw|!HqX)YD^YoVz4yuJM+ zvK3FCm=!Z#iO%hOy}!%JF;lC-UC?uR@!1!}cRF4*33D=6UOQR5{jv}UsSum-*Quwj zlnoNPl+fNis=g~dCPoZ)_1V$avf8!PFABzXdqX=1AWxlTdy7TBIFYu+D;G+T3Y z%92*KY@*Y3lzHG&t09@#q2wNG{Upsfnmbyj9u4}Qs>;UF-;`nItDMx*nr2!)L7)CC znr8tc3!TiDRJ$k0c3@SqDnMp}`Q=R>_4-iv!6!MKBV(3T%VUKmWj#)!=Yt7t?XdP;m>T$g@HBG#~75rF0H<^*A#@+W*dzJoD!J zJoS?WsVf1~gM<6C#s`j(`a4y4r6#1uPxCW0_ZgN`Mn50t9Vm%`YFQ(~r!-r!;;#)= zb?b-24@3&}`5Ofc4n5~qIuIwzM<>tA^ZH_or?N%D<2f^_Ny>BhkXwrvx%2D=sV8&2 z455rdZ~Zs}@L}ep*KUftQXCNbT&THxfh$+Bg`PWzto}nEt$5ee;hM+AovEfn&FRMB zdA?ky*Bq`i&bKk0Ej2S@aXv`;F5CWg9gErMS3c@15f+kHMz~+%ioRU+u@p8DvZD^7 zTWPq^)FhPZNJhq(W#?cP6*iOGS6T;eU)TI#hGg{l&Uj+PUrLcdO3IPxn`N2j5I=K} z)f1+Dd;%;dw4gX8%6y1*eh;mDuu~%Y4BOSu9$_fXL6I(nxfQKo%kmIdKWyW3HU zXv#>hTunN-?3KY5sSRuaM&l?u4jmn+vr05kS?g_Xm7Zj^Z!=_<%R>0|)fYZ`pCbs1 z(fWE;TYIu$+3=oU1Fh>x$AUw_oe81mJb&aSA^P{U&@QGh>+$oCMs!Bfv1hA)I^CigZ9Y{dpE^Rt*P)%)FqX^|L4Hd3 z83cAllOsw#uE&bqx~h<59CB055HUg#I-Jl!QPyX?B;=4?bEX0KCy(CM9)0o9jeZEd zg}B6#sz9>^iz+!fZQZIsE-UF#*^!|$8L7SQF|?0qOnDOUyQnGiMC-32o4ybAdLHBO zlGI}fxGS7)@+LB6_tc{G?v?uRsa9$a=%ctc-F>p1q09Tf$;14(c5BRf2`eiMJG9Cv zRJl#|ljTke=H8I5(U4gzK=0+yoB#G1(Sn$>Ri+P?9wO zKQ;n@AA1~t9~%L{R|$!I2-UPa^C_M4W%#G`h($UbZ!d$Fe6&3=xW?r^T9!V=5;JUJ zfz{&T)9fT%Yud-;i(FB&!SRs&Mb^e@Cr)J0c8zmU6pVKDtxWuQ|Mi4M9V4b+>Hoqb~HX-7#afn8)RW{SREw~_3s!Ad2A)_ zj+sskZ#|bhcFN!}1Ys?h#5cG?K^?>W0-mBw@68*-f>Ugah^s4c4ZS(x5UEy`p z+7CIq`r3sUyD@YQCyJT;zZI3-z!>uR7oUph(lxw?o)Qy+MHKBRP>jz{sY6=GE9Mt_ zmSiW^73W;%EWe*0^U*rLI8&wg9K#erCL5|>;lN*XXfcss_@cb+>4ki?ZtPst7aLL4 zn*%nYbMN0BiD?&vGZe4L#1+Wj;^d^Nhy3)A2-=DxmMc3MS&g`RiDAtP^bIFe3TqIXiUi8o%)*LsVo@>csXgfH#VJ*vIbPhj*b3=KT~#5>|sgcCf>MI|nDti}hcjOQ4!k~+W{8G`qh zjHrEW-yP^rvG~mwk}E05#H{tOc+ZFAGR84})@3Zi$xgLn(<6K1j;E8tINsr8IrrKm zPWTwKf1B)Cx|G~E>%v}q=UxtM{S`@z2EW^CO%cr*lSmKBygu)kF7r>T;zjcZZS$Dg zMN9pRc~7U09dwEKnkSmc5N)C;p4S@UEX>&4XGDkl&LlG-fEln}xG}y?)^5GX`j;gi z41Ag8_bTiEbj=55&H69jli8kVYx6xBEEM){mV9}Jn)q~Cy2jv!TdPl+RY0J{=!MK}rvEhpUvaM~7&fNLT zsp_rC<%Kflxp&={`8GRo^74A|`EQyhMI$xLPxN-aO)_6pyu$gYb4{Vr#UkYvLPW|m z5x=0OR`1jJ#e8DI!>i(+$-%cuUWVV@W3PF5o!^h&`{mPJe|x&;^kOt8#V@e2w!FP3 zzgI3<4j*n`&Fgj9|0Jz>VqEykl7hZh$}fjfWB0z9s}UJq>&S%}3m6(rxUGKW9-wWi zxcRVK=Xg%^nL^)t+Cv#n_YRBtDGYf=e9nBIX?<_;+H$^5UQq>0v0%vA+K3YgN%48h z3m&^4k37#H2;Pl$lv_nI9Q<0`Hy-~uOhNYfp%HZX-RNFz0g9}eFm9)=U8OwxtfN1b zAC8rMu3}2o$3~y)dW12gNBHJ5&o^nyk9Su^qFH(EL%+uM(|&lq`?#W{*MRJ#wMM!E-u>q^7Q6>OZAVn_C^$Q#fv zk#x$s%lEKEg#i%?PpU^d%6WP}=pUz*>ZFhICDDx?)R2-tO0w%!RMN_cF)o)>!>EKVw$QMs#^shzNcmE$3k&HP52JII()DT;4_RA?SjtGScv2P| zuEt##@P6fVocZN(QTp(Y`}`x=lAb{nrd&xS@)!H@Eb z#H~x*j996$@_(3#Mm$9n+|_0}X5S&OevMT+M@_9dGo)#%K~-6lex!}EgRirMe*iYH zFBY1dUHpS&Qhl7{FUC(yO8GbAcL(iF0q^lMAGA8o8b~uqjNu?etA>DSG;|=uq?Qn3 zj!FnIksXAX0|P?zDmvTJQX;n}-cWUhLJ+^cTvK(1K@c16VoN4VHRqO6 zVp7cCP&N~2Lx^`J`XDU}0+7?%1wtH@Sfb=jP|+oTDXx)31RI!tCCWzr%FL&X2lznD z)(vLRghF6H=>{)hKR5B;H^fbN~L6QaJG&#}g0)h)l=A#m)xIISRHV9>n4Q)9+3F z;~UlQX)(5+EHzFk4nD-e7{tuKyT4sEJH?YBo9pqApwC=*d|T>4!AD~)s%Pm`Jm}l% zV?CE>>B#qJ(_x0G#qA?MqvVUTKD*V+?El>QV%OuONBbrP$-?GFIu-REz53v`#7Yv< zA5C&m=%R^wkvE&3X_4!z5%GX0|E+m*bW5??cZ>T)jv?966)IUgGTZ zI(>0G*p*8t^$Oz~&NO;g-UQi?ap`Y|G%xzH(fNFT6nN0iuA!ojv~T70?TQ1ku3Yw< zb#EU;E}%~aHj`;RTUsBE3#_M@J9jsqll1bP=B368rPnT%)KAKV+YO9$F68IbQ6L{( z_`v}sDD;;HkW5dR-}sBofx`PO_stm&jwZecdICb6=zfdp--#$rPMuVnF|-$%!fX(2 z%C?WbjQVtPALmZe<5_p~GEMUeX@c6dE5om1=yCEY9F8Mx`==i_J( z=p-;Wv4^{&`MGA%k2^ZSw6YbtD=OEh&|UMnd443X{YcsQD$PiS@Zlqzs*8VNHfsCo zW-}Kr@>ims6E@xi2#RQIppEF^2u?N-No6HvWhfGkh9VIt;E;zRkqS^K9145_2Le1` zz@Y?O!+}Fy8tkiR<4%B>Y&b_zqf^EZ3{(V*M#GR03>GE=g@e9!o6Qn$`&$$KfwrH{ zL{!Vo#uGxsLv&u-NQD8UAOMmPSb!XmG>}BajcWh`k#u4i00n^n4v=)P4cH!lfKUJq z=oW|oY$Q-egugisQh9S646!W|f!z2+g4fvp!~!T(1TH4_2Me|v!#}X#mml6>!7phk z(r(kyqk%)kZc0MtS!Z~cds?xc^n8UPu+A);R**`}p%fR9A&1bGJXZj-dFng-Sr`TCQ$ z;O9?m24EpUNMipehyMk9Bw7Su!5`w;zH0dg@er3mzv2Iv(gNTSRSc9GsA{0W0_QNf zjdG%o*C)o&>sQ)4^oF?(IPM;90^ElyITHUdJ%DL zBr)G9_FuNPA@*Nduubg$q@^%WteZ{*bU>SqYXdu|2B5e>2eri=8a z+6|}@aV)S5(u%;v7u3b`T|Z1sN1f-+rP>BI|lTxJRTbue$6x6Fo4rO zk;T9)K{QhU6R;fEP%)s6Xr4c320&y)4+WYahzZ0G;sr$neuBLCIgkES-G769BcA$q zI!lE0htB?9^K5|qCBJQ8VLt)<)IGrVwh7^{gusz-5jYA1-Kj~$d;X?mr3Yi=27NpEp)XIE!nbcnaJlZ(5!w-mPpu#J?BIB*UYi*iGVO$d%s+(1iV zFE<?(b>nJL3b_1@Yxa|o9S8-8MFE1|(Elnk@t;B8dZq612X$x0Z zC!Cc9C@xU|ilpf8DoNm4TuV{ez{brTsFsF_U?jmdTg$+aoPehU9>C5e8wwg5C=?oi!e4C5jz34jkERn51qC&+Q76$ z;WtqNHUymgGDGR#W(=T^;&ua!^e=HIdi$z=!$~Lr4#EjJ8k58VW%psewhs<{t!&LIL~I+0qcpfW7Eo;3F~c590Ex421y}w%f{37!(lS z?kK~epga4bVJJ8-Ic)2TM*cY-8Vkb!lfkxj7#Ie8qPD#Z1^crMgGK|B+V*z9hB|;G zww8hC;F4!Y8B7dVLToR?0@MA@G8h!xy>ELv7zPYMx0hkj*d088Lb2GL^g)5H0Ec(< z6~jP*Np9PC!14*c^S&@(N1vU2LBZ{$1&F%-paq6SV0Z8o3c~_7-f>?z0s-G4U*JIo z61$Us2qYT1gZDr?3>YqK!vRO4U^{UD!(n!oi6P){U^TX_uNVrB*ufVV3WWln`)+Lq z!vJjFfdhuZ0Q$Y79SVyEpTTbHi-w`mJLCpKBZ07eXFDw7&-=o#pw(|158%L`Wx(U0 zKWWB@?W6^R#e#;seLO4{^G9DX=uW+YVS%SjfAkd-L+mWWLZLhL9(YX!SRd`UFBVui z?Zk$KVlaP{!GNf2XI~f`vqN8CSQzS0S^&xYIi48i51QeB>H!u|tR1=r@BoGWgBApO zt4$N!EO1UXZkro%>f(HDK(7dRR~

w*P`^{x2`GffIbnVt>DASj5{z-?pIvcqv_T3fh+) z^{a<8@0xW?p$jws;ENIACCHl(&xyTO``$D@YO0D-|1~amX!g~c%=Uga6+gl6%Xwx z899e&G-Ocu4$pFyEpksA+%DS=7gJK*b5BB_<6qB*wpEO5a`;^&Oh6=3C~tco;^BnQ zsSMBQ27ntoIMq%i-sDG^2z^Qo`TB^jI^LdBA2i_v?4vtke`AhDK%ZP@CUhuwb0RuU z$6_T1${Fnt8;Np%%0$oe3^-vJuDFMUa_5wu=d{9g4c)b+Ed%AMtT!Ckf3)xEHxX@C zWmF1>N;}I%^hW8ZPk}vBZKOv#y**9YaCqjdDbYW_OoKNaQEINmC6NA{xk%*OIfZeN zk#HlNP%9zi>o(z2^QSaEoaLir%!b2b-reVPgpEnf|J_liuu_AS333|wh0o@P?lw|} z&VwzI(69+tdq-FI8zPY;eY)-z6Qcb|T$P^_M~#Q1dH623v);#sbC1o|nsDtN{M&(y zMAQ1hrZU@J%wzEP+{-M@ayZF6HdV6y2^uuQbDvM^X zWNkR~@e;YBja-`EYJutK!xZT=T}|1nB@X7t73&fOyt$3u?4=UslT2u92;Usga8X-+2#x;Mw89 z8G}idFjdCjy-gdcr!YLG5kt-QqQsNdOzCljS52Mi*mh=i(cyGnoN<#T;SC0^pGH(= z$TYIOEO_u;s4&qg!_i0+nWWFIUSh>-nc(pvbaVGcZNp8Ipu8OEnDCqESU)J zSD_9!;@i5@92)>Hj3Kuk2~gHoCNeuMTNUe?ha?%D-M)-?s!n3dOesgshjvTk3gZa> zJCDS+z*zjo?KnQPDeC4PU;IP2oIP&)SIX9dKrp`Q|0euy7fATJ8+^u!4#kpM*Z(#& z6j_~=apAULr?+6|PTWmu^PTTGLmyD9B<#li&xsj!O-Wr^Yj`ax`fc|byJ{5X`N}KqC*Xvt+CRXi@?dOuZ{_7VjAkPXwVpu&$6|(?Rr5r zLI}#se}db5>+{mF^7K&lQm*e@e8q`$q55zd=0|Cf77I-igE%{(ehtTn)LX>qqd~ER z=vk@;-?=OjWxX@)vPm@YBkLRUaG%eB&})KzlBKTRKi#iDHtr@d-}zMC968S zOV0bUIQ`HJx)l5HUKJO!y&zmdU5N^Gq2hsPjJnYNC9~IX;a<-BZa;?T#cQSrK|!|< zB=_%^{lOSlrf*xgcl?qP;>xX38Xgg&waBmq)2#Hx=`=?R8oAO*w9x)tiD^Rf*XPJ| za||4VQyifh@nDx@mXu>woMme6foJI{4m1qSGmC(tQbyOafM!#45=z`L{)#3dyV@sm zm7rTciPcetzt2ys@X{0F%6a_x{jRsD_nTQpedI>5KMNI3^fnlR&#JLv;Mv_RgJnpc zwrauIycLnqrsUZ63GNsbVlSD}<61 zXnl?p$nN^`0$Un~-@QKXK}|5Ajn|y z@R71t)(m|h6!-?AQ3>a|0M8d#dFQ%C8}_a0?_cpHXrxo~l zlsi9swJXA7j-kgSk%*cFBiu=~35*~8^V22#KD+lm@9Frb_3k95ILZRkNX57|dt;KM z4k7n{EPwnp^XjX^5YV~nzbb3#JsSSSd~Z`@@p&E3I}irnXavh&uhThMQ%W@6ZCENDv7UUMG2$Y&b9_?D-V|7*-4O-AOtR!HbgolCyO)?rupw_<$p5T`Gsn-QIE+v_eZp9ht4iGQ&lN=*>lRPRq@CxNhBT!LErT7U{IMIZ~e* z6?;E7s=_?K^O`5K9*@3=KzCJ#UdQ%d;<29OzCmw{6SMrvXeS#^a~ zGVO$6@Q2K0uTvGOy)!QCui}K%;AzoetIgbUu8jnX@?cg&u^XlFZILTNTtLY&F6uWu z`F0BmwQU}?A^LQ$--2+T_lZ`?^lWnRfhZW>wYlqa5iesbKcB?Pl2dR8`f2TpATdC(Tqb@JQwPwIpe8nuU~b45`I_DzoN8> zd@Rg0^cw-3rYpwX>W2l-xdvN=LXM}2Bqfn6>ymgbs|*Q0(Dnf0gN|^a=1%SL!~X}$ z68xp2Zzp^3DeM$Zro3K9i1_Mv(gBmc#`TMHDhE}7S1^u9miFJCHG&*_6-!ZX}dBE&X_?ph=?;!f~A0>9xLLctaoI-XFk*!!U{IK$10r+~({*1?;Wrz1F`_KfsB6td6*z_2rZ^diAe_JpB z=eUTF>v;QVA7Luv7tdJ?+`r}O?p7F=!~cZxSH!!gfqa_})ri zU=QmZMrLZy188&_5u-CJF(B5-b#~*~j&e zd{$Oj*^JfPgOTvWwp=0C9bz~Jh7p+TtUu0?{s-vDQEQS=a)*O)wR&@-mHpYe4D||y z4bhCcs&cQK;vx8g;aMe&dzE8+d<5m;M0XsJ#OHgWRca#+V&I-UABbwH#hqXDY)4{d zS_I*D#AB`{ECK^u6!U zcm#P$cBG^XTIvhz-fCL=4`-ioD?AahvnL7N?iHHvNx7jSc4sPshbA+WII`(xiqT2W zoirwNIN%0oNP6~ZxPl~~jc52&kevwMeE}T-i~6naaIZJ;_RU2Nu4625gM$mIKKe6L zNXNU?=v@j& zk%3a~dt|EfCtXV!=@52+X`heEx~FH5N^^uNEUc<~UV%3{V`F5W?l&nTC0B&V{oS_W zq!;BwExar^!K_PP16|YKne432o>TsKG!Fv*MTQd{qqX1)n?w?zD)De&L^~mYsuR?F zC5mVYP)L+>1?!{l_DGdLW#M5oPQR)=GCJtfpKgF(8NB)@gyxgS_H`QU?`&s_uVHm= zj~-CLz=jWpAD^G5V+)IlnmC7F6V7IPHh5t`>kp%FTJlbyvh`qV#A zSk6*?VV(9Iczh6lmUheZg@50wWtWFjUUkM1hdg7z9d=RH~T5do$cwNrS*ZV67^MrDrT^c6i=JqfNUB~ZtUa_|(&TW^B zd*P((F^unjB*8^NWk!k)Bu1>)olrX-)}$+uN`K$^DWg-Jy03elB-LHZevrt+aNe|HeDfm!uDr-k zXSpDzm&YR2LZ0A*dCU%=L|wn0+#k(7_3i-LXTp|Y)Su-1P5`Sa(WYg9h;^lO9f)J!y*&kf`G(Q8~IKjuC3 zR6lmy@)|>hmfQV_MM_TtdA$+uVd*iouBn=0Y^7l#=orGu3pcZ*jAY)r9 zi1FpYQ~DSv*&uKquv36rj6)2YQH8TTz8LFI&k^#laPctlF@wCeU)sNfYAx$TzG+rvG) z*#4@Gq+rkVSI1s#B8Al{a+mw`KS`_)Qh3M4Wu~I;hwalZa5o=XXQ2i*SnVhO^gQ)} zO=lSQCDOZPp^zK}f_XTwWl9gHSW#6%Pju(&XJvbhtxv{<9k|TgtE3^!3}Ca6_U0NW z2gH2@6ugHHv3{KHGC>6ZPDk;Ye zeyraCU6_b*k|nrBKpfzC9wruN&d7`GYf^NevcIhn;K|d^umXcOU>flduJmu`ZZe&( zC!)KxV+%b^yX&MtU-$74<2P-5?me3zw;4<{3#*Ic;i&j4`>LYZJ2^qMzVim;;K?p~ zA^FKMKMpZ$D@^xS;gbD*r?CAI_0965MbHVb(2n^QjG8uYs3AFjXPxL&$tyqJ;}+fe+FnmS78!QHYz4DYbv!MmrWbIa-xujRQ*U)uqpBZ z;g(5wxkMSN!`#*$$ezLXEmVML43)uo<6QFus6u)e$vwRo{GUb(MraBH3#bJHJYUD| ztvd0Z2hHsu+=E{MZpU{fOy%K>c0phr>mAMGPaYEJkc4iERJg}aq@(<}JWSl`98Hv= zrgxV@s|35?wNZYdc2Hhko|bzCw6a7)hAvyy$N`Hx>o)XFI+@k8icC%PkZJ74v|>wP z-2_wO{WvHMI|C6l>KLfNzv^pW;yS4!2(E?xj;eew(?0tIM(6;B6ceF>&j#TlR`qQv zm;-9`Pa~Df>j8`)eoebae0`0`V%J;ymyD{!0l4wyf= zZy<^Tfe+qT;tDy}XzBCU))2}0_T3vVu#Q zJ(LuR1m#xO^6+^$D@HM9z)lb8Bj07sX+h-H5fP1to|tyfNC^ys%xQ1r$~rVDRMvj0 z7*3s4-_Gk{;g@Y|s+|ou^|30RG|x;#=aaTT_>|sk$m#f;L`;VGto{$l>03t)#6uSu z=XlL;S$SV6p>)_|jHeii$1S}s;a@K74Yaefi_wg(vMdr)i~I*r44EM)(LF}9<>6jm zHBOH#)S6RYIpKniNA+iAWtEg5Bj4=mi&vXYst(c%B!r%X6P47SZDROiOIUzZTew_#$&*65< zD-$OJF^9ks=hZ`H@Q+|RO5Pvhv`umoV<2!UBkJWSMOAVaE<;j&|5ntb&S9vdDbL)s z$LC}McSd|lRAT>+3`E`D=aNx(5Ix$9~W2CcUJNn7$p&stZ8kN+~lfp3% zO?lx1{~3F>S-5`V$>*<$xlCSs{tpLYETau>#VAB*ELdRhl7}w*KPBy!g=-d1W|b!@ z4f0~v|JXqPMOJdlg7HlZb5DTi!5)k({9~jd6W4Rubg2J>?asD+`}~1P-zh{^O%5 zjN3%LK*EV_OBHyTCKuAWmT;s6S6>;K)b@&}jr)H+(42NoHLIraYE1%O{+FyAhOPgI}jSunn>tB3&0hlPj`dpI>Skyb~rGY?x&jM-iRTXSG;Z&gA7xDKo=?w z>dug1=mhW+mGCSgr#W}>A(pr?>Ah8l=pPAGmQl5OTChE|52)bZLb5c^iUCXW$&+%& z$4wmiHiagIdj)55QtRz17ov$2`M=v(#w<6!?SvH49=z)Xy_Bjkmo@NwXa|>f>5OteOf`cYc3Iv zB6WUGV%4i-?h``40<5)!e>^w9c@P>NX=}#mq2Xq$nA7p+;T+H^j2Ssax_FjGH1WC0 zP?xsvb}co(@nO5V);|Bu{b)FNs}MtTXlY8#&I2|H%C10HMB(A~RryKf zTV}5OzJ31eJEna($`zqMlkPVoZPUT*(zXqI<-boV@{~)?Nq5i3&D85E--Eel&ANb^F1Pc>v@uG9psZyc)V?{9;K*ovZa ziVo0|aHG8c5)bq9CJAPb87hK}^LlS=o{p1R14HuV@b8uDL-zEi+{=}8$l zoKCuu_$;cRJ>zho6sP%`Co#;dWv(DPY$pO3t7*C1%QhxfBh8GRRE!vJ+Jy;_G{4!u z9T$UPlyQ26xhBHyB&j$z6{tU^cix!7!y{R)AgsdiDF3#0TWQO|nkVfd7`vUf~kL zYexkRz@5R=Zt< z%`*6&fzRFCS5(LYfVL1bz(JB(XihUXw^UnxF$v$T5&b&s41w-Bg^{huEb0JbTSot2 z_tPZaLsQEL01M@1sNbmO4lVafn{(P4V2R8PwK;v$+$75xy19#`% zf$gY8e3&IJJgPT_uiMs$a`22cjD8iTADf%%2t62!fR;)1_V47e;OC%a_y@EFSfa~5 zt|Me~1ups@n=>-?S!ZFt4c_FU5A-{8+nnQeJaJs~)7Aie;iK&P4Spd~i+8_0F( zC$j6nqp22gfR`Rl=0!sle&`A3mGHykk$qHn9IwxQ?PtY9wnRy+TCa-;bgQgWZZD=VaGT?cMCOl7JJ1U{hU(=-ljR<@05uBCPtX-v#prget7Yxq>;Y@QzXuizd|o)|jR0=70ry1H=oti$syLye9~_`ZfEYp7+zv$`& zV(=_9)U^5^@qg*8j)dKMywxhx0@H7%4-Er1RQ!~3U4?kGeC<~9$;oz| zJl7q{27GD~#Rfb1U~%^D ztEs8syV7>Ru?9Ct?q`eYK#!qo+?(q#b3+nJASh$<^;w=Tj}KQa58N+He;Q+tg?aQWNa+%1%MQ?0$fSA~^lB zj8dzkxvrCEPUwRE`-cM5`!4hn37=X8cIo$Dq~bMz%b;FMp5_`J#= z_m!|Kh+p32!XAy`a0%KI{{369-%JKg8yS9k+%9n#0aXGwkQlMc+agbIfQtJL`4Eyk zExQOZ(7Fb{BmW|tKn`>1`2H?j$>$6bQo)~xZS-AtTF{tJuA?=Gbr!HlmMXmw1n9nR zN`%^JFemV}rXXP_#W)pVcrv3RLtbN#t{OMY;wzyEBaQp;)7~^PBoSF5&=@(M2QZK8 z*RLP;SS%>(*jf^$v4VIoXWXebSHC~-dcfSrzy`Dy<*yKC#0#lQ$n-l~GTza1K($Hb zD+H)EKTRrN8<<9aYPk zH95!DQ+*3?zf5fCIG*KGbcO8 zPP5<~L6hT1V)s37IE~O{7jj1ThYc5TqV``^zmE zeJ$ibexd~&xB{C`qTn=)Q0$7aUHFXV;z++YNH2=nnsMtsv^g*rc7>~HPT;d)AAu=lp5^{`u?Iiyb$zG`7F6e%G$OyEy-gyl8E-UhI_mSyLlJd(Iac z4rlF$zB^`NU~I(s=BSCey^$^a*WAF~=!lV_)w!XswM@=&#@Q`7G|t~fCdL=+*YDdS z&iTn(3jQ+ZoN5m!Cf}59gq^x6`Km@y8!mp0J}W{yqVJ`rm*4mjnOHf&b;e|0@op zuN-I$37*KdN={^3rNpK7NO8>C|BP{+stNtK9o7~*cKGli13RO0>vsXsCv`alYN#66 znXQ-D%lYD8CbyMoY>zZfr7a5SbqnbY8mRYoFLg1lKHY6lnl4eauW4T-$uf=9ZfR^- zH&@!weBtah=5PPnB>s54?VtOEmmZltZ{Do?2M+zce#2#35u=Ck2d2AaB&8UnoiT`h zmf9YZs>~*zz4#?enSeu6S^6~nG$acC(bp$`{c20C&S21}3U2)!WlG69qPFvebv<`# zC*IZQ?=XO~M1|G)h%>A5!--pk9zT8Z0HHQT>;-uOr^OmDlygXN{Qy8>P^YD(XTdm`;I7DJXLPBC<;{K-d{$r3T}58_P)kM99rpOT7?h&bNaPep9E}VFgtNLzQ(4e=(E_k zh)2G@QC=bZ{QN{BG2t7QdRk8}7Eho&qo?8+im2tNaNgr7$jW^qH)`>t9Becsm59qw zUV9J-St80o7nSnx3o}f_6Nk7vqgH1t&bs32ANLwIE=OIK`6RGnpSaQLS%0o9$}tg9~avm2wH4-C}=S-9`t0fBERUG!ROeMe&Zf9J$(H5r#B|WN98w) zi;HjG98s3`1pBA$fhWKHFbeDFGL8zlSCCBKv%D=Rt0~92fB*iO<-}@Gwqk?hH;XqM zIQ91atzwSeT~**Gs!=1a{b4YzTMPB6JpeiUsSGb?=`K76>#Fz1v2 z3bumt3keZSinlPcy#&O*EfTDdD2`N*i;YcWFW!o~wsr~jSIL9- z?Q2j?#fGSf930jHk1$j6NxvPZ{~WxT?|q`~1{zPV(_mDcL?9(6Qer}wOJ|>; zF0v>q;(-RoH+&Lk>M97UEGc;w5ak!wuZVD%GXaBGT1XW$Z3je^y^R0ZON&@{aHh}U z0#uEil0bFfBhN70M1sWTM`g!LY(gS}UrF2<`?VOMC5{qF$pMNJsxOBrf0%apHEdA*Y4jp3!Li*HycqQ_FB}6)D^^M&z?csb8l~JYioLX`jsnJ-YaEgXQu?c zKjsJO{<&efyW2`;Z`43bb4?d{^WjTx8)Q=>LtI4GuYcPxckUAK(#4q#B^rULa%%iU z1$92Veb3uXV0%9}WnlyG#0VS5WjdVz5@5lsf7pgupTs7ODBfY9Y1HoLS2;g?_Aw z{Tuu?wgK4^=CUvR{@Q87D+^|R*c^+34Q@Sn>4WW3Puu~)#sv!s_a{^~x~5{=W&D)x zT!Ls}w|-FmKo~C7z|71HTE-n59AYj$R7`n@xQIXogVg`-j$cLg)qcBxLeA(T|D|*Q zVKmKOtgzt}f~YGgCKi{Gkr5NKQ$d07;>C;7{cw->tXZ=@V$(H+6%ms2K` zJieD}Xgk&>is0Ciy$knEA6ax`H9lGx&hu$%a#TQgD$LSUQBhGZoyZJ`w^YFsq!z#agc^VKdato&jaS`r)dC#?@)R%Z4dI+>Z zQyAO5Y`2Bu!FN&q0L}buJ@3dRq_y$cBdS*3Q*AsrvKZyfPxa~1aoB3iwRRlEHj;wd z3DHedESB;J=Ro%q(WAFaIGCDzLYe!mlW+}PY|FWI5WU?UsMWa>ye{=GTo{gJ#*bpI z{;ny34a4!Dp?zL7Nn9X3P?8gy_RN#=`R#(SL6S$E?{Dk>K;7cYJ2N_wKx@B{$Yx7n@XY_ujpyc!la-tqFaLC~ns+ z|5WVJ=MV20oIsvF(CB5isI>`;^9pHbXn^!UlEWr~g1i!HlAo{IH;{_8^!~VElv3O8 zJugKgDI<$Wxpn&VX-+V?1wqz#KsB5^+5o0;_C$e~2Vb3vT{sG{s2uZP;izcUga!Ed zMT%NNkQ_z8ZVyRl+y;hj#}4FCG=g7|IBlXxa;^OB@Uq@Y}oPCF?;tRFnH zd)~hp->JcbWj_iD;RKa z%ZQF#pHv{bJv!UoF2G^cD(@Yc%F{NreMeA8vbM{;<5z|)1jx9eFURTs7Hv22)qT`h zg~PI%N+izxIkHxx;p=Z{qBLfuPmVw{O+zHsa+0%Ml$A{xb3H{i%$Z5~ zHR`2$nV!`17RC8Vh~%x@ircZiJ3D12Kk@C`xA!(F75Ym=Ci+Yg&*HI~lGVkElKm&A zt(q|sBRmPiiHLZb5+-ud5T_5jXkF*Oyl-=IPw*y_&i?weeYb_;QeSvd9(!wzQFa1} zKvqm7M=S4UO55qb7Qw|8C@AHO`k8#iglEsrC9PQ|tcFxXG0T`<5CUz*g+PY%Yf^FJ z-3g>ra6u^qJxR=I{v)o@PfUP#_wL<$8BbFoHxr&9Z7>jDPP|#aTNf#zvLTjr>*(_74LT@x_Oo4xnatcXx~FrantG zpl>o|+>}y8Ih{m3AR370j+VfTglQxTS+(z`!Vrvd$uyN+iJ)>}d_z4f2cQt!ZNVd%O`=cyTIe}QTXc20s zIxODAgSN$<2ij`I;kn{GfKk;iMe)SnP1Ws@kAifE6+5HDE zD>9oRe%@D7e&AYw?UWu){FV{tMY;1>X9`buh~vd&mHCOYJc>X3F(NyYi}>5j{!Uyz z1V8cnE-xGvnaQlj^=bQWYdDclDE7uEHswua@MMbp4Ty*a>Q+sO@*7zxJ&bLrlBA_l zQ=r^=b2ymoH3JD*i+D1;LwtqiUIp{bFa}^z}KGfAS{0JhNZ%M34whKh|rLB`@zJ{?fxn)0$(0n13D~ zCFKx85n%-B&To;i!9RR;H*T6U&2W6{SjsO(DChe4t!rm>kzP3MTl~D7!NOL9;~%0* z6(x5i-8jX|iM@ZjE+<{qM?o2~;#IGBxuxruCykgd&3xiVh7? z3(wBtm2k{(Ur9b?4Y`s(A9R)$&MB%8x}_Q+j&PhPDX2@8a|Wjk=9*7XzZX zWWC;{u*#j~#-4UdZ7FfoG$D*Y#-%w^i;c}nh}xTQ}X(Q1%X z%DU7)Vx=dI9o}CO%F(#BITgDCm9#{Nrw(;wuJl7icu~9u&(w~%+usv6|IZMbGV=+8 zDoN~X9Ms`z47Ty1R5QoT1dUSEkgq7Yd9#s|6_)e_>oR>j0Pty!Luy1A_C1krwl*Th z%%n`wft>9&`abZ6DB@wIz8k5FeszX!sI!Hf=&6YbbNBzQp49vO)jiuV{=P zqeB)~bp`z#)@qJ40A+SdrymK(zXteRENjv{xb@xn1PUiea=XAiN z-pOkOdEK3{79hWrxzjclj3Vs)?+t>|C64hEo&0qE>J~lx&m2JC=PnWJco&xHHqeEN z){N0jbA(+eYosi{0fCK5GiT4XwBZy2)D@WaUOy`VxhvSZyJybTQKPJ0vnGZUpO-c3 zvwQW~4&^TmwAW6Xwz06`oQrvT{mPhNT)0>M0P&75%TYgmd_c@xiIxH8LC89UQFLQuloe{KKU~ye3b}ci9K$BT_*T8SX z%Ng*OGj9rfhaD!ra%dF3@3@}ny#MJb0pk4t&E2h2%9=hZ_ z&C@jLpU`cEiXWye=3w{N{!2LHINdE%>%$G&W zn>N<}F^5ydICSZ6yHT_OZ@tnikOTmbkoMmQ3Y1G{^Mqm^cXIWlZ8Q|}K8mw{pN)exk0IY zZhD8}i8H+iHU_6wYOR4nMG&9>@-adzG7Kv-VA{1SO}$dFob2^z6t2ZW0{aLjiWBh?#c8Sl{=)$#e+`4Lz;I}R?p~#+y>A>r+~Q2;U>bjgZ5l49r~)g*%-hE1}gFUK@U)`h;72zZ{SrzeF%Ib&Hu+aV^VMHUJTp9r|k{JsM>Ul%EL z&G_C$0ohR{e32iOigmQN$2MYJ!c6aN5iyNS#l=R8`0W-E^TbI^$n!#j!R}9UQAod# zWYtF9)={;x7QTDfN)0<>7V`D$*Z1!a8I=g25JX{F#;BUe2#;C0Chm0|7)BxC0I7;B`EINJi@jXxdhWvX^@*~QVMh%AQNwr!i? zI-7y6hIr#592-aQal0Z+1~}sGjOh-)6tcuGc$vCs`ikQ61`^Jd|718+GA~@fnuY`H zaa>I;1S)a#G$1C8KHt+cbb=aV=98T`sV*}IgzAUbE#sKdlZLgdd~-~y7~-B&1;|~{ z8rjQVr46OI>tU366O?{dzEPBf>XsM9_mlGO)-ee^sNjj~EjaQ=5%uh3Ij zzQlcYjaU*b3cCfWrq7?_;*5=rn;IJUmoHx~zfn}Quwl7c>T-&6YS4QhzHoxPBt}k7 zhn042?vi9TC0dDw`mC8VlSd<}WVdGV9G(0UxSQd+w&=(dY$4t_@C$@tjx#!a+CTLg z4tK%Yy5mDgMWO}i)-vIeoy4{_FI@XG+?MFvC+p_LVpnGmzg1_nX`yDMCIV6(pTF7x z;e9N6ya4sod77fp8Tg71)fY@m5J||SxVC&w8aiQH09b@i(HFid_L?iNTID#VV{Zec zG;FEQfKim`(e5c?)xAk^6JbuDSD>^|;3y5sRPtVW3AS=d^wVl*=_pEW+jdM>0mW8? z&AAh=Pr{2tlmPKTnddJ*+_ejVR%8k&CJ0UZLgL38V_ss+xE?^Xt!S0VPMN#!?KCKm zLpJqQ=h{fAhPpN<;5pQeZs-^||2>L}rDLILRPB7l)Q_^ALMYYp^zxD$*fOb-tvLhX z;37Qoz>S{P)D_F{qlRk&5)#qT(PjnVJ3dC-{^%7(SvX+;38V1c zM8Z|XU$nsmEEsVCSM)=l(EkB|($&=!Vl#Jlcc^^CTvS$3SulS-6c1z6ChIr}mANg( zS_=`W*oLTa15SrR9X%@b#YI}XE^%4>>(|HikwiZY-+ZP6R2rU7gb;T`W%g6VcHyvv z`>Y>)N^>4D+SN4>ChtNDNTKYIT1aR+z+$m*vsuGYR7qEtZ7&lgj1oofgRpVcB#X27 zw6h*R@$|cG~Y5y)>x!>gg>=kK4S#l7;xv5bgn4#b%d zW@#!qSV4JoQvT-+!Ix>htA7fm^h@v!)ynPOzQIslkL5=_T{mx%E-281J34Cs?kQKD z_mkNM?=!HD7BAB6TfTB*D?vvf&Xc0mQumVy@2|O=5@ZfVhEZ7JCy?G(CMpzbc-VZ( ziN;~?=(t}0DKy9JT}%l9M+AtLLbJILOST<~yuz`Sm!V(ExH?Rf^~mQ0i?7pNe6OZz2Sg(?lQoG_V4F(F8p%vgpOj+rhw2S4?5*7S#LdXryaJ~%%3~g zdf)WvM}qS6p#D;B;AWtCO$1l$l#@2H$obd*FnF)DcoUa+W7se!g{9W_Tl|}>rIQ;G zw)9S&5#(*u*SzN{8@=Q$*KuK~8#V?`N&FxHmR+}hFx1DBlK4aCXQ;%z!Cd8)b!U;Bh3w{PGJbn;{R}~-{YI%Ja3yXOC0Gp~PK>Ymd4F#Keq9nu1>GJQ4|aMa4>XvrNPOU7Jbi-p zHi)L^#rSh5q<$#o&Zn__iaTEkRUGTerhcX=IeKt`|$9yu+vtXl@AB*4)8o&OKJ{6S+Vti^$qxE_W6<>bBHC#CLE~RKkj0I7#_sF4Ls~kt6 zQEu~Yl9$LxJ}5x!P7?Vr2J3K}w=~Va^EAk8^@q64nPY(FmJ>+1i_TjnN;kiMGd?=h z_^tJ29OlG*68r5VP6!ZjIj-l*jiwJr&)hT{7-jJ#1<*w@2C(E&OqBa8I7mc72?Wj$ zE{-CLld9_Jx6o=1*jdmFDQL1Z(p&fwcIM98ZbsWN9Cop``>juD$1e>B=G?T;E_7hH z0vY2Y{1Yvnh`IiyRTygmKH=%J*c~lu?Y&`v0`Yb4zlNzj3)<(#tY?`iIpqp{bG%4? z?j?J*&_Z`rf=ymU!h)g~L9Q-&FP1Hc6bzQ#_SZk}FE^8019yw|=XNq8-JSlSU%M*7 zVjG5DbnR4nz*ofT{16nS)TE{$W7YU-KtWJ{iS^l<)(4jrLeK1{_I!QYLEIiL6-#)j zi|$6x+wjqWaz3k~$4=mNoKAtdvZ%7ESkcF5ksVQD(dIZyb2GZHds|EQ?rDWbsjFbg zp#C!I;zyz4iOj}ng%jP;u?c$o8Cmb^KlF6ZS>_WrS2t37?`+>wj{vy31}@ ztm~y$)?jq^*86zr{n^=+?Mua{b#~uN!v{NC-@xVJc1P3GS*?km-+U+!>JQwUv;aEA zv?=Wh>FPOeD}Kmb1>Ps^LqNu$5OlPWs}Qv)tGJrk=$J|@LxBSr3#Jtt}Gjy?AgP4lPAUc~A_rjg+{e+KP-O)TJPzn8}t)poLDqAzYEu7z>>Bws zsjT9%(#2Zjwu;Sh{@6ESJA~-f&+kz-MCB((he@?(tp3w|`x%G6E2dg?Ra?5I2YFXZ z%%%B57hOrHYW(Ki9zRPokD;FM7}~G{0s=xpLV|;X{rt2}oH)^cGdWq>PeZ!-B-Fls z$7Bfhn~k3x*^=E#uy-!-SB>}CK|fD>$hY?no%H%CGujHHD^pKI38kmC$EzpaVY-y@ zk>?Zzt?J4jtjpKD7DHZ{Vn`d9p%fdm-)?8uA?4Nt(lM#sC%?Y7GO9n{Sl_gK`HE!v z`;o?#8gHUh(Z>Sif>hs!?wjOy)|~y=fNg0yv~1&@>|ptouJ%O(Gf0Mgmbbs*dwMEE zeP*l4FA+aq_RL4hXH{zZ1I!EOCUq~p_FS9({I62g^XdKF7Ik>CRCiOjmsV&6HpKPF zS$o^Y0zILf)3aP*6OW(O+MNEteSizhRks82-t1u1Y;?MF;Ml$9CLbMz1g7%KR8L&2SaeG|Wp!+7YNdxL!Te?_ zOSYlIyjSp0Y-sX*rIL&X~ff_0*l8*avg%k6kZnO>Vq%2ku!@7i4PM6T1L@SCS*)!z7xk*{BU%s95_ zyGDFRf)mpsrHq2xhS#(2Hm47u=Xq%5nunlm@6k=(zAVsZfv|_H9ZV`k4;J9Jb!R?` zTc{mJv39wrY390S)oj>QqAz_r@`18FV&@BU03Sz-ufJQkCFqsJZ2b0%^B8f0ix%oL zRXZM*l`Ws9Td?Mn#KqRCM)&L+4}Uk{WsnZfYB?!Yy959kyISLHOJ1-u?)JlkB*v z>IBYUuFP#;Rie$sGRJJe6O!F^7KS0(U8(5efq%NO+dPb;pWAhv?{_FGcun{8AjtnE z@dVrFi+djMuvXi^1fhMFHt1%0i{5-NPQlpOl^IDEqMN9GYJ9M*#w4PdLfLn58uVa8 zRa9W@F^!$Q1E-ClCO1+?pTHlx4Tv{tt~m1T4noxqjCfo{;$s1=3`Rryt?om9ZJr9w z@-4Op6Y}%)S8ra9+VZ;VHE~w^<4-CiQEITm*{5`ytWW{Md3Hd}yg9}*gUPG?-K$X= z--HE*Nf=5t9iaMouG(nsr0y56(ZF^|@>XTJ$IfmC%RP&n?j)H&Qg?j5e}arlac8}_ zgI_>nB|f$MAVM;7J680hf?K(}5xMn&mwbhMX`?b-K@%_G&PF=qN!DuKrW+_K=-hZK zUyL;?=hR(ssmhIGb>ZKAx%efIPF5yEO2v{&aO{b!TTormaaz5tuKBH>LRDu$da(*| z=duM>B}sdGGL2R*M+rMnYMZaOZkMg=E83UPA1_$vB4ej_O5VN|j=m3nRlh+(@6KuE*y>M@Cx;1&EevW@znZW zs(=atd3uS>N}~FHOW*TrGi+QC{kVIw1hho(jkG?MX`om_$M!66S{)7B?N)YV zo~p7}Cpl7U4MUqT{;uJ0m5YHS5{AxqnT}XKcAXGyP3hmF1eOyH9+c z3kIjvDO;PXxhWcMwt=>>D_NOX$CaxZDuhqIe{|%_H2OV~U#1@OEVi|z;O2lqzLNQ>Dhs6( zRR*7`kC~m_t7NRR!wS281~fQ*7xF;p`e_N*zy9D5P8 zt&Ms5s%TG>%%c-8yi5_2O>w|ZSS4d=FGG1`^9DdYChs} zafSaJ=rUr<-Zo|5JLzUtL_Aza8|?o`;Y(!%|IjK?N0bJW9k&S=X6oN;=WmrLNP(@4 zxJPvAgUp+pwyKv0`JwH2e9zX&!n?S}fcWO7>6u!5r2ROO&uxF_3yqB`X<|)VN)k$! zz4ruE;i#4#s;0C4<;6%pd{Puc=%pLp&h7I+Oy~ch?8@Vz?xKD@?F*h3sceV`~4oz2mD+VegA3|Y=V93!@~f6Wa4wXvAl5!5pntMhu_n3Utc?v zv%0OhxtH8#(gpvy=FgEU)4&sFVrk-J;q}dGQCk3shs|iJW%^COhRI6BtG25YlQ%LX zHG7_V+#JlCy$c+Wn8Y4{c-#AGZEKs8eDW6>2pcgSlfESwtm5SCf{?s+nO$(bJ&)vF z2jrZkesdJy zD3_M_GnCwTjR=J)?MLmK%OueuShGI_xUJh2g+?Uw9=Npe_)!LFN= zdHyns=1OWuYKzU*1-mPbR`zV(FD2<3i~jFRe{-poHptEPwvkqHSZ(KL4yDYqTvJGh*d+o+## z`oSSs4ZnV>az;hRQ`?rzUvrO8{>}Tk6FdKfJ z1uKFeLreLD3^;Zsz8hk#FOAC7IcQ&6Vi))RU|Xy0nLh|NR83B z7Yc4OA0vp?dzb9`kU2G%16++DiuX@$@P6!D<+1<{S~=sG=(f9dNCoS!3WiI?@jt^W zD{Rk2h3n2wxAmKQGXWgo7X$(>&BxvEz6OwtKdG9hS>d)ui1Z4IZ#W zPK_d8kZkDKUvAsq1XrSCCPH96qh(&1rFl;(Y`%Y!nWP+N;##wQ;aXRN11l8HfDOF; zH5)Aasf@($Gl71J(R`*@bK=PKGDTMPW|>`x`@7LapSsyR!JCDP9W4_9N;u1n%_@`T zruQXKS$T?oUiy)`eG!(1r6a9*d1K+n=e~c7l&>Y5@p_?!mYA)0qQW)&AgnKI0PY}WCB_fOE%x=ESmARimG!5co+F7E{SVL-aN zT#x+-RcV=COK*)bd0aT&+jKcz13_DyxVKIQ*BsX|=H2lYOx?xe9Lg?Bvhm?z<}Jab z3$FISNeKsmuLJohky@+6C7hT^o}*odF4H*~qiDnE9j<;%2jRYmnYN7KF!8V%0NHP4 zw=Y<7joc8Z8lu1B#GgUURxSbN?p@}51%n_mN5il55RW@!-zLuC@8jH;f8g$$C~%Ej z#RbR{eES*x(_AGFySd$;r4+o(@a9PJ9b94^!fu`j`!gil6>{bRxk28tgI=wQ5&J$S z+HJAB>R7?Qu@wM{1DK(TpUpviSgX5xIb6jKF>db zx5MZ6IUg1Avx|wD)rL&C0KeG#W55%zB5_3Z77fKp-S64h`r_dq}m z(uPg-DlUj?0TL*FE`f-(e*#Gd%q~3Vg8Gb9ZJ;-_9t6h+__4$5eh{zq7A{}{dV(2@ zPdXHnan~=R$Xq_Fe?-w&pK`IC>a%AKHFKed%ge*GS3rcn-8(x5C% zzo+WED^VUx{b2f*>6=5*qZ8fQ$Yf=|MO+YZ=)Lkf#NI^}5rDbBML#<2uJGckdVh=9 zMAN{Us={@;8d~&&N7y~Q^N_kOsp8XBN_?ZLxRqs7LoTkM znosoQs*Ey_nhtw3+}Dn?cLuIL$%@xt8}Mo%GNyZu+qbnj z4byZ$+LYnoCVRBzpC7b~Kp4r-mhw*wn=D0o$ z*HKvH6n#^j<~H8<_Jl8o>F*MCB?V3t5Q&zmreWJk zqks>1r9EXd`uwYioOr1Id@~AljEux_@2WfsDLv}h86Rl4BVIvz%B~Ua4MnU?1JvT| z?DTYXn4zwGkV0&#V-6*SlF7)cYVGdsZfi?tw6@}^{JO8wIflYija*f zmZ{EPgGtYv)zXoI}Ak-qAz<9ev3z%mk&R@&P~*o0N-;7?_wZ-$+rUQ z8+E$tr2C|j@I`b1NrlLbScAu)?w+?`-YPYk{=evBoExEacjrNLz(HKlK?b3}H=-JY z6D-C;e%L;`TG?;&wjkbg(7xbac>hq$bk09Sx5S6i0<04;!KqKx9$&7+7Q#LIPvmb<5KrY@qEM)y!Xw6fR4w)2%?o_C+9l#y-k$N z^C8exqh z*UBr?6CN)R^RpabK2a5G0FRp`dcj-55V;&6_VjkFC%3(WziDeZcwR(+L3>04@1H-F zV~&HYg)Di)|MHxfkzFNbB;?F_5x+D`NLe}HQ8J0$X;mdtS9Ij#8SNwEXTm$l6pq`5 z4P=8U1MZ@ZE6|uKKNKU|QY+gui54>d5xvLIkjoq8m-q>x*VC#PN}6{^wZf1!_`Nac zohZ;VaXblt69y^n1)i@4)WS%}Xsw3_C7Co{7J?~N6?)Od;Zs>I1wNz%E{WmL5S-)^ z+kOeh)T?dpP0lM_cjk`DtDWEQvbDvQTO85E8~z%Aow-bGss2joc~qQS>@bxb=(nG{ zZ4`s@BT$2_OA_;*KfjkWbpp|@D{n&IhN3`~%l8<P&3p*pU)NK)5K+25s( zy+SRvQ}35UxD77?p!U2wc_ajT|s#ii|yaQc3Cj`QFbVkU4?Tauc4j(MDhiT zzdYBjEHiolT!cc!K3CJ)T{L?>yIzk$6+pVWzt%oAzm#D)<2|T;y`;o*_6ro>;?PZNnqR$HP^*N=8f7)p!0eYq&wBfCRzx64z zO^LeUZ#h2wP_&w#3+*YDTN~))t(7N%;-|v_Ot+ zdKcUcj~nHMb`LX-9Nxv%R1t?ftF>~3(x7sd9T2yk-J$~)CUi!3_Q6EQzVDY89PLx= zvd*lN{M>n?yR=6o`qj&vcph+T$bp2NdK#uI*}I#}w*CsT;pyr_$o zy7;hWujKr9^k6$E?&=56B-s6L(;uIp{kp@HWYhyts#DF)nfYplX5UoTYdBF`>agoK z!9-S{k_iI#?t&Mx-L=H?W0^RG8=-gZWQ6Gb?YDl$35_u-PSew6Iwk&AX+7XMLdmPI zq@>+xB1=u!dYC{@x*%3u)?Sd9g}Mw=G5bVCPAT!1`KM)sXIzK-`$ZRODZKDD5}+xgFgoey!v+G70vj@zSfg?vqPOCWsCnJ`E1-<=(9NdWBNbo`)= ze15d=Tx+$jefb=0yDuGA8I!e>#865?-F8FYW&}IBxnGD^qFZG6rR6bR^B{Qf`;=e_ zh9zSL;$6Bu7cBh%@8FpT9$%@(aPxKR93$A`<)Mox1nC{g-wjwY6=@);KdR$inPhi8Lo~E)C>kZuF(RFY zehpGvL%MEHF*(YJJ|_u*Ss8NGl8R9tZoXHYGg2;uqfvhU(zxFzRu%dQ-^@^L!;pG{ zN2fB#-cm;=r0w2uL0;Nlo#AhDVGEGeN+qme44)wndl_b(WvH;i%WO;Y%H%_0?wPBO zx1qyx@A2_0q$XS5f8pV1Q+f=wcHXrbtmo0`*? z-b6zQ+Y4JKhOnB!_LUCuT@kvi&ww9PPW~K8+~k9>sdj&iv)mh_1*;t`@*}zTA_8h^ zYAoQXoQaCJ`eoUFj(jZB?W4-RYYu2;u^8I9_B7Ca(OeR+y6J~(XFRh47c>Qayo6CR z?L9NLL$tc!K4AG7$$2}^Po%tq_ozhNtU_ue+1F3OBc{D%kcww;r}P80`A<&lXY&Yx zuJ~e{c=$p_b0To}W#f*KTcG(XuIl~B>f<(;-N2B&eSlz@U-0bHm*f(6JuhmE z%7XNb%Wk=7vCo*Aw?)=aEAym^ID&iA--uG??>#)heih0Rs_xY`i~H7gTmeHG8JJyp zKd|LzWDc~|lCk>bx=$1(JWx?-Lhio2@w;^R7JRjz97D-WPmi9-j_0LB?UB3GGu|iD z!`QAHsL6l)%3o}8g1dQ)%Ptk7R1-Z_7kdHAQKrnQb>}*dtAVRwFeBSUp&0^+@d%Na ziUS!H=P?xd!%fLT3fDr8NwRH6)t6)0`A=Q!3W}m=*7L^k$OR#$6yLIpRg;PfbfFp} z!F%QEw~6;at%iz|4uXR*Zg?%qy02f3inzw>91-&FE@|k#FIN=@F+4i&#YTPaz_fv=vkw zVehLZT8i_#{P+>q)vT`O&oJ#rX;}cR+Sf*1t?5Z^VJ?mz<4?+c*_h;L4r_^UE;{}- zp@HTya)Z&M&JXpkT2#0|k3_FsDt50n8vI%(ZhUm3vdZF&``qU_2Oo=+z!|lbpJ?~B z(HcyfkqdjZ(_^$uoJ&CECZ@WpZN4NQS_(Cw+cq@qh8Ym@Fe#W6$8<-nKd4&ZJqc}} zA#EE+=B~mi7`G=N#9J@X)3PL2COIa9e+LKea7Mc^gRpC32t|XEK>86 z4KW6qz5`_a{O9qJ6G{4Zr>OtMMwrgKwqh!T>8TU>AT4h!08K(YQ zPmit56I*}x|IktOpitg0#|!`g<(2(_^~T?=i2vsOG_^|f;JV6fUYF-Sfij78<6F*^_{{kGU>3eaPE5IQ zLb6cBV`RR7)chVfv{4ZKDJz&!p{&h=&wSCD2NWxgy2$>iq#{c~V~qzG>E{cz#d2=s z9FmbZbKqnJ^W6iOLQIbDVC^Q%M!~9oCx(y+sG+}~Y1xRL^+Ws_)dap|Q&Q$g3u&xt z5B^Pv8Y%woKak+#T=*-UX!i%;Bf&IM+~uz&DG%1ItiH*7W1NyW8ZOc0`kI8Qwb3RP zNb31I4Kx?j1_WfPV*P_ifDozrzYGlun870V*BkTb4F!tBZ`dC?vV@jg($=#cm2rVX z&3t9P8BEM*8kr&x-@f~%S}6ZVkCi29>8Kg{?)p=4(+zsF<}vfka#Ke+kV(yGt(*fV zzx1|3CL3iICxUhesk?gLy^c+%hw#SBIgnh}F{K6{6*X&>8+B(PHjbVcr#*+O?k&Jo zrjb-{M+%|EQAfJT;jHvJ zaHPf%OzPU!ELuJTNz%(gCBWcqqdZDoYXH$X34Fk}kv{#p3W3(5Oh0-@vLigFYRgjH zS}t?d8%1Ttt16#wlzJmg4#kovtvhROH+UzawNU_gt*S&dB8Q*?P4nkRrz1p}(tqze zY>(7Mxe+0@zMkp!y8KEv;3e`#J_au+X#t6mzZzPo7?Cts=eOdg=9!E)f#{6$)RZ2$+ccQf=-A*0p~=uo$iOZh>U?M8kNqMoz00G52y(yw zgqsHPGXizHrbVmU?&Ac*8?$bpn6jMq#t%o7J!R5>wKJ_BLf7G7YO~btxz2M|TA$)t znL-;Zy@c1R`=~O+c>CfJx$Ys1ZrAP8W!RG-?bMJYL!wx(F$cn6%#C(hThsdsuwJCI zn-Haa;zX@o*8EP+co*t=V4!=tWWqoBk4^Voca6nkQc;T!n|1GJ>jV*P&eM85bEBX=okX@w$Gpza*mVBNAH?W6MM&<0d%j6T(kfK3jj@@cpoH_RY%Cpl{*fIJ=-6&tOxta*M?lVX;Dg8s|W`qKFiDxI_Bd|xGM{E zW&mn|DX+*9=omUl$V`Jbr#7>o^9Kt-;F=kJ;H2?MS)ixObjiu{jkQjI-bB@-@%OsC z9TKT5cAJenwd>R8w*IgD0H(s0As`mhaL-)KvMkvK(Ixi+xVMAfcBgXi*j4u}@p;`x z0Bh_z*6_XGg8gZp19ZXb9*xwiZB5C%J+Se6hw>=^coiA4%~jtr+Oe8L*;ZM&i_L>bUi11XxZG^pd2G zk4@=GkC1jP)8tm8vD6V|h8u*6AGQ(i)(5ULC7RVgZCJlDV()ZpUEUs`BMDG%TIIVH zqUMm4*>_%om~#G^MvxBufp1fjAfci<0$wOdVbwJ=4EDYc^ zby>D?L`APksrk$1{DtSkGcdV(y<}DEGaCf{G@e@*cxCkB`d%|pA~9qk48p9H1Mm!_ zNaycXC7`FyqD4yNo%XuF<$vK9M`9Gn{$?ZrfLQQggVz+M#K~ISQ*PfHpyZ6Yy{vJ( zxx=<;+j&r|`=VV4#&O-N^E{ydO}hOiRUHQTp;xjBnO&Xc{r!72@OF@?I!e5Gm$|0R zNtSQbn~pUMn{m}lEFKC7beD49D`{;x$8^}AJ8oXyl$eOUq3|q;k6pDS=gzx({e@1m5eZ!t@e=v#%elF!=lVQ(xc;z&!Qr;99 zaIm=7?{we6IWzaE0US`Hn0M6>;p%(iD>HQ|{^m{f`Mce!eR$13&5))MAv(bHkL!Fj zzX^PkF*(VieoObT>ys17jHWe)1{F_N!E#(Z>TME@Gc|~_U$Pwd-Rlqk=~&UfI6K~< zMl-zg1P*Z*!nCK+8EF<50yQd(DJ4N$t|%QFL%Eudavz2*;Fv8B1p^pSND4rKS~ z2nf@6{8YIHV{QM8ObH>4_HG1Ym0AOS0Zs_sp9i-$wR^z(r?I%sOI+}EtmpNzMxGCm z&Mjn`$r2_7#P~jL$XJt(Of!-W9i4DtU8Qx1P}^|z%*ZtS7;kpaPgis=obTO|QZsI9 zYU=-xYOaSst~i>{&QH{hjh91g@~XT$G4l923ka*e_nj(n7+;+9L|>ssAMGmJVqof35~iCeGY? z3JN1jeG-HzQ<*nV`>O^-A#o+JZp{D$h#pt=O{KJ1>qB;nIO1!IS^tKrLhH7n>?W16 zphmLC(m=YhKe?-#Z6mrp9p6Ev*XtkfIv=*33@UgmJ9ZN}*VSf^&Wy$vKjxXmMO;+j zdsdf%etlsO5z1`IkenI!Yfi&c*Bs!yl|!2#525PtZ`A3}wl7y66?pb|`PvnXM4{6p zAWrey%lD4p@r-AEWRY4Y`u$OBN?L4Ec+epaKKq1ovJu-B}}BGP9<^! zOX2PlS%2P@%8l1soUD^EIcn z|A(w+dCfF_;cutW8v=Yzu5KC7-v|lJ>+NU-(6gLP11-E6S(qPG{Z&wQ*DDtrZ6H4W z%F=a{-j~_N^Rxp9G}=VPUc6qQm@?1~`sP6afHK;AaGju}-}JNsiRVu)hXT+d2H{knfRgEM;2&y3AFI1R_n~9fqk^KherJ zFQGk;O^Lz30yyV^C%r2EgZ$I6Vl1`n`$G3gW zKV~}&&cTEh$f6bGJgEhTJ~ennB#(Z zI1a%3lR7u388USaS@80_jaFA|JN+Pfbz{g2-Rz%<)hF&r%$Cd$K9`CS&^J;JrG* z^N|hHkB>vjv}$`h{Dh6e2_VCHU(s}i+2G`o!Nu|)l>UiCtd;rqaIes$ihbIHhzgK# z{Oqk!dva8U%R&Mtj+m==mA?B%I9{;WoU8rnV=@?L7yCGmu~we_ijb4QQyrdEbYpSE zmrqW|UPUvaq^zJ7-UR2; z5}H)p#X6^3-()f+6;U7;T;O3fi3H1Z0a4bXbU!XZ2wv(9PAL}xTTp= zMa5UnaklL|1u6RUyiPDdapuyo*t3)f;XOylu}YxGIK7EK9Wl-3k!4?GXxMub0lkcr z?5QAs+qinQwLMBoTCh?Rct6)9fhqtQ;rm2g&t?(pJiKm%bY*WE z09fSuHLI_Pu`-YOhmKj1?nfSbK9@8(W0p#7KwVGU#|%qWA4M1cZ@aj&y}FMV&! z(>bNrtg@@Ontt@CZcgS&^1let*TY^I9KS1E9*2CM@f~oWR6J&1zsfUXvx)tWu&HU4 z2vCK<`}hF*MriO2>2++w8YMM-iqXF-$^A%Zwk~3{bZ1UE>COvo&SCT&wh7)!5OC3v zY^fc8ABMHwzRGKa$eTB3_oeE*lL|&Lbro4$?NEu2KaX0GY)ODXR*{NKsDVf46sI}9M~6>cYWk=7h`;igU1%ifN zUa9~0^Q#vtH+&4kNh0@j2~Lvmc2{)cw&Hh`mQ;n|1*6@DO#Ma{B5jkU%YTU3Bap2z z8hJvK|6yxbu3_3K2bcK}RgJ7@8pdyXL-w^pVzKU_J*tLW!&qo-{ZY0(bN)7UPQ1*a za+iw2UvlCs7f_m@RyzU)(wqI3&oOs|Cj$~bC__?JKY!n#uz}4YL6-yM*xvlW|D1J? zv5%7ft@3HU8428Exsq4vE3AQ2holqU+&H4~ni-L;1X2yLSS!ORbqE7MijHKwPQT9* ztxP>Q4o!5-f{QEmwE6YW6r&rxtCaqQagk>i4oh>f&4x2Uz^;3wdItaSLH~i(>#H)} z@}Ul?u?uN9z(9z_&h#7Y8TN#L({DKfmEQhi9O#mWxSf~R|D__%cLEaNz?ZhEXM9*+ zV$(Q*z2OPde0GgU*}GRbW`&&DsYKru9eV%%!3OI4B=;Lx4gW6nJt;ngs9U9Yfz7Ck z7J++Vz+3At4XNc$Cj!ojS!YXdPVu|Y4AJONP5G~1wnIw$Ch{JiXKw1k^}8KR4(5-N z;64cCC8b}*uVpN0Y>VcRPb@Nr6yQ1wbHDCz^c|1@ViS39+mlIjR4 z5~sNms%|DYlWM)4**a{uAr`=Um&Css69qK#kfbT~nbnG?n)zCtNg%hGe%hJjcvrX& zPrrGsEmBan=a3AWTfRCxm1&3ayF7PE_DeVMM61`=zke;&k~h85`~ka9M@3fl?VydZ zv_&G7^EDuGpSEE)xlbcfL%1uDFHKk9nOeU2p`82Uqi&pVD>_$#YbKZ%V1%PXVI^N{ z9@fD-kbLSJ*@t;EvLn$+H@q0BBk8oLxOytBy9kqZ2u)v=1FeSmEB;nu`^vQ)B6=(q zv*HHxa~RJCEJU5|uJ(L9^CK5?p>;owuK)SgZmJkjA`9k?4J= zeAukut%uiPo;1=axglJyBb-e>zZ9JDG&2(D64F5KP{s&FHzwrK{p!rfsz#Iaup%Lf zTc^+wws~DqhA_PfXts6HsYL##kn#_65c^<9v`F9u!XNl=B$X~6O&bHAxII}K3vo|B zzG1(j%`@uSi9=JH&D{OWbii>~mSp}pQkAJ7@QBHxzJ3YD(pdBZ&^z#yrGeRLKK2hp zcx~^Qz^8_rdSi+z>!5a*S1(nZ`yR_r;)wcjB9okvj>t+YLFm$jUH3V$#T`5iBRdjq z8gu1?4BWvHP;*!t4gACGT^OzC=<*kJn^^2Rbh`-8h!axx@kI+Zvy7R^(6BPY0+dJY zyEYMGT}RK()i&8K5SeX8dT}*|WZIEs`CmQXrvZaOatffw`AqC*a{?8r5F<4>&Wdbq zlS3CT_#u|e)agW@Qn5VUYmQE43cP7+LVNXR6CJTqn|qlx`uu~ukWTL4CkKP7!}7}68T!)5{lA4dulZ6YO5=ks>! zIEJ(C97oNZo^kuaM8&l(J<#c72hfieL6}+140F5&3KKX>HsdDEjOgMGCNtC|vky{h zlab05+g7dB=Rr*nH+XAGlA_UMa{;N_!Y+CQP+q{x3T8rH0}93^f3{FNyC7oml7PafS5}Vmso5q`pZ2bFW$eM%8@*V%=Q;7ISHv}M3<;H z)7T5ed&J$m889?c!+K=EXt6KELCUm2qcw;d45e7)>4*6EZ_%z<=b5u49yV`B9h)-t zzg*5xu=DYYU>~a9M|VCKUSbZ?Gn$2tWpJN@vGfoEur0|SUq@A}Cn>QH);E<2cklox zZo7Yd%l%D}l%Q3c5HRPQ-}e>tWI<>qR!l1H1146H2XJZKTnk^SZL{1rthSCkzXYZ$ z{??;&iPgXq0kh1l+NS6mCta^nxzU--Iu?z+R^$tTJnY)+ zyU=po*FQ#;RrkLse5fIjR=h*>3iw3te*j=YnD?Kqg%<-}R+lbym4v@}yE=}`&d;bD zQmV_oJOxONnPaQO69H{pqQNrR@%WA|5IsZgYL z`1SB3EixgN4rrp5??DS-l8HML;DW)hx$ zUj0z+>9Hcno>h}VmO1heFtaYN9J9zZh3}7o9n9thw2+R26+5Pqhuqn=uwfEwrH0!G zGjKUJnF+k*n-vXyM*oGQnIK}&1NR^g|A9@_5ga*`sgIj0&j($=eEACdd9*>BOg(*l zEEZc>SU5Q`u@(FY?%?4WTI$LB`t`|}pGy2+M;=GTP&*^!{pJngy7bNI8^HGuFvaE- za=b}d8Grrtm-)k6YsP({!%n#8;|0LlZ##bp09`-VAt9WK+G8diAf5z3?)uEbH1lwfUf0svzu z?61Z_D!j6osidpWV-4YuLP3@*WPUOj- z)a4$!(gOI^IVBu`%{g82hV9f6uvWdvv38vmXq&yB9IK|&BD;7qE-!OYPGPEdRH>_b zBUq;pwHPy#XCb5xm&$}SZ0p^Q6iA~Ecy;E4cAT`h%jz!coegEXc?-u;AeWO+M(SN6 zV#Re0-jE2H}TIpG;>xvz;`F(Ce#i2%b2PYHz9<1tbq8&_rLNpT*KM~PJ9$lUkC>)|Q z^MXv_E;4Ms>4tWAe~JO*+MQhw|6bL&A#pQ-_FXJH4XEr6)x$19fkGSM^I8F6(#i8z2<~3;8d3NUm-GI#f-+cfaQ!VNl_HTc$OP zD>A6ex&(!S`Ul%;!F0k+ME0O=PXJWyn^itX{#M={rH_`m;RJESwJ&pKYE%F$L!F4( z0&{kXlRzbB+5TxXE<;`XNnJ!#=_)s|@dM(UT>(`y3p5Kh>S@&m=(k{(eXW(RNRXm@ zppuk{C9ub%u3pw%^?21etIYro1Zlv^58f zpM?nT!0q*A;52Ak3D#MmYe?x`cGp|^YW+@3&}vhPnIE}aDQo#=bg%Rp*6kmUiZ zVmqSCE^Bf|{*DV&I{QWQJ^LSV@J127f~uu&TTvozpig-?j_}$AiG`bM*sPk>_OfU`j05ak zqVIvUT>4s$P9LW=>x06{0eOpON2P4|=HJq`GVS}XH@|3Do^#2PWT-jUe zx3ivK{(O54tt7-jrkrsKYLAPAH}lwqk~ohDcu$-fO``z?FJ`~*U-h>ftkAzcMf(N) z&7_`$u5x)!Wf$yCF~qoQML6-t3WMfJOo@=I2JYoz0I2uk)jxD@=E|=R`t`!xHZnf< z(8Y)lswMC+pm1IssaWgR%;4NKhXyWhP0Dp%?1Nupd+kPN>Kw5mjv@Edt z7r-CrEUcr`+|<<6&>#w01pAydH&19dn&5gA^k|1^e_iUV7^ec6*g8RNR^Ul6rburD z)&~@WnLUKI-q@x1BtzI->i0CV3Opf`N*Mn295r@B45uU%SoMWfrPz9s|7d zdvk{_u?THzA_bPBpT59HCe}NDo)o^eD`W&cTqAtk&)8r3|XY`}si3Efl%RNhXzRTZsCN4`ueK-a2wDkhXa`_9jP; zM`-NL(_Um-e|64@1q2p9?I6H#%QOD{dFvyx+mKef@Ym!@`KTFk^}D3SYk zl$aL*=P;-wlf>(CTbGL7EGLCDWxTuULRe@F6r&Tc>Uu&W@UkV%kSBJAI31{ES+qVV zyfL>hTQukBOFtr5tAy2SRkbB4Mg1MryGjIP&@5Ra3>MgD?w`n=B}xL_zlaEl@Tad; zcIB-lKuY=%MPy_C!Y#jz#RTSrg?c78y#JTgJQK@BD@(ru20B2~XO+WuLqSKr&$czP zU(n&jez|V^;5C0Kn_XEf?pN0n{dP1_X75_>{b^U5nMcPtm!sj;F%s{#Cbh#cJLH!~ zIe&1i9btTYx`53!?aAQ+l21NuSEaYJ-YgmBQrEfRl2!i|F`;4D7G2^X6SYRp_ewG5gqI)+K6n<)%9Hz{_qJGRw<7VmU%q{~@;!Zjq-gI9hna zpM4}VlXe!aNR^q4T60LWckZfhdLl8aR}CCDAVB~m9KGPa_1JefY=HKOE$w5x7n zk)wpd2CxXfB&i62qE!a9yHwP!Yb6ZU8H*!e9(w>1XZ>GiA5oa{tkY{L z*;VX=TpgLWGuBd-3vXme@MtKBj0&d@d1T;3Y+O#;Tu(h1!vS`DU>kZy&M$9TKrnYU zm~C6;;oep(%zAbe?qT zSvSkNOi`edfDw5)I-w%XwPHLZD>Q6qlA$b91A>XudSufMK(Sm4T!_yp=JQ$6%-)wb z)~{M;=Q**hS>>2emw8`{1fP+0!9Tah8S?!LFeV~_Ni z2l5B;|GjgU1n9sc3u?rx*65bR(R>@wM8Qanze-t-W}^`6Lp+~Dd70>|ZH(R7DWGevv;U3D`71XNuQvF`n& z0mVcwBOW}E$YNb=#4T6QEis3AOi{E##p8v!^xGmcZe^Z>`wTGvKwEZECCdDJm2O!;WF`(w$*t(bDMvN zHJV6}HR8lab6KZ@H|Z*S6%5Laxxq9%ZPva_7N@a{V>;(PUJngNujy@xb&^^(A3$w-VT1B;g)jcCl_+q)9c}Wr04bdGPBZW6SuZ1Bp~AN``)O#Of~-4>zA7 zia6%`#DJpYuez0NI#JN=f;8Pe^vo;}btdff?$9-sN?XwQOIuC&>hS*`sG% z0GPb;)Upn}ix3>RF{$JjDI;65E*-iPIC%g#-0?iy-r2l#{m^B4X|9U2 zNO|`LNQ;RqeesVcU=zgSqXU9@3-pV=Juv5S*DI<$Qd!U#8Q@%FB!}ZDvH)W7@AzH? zCXDr`I};;>T46G!q<{*+vPCSnnT>j2#RK;(ljufe<}-G>3n`Yr6gqc<QGIk__Fvk7{=B7(q%M7-?~V(Z4t!1!vSPPGc6U|7Cc|DaH!; zpS%^+N)KNgS9R5;tEw}`xt7k<{)DyC?v&2C$stM8SJ&zzgf(L%V8u7uCp6ZtU!QZ6 z*;e&(Z9wi#X76&pIh@62AN{ZgL+b)_ZZeM&Ve8Ut6ahq%lOJ8PBUB~7O!E#%QO9P2 z6^~9OW|{Gb!76KZEKqN_N<)keoIE=coo}2RLIM~Ov#-qU&8yyb0JLt@{r+LANnU** zRnx!j@sb%X9RQCJxL}rDMG0uP0S1&jTvVFQZJRm+8mji1_s?qj1Gd3|r5*X|zTAxd zy)y)~N)h*v5ia#wzYIPUz&elleTvOle7e)d5I5o-nH#SD7AT4{L#Br#e*Q9P_iEWJ z4Pg7;)nQ*>Ng+)T$xwGHe=~i==Ab%)uh4KMX79~ z0JOD%)s=If0+;`Nxx14XsThV=f#;>B={#n(mvQSE5N&-8@!sFLZQ+#||9rixWB-emrEMTIieeMbD=yO|KX8|nj~Z4hwIA1a=LRwR%z zp(gd_k)tOSM`d;#s2X$D0_3{c(#)zw9_AW`mm37Q#z|Awrs$=S*Ys{+HoX|)Xwy0B z4SIhfH`X81Bq;Rh4b=-W7#Q+-r^RYtaC_aT=$a+HcPPGij0gDl>htd;uM+i1CEc@y)+NZ zN8%z=@`{*2!{kM1hGr%XrmJ@AoRbtu5q6qe*C5i_{>TkY5K;pGj~RcQE~sevZn8}c z{Jj3x$4eZS)q|@hdG1g%jA+WtX8uG$3r*w<4D{^+%MX!*8gz{)ni!wteD9p7wS^Fw zl2Q<{^m{QPYDI+d7r+dTCg!BXnO{=6ZW{rrYDjJoY<4{5@jiY@KT8Ae%56)>ZXMwv zSYdy<3~=p@GcY+xIwFI3xgVTs(6^}B3A35PK7#QQ!TUYFxtWMJ!#n$KO!399X*qE6c_|-uB;3j0?W_GisF$wV zdkjOg@#z`qeZothGFD)sB6}f+2a%2G({J=K8hV;tk$jp5uP-mO{7WMw`A)AIJe=bP#}>2>_LPd^q?UCrSa5&w?GtRDTs<;=1t813XLcP!r=LtsDeSm?@$Ad zCUvL(>er8`kH$Tl7TCqvbRdHn`Y3>+A+ymI;C=V+2Hm#u+}nIn0dE`oCYMtlwNt0o zE(O_5u_>nJSoD{hao%bGg{}Z%7p*&mEzGt8;K{!gXrOH?nwjycwq9&jVS>U?A;gE zDXz_u-uj~u^;|v;ZDy$p+_iU>Ul@O+Q}l~MD_PlN%x=6A)d95p1AFGgdj)F_6emyc zR&HVz=k~!IG%Nl5Lm$}t9bWqAUl|q68Sf!02E=cktiL=aW;|0^lC%67UG~mWD-*rgV*c;!8j;isJlzZ7{QhII2fN^`ofhq^8!<(j{T%us$ua!bH_B7rH`@`Ut~6X@D?pN_JOB_xR(el@ z6ytKx&+Pi~y%gG)ulYnPXC&7NdqbS$onDDfw3WZ)`XG>cfU2Dg8fbH+y78;>#Vr8^ zRtmtHi2}gB^o06A$B{>ue+A1u5-7V4@TRvoqo50t+Z!LFp5nIZP(psqaAskm1ea%J z(y#d242}OTJ{=YcCHS0NDg5}9W>U(Hmt%MkJ501ck)GK5b9U>{5ol@pHVvS+!hD!u zsV8P(t(f>(+5H{+>kt3>TAe+3dclT#`c5lD+}8%l#4_Crz98~i-iBM0D{cwh&d+!E zfI=B711e3M%iivJRC?q}l}u0+6_~dhbZ`XWx1dQ&QOrp#~Ir(YDnqQNW_|ku** zHiNxFnJ7S7TnAoVF)tDU(&PtHZSJHl#3^^S>n#S#WJs#+Z2tb}r_pi_t8~zcI^dwG zg4$EbzYr{y?x_)}878((FD-sW@vwX1>5x!{ZWd+y>*cYkc8bgsTP z1<2Z(jLHLDeD&YQ18`ALg|$>lSeYEhC0!1TuG|&197A18y0DG^je`YuevQ|V)kw(y zvK7O9@wdU8zI5n9ls@cNrk$*1{3^sNSQv;j_DqbU8jRF@$A^XiWTJk}=D(R)7_)i~ z@C2YjoP8+fw+gXPT7PsB|B$p*{jXB9LRQH6?Ab-Xs&^n#isvsQn|J41gM?xE6kP8L z2vM4{=>tt7e(u8mqY&>r;WG8j*ws0$Vd>{U1DJJ-N|Rhjo%w5XV}gp4osHiIG$JM@ zw!w~^0ZgytYRVIDq2N_( z2&xK;RZ7av6pA-L*L!8=qL?$E&2s07!O3YMl&{f%vj7dh|em*;&1*-ui>+L@) zOpPPGFHu$PPyRDx_P2s>Zl(z?hA%>Okf|SlF43~R{|{wv9uIZ*{*T}7i=+)@Z$V|N zB)e%LMaULnNVc+OXDoBKpdu2~*h_xb%l zk2B|W&ULQ!c|ETb;k^DCt3p-C(ifKvZ@PWVe!lv?>?MF+sr^}t3I76ZNad;+B0eVp z`v0xbb(Yo>@3`a?(figeFCJOhp(fX9eh8mMuZ7l^{f;N5s_Z!ZcdyvbR_f0{AYvjsYcWENdiZ6 z&%us||4beTLzRp%37pq&DQLrQMJZ)jmUfSspF}+9T&?sF0c5L<%cQHd_&@b0P^_aX z#w&whF39>vyJwYXYtaTK@srGS9I7kZq>G0Molj_GhskO8Qrfb*x(>o?NypaeEk7s< zi6|4taa&nM+--c_Uu&w&9oWYEZ_C9y%i@HkU}@&3%mA7ShDk%Sq=5pqJblSG*z@ zRxq#R<7%z*7gZz`%>}46wc-aKH^tYke{ZHhx^)ceYn-9_mWAZOP;qsmi)%Z)g6s-~ zQD7O)BZb9q&b6nq>b&SAqfCGag+;t+4?8IS^Yr2bGHn6%dQ%xa`}SI|>zdb&wax7r z14MH8428SKx#X2{_b*ljeCyYSy!rEz&Z3Wg)~Oo|bx=+s)1yM*^t`5CbXQT}bLW5F zYyx?y?LdCkB6xSv<$*t{ct6N-((q$5UlGK%i{XxzXYJS0!(lIMt+blClYR7=ok4~; z)yH{|^XJuGBLW0~rO{bH8~(fH&QeBY#BTQPB)$B(y)=DH>gU%-8CpOLRuvl`%ut$< z0+?KW2;O^T0hNxdHmO$}?PDtlhF`x{R(7uuB-KLcs>0r!H4CG|5B0o-PH~i2mD zvS)o~WXl$!rQ!@|*+x=V@DRULEdbsFG_7`^bZ356u@8-PE;Xnnl~kB~B~7OXl9}j; zgVpC+m5CpFeE<9g{|YH9>te90JvcEt=`Ee7ex?_ZT#fCu!j7}>;_uT`KU)rvf`4qhl`+~Ch@Af)&+m4<(=s?+O|0A+!Df(*Q49G~R z)WGWxSuY1GHIB(_T|2qM&YFRZ>SRCQwBA|8to>5T1b{qpWckgY#;1BTI;@@~x z3dZQN2FMGIgzpDTDX-2#V}IVNFcfqmQZErfndgFd<-h$Jqx44)e1CZ_^5du2r$kX=K;2NCh33T4M{n3Qulg#Su z<92HZhc(^UfvSXUQnOZ-S%Z8wBX3V)j6BCff%6y%SB2^%$~}rZt?IXu+2n2oBv?>8 zcF@QLx-I@KB05>giuyGeK+BoLr~1z`g+b0$IhGiein%$@RH&v1<&IIHYzDsjUeIcq zZ7LV%VKT8Z-(t}m`^IqN#u|cACSW)pDLEdDumGL^D^&vf&mnqU61I+@<^=|xHJ-9N zW+HWUO@tdfpkT^Inek2)|8YX~1}!8bDce66Jl`YfFmT>|(`q@+7g}*(wHPcgcUP4- zJ(eOU<+8roN|wU553u^c985N-S*{qaDeJ`>FJi!4FkX>Wt@b$qZ>_Wx$Pzo8Ok0(fd=y$nkRA3hXLo?e4S58PUqphp!dvCqinMI?IX1puy`{eIg;0(f^V z%{#GfBwv4K{@AWxhbx2ykM(_ez4Z5FV#rjg*QYRPJ~uaywUb#Nk=>#e1iE8L{D}(r zlx0q-)fc1-4f`tKCsYDhNx-WFWzT2qteGiFDC2UF++){;g0Azj>k`2%L#t@=U+g1* zx0`C2;*We7Hh{F8TwU$00jPli4@H-mFrXclWv&x^1b94SU>Ms!bZ9!5`-9%w7lNJw zj5=%k`@uosB_+$pMVi1YQ_K4&7Ra0{V`L1T{ME-Z`uPP!g{cFe1>rJzcu%hIt#nBR z0}ur}|H9dZ_INMHkH2k-!7^+Rdw}EzIcma*-Pffqt>O5mihvgi=E4FL)NuJ=F7m<( zij5P@>eJ2L)Yc?de9exjo_*5ITV&(*WI+ojS0Z04y}JS*PYqht*k467c3VR99jh!; z8TJ|+-vRI@$$&Q)^cUPjCR#k6ujT=>Bh_42pxEnB3N(Of=9f)?(tCYb840Sy+U11-3XtA1+jxZ=b9xY4J!bBR!x@`H@;+X?$OoESwywjL)iuNBc%!yUWY zyVrmAl7)B0OS&RV&4jH2&{kKH%)+}ppe1TgrBeR+<`tYewb9SOju}%f*EhYEGtjD9 zeTG{yhuQ*k_gm$+fllgG2-@oDH@agUey*|8-ydTCkhBr+L5=1D!$DyeR3H~x0FTHD zEaoeFnyLjzC$%9L0i20W54d)bU?~rFh>r9_fM!vlY~CPX6>33M`>mXGR0LFr)51T_ zz7YVxnCOTf`ha)GOu2_Y*D}V`MfSni9|%gmA+0n<|6)75S9-=_mzyLO{MTBf5_a5* zB2g~mKoLb$nVk+KThTN0cj>50q$a(xWIE$S;a_dw`t@Bp!iu0;P1A$)*;k+)-05hO zwz%ig6sv}7OoP}64*0A6PGDH)ow}$tPPf_jI7PdtBXYea48t5(7>c8K)3O4<2^JqmIDY$ClQ4W z=RDTB@6_%AC|Px{X=LGonUni2;AO77M9?({hHIkYAa$m zG&-#Mz?=_jIq;Wp^JR6oucrz70qNsf0x4$nQL`QT3Jpv&S?vj2zd+$BwIDE`6xdkm zs9)MaV9vqr;y!ZnxZ=9`tjo;v+rBGrTP08Yk=-RA0L5IqJ`PNYuC)UEt-og6svKbB zfbW360}TEIUJDS?d;4}=1ML~C=8CxIQl3kRS~{FZ9B0<$bW=2e4e|Mt=`5S|&8lA$ zf%efW22mvwOyQdU-uIZ^FiqbX8;<}+j?bCe_rVCx>nIG&>klm*-ae$w>_*Kz6hj}D z`74Ys6LtJNAw9+jj9;C1VyEi{#`3@FDo`?(&?wOKAx3C?W>sa{Xtoo0!63N_9El`n zFz5Q+4lgiV(thJ=)hH7%=hD&}G?F{GS4OY)<;GoN;o;8;NpS!iIUvSzXKwmTr?6bh zi?CzB)X^2Ss(RzjW1wu;)3N?D^F?&diEn`BucU0nk=U;JcOxXqvaH8-XlzeEonmt> zpY_7_b7-q&IizB|3G{&7-3&-ue+8?SCf9(m-p)EILd6(@5gh`3USji!CT)oI5--4E zzvVmvaM%DGPDenjiMI>Agj94U+bBH6ZX zayZdz1^~j@LNlrq=n6ISkFDtxBKtv@*r`ZZIO^oJZNtXKlWRZ|F)R*r0!+-S(bt+K z{$&q$#R{oQuJCEENh$`HPQ0mfvPd<3<1ta@?-h5Ds=M}E#+4z>bxrhx$q>4L)xx)& zkd=n_FUaGE%ELqvwTJ1PfEVc?rK(~i?nbHK>urD@`B!-GjVLY)TLouwrqaqzP=8$) zKyaUfC>6H7vKjzYtlATQTw+f&7b>U;1trj_-xTN~wPf=56Q~GB@&o)my#LB}O8)BH_sWc-L07{ojP+}0Gb!ab z_1^U12H|#0t^pkWuxgvqB275G=}p1=5Dys4rizVB7r>!Vl|;ql*8pJt^UfVQRHUUk zez%{|v9sn=CuD~~s$?gfPJw!W$DLV)J2LJ#3BqsJfYjzr<0`;-yBb;F zhk|Fs8d{NPPSnTC+1l9gnru9&`LX>@wrP_HFujT1ZhX!A?{S$h3yOy2m+%|$nK8d8 z&P3;Se{Yj>A^;itLpA-Mo!Ez{foSL0RCgliB79WIgyi^a6t-tmza+%gKkqiKdHPVi zF#EDZdJGJg`uE>|g&n8Q^8i&n*3f`wLyGO7QE1?ch;ZfF);}?8$1lzp&vzsb|1)NP zR$5i9%)SJEVwFV0?J|hHvDT^pZJnVoq6r1IyR5&)*hhe#_z(cG?hvCZ73uVJiwFt5 zw&0KWicTV8|CtS=P2}ZRB@ubHNyD&X0c6vWiK^d1b+KP<0r~JxV$7;y4v*HX?He9s za};RL>)|dRN~@Xr%OF%C@NX3chW^bb@;>x6`HX-zSg-GV;ZE*5f70FR30w4zb#QJ_ z(vmK)6M$Z5*J5H$(B7%7fL*0__e+3hTWOp^j>}7dHP$I}FA3wLy^V}ydmge+8<+C%F>hiK);@q4ITWA`t<1OU-q=@wrO@Vz_3N1zPc*D z4-!L?@S$|RKK*WeP<;kHuD>#?(YOw_tJ%VL>8tX61cWbGrk7&x!$HTJ=<$9f^F%-5 zW%`uTl>|rm6b^Wj@is>I_n!GY&z8M*^usrB;!M?i1_ft=?jBHws;2YDa5KFGu@B(h zAcVbL0krS`xiM0?mEq_)*+76^dT_C0*M^H@tQ}KF8Ib8Y$#dn|p7$;}?+@P;$-?3( zdC|Ma>q=ppaf2|kcK-ZW`Ohbhu7S2QL?v-Yj{Kb|u;InCrJ#;W4fF@ArG;NJr*90q z=Vf(!V3xQ6P#yEWX#^q8HpP``vMV_`k&+&`SpNHrRzR?{K@P!r=$of~Nr{S}b*wBQn8+82kh55Ih5*L~3!N9Sn z?AEt+r}O_Rh8obimJeezM!1v`sgG9foE{W-wWA3-nlEs$jncHm1J+j1#t5Z7;|c@x z1b4U5Pw4bTfU=;@IKHt>6;QKyd7bt6&$s4vp51 z>6GH|OZVtqfR*fG zd>}2i!46?1Wv@<yTai%N@{bck2ItV*(+l{b!hDRX+cPV z0up^sZByy|H^YGBa>K@ArDWs2ii}<-0Rqd637b{2Iv-Uvp~BL!e10Kk#}gLHyib@9 zt|pyv$1@o^b>^)(k<{S&>eJ`a=QuVzou#g^oUwjYSv4@!;-xE444*DW9|d+Ys|k{< zkK>yRRoW>4`U2@z63uEL8R9M?2v=rmAMF1CIBfn)3^#lBEMT>k)nN6>Iwk_1j?X5^ zE3;GQE2s&HwgI(#TUKUC(=`@)lWTsD6$MOsh9!VW_3jR={~^uVYtrAn1vP&M!&c%) zVgTAt0`B_;onMyo9h}*|R|@7UGm%%c&6Y_Lq}!uq@?_R|8xQJ7&$%qO4w)8dl#QB4 zHOe?jQ@Zb4b1^%=b<{r+cecL0<8a}QLo?60V^2@K{%h0bqtEsnW7u`#5iu`vB2`^E z?&NhcvQIG35q~2y{s~OZ%e+xhXGKOHof@cie6Pm3?UT23*d) zi-+TlT5zwIGQRzHxjrg2H=+zaP8~U8sxxjl5W#gpNd5Kn@xjWzZ67sCnoc@|zE6+a zs_qlQ_Y}uy`oahzwC9VsqSvP>@_dQZ4sR-Wb42-lW?-00@tUhWx(GYz(FNa9sG;PGV7TO$rZ0)g5j`LMU` z<}LL{DW8-M$`gFEZ%t7MG&f4(JI_3;yTAEZb#X`r+Z?{;P0)Q5*#G@!uT8m*2G2G; zPLylsof<4=v*4~jt+Y>D_x__4zLqXn_GqRpz~dF)0|TgFzgtfPI!xSaQb-9<4aYuL zQGRn`dZ!+8;#zi_G$dBXb2MG~#2f85Jc#VCTh&$GYQsvGAIhmQlrbG;*OKJecDL!W zmdX{T+8iw|uGkxs`+T#)+V|Lf0^gXCp`^MpRdq+C-6iPg`m%a)5>fFAb8 zHcsNk?e|x1*WRo6P&aR%HtNe32f<=L#ieJIpm`6uJws>j8~Iksi7Ewf9mT5kwof0| z)cg5OTXnH56Z^OK^9M^yco_6#Uka&I=V=#|N1q2zNO`7D-Sfj>uc4YxtIYk%Jr)5C zCk|Z;cE||2VOBTzU{yFX^vc5aPzeLwR||`08<;Hu{JAcqI7saN9O07^;mh^Xrk1_FPy#iSH@Fhx(rq)*l`o)n!l|4?pl(US+h0g8 z`ACJ_0P%fqOD4Aby^JAUe(O)YyjFbOJ0MD3OofGZIFIlpftzcI7yl_?AuO@v7Fhks z=DHKkkaJ>i9feAPY;Z5l^vi8dVatJ0T135L4=*}^D-gC^dkx}sLHpIk7-e~CG~jN6 z-TCK+5CSf9k7^d55q72$U!}e<^aJ}ly7C0_?+|pqK>|vF`oh3*@BBG`C%dQS{6iBA zoM)Pc+KaAUd1xS>MbL*5k883sD)aeW(K1fl6~`8hwz-5oGakc9s_qk2jJmY8nP1do zYg?mmRICG9QlItq0GsdT>#?eu-jp*DnW)0#Vz%|A!q8^kQ)h-_xEI=6^O&3Y#xH)* z4cz?fki1xMiN$`{#l1Ce?_Fh?)D3k&-;W%YSO|ahbyl(Vvvx&!)0F;}j)V%n^|fB1 z?;Ez9`A(fhN!PSQJDD5rh^ulqbS;4g5#A%~4+L1ET7E9qlZeB*Af*FlXYk3nEdj4t zM5DfrDnLKi3fxZT|CVB5vLtEwZPH?_<&rzv5<_+^>s@BprB zPWaXDK6U7ntReMU>`3KPn(-wg3y$3hhNqhi7rn?ny&85jr(Ws+`bh8Y^)0%bJ{?rC zFh@3iQYN=d=~B)YPW{cY$CTRbu+u$X#4F!TNp!e~s61?I@T+9_G}d+mzhL1lu)a&#wy$YVm8M5=iK$FmxeF`< zPT_C=PW}vfsv1}!(Il0_l%NH;G5#Z`u*=DpS}`sb7!0@#?HR`ra*(X>mn0evyoqAB_ZK}wZKT-*3Hjb> z(7Z=%wLkQ!`CH-QvQKxAg&o1{MCORx%-MUr zms{JU#}gaabyzi7wcd`3x$<*8)X0~y<930hGkf9-ufm-Wqz{||bH5R|Pi%#>!H=wd z73>8&rUI50<rBwA9}T%-tg4IS;>#Pf&==2kQ={j-H<) z5d1mz&T;QGgq>vhWk>3}hJU$Kg z`Hyk77?pmHc&ndx@zxY#XDI1zmbUQKb*+ayC6i5=*(Bn7X>Q@|1;u8rhH2mbEa*Ef zVX#bB0WAIDNA0X3Z6D?y7n(nm={8Z=hmPLSTy%K-J~U@&oDncwGttrG{8+(%mP*p_ zNG$*!VQSguMxo+x>;jA6OJjfHR%K4)y&(TXKcByt>BZjZHq#^d=5bbc_n}X|pBvJB zdOD6x7WgO(>KS235j~3i%s+eVoYR=ExhtS64D#D7VCfHL)^D%f0I_uUcFmca)Gw4) zv#KWdkgaiSyubxuP*>23_XBRqQ3PYKP86INr1m630dF76C9Q9diR`i5HVc@O`zE2gzhNEo5N*BWkKi#L8#DzS_yV>Sa1Ml1eFa~N3aspUM~3zN@p<&bb5 z&1mKJVXWTb6{A;H_)mCFLG%DOtq|WOOgNQBJ!g(FwWzC?5ihtXY_v4=Fi^QPkvbAKr=}wg$D{A9U8`-A*KlzJ z!o|6F^3EV`ra8cD|8LY&k4#Y=yG7yxI|zR?p!zm7^=H7ku*RJ@B1bICC?4gLo;`P)flOsMG zzCeDL?3dZ6!ktN8KB-I<9@hW(1FvdaH+*nAOKtls>LVC5R#bgttJt*zBSKhDUx`OSG<&A;jp$)Z4CydurKj zYmm0KcOI7Z!a?v!Tj@+NB4ydfzSbmwC1wbe)Q=39fP`0Er-L4jA54Cv*4ldI`@8>xpng8E`f$e zi3<^Bs7|o^JtHl_Fm)A5PE27^`Kau9LMisDTJf=!gX*-%{8mN+Z}v&+bWe6+0hgeI z`s0+VyFje-Q&U~mihKiATqvc^?J&OLpg7`@Y#U)ygS=&X?O{|(`VwZOxL1RF^22>fyi0y=LgS-|BdtxQ7?JR2%gyhi5 zK=5+ufk!h2CEntEfiCon2o8MvA+#+9Nf__UbDip?kO=H&?))8F`Z$x1pWotv#`V`j zbDtPQ_NboLTQ+HIztYg|=O;GVAje7lvh*rjVaX&+5!=bCB>&S#!G)G;3W~ryAS9IOX%R4hsj1Yg%>} zWaxBRQO-UQ1$S%u;6ltkNheY*zb2LF6%0)NNI>P0RpF_x-&`#G!(X|qrT?~$-JDv0 z!Wh@g4yQ1=a&`^`1WyOe_;W#aC{M_V&PqQyzsK_BiOImUT@`lo1NR>_`gWxFV&^0g z*%5EXyDe0)GQ>=7E)oG%PpT-oOSH7${?9wmkHIJ^8*HknJk_=O( zsC2vYx1c2k-fiDCpkarLBwf^YC8z{z*u6UxbCl!j7Y$Aj^xEX!kJVFmU!J>MKiX?e73G@8N|rpJ z#=>M+aFo9C7NO4KN1LA=_;7< zhtGO~VIiD9O|>vKJlK*jHSCmzNOb`L#J>Yr2K5)sY`Og-ZJEPM#&#J(nD23XIRg>p zws47PDbMTAluxYbUL3ixXF_>$X{PSxFp*%H|L$HYCp{~4(zp)1_Mf&U|IP%ke(j?{ zxKbfgT7ynp^s5`=MO+i5jrzD~8;hcZHH#Bh(jwzMIcT!QP|4ZNPYjIu!(`jnkn6nu}~F!OEtoHQ{Il# zCYKhYG8iUw!?&uxI1qXRSovd!R(g75pSI?$v6)#Szvrv3=&6x~omqCdcN7{$DvCVH z^~M2Bd32aMNP_sK?CyUnqW*REN;gQ{Oq{jRc!BZ0$`7|hKMisJ&o`_5Eq1>$K)OV3 zpNkyRyf?Cy78_Lc{B$~n%{eKeO#+&7jTMqXi>ebJw^It)lHBCKx8UIjH+;{8J) z#c~w!NMcy|&3W>dVLPMQYZa^-lpc7eT1VNgZ3lQ8S$|Cq?L(i?%iBGI?MTzMly0*a z+egDLWrxk+412+&a7?z+!VZXUD^X=#LsSDN`uU|Ch5f zb+|`Xq7T>_zR!iTX&-=nir{FJP*kw;auC99k=7Z>-cF;h5r-n=)ozgZ~WQv z?WW?YOIqS@mMeGkXs$2!b@aUuHrj|dlrj}aF&!uu%B*^SF%IOr{_Wb;Q{c&ge_0LJZW4`57^d%VxN@W59wlw+w5LYPv&=6 zg3M*H4%Q--H(gUZU$MpDn~u7+L&EGo&v4K4ScTgR7mVP2HQMx8rQj8c@t1#la)s>P z^n`|6cz}>BX`XV-#l7+8+DZ7F9zG3^7l|Xd=k%7&92mdd^;C=fX4g?B`U9$sqMiUYm$x_JfAL`B16T zc6Qlq9ptPTcux^=a7dt{jl#EnK6!cX?%l_T6TCjq7=p!{9Tt8gFo-IIglimSP&E}A zUf~pu^}yCWX3WxaNk3f{=c|l=zb$oy;+vIzQtB4e@f5-9BuL0#(b{I;7-nwTnHiE5 z=qZAJ!nEL?L|c9@oO*Lr2OLGLIW+RuK zF`4{rv7s;zKD}38+i?upvd9>=FmS;Sl?qL=$s+3L*L!=#-dMlZ%5(wDH&~BFYBkx5 zsOX!)rU?iPmW4pt&SZn2BJ$`d-KzOOXJ`B6mDs$cDr?ZP2!3lXiE z!csE^DrsGPS=8D3m((jPtO+@7lcN4W97U?FZRdAe`3FhwmVfa>KdIcB)SK&FY{5~D z45oM=t7(hRvJ44^bAYazf2o29m2^yvQZF}3`l)46>G_nYcM4YcBcp?8@^+zb7)1AO zkpCdf^xU^1LY2*1w2Tsd3MZS&2UHV$8$dcVNfM7FPwV|W{6s^b7CSAc(@sGs zL77aXycE9{4iz{U53#of7?59ur-`pU718y^gc_x@*!(mWhr>~zFtm2tgC&%h;X5|r zC24_mfqaSU!U3DaHA-<(QlG+OEI~aXgtghs!SVMiw{DMB5;Y%Ma8=wxE8Gj8izA6} z2i-r3pnipolB}NL;yzXWd`b;D_0P+d{dx(NS57H-IeZZ~xI2kF5#Av2`*ZhV)_y@6 zPC%DHmfi2hhvGz-TyIAVC*XK?%Ri^zVo!#Q5y&n%H&192eNse%7Q2C$1DMM}l>me+ z|5B9Z2h#?x4dr_}eqY9P96)2erTAZ@>^*$`GiIybcKq;XdKUcz#Zyl^w_xIp9qu&F zsHUJvpxL#Fo*Fj+r3Jcm_&=8x%U^?LzSTgp;(nd*l>eXmvb6&t~PDtg}Q~`+9%G=E)^!2&n z?9A6nqeuNpuIsW|iX`txk69715JZ%i#-D0G5 zkH_mDHZqJbX9g+`Q!i+xlc(BlJvQXbvz;xDIL!*CjQsbpnWc+W)u4(j!|r!Kj-`Ss zU9z`sul?8dX+k)@p<5-w#kFI>8PYubtQUGUy>Y1N&8jPDCXhyaCwKf-kca0#%HY_V z60$<4Y^e<_^*{uTeZ%f8SwvZDH2;x{Q znOl-+UiTZE*m}SHGwe{Kfus;OD^rh0&&%fDN!t zB8)UE49;yP*_Gce%6+V!*Mfuo@Ic7zdUxiy>k;t7)X_iZb)5Ya$5hIr!ZB zE@d5-iAImoZX?{JBzV6FY_9PTKe2?}{$9521$t%Dv}zJ69iL?&?v|%zJ(UO zThPexXI%&fZUceEVj|-tzG6ICkt9oF@|If6kG=H*R4HpSid){8OSr%_rB?YhCzWes6l;4j7_dj?u46dIqM_W2=C?YQ zUpot5{bm7PI~t5Kr}jawZ#LG|;)sbWBIl|DfKxV(!h+GJZAe9*>KcPdGSlcn}HCq0i93~ z+StH*-Gr1e_TND{TY%Bd8>4tlTZJ&+V188l0ZsRsN2P9pf{K*XxUWN(1ElW-quh2Kt~dczZA#W-lN6i9|tkI-S5oQ z4)@%#B3NPqddwj;HCeGFkOjdnjWrynUND~+4AxFIFu$ZV1R_gq6G{1B1j}HyJy_H% zGLK1_g*PN5gxZnCf5?0iLG;Y~rjLu<(*6WOYPXsnydQu6>cc}^-+H}_D?B`8wO#$m zMi?%7lB-HO%m}$4d299WBXupBW1|c1tAdI=dJZ+>TQ2D|ltRzuKKuROzfR}2m@1tr zsX~hlb5~93=B5aOqv%_ng%U~IJXAqUtl2T{sG_F4+f;7`A(9M-TZEDE(Ix~VgPR{d z3~Q*A;qzARK<^(Z_{=A8G2J&vh?rP8x$lV}x|)#qy6k%G%5T5?Zu&Bmx#GUG-T3Y~ zeu{6lslA@p@MP&!ca=0#j0&7$=;*RtT~=LhAR;D|_1Z+DKZEOFer)R)NE0DS7|Y}5 z%3@V0F1-Z`==_TE#|KyB578i{?(8reYCyA_24w;F${)3iRN@3S@bBogRt7^);_tus*F9jweg@`&HsVxNTQbMb|;67}D zvTMd7>{b}W3I3tCI8rUi=`BjlpBX#z+aFeT3m~a&K(vcc|>5+xo zI>^>42D&spMbIPmUtkumjcvMJNoqzSB&Rk$*5k=(mXO6%o~UAvGFpU?*^AQdtC#`O zfDS{ApooyPOEZ+RlNsJUO@28YA}!ZIz&6ov6@9aDByQJpY2W_=l|f$tr|<#{_ThO6 ze0*As65OfJpGtmWH%cq$izXV)>=>#Ds(3`p7d~4>8e%2FD$p57A&3*MwB%~N078R1 z78k)BzgaKGg8<)WRF^eqThIY(_;$($;>fvRSBB4~g`13qDBrJViaU=r; zmyOy*z}CR$V6JkWGvQnUk78lhvpjr|f)$=I{b66B$9uynWs4_8pJXxPH`j^ib%5eL zY^v0WK(H5aiN@BDt%K#h^UbZ`hk6^+HPOiytj)B$U9PUq9z}iR;{^Q+)~NE!7Ds+B zFqM`N+dN_zBQL*!|A0+xqz)#_t#05OB?)SK#l3+fAkuPg7l#%JnhmPwN1EPcGSgv8^ynQ#`M@vk<)EmS!Igk_ zyKDj6G>q%)-^wSRA~=A|S%N&-)pf9tvM+NC44D;IpD$sUj*AEjf?)L2CJi*@^9@To z(b6NMQ^ksHB}`WVx~SDm7(rFNP&!BbOH+K8P6|GQpb?gDOT-!_k%qoCy)c~foEUl_ zm9NPl=Y4W%Gbq)|xnSN9`8=uJs;(W~<`A*b5MZmw!P(_S(1y!;3cKQ9!P$W^vKKt? zkM@d|$b1_KhtVu2Czn2VL;iRTlpYn);+v?$J>9AT6xeAyFGW|}ixu2tW%%#OJ^hZMO(l5jhWy46EU+xT-(|9;C5vC*E9pL$_Z!vZ+Y}wG0LlpxNt$@_XpAZ)yj=hW z!tVETR|>ehB#*&+N=zX47vDUFEG*{H3eT7gq@P!tG>hGZAO1*pSbw6bcGG>yM_Z6A z$?9{+%#`*QVMV^!qs&wHUdS=G!!g|kI4^tlnDYU%CXLghU$fb`qALoWTWH%^Gx-tD zLE@!en)U7YoKI@+)aPTRmMK|s)(A!0$P2vL*8LS77;hHZr)0T=?R)Xby<$CZ{M)m3~Cj z6~n3WY$HQ^Z|8|6mfZ12bgwB6QSI>b7x%EpRJX;DIgV1325tCSnoMn1z9O9#IekRH z@LDBzWpNvdHX|HW8!A0lh#>ZK+_6l}i;6){yMM~ty|>LH3xfk~B5v3C6i3J>2;_Oijx&T9 z_HpI-ysI{nw0(3AlIbMmfA`_IT!HK5kMnBD-j1#_E{IC02)->JxR&D&CTeHf za&i0$*xZ@(=|~}f29>bX#4@JyKYQUVqjH*>h4bnOsBp)T7$LE|r8mUPEUDrI)fi-2 z9O+VnVSszaXIZ50F07DQQXhvcrqEAmjt!k^wID{4MEI%3fc)x?M!T`$TV)qrxH>1) z5(=Vc36H&EY_zt5;APP7U^gRF5=Q8KR3G8k%mWH8rZqt`qn*#qN^UV4$n{q~GwPii z2!0{QXT&vA2(+xo$=hA8MUy*rlW*vXGX;W5X5i+W)qKl0r%QtXzwftGcZ z(1hac@MdS6eWqv5z9?tTu4-L^$YH$PaY18X(3*Q4E*$6oQ3EflC{=o0Yq9@%nx7GI z*qNKl=Bo8{M^C|&QyE#tUK`Y9eBtOeQ_Y7Qa*n30fu*3xQYMM3#5xyesVlm{rt#RO zv0=44HeD6@hzrfv-NBv7!vlbC4Y10xZdENH{f3>sqFOn`gyEvx`4m=p>xG_C!PuuN zHj5*_+}r`)r>Jj=DMNEg86J6CQ)`q}V97n6(C}QUA2QEQf1JYiEUnDbzT=f_ad#MiB=ow}cK~oM^)^!sfOy(Kj$4c) zPXVOXE!sdGY#|)rwCh)LUh9ZCf?G!^tGB_>f$ItiKFX*2Osotvu9vB4ZN4rmv;1jk z$jZ$JU2^)7riifh@R5Iz#bOMD)8WUdhj7^;@szQ)njNKXLWJos5Z`oqgO3=F<8&_x z3TZP$*qjD-Ok3KZDUprFeQ2&g2v=zR4L~1c&Q1@V4`PHTm1E{rP1;pYpTv4*CLvM< z;{j{8^W1lON^X67+OYASXrsm!j8knVf8BsmnbP_26Ylr;RimaWNW60lI$ht+E-b|| zC8ZKQ$A*12&!i$!dq2SO35=rjm^);D#?(0JBAe_I@Eb}Yeg0hj+i!GAG_WgG6(0mw ze1c|@j>r&}Dz$2E_W`wL8_}gS@JVmXF_fXyOIhA$GX_$`4t9juNO`>9MRTtLXy<*} zk{tgo=fzHtTNV#GCNA6#`)2Qc$)BLAbcC;ucg}w(tWm@u9!}Pn^0Z5Bp$;^dM{@2? zXnn&a5?kT*43aS%J>O?lvG=TjH+EuwRw01MoRfi%0~Fu$pwK8;JGb3jfDm$7?)yJu zSFDu9Z*-rpksf13Ntes?+re?vk@6Ec8_E+79Gd!xc_DbC9Fo5j^#ai>?( zbL;1r?>2MS6+OPdaREMS`AK=07G9F@diwoR6|%kaD=wk|6o!Msr40gZ@`NWK7nTE$ zSJ4IPw%k{%=DEsV6384I))*gFeCy{hZC&$xl}Bp;mq8pI5UsaN}`_b4!*{*M?es> zlHa3)vRCVBw+iHB3>Jj-NF9~KHV`)X{Juy*F_A;p@*GF!U!grZf{Y;fn1n#Xr(8wV zioxfd;uJ|`)9s@dIL)1pycF+=9nc3+Q~P7-y)km*&JqVF0i?=Mfg*|5_GoYZcFyh_ z;wDemP7Q1^vXrIfiST)gI}jEXq-R0i7z*$$d3!*m z^1nAPFV>(-mABld4NBZqJGUKp<(!#hNq!&g?=t+tP&B9eQ8~9773UM%OPz`dvN)FA z=g`5#v?Tg>R)967@3RZgtnGGVUvltCgSJMc1x}9(^Pblqq~0(pcn%;aod6+BjFu^y z_#OzdSJd>;&x|O)Ob)bUVHoW?T?Xj-2*e@hXvVz&9NFRRT|sG#dgxwhVOu8z9@S_g zt(B^Fc zDeztj)%L$29Gz!NZClnG2vy@Mb~30~x>C}NLwh?UGu3!6RZkORIp?b@y<*5-g^Cd~ z@zY@t7uwuGiV@6fksKR9L!bh_UK8Bok)t=Q(Vb^vZT$dDw`SsXY0&%%}D zpy}<3;-OVXv?W7LcEnZFLGnE(AXir#G#J!DEy(wE@Fgu)W-gakmml^FrUSPJRQtby z2mci+0Px6SPE{#($<7lJ$z%)73PSVZ?9&Qa$Daq3(zgqVKj3IC1%e_4q+kq%16 zk5afKqgzWRO%H(jR><}dHIW#ETp6wHW3-|R>l-`6Tcwr@?b`-A)Yw661+)-QV7b_@ z?;*l$qaoR#9*S+Ge#E~o#9RpOst~8nfwP;fZsB&D@aju0q*TSWc-b$OP-jKBd))1s z4^pGX(vDMx%D}^-5n>^3CT%;Yd&VQt}BdvMEMDbL|J{cKjNck((rgK|GJ^uYVd*huC%77 zjG*{VcFFN)rGMoaVQD!2 zRrHdUqd2F-_CE+RT2HitduJSS|<7l)Q1B-)y+Ad+?UB01~zO#NG zK%V?hkw@fF$#?}rtqP93y3Qx-NFM;4TdA!7Ow0f%c!+tlln%S$JE^<(pXKfP-^Y8p z>9imOz-a-r|Bu^^5OW>4geqKi{sn*bn>T?tZ#7Mq1QCN$I-ur%ewI?6Q~r{hSvBWBI# z{&3L3Y1)NDK!ll~bePlsylY%8l`>}_f&i!;*U&%QwSpdi^*(XcV2jql{b}9jxw{)w zx2Z!5CQ|bD{6X65BMN73?n7hzTBI6&f%EOX#27I8(2dzYFe{&2V_@$aX?VCod7wyU7`?SI+;?KjTkD=b%io?Cv?+<=0`{N#trH$)q??ZQP+Yx2|hu5LdPLkz+l#+?@>N(=~zg3jB z>5#3|A^H5lYl)(NFhYo0wva;cr}X^N|6#MhF91dp<&v4l^uI*`QA=`YG#5b-T@Cuj z|9D`%9NE?WI3rjF9cTAHogQYrAm=)OH)@?`Y?k}O{T{<-x-gWccthON{=-_2|Nxmw(>D?IIV&eQ0Ls zKuPi+-i|~15rKjo>X;A2gg-CKR_JC$f06?Khwu7Q9QinfOU}8s^A7?RVnT>1Kl;>i zXvzPN*T9iB_k?gs3%*pv`zHq@5bfQ@2Gl61M)A_4f;Cw2Z@e;x1f#r;x6G8lc?0scaT-%m4PJ+9;gy8NTBzPdf-QC^Yg1ZF| zF2P-byF($tJ-EAlMeft?dmrgBdVIh7{z>KBb9U{sYwsm<%{4=Rsk!-A_x?|F?)~T^ z+m?dX3F@Z3Bqg&lZR3XCQ zsSdb@Yad*`N|HVAci^>W3i6-X$#}ho)>0W@Y zMx%STTG4kn&GPvd*E-apsE93icNX1%?)hc^-be6fK0vj^kD|yA$PMvodudo!2^76} zC3#4>w5HX}KUU&zr2jt)kuc0gR|klSVC(Q4Uw*j*9%tZuCoJBp1G}^Tqw%Rx2FgeP zU17s|(r-**atWAn&!7=Hy*!1|c@Li8U0{y>8%uVdhAt>y7nf%H^01q~0JooQ*ok5< z_!ipf><&^v`B20(hnI&Po_A&lHr=VP`;FPEKtlT#9P}hfFm~{)?Rjb6D1@>)il`s~m;sp2&G#?-yrhYTz@`QTyZ+x8*4#!M z2>>MC{l=~V-^PTNyBPjUd-BgUkoau+E=9tp;GgL^2Kk>zC`5IV_uw>ZJ0SrEm7I6! zOK>CqP;&S?;Aha50JVRc5znO zA}BwqAt0}_==_Jc%D=!{|Dplmk4MKi{j*t1q~`Qqeo-62KF598=$$Q9t4rr~yF6TM()#WR z4h4tBVZD-B+~41io%$?*(tO+j>lZ8Whd>FCDT(c=&s@D{Cg`)u&WDG8 zsuOKkf3CHFJ&cH+hXm5XGSac&g2)VSl45aA)oJRn371Fn&awe8U7p#MU;xv>yg49-BIW z!O}sG z!O$0Z9X1cWyk-|C<-m9Ix^<0y@pr@9+Z#7)DR}NDdNEAkRGj&|*HUmhm^=8L7p7fnOc(-+3;pKF~Y+|Am7y%veAH0-U4peMyVFKedHTQ*=XFy9m zi!JP6vx;m)_)_Lk<2j!WR1%v$bb2XW-BjjwOoWodk5}4#X|hz6z6F<~w2m(giLT=0 z$+#T)+%559Mkg}uu}pWF{ljwK@Wr=^zL0;0nt(jnwwD%5LBC~!eK~a3>_L(HrCktG zautZ~EN21m2>7d9^?#a94OQ`BH4lXDF5+Xv%|9oqPs_9G(jr*h--TAe|7V1XY9OV)h$q;zdk)BLdf~*!)j01( z6BPjo^bRjWt7-$!a49fHd>Jm~az1rO0_^Nva=#3h!qz1E6(DF-_r3&|0t^;!x`EdJ zcYt6Al}Ja;Es+agy(rD#g&a|18hGB_P~oSgdu?^^)_PgV{6b~2XfUPWQ2+_>KvDD?g@?zH5Tc?l5+69LUO2ps zCBIJO$fEODa=;7GlYs(29VVO0ew@GvFL?oV5~$8O-5>J>S<2QFGfhUxrcL{(NPRQ@8Qk}i1K^#={ht#f4^c! z{k&yUsYa9ICNTDl)+3)I0JaMQ{RPP{*~x#(K5~358gbnX`dg{ykFuQ6uU_vzMUWkU z#%~&Ul(NmzU#cJiE1oALZLO?q2!X*)YfhKQ3w|ERPyzO#jfFnTMQQ*A75^h5 ztMxRq7nu? zD^3I1SUA(cx#X(`MZm5!jpjd}kb<0?Pr;9XUy5@oovJ_$WF!EsLB9H5-0pCHeZp)s zBCn)0Gd=xxnIAxj&H=A0UGQ$0!`)wfkHhIk|G>b&+4d-D(Q{WBka9C!4s6E-^1F{X zx&QJh;0xJpk7(3euda260#&s{<=3A@e4hzSuJw~2>5HDd&e~tNM=!3L#zwAYfq$qE z0@-*#O1Gwb#?Quuzv3G$eeB$sY8<_DP)Mea;#EfP-5XTC{6O`Q!KHjtNE5oQiS|VE(u_+Te@sV61+Qr->VLk z!2Gif1Q`2>3<&;X0of|3My4Tt1>!(an1Aa2{7Z)Mgec~Xehp(_sc&a*YoKHC{K-n! z6b6QwjfjEh`4bNh3=t8%l!2v@y)h9ZBOBxMU*%n_4T$KKKj@ko=-EGC_~f8#|LdB# zg^rQI^A%AOb9)0@;GgC?_6EWRdRF?sE-RVnKaa!2`fD690}~@-dm>I2hUZ6wtjw)! zKUwSO0ml|La5T{~cyFuY^8A0^nb_OO8rTY1Sy)?H8d%yBaXeoYw*-EJwbk<%5E<&2 z+Zn*{@xlDZ$j_SwEMvjgw>_-y2)4fIWP-dQ;lsWAXAv2wD~F|o6<5pl3E(s6Kb za%lWvIDwYX(%z1Und9$|eKfGMaehMt|7 z?RnroGvfbhV{?_Ht>zivTJDqzGR&Z*(8WD&xU_lq*@)^Kf^vl%O}!f$_Lr69$lu4! zy%9j}@+ApnS$1=`6-Yk60oy^L{fX6EK#&pW1-=0(%K>#jDU2Q#vE;W%|Ack;=zQgL z`=G_khbYR+ZyD5dXWyh$Jbdh+;Fw=7Ak!P24Hm|Ql!u!hn8A+NlXM=yq>EknWuB># z>6R&w=i8Y>@1?nxk-+eeH(L30L3*5Q23q|fJ|Y@~gGyfk9^@mI4T#}rdzXo-9)zu> zSdMyAY>f=6kd9N+S-808raVy<@63-<_H3F*uy;O1)4nBfP?5x|CW+mv+!g*dP?cqs zEHDCMWPhgv(MUl;%7oM`>OUk9!w)gyofVTDW%NdOTn)XsY%|1%c%DRl&0N)8YLv*s z`v@ggJt#zjVR?1>LVQO0TJ(~M9w1lB+57QsaPHBT?~|<)qHhhv#59F1+FAi`&t%Ca znq*-Wek>(xuJnFgYx$BW6`p9!0gcx*Ra<)gmLT6@SF*A3EFe^Ok#)3b6yFk^(_!+E zbQ16m&mkvSa#ddt*J0u8%C)j@TTGYR855nHTDZI&f0l1gVpyC$;bW6}4AP%v(4)(q7c+3%niDqRktXX(R<=DXvCboGJB38-|GWVBmk3qyka*RXJU!J;4E;LNBY1K!xMw4SoNkwNKidU?l{qXHU7zObr2U{X2 z9=5=Q(1AF;lNYoE3RN%TM#}%mx_0xXVJzOaUyGr-=0jAGAdw9Ocn~L&^fW!x_+scN(nuL^C_q7pu*Z2Ib+2n62yXonl@zKy^ zo0k^(cCUAfcXum(NM1jEY>zaK53cxpH)G}Gbs&Eg@B^AM`)WYud)v&1W#_BA2dk%j zt?%>w4^1;pP5Jzt+SL1xyN*|#0EQ;DT4b)C2f+N|V3ir=rpq1pU?D1g1 zwN1t+8h>oKEO@4_aR_L~DeR9chDbb_GZc2ra7BxmX_oUD6#a4Q+RX5eG4uI}n|Q;o zjlqKyI+soRgQ>$ecuL_!!*!Ipe8ai%#`3T6myW_%nU=mXuR?x3huGm7y&PxI4HJp} zs0y)%9CpYVtBz7?PjV)Q*g2Mbd zXK9W*qVIVw&C*G*U$wo8i#ikchO?7#8PeNyjl5Q9lv9B)&FV^{3OFs>|B$M?K&@&vGt84?8Yt&r-PPP1XA=X=JC7_ z5PjAo(Ng3+76zGg-hHZBQc{BUDTkVlLZ<980kjPyO6w;`$6(NKlK=yz+tCMC|B>9NlFWddhQL*a}4l+Sbb~?QX>6%b5OI(jc zF4WJmDbis8{tJs#qOptywJ?Hj4T89uYKsgf_cMp&*1qPueO*RAvybucNoY4uuDlhC z=){GKWa^@6WP^HBoRXmJ!3u*cCgPt}{nAw*beZ4dMij#861Vzv#uB&y=wqM&z9bYsrX>s8hn&j z@2~QW;nBX^APFggUj@!>hs}8_mCKspQ-9e5H&Zy^VOUrw8Lqxknk>_BA?sPbBroHl zPBEr#k${fOoxHnbWFqj&WcFJnib|04hud%uM}L3%u37Oso(jPu67^C&5P#t?s|hnP zc5jCBXT6H4M)h_U$Xj1xiSbQU|3OffSS@+O0^ePGT2}S7t4y3iEpkzX9MjuxY3Wy;1!u^(Ar^e2Mt@dME z`N~<>@X$3t+CujZO@5i&E_vv?FxbYxnqO@Dl?eTNA~q#Af-m7c*uLK*ieA?<@A8>* z#XKeM3gDP6lGs@CRZKznyHO*r9uDN>SiM`y)H4f8ZfLFXyS)vlun@rQ6BKxfF}^fF2>1=$I`fvTm{gsH^}Y=83(&Skabj`Ls?aVF|UUd{s!9i5XbAr^z+PJ6r9 z{xGpm|0=BPY;%efZ|qHL4$Ioy@H9_AO)ZSn9)BK_&Gc({4cWR~ocox9T#ky!DE#IL z5jIybBc8MVE{iy?!>y$)%h7zKDPzXdg$NnjdHlx^_4qX=y%KKB670BFf^QJfe>Twi zy-HZfqTBaOoV*pVPR@>ZquY<7l9?|@AMm^RaOTfoJ}vC1d5y6{Xe$b*P)?<-ON%7m@UiwohxlT29uP@SacX&2CUnkFzcA zkg%=RCK zI;*3FZ~27fYm~lD3sY@h|5VHOApi&g_da8AIU*$xHMKrDZ51`EHwWnI#}Y?_3A$Bz z(B^a608%n(cNa?|)%;WAw;rih0%nM}o!kmTyn+Q`F$ZxRW!XFh^L%#D{-IXB@7`pK ztP|4@QEVW@mm76PC`p2VI()Tc%`oYv=)H6y&v(FmUp%bsF=+OqsglxJ9ACb81Y+F~ z*KC+&#hbX=kCyD9Ne~5eE@dT=S z48aD9hk%-uU9c|@dzjiP>og$SBJ`3CrcChj#jcQ=f@@)?yV5ZD3_Am8)M0HOcB(N8 zlCYfY$6^5=)F1WP%uHTzNZ_(j`x3cxVYzQDf7rv0ufiCM&0-Gh@y%iNR_E>!fhlM> zSPN{{GjgbE&ZFVU(wDtLfIOHRn}({<_Py=#yU$CI$SjB2rs@%F?pLjxw9YP9E7@Wd zre7GI`ikC%5`vGg)bL%Mkwjq0s^6Ja8GLGl7(%p;`*2jyEP{zPUkFCY+TY~IfGpSK zcPm83QRdwDYNya&s`&}NU5XJ<9qqDpOJSAqT!%o|=308o`}spKK2&t%hip74MGLHV za;f!`S(qs>ePy0916`k278X)uZ?`1Y5@TT6EmEHnIouVFgJj(xo3V^Y)xq3=gwHMh z=D1RgKUHfAJ+eq=S>(vV5|Vln*^y*nRoIdt^ZHDy-M$LpPXa^Me+$L_Hv>bK=e+M% zD)`%h;jc&jTVTk@%=BA*&yT16W6>Yc?SnTagmH(*K*zKL=wulkAv5Tme+1#lYT5)SRpDg z>-^65`z%C4_omGUyQtQJ9$BV-R+$}6YH0#5Q$G62=dSQA^D?&|2 z`jc0kk8~fFuO=@XDf_uRyo_faXj3dbZZ5u@Y;_-Z4j!kP}ZZiWg)bXKpIyul?j3OV=K%^kQN8yHw4Fp9($Ll zS1aa4nPJ$)Io7Ic^TO%2_DD&$OQF2mk1K@r4=@+YV)dRy6i1Mkd^b{x+&>>Nc8^lB zpH$Q-Nj_z6v_9WPLp>fu0LzNvO4HmPgo-~dtYYGHsV5uSq&>S<+4G@#c`mfYus||ibvE60fz(oxRS|mZbMp{!Y|TXp@-~&oH{#9I zw3@}y-TkZxKCb|-+ua*_aP?O^UdMZod|q&6%PSs7(AZuCd2JD>_pSP+R;Ix#hEn1@5N)G4-~RYc(eq%pm3to+jcEakJ29@R zn&r+cGMN+L&fFx<>rofcY2F%nnSOU6MLc zfe=RFaDtpq;bXBI@>E(1Q7d2;7KiAplv$fPENS^Jqk4tr!BL8Ew>0EtYU|45F{6#X zRy<3uBqy{r?pygo+-KwKa%c5MR2XLFA^BW^e4ovc- zT>6vVw;V#{Oc*LCm^-3(*=)ilqnt^@K1!EPNnGmF*Tfvg9Dnmu?Z4X)fihvJb%tpa zQvcF1q#{`7k`g#1`W7LlGkPMZ{DWGGkd8@rmrsr+|6)MuHq=IOdrz2-;8~1v(#VOv zNhgi5K@}?XEU}9XkSz;34Q`J&o5Wh!`09|TBs5Bf;}c>;UAHUuC>^LtAGq zNY+SRSSye5T;h>i@m40|4brk2S_9%qqRgwk4vBdaV2BY`v8kU^y#^7T>6_;YR+-6J z{JP8LCkEPjhIkjTbg=^eV)x12_pP(36Tk{o%Y%d^;4eu;(F*7 z%f~dE=AwH=R2elxw7pbt7~+IN)_EVl_i#?VAMA)9IlW}syb_kny8HICjNbC<2padP z29rQ$jY%hGLbBT#*50SDi>I#Wt2Jqy>aH@(_*+_^n#rbo{p`-BB+9CaMRup=N{Q0u zQXG*~1=G{ju&Kzq9n^M0BD^2LA6R3|{=^add)?%J z)e$iM&mF<@BmdnIu(1D@BN$edv|3<8YTZ-%sXZeeGPZH-VRjFOlL-lSm#{U)VeOOc zINl`??UjKnB2LB{SG~vK+14a^x^7HB7_?C$GI(-T(}tN3VK>rrd0Tr^Ca20&nzP@V zyEf#yYGB4`*YgTMMVvGq0eyc`R+r6tSLYJMERsZmLdLPR>3y$%u9fk0|3lNu#QARX z_8VubK(%gBOQVU*x3%-kXrmQ%H;4IVuM_BPbw~Q^{H80vvHD1jH_cvQv|_3ih*E5h zGj;yrA|w*}ryO0Ll+2W!=3fS(l7}0!3_h#J+N914FB>Py@0=0YwGnA;oPx7`=`kUN zo+)%^2^oA3o2%(*T(-ovtt3+4rkga3R@QKQKmK*g5KZi?m+DQm>IUM_oL;g*ER)6I zMTZn8XBf$}2eLIU>8y8@_#Pc9A0mf71b#t}QtIkStkQzv2uF*sk$U=L#P!q3q}u&m zlgkrmzNe}D9WI-eUEaLfJyE@0N6KZ!R^@oAk8P*2c`isKrB9^ytOV#gi8sT+SSi>L zo!dITU4}5AS;;9maKmufwCk~PS;>OUdOxJ2W~GQx>{2g3c7UXCeN@KU(80n&>~zOL zdUgH=H(Y~M7zfWA4y8%-)s|A^kKCwP)_3NKQ3_C>HAuT$4DE%O=VcK z)d!KXYQCH8O=^PsX_N@e@t69vz~KZ3`k+wpTs9BRsuDgl+}cNL9gpvr2?-I<(NcZl z8Ymz~bwdv9_VoGHNZ=27s;{uqM@7kfeJNN_>-Xyx-}Qka2d5(21TFX=r|BY+cH6oW zB;y@C!p%{VMM^}lyI7C*Y~7@vCvlVIi}R2lh@zgwvCL7fG*wX4->rQvsN&saJ(WVC z6Sa`J+K_Gv;5oT(26vGm=t-rNFd7Z#4!Up#)K~FpMoOi=8)`3*c92x2kS*(x5|hb% zbgcpRLdZb%N_f|b>q3W-_Rx7}Gfn{J-r`7!@@_|;b0CyX#XyJM&D}04&PW5hHf@-V! zII`i=EbN|sr^fQFA9&S5!;P!c%03^k7Cu*c9U zOcM8CNep_G@5jJmLS;AnfgavW8oQvYuO=h!41i?1!DhY;j7pPvMsZl9uGV-({j`ux zp31S5Fz!xmD$5>4Cc5%k%lwJ0F)8F}ov@nZfs%?eZ2@dU)@kEjl%3h=%$_xhx1rQ( z{zu+h-J>Ses`sfxfVFK1@sNzs$~O(^mOii1f&pK7mSH6IbFg%mGRVByED^~WA_H^2 zX9~;ho@Pxetoh7HYM`k{Ns5d8bWvruOZVD=(abk~?IAKhWpQPi0gw85zcF0X+>XFL zj1{7Fjc2F>M>`T;#gvC(h&?vLB!e3p^ASNNpE^8dse_FJ1$DuYeNE=|l7$oLbVS<1 zwz{8zbR;N)<5@za7J^G@aO@Zc#asQ@Hod8AQYtg8)z7FxbbB_gO2eN&`l~mUnydPT zt~=x|5x+ZCO~#ekjGqu5g3a|GXlS+VzzJ?8$<=(=dABk7#GqVEk#K#0@jlT41&NRL z);dwQ-b{nH`* zuezsy)R}%iPkDaipR@TJ$$*)Yk?FSpYz?(Cv|i+A0J{=&z5@H!Q(Tvlv6hgA9EHiM z2NBeaRAg1GT}aWw@2eX0xjRu)_swXi^rmu>EPb*P1=Eue2&sE5zi6mJtjY4#-sK1;m+!7 z_9L{W%&jxed(y3k_4V)I_usD%pzoh%R`WA_ZU)=&p91R;6}BVkPb68=qz|u;IwPUW zxYj3*6`m|lJrp&h)~_C#`mcWU(0xJHcIFNcYyGqeHvT9a$H6rLXpET9mmX zj8H0bz^TZ6k4vFdA(7sG*B${-_wb%H7(Q(v4{V1YN3i*T=`91~^Cy!2)MA0#$XEWc z%)@=yZ_FG0=fYzy6GJoavrrn9I-BH72|TRoi9J@o)fxcS>#xhGho%}hO&QX9yt(Wf zJEm;9n)^)X$%}$1_+vN8(j&p8L2C{{YCt@P!Gq|M_NI-@w@+_xuj7*zurIUN_c5kN z;vQBFeh8R-&WWxU60X#+oh-zyV{{l(blI<(5>;OoNlO@`?P5*)AWYiwrLnMTDX?1z za_zFnAY+A<1_bp(d#OaP6oOs!XU=9h8h2zq1of&x7De=j`uBkZ<%qRu2Ep_1kY+zC zIF69@M)|6@Np67DleArKv z1mkt<)>i{+o@7ZlKTeAGI3xVx2qOb{otNa#qWO@qChj1)v22@Dh^1kb*FOwv-kuC! zEPQ6I`i^gOJ$ymaNMm`Or0K-CtI0dNZezI&i?_d6i;su4J=M{LFR8A#X`Z~?N=z8E z=!jimec7Z@!V^Kt^G)3ANt(miit9TiYDPI9OTJ;Rw>ZUQq44*EiDTrfbOp%e*fRNb zweMM*pMEx9Qb8TwWY|R59ah`O2%eKHG?a`GFEu(9z|o6@>C`p14>#j#m+FsPd3UCq zt)xIl;$7SD5=;}Nc3WLGe>q80WBR0%1~qSrcV28{id;y&nU|4b7xmce%LA>!j((5z z^hLSl2;6lYdtsY34+edIUv01G1ZLkTwq0{LZ<1g3yBRXLR(Ujl)aOQ(O+#a=h@1(OI(pUj8*MY&;c8k%o zDw&563z08XS0Z@>4rk4Y74HfA7*Tkw$OwmNsQGEME!pn!>bO!Aw4jwb$T94m}Vv;lzXD zM6fIN%7@>K${?^s^V&Ll)Z+sL$1GRTddx`7f)fVjhBD?ERlOIujr^S8KVFN8Npb*M zD^^8CXId+WLwM?A{B1ZfJ&j0Jx~0`-`7w&8vUorFD7a2GOKiNsvQ}^zPYr+#*3ZU~ zdI-{9WotP{TZFtupMQ zx%#`qRJ-9G5sI1aq#=jbt8gmaBlQFIZ4qrWHQ1PNgnnn2>}+%$=`mrUL=8PQ80%y% zNs_Y`0TCY=A1*-yXr|qrVKk!h`urrn!4yA562?Cr1QJv2%RT9~8K;2va3iRMBnJ;G z<_dEZEf(oRf8G2Br=ktPBsJlnNZ$EzmaW*AELRj|_fiOhxP4RzHoId!bA1t;NW4o0 zl}wTYcjXmRI_IqPo}t`O-H6m_>-@BZSeT-RDi9NgZDF|)-5WSZaG4bE zogEHbi6wjwD41)kDd(jPBQIu*Lo;w@N;Z$yKw>h@&}NjG=M0_wO4q37ZwgNKqa##< zWHvmV3wGy{EsZx9{;42KYj=U6Qq3%@9z}f(7bQ&JiDp1Di#J|-RnfUuS8NV~TJLQ? z%4Qf#t5pJu6$D&WJNuMP4f%mhko&w8$$hOm_ag7io0{l1-xRtn(rv~QcZ*s+^(5Ez zbM#v_GWQ_NyO@>ml`^+eE@HFx1l27Zo8J$G4G(zvF{URT*235z7!o&)DdKOtymQQL zxERlj_@0hYXh8)wBN~}Duqa;TLL_*PBuicPE_nFNrs3=yPNoYV6VXW(WCwhrk5fDqxKIGIgC&HHOQGQep-T zeU`|(7N8?*e@g1wn~MC3PJqGHoisj{3;~KCWb+jlKc^b<{F~YeKswrI2PF`jeWTum zU&Z!^J&MkIJcg~&*frO^U^kftL%k~uiEJ4v*uuo$>WzEW3LKVmsR2`5j>-?!YH{v|MW<`c0s32H)LFAa^ZrxfqWE%m? z@&X}TYd6QUj9}qL^Ie>{s0L zlR2459bh6HGI3n@TEQfuoyjmW;|Y;rugnPx1Zw5FjpuiQcJ-#M z!{!U}3zzzQ28qL{YBRc#DuwJFZ7D>f7;@my0=gKf5`<*>x&%hM@EY>P3?WWwGGEbw zGs#UblihxF)N&&b5#zt6`FhN0Qn}EB^CgmCK|C&cJ+&0?ikeHfG`6HYqt+fT+gFyS z|5l|eR~Xj!j=Z{HRejq|wF4Grr0s+zIcD=(bih7YHf|J5=%W=8;=p09J3}v$3@hbp zA!|<|pU6RIvE3*)lCV(uYRlY@5kktU?UGzWm1ERYaEz6Tg)Z$W z2!|HLVmI;QS0_;zTqx{z7WJ258+V;{VutN<@~+G%x3_E6K z@u{jkMD?`1_3+Jz0oI3V0&{D@aGlhi$9a0AFPaiifg?f1milAXKT|dER-ev9qs3erspx3_6V{HVl|&D4;SzpSDALzWJU}O_5lL9 z!*=*CUo9F$Mg?&reKMwGUbdchvcvV|dsCg5Tabx#o*sc4XD7@2%FUIsB$$|?1A2&x zL7_W5wk|kHwvDCJC%WZoj%FdZhvpc1`u$y4*|PUZJBnHa?FDYT>h}{y>%sww&8LNk z`wW4pw?kwh5mcYBf1HnI$rkWe%kWyc{ESFZ{Aji`M{RsEMpsx34~XDHp0JSO^rtX8 zrYR>X8IOq{bNt%KNK4u&%K?*S+47@a2@24PSDgdB5OGSTWrgOH3(r$ewD$IhvZv%U zWJ-?0waQ=B-1oA%d6cIfO^R5jN->~R8x@*blH#i)d!0L2qNC-tKU%5j8>7Hr8-UdK zU?^BKRtaSetJ;U0kH)=%u)+YG22P7w$&}ck*OfsLBk~K6>FhQci{nj~%{e4%bm+tf zt~&O+iyu9;6b5}M`nVTAWKH+Kkv{{Xwz(=8NU^zHb;Au6W?m4Yo z<5&h)eU!_kHe`g@#hj}q!`+VZO<^5G?sj)fR@#GbJ*dH3{ANOLGx1?drkjqC%;K8J zclhF4J?UKu-B5_>5ljq^nu%8C;ZP^6x=@G`;{j1K3)wIjtQx7ohU63h`@EbR<6@8f z-J6+KANlf5dXvqv~VL_bt&MPZ4yw#&k{mf$Y{s zAn}a}FKJKRV8g^-SUhW|w%g~!!=9S?T#FENWtP5uE3w8mtO`c3nvGJ;6%E0BI%~{S z^Ze6-WZ@$K2SQhHKWj_`!c3DjKmlXyA@GNUBg&{BUY3H~rz~!BbBwHrV2>S(S&ods zX>iI{x{ONH+4J$zNHoc4-V;T*$yz*@9j;xqQqOE)5`yok)p`Dr;Jw zPPUn&!xs%O2pqRozUuFjGCz7S`srWT9^+Dm3{Iya+SJs1bGeNb>Y+)g=gT6@^$U7( zgPHZlxHwwD`7DtPfiA_ZkmaPUbCY|l=?S%LZkbc8XkV6NMNY$7M#XjHWqzPBY42mm zx7-6Da|m3+i*GpO$RhH-rPpCVi!nF7S%=s8Obp=^hqlrtl4tV4(s4mBS6~h_;@jz> zCr@+zme`C+MGS?bG#RK+RJgF2wV?*M6j!l1v{%$f`>r}2^&*ejSP|CF5zPKR4WYc= z-m0%Ado3Z|&v;V5@^ARtul9B;PWC%Q_}MZvu+TSHd7t`ZIAd~(Qy%p=jaMz)=-sk~ zQ2VSIUo|@=qC{GIndw+h$M`BacUOv?8Tx5wJ}`jihF4~#hXDv4D1s=Sp!MgXi2np5 z_;*I=|0+hn{6B}VpC9>e7y%1A%Wpy02SAKqp%&Sb|GTbPh6PTYj`MdAin-|vriw>tB0GtXCV z2ETmBs0;tnWJ>B=Eqi=6T<7IXoO}QC;Rs>$d-KiyO@S^_|4)}qOecMd+yDwH$-uS2P(J3FrNL*r?<>E_y`w5(FZ;Rsx(HhD=b>?B_@|D}sUUE%z5(M=>Bp3^vNYKV zVP@yPURc`dF*&a5;%ZzPWT9`q}B2C)Od5rT|XJget8Ul9}!1u?=1CfmD4naNBOwO|8TeU zrCqAiHTGS4-ZkIQp3zL&%x0l0TM~`3HwIPP@|AuqO!XMK0;3w^j>~2~ZvI~BWO?!E zT$RmeF7kx&!Qz6am&{$U9c+iMSH-NMWhdsmRLS-7&s&D2pJ`>*8WI$%VbX?6Taq20 z-l7Ja5EMbLE~pO@Ngz|gRc{?#pCH~l3-B+)CVe)cep3Q6jPPTG%1$RB`W<(ur^Ql7 z3@wdVkIz{KTP7(i><_qjqnhNtj`olkn5Af03Gy(&Y|H2Ys(rM52GBQ_kko2?8i=6&g^&+$Z#9%8x1x*+&1B1+~akhnhyY_ zFcfUscfwBm(fdm0@5&kE2;%KkGkSFeoi`o&evTLiHkY%p5h%ha6w_+khJ!u9c_PDM zGIv%BueSI5Qog6zEAqzyIo``NFs{ztDg+&~U|~WV@dBGg1%*eQ9CfB8XJx6d^YN%= zp@9UmhQZ9hpbW=P*O_AV4u5ZuQm3pcOT_xhZrobxeGenf3XR`H90^^~XC{m_4r55q zp0`@$jFA4qap|sfRl&4eyDslBFC;(>yxVl7Dbg^BvxrkKPtn&?+b5i{L*bgibS2r@ zF(rCMsGkzSz6J-^{(uq+H5M`v13d})BnQ$o(IrS%*K`A#wX!#tjgJF%rd*!*uqo;>kcLL zVD)~C1-Q_?8Vuu_dnYya_-#8-^X}i5-95b~0;b)oS>t!yF+BP4mPMTcT&?{M^DK4< zN1YxX${o&*s!4ew8Of9Mcc8#*<@?|!Vdb!_L?+2U0a7i@@IW2;jpl@r?TkpUaqlRko^PeJdnIJ#SKb*5lY94N6aDYI6rt*?J(K z!|VidGLu~lCt39<6h0=w`zv3wKRi0Vqlg;yP5N6Dm%Ze&iF65 z%IO3r@-+>hZedYb(+k>HJSpS0;9xoNFo`TgH03qtTtGHw!9%u9=|lTP5Di8d;U_RR@AbH&3pWmSFn^kr-o z5lDS&AzuxPLB7>L-1;!0#=HVXGb`UXxEG$11+T)*D?>WC(}OE{J5--twKk@+Vn+l` z5nT?f&B24Y0nk~z5C^=4K+?a`@@T+GpvItT?Cj{u7Qs!(XxO;1(p+(9dED%nPSI;W zoi`W_1IqCPrL-2*;UvCzC0cwA`hM#rPZ6*$@nf)cw(V^@uS55Nffn2#dG{=4U809g z+W}53y(N8xb9LAleAjBxwe#zbYsXRJB@Q2<(7Scx)cOfQ@yQ;F-oHzr*_k8FpyQ!; znabEX!!Us$W2e1s*a1mwAVrlW-ODhR_DeDPpq@wP{l)Q&^C4yRB&$*_s!dF!4VhZQ z*(qGymi7Bx^p?AfS&q#ST4u)H8STTAXlTB|iBK4!%v)W9V#TysMd*9yp`i6NM=8tW z{%bm-^R}z3Sf@E&1Z;uH5H_!`^M{uDsc*PHDH3;g;!yHwU=3yS7DQcg$8bf{m>x zZi+UFvYO&UgbW6@jX}(EU5ff}V~d6>quifx+q@nOk#7O7VoYp=xt<>Ej$@j!O{TNE zFTq1Bh=9>)32_zuei1b@7~M?gO)Y z2?D4U{0;QwSFBC7PePBxAaBW^QVp>{q1N6va_PyoXyjmEV_CYRv&E&PiZBPty14-d z4LWq*pmA*ykok!T-W8w@2NRujYV>wVJuMVkb|Jegx5D{T9O$~V3sgA!CN{@X9OAL_ zCjvnssNoNZR^+OP1#o5r*ygBo^4Sgxiv=@n7lE{zkTZh9rts=c`F12`D_oWyw1IoF zbMoyDl5bxJP3wr~y7^4=ucj#%`)$H=kq`KVeNuEc>M^WbHZHK zOY5})3;%F@j2**Y8owZnm0=mRm2B&xPC9(k?6~}4=Jm~3t zeg0Z8=QMSzGc!x^BGQc^#oOwE^>r58zx*=&=?W%yXE8IrhQH0zoz&l*Ix0yVT0GNB-1{_E1ah3S;ub zvVa|8QK6+%g7sNJ!j>K$S^fA}= z_T<|ovS(@!4_CcgJYX?&U6uy=PFy_ZR4f1VD329Od6Gu!+P8jkyZZ4k#;L+*L6A(! z5cg0i299SSBv;6XT;K1CD`Z_)lXMF4xcX=Gb`Uwr?~#zVnznWt7$a0c00zDlAX%^b zt%KH&A)=V;>2uB*`^vHKSt-4GrIE-Jz&3HukeqMP>mHFm5TtIZB`NoniC~pC1)si! zdrM5fva$a&OTwP4e0q}gBL@oYNuNi|xjRrJR6=bTi}luPan$Z1v6z4}hHgklqszv6^NtMKkXKWXvBWguZ39e8`N}&Kj%no* zOpN=W_g3P3-Q)XImL)w!fUG_%zDI9{vIhh|EIqa%MJLDb_m}W!_10a&$O-Oeancpy zvDsLKB45+_}7?V-P{Ar8|2wI(D{=A7mc@tryn3)&+`4d|iVt%}qqayh2# z@u4<167D!UYxjOUDM(Hl!*yl5Au1{hDs>Kq`{@AkP>w8WR@8h)iW#SqjhnV2dxdqz zgBALXKF}5{9#98(e!7zj+Au!rqdXsBC3!_xHG)h7=Mv54CXRD;e^ulHgY0R1Fjl_S zMUB>L9Ew*BRA7!$Y*6Cd+n@=!RzE68#w!iv->$0d#C%{iO?=IHR0KYawC(&( zp8R-|AX+Zsu*|zE8LbV$8e=&d^@6nk0sOr5EGC;PiBQd2E~%(s#+f=U;oN`E$t8lf zyMLQAVn)o?{=tH@Q3LDM-tlmXNq?`*<>1;)^26)k7EHnqlz8-`6jBJ9pk-t3AAIdi zWs3u_d4D3beaz-Qie3DmIvb8B5;9!eylzlAud=0Wg*GU<7+G{C*pvyvN8)v?8{&4f zCmOeRpgTa$0Hy6^-q+?Nu;C7hCX-&pvn}gH^zkb5!eyXl=Lv$#siKVYJvzWHK8uCg zSuVYCfsY!g*xTxB>?bQ&{%D;U#|kMpRHY#q{osZsRnb0Z3$)~+4_*sPIGbrZMHyv$uTMpBo zdC@8(wepG}n_CE!!a-mvdTGVCqFoE?RyV#GCE;iA?HYu4GWgl5K;lf4!i!!ewg<`|9 zbU&FygOfKPPsGe2;zJn5o;q?E?L0|Gn#or5&kBs-Z*znlM?$$r3d!K5(o>bMs^s-W zlI%Q6(gX`~#~q-`4V~Yyc**G=+@Z*L9Ip-GU-*9_)Q;b(x|DPtgJQFD%~iZ&X6zvN zG~A2&mA3fiW{6Dt&=i%yt?evK$X$L9NeM4RZsE=mtu;2&k~Nyz%-nTW!)%`#({$%T zwP5&b6tq=0jDe=H3ao(RAaXD-DnvI38DR@%>CHuKyGk&k)9@(9w)zpVKczy*yH}q; zB~P<9=VN7-uJmAE#0HA8O``we-EMhp!|^n&yCjGZd2PBzuF zVfSvX#5*z5+UYK$S{CYOuoT|ZQB(ZC-rfTq%kO<0PgW7KA|p?vknt=YWMuEXM`S!k z*?X70vm-N=Jt9f6M`dJ`t)i4wwj@Ho`+kg2@9+Eb`TxJaU$1cA=f2K4*S@ZE&V8Q~ zzUq{9R_46wh$0TU+LDi?dF@s3N-zD(^aY_Ml^Xw7g`6Z}F{_T&X;}Js`VNHxKZ%7o zH@u(f3^)X1HBoz)>v8i0XIyj4Syp$SWKc4jTW?1%-Dzgb2Q79ijXE>*z`Mmzd zysKV<6{H2nDT?Q0dm{fs#HNVFrCyyHv119P_ev~cLqDd`b7vI@n9x#JlloisRD6rI54}Fk)(*8-&t7DvcwsGT;GmvFK0b1;ev%KrD=FY4%r~nh zhh2(6zWjLotx*<5>{BytY#pa_IaEaMWSEOZ8R9#u$_7IVIO9~2eK&0+g06<1y5WDb z*sH9k*1`shVp26XRqyS<$6E$!a30$qY9nTH{4O5;vDLqVmJ5qmQ-BYbQtYy5+0DJp zo3VOuK1Jf8CcCo3bnxDH66Z6o@~c@xrih(Gm#@Uy-nmkPxO{``>sOh)t-kepz>5dxhC8!|CdR&gWqocuTHXo zAF2MA9}FD)u65@{93+f~?>~DHN6wM9k`#DP6l#|DNN&E-&BSbZq*>_m1l#C6I^&$j zInElU221l5!SiQdcg$h2yn(lAJTSEnqQ3ijb7g=e=}yoMVH&sTYLzPku4PJfBb)P` zg<9P?yKLM8dj(7D9B3v_-yx!OR3IF|GmER$mv9@R7jwK=Gk!KkeSOGnvspa*Wz&8+~w>;u`t4p|XpROdX1&wc=`5E(e zgf?yry3|J^)SzVPHn8}4uCpMC-{gu-BM(#mFv+~I4ZhEYc9lqoImh?5KnpRKa-^f5 zs`87#5kpfS{vr=@V;2wo!RnWNKYPrC-ngYdZVmHwnYMGN$jFEkp3!93djF%-Y}1?J z&aw&r!}a-1Q`OPrH%)&qf44{Fl=Rc!J{7 z%Hr$JyNx?NP8Tf9O_=Mn9$BQsn!$R+RMcS@7ZE1JyJeO2pqgky#92{?s3#?@paakK z>*~uH`qX|lx5T(^&(D6jsm|$K)}7jDWVM-jXM}S^Pr>T^EvF$(t-uWwPJw8zmj=5! z52sU`JN>2;`qMqF7uR0W8_~R=IvPQ6KC|K~fya-bA|k28O7Dm8{DqZ;rKYXGOM@e< z*3aVIMr~M?;jucQ*?ylx7r3s;FNM zb|e+BHJBLneYLZ`jQo{93p$7$R5wIVAP8j?g&r!jG3s}>Ef8VX3*ze}uH5uhIa@gA z!+Lc_6F=V$45MGTR$-0<-+ZB{ost_V*bi#Rdel~ zNy-?^UlJR5oi-KMgD%s##7NW~(a(}tKlaEd2W#LBPV?BKtG!8oTO6I zXY6F9bC+`%*g}%j^<~CTd5qZvwE2p7y+YNVrCHA+vK#tv^j?2>26=eRKF3RuwmkLG zYs!hc;cVYasKRscN}B#iFG;1?XhUArUc%w$I#4nL=YKa1G7mt9FAI z<(2v6SThlEWc-A%3^nwy-P|OR>oB!dw<&8*5>sXTszC$QbTg%+pNr^t>PrF2ZZck_ z=T~6n_1tq-FDG9VV&hm16=#;!ERE zPuOAdGil>}HNjety{A6pR=2CO86Cu4-rMXt+uRgC_MH4Yj`9133s*9F@I&++silO1 zL)KFKlO38|uE+Q4FgVCPHswkryWBTcrvGyBT7%9V{9Al3?gcVGudOA(hcABca7dvt za&UUcA2)EjxgUPB)%salWclQ5jU8fr%&JPJ$2y|OXN|ekOFF#YjwSGqS;wBmpn^khd$l}WL$6D-j2N*-io_$niwBglhtm#3jJv->eyWSf ziJX3l_ojIkH&6SE9XZROX@Ok&)>z!i`stbv;YW0_2I`w0TNSlj#IDbr5Di0=irl;0 za}E|+6CXFIt;&3nwfyq(C)Ps!Ba+Pdj5-P8SLsU`t@QM2P~UHR)N!Q{tpVu5s!e5%-=Po1Th< zOu03%zw(?6k{|SAZhs%pRFRmIXj<#O;=E)$G=qS=J(1nPJkEGJs1;umPIZq+w^~gl zM~}cH-Qw}eun_%bLcy4wj$v5SrI5-A38*`)b(1{(wtYA&{-rw(Pay~|L%-R|-i6MT zCnl`x?8$n=lalGF2{o`giOdMWK`-`O?vuu^!o!aEc~GggcydWrkM;A!GxIfTkWA{5 zjC-HRrzAWtRXs+}lSD3=9eRz5ojHKbwNzS-{NB4j917BEg_n?tIg%>HA~!&>fk8%tQp zyOob&m!+LHpbd#2EEMdB!{D$awE5GN!^ zU4905UCK^z#$v+zNaDrr=%3!C#~eIz=gXjj zE3dtH9`ga}{F(4JcT3x6fk&NK0W1l$=Gm3crGu&Bjt;ibbyG`bmhohDi@a+uWU;^I zpr7K@6Q;>f5iwqH<3)&#$a5OyG9t2TJ#BKKEzO+n4IDOo6Yv5T;sx>vv$N$qgn8vU zAqqq`>Ad(6^pj_OW3^<|-d!MD=dUDgH*`4ew^|!m!b1DlM7l@2%2w{2OO@1cXR#vr zsooo28Wv9J4@I@lWYrf9UVjqjA$T-4LsheKkV|GrmhEa;Y>J5OlT+vmbd%py}GMQ{-;pdQjS9K?H4Ckyp=h=NP zoa5Qx&M&Pxpa;v)OuE>&rfAs1TPlRFHdE83E0dIdTp$95*jgeg#`yv;3X^| z>@QY2YnQ<}w_^G|+7%75_!C=|42pCcy($5s|&fzV8f^rD*&3c7Ohw(Tdo5RC?J zx{jb6%^JleJC_Mj_VigJ%U4$?Y(l0Jc`})=j;InWO&H#oxyG`U@IhwLUHHwI0js^{)?=+31zj8Nt9R;Vgq8>1|0)t% zs(8=PKhS}Ga%~{lta7bm=7wH^0N1gVpo*a%Yg3k*Q9o8cjx$t!T>V5+?6c1LOYlc% z`^?tIE=RmF{6adB8$WM*#55Rk@vit;PEITxaer2H^O%-fKA!l=K4QG`(aV+s<@fWkYB!B$NtL7-_*SAVE ziEQn+h|Un4jtG8kWnNg0=;yszkXG8?seRqNFfFCkdc9m zHkan%0heYPgiT32e@&vG3Q-gE(HBVmNCYqP{14*qnf`;L_(nc*bF%CW%s3cR_pxY+uQ)b^0;dsMNp)-mz zdF}AA)_YH$wM+bX+~RA+RYdYQA>KUzv~x-0Db z#3FWg33*TVa@WZ?|8$=xl$|sMvS)l>7-&pJ9>sObJei2?2(!cMdQ_Z-<&rrm=E+EU zN>5v0eg!MXj>}^JJ9h$xgg}Hi`ci#R%M8g}txF#?Oy; zAdP&iPC5hSQ(P6@TQsn6Gvlk`gOtqHtE6Ln&%!Iz*PZ=2s+2;C?w{kprMA6%WAL0e9`dTz%V=D4rgn2EDB)%1Y*K~$IQMw=jGIi0czu(!| za=4fB0iratYj*ui+oIE>XunynN6LdwC05XV;>+TdiszHx!+)X=ID$6eZmrKf8qd+;Q## z8}j|x_K*Gc88HTCDBNb$SN&Vx%blu5sJa>Sm7`vp;HXP|qfnHAbg5JnZ0c@A=QC)+ znk7_`gSmzIUmJ#EpI%h1Wnxu=lrdC($aN_Y|4h?c{*=n|lw6*nQC#msmaheF0Y}Ml z*EGGjj$qx6&!Tc|j4G^P&?qqM|CLnogK`1q4vSDJw!;+`k-=wQC8P#%iwmcYk?Wr< zUtGzDlj5kAo^=em7~kao@NTyQ{2nA69v*)@Mp+l@IB9E+n)7jA&;x z#SJIm%d`PI>B5sYp|;uFZ=qI0lG9xk#_MsWPTd66Kc`!wWU^!RDDZXW#W&0<^Y5!_ z-g?F}pQ~OxDJ9`H`DS5mp3u08ne`U+UC(k-VVBSnim}#it|5}9nM6m5BJ*H0=__QS z=y_98`}1aJaWx59XZ`f;8cuYq)?s-qSaSVkk^~0seenC`pa0ca5^%?c|8kb(;3f|{ zvm|gh3bU8#zwMPbOFQYH&%IigVO$sR3jaw=A0g~Px7blwlCtrPDK@R{iE}}xN79+z z*Id(jb8UbS8*xXz(>hl1^|Wr>>7W}A$&VzHKPZ1)cA?9~=k3`!>^rOxkK+S^X@7Vv z6j3N;2yZ!l|NNXdy~fR<)^XuX%IS0FFT>N`zHD!`(Fn{nl6`e6V^+Xx1;@n8;dRhM zZ^WhAvgNtO&W7+wrAcCJ_J-pss+~{=lzv0nBQ19Nb?OVBq}dc$E`CVA6mp!lIO*9} zMsK;#OBYEV%TwQivH2b&4^kqHm2*vq2|s#%Q~C#oLKKYo>__80S-Q>>6q0>@8?Eo@cp5D&s~f#(bDD`e#8Fm`M(R!mnLf^jxis_=g;!JE z&<5<2gxsAA-;q!KpWkTyaoRvAZal%6R!|CZGW(LX0cm#b$^Pz!7S?X`hjb$SsdBG2 zAFfd6y3(pAqtcI8S$fpEY0e+Nl9?-!detDnqF!AaTTKN?eJiHfWy%b%C)?z{bj-9@ zb&0a{X&wEwB{t3mXBJk|CfyADf>dX=TeqcY8l>gQKP?6^8r-H+89z>=(vUTgMRc*i z?ESl&YWy^g?l$jy<7U@O87X5w%(N|LKgtL@YgY0=fjve>q!?ZEkegMOvLf_$ zO<*(OnW0W-wqyBj8@eIUEz%l_v+5>sPbK|iGy8|m zVSPNQUOg(NdOR5h_T(I+AHEKwz9Y}BqFIz*U;ZdFJMDhS|D60 z1p0nIHOHV~HC4kF4@SqWgY`oQH6E8aluVGRXr6bKptClG>&2KN?wm~{i^qeV9SFI+ zLU1mh%#Ep`z)bjUv<#Eldap0XHjq%FoJ=)YUb6DU&VzpD9lC5y&V&?20s` zY{bTVyZy++mpnX` z`-QpDjjXD7PhX2%s;j_j^@d_SffYb_+0vYbYHmKEBrU(sNlm2U zpG*j}XxoxLtw6KbwDc>AN|#tafP^a4HwzI?6JQ?QbJ`;GxktvA)#~zo6_wLg`AG$S zTFh-YPVL;G2`d7W+zLwcJ>;@4KfUsM(;#=b>0=9C_le-L_fn-9%no#NIra=POB(0e zNICJd0I83;}UQBcvPI1B$hJI4(qb5?aA|3C-^iMp&@E~K0L3JeYVll zTQ{{9S&u}rv-K*))?Z}Rc0Uo__3PbH*H>%4bye04nK$UDt7kJJf6mP1fw6lrs2PVc0m*TWov09Hdy>DDH^(fE_IhR>?( z`n`I>?F7RZdRdS2VhwAvX%e#K;{P#seT%s<&dm-MA&1+Ui&$#yjdk*v(%pJ!S9@i{tH(H#M4 z7r1LP=i()8=O|J~?bAP+@p~wsF4+x_lUX6sU#E_J_35M4Fpj)YI~N)*Fj&D_>ig{B z=2SxPeYG!&Uc^ev-i42jJx_^sU^+9(D(w{>vHrx=_eFH=>I@Szbtw^b^*HyOLH^CN zK2LmXD4!9Z#u~+?(9(JwUUsLV=3Lom0{XnYb%JtZrB#rT(=o;CsTVFbce9@!u_a)5 zbGc(Cs#D-r-~}G(A3>|QeYM95pF_rE`&!!4*Ky~AG_Dskz-k+0=%a(P=Qqy?%eT_= z+6| zUoy?JfB zvt;6a2xQkAt#{PvJRwdB6Rs=y(5N(yrS`pQ@o{07?iH&R!j}``S`2TAwggFoGWd|D zW(H~IlzIxKz+E&Hi4_q}bCv%?^t5D8S*?bhHHTim!uLw>r5 z7BFh@ELzS zO>e4XYHqdr)g7?bUlakG-tlZkm+bqR*{tDe$HGa@d^`R_{^XMrjZfIlBpp?7Wbi0} z-Y1}c3ne-$VE2vuna-t;gUFl(^}w~+s!bs)p9gAphZJKjE$2&@)@_8t*Azaq8)Dbq zIFnM==Snri)RmBvvH^SAh%zFF=6q(UXiAR}j3_4h5>3jGGZv^KGkL}Y=3hJ zli!h;s0JkS<}szTO2tg9rddDxsNVhz*`MJ~BA4haKIKtZ{YoqO3d3_G*H(>vhyQ@p z%jc|D#O&%_Y#WhqjzK(+Ie$^+E0)9p&@;MZ{ke@#N?a+EuTWRthe$P)1-^MM;IeA2 zMj}&}bzVY{lBv}@nn7$9`}X_E@so2?_byn0f<+ra00*6|r4@0ddgj0ioUCq_@<;DEvG zrlk^M+3u~&({AE;eqSb}rTpZumdsCGDxA4=%*}>%ShYb7*8W1^oo zbgA<(K=wo-twc*9oXMyY=TM)a6cM)Sry$2BxbU>#h;h=h!rG}MCH`D}gG6`bH+eYU zu`)!AG$W2Y9oN0xNOoC-*Mo^P6W>lCFh_BQ`d+AJAdk!G2Xav;6>GNP_{T%I4LaB_ z>BS4UqeV}kCx%r&Xv-Sc^31O0X^n6+EpIT9s6Fq=@mvpRV`R-18PQfd2Qw#Cg4;0~ zOVEG4S#>ja(p<;eB#z5zGXWnm%@dB^z#d1)E=yZ49(#soU@CDezq{mT>C|!KN3j(W z-W(68@NO=XNXVZq5u)gwA`oFDO~OjhRBHdlp5>428yk`OrsI74uTt#~PO772S%eK& z+|~W?L=$u3vFfpYF=?!bdk(1Qz2dlhAv8^y0Kzb~N(}4dk1IH*hx4Tko5G_0mh=T* zI%bVW55mM2v=ua@0d@Y1~SPrc}Frie79C%b+DBgnMb7Je|x}1f?4EeR19^X8C+4^tTv`>>;^xEXPPVlKN zYLEEW_rDg#vw!2IQ1Kz30=;-4+O7TLdwBh=SI5|K{K#*n2ys+4RD%nEoO8g z4UJiZw`S!tt3y1_zyCBFB=J+%rm?J8zo^u{dQ@k*u(*TFU$l9$`7QGD`iVQh zXF35-rzK>LZ5=1AV$68#+(6_ndED$Bv%z&}?UQEX!hz@tWb|vwma$D^6m)~^I(JB) z3|;MGTj47zVSE>JJrL=qgqYQNFR{cDe3dVxF}~MSJ&kK#AGhY}NVZ9dYd@lctmG6?-x>%fjsSx5 zHL>TsI(ZsC)7*AeYa|XMX2YGAc|n&Q;dS}*oRLR#M`qklJO3L+@J0$dieU^yQdLfVhkp~n z;bRwSVl>QsM{%C-f*5HkMa+oW6#KoVNK==y0qNycQ=7`qhDo{oHKZS9!jgYnnlSk3 zRY_HC8J7FrVUCX8(s>M~k(rK`pj+`^9W{tkka54!p2RPef>a5Wkv2jcl?sWzuPPT& z`uJIM&qbjr$)oQU;^f%0^&MZiukcbjWq<9Ow)-M}G30FQ3u-Uz=zP!E2}YT#>P=JX zgHM&h5p*q)k6utOIogv(%f0Ru<2czRcdqVh%+0QIjn@rwQ^#E$kY_XKgs+?0A2CwM zgQh67wBH}%&ftF}{G>U;e6h7?hObmdcnt6Uvy@D^nEp{x^QQ(ea#^8Gv}BKJoF7fwZU6B1it?%0s`NC3Lv`=Urg)2@pW`CH-_kO$%u)G8abj( zAv^p7S~TV1HV4j7+W!!YWoy4hyHT z0$zt>MX*Ka$>q7xsO#t1O$_q;^uDD(S8AKn7M5pSqhIuSGHdv|8#nn4L!p(=Yq&pO|XOcKAGrN=(_55cC#vJlE7!y_tRgDIT)( z<`x~)N$hp857wtK!_vQ)-d{J&g7aVwYf*$?#xlP}^`D6-N<{9c3PoTSGU1eFxIWDZ z(jtO;K9>Wct%q|()CvY@tsmSm@~{>Cq9y+8?x`o%RG+hN&*C&B*fbZ>;-VP4E`5;{ zng3*0`@AyB5v#-H>BU5%`jw+GvKe;l8jdQTH9YyWD+^jHrI_1R+d}~~mQ9l_WwlOZ@zDk7>p`YHFowE1) z@!@QWBAMYy+T!Kr3%>%0jQQr-#Lmo}gT(mNFQ>lx!V>qu6(<1IHNv=j;pL~ILDoJi zmcIA+j1TKSDCBKbsrr*#eyFx0m2sS>?aPBKFRUrAqqOHsu3+`s1`nQ*nfVK|xes!C z=V%^ojCFxVp@?>Kf^hE|ESI{alNA~wASod!2}QzrphyHa@FNOEBE_IkICT3O0se&n zKN3JWcn$m@;rs5zx33X=+jVwf_UZtzNKqlMdvUa*6GU&@uX1VY=t59XPF@}!7!rcw zg>gcGb3h=_19px<^|#mf2YUA29#wWgyFf5Jz&N}EWJv!1Adv@!;l;VYQ;Ww z0a}AZ0PSF4LAHVQz&bl^g7+XhceQ6v1n_^+4g{2klZO|@18Da_)*W2l+GX9IK5VP| z-qgzh2EhJAW?SX=5d`WB0#tQ?Sd0$rsyfIFi5*6OjM_1qzvv1S4%P)3waYLNRs>)I zXl~#$UZ5Sme_;U72qz52_owb0oFn=N24K<_(Ehe{XHQrDBYptF`>hDbf5Q_F<3z%^ z{}j~0WauC8+|3+z@ci%O1_NXRDj*VcQ#Ymnan9lNgow{HI%9dI}&oDVo0?x0;`yxqUKeV)CjwoTTaU=ET6 zvUN9Vfu;(Y9AJJJvjZa;P=@hWplRAiI=;N)DET4iIp9dl3Y9j)@LCk!O#q zAlweeFcAmjD%d{A+1(st2bVpC1f3`#CBV^cJ8`f-5Ld8oP;tR);AdBPG53et+=1Dv zgTZf~gfRZ-kRc)g1?J<10cL+tLVwM}erqfyFoE8DTLcIB{C_<#{R>S96p9mt;QoUq z5Zynt?l4VzdbF)|ds_A%lZX+`K3{Vnf!L=Sdm`P9qx)m%-$Vt6Avgh3|AQDL_zd*^pu5|32HV%$#t6cLuAP+a3ll#ws1P@64pHklQk=q7|Y4A@zfc=7a?l>h3FTiV%Zh)pe zhX%rdjtS%wSPn+cUG3aJ1DXJ6!Jd@= zO_D$|4Gd%uf8@tJe@)ze_Xpez=Ho-z>eQh zWRLViEZXtNyLkl0bMLZu#|7?>Oqlc)R5K8Fz@=d(F97vA00Ry%Krw)7xA$xx%XgLw z4i4sk2{29+?2oxG)L-+h-#p)D@}AlpU^3uCF^FM8=nk?6=HRv$EDj5w5152Q@PcE3 z1JcLz`CEav--}UlcCxaxL1PwBb|#_raKU6482m9_cRRy?LHDl*pbn;8Vh(5{CtC*y z3(z<)fd$NVAUI*HU?|2sv9z@j2Ny0_#QEV+I5(6B#s}l$=7S-1F)#|YrvLbO-x>t! zU>dcvY{18hnTy`0N&)R;WNPGO1oo`vZ0zK2hX$CWAP=JM=ma2XO&}obW@lt_9qj}$ zMw?sO2r|xB)iFXWO$8aXxD}uZc4BA?OKA@Ww3>&ax{1ei6FyT$VIcuGem847YoK+A zo3)jVBfpyw=5`B!{bmC9r(MC?w!uYR0cBF1b?;xD#Zw zaB{Na=i+j8b>(zLaN0VUbHVud__&~OE;yV6fZzb$#&t4s3GPZSg5@ZDW#2{m8ve&4cvx60;NmCOpv=!PKJfxiq#t8%P+r`}4ZV%eVkrP7& zr-`jKmz$9t00}(+si5#b!&+M(09RKw|DWNVxa`b-*Rb2ijRU9v4**mU03^V9YdiiO z^-{OBwG!H|VFFx-pMu~D3jE@>Ce9%3GU7tI7v+sbc_ieW6r6b_H6)}|%@I5bDuRNT zx(7jbD$Ce7IvLrRp#Ou)`#=RuP58}h9juL zYN8z+fyY9C>kt58_LqSzSpmym&PL|wZ3PlFGT*+ivJ^tw2ylTq09<^9{H_Bq z0T2bhqB78eqYxj4)O`gzbgH6lOf5kq#jK1R9fj;1Y;6Htw;6co*>5SJK}!_^t(XJK z!vW({hw<@q^YH_wyiXY0K$uE^ZCjeT|4XHPK-)C!Q}`V!0UH9Y_RLV|w;2Oe2r@bV zM*5cp6)?lxmt$``2{FJySlOC`J_5ra2xfU1Ti7wQJ|LI8!JPy|5syz>vj z!_5sWESnKw%HU95ZgBk<{0FhwE8_$E+Fu6a1!t)bmmyH#I>JFX9t83aI214MA8>r! z;H=ewx_k%}4B+O$GF~2DAWhg`28SY`VD@vc3>f_Y(dA$nFP!gCAK>%DeSk%Lhva2Qa+~zLBuM3J+_5*OdFktQFU>Ts#&_DDFRD(l2 z09XJ_6dtS#1M(W)Kj3%)Z95FdhdL~C7#}buI!p&2FE9KL{1CwK^T>hK_x0iAU}R~9b|ApKx5K4o>463#0}x?UZEc+(m^g-sE;2S|wh&DA oy?rYV(PR0i6o(b^&yO%81R&3GaKgkPIIxTc^vBFBp(Oc#0I?RKvj6}9 literal 0 HcmV?d00001 diff --git "a/\320\2403212/zinchenko_408657/lab3/README.md" "b/\320\2403212/zinchenko_408657/lab3/README.md" deleted file mode 100644 index facfbc9..0000000 --- "a/\320\2403212/zinchenko_408657/lab3/README.md" +++ /dev/null @@ -1 +0,0 @@ -Лабораторная работа 3 diff --git "a/\320\2403212/zinchenko_408657/lab3/code/.gitignore" "b/\320\2403212/zinchenko_408657/lab3/code/.gitignore" new file mode 100644 index 0000000..38d7344 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/.gitignore" @@ -0,0 +1,13 @@ +# Local +.DS_Store +*.local +*.log* + +# Dist +node_modules +dist/ + +# IDE +.vscode/* +!.vscode/extensions.json +.idea diff --git "a/\320\2403212/zinchenko_408657/lab3/code/README.md" "b/\320\2403212/zinchenko_408657/lab3/code/README.md" new file mode 100644 index 0000000..5fc0306 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/README.md" @@ -0,0 +1,29 @@ +# Rsbuild project + +## Setup + +Install the dependencies: + +```bash +pnpm install +``` + +## Get started + +Start the dev server: + +```bash +pnpm dev +``` + +Build the app for production: + +```bash +pnpm build +``` + +Preview the production build locally: + +```bash +pnpm preview +``` diff --git "a/\320\2403212/zinchenko_408657/lab3/code/jest.config.js" "b/\320\2403212/zinchenko_408657/lab3/code/jest.config.js" new file mode 100644 index 0000000..031eabf --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/jest.config.js" @@ -0,0 +1,11 @@ +import { createDefaultPreset } from 'ts-jest' + +const tsJestTransformCfg = createDefaultPreset().transform + +/** @type {import("jest").Config} **/ +export default { + testEnvironment: "node", + transform: { + ...tsJestTransformCfg, + }, +}; \ No newline at end of file diff --git "a/\320\2403212/zinchenko_408657/lab3/code/package-lock.json" "b/\320\2403212/zinchenko_408657/lab3/code/package-lock.json" new file mode 100644 index 0000000..9614a24 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/package-lock.json" @@ -0,0 +1,5665 @@ +{ + "name": "rsbuild-react-ts", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "rsbuild-react-ts", + "version": "1.0.0", + "dependencies": { + "@chakra-ui/react": "^3.19.0", + "chart.js": "^4.4.9", + "dayjs": "^1.11.13", + "next-themes": "^0.4.6", + "react": "^19.1.0", + "react-chartjs-2": "^5.3.0", + "react-dom": "^19.1.0", + "react-hook-form": "^7.56.3", + "react-icons": "^5.5.0", + "uuid": "^11.1.0" + }, + "devDependencies": { + "@jest/globals": "^29.7.0", + "@rsbuild/core": "^1.3.15", + "@rsbuild/plugin-react": "^1.3.0", + "@types/react": "^19.1.2", + "@types/react-dom": "^19.1.3", + "jest": "^29.7.0", + "ts-jest": "^29.3.3", + "typescript": "^5.8.3" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ark-ui/react": { + "version": "5.9.1", + "resolved": "https://registry.npmjs.org/@ark-ui/react/-/react-5.9.1.tgz", + "integrity": "sha512-CPJtUy20x1kUAQ+8iPbgpq/RmqlF1Pfx91+8nHnYbR2dYI4mNKnxT8m7TGkoWT72W+P8YKYUehFJOPvspZqG2Q==", + "license": "MIT", + "dependencies": { + "@internationalized/date": "3.8.0", + "@zag-js/accordion": "1.12.2", + "@zag-js/anatomy": "1.12.2", + "@zag-js/angle-slider": "1.12.2", + "@zag-js/auto-resize": "1.12.2", + "@zag-js/avatar": "1.12.2", + "@zag-js/carousel": "1.12.2", + "@zag-js/checkbox": "1.12.2", + "@zag-js/clipboard": "1.12.2", + "@zag-js/collapsible": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/color-picker": "1.12.2", + "@zag-js/color-utils": "1.12.2", + "@zag-js/combobox": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/date-picker": "1.12.2", + "@zag-js/date-utils": "1.12.2", + "@zag-js/dialog": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/editable": "1.12.2", + "@zag-js/file-upload": "1.12.2", + "@zag-js/file-utils": "1.12.2", + "@zag-js/floating-panel": "1.12.2", + "@zag-js/focus-trap": "1.12.2", + "@zag-js/highlight-word": "1.12.2", + "@zag-js/hover-card": "1.12.2", + "@zag-js/i18n-utils": "1.12.2", + "@zag-js/listbox": "1.12.2", + "@zag-js/menu": "1.12.2", + "@zag-js/number-input": "1.12.2", + "@zag-js/pagination": "1.12.2", + "@zag-js/pin-input": "1.12.2", + "@zag-js/popover": "1.12.2", + "@zag-js/presence": "1.12.2", + "@zag-js/progress": "1.12.2", + "@zag-js/qr-code": "1.12.2", + "@zag-js/radio-group": "1.12.2", + "@zag-js/rating-group": "1.12.2", + "@zag-js/react": "1.12.2", + "@zag-js/select": "1.12.2", + "@zag-js/signature-pad": "1.12.2", + "@zag-js/slider": "1.12.2", + "@zag-js/splitter": "1.12.2", + "@zag-js/steps": "1.12.2", + "@zag-js/switch": "1.12.2", + "@zag-js/tabs": "1.12.2", + "@zag-js/tags-input": "1.12.2", + "@zag-js/time-picker": "1.12.2", + "@zag-js/timer": "1.12.2", + "@zag-js/toast": "1.12.2", + "@zag-js/toggle": "1.12.2", + "@zag-js/toggle-group": "1.12.2", + "@zag-js/tooltip": "1.12.2", + "@zag-js/tour": "1.12.2", + "@zag-js/tree-view": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + }, + "peerDependencies": { + "react": ">=18.0.0", + "react-dom": ">=18.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.2.tgz", + "integrity": "sha512-TUtMJYRPyUb/9aU8f3K0mjmjf6M9N5Woshn2CS6nqJSeJtTtQcpLUXjGt9vbF8ZGff0El99sWkLgzwW3VXnxZQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.1.tgz", + "integrity": "sha512-IaaGWsQqfsQWVLqMn9OB92MNN7zukfVA4s7KKAI0KfrrDsZ0yhi5uV4baBuLuN7n3vsZpwP8asPPcVwApxvjBQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.1", + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helpers": "^7.27.1", + "@babel/parser": "^7.27.1", + "@babel/template": "^7.27.1", + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@babel/generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.1.tgz", + "integrity": "sha512-UnJfnIpc/+JO0/+KRVQNGU+y5taA5vCbwN8+azkX6beii/ZF+enZJSOKo11ZSzGJjlNfJHfQtmQT8H+9TXPG2w==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.27.1", + "@babel/types": "^7.27.1", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.1.tgz", + "integrity": "sha512-9yHn519/8KvTU5BjTVEEeIM3w9/2yXNKoD82JifINImhpKkARMJKPP59kLo+BafpdN5zgNeIcS4jsGDmd3l58g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.1.tgz", + "integrity": "sha512-FCvFTm0sWV8Fxhpp2McP5/W53GPllQ9QeQ7SiqGWjMf/LVG07lFa5+pgK05IRhVwtvafT22KF+ZSnM9I545CvQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.2.tgz", + "integrity": "sha512-QYLs8299NA7WM/bZAdp+CviYYkVoYXlDW2rzliy3chxd1PQjej7JORuMJDJXJUb9g0TT+B99EwaVLKmX+sPXWw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.1" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", + "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", + "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz", + "integrity": "sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.1.tgz", + "integrity": "sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.1.tgz", + "integrity": "sha512-ZCYtZciz1IWJB4U61UPu4KEaqyfj+r5T1Q5mqPo+IBpcG9kHv30Z0aD8LXPgC1trYa6rK0orRyAhqUgk4MjmEg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.1", + "@babel/parser": "^7.27.1", + "@babel/template": "^7.27.1", + "@babel/types": "^7.27.1", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.1.tgz", + "integrity": "sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@chakra-ui/react": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/@chakra-ui/react/-/react-3.19.0.tgz", + "integrity": "sha512-w68Xd3ihlGQDvKhJFQAYXZDHCoGcueM6ywLX4S32aH0fe0mUJFpEkR7S+9O1eAJV8SlsgULFyM7DCJKkUoLbMA==", + "license": "MIT", + "dependencies": { + "@ark-ui/react": "5.9.1", + "@emotion/is-prop-valid": "1.3.1", + "@emotion/serialize": "1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "1.2.0", + "@emotion/utils": "1.4.2", + "@pandacss/is-valid-prop": "0.53.6", + "csstype": "3.1.3", + "fast-safe-stringify": "2.1.1" + }, + "peerDependencies": { + "@emotion/react": ">=11", + "react": ">=18", + "react-dom": ">=18" + } + }, + "node_modules/@emotion/babel-plugin": { + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/serialize": "^1.3.3", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/cache": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@emotion/memoize": "^0.9.0", + "@emotion/sheet": "^1.4.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/hash": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz", + "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==", + "license": "MIT" + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz", + "integrity": "sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==", + "license": "MIT", + "dependencies": { + "@emotion/memoize": "^0.9.0" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", + "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==", + "license": "MIT" + }, + "node_modules/@emotion/react": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", + "license": "MIT", + "dependencies": { + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/unitless": "^0.10.0", + "@emotion/utils": "^1.4.2", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/sheet": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz", + "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==", + "license": "MIT", + "peer": true + }, + "node_modules/@emotion/unitless": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", + "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==", + "license": "MIT" + }, + "node_modules/@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", + "license": "MIT", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@emotion/utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==", + "license": "MIT" + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz", + "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==", + "license": "MIT", + "peer": true + }, + "node_modules/@floating-ui/core": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.0.tgz", + "integrity": "sha512-FRdBLykrPPA6P76GGGqlex/e7fbe0F1ykgxHYNXQsH/iTEtjMj/f9bpY5oQqbjt5VgZvgz/uKXbGuROijh3VLA==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.9" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.13", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.13.tgz", + "integrity": "sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.9" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.9.tgz", + "integrity": "sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==", + "license": "MIT" + }, + "node_modules/@internationalized/date": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.8.0.tgz", + "integrity": "sha512-J51AJ0fEL68hE4CwGPa6E0PO6JDaVLd8aln48xFCSy7CZkZc96dGEGmLs2OEEbBxcsVZtfrqkXJwI2/MSG8yKw==", + "license": "Apache-2.0", + "dependencies": { + "@swc/helpers": "^0.5.0" + } + }, + "node_modules/@internationalized/number": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.6.1.tgz", + "integrity": "sha512-UVsb4bCwbL944E0SX50CHFtWEeZ2uB5VozZ5yDXJdq6iPZsZO5p+bjVMZh2GxHf4Bs/7xtDCcPwEa2NU9DaG/g==", + "license": "Apache-2.0", + "dependencies": { + "@swc/helpers": "^0.5.0" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@kurkle/color": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.4.tgz", + "integrity": "sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==", + "license": "MIT" + }, + "node_modules/@module-federation/error-codes": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/error-codes/-/error-codes-0.13.1.tgz", + "integrity": "sha512-azgGDBnFRfqlivHOl96ZjlFUFlukESz2Rnnz/pINiSqoBBNjUE0fcAZP4X6jgrVITuEg90YkruZa7pW9I3m7Uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@module-federation/runtime": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/runtime/-/runtime-0.13.1.tgz", + "integrity": "sha512-ZHnYvBquDm49LiHfv6fgagMo/cVJneijNJzfPh6S0CJrPS2Tay1bnTXzy8VA5sdIrESagYPaskKMGIj7YfnPug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/error-codes": "0.13.1", + "@module-federation/runtime-core": "0.13.1", + "@module-federation/sdk": "0.13.1" + } + }, + "node_modules/@module-federation/runtime-core": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-core/-/runtime-core-0.13.1.tgz", + "integrity": "sha512-TfyKfkSAentKeuvSsAItk8s5tqQSMfIRTPN2e1aoaq/kFhE+7blps719csyWSX5Lg5Es7WXKMsXHy40UgtBtuw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/error-codes": "0.13.1", + "@module-federation/sdk": "0.13.1" + } + }, + "node_modules/@module-federation/runtime-tools": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/runtime-tools/-/runtime-tools-0.13.1.tgz", + "integrity": "sha512-GEF1pxqLc80osIMZmE8j9UKZSaTm2hX2lql8tgIH/O9yK4wnF06k6LL5Ah+wJt+oJv6Dj55ri/MoxMP4SXoPNA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/runtime": "0.13.1", + "@module-federation/webpack-bundler-runtime": "0.13.1" + } + }, + "node_modules/@module-federation/sdk": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/sdk/-/sdk-0.13.1.tgz", + "integrity": "sha512-bmf2FGQ0ymZuxYnw9bIUfhV3y6zDhaqgydEjbl4msObKMLGXZqhse2pTIIxBFpIxR1oONKX/y2FAolDCTlWKiw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@module-federation/webpack-bundler-runtime": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.13.1.tgz", + "integrity": "sha512-QSuSIGa09S8mthbB1L6xERqrz+AzPlHR6D7RwAzssAc+IHf40U6NiTLPzUqp9mmKDhC5Tm0EISU0ZHNeJpnpBQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/runtime": "0.13.1", + "@module-federation/sdk": "0.13.1" + } + }, + "node_modules/@pandacss/is-valid-prop": { + "version": "0.53.6", + "resolved": "https://registry.npmjs.org/@pandacss/is-valid-prop/-/is-valid-prop-0.53.6.tgz", + "integrity": "sha512-TgWBQmz/5j/oAMjavqJAjQh1o+yxhYspKvepXPn4lFhAN3yBhilrw9HliAkvpUr0sB2CkJ2BYMpFXbAJYEocsA==" + }, + "node_modules/@rsbuild/core": { + "version": "1.3.20", + "resolved": "https://registry.npmjs.org/@rsbuild/core/-/core-1.3.20.tgz", + "integrity": "sha512-5VxOddgGHaq5x4ONdKOZvLYLj8dhVfCAz+cERNLXrKLzBISouY1A9TJcbZBK4xoH/0DJrDtDzapNA+dI9Jr07Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rspack/core": "1.3.10", + "@rspack/lite-tapable": "~1.0.1", + "@swc/helpers": "^0.5.17", + "core-js": "~3.42.0", + "jiti": "^2.4.2" + }, + "bin": { + "rsbuild": "bin/rsbuild.js" + }, + "engines": { + "node": ">=16.10.0" + } + }, + "node_modules/@rsbuild/plugin-react": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@rsbuild/plugin-react/-/plugin-react-1.3.1.tgz", + "integrity": "sha512-1PfE0CZDwiSIUFaMFOEprwsHK6oo29zU6DdtFH2D49uLcpUdOUvU1u2p00RCVO1CIgnAjRajLS7dnPdQUwFOuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rspack/plugin-react-refresh": "~1.4.2", + "react-refresh": "^0.17.0" + }, + "peerDependencies": { + "@rsbuild/core": "1.x" + } + }, + "node_modules/@rspack/binding": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding/-/binding-1.3.10.tgz", + "integrity": "sha512-9TjO+Ig5U4VqdYWpBsv01n4d2KsgFfdXGIE7zdHXDDbry0avL0J4109ESqSeP9uC+Bi7ZCF53iaxJRvZDflNVQ==", + "dev": true, + "license": "MIT", + "optionalDependencies": { + "@rspack/binding-darwin-arm64": "1.3.10", + "@rspack/binding-darwin-x64": "1.3.10", + "@rspack/binding-linux-arm64-gnu": "1.3.10", + "@rspack/binding-linux-arm64-musl": "1.3.10", + "@rspack/binding-linux-x64-gnu": "1.3.10", + "@rspack/binding-linux-x64-musl": "1.3.10", + "@rspack/binding-win32-arm64-msvc": "1.3.10", + "@rspack/binding-win32-ia32-msvc": "1.3.10", + "@rspack/binding-win32-x64-msvc": "1.3.10" + } + }, + "node_modules/@rspack/binding-darwin-arm64": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-arm64/-/binding-darwin-arm64-1.3.10.tgz", + "integrity": "sha512-0k/j8OeMSVm5u5Nzckp9Ie7S7hprnvNegebnGr+L6VCyD7sMqm4m+4rLHs99ZklYdH0dZtY2+LrzrtjUZCqfew==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rspack/binding-darwin-x64": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-darwin-x64/-/binding-darwin-x64-1.3.10.tgz", + "integrity": "sha512-jOyqYW/18cgxw60wK5oqJvM194pbD4H99xaif89McNtLkH3npFvBkXBHVWWuOHGoXNX0LhRpHcI89p9b9THQZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rspack/binding-linux-arm64-gnu": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.3.10.tgz", + "integrity": "sha512-zhF5ZNaT/7pxrm8xD3dWG1b4x+FO3LbVeZZG448CjpSo5T57kPD+SaGUU1GcPpn6mexf795x0SVS49aH7/e3Dg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-arm64-musl": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.3.10.tgz", + "integrity": "sha512-o3x7IrOSCHK6lcRvdZgsSuOG1CHRQR00xiyLW7kkWmNm7t417LC9xdFWKIK62C5fKXGC5YcTbUkDMnQujespkg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-x64-gnu": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.3.10.tgz", + "integrity": "sha512-FMSi28VZhXMr15picOHFynULhqZ/FODPxRIS6uNrvPRYcbNuiO1v+VHV6X88mhOMmJ/aVF6OwjUO/o2l1FVa9Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-linux-x64-musl": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-musl/-/binding-linux-x64-musl-1.3.10.tgz", + "integrity": "sha512-e0xbY9SlbRGIFz41v1yc0HfREvmgMnLV1bLmTSPK8wI2suIEJ7iYYqsocHOAOk86qLZcxVrTnL6EjUcNaRTWlg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rspack/binding-win32-arm64-msvc": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.3.10.tgz", + "integrity": "sha512-YHJPvEujWeWjU6EUF6sDpaec9rsOtKVvy16YCtGaxRpDQXqfuxibnp6Ge0ZTTrY+joRiWehRA9OUI+3McqI+QA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/binding-win32-ia32-msvc": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.3.10.tgz", + "integrity": "sha512-2iwSBzVBC89ZSk56MYwgirh3bda2WKmL9I3qPajiTEivChXpX7jp83jAtGE6CPqPYcccYz6nrURTHNUZhqXxVw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/binding-win32-x64-msvc": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.3.10.tgz", + "integrity": "sha512-ehWJ9Y5Zezj/+uJpiWbt29RZaRIM00f91PWuabM6/sKmHJhdCEE21u5iI3B8DeW/EjJsH8zkI69YYAxJWwGn9A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rspack/core": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@rspack/core/-/core-1.3.10.tgz", + "integrity": "sha512-YomvSRGuMUQgCE2rNMdff2q1Z0YpZw/z6m5+PVTMSs9l/q69YKUzpbpSD8YyB5i1DddrRxC2RE34DkrBuwlREQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@module-federation/runtime-tools": "0.13.1", + "@rspack/binding": "1.3.10", + "@rspack/lite-tapable": "1.0.1", + "caniuse-lite": "^1.0.30001717" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@swc/helpers": ">=0.5.1" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@rspack/lite-tapable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@rspack/lite-tapable/-/lite-tapable-1.0.1.tgz", + "integrity": "sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@rspack/plugin-react-refresh": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@rspack/plugin-react-refresh/-/plugin-react-refresh-1.4.3.tgz", + "integrity": "sha512-wZx4vWgy5oMEvgyNGd/oUKcdnKaccYWHCRkOqTdAPJC3WcytxhTX+Kady8ERurSBiLyQpoMiU3Iyd+F1Y2Arbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "error-stack-parser": "^2.1.4", + "html-entities": "^2.6.0" + }, + "peerDependencies": { + "react-refresh": ">=0.10.0 <1.0.0", + "webpack-hot-middleware": "2.x" + }, + "peerDependenciesMeta": { + "webpack-hot-middleware": { + "optional": true + } + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@swc/helpers": { + "version": "0.5.17", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.17.tgz", + "integrity": "sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/node": { + "version": "22.15.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.18.tgz", + "integrity": "sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", + "license": "MIT", + "peer": true + }, + "node_modules/@types/react": { + "version": "19.1.4", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.4.tgz", + "integrity": "sha512-EB1yiiYdvySuIITtD5lhW4yPyJ31RkJkkDw794LaQYrxCSaQV/47y5o1FMC4zF9ZyjUjzJMZwbovEnT5yHTW6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.1.5", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.1.5.tgz", + "integrity": "sha512-CMCjrWucUBZvohgZxkjd6S9h0nZxXjzus6yDfUb+xLxYM7VvjKNH1tQrE9GWLql1XoOP4/Ds3bwFqShHUYraGg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.0.0" + } + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@zag-js/accordion": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/accordion/-/accordion-1.12.2.tgz", + "integrity": "sha512-EoTVa4Tppgp3bfaOhBrgSyOUeeGWFmXn2gGT9AuMq0x46sc4xw5IsRveYPHwBzifrTE3tAKVIZBA5rFoTaA43Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/anatomy": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/anatomy/-/anatomy-1.12.2.tgz", + "integrity": "sha512-avPmEivu4QFAICJ4rogt9ZFMp4trwva11jQfIAHXYDDL6YoF58z69129eLuyVSuSjEQ9EOzxg+fxMjXH2xm7yQ==", + "license": "MIT" + }, + "node_modules/@zag-js/angle-slider": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/angle-slider/-/angle-slider-1.12.2.tgz", + "integrity": "sha512-pd62FEJZmnJAjrUcV5J+IayRGrUuMp90EPf5Sd2nwlBoxarmz6mSYr8jpeAPSjeT73rYkph8D+USM4qc3xHanQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/rect-utils": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/aria-hidden": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/aria-hidden/-/aria-hidden-1.12.2.tgz", + "integrity": "sha512-xhtgOYYzTztQNKmROpEjkbeVbbvqm70595kOVsQOPhaWKVBK4EySLhYEeTRCjLmK9jVwUWQAETISqyA2za9AfQ==", + "license": "MIT" + }, + "node_modules/@zag-js/auto-resize": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/auto-resize/-/auto-resize-1.12.2.tgz", + "integrity": "sha512-LhkL85yuLsIS4t3+XjpJZmZb1hAG9pTf1JIRNQ5HtmoCiOf/wxX73SJdOeQBKfzm1w8Hz5C6skNSxgJuYo0Wzg==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/avatar": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/avatar/-/avatar-1.12.2.tgz", + "integrity": "sha512-zAgxzx6dzH2Kds0hGgPBGm1wWjwurn3CojdID6V9awHq+u5aDf/HIKDOIdjaNlTPdXtBeWrzJaKQiqHmNGrong==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/carousel": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/carousel/-/carousel-1.12.2.tgz", + "integrity": "sha512-5nxNzar7wwGJIMV2As2/a2HLju8s7XahaLuq8BCiLQlhDN0N894Y2JazXm1gCthS7FdMlxa433G7bjYrxMYw9Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/scroll-snap": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/checkbox": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/checkbox/-/checkbox-1.12.2.tgz", + "integrity": "sha512-9kkmo9lz0eQcIkEmPCbevv6cl5fNRhMvyGKgsCENbaeU2VpntYlF8eRn81S2/7naE0JpXCGq+7jMgHHjKhNHeA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/clipboard": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/clipboard/-/clipboard-1.12.2.tgz", + "integrity": "sha512-lANTh8XOPmEiFUgVfd8+ORdpHC7grPImB3X71Kj1a2hfvEDLI/INop379aNsncboCdJkWp0slRzyquHSOgfaTA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/collapsible": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/collapsible/-/collapsible-1.12.2.tgz", + "integrity": "sha512-vmYHRhWex2LkcNRvg3oAzhmnF5gR+vBLfRpP8vu3hsX4zAn6GS2GggVeH3prBnNAIsErA4ech29BzqAhp5xeLA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/collection": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/collection/-/collection-1.12.2.tgz", + "integrity": "sha512-IVEXMBguC/QljCT6L5DsrSYUWvi+SWacGweDm12fckMEwPBpGOxv+dR0yqcjaeNEDuTkT0WHeZaWI/0TNV533g==", + "license": "MIT", + "dependencies": { + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/color-picker": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/color-picker/-/color-picker-1.12.2.tgz", + "integrity": "sha512-HXE5iyQaM7KOyu1SXcVJdDqtuZ+GRpdP8CaJVTz4RkBqaFBd3jrMVr3eW/Hv5N3b7v3vsfGHXXLchte+tcVpnQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/color-utils": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/color-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/color-utils/-/color-utils-1.12.2.tgz", + "integrity": "sha512-ZfshXAqaHhgo8tieADVZ99AoUTn3IK+K8UZ2cYmiTHkrmXGkXQUGysdqsCYkPE/nzC3CmIXLK4LPj5tHYJVydQ==", + "license": "MIT", + "dependencies": { + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/combobox": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/combobox/-/combobox-1.12.2.tgz", + "integrity": "sha512-PaNSh27057I+kwrfyUWSo0K54hwWK6oP+d0NPez9mrQRABj1wVbPc8R5ouseZqI6LL0zRGc4oZB7Inq1o5usWw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/aria-hidden": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/core": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/core/-/core-1.12.2.tgz", + "integrity": "sha512-deECf4FGOSjmD+f3Y116D9dHYs4NP87GBtQgQQ9oCXP8SOCR3A9gSkUGcFU+cQq2tNA5I1F9KqUElc0fDYfh4w==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/date-picker": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/date-picker/-/date-picker-1.12.2.tgz", + "integrity": "sha512-su741tKtQgGQ6KwTE2+oOIgGezOq/cQQyIWXUF0jkEyvsSPio06LRel/cvho3QO9oMzR6W7pus5fMOQPPO9Omw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/date-utils": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/live-region": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + }, + "peerDependencies": { + "@internationalized/date": ">=3.0.0" + } + }, + "node_modules/@zag-js/date-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/date-utils/-/date-utils-1.12.2.tgz", + "integrity": "sha512-FTpwgfk+xoHLQEHEVYO1yoXwgNdwTVlA4XX/IhSqj+3KOTXIu60SymX63fE/rqWzayXmH5m8doP7LGW758u1mg==", + "license": "MIT", + "peerDependencies": { + "@internationalized/date": ">=3.0.0" + } + }, + "node_modules/@zag-js/dialog": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/dialog/-/dialog-1.12.2.tgz", + "integrity": "sha512-Eqs/fpFc9wzYQQne4VOh8qivxuJyEcUR+MO/onTSFVV/AaJfXXowsXk7kAzcQrNzbvLn+yuTOCYFlh4QsPlLXA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/aria-hidden": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-trap": "1.12.2", + "@zag-js/remove-scroll": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/dismissable": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/dismissable/-/dismissable-1.12.2.tgz", + "integrity": "sha512-YIuUx+9mzzf2x9gWayt6T2e2N6nyrlBqzkJfwXJ9R3wEz065AW5X1PeKGGrvYlojPok1yNAaDq6mFL6Rqb6IVg==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2", + "@zag-js/interact-outside": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/dom-query": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/dom-query/-/dom-query-1.12.2.tgz", + "integrity": "sha512-UvFHQbkX6zscdYnMYc5TnrV/FkKlb4dMombXO2rD20NStU9gxb7uYtq91aPSO2x7aVCwNWuPWRb1nFAYGFBOvw==", + "license": "MIT", + "dependencies": { + "@zag-js/types": "1.12.2" + } + }, + "node_modules/@zag-js/editable": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/editable/-/editable-1.12.2.tgz", + "integrity": "sha512-kL6LulJKFOU8riW4tzM5QhAm6I6+zjfw28FjhOny7r4Mtc0HRQUJfh6WzlBcq72fqxvvf8J2OuVq2yeWPE9XBw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/interact-outside": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/file-upload": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/file-upload/-/file-upload-1.12.2.tgz", + "integrity": "sha512-JOjW4JGwRKVpDjZcLCU/qEAVNeUJbb9hYdmAvIAtBmf34VL3q17jsCKDvIZsxasSI0cOhuROhtWhnPXK0/lj6A==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/file-utils": "1.12.2", + "@zag-js/i18n-utils": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/file-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/file-utils/-/file-utils-1.12.2.tgz", + "integrity": "sha512-E28mzjlG53RyApOGrc+gELXcrUpm6lIyWTo0ScJ7Nqlu5fe2Cy69bHyULECz3cI7/XK454yRA5Le7DifbyJQwQ==", + "license": "MIT", + "dependencies": { + "@zag-js/i18n-utils": "1.12.2" + } + }, + "node_modules/@zag-js/floating-panel": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/floating-panel/-/floating-panel-1.12.2.tgz", + "integrity": "sha512-L7nxKWQEg4LB+FTwcqs5qlWaYJ8ZA3aDrZXtxqDtqltGeICAlV/0CkjwNhdX4DyGt4VLgLLYqE3Ciq0tJ1PO9g==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/rect-utils": "1.12.2", + "@zag-js/store": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/focus-trap": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/focus-trap/-/focus-trap-1.12.2.tgz", + "integrity": "sha512-YhlkuxvRcmVhWZa08GqGbqkbL2M0Ae72+NVjoFhlpourgERsatJjvQ8SCx5SEpPcVQQc86Zh+4QAHrdQ4//20g==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/focus-visible": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/focus-visible/-/focus-visible-1.12.2.tgz", + "integrity": "sha512-rXr8+ngjbSYDZDzpP3ckCvaqodvlOuIjfKYUnTYM717l5rYCIrn2vFF+ncDdelcWRBRv5nq7o79vjsqKU+1Bww==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/highlight-word": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/highlight-word/-/highlight-word-1.12.2.tgz", + "integrity": "sha512-M3bX0EeFZ5mh49B6IKTQKyPUZPMmO/7gImPr/1OmffUHUzr8EQT6M6WJBoDGB3dvGcPoahbNuGoZd3Jw48+1mA==", + "license": "MIT" + }, + "node_modules/@zag-js/hover-card": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/hover-card/-/hover-card-1.12.2.tgz", + "integrity": "sha512-lxReLOp0kB6roMiZHz3yigKjqX541x9axIyWzwfeZmZ1Hqg46hoh5OYi0NclQ2zEFw6BMNLAc8ZVoWToBQSfTg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/i18n-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/i18n-utils/-/i18n-utils-1.12.2.tgz", + "integrity": "sha512-P3wuPeFXWC8LW+ZzSdmaRLsSDlrQT0FU7Sx3z4IkZXr8mV+QMg5fh95dmXNIDkEcG6zL7PHwt2ho80m/KuFcfA==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/interact-outside": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/interact-outside/-/interact-outside-1.12.2.tgz", + "integrity": "sha512-ii7ZKufyF+kDr2WcwVgGZZQXrd/GmNYeJ4heR/RO7q3PxYv9le+GFq3evbtBhhVQ/0P3IqZZ8bZL0f/7qQyKKg==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/listbox": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/listbox/-/listbox-1.12.2.tgz", + "integrity": "sha512-EczE94iUzcKIqZhQ5SqaSiLkH88M+APrOp+xI+kHSDUt0SD4TQur6O/ALKFfBPT8Kip5iPK3Er5+t7PkC1wnvg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/live-region": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/live-region/-/live-region-1.12.2.tgz", + "integrity": "sha512-yu1a7jKoheMmeiU4cYRqod2u7JiD1o7Cgi9af1PSBcU9vFJTUpIDJErRCI79vuPSugFvpP38Cjtc3LlgE3uGyA==", + "license": "MIT" + }, + "node_modules/@zag-js/menu": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/menu/-/menu-1.12.2.tgz", + "integrity": "sha512-Ja2RfNLHZOIBuSDRu7lS+0dfRfOov0xdA2RU8yZJBJupZBKT49tBEktJfWNr1YV3GDdlPoGSFVL2ogjNxtzDXQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/rect-utils": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/number-input": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/number-input/-/number-input-1.12.2.tgz", + "integrity": "sha512-YesH2jaFwjRxfqdXUfjGgaAcLjoPPCYkltdC7wEBCNgAqU8UKZ+tktVHnfzZoLZiKqkQ9TXXOC4Ic6cmjXC2UQ==", + "license": "MIT", + "dependencies": { + "@internationalized/number": "3.6.1", + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/pagination": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/pagination/-/pagination-1.12.2.tgz", + "integrity": "sha512-5ly8eQg/58RV0blov46oZ5vhudWMxH+9rZw0LA6Hci3lGrmDjEezOkKmN0Om8PV+xoYcrCl0nnptxALChHCNSQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/pin-input": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/pin-input/-/pin-input-1.12.2.tgz", + "integrity": "sha512-cRg4FOpL9wTGRztx+qk1Sx8aakXsGw7B8+AnboT12zcW64pYF72hqJUSrz13S2um7MhDJskPrdOetal4GBqWFw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/popover": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/popover/-/popover-1.12.2.tgz", + "integrity": "sha512-wOYf4eNXWoZlBwNlF4EGYHsaGOrGsVIVVteCB/xSr9AXBrTF7CQiSwH445+m7u0KBZnDfsY61JweNx5U9FAmKA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/aria-hidden": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-trap": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/remove-scroll": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/popper": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/popper/-/popper-1.12.2.tgz", + "integrity": "sha512-FoUx39kjStc7CUEtxCfcIlrQ0Oq9HH2As9HKz9b4IMwBg3u39sVP2XtHUQdHqNzMoscSsRtAqaTHMmRBz++GIA==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "1.6.13", + "@zag-js/dom-query": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/presence": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/presence/-/presence-1.12.2.tgz", + "integrity": "sha512-V2oNmwe3qYXxAi9Cx1y+RAdb75fexJA+m0VgmO2R5tL4DIFA/CcHB5lc4yPxUzYw2fNwVZGd6F6eUX0Ys0Sp3A==", + "license": "MIT", + "dependencies": { + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2" + } + }, + "node_modules/@zag-js/progress": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/progress/-/progress-1.12.2.tgz", + "integrity": "sha512-B1jgP7iKYV3CwI33bnXPG4Hg7dr/9xl3FkYoM7hk8m5gD4b3zW1eJN8vQejKbARbxki0w/sv3r2DHCF14S7yMQ==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/qr-code": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/qr-code/-/qr-code-1.12.2.tgz", + "integrity": "sha512-t5dByXkS3dBnhv2IS4GStAnVg0Ybm1gtWprspL97ndAHabE7tV1qwPaUV42cT16gFE6/l3aFtbjC+s0fVEFFsA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2", + "proxy-memoize": "3.0.1", + "uqr": "0.1.2" + } + }, + "node_modules/@zag-js/radio-group": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/radio-group/-/radio-group-1.12.2.tgz", + "integrity": "sha512-4QsVREhwP0colnrsaWJIP1jjIZGqfKO7grh3K+gI4vmzD3hU9c2F6ZeRLdzdkDyK+CXcE9MYkDW0aJKxEsJr4Q==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/rating-group": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/rating-group/-/rating-group-1.12.2.tgz", + "integrity": "sha512-n6DJCdtu2hLhZDzFQd0iS7dXL0LJlCVVAFX1pPFrLAl1QQLDZLHftGZAsTnHpF2xAgrOyvzm1p+DPB5arQVcEw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/react": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/react/-/react-1.12.2.tgz", + "integrity": "sha512-kjMP2ikLNbHSEhkrUkg20mtWyYzhOIIBMR4DXlS3nBnB2vNUGq71iUf45xgO7qq7jF/ANOazT5cKJkvBFzs7qw==", + "license": "MIT", + "dependencies": { + "@zag-js/core": "1.12.2", + "@zag-js/store": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + }, + "peerDependencies": { + "react": ">=18.0.0", + "react-dom": ">=18.0.0" + } + }, + "node_modules/@zag-js/rect-utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/rect-utils/-/rect-utils-1.12.2.tgz", + "integrity": "sha512-GM1nRRsUDhlYULdouSQ/Hwow9Wy2dJUeK5qX/CruRkkkUKNkcAB97rv8oxZtTLBBa0KemD5X/JwY4W3rfY1mgw==", + "license": "MIT" + }, + "node_modules/@zag-js/remove-scroll": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/remove-scroll/-/remove-scroll-1.12.2.tgz", + "integrity": "sha512-SYMGGlwnh2VCnae5pEcCgxhVqlCAquqclxp9KVbuypUIZ8Tby1cP78aWwQ5i9QgNGz5V1WfINsZaE0AFr++s0g==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/scroll-snap": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/scroll-snap/-/scroll-snap-1.12.2.tgz", + "integrity": "sha512-OCYEKKubAwshRI0PvVdt0W5vb7aq06xci5Z3mK3Fu3vIIZe1e1JVHC1vPfjJf4wso5vSdQBN9KLHgdoths4Fvg==", + "license": "MIT", + "dependencies": { + "@zag-js/dom-query": "1.12.2" + } + }, + "node_modules/@zag-js/select": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/select/-/select-1.12.2.tgz", + "integrity": "sha512-kSa3EAkUxbEShRVnrkujujFTY22HK4aYSWl1F3u2Yqjmp9EJRX9kR1CXVXbDK8Ta9JmW82XPFyvIa+ah30isPA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/signature-pad": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/signature-pad/-/signature-pad-1.12.2.tgz", + "integrity": "sha512-xg5P8XRynjtpNU3KFET+Gw/pQpFj4yV+MnKHIX51Pb6JF8iCBkzx5lF6yNCp8y24ANG8ndGq8LCzv+sCC4tJnA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2", + "perfect-freehand": "^1.2.2" + } + }, + "node_modules/@zag-js/slider": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/slider/-/slider-1.12.2.tgz", + "integrity": "sha512-iAlV+A/PgJoCZaqsIAPBaTd7xDLHYbUe3QbjnDqmOHIVpRIV5kM1MH8creRFtDauHIh1xHD1TIvwKPVi6Ik6Xw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/splitter": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/splitter/-/splitter-1.12.2.tgz", + "integrity": "sha512-YQLtL9AKiJtm2D7KLCvQGfHKtZ/FwikvABUW1ldUM2m1he6oKkKdGjSycT4yJg7+K5TbaZfV8jmc+bc7w0/5hA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/steps": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/steps/-/steps-1.12.2.tgz", + "integrity": "sha512-0bI8WYVQAiXOAn36i61Q+rqJzt6+cJK77q5/jMqDvlquQ2lvfhW2XXmBwYXmKadnmfiFprrCvGW1GGwSV/R82A==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/store": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/store/-/store-1.12.2.tgz", + "integrity": "sha512-Vy1QK0cmaaruzpkIwJ1lvCO3q0E0K/M1ZY71cDbEYKRYfpRqgV+7xluWbfTueqiAIYyGPa7+nCpakdr9zPPsnQ==", + "license": "MIT", + "dependencies": { + "proxy-compare": "3.0.1" + } + }, + "node_modules/@zag-js/switch": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/switch/-/switch-1.12.2.tgz", + "integrity": "sha512-vRKuCwYi5pDLgZMQ6I6cAzdLRFqC627aFycXRU1mC/0uVo/fCrrbjPvdaascLdmTtEq6/IvkjqZwQovedXbKyg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tabs": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tabs/-/tabs-1.12.2.tgz", + "integrity": "sha512-7IPumMCwJXP+ukU9AvnmpQJtUoMXbO+b4trG8kZeSGQps5VVZhUntrAOIZ6QYRv6psR1eoNo+4giTepr8dIt3g==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tags-input": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tags-input/-/tags-input-1.12.2.tgz", + "integrity": "sha512-bldiVV08yPCDVWGGmhCw4NbK44LuKT9SYYbGUtngRfABiiQUjvc8wQZNSdRgAV1ZXrniwLiMDsQ7L9pc585SRg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/auto-resize": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/interact-outside": "1.12.2", + "@zag-js/live-region": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/time-picker": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/time-picker/-/time-picker-1.12.2.tgz", + "integrity": "sha512-dv4+ZDOWW7xOFNPQGqm2aMkuBLUkUaHCa/zTzV/0Ypl+A/6gBwjv81HIBDTJOHfhcJhlhuoZtgxU/n0ZRFB0yw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + }, + "peerDependencies": { + "@internationalized/date": ">=3.0.0" + } + }, + "node_modules/@zag-js/timer": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/timer/-/timer-1.12.2.tgz", + "integrity": "sha512-1cmdgRSuZNKEoyv5CNb4GZeU3MUi+WJBMZKeXMWy4niBz5sheaLl1FqfW9vUnXAKpfqKif/OFj/QYeo9+m8LqA==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/toast": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/toast/-/toast-1.12.2.tgz", + "integrity": "sha512-uaSlF3PiQ/hlFamBRkrxUESDYd8vXo/iRqvNiROy18bBygpvhfNIi+f8vrvkGXuSqzZ8VWJbbgiNMtqPX6I/8w==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/toggle": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/toggle/-/toggle-1.12.2.tgz", + "integrity": "sha512-AUDEVjZtXwwYFSEHF4cDTJlGvjsaYcXdk3P7j9JQLoKkDci3x25QgOw6W670/RWpFNpbfjO8qBjWMs1P5+Dw4w==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/toggle-group": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/toggle-group/-/toggle-group-1.12.2.tgz", + "integrity": "sha512-pFgU9OjhcBVIWS5izSlTG+K3MlKK+LeD1qKaMIHvX//0pJWkn9oEcNVs58Ae4DrizN5A8WB5i5FjV7BC3hDNYw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tooltip": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tooltip/-/tooltip-1.12.2.tgz", + "integrity": "sha512-RAZ0wslbHWfcH1MPVmfwFJfP3vzQ2Cf5hc5oJZzTURhNpgM3vIhtbCyjXwal/L82eW+Iu2bRrezE/fNRjwBIbw==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-visible": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/store": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tour": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tour/-/tour-1.12.2.tgz", + "integrity": "sha512-3TNE2p/mUe52RgndOpoSEVlB57TWuK6dM1X/atVMfDBDDBwTjDFkw5OnHSh3nDugva54EJVArn/0+9QGZhvl+w==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dismissable": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/focus-trap": "1.12.2", + "@zag-js/interact-outside": "1.12.2", + "@zag-js/popper": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/tree-view": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/tree-view/-/tree-view-1.12.2.tgz", + "integrity": "sha512-S/+a6KCFGSocMKlMG8GmfEkfjbuDeams4s/NTy1JYOTlYO72J5T0L9FD8i9q/bXBhHNno985b5QGpjlfHG6Brg==", + "license": "MIT", + "dependencies": { + "@zag-js/anatomy": "1.12.2", + "@zag-js/collection": "1.12.2", + "@zag-js/core": "1.12.2", + "@zag-js/dom-query": "1.12.2", + "@zag-js/types": "1.12.2", + "@zag-js/utils": "1.12.2" + } + }, + "node_modules/@zag-js/types": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/types/-/types-1.12.2.tgz", + "integrity": "sha512-coJfIU/1Cg1RkWEkf4ArXK6rD3EU+lwxQdtVRlhvGk4c2ts2YTqNi/Sis5CT4/dzaKAk3pk8O2H3ry4IcL2tsg==", + "license": "MIT", + "dependencies": { + "csstype": "3.1.3" + } + }, + "node_modules/@zag-js/utils": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@zag-js/utils/-/utils-1.12.2.tgz", + "integrity": "sha512-JLmzHzJVggOy+4z3jbJ8v86O6Gqm4h1/+ExtwfiTiba0O7j2+4Had7XQxSjVw+H7fNDAfwbZY8af7XzrnumcLQ==", + "license": "MIT" + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "license": "MIT", + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.5.tgz", + "integrity": "sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001716", + "electron-to-chromium": "^1.5.149", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001718", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz", + "integrity": "sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/chart.js": { + "version": "4.4.9", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.9.tgz", + "integrity": "sha512-EyZ9wWKgpAU0fLJ43YAEIF8sr5F2W3LqbS40ZJyHIner2lY14ufqv2VMp69MAiZ2rpwxEUxEhIH/0U3xyRynxg==", + "license": "MIT", + "dependencies": { + "@kurkle/color": "^0.3.0" + }, + "engines": { + "pnpm": ">=8" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz", + "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "license": "MIT", + "peer": true + }, + "node_modules/core-js": { + "version": "3.42.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.42.0.tgz", + "integrity": "sha512-Sz4PP4ZA+Rq4II21qkNqOEDTDrCvcANId3xpIgB34NDkWc3UduWj2dqEtN9yZIq8Dk3HyPI33x9sqqU5C8sr0g==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" + }, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/dedent": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.6.0.tgz", + "integrity": "sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.155", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.155.tgz", + "integrity": "sha512-ps5KcGGmwL8VaeJlvlDlu4fORQpv3+GIcF5I3f9tUKUlJ/wsysh6HU8P5L1XWRYeXfA0oJd4PyM8ds8zTFf6Ng==", + "dev": true, + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/error-stack-parser": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "stackframe": "^1.3.4" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", + "license": "MIT" + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "license": "MIT", + "peer": true + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/html-entities": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz", + "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ], + "license": "MIT" + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true, + "license": "MIT" + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "license": "MIT" + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jake": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", + "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "license": "MIT", + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jiti": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", + "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "license": "MIT" + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true, + "license": "ISC" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/next-themes": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.4.6.tgz", + "integrity": "sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "license": "MIT", + "peer": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "license": "MIT" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/perfect-freehand": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/perfect-freehand/-/perfect-freehand-1.2.2.tgz", + "integrity": "sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/pretty-format/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proxy-compare": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/proxy-compare/-/proxy-compare-3.0.1.tgz", + "integrity": "sha512-V9plBAt3qjMlS1+nC8771KNf6oJ12gExvaxnNzN/9yVRLdTv/lc+oJlnSzrdYDAvBfTStPCoiaCOTmTs0adv7Q==", + "license": "MIT" + }, + "node_modules/proxy-memoize": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/proxy-memoize/-/proxy-memoize-3.0.1.tgz", + "integrity": "sha512-VDdG/VYtOgdGkWJx7y0o7p+zArSf2383Isci8C+BP3YXgMYDoPd3cCBjw0JdWb6YBb9sFiOPbAADDVTPJnh+9g==", + "license": "MIT", + "dependencies": { + "proxy-compare": "^3.0.0" + } + }, + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ], + "license": "MIT" + }, + "node_modules/react": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react/-/react-19.1.0.tgz", + "integrity": "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-chartjs-2": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/react-chartjs-2/-/react-chartjs-2-5.3.0.tgz", + "integrity": "sha512-UfZZFnDsERI3c3CZGxzvNJd02SHjaSJ8kgW1djn65H1KK8rehwTjyrRKOG3VTMG8wtHZ5rgAO5oTHtHi9GCCmw==", + "license": "MIT", + "peerDependencies": { + "chart.js": "^4.1.1", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/react-dom": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.1.0.tgz", + "integrity": "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.26.0" + }, + "peerDependencies": { + "react": "^19.1.0" + } + }, + "node_modules/react-hook-form": { + "version": "7.56.3", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.56.3.tgz", + "integrity": "sha512-IK18V6GVbab4TAo1/cz3kqajxbDPGofdF0w7VHdCo0Nt8PrPlOZcuuDq9YYIV1BtjcX78x0XsldbQRQnQXWXmw==", + "license": "MIT", + "engines": { + "node": ">=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-hook-form" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17 || ^18 || ^19" + } + }, + "node_modules/react-icons": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-5.5.0.tgz", + "integrity": "sha512-MEFcXdkP3dLo8uumGI5xN3lDFNsRtrjbOEKDLD7yv76v4wpnEq2Lt2qeHaQOr34I/wPN3s3+N08WkQ+CW37Xiw==", + "license": "MIT", + "peerDependencies": { + "react": "*" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "license": "MIT", + "peer": true + }, + "node_modules/react-refresh": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", + "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/scheduler": { + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", + "integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/stackframe": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", + "dev": true, + "license": "MIT" + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==", + "license": "MIT", + "peer": true + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "license": "ISC", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-jest": { + "version": "29.3.3", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.3.3.tgz", + "integrity": "sha512-y6jLm19SL4GroiBmHwFK4dSHUfDNmOrJbRfp6QmDIlI9p5tT5Q8ItccB4pTIslCIqOZuQnBwpTR0bQ5eUMYwkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "bs-logger": "^0.2.6", + "ejs": "^3.1.10", + "fast-json-stable-stringify": "^2.1.0", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "^4.1.2", + "make-error": "^1.3.6", + "semver": "^7.7.2", + "type-fest": "^4.41.0", + "yargs-parser": "^21.1.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/transform": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/type-fest": { + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", + "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uqr": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/uqr/-/uqr-0.1.2.tgz", + "integrity": "sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==", + "license": "MIT" + }, + "node_modules/uuid": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.1.0.tgz", + "integrity": "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist/esm/bin/uuid" + } + }, + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", + "dev": true, + "license": "ISC", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git "a/\320\2403212/zinchenko_408657/lab3/code/package.json" "b/\320\2403212/zinchenko_408657/lab3/code/package.json" new file mode 100644 index 0000000..ed5ddec --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/package.json" @@ -0,0 +1,34 @@ +{ + "name": "rsbuild-react-ts", + "version": "1.0.0", + "private": true, + "type": "module", + "scripts": { + "build": "rsbuild build", + "dev": "rsbuild dev --open", + "preview": "rsbuild preview", + "test": "jest" + }, + "dependencies": { + "@chakra-ui/react": "^3.19.0", + "chart.js": "^4.4.9", + "dayjs": "^1.11.13", + "next-themes": "^0.4.6", + "react": "^19.1.0", + "react-chartjs-2": "^5.3.0", + "react-dom": "^19.1.0", + "react-hook-form": "^7.56.3", + "react-icons": "^5.5.0", + "uuid": "^11.1.0" + }, + "devDependencies": { + "@jest/globals": "^29.7.0", + "@rsbuild/core": "^1.3.15", + "@rsbuild/plugin-react": "^1.3.0", + "@types/react": "^19.1.2", + "@types/react-dom": "^19.1.3", + "jest": "^29.7.0", + "ts-jest": "^29.3.3", + "typescript": "^5.8.3" + } +} diff --git "a/\320\2403212/zinchenko_408657/lab3/code/rsbuild.config.ts" "b/\320\2403212/zinchenko_408657/lab3/code/rsbuild.config.ts" new file mode 100644 index 0000000..c14b6c4 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/rsbuild.config.ts" @@ -0,0 +1,9 @@ +import { defineConfig } from '@rsbuild/core'; +import { pluginReact } from '@rsbuild/plugin-react'; + +export default defineConfig({ + plugins: [pluginReact()], + html: { + title: 'Лаб. 3' + } +}); diff --git "a/\320\2403212/zinchenko_408657/lab3/code/src/App.tsx" "b/\320\2403212/zinchenko_408657/lab3/code/src/App.tsx" new file mode 100644 index 0000000..b846df1 --- /dev/null +++ "b/\320\2403212/zinchenko_408657/lab3/code/src/App.tsx" @@ -0,0 +1,237 @@ +import { + Box, + Button, + Card, + createListCollection, + Field, + Heading, + HStack, + Input, + Portal, + Select, + Stack, + Text, +} from "@chakra-ui/react"; +import { Provider } from "./components/ui/provider"; +import { f1, f2, f3, integrate, IntegrationMethod } from "./math"; +import { Controller, SubmitHandler, useForm } from "react-hook-form"; +import { ReactNode, useState } from "react"; +import Chart, { ChartProps } from "./components/chart"; +import dayjs from "dayjs"; +import { v4 } from "uuid"; + +type UserInput = { + function: string[], + method: IntegrationMethod[], + left: string, + right: string, + n: string, + epsilon: string +} + +type consoleInput = { + id: string; + element: ReactNode; +} + +const App = () => { + const functionSelect = createListCollection({ + items: [ + { value: "0", label: "f₁(x) = 2x³ - 3x² + 5x - 9" }, + { value: "1", label: "f₂(x) = 3x³ - 2x² + 7x + 26" }, + { value: "2", label: "f₃(x) = ∛x + sin(x)/e^{sin(x)}" }, + ], + }); + + const methodList = createListCollection({ + items: [ + { value: IntegrationMethod.LeftRectangle, label: "левые прямоугольники" }, + { value: IntegrationMethod.RightRectangle, label: "правые прямоугольники", }, + { value: IntegrationMethod.Midpoint, label: "средние прямоугольники" }, + { value: IntegrationMethod.Trapezoidal, label: "трапеции" }, + { value: IntegrationMethod.Simpson, label: "Симпсона" }, + ], + }); + + const [console, setConsole] = useState([]); + const consolePush = (msg: string | ReactNode) => { + setConsole(prev => [...prev, ({ + id: v4(), + element: ( + + {dayjs().format('HH:mm:ss')} + {msg} + + ) + })]); + } + + + const [data, setData] = useState({ + labels: [], + data: [] + }); + + const { register, handleSubmit, control } = useForm({ + defaultValues: { + n: "4", + epsilon: "0.001", + } + }); + + const functions = { + "0": f1, + "1": f2, + "2": f3 + } + + const onSubmit: SubmitHandler = (data) => { + if (['epsilon', 'n', 'right', 'left'].some(key => isNaN(Number(data[key as keyof UserInput])))) { + consolePush('Проверьте, что все значения в форме являются числами') + } + + const { left, right, epsilon } = { + left: Number(data.left), + right: Number(data.right), + epsilon: Number(data.epsilon) + } + + const func = functions[data.function[0] as "0" | "1" | "2"]; + + const result = integrate( + data.method[0], + func, + left, + right, + epsilon + ); + + consolePush(`Результат вычисления: ${result.result}`); + consolePush(`Кол-во итераций: ${result.n}`); + + const delta = (right - left) * 1.1 / 100; + const offset = (right - left) - delta*100; + const xs = [...Array(100).keys()].map(v => left + offset/2 + v*delta); + setData({ + labels: xs.map(x => x.toPrecision(3)), + data: xs.map(x => func(x)) + }); + } + + return ( + + + + + + Пользовательский ввод +