From 20a594d83443c2853a1a204a42b271e3224b9b6b Mon Sep 17 00:00:00 2001 From: # Date: Mon, 26 Oct 2026 18:54:09 +0800 Subject: [PATCH] first commit --- .agents/skills/v3-create-crud/SKILL.md | 361 + .agents/skills/v3-upsert-route/SKILL.md | 298 + .agents/skills/v3-upsert-store/SKILL.md | 250 + .agents/skills/v3-use-composables/SKILL.md | 283 + .agents/skills/v3-use-utils/SKILL.md | 117 + .editorconfig | 24 + .env | 7 + .env.development | 7 + .env.production | 7 + .env.staging | 7 + .gitignore | 24 + .npmrc | 5 + .vscode/extensions.json | 10 + .vscode/hook.code-snippets | 15 + .vscode/mcp.json | 8 + .vscode/settings.json | 56 + .vscode/vue.code-snippets | 16 + AGENTS.md | 143 + CLAUDE.md | 1 + LICENSE | 21 + README.md | 238 + README.zh-CN.md | 238 + eslint.config.js | 43 + index.html | 17 + package.json | 62 + pnpm-lock.yaml | 8706 +++++++++++++++++ public/app-loading.css | 45 + public/detect-ie.js | 4 + public/favicon.ico | Bin 0 -> 8627 bytes skills-lock.json | 59 + src/App.vue | 32 + src/common/apis/tables/index.ts | 37 + src/common/apis/tables/type.ts | 31 + src/common/apis/users/index.ts | 10 + src/common/apis/users/type.ts | 5 + src/common/assets/icons/dashboard.svg | 1 + src/common/assets/icons/fullscreen-exit.svg | 1 + src/common/assets/icons/fullscreen.svg | 1 + src/common/assets/icons/keyboard-down.svg | 1 + src/common/assets/icons/keyboard-enter.svg | 1 + src/common/assets/icons/keyboard-esc.svg | 1 + src/common/assets/icons/keyboard-up.svg | 1 + .../assets/icons/preserve-color/README.md | 11 + src/common/assets/icons/search.svg | 1 + src/common/assets/images/docs/preview.png | Bin 0 -> 503620 bytes .../assets/images/layouts/logo-text-1.png | Bin 0 -> 93711 bytes .../assets/images/layouts/logo-text-2.png | Bin 0 -> 91210 bytes src/common/assets/images/layouts/logo.png | Bin 0 -> 8627 bytes src/common/assets/styles/element-plus.css | 90 + src/common/assets/styles/element-plus.scss | 15 + src/common/assets/styles/index.scss | 67 + src/common/assets/styles/mixins.scss | 42 + .../styles/theme/core/element-plus.scss | 29 + .../assets/styles/theme/core/index.scss | 4 + .../assets/styles/theme/core/layouts.scss | 34 + .../assets/styles/theme/dark-blue/index.scss | 2 + .../styles/theme/dark-blue/variables.scss | 6 + .../assets/styles/theme/dark/index.scss | 2 + .../assets/styles/theme/dark/variables.scss | 6 + src/common/assets/styles/theme/register.scss | 3 + src/common/assets/styles/transition.scss | 25 + src/common/assets/styles/variables.css | 72 + src/common/assets/styles/view-transition.scss | 20 + src/common/assets/styles/vxe-table.css | 97 + src/common/assets/styles/vxe-table.scss | 38 + src/common/components/Notify/List.vue | 60 + src/common/components/Notify/data.ts | 58 + src/common/components/Notify/index.vue | 94 + src/common/components/Notify/type.ts | 8 + src/common/components/Screenfull/index.vue | 111 + src/common/components/SearchMenu/Footer.vue | 54 + src/common/components/SearchMenu/Modal.vue | 199 + src/common/components/SearchMenu/Result.vue | 114 + src/common/components/SearchMenu/index.vue | 29 + src/common/components/ThemeSwitch/index.vue | 30 + src/common/composables/useDevice.ts | 13 + src/common/composables/useFetchSelect.ts | 44 + .../composables/useFullscreenLoading.ts | 36 + .../composables/useGreyAndColorWeakness.ts | 21 + src/common/composables/useLayoutMode.ts | 19 + src/common/composables/usePagination.ts | 62 + src/common/composables/usePany.ts | 61 + src/common/composables/useRouteListener.ts | 52 + src/common/composables/useTheme.ts | 75 + src/common/composables/useTitle.ts | 22 + src/common/composables/useWatermark.ts | 236 + src/common/constants/app-key.ts | 22 + src/common/constants/cache-key.ts | 11 + src/common/utils/css.ts | 18 + src/common/utils/datetime.ts | 9 + src/common/utils/local-storage.ts | 81 + src/common/utils/permission.ts | 13 + src/common/utils/validate.ts | 15 + src/http/axios.ts | 125 + src/layouts/components/AppMain/index.vue | 50 + src/layouts/components/Breadcrumb/index.vue | 65 + src/layouts/components/Footer/index.vue | 20 + src/layouts/components/Hamburger/index.vue | 32 + src/layouts/components/Logo/index.vue | 65 + .../components/NavigationBar/index.vue | 134 + src/layouts/components/RightPanel/index.vue | 35 + .../components/Settings/SelectLayoutMode.vue | 103 + src/layouts/components/Settings/index.vue | 93 + src/layouts/components/Sidebar/Item.vue | 96 + src/layouts/components/Sidebar/Link.vue | 18 + src/layouts/components/Sidebar/index.vue | 150 + .../components/TagsView/ScrollPane.vue | 165 + src/layouts/components/TagsView/index.vue | 271 + src/layouts/components/index.ts | 10 + src/layouts/composables/useResize.ts | 56 + src/layouts/config.ts | 59 + src/layouts/index.vue | 55 + src/layouts/modes/LeftMode.vue | 181 + src/layouts/modes/LeftTopMode.vue | 113 + src/layouts/modes/TopMode.vue | 75 + src/main.ts | 29 + src/pages/dashboard/components/Admin.vue | 23 + src/pages/dashboard/components/Editor.vue | 23 + src/pages/dashboard/images/dashboard.svg | 1 + src/pages/dashboard/index.vue | 13 + .../composable-demo/apis/use-fetch-select.ts | 39 + .../apis/use-fullscreen-loading.ts | 26 + .../demo/composable-demo/use-fetch-select.vue | 37 + .../use-fullscreen-loading.vue | 67 + .../demo/composable-demo/use-watermark.vue | 67 + src/pages/demo/element-plus/index.vue | 275 + src/pages/demo/level2/index.vue | 30 + src/pages/demo/level2/level3/index.vue | 15 + src/pages/demo/permission/button-level.vue | 58 + .../demo/permission/components/SwitchUser.vue | 53 + src/pages/demo/permission/page-level.vue | 18 + src/pages/demo/unocss/index.vue | 17 + src/pages/demo/vxe-table/index.vue | 451 + src/pages/error/403.vue | 10 + src/pages/error/404.vue | 10 + src/pages/error/components/Layout.vue | 26 + src/pages/error/images/403.svg | 1 + src/pages/error/images/404.svg | 1 + src/pages/login/apis/index.ts | 19 + src/pages/login/apis/type.ts | 12 + src/pages/login/components/Owl.vue | 92 + src/pages/login/composables/useFocus.ts | 17 + src/pages/login/images/close-eyes.png | Bin 0 -> 2098 bytes src/pages/login/images/face.png | Bin 0 -> 6382 bytes src/pages/login/images/hand-down-left.png | Bin 0 -> 1382 bytes src/pages/login/images/hand-down-right.png | Bin 0 -> 1306 bytes src/pages/login/images/hand-up-left.png | Bin 0 -> 2074 bytes src/pages/login/images/hand-up-right.png | Bin 0 -> 2015 bytes src/pages/login/index.vue | 209 + src/pages/redirect/index.vue | 11 + src/pinia/index.ts | 1 + src/pinia/stores/app.ts | 59 + src/pinia/stores/permission.ts | 70 + src/pinia/stores/settings.ts | 51 + src/pinia/stores/tags-view.ts | 110 + src/pinia/stores/user.ts | 83 + src/plugins/element-plus-icons.ts | 9 + src/plugins/index.ts | 12 + src/plugins/permission-directive.ts | 24 + src/plugins/svg-icon.ts | 7 + src/plugins/vxe-table.ts | 61 + src/router/config.ts | 37 + src/router/guard.ts | 59 + src/router/helper.ts | 56 + src/router/index.ts | 262 + src/router/whitelist.ts | 13 + tests/components/Notify.test.ts | 35 + tests/demo.test.ts | 33 + tests/utils/validate.test.ts | 40 + tsconfig.json | 45 + types/api.d.ts | 6 + types/auto/auto-imports.d.ts | 94 + types/auto/components.d.ts | 66 + types/auto/svg-component-global.d.ts | 26 + types/auto/svg-component.d.ts | 26 + types/directives.d.ts | 10 + types/env.d.ts | 11 + types/vue-router.d.ts | 63 + uno.config.ts | 25 + vite.config.ts | 156 + 180 files changed, 18496 insertions(+) create mode 100644 .agents/skills/v3-create-crud/SKILL.md create mode 100644 .agents/skills/v3-upsert-route/SKILL.md create mode 100644 .agents/skills/v3-upsert-store/SKILL.md create mode 100644 .agents/skills/v3-use-composables/SKILL.md create mode 100644 .agents/skills/v3-use-utils/SKILL.md create mode 100644 .editorconfig create mode 100644 .env create mode 100644 .env.development create mode 100644 .env.production create mode 100644 .env.staging create mode 100644 .gitignore create mode 100644 .npmrc create mode 100644 .vscode/extensions.json create mode 100644 .vscode/hook.code-snippets create mode 100644 .vscode/mcp.json create mode 100644 .vscode/settings.json create mode 100644 .vscode/vue.code-snippets create mode 100644 AGENTS.md create mode 100644 CLAUDE.md create mode 100644 LICENSE create mode 100644 README.md create mode 100644 README.zh-CN.md create mode 100644 eslint.config.js create mode 100644 index.html create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 public/app-loading.css create mode 100644 public/detect-ie.js create mode 100644 public/favicon.ico create mode 100644 skills-lock.json create mode 100644 src/App.vue create mode 100644 src/common/apis/tables/index.ts create mode 100644 src/common/apis/tables/type.ts create mode 100644 src/common/apis/users/index.ts create mode 100644 src/common/apis/users/type.ts create mode 100644 src/common/assets/icons/dashboard.svg create mode 100644 src/common/assets/icons/fullscreen-exit.svg create mode 100644 src/common/assets/icons/fullscreen.svg create mode 100644 src/common/assets/icons/keyboard-down.svg create mode 100644 src/common/assets/icons/keyboard-enter.svg create mode 100644 src/common/assets/icons/keyboard-esc.svg create mode 100644 src/common/assets/icons/keyboard-up.svg create mode 100644 src/common/assets/icons/preserve-color/README.md create mode 100644 src/common/assets/icons/search.svg create mode 100644 src/common/assets/images/docs/preview.png create mode 100644 src/common/assets/images/layouts/logo-text-1.png create mode 100644 src/common/assets/images/layouts/logo-text-2.png create mode 100644 src/common/assets/images/layouts/logo.png create mode 100644 src/common/assets/styles/element-plus.css create mode 100644 src/common/assets/styles/element-plus.scss create mode 100644 src/common/assets/styles/index.scss create mode 100644 src/common/assets/styles/mixins.scss create mode 100644 src/common/assets/styles/theme/core/element-plus.scss create mode 100644 src/common/assets/styles/theme/core/index.scss create mode 100644 src/common/assets/styles/theme/core/layouts.scss create mode 100644 src/common/assets/styles/theme/dark-blue/index.scss create mode 100644 src/common/assets/styles/theme/dark-blue/variables.scss create mode 100644 src/common/assets/styles/theme/dark/index.scss create mode 100644 src/common/assets/styles/theme/dark/variables.scss create mode 100644 src/common/assets/styles/theme/register.scss create mode 100644 src/common/assets/styles/transition.scss create mode 100644 src/common/assets/styles/variables.css create mode 100644 src/common/assets/styles/view-transition.scss create mode 100644 src/common/assets/styles/vxe-table.css create mode 100644 src/common/assets/styles/vxe-table.scss create mode 100644 src/common/components/Notify/List.vue create mode 100644 src/common/components/Notify/data.ts create mode 100644 src/common/components/Notify/index.vue create mode 100644 src/common/components/Notify/type.ts create mode 100644 src/common/components/Screenfull/index.vue create mode 100644 src/common/components/SearchMenu/Footer.vue create mode 100644 src/common/components/SearchMenu/Modal.vue create mode 100644 src/common/components/SearchMenu/Result.vue create mode 100644 src/common/components/SearchMenu/index.vue create mode 100644 src/common/components/ThemeSwitch/index.vue create mode 100644 src/common/composables/useDevice.ts create mode 100644 src/common/composables/useFetchSelect.ts create mode 100644 src/common/composables/useFullscreenLoading.ts create mode 100644 src/common/composables/useGreyAndColorWeakness.ts create mode 100644 src/common/composables/useLayoutMode.ts create mode 100644 src/common/composables/usePagination.ts create mode 100644 src/common/composables/usePany.ts create mode 100644 src/common/composables/useRouteListener.ts create mode 100644 src/common/composables/useTheme.ts create mode 100644 src/common/composables/useTitle.ts create mode 100644 src/common/composables/useWatermark.ts create mode 100644 src/common/constants/app-key.ts create mode 100644 src/common/constants/cache-key.ts create mode 100644 src/common/utils/css.ts create mode 100644 src/common/utils/datetime.ts create mode 100644 src/common/utils/local-storage.ts create mode 100644 src/common/utils/permission.ts create mode 100644 src/common/utils/validate.ts create mode 100644 src/http/axios.ts create mode 100644 src/layouts/components/AppMain/index.vue create mode 100644 src/layouts/components/Breadcrumb/index.vue create mode 100644 src/layouts/components/Footer/index.vue create mode 100644 src/layouts/components/Hamburger/index.vue create mode 100644 src/layouts/components/Logo/index.vue create mode 100644 src/layouts/components/NavigationBar/index.vue create mode 100644 src/layouts/components/RightPanel/index.vue create mode 100644 src/layouts/components/Settings/SelectLayoutMode.vue create mode 100644 src/layouts/components/Settings/index.vue create mode 100644 src/layouts/components/Sidebar/Item.vue create mode 100644 src/layouts/components/Sidebar/Link.vue create mode 100644 src/layouts/components/Sidebar/index.vue create mode 100644 src/layouts/components/TagsView/ScrollPane.vue create mode 100644 src/layouts/components/TagsView/index.vue create mode 100644 src/layouts/components/index.ts create mode 100644 src/layouts/composables/useResize.ts create mode 100644 src/layouts/config.ts create mode 100644 src/layouts/index.vue create mode 100644 src/layouts/modes/LeftMode.vue create mode 100644 src/layouts/modes/LeftTopMode.vue create mode 100644 src/layouts/modes/TopMode.vue create mode 100644 src/main.ts create mode 100644 src/pages/dashboard/components/Admin.vue create mode 100644 src/pages/dashboard/components/Editor.vue create mode 100644 src/pages/dashboard/images/dashboard.svg create mode 100644 src/pages/dashboard/index.vue create mode 100644 src/pages/demo/composable-demo/apis/use-fetch-select.ts create mode 100644 src/pages/demo/composable-demo/apis/use-fullscreen-loading.ts create mode 100644 src/pages/demo/composable-demo/use-fetch-select.vue create mode 100644 src/pages/demo/composable-demo/use-fullscreen-loading.vue create mode 100644 src/pages/demo/composable-demo/use-watermark.vue create mode 100644 src/pages/demo/element-plus/index.vue create mode 100644 src/pages/demo/level2/index.vue create mode 100644 src/pages/demo/level2/level3/index.vue create mode 100644 src/pages/demo/permission/button-level.vue create mode 100644 src/pages/demo/permission/components/SwitchUser.vue create mode 100644 src/pages/demo/permission/page-level.vue create mode 100644 src/pages/demo/unocss/index.vue create mode 100644 src/pages/demo/vxe-table/index.vue create mode 100644 src/pages/error/403.vue create mode 100644 src/pages/error/404.vue create mode 100644 src/pages/error/components/Layout.vue create mode 100644 src/pages/error/images/403.svg create mode 100644 src/pages/error/images/404.svg create mode 100644 src/pages/login/apis/index.ts create mode 100644 src/pages/login/apis/type.ts create mode 100644 src/pages/login/components/Owl.vue create mode 100644 src/pages/login/composables/useFocus.ts create mode 100644 src/pages/login/images/close-eyes.png create mode 100644 src/pages/login/images/face.png create mode 100644 src/pages/login/images/hand-down-left.png create mode 100644 src/pages/login/images/hand-down-right.png create mode 100644 src/pages/login/images/hand-up-left.png create mode 100644 src/pages/login/images/hand-up-right.png create mode 100644 src/pages/login/index.vue create mode 100644 src/pages/redirect/index.vue create mode 100644 src/pinia/index.ts create mode 100644 src/pinia/stores/app.ts create mode 100644 src/pinia/stores/permission.ts create mode 100644 src/pinia/stores/settings.ts create mode 100644 src/pinia/stores/tags-view.ts create mode 100644 src/pinia/stores/user.ts create mode 100644 src/plugins/element-plus-icons.ts create mode 100644 src/plugins/index.ts create mode 100644 src/plugins/permission-directive.ts create mode 100644 src/plugins/svg-icon.ts create mode 100644 src/plugins/vxe-table.ts create mode 100644 src/router/config.ts create mode 100644 src/router/guard.ts create mode 100644 src/router/helper.ts create mode 100644 src/router/index.ts create mode 100644 src/router/whitelist.ts create mode 100644 tests/components/Notify.test.ts create mode 100644 tests/demo.test.ts create mode 100644 tests/utils/validate.test.ts create mode 100644 tsconfig.json create mode 100644 types/api.d.ts create mode 100644 types/auto/auto-imports.d.ts create mode 100644 types/auto/components.d.ts create mode 100644 types/auto/svg-component-global.d.ts create mode 100644 types/auto/svg-component.d.ts create mode 100644 types/directives.d.ts create mode 100644 types/env.d.ts create mode 100644 types/vue-router.d.ts create mode 100644 uno.config.ts create mode 100644 vite.config.ts diff --git a/.agents/skills/v3-create-crud/SKILL.md b/.agents/skills/v3-create-crud/SKILL.md new file mode 100644 index 0000000..fbbabac --- /dev/null +++ b/.agents/skills/v3-create-crud/SKILL.md @@ -0,0 +1,361 @@ +--- +name: v3-create-crud +description: 创建增删改查(CRUD)页面,基于 Element Plus 组件库,包含表格、搜索、分页、新增/编辑弹窗、删除确认等功能。当用户提到以下任何场景时都应触发:创建管理页面、创建列表页、创建表格页。即使用户没有明确说 CRUD,只要意图是创建带表格和表单操作的后台页面就应该使用此 Skill。使用时需提供模块名称和字段信息。 +metadata: + author: Glittering Ma & pany + version: "2026.06.13" +--- + +# 创建 CRUD 页面 + +根据用户提供的模块名称和字段信息,生成增删改查页面。 + +本 Skill 定义的是默认 CRUD 模式,当用户的实际需求与本 Skill 约定冲突时,以用户需求为准,灵活调整。 + +## 输入要求 + +用户需提供: +1. **模块名称**(如 `product`、`order`)— 用于目录名和命名 +2. **字段列表** — 每个字段需明确: + - 字段名(英文,camelCase) + - 中文标签 + - 类型(string / number / boolean / enum / date 等) + - 是否必填 + - 是否作为搜索条件 + - 是否需要自定义渲染(如 tag 状态展示) + +如果用户信息不完整,主动询问补全后再生成。 + +## 生成文件 + +在 `src/pages/<模块路径>/` 下生成: + +1. `index.vue` — 页面主文件 +2. `apis/index.ts` — 接口文件 +3. `apis/type.ts` — 类型定义 + +## 设计决策指引 + +生成代码时需要做出的判断(不要机械套用,根据具体场景决定): + +**弹窗宽度** — 默认用 `30%`,有复杂布局用 `50%` 或更大的比例。 + +**工具栏按钮** — 按需组合,不必全部包含: +- "新增" 几乎总是需要的 +- "批量删除" 仅在有批量操作需求时添加(对应表格 selection 列) +- "下载/导出" 仅在有导出需求时添加 +- "刷新当前页" 推荐保留,方便调试和手动刷新 + +**删除确认文案** — 选择对用户最有辨识度的字段作为确认提示(如用户名、订单编号、商品名称),而不是 id。 + +**搜索参数传递** — 保持简单,避免类型体操: +- 字段少(2-3 个)时可以逐个列出 +- 字段多时用 `...searchData` 展开更简洁 +- 核心原则:不要出现 `as any`,除非明确要求 + +**表单字段 vs 表格列** — 不是所有字段都同时出现在两处: +- 仅创建时需要的字段(如密码):表单中有,表格中无 +- 系统生成的字段(如创建时间):表格中有,表单中无 +- 用 `v-if="formData.id === undefined"` 控制仅新增时显示的字段 + +## 页面结构规范 + +页面整体包裹在 `
` 中,由搜索区域、表格区域、弹窗三部分组成。 + +### 1. 搜索区域 + +- `el-card`:`v-loading="loading"` + `shadow="never"` + `class="search-wrapper"` +- 内含 `el-form`:`ref="searchFormRef"` + `:inline="true"` + `:model="searchData"` +- 每个搜索字段设置 `prop`(`resetFields` 依赖它)和 `label` +- 末尾放查询按钮(`:icon="Search"` + `type="primary"`)和重置按钮(`:icon="Refresh"`) + +### 2. 表格区域 + +- `el-card`:`v-loading="loading"` + `shadow="never"` +- 工具栏(`div.toolbar-wrapper`)分左右两侧: + - 左侧:文字按钮(新增、批量删除等) + - 右侧:圆形图标按钮 + `el-tooltip`(下载、刷新当前页等) +- 表格(`div.table-wrapper` > `el-table :data="tableData"`): + - 需要批量操作时加 `type="selection"` 首列 + - 数据列:`prop` + `label` + `align="center"` + - 操作列:`fixed="right"` + 适当 `width` + `align="center"`,内含修改/删除按钮(`text bg size="small"`) + - 操作列按钮将 `scope.row` 传给强类型 handler 时,使用 `scope.row as XxxData` 明确行类型,避免 Element Plus 默认 `DefaultRow` 导致 `vue-tsc` 报错,不要使用 `as any` +- 分页(`div.pager-wrapper` > `el-pagination`) + +### 3. 弹窗 + +- `el-dialog`:`v-model="dialogVisible"` + 通过 `formData.id === undefined` 判断新增/修改标题 + `@closed="resetForm"` +- 使用 `@closed` 而非 `@close`(确保关闭动画结束后再重置,避免用户看到表单内容闪烁) +- 表单:`ref="formRef"` + `:model="formData"` + `:rules="formRules"` + `label-width="auto"` +- footer:取消按钮 + 确认按钮(`type="primary"` + `:loading="loading"`) + +## 代码组织规范 + +使用 ` + + +``` + +## 灰色模式与色弱模式 `useGreyAndColorWeakness` + +初始化灰色模式和色弱模式,基于 `settingsStore` 的配置自动切换 HTML 根元素的 CSS 类名。 + +```ts +import { useGreyAndColorWeakness } from "@@/composables/useGreyAndColorWeakness" + +const { initGreyAndColorWeakness } = useGreyAndColorWeakness() + +// 应用启动时调用一次即可,后续会自动响应 Store 变化 +initGreyAndColorWeakness() +``` + +## 布局模式 `useLayoutMode` + +管理系统布局模式(左侧菜单 / 顶部菜单 / 左侧 + 顶部混合菜单)。 + +```ts +import { useLayoutMode } from "@@/composables/useLayoutMode" +import { LayoutModeEnum } from "@@/constants/app-key" + +const { isLeft, isTop, isLeftTop, setLayoutMode } = useLayoutMode() + +// 判断当前布局 +if (isLeft.value) { + // 左侧菜单布局 +} + +// 切换布局 +setLayoutMode(LayoutModeEnum.Top) +``` + +## 使用原则 + +1. 优先使用这些内置组合式函数,不要重复造轮子 +2. 组合式函数内部已处理生命周期(如 `onBeforeUnmount` 自动清理),无需手动管理 +3. 需要新增通用组合式函数时,在 `src/common/composables` 目录下创建,命名以 `use` 开头 +4. 页面私有的组合式函数应放在对应页面目录的 `composables` 子目录下,而非 `src/common/composables` diff --git a/.agents/skills/v3-use-utils/SKILL.md b/.agents/skills/v3-use-utils/SKILL.md new file mode 100644 index 0000000..9658d73 --- /dev/null +++ b/.agents/skills/v3-use-utils/SKILL.md @@ -0,0 +1,117 @@ +--- +name: v3-use-utils +description: 项目内置工具函数使用教程,涵盖验证、日期格式化、CSS 变量、权限判断、本地存储等工具。当用户提到以下任何场景时都应触发:使用工具函数、调用 utils、格式化日期、判断权限、操作 localStorage、获取/设置 CSS 变量、验证数据类型、判断外链、获取/存储 Token。即使用户没有明确说 Utils,只要意图是使用项目内置的通用工具函数就应该使用此 Skill。 +metadata: + author: pany + version: "2026.06.03" +--- + +# 内置工具函数使用教程 + +项目在 `src/common/utils` 目录下提供了一组通用工具函数,通过路径别名 `@@/utils/` 导入。 + +本 Skill 定义的是项目内置的工具函数,当这些函数不存在时,以用户需求为准,新增对应函数。 + +## 验证工具 `@@/utils/validate` + +```ts +import { isArray, isString, isExternal } from "@@/utils/validate" + +// 判断是否为数组 +isArray([1, 2, 3]) // true + +// 判断是否为字符串 +isString("hello") // true + +// 判断是否为外链(以 http(s)://、mailto:、tel: 开头) +isExternal("https://example.com") // true +isExternal("/dashboard") // false +``` + +## 日期格式化 `@@/utils/datetime` + +基于 dayjs 封装,无效日期返回 `"N/A"`。 + +```ts +import { formatDateTime } from "@@/utils/datetime" + +// 默认格式 YYYY-MM-DD HH:mm:ss +formatDateTime("2026-01-15T10:30:00") // "2026-01-15 10:30:00" + +// 自定义格式 +formatDateTime("2026-01-15", "YYYY/MM/DD") // "2026/01/15" + +// 支持时间戳 +formatDateTime(1737000000000) // 格式化后的日期时间 + +// 无效输入 +formatDateTime("invalid") // "N/A" +``` + +## CSS 变量 `@@/utils/css` + +读取和设置 CSS 变量(变量名必须以 `--` 开头)。`getCssVar` 未找到变量时返回空串 `""`,不是 `undefined`。 + +```ts +import { getCssVar, setCssVar } from "@@/utils/css" + +// 获取全局 CSS 变量 +const color = getCssVar("--el-color-primary") + +// 设置全局 CSS 变量 +setCssVar("--el-color-primary", "#409eff") + +// 操作指定元素上的 CSS 变量 +const el = document.querySelector(".container") as HTMLElement +setCssVar("--bg-color", "#fff", el) +``` + +## 权限判断 `@@/utils/permission` + +基于当前用户角色或权限判断是否拥有指定权限,内部读取 `useUserStore().roles` 和 `useUserStore().permissions`。 + +```ts +import { checkPermission } from "@@/utils/permission" + +// 判断当前用户是否拥有 admin 或 editor 角色 +if (checkPermission(["admin", "editor"])) { + // 有权限 +} + +// 判断当前用户是否拥有指定权限 +if (checkPermission(["permission:button-level"])) { + // 有权限 +} +``` + +适用于模板中 `v-permission` 指令无法覆盖的场景(如在 TS 逻辑中做条件判断)。 + +## 本地存储 `@@/utils/local-storage` + +对 localStorage 的类型安全封装,所有 key 统一由 `@@/constants/cache-key` 中的 `CacheKey` 管理。 + +```ts +import { getToken, setToken, removeToken } from "@@/utils/local-storage" + +// Token 操作 +setToken("eyJhbGciOiJIUzI1NiJ9...") +const token = getToken() +removeToken() +``` + +可用函数一览: + +| 分组 | 函数 | 说明 | +|------|------|------| +| Token | `getToken` / `setToken` / `removeToken` | 用户认证令牌 | +| 布局配置 | `getLayoutsConfig` / `setLayoutsConfig` / `removeLayoutsConfig` | 系统布局设置 | +| 侧边栏 | `getSidebarStatus` / `setSidebarStatus` | 侧边栏展开/收起状态 | +| 主题 | `getActiveThemeName` / `setActiveThemeName` | 当前主题名称 | +| 标签栏 | `getVisitedViews` / `setVisitedViews` / `getCachedViews` / `setCachedViews` | 标签页缓存 | + +## 使用原则 + +1. 优先使用这些内置工具,不要重复造轮子 +2. 需要新增 localStorage 存储项时,先在 `CacheKey` 中定义 key,再在 `local-storage.ts` 中添加对应的 get / set 函数 +3. 需要新增通用工具时,根据功能归类到对应文件,或创建新的工具文件 +4. 工具文件之间可以互相引用(如 `permission.ts` 引用了 `@@/utils/validate`),新建工具时也可复用已有工具 diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..1104dd5 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,24 @@ +# 配置项文档:https://editorconfig.org(修改配置后重启编辑器) + +## 告知 EditorConfig 插件,当前即是根文件 +root = true + +## 适用全部文件 +[*] +### 设置字符集 +charset = utf-8 +### 缩进风格 space | tab,建议 space +indent_style = space +### 缩进的空格数 +indent_size = 2 +### 换行符类型 lf | cr | crlf,一般都是设置为 lf +end_of_line = lf +### 是否在文件末尾插入空白行 +insert_final_newline = true +### 是否删除一行中的前后空格 +trim_trailing_whitespace = true + +## 适用 .md 文件 +[*.md] +insert_final_newline = false +trim_trailing_whitespace = false diff --git a/.env b/.env new file mode 100644 index 0000000..5919cdb --- /dev/null +++ b/.env @@ -0,0 +1,7 @@ +# 所有环境的环境变量(命名必须以 VITE_ 开头) + +## 项目标题 +VITE_APP_TITLE = V3 Admin Vite + +## 路由模式 hash 或 html5 +VITE_ROUTER_HISTORY = hash diff --git a/.env.development b/.env.development new file mode 100644 index 0000000..fbfaaf5 --- /dev/null +++ b/.env.development @@ -0,0 +1,7 @@ +# 开发环境的环境变量(命名必须以 VITE_ 开头) + +## 后端接口地址(如果解决跨域问题采用反向代理就只需写相对路径) +VITE_BASE_URL = /api/v1 + +## 开发环境域名和静态资源公共路径(一般 / 或 ./ 都可以) +VITE_PUBLIC_PATH = / diff --git a/.env.production b/.env.production new file mode 100644 index 0000000..04e8e3c --- /dev/null +++ b/.env.production @@ -0,0 +1,7 @@ +# 生产环境的环境变量(命名必须以 VITE_ 开头) + +## 后端接口地址(如果解决跨域问题采用 CORS 就需要写绝对路径) +VITE_BASE_URL = https://apifoxmock.com/m1/2930465-2145633-default/api/v1 + +## 打包构建静态资源公共路径(例如部署到 https://un-pany.github.io/v3-admin-vite/ 域名下就需要填写 /v3-admin-vite/) +VITE_PUBLIC_PATH = /v3-admin-vite/ diff --git a/.env.staging b/.env.staging new file mode 100644 index 0000000..1e720bb --- /dev/null +++ b/.env.staging @@ -0,0 +1,7 @@ +# 预发布环境的环境变量(命名必须以 VITE_ 开头) + +## 后端接口地址(如果解决跨域问题采用 CORS 就需要写绝对路径) +VITE_BASE_URL = https://apifoxmock.com/m1/2930465-2145633-default/api/v1 + +## 打包构建静态资源公共路径(例如部署到 https://un-pany.github.io/ 域名下就需要填写 /) +VITE_PUBLIC_PATH = / diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7a555fe --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +# Common +dist +node_modules +.eslintcache +vite.config.*.timestamp* + +# MacOS +.DS_Store + +# Local env files +*.local +*.local.json + +# Logs +*.log + +# Use the pnpm +package-lock.json +yarn.lock + +# Agent data +.omc +.agents/skills/* +!.agents/skills/v3-*/ diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..1db20f5 --- /dev/null +++ b/.npmrc @@ -0,0 +1,5 @@ +# China mirror of npm +registry = https://registry.npmmirror.com + +# 安装依赖时锁定版本号 +save-exact = true diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..01a96d8 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,10 @@ +{ + "recommendations": [ + "vue.volar", + "editorconfig.editorconfig", + "dbaeumer.vscode-eslint", + "antfu.unocss", + "vitest.explorer", + "wiensss.region-highlighter" + ] +} diff --git a/.vscode/hook.code-snippets b/.vscode/hook.code-snippets new file mode 100644 index 0000000..7f82a51 --- /dev/null +++ b/.vscode/hook.code-snippets @@ -0,0 +1,15 @@ +{ + "Vue3 Composable 代码结构一键生成": { + "prefix": "Vue3 Composable", + "body": [ + "const refName1 = ref(\"这是一个响应式变量\")\n", + "export function useName() {", + "\tconst refName2 = ref(\"这是一个响应式变量\")\n", + "\tconst fnName = () => {}\n", + "\treturn { refName1, refName2, fnName }", + "}", + "$1" + ], + "description": "Vue3 Composable" + } +} diff --git a/.vscode/mcp.json b/.vscode/mcp.json new file mode 100644 index 0000000..71383c9 --- /dev/null +++ b/.vscode/mcp.json @@ -0,0 +1,8 @@ +{ + "servers": { + "vite": { + "type": "sse", + "url": "http://localhost:3333/__mcp/sse" + } + } +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..baff749 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,56 @@ +{ + // Use workspace TypeScript version + "typescript.tsdk": "node_modules/typescript/lib", + + // Show inlay hints for destructured props + "vue.inlayHints.destructuredProps": true, + + // Disable the default formatter, use eslint instead + "prettier.enable": false, + "editor.formatOnSave": false, + + // Auto fix + "editor.codeActionsOnSave": { + "source.fixAll.eslint": "explicit", + "source.organizeImports": "never" + }, + + // Silent the stylistic rules in you IDE, but still auto fix them + "eslint.rules.customizations": [ + { "rule": "style/*", "severity": "off", "fixable": true }, + { "rule": "format/*", "severity": "off", "fixable": true }, + { "rule": "*-indent", "severity": "off", "fixable": true }, + { "rule": "*-spacing", "severity": "off", "fixable": true }, + { "rule": "*-spaces", "severity": "off", "fixable": true }, + { "rule": "*-order", "severity": "off", "fixable": true }, + { "rule": "*-dangle", "severity": "off", "fixable": true }, + { "rule": "*-newline", "severity": "off", "fixable": true }, + { "rule": "*quotes", "severity": "off", "fixable": true }, + { "rule": "*semi", "severity": "off", "fixable": true } + ], + + // Enable eslint for all supported languages + "eslint.validate": [ + "javascript", + "javascriptreact", + "typescript", + "typescriptreact", + "vue", + "html", + "markdown", + "json", + "jsonc", + "yaml", + "toml", + "xml", + "gql", + "graphql", + "astro", + "svelte", + "css", + "less", + "scss", + "pcss", + "postcss" + ] +} diff --git a/.vscode/vue.code-snippets b/.vscode/vue.code-snippets new file mode 100644 index 0000000..2bc45fd --- /dev/null +++ b/.vscode/vue.code-snippets @@ -0,0 +1,16 @@ +{ + "Vue3 SFC 代码结构一键生成": { + "prefix": "Vue3 SFC", + "body": [ + "\n", + "\n", + "", + "$1" + ], + "description": "Vue3 SFC" + } +} diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..5e45f17 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,143 @@ +## 原则 + +### 1. 编码前思考 + +**不要假设,不要隐藏困惑,呈现权衡** + +在实现之前: + +- 明确陈述你的假设,如果不确定,请提问 +- 如果存在多种解读,把它们都列出来,不要默默选择其一 +- 如果有更简单的方案,就指出来,在必要时提出反对意见 +- 如果有不清楚的地方,停下来,说出哪里让你困惑,然后提问 + +### 2. 简洁优先 + +**用最少的代码解决问题,不要过度推测** + +- 不要添加要求之外的功能 +- 不要为一次性代码创建抽象 +- 不要添加未要求的 "灵活性" 或 "可配置性" +- 不要为不可能发生的场景做错误处理 +- 如果 200 行代码可以写成 50 行,重写它 + +**检验标准:** 资深工程师会觉得这过于复杂吗?如果是,简化 + +### 3. 精准修改 + +**只碰必须碰的,只清理自己造成的混乱** + +编辑现有代码时: + +- 不要 "改进" 相邻的代码、注释或格式 +- 不要重构没坏的东西 +- 匹配现有风格,即使你更倾向于不同的写法 +- 如果注意到无关的死代码,提一下,不要删除它 + +当你的改动产生孤儿代码时: + +- 删除因你的改动而变得无用的导入、变量或函数 +- 不要删除预先存在的死代码,除非被要求 + +**检验标准:** 每一行修改都应该能直接追溯到用户的请求 + +### 4. 目标驱动执行 + +**定义成功标准,循环验证直到达成** + +将指令式任务转化为可验证的目标: + +"添加验证" → "为无效输入编写测试,然后让它们通过" +"修复 bug" → "编写重现 bug 的测试,然后让它通过" +"重构 X" → "确保重构前后测试都能通过" + +对于多步骤任务,说明一个简短的计划: + +``` +1. [步骤] → 验证: [检查] +2. [步骤] → 验证: [检查] +3. [步骤] → 验证: [检查] +``` + +明确有力的成功标准能让你独立循环推进,模糊的标准("让它工作")只会不断需要澄清 + +## 命令 + +```bash +pnpm i # 安装依赖 +pnpm dev # 启动服务 +pnpm build:staging # 打包构建预发布环境 +pnpm build # 打包构建生产环境 +pnpm preview # 先执行打包构建命令生成 dist 目录后再执行以下预览命令 +pnpm lint # 代码校验与格式化 +pnpm test # 单元测试 +``` + +## 架构 + +### 技术栈 + +- 框架: Vue 3.5 +- 打包构建工具: Vite 7 +- 路由管理: Vue Router 5 +- 状态管理: Pinia 3 +- UI 组件库: Element Plus +- CSS 预处理器: Scss +- 代码校验与格式化: ESLint +- 开发语言: TypeScript +- 包管理工具: pnpm +- 网络请求: Axios + +### 目录结构 + +```sh +v3-admin-vite +├─ .husky # commit 时进行代码校验和格式化 +├─ .vscode # vscode 配置和插件 +├─ public +│ ├─ favicon.ico # 网站头像 +│ ├─ app-loading.css # 首屏 loading 动画 +│ └─ detect-ie.js # 检测 ie +├─ src +│ ├─ common # 通用目录 +│ │ ├─ apis # 通用目录 - 接口 +│ │ ├─ assets # 通用目录 - 静态资源 +│ │ ├─ components # 通用目录 - 组件 +│ │ ├─ composables # 通用目录 - 组合式函数 +│ │ ├─ constants # 通用目录 - 常量 +│ │ └─ utils # 通用目录 - 工具函数 +│ ├─ http # 网络请求 +│ ├─ layouts # 布局 +│ ├─ pages # 页面 +│ │ └─ login # 登录模块 +│ │ ├─ apis # 登录模块 - 私有接口 +│ │ ├─ components # 登录模块 - 私有组件 +│ │ ├─ composables # 登录模块 - 私有组合式函数 +│ │ ├─ images # 登录模块 - 私有图片 +│ │ └─ index.vue # 登录模块 - 页面 +│ ├─ pinia # 状态管理 +│ ├─ plugins # 插件(全局组件、自定义指令等) +│ ├─ router # 路由 +│ ├─ App.vue # 入口页面 +│ └─ main.ts # 入口文件 +├─ tests # 单元测试 +├─ types # 类型声明 +│ └─ auto # 自动生成的类型(禁止手动修改) +├─ .editorconfig # 编辑器配置 +├─ .env # 所有环境 +├─ .env.development # 开发环境 +├─ .env.production # 生产环境 +├─ .env.staging # 预发布环境 +├─ eslint.config.js # eslint 配置 +├─ tsconfig.json # ts 配置 +├─ uno.config.ts # unocss 配置 +└─ vite.config.ts # vite 配置 +``` + +- 保持目录结构清晰,遵循现有目录规范 +- 同一个业务逻辑的代码和资源应当被收拢到了一起,避免在不同的目录间来回跳跃 (例如登录模块的接口应该放在 `src/pages/login/apis` 而不是 `src/common/apis`) + +## 约定 + +- 按需参考 `.cursor/rules` 目录下规则 +- 任何时候都禁止主动删除文件,必须经过同意 diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..43c994c --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +@AGENTS.md diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..831d018 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2022-present pany + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..889d26b --- /dev/null +++ b/README.md @@ -0,0 +1,238 @@ +
+ logo +

V3 Admin Vite - AI Friendly

+
+ +[![github release](https://img.shields.io/github/v/release/un-pany/v3-admin-vite?style=flat)](https://github.com/un-pany/v3-admin-vite/releases) +[![github stars](https://img.shields.io/github/stars/un-pany/v3-admin-vite?style=flat)](https://github.com/un-pany/v3-admin-vite/stargazers) +[![gitee stars](https://gitee.com/un-pany/v3-admin-vite/badge/star.svg)](https://gitee.com/un-pany/v3-admin-vite/stargazers) +[![atomgit stars](https://atomgit.com/un-pany/v3-admin-vite/star/badge.svg)](https://atomgit.com/un-pany/v3-admin-vite/stargazers) + +English | 中文 + +## Introduction AI Coding + +V3 Admin Vite is an AI-friendly admin dashboard template built on mainstream technologies such as Vue3, Vite, TypeScript, and Element Plus, offering an excellent "Vibe Coding" experience! + +_Supports mainstream AI coding tools such as Claude Code, CodeX, Cursor, Trae, and Antigravity_ + +## Notifications + +> [!IMPORTANT] +> Welcome to the all-new version 5.2, delivering a unique AI coding experience! It also introduces the long-awaited backend-controlled dynamic routing permission system + +> [!WARNING] +> Version 4.x will no longer be maintained unless there are critical bugs! [Click to switch to the 4.x branch](https://github.com/un-pany/v3-admin-vite/tree/4.x) + +> [!TIP] +> Paid services are officially launched! If you don’t want to do it yourself but want to remove TS or other modules, try the lazy package! [Click to check it out](https://github.com/un-pany/v3-admin-vite/issues/225) + +> [!NOTE] +> If you have mobile web app requirements, give the new open-source template [MobVue](https://github.com/un-pany/mobvue) a try + +## Usage + +
+Recommended Environment + +
+ +- Latest version of `Visual Studio Code` or AI IDE `Cursor` and `Trae` +- Install the recommended plugins in the `.vscode/extensions.json` file +- `node` 20.19+ or 22.12+ +- `pnpm` 10+ + +
+ +
+Local Development + +
+ +```bash +# Clone the project +git clone https://github.com/un-pany/v3-admin-vite.git + +# Enter the project directory +cd v3-admin-vite + +# Install dependencies +pnpm i + +# Start the development server +pnpm dev +``` + +
+ +
+Build + +
+ +```bash +# Build for the staging environment +pnpm build:staging + +# Build for the production environment +pnpm build +``` + +
+ +
+Local Preview + +
+ +```bash +# Execute the build command first to generate the dist directory, then run the preview command +pnpm preview +``` + +
+ +
+Code Check + +
+ +```bash +# Code linting and formatting +pnpm lint + +# Unit tests +pnpm test +``` + +
+ +
+Commit Guidelines + +
+ +`feat` New feature + +`fix` Bug fix + +`perf` Performance improvement + +`refactor` Code refactoring + +`docs` Documentation and comments + +`types` Type-related changes + +`test` Unit tests related + +`ci` Continuous integration, workflows + +`revert` Revert changes + +`chore` Chores (update dependencies, modify configurations, etc) + +
+ +
+Install recommended skills + +
+ +```bash +npx skills experimental_install +``` + +
+ +## Links + +**Online Preview**: [github-pages](https://un-pany.github.io/v3-admin-vite) + +**Chinese Documentation**: [link](https://juejin.cn/post/7445151895121543209) + +**Zero to Hero Tutorial**: [link](https://juejin.cn/column/7207659644487139387) + +**Mobile Web App**: [mobvue](https://github.com/un-pany/mobvue) + +**Electron Desktop Version**: [v3-electron-vite](https://github.com/un-pany/v3-electron-vite) + +**Chinese Repository**: [gitee](https://gitee.com/un-pany/v3-admin-vite), [atomgit](https://atomgit.com/un-pany/v3-admin-vite) + +**Optional Group**: [check how to join](https://github.com/un-pany/v3-admin-vite/issues/191) + +**Donations**: [buy a coffee for the author](https://github.com/un-pany/v3-admin-vite/issues/69) + +**Releases & Changelog**: [releases](https://github.com/un-pany/v3-admin-vite/releases) + +## Features + +**Simplified structure**: No complex encapsulation, no complicated type gymnastics, just enough to meet the needs + +**Detailed comments**: Every configuration item comes with as detailed comments as possible + +**Latest dependencies**: Keeps all third-party dependencies up to date + +**Consistency**: Unified code style, naming conventions, and comment style + +## Built-in Features + +**User Management**: Login, logout demonstration + +**Permission Management**: Page-level permissions (dynamic routing controlled by backend APIs), button-level permissions (permission directives and functions), and route guards + +**Multiple Environments**: Development, staging, and production environments + +**Multiple Themes**: Normal, dark, and deep blue themes + +**Multiple Layouts**: Left-side, top, and hybrid layouts + +**Homepage**: Different dashboard pages for different users + +**Error Pages**: 403, 404 + +**Mobile Compatibility**: Layouts compatible with mobile screen resolutions + +**Others**: SVG sprite sheet, dynamic sidebar, dynamic breadcrumbs, tab navigation, content zoom and fullscreen, composable functions + +## Tech Stack + +**Vue3**: Vue3 + script setup with the latest Vue3 Composition API + +**Element Plus**: The Vue3 version of Element UI + +**Pinia**: The legendary Vuex5 + +**Vite**: Really fast + +**Vue Router**: The routing system + +**TypeScript**: A superset of JavaScript + +**pnpm**: A faster, disk-space-saving package manager + +**Scss**: Consistent with Element Plus + +**CSS Variables**: Primarily controls layout and color in the project + +**ESLint**: Code linting and formatting + +**Axios**: Sends network requests + +**UnoCSS**: A high-performance, flexible atomic CSS engine + +## Project Preview Image + +![preview](./src/common/assets/images/docs/preview.png) + +## Contributors + +A big thank you to all the contributors! + + + contributors + + +## License + +[MIT](./LICENSE) License © 2022-PRESENT [pany](https://github.com/pany-ang) diff --git a/README.zh-CN.md b/README.zh-CN.md new file mode 100644 index 0000000..cacea97 --- /dev/null +++ b/README.zh-CN.md @@ -0,0 +1,238 @@ +
+ logo +

V3 Admin Vite - AI Friendly

+
+ +[![github release](https://img.shields.io/github/v/release/un-pany/v3-admin-vite?style=flat)](https://github.com/un-pany/v3-admin-vite/releases) +[![github stars](https://img.shields.io/github/stars/un-pany/v3-admin-vite?style=flat)](https://github.com/un-pany/v3-admin-vite/stargazers) +[![gitee stars](https://gitee.com/un-pany/v3-admin-vite/badge/star.svg)](https://gitee.com/un-pany/v3-admin-vite/stargazers) +[![atomgit stars](https://atomgit.com/un-pany/v3-admin-vite/star/badge.svg)](https://atomgit.com/un-pany/v3-admin-vite/stargazers) + +English | 中文 + +## 简介 AI Coding + +V3 Admin Vite 是一个 AI 友好的后台管理系统模板,基于 Vue3、Vite、TypeScript、Element Plus 等主流技术,并且具备优秀的 Vibe Coding 体验! + +_支持 Claude Code、CodeX、Cursor、Trae、Antigravity 等主流 AI Coding 工具_ + +## 通知 + +> [!IMPORTANT] +> 欢迎体验全新的 5.2 版本,它将带来不一样的 AI Coding 体验!同时还支持了大家期待已久的后端控制动态路由权限方案~ + +> [!WARNING] +> 4.x 版本如果没有严重的 BUG 将不再维护![点击切换到 4.x 分支](https://github.com/un-pany/v3-admin-vite/tree/4.x) + +> [!TIP] +> 正式推出付费服务,如果不想自己动手,但想移除 TS 或其他模块?试试懒人套餐![点击看看](https://github.com/un-pany/v3-admin-vite/issues/225) + +> [!NOTE] +> 如果你有移动端 H5 需求,试试新的开源模板 [MobVue](https://github.com/un-pany/mobvue) + +## 使用 + +
+推荐环境 + +
+ +- 新版 `Visual Studio Code` 或者 AI IDE `Cursor` 与 `Trae` +- 安装 `.vscode/extensions.json` 文件中推荐的插件 +- `node` 20.19+ 或 22.12+ +- `pnpm` 10+ + +
+ +
+本地开发 + +
+ +```bash +# 克隆项目 +git clone https://github.com/un-pany/v3-admin-vite.git + +# 进入项目目录 +cd v3-admin-vite + +# 安装依赖 +pnpm i + +# 启动服务 +pnpm dev +``` + +
+ +
+打包构建 + +
+ +```bash +# 打包构建预发布环境 +pnpm build:staging + +# 打包构建生产环境 +pnpm build +``` + +
+ +
+本地预览 + +
+ +```bash +# 先执行打包构建命令生成 dist 目录后再执行以下预览命令 +pnpm preview +``` + +
+ +
+代码检查 + +
+ +```bash +# 代码校验与格式化 +pnpm lint + +# 单元测试 +pnpm test +``` + +
+ +
+代码提交规范 + +
+ +`feat` 新功能 + +`fix` 修复错误 + +`perf` 性能优化 + +`refactor` 重构代码 + +`docs` 文档和注释 + +`types` 类型相关 + +`test` 单测相关 + +`ci` 持续集成、工作流 + +`revert` 撤销更改 + +`chore` 琐事(更新依赖、修改配置等) + +
+ +
+安装推荐的 Skills + +
+ +```bash +npx skills experimental_install +``` + +
+ +## 链接 + +**在线预览**:[github-pages](https://un-pany.github.io/v3-admin-vite) + +**中文文档**:[链接](https://juejin.cn/post/7445151895121543209) + +**零基础教程**:[链接](https://juejin.cn/column/7207659644487139387) + +**移动端 H5**:[mobvue](https://github.com/un-pany/mobvue) + +**Electron 桌面版**:[v3-electron-vite](https://github.com/un-pany/v3-electron-vite) + +**国内仓库**:[gitee](https://gitee.com/un-pany/v3-admin-vite)、[atomgit](https://atomgit.com/un-pany/v3-admin-vite) + +**可有可无的群**:[查看进群方式](https://github.com/un-pany/v3-admin-vite/issues/191) + +**捐赠**:[请作者喝咖啡](https://github.com/un-pany/v3-admin-vite/issues/69) + +**发行版 & 更新日志**:[releases](https://github.com/un-pany/v3-admin-vite/releases) + +## 特性 + +**结构精简**:没有复杂的封装,没有复杂的类型体操,刚好够用 + +**详细的注释**:各个配置项都写有尽可能详细的注释 + +**最新的依赖**:及时更新所有三方依赖至最新版 + +**有一点规范**:代码风格统一、命名风格统一、注释风格统一 + +## 内置功能 + +**用户管理**:登录、登出演示 + +**权限管理**:页面级权限(后端接口控制动态路由)、按钮级权限(权限指令、权限函数)、路由守卫 + +**多环境**:开发环境(development)、预发布环境(staging)、生产环境(production) + +**多主题**:普通、黑暗、深蓝, 三种主题模式 + +**多布局**:左侧、顶部、混合, 三种布局模式 + +**首页**:根据不同用户显示不同的 Dashboard 页面 + +**错误页**:403、404 + +**兼容移动端**:布局兼容移动端页面分辨率 + +**其他**:SVG 雪碧图、动态侧边栏、动态面包屑、标签页快捷导航、内容区放大与全屏、组合式函数 + +## 技术栈 + +**Vue3**:采用 Vue3 + script setup 最新的 Vue3 组合式 API + +**Element Plus**:Element UI 的 Vue3 版本 + +**Pinia**:传说中的 Vuex5 + +**Vite**:真的很快 + +**Vue Router**:路由路由 + +**TypeScript**:JavaScript 语言的超集 + +**pnpm**:更快速的,节省磁盘空间的包管理工具 + +**Scss**:和 Element Plus 保持一致 + +**CSS 变量**:主要控制项目的布局和颜色 + +**ESLint**:代码校验与格式化 + +**Axios**:发送网络请求(已封装好) + +**UnoCSS**:具有高性能且极具灵活性的即时原子化 CSS 引擎 + +## 项目预览图 + +![preview](./src/common/assets/images/docs/preview.png) + +## 贡献者 + +在此感谢所有的贡献者! + + + contributors + + +## License + +[MIT](./LICENSE) License © 2022-PRESENT [pany](https://github.com/pany-ang) diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 0000000..221ff0f --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,43 @@ +import antfu from "@antfu/eslint-config" + +// 更多自定义配置可查阅仓库:https://github.com/antfu/eslint-config +export default antfu( + { + // 使用外部格式化程序格式化 css、html、markdown 等文件 + formatters: true, + // 启用样式规则 + stylistic: { + // 缩进级别 + indent: 2, + // 引号风格 'single' | 'double' + quotes: "double", + // 是否启用分号 + semi: false + }, + // 忽略文件 + ignores: ["*/skills"] + }, + { + // 对所有文件都生效的规则 + rules: { + // vue + "vue/block-order": ["error", { order: ["script", "template", "style"] }], + "vue/attributes-order": "off", + // ts + "ts/no-use-before-define": "off", + // node + "node/prefer-global/process": "off", + // style + "style/comma-dangle": ["error", "never"], + "style/brace-style": ["error", "1tbs"], + // regexp + "regexp/no-unused-capturing-group": "off", + // other + "no-console": "off", + "no-debugger": "off", + "symbol-description": "off", + "antfu/if-newline": "off", + "unicorn/no-instanceof-builtins": "off" + } + } +) diff --git a/index.html b/index.html new file mode 100644 index 0000000..89002c2 --- /dev/null +++ b/index.html @@ -0,0 +1,17 @@ + + + + + + + + %VITE_APP_TITLE% + + + +
+
+
+ + + diff --git a/package.json b/package.json new file mode 100644 index 0000000..55ed90b --- /dev/null +++ b/package.json @@ -0,0 +1,62 @@ +{ + "name": "v3-admin-vite", + "type": "module", + "version": "5.2.0", + "description": "AI-friendly admin template, built with Vue3, Vite, TypeScript, Element Plus, and more", + "author": "pany <939630029@qq.com> (https://github.com/pany-ang)", + "repository": "https://github.com/un-pany/v3-admin-vite", + "scripts": { + "dev": "vite", + "build:staging": "vue-tsc && vite build --mode staging", + "build": "vue-tsc && vite build", + "preview": "vite preview", + "lint": "eslint --fix", + "prepare": "husky", + "test": "vitest" + }, + "dependencies": { + "@element-plus/icons-vue": "2.3.2", + "axios": "1.18.1", + "dayjs": "1.11.21", + "element-plus": "2.14.2", + "lodash-es": "4.18.1", + "mitt": "3.0.1", + "normalize.css": "8.0.1", + "nprogress": "0.2.0", + "path-browserify": "1.0.1", + "path-to-regexp": "8.4.2", + "pinia": "3.0.4", + "screenfull": "6.0.2", + "vue": "3.5.39", + "vue-router": "5.1.0", + "vxe-table": "4.6.25" + }, + "devDependencies": { + "@antfu/eslint-config": "9.1.0", + "@types/lodash-es": "4.17.12", + "@types/node": "26.1.1", + "@types/nprogress": "0.2.3", + "@types/path-browserify": "1.0.3", + "@vitejs/plugin-vue": "6.0.7", + "@vue/test-utils": "2.4.11", + "eslint": "10.6.0", + "eslint-plugin-format": "2.0.1", + "happy-dom": "20.10.6", + "husky": "9.1.7", + "lint-staged": "17.0.8", + "sass-embedded": "1.78.0", + "typescript": "5.9.3", + "unocss": "66.7.5", + "unplugin-auto-import": "21.0.0", + "unplugin-svg-component": "0.12.6", + "unplugin-vue-components": "32.1.0", + "vite": "7.3.6", + "vite-plugin-mcp": "0.3.2", + "vite-svg-loader": "5.1.1", + "vitest": "4.1.10", + "vue-tsc": "3.3.7" + }, + "lint-staged": { + "*": "eslint --fix" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..cef4a54 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,8706 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@element-plus/icons-vue': + specifier: 2.3.2 + version: 2.3.2(vue@3.5.39(typescript@5.9.3)) + axios: + specifier: 1.18.1 + version: 1.18.1 + dayjs: + specifier: 1.11.21 + version: 1.11.21 + element-plus: + specifier: 2.14.2 + version: 2.14.2(vue@3.5.39(typescript@5.9.3)) + lodash-es: + specifier: 4.18.1 + version: 4.18.1 + mitt: + specifier: 3.0.1 + version: 3.0.1 + normalize.css: + specifier: 8.0.1 + version: 8.0.1 + nprogress: + specifier: 0.2.0 + version: 0.2.0 + path-browserify: + specifier: 1.0.1 + version: 1.0.1 + path-to-regexp: + specifier: 8.4.2 + version: 8.4.2 + pinia: + specifier: 3.0.4 + version: 3.0.4(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)) + screenfull: + specifier: 6.0.2 + version: 6.0.2 + vue: + specifier: 3.5.39 + version: 3.5.39(typescript@5.9.3) + vue-router: + specifier: 5.1.0 + version: 5.1.0(@vue/compiler-sfc@3.5.39)(esbuild@0.27.2)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)))(rolldown@1.1.5)(rollup@4.62.2)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))(vue@3.5.39(typescript@5.9.3)) + vxe-table: + specifier: 4.6.25 + version: 4.6.25(vue@3.5.39(typescript@5.9.3)) + devDependencies: + '@antfu/eslint-config': + specifier: 9.1.0 + version: 9.1.0(@typescript-eslint/rule-tester@8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(@typescript-eslint/typescript-estree@8.63.0(typescript@5.9.3))(@typescript-eslint/utils@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(@vue/compiler-sfc@3.5.39)(eslint-plugin-format@2.0.1(eslint@10.6.0(jiti@2.7.0)))(eslint@10.6.0(jiti@2.7.0))(ts-declaration-location@1.0.7(typescript@5.9.3))(typescript@5.9.3)(vitest@4.1.10(@types/node@26.1.1)(happy-dom@20.10.6)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))) + '@types/lodash-es': + specifier: 4.17.12 + version: 4.17.12 + '@types/node': + specifier: 26.1.1 + version: 26.1.1 + '@types/nprogress': + specifier: 0.2.3 + version: 0.2.3 + '@types/path-browserify': + specifier: 1.0.3 + version: 1.0.3 + '@vitejs/plugin-vue': + specifier: 6.0.7 + version: 6.0.7(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))(vue@3.5.39(typescript@5.9.3)) + '@vue/test-utils': + specifier: 2.4.11 + version: 2.4.11(@vue/compiler-dom@3.5.39)(@vue/server-renderer@3.5.39(vue@3.5.39(typescript@5.9.3)))(vue@3.5.39(typescript@5.9.3)) + eslint: + specifier: 10.6.0 + version: 10.6.0(jiti@2.7.0) + eslint-plugin-format: + specifier: 2.0.1 + version: 2.0.1(eslint@10.6.0(jiti@2.7.0)) + happy-dom: + specifier: 20.10.6 + version: 20.10.6 + husky: + specifier: 9.1.7 + version: 9.1.7 + lint-staged: + specifier: 17.0.8 + version: 17.0.8 + sass-embedded: + specifier: 1.78.0 + version: 1.78.0 + typescript: + specifier: 5.9.3 + version: 5.9.3 + unocss: + specifier: 66.7.5 + version: 66.7.5(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)) + unplugin-auto-import: + specifier: 21.0.0 + version: 21.0.0(@vueuse/core@14.3.0(vue@3.5.39(typescript@5.9.3))) + unplugin-svg-component: + specifier: 0.12.6 + version: 0.12.6 + unplugin-vue-components: + specifier: 32.1.0 + version: 32.1.0(esbuild@0.27.2)(rolldown@1.1.5)(rollup@4.62.2)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))(vue@3.5.39(typescript@5.9.3)) + vite: + specifier: 7.3.6 + version: 7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0) + vite-plugin-mcp: + specifier: 0.3.2 + version: 0.3.2(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)) + vite-svg-loader: + specifier: 5.1.1 + version: 5.1.1(vue@3.5.39(typescript@5.9.3)) + vitest: + specifier: 4.1.10 + version: 4.1.10(@types/node@26.1.1)(happy-dom@20.10.6)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)) + vue-tsc: + specifier: 3.3.7 + version: 3.3.7(typescript@5.9.3) + +packages: + + '@antfu/eslint-config@9.1.0': + resolution: {integrity: sha512-Vtjt+W/6/bV9hgQG8AiWG66OpAeLKmpo5bZaAmUdRvZsMyirVvIJeHnbM4XUJf4urIuLvK0gGSvXD74PI3ZnGQ==} + hasBin: true + peerDependencies: + '@angular-eslint/eslint-plugin': ^21.1.0 + '@angular-eslint/eslint-plugin-template': ^21.1.0 + '@angular-eslint/template-parser': ^21.1.0 + '@eslint-react/eslint-plugin': ^5.6.0 + '@next/eslint-plugin-next': '>=15.0.0' + '@prettier/plugin-xml': ^3.4.1 + '@unocss/eslint-plugin': '>=0.50.0' + astro-eslint-parser: ^1.0.2 + eslint: ^9.10.0 || ^10.0.0 + eslint-plugin-astro: ^1.2.0 + eslint-plugin-format: '>=0.1.0' + eslint-plugin-jsx-a11y: '>=6.10.2' + eslint-plugin-react-refresh: ^0.5.0 + eslint-plugin-solid: ^0.14.3 + eslint-plugin-svelte: '>=2.35.1' + eslint-plugin-vuejs-accessibility: ^2.4.1 + prettier-plugin-astro: ^0.14.0 + prettier-plugin-slidev: ^1.0.5 + svelte-eslint-parser: '>=0.37.0' + peerDependenciesMeta: + '@angular-eslint/eslint-plugin': + optional: true + '@angular-eslint/eslint-plugin-template': + optional: true + '@angular-eslint/template-parser': + optional: true + '@eslint-react/eslint-plugin': + optional: true + '@next/eslint-plugin-next': + optional: true + '@prettier/plugin-xml': + optional: true + '@unocss/eslint-plugin': + optional: true + astro-eslint-parser: + optional: true + eslint-plugin-astro: + optional: true + eslint-plugin-format: + optional: true + eslint-plugin-jsx-a11y: + optional: true + eslint-plugin-react-refresh: + optional: true + eslint-plugin-solid: + optional: true + eslint-plugin-svelte: + optional: true + eslint-plugin-vuejs-accessibility: + optional: true + prettier-plugin-astro: + optional: true + prettier-plugin-slidev: + optional: true + svelte-eslint-parser: + optional: true + + '@antfu/install-pkg@1.1.0': + resolution: {integrity: sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==} + + '@babel/generator@8.0.0': + resolution: {integrity: sha512-NT9NrVwJsbSV6Y2FSstWa71EETOnzrjkL5/wX3D2mYHtKM+qvqB1DvR4D0Setb/gDBsHzRICifwEWMO8CnTF6g==} + engines: {node: ^22.18.0 || >=24.11.0} + + '@babel/helper-string-parser@7.29.7': + resolution: {integrity: sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@8.0.0': + resolution: {integrity: sha512-6mJgmFFFIIO82vvoLt9XtRC7/TkzXfts1t/SpRX4IHSzMgqoPYCWesVu1udUPUWioAE/2fcG6WuI8zrkE1gwrg==} + engines: {node: ^22.18.0 || >=24.11.0} + + '@babel/helper-validator-identifier@7.29.7': + resolution: {integrity: sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@8.0.4': + resolution: {integrity: sha512-4wFaiLd0bVo4cIoTXI3zKI038NIWE/cr3jvBjejOVYVxV/m8Ltav1USiGzG1fmS5J2RhgEOgXNNK46cRPnRsrg==} + engines: {node: ^22.18.0 || >=24.11.0} + + '@babel/parser@7.29.7': + resolution: {integrity: sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/parser@8.0.4': + resolution: {integrity: sha512-srpptsAkEbbNIC/q8nT7o+m6CQe8CJUTV/t7MYc9NnWlgYVtHOb7JH6SorxMhN0kuRJjVqXbKClG6xSbPtzz+g==} + engines: {node: ^22.18.0 || >=24.11.0} + hasBin: true + + '@babel/types@7.29.7': + resolution: {integrity: sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==} + engines: {node: '>=6.9.0'} + + '@babel/types@8.0.4': + resolution: {integrity: sha512-eY+Yn3dCqTGmyiq2QRU66lA5FL8lqqqvecHt0fF3uHONIa7ToYsaCiWV8lOKqAs0Rb2SjixiKFROngnulPtt2g==} + engines: {node: ^22.18.0 || >=24.11.0} + + '@bufbuild/protobuf@1.10.1': + resolution: {integrity: sha512-wJ8ReQbHxsAfXhrf9ixl0aYbZorRuOWpBNzm8pL8ftmSxQx/wnJD5Eg861NwJU/czy2VXFIebCeZnZrI9rktIQ==} + + '@clack/core@1.4.3': + resolution: {integrity: sha512-/kr3UWNtdJfxZtPgDqUOmG2pvwlmcLGheex5yiZKdwbzZJxhV+HMNR9QNmyY5cGwTNV6LrR7Jtp+KjhUAP1qBQ==} + engines: {node: '>= 20.12.0'} + + '@clack/prompts@1.7.0': + resolution: {integrity: sha512-y7/yvZ2TPAnR9+jnc00klvNNLkJiXFFrQA/hlLCcxA9a2A4zQIOimyFQ9XfwYKiGD1fb5GY8vbKIIgO8d5Tb2A==} + engines: {node: '>= 20.12.0'} + + '@colors/colors@1.6.0': + resolution: {integrity: sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==} + engines: {node: '>=0.1.90'} + + '@ctrl/tinycolor@4.2.0': + resolution: {integrity: sha512-kzyuwOAQnXJNLS9PSyrk0CWk35nWJW/zl/6KvnTBMFK65gm7U1/Z5BqjxeapjZCIhQcM/DsrEmcbRwDyXyXK4A==} + engines: {node: '>=14'} + + '@dabh/diagnostics@2.0.8': + resolution: {integrity: sha512-R4MSXTVnuMzGD7bzHdW2ZhhdPC/igELENcq5IjEverBvq5hn1SXCWcsi6eSsdWP0/Ur+SItRRjAktmdoX/8R/Q==} + + '@dprint/formatter@0.5.1': + resolution: {integrity: sha512-cdZUrm0iv/FnnY3CKE2dEcVhNEzrC551aE2h2mTFwQCRBrqyARLDnb7D+3PlXTUVp3s34ftlnGOVCmhLT9DeKA==} + + '@dprint/markdown@0.21.1': + resolution: {integrity: sha512-XbZ/R7vRrBaZFYXG6vAvLvtaMVXHu8XB+xwie7OYrG+dPoGDP8UADGirIbzUyX8TmrAZcl6QBmalipTGlpzRmQ==} + + '@dprint/toml@0.7.0': + resolution: {integrity: sha512-eFaQTcfxKHB+YyTh83x7GEv+gDPuj9q5NFOTaoj5rZmQTbj6OgjjMxUicmS1R8zYcx8YAq5oA9J3YFa5U6x2gA==} + + '@e18e/eslint-plugin@0.5.1': + resolution: {integrity: sha512-mqUozeyNI9xvJbjrOO7y765dT7Kud3bwCm/DHwctxdEngPdJWQaS9BNGgpM1wCCzZfOtlKQh4ZRhm3VRomT9KA==} + peerDependencies: + eslint: ^9.0.0 || ^10.0.0 + oxlint: ^1.68.0 + peerDependenciesMeta: + eslint: + optional: true + oxlint: + optional: true + + '@element-plus/icons-vue@2.3.2': + resolution: {integrity: sha512-OzIuTaIfC8QXEPmJvB4Y4kw34rSXdCJzxcD1kFStBvr8bK6X1zQAYDo0CNMjojnfTqRQCJ0I7prlErcoRiET2A==} + peerDependencies: + vue: ^3.2.0 + + '@emnapi/core@1.10.0': + resolution: {integrity: sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==} + + '@emnapi/core@1.11.1': + resolution: {integrity: sha512-RSvbQmHzdKzNsLYa/wHrbc3KN4sYLKAdPZxqiM2HATqv/SBk2/ENSHpvXGaLOMcsAyz0poEGqkmmKYG3OWiJEQ==} + + '@emnapi/runtime@1.10.0': + resolution: {integrity: sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==} + + '@emnapi/runtime@1.11.1': + resolution: {integrity: sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw==} + + '@emnapi/wasi-threads@1.2.1': + resolution: {integrity: sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==} + + '@emnapi/wasi-threads@1.2.2': + resolution: {integrity: sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA==} + + '@es-joy/jsdoccomment@0.84.0': + resolution: {integrity: sha512-0xew1CxOam0gV5OMjh2KjFQZsKL2bByX1+q4j3E73MpYIdyUxcZb/xQct9ccUb+ve5KGUYbCUxyPnYB7RbuP+w==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@es-joy/jsdoccomment@0.88.0': + resolution: {integrity: sha512-GK/HL/claLLNo5KG705auIlZMwEtmn88ofSGuLsmVZwKBqMPJhW9DiznYNq07QEqz9BPtA3LBfYImtZmhVvRAw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@es-joy/resolve.exports@1.2.0': + resolution: {integrity: sha512-Q9hjxWI5xBM+qW2enxfe8wDKdFWMfd0Z29k5ZJnuBqD/CasY5Zryj09aCA6owbGATWz+39p5uIdaHXpopOcG8g==} + engines: {node: '>=10'} + + '@esbuild/aix-ppc64@0.27.2': + resolution: {integrity: sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.27.2': + resolution: {integrity: sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.27.2': + resolution: {integrity: sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.27.2': + resolution: {integrity: sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.27.2': + resolution: {integrity: sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.27.2': + resolution: {integrity: sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.27.2': + resolution: {integrity: sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.27.2': + resolution: {integrity: sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.27.2': + resolution: {integrity: sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.27.2': + resolution: {integrity: sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.27.2': + resolution: {integrity: sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.27.2': + resolution: {integrity: sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.27.2': + resolution: {integrity: sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.27.2': + resolution: {integrity: sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.27.2': + resolution: {integrity: sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.27.2': + resolution: {integrity: sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.27.2': + resolution: {integrity: sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.27.2': + resolution: {integrity: sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.27.2': + resolution: {integrity: sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.27.2': + resolution: {integrity: sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.27.2': + resolution: {integrity: sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openharmony-arm64@0.27.2': + resolution: {integrity: sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + + '@esbuild/sunos-x64@0.27.2': + resolution: {integrity: sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.27.2': + resolution: {integrity: sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.27.2': + resolution: {integrity: sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.27.2': + resolution: {integrity: sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + + '@eslint-community/eslint-plugin-eslint-comments@4.7.2': + resolution: {integrity: sha512-LF03qURSwEWm2dz5wtdDCzNk+7Opl0X7q6I3undsaIuNsEiNvRV3BCtqu14Q/6Pzg1tBj44LcxpW2EpSLZStZw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 + + '@eslint-community/eslint-utils@4.9.1': + resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.12.2': + resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/compat@2.1.0': + resolution: {integrity: sha512-LgaSCymEpw7tF53xvDw9SNsraPb1IBHxpdABIOM0hW8UAlP8znrjYtuxfR58FSJ3L9BhwD+FaPRFQpZq84Nh6g==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + peerDependencies: + eslint: ^8.40 || 9 || 10 + peerDependenciesMeta: + eslint: + optional: true + + '@eslint/config-array@0.23.5': + resolution: {integrity: sha512-Y3kKLvC1dvTOT+oGlqNQ1XLqK6D1HU2YXPc52NmAlJZbMMWDzGYXMiPRJ8TYD39muD/OTjlZmNJ4ib7dvSrMBA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@eslint/config-helpers@0.5.5': + resolution: {integrity: sha512-eIJYKTCECbP/nsKaaruF6LW967mtbQbsw4JTtSVkUQc9MneSkbrgPJAbKl9nWr0ZeowV8BfsarBmPpBzGelA2w==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@eslint/config-helpers@0.6.0': + resolution: {integrity: sha512-ii6Bw9jJ2zi2cWA2Z+9/QZ/+3DX6kwaV5Q986D/CdP3Lap3w/pgQZ373FV7byY/i7L4IRH/G43I5dz1ClsCbpA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@eslint/core@1.2.1': + resolution: {integrity: sha512-MwcE1P+AZ4C6DWlpin/OmOA54mmIZ/+xZuJiQd4SyB29oAJjN30UW9wkKNptW2ctp4cEsvhlLY/CsQ1uoHDloQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@eslint/markdown@8.0.3': + resolution: {integrity: sha512-rBTSSShrq7e4O+PWfeE4azH4/CWPNrC+VGxBXiW00o3vYVJnznsZiDayj3KC9JztIMVRZxZHn2nrDIUau/4j7A==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@eslint/object-schema@3.0.5': + resolution: {integrity: sha512-vqTaUEgxzm+YDSdElad6PiRoX4t8VGDjCtt05zn4nU810UIx/uNEV7/lZJ6KwFThKZOzOxzXy48da+No7HZaMw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@eslint/plugin-kit@0.7.2': + resolution: {integrity: sha512-+CNAzxglkrpNf/kKywqQfk74QjtceuOE7Qm+AF8miRvPF/wmmK5+OJOgVh3AVTT3RP2mH3+FOaxlE5v72owk0A==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@floating-ui/core@1.7.5': + resolution: {integrity: sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==} + + '@floating-ui/dom@1.7.6': + resolution: {integrity: sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==} + + '@floating-ui/utils@0.2.11': + resolution: {integrity: sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==} + + '@hono/node-server@1.19.14': + resolution: {integrity: sha512-GwtvgtXxnWsucXvbQXkRgqksiH2Qed37H9xHZocE5sA3N8O8O8/8FA3uclQXxXVzc9XBZuEOMK7+r02FmSpHtw==} + engines: {node: '>=18.14.1'} + peerDependencies: + hono: ^4 + + '@humanfs/core@0.19.2': + resolution: {integrity: sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.8': + resolution: {integrity: sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==} + engines: {node: '>=18.18.0'} + + '@humanfs/types@0.15.0': + resolution: {integrity: sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==} + engines: {node: '>=18.18.0'} + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/retry@0.4.3': + resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} + engines: {node: '>=18.18'} + + '@iconify/types@2.0.0': + resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} + + '@iconify/utils@3.1.4': + resolution: {integrity: sha512-b1S7B1k9ohZ+iNTi2ATxbRYG9fTrJmUT0rc46bvVnNxqNRGW7dyo/vRREwyniI5IRN2RSJHDcm+s3BjWrSAjHw==} + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/remapping@2.3.5': + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + + '@modelcontextprotocol/sdk@1.29.0': + resolution: {integrity: sha512-zo37mZA9hJWpULgkRpowewez1y6ML5GsXJPY8FI0tBBCd77HEvza4jDqRKOXgHNn867PVGCyTdzqpz0izu5ZjQ==} + engines: {node: '>=18'} + peerDependencies: + '@cfworker/json-schema': ^4.1.1 + zod: ^3.25 || ^4.0 + peerDependenciesMeta: + '@cfworker/json-schema': + optional: true + + '@napi-rs/wasm-runtime@1.1.6': + resolution: {integrity: sha512-ZLv/JdUfkvOy9eCnnBaGfiO+XimbjebAeO+MRQqD/B+FR1tnRN0tpKSJHRbE8sFfS6aqsXZ67TQjfwfsxULVbg==} + peerDependencies: + '@emnapi/core': ^1.7.1 + '@emnapi/runtime': ^1.7.1 + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@one-ini/wasm@0.1.1': + resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==} + + '@ota-meshi/ast-token-store@0.3.0': + resolution: {integrity: sha512-XRO0zi2NIUKq2lUk3T1ecFSld1fMWRKE6naRFGkgkdeosx7IslyUKNv5Dcb5PJTja9tHJoFu0v/7yEpAkrkrTg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@oxc-parser/binding-android-arm-eabi@0.131.0': + resolution: {integrity: sha512-t2xicr9pfzkSRYx5aPqZqlLaayIwJTqgQ81Jor31Xep2nGyL2Aq3d0K5wOfeR7VevaSdxaS9dzSQP9xDwn8fDg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [android] + + '@oxc-parser/binding-android-arm64@0.131.0': + resolution: {integrity: sha512-nlGIod6gw75x1aEDgLS+srj+JRGY0HHm9MI9YgzE/B64l6d6+H3MSP9NOgp0+HTg8tp4vV9rVfgQGgd+TfVZcA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [android] + + '@oxc-parser/binding-darwin-arm64@0.131.0': + resolution: {integrity: sha512-jukuV6xe5RbQKFo7QD34NDCLDZp4PSOm8rmckhNdH/60ymG5zXbDzGBEyc+nTkuLQNama2aSGCt+CPfpjNTqyw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] + + '@oxc-parser/binding-darwin-x64@0.131.0': + resolution: {integrity: sha512-g3JOo4khe9rslHm5WYaVDWb0HS/M1MLR3I9S8560MkKIcC96VQY00QjOlsuRyfSj/JDXj8i9T7ryPO2RidiXVg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [darwin] + + '@oxc-parser/binding-freebsd-x64@0.131.0': + resolution: {integrity: sha512-1hziITDTxjMePnX+dR9ocVT+EuZkQ8wm4FPAbmbEiKG+Phbo73J1ZnPAA6Y/aGsWF3McOFnQuZIktAFwalkfJQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [freebsd] + + '@oxc-parser/binding-linux-arm-gnueabihf@0.131.0': + resolution: {integrity: sha512-9uRxfXwyKG9+MwmGQBo2ncPNwZH5HTmCETFM2WiuDBNDCW4NC5ttSQkwCAMrTAWgwMzVBH1CP8pM0v7nebCWXQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + + '@oxc-parser/binding-linux-arm-musleabihf@0.131.0': + resolution: {integrity: sha512-mgbLvzRShXOLBdWGInf08Af4q+pfj1xD8hSgLClDZ9of/BXkB6+LIhTH7fihiDUipqB3yoSkKBWaZ3Ejlf5Yag==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + + '@oxc-parser/binding-linux-arm64-gnu@0.131.0': + resolution: {integrity: sha512-OPT8++4aN6j2GJ8+3IZHS/byXoZP4aSBn+FoG6rgBJ2fKwPKXWF3MqrFMNW7NKHM28FLY579xYLxJSfgobEqPA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@oxc-parser/binding-linux-arm64-musl@0.131.0': + resolution: {integrity: sha512-vtPiwmfVTAXzaxDKsOXG+LwgRAA7WEnaeHzhS5z0GE89gAK18KSXnly7Z6saXXq6L3dVMyK44uoTI03zKxrpmw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@oxc-parser/binding-linux-ppc64-gnu@0.131.0': + resolution: {integrity: sha512-8AW8L7w5cGHSdZPcyZX2yR0+GUODsT15rbRjfdD54rv6DMbtuEB19ysLOpKJlRGfH6UNYNpCHaU1uJWgTWf1/w==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@oxc-parser/binding-linux-riscv64-gnu@0.131.0': + resolution: {integrity: sha512-vvpjkjEOUsPcsYf8evE4MO3aGx9+3wodXEBOicGNnOwTuAik8eBONNkgSdhkGsAblQmfVHJyanRnpxglddTXIA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [riscv64] + os: [linux] + libc: [glibc] + + '@oxc-parser/binding-linux-riscv64-musl@0.131.0': + resolution: {integrity: sha512-AqmcNC3fClXX+fxQ6VGEN1667xVFiRBkY0CZmDMSiaeFUsv1+UkBPYYi48IUKcA9/ivvoKNRzQl2I4//kT9F/w==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [riscv64] + os: [linux] + libc: [musl] + + '@oxc-parser/binding-linux-s390x-gnu@0.131.0': + resolution: {integrity: sha512-7d3jOMKy7RSQCcDLIci+ySll2FgsOMl/GiRux4q2JNv0zg4EdhFISa9idvrdN/HEUIQQJNg6dmveUeJl2YErGA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@oxc-parser/binding-linux-x64-gnu@0.131.0': + resolution: {integrity: sha512-JHK/h95qVqVQ+ITER837kcTdwBDFpFaNnOTYGCP0zdUSX/mLKC7tXOoyrTb6vG7iRPwGlcgBil3v2IjYw1FqJA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@oxc-parser/binding-linux-x64-musl@0.131.0': + resolution: {integrity: sha512-b2BO82O8azXAyf7EUgOPKu145nWypbNyk07HbU09fkzhm9lEA5oPvaN/M8Nlo7tOErVTa2WOgS4QbOnxAPXdDQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [musl] + + '@oxc-parser/binding-openharmony-arm64@0.131.0': + resolution: {integrity: sha512-GHO9glZaX7LkX/OGfluEPf1yjg+ehiFbUdowbX6uNWOQhmwKWU4m4+nZ9FJkrHNKuxyI1KKertMdGjVKCApKWA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [openharmony] + + '@oxc-parser/binding-wasm32-wasi@0.131.0': + resolution: {integrity: sha512-3SkikPaEFoih1N83qLVEDLRLeY4nYsf6JT9SnWiMCQ5lGQdKup6bEuKCqkRiG9dD1IIaFeYz9RjlciPmYoFIWA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [wasm32] + + '@oxc-parser/binding-win32-arm64-msvc@0.131.0': + resolution: {integrity: sha512-Os5bEhryeA2jkH+ZrnZyAC1EP5gs+X4YB1Fjqml7UPD5kU7ecsK1MPEVMfCrdt/GDNpDbavYXiOXOdyJ5b3OPw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [win32] + + '@oxc-parser/binding-win32-ia32-msvc@0.131.0': + resolution: {integrity: sha512-m+jNz9EuF0NXoiptc6B9h5yompZQVW/a5MJeOu5zojfH5yWk82tvF2ccrHkfhgtrS9h9DD5l1Qv8dWlfY7Nz8g==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ia32] + os: [win32] + + '@oxc-parser/binding-win32-x64-msvc@0.131.0': + resolution: {integrity: sha512-o14Hk8dAyiEUMFEWEgmAwFZvBt1RzAYLM3xeQ+5315JXgVYhoemivgYcbYVRbsFkS71ShMGlAFE0kPnr460rww==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] + + '@oxc-project/types@0.131.0': + resolution: {integrity: sha512-PgnWDfV0h+b16XNKbXU7Daib/BFSt/J2mEzfYIBu6JB/wNdlU+kVYXCkGA1A9fWkTbOgbjh4e6NhPeQOYvFhEA==} + + '@oxc-project/types@0.139.0': + resolution: {integrity: sha512-r9gHphtCs+1M7J0pw6Sn/hh/Wpa/iQrOOkrNAlVLF/gHq+/CJmHIWKKUUhdWjcD6CIa8idarspCsASiXCXvFUw==} + + '@oxfmt/binding-android-arm-eabi@0.35.0': + resolution: {integrity: sha512-BaRKlM3DyG81y/xWTsE6gZiv89F/3pHe2BqX2H4JbiB8HNVlWWtplzgATAE5IDSdwChdeuWLDTQzJ92Lglw3ZA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [android] + + '@oxfmt/binding-android-arm64@0.35.0': + resolution: {integrity: sha512-/O+EbuAJYs6nde/anv+aID6uHsGQApyE9JtYBo/79KyU8e6RBN3DMbT0ix97y1SOnCglurmL2iZ+hlohjP2PnQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [android] + + '@oxfmt/binding-darwin-arm64@0.35.0': + resolution: {integrity: sha512-pGqRtqlNdn9d4VrmGUWVyQjkw79ryhI6je9y2jfqNUIZCfqceob+R97YYAoG7C5TFyt8ILdLVoN+L2vw/hSFyA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] + + '@oxfmt/binding-darwin-x64@0.35.0': + resolution: {integrity: sha512-8GmsDcSozTPjrCJeGpp+sCmS9+9V5yRrdEZ1p/sTWxPG5nYeAfSLuS0nuEYjXSO+CtdSbStIW6dxa+4NM58yRw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [darwin] + + '@oxfmt/binding-freebsd-x64@0.35.0': + resolution: {integrity: sha512-QyfKfTe0ytHpFKHAcHCGQEzN45QSqq1AHJOYYxQMgLM3KY4xu8OsXHpCnINjDsV4XGnQzczJDU9e04Zmd8XqIQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [freebsd] + + '@oxfmt/binding-linux-arm-gnueabihf@0.35.0': + resolution: {integrity: sha512-u+kv3JD6P3J38oOyUaiCqgY5TNESzBRZJ5lyZQ6c2czUW2v5SIN9E/KWWa9vxoc+P8AFXQFUVrdzGy1tK+nbPQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + + '@oxfmt/binding-linux-arm-musleabihf@0.35.0': + resolution: {integrity: sha512-1NiZroCiV57I7Pf8kOH4XGR366kW5zir3VfSMBU2D0V14GpYjiYmPYFAoJboZvp8ACnZKUReWyMkNKSa5ad58A==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + + '@oxfmt/binding-linux-arm64-gnu@0.35.0': + resolution: {integrity: sha512-7Q0Xeg7ZnW2nxnZ4R7aF6DEbCFls4skgHZg+I63XitpNvJCbVIU8MFOTZlvZGRsY9+rPgWPQGeUpLHlyx0wvMA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@oxfmt/binding-linux-arm64-musl@0.35.0': + resolution: {integrity: sha512-5Okqi+uhYFxwKz8hcnUftNNwdm8BCkf6GSCbcz9xJxYMm87k1E4p7PEmAAbhLTk7cjSdDre6TDL0pDzNX+Y22Q==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@oxfmt/binding-linux-ppc64-gnu@0.35.0': + resolution: {integrity: sha512-9k66pbZQXM/lBJWys3Xbc5yhl4JexyfqkEf/tvtq8976VIJnLAAL3M127xHA3ifYSqxdVHfVGTg84eiBHCGcNw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@oxfmt/binding-linux-riscv64-gnu@0.35.0': + resolution: {integrity: sha512-aUcY9ofKPtjO52idT6t0SAQvEF6ctjzUQa1lLp7GDsRpSBvuTrBQGeq0rYKz3gN8dMIQ7mtMdGD9tT4LhR8jAQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [riscv64] + os: [linux] + libc: [glibc] + + '@oxfmt/binding-linux-riscv64-musl@0.35.0': + resolution: {integrity: sha512-C6yhY5Hvc2sGM+mCPek9ZLe5xRUOC/BvhAt2qIWFAeXMn4il04EYIjl3DsWiJr0xDMTJhvMOmD55xTRPlNp39w==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [riscv64] + os: [linux] + libc: [musl] + + '@oxfmt/binding-linux-s390x-gnu@0.35.0': + resolution: {integrity: sha512-RG2hlvOMK4OMZpO3mt8MpxLQ0AAezlFqhn5mI/g5YrVbPFyoCv9a34AAvbSJS501ocOxlFIRcKEuw5hFvddf9g==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@oxfmt/binding-linux-x64-gnu@0.35.0': + resolution: {integrity: sha512-wzmh90Pwvqj9xOKHJjkQYBpydRkaXG77ZvDz+iFDRRQpnqIEqGm5gmim2s6vnZIkDGsvKCuTdtxm0GFmBjM1+w==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@oxfmt/binding-linux-x64-musl@0.35.0': + resolution: {integrity: sha512-+HCqYCJPCUy5I+b2cf+gUVaApfgtoQT3HdnSg/l7NIcLHOhKstlYaGyrFZLmUpQt4WkFbpGKZZayG6zjRU0KFA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [musl] + + '@oxfmt/binding-openharmony-arm64@0.35.0': + resolution: {integrity: sha512-kFYmWfR9YL78XyO5ws+1dsxNvZoD973qfVMNFOS4e9bcHXGF7DvGC2tY5UDFwyMCeB33t3sDIuGONKggnVNSJA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [openharmony] + + '@oxfmt/binding-win32-arm64-msvc@0.35.0': + resolution: {integrity: sha512-uD/NGdM65eKNCDGyTGdO8e9n3IHX+wwuorBvEYrPJXhDXL9qz6gzddmXH8EN04ejUXUujlq4FsoSeCfbg0Y+Jg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [win32] + + '@oxfmt/binding-win32-ia32-msvc@0.35.0': + resolution: {integrity: sha512-oSRD2k8J2uxYDEKR2nAE/YTY9PobOEnhZgCmspHu0+yBQ665yH8lFErQVSTE7fcGJmJp/cC6322/gc8VFuQf7g==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ia32] + os: [win32] + + '@oxfmt/binding-win32-x64-msvc@0.35.0': + resolution: {integrity: sha512-WCDJjlS95NboR0ugI2BEwzt1tYvRDorDRM9Lvctls1SLyKYuNRCyrPwp1urUPFBnwgBNn9p2/gnmo7gFMySRoQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] + + '@parcel/watcher-android-arm64@2.5.6': + resolution: {integrity: sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [android] + + '@parcel/watcher-darwin-arm64@2.5.6': + resolution: {integrity: sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [darwin] + + '@parcel/watcher-darwin-x64@2.5.6': + resolution: {integrity: sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [darwin] + + '@parcel/watcher-freebsd-x64@2.5.6': + resolution: {integrity: sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [freebsd] + + '@parcel/watcher-linux-arm-glibc@2.5.6': + resolution: {integrity: sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + libc: [glibc] + + '@parcel/watcher-linux-arm-musl@2.5.6': + resolution: {integrity: sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + libc: [musl] + + '@parcel/watcher-linux-arm64-glibc@2.5.6': + resolution: {integrity: sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@parcel/watcher-linux-arm64-musl@2.5.6': + resolution: {integrity: sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@parcel/watcher-linux-x64-glibc@2.5.6': + resolution: {integrity: sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@parcel/watcher-linux-x64-musl@2.5.6': + resolution: {integrity: sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + libc: [musl] + + '@parcel/watcher-win32-arm64@2.5.6': + resolution: {integrity: sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [win32] + + '@parcel/watcher-win32-ia32@2.5.6': + resolution: {integrity: sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==} + engines: {node: '>= 10.0.0'} + cpu: [ia32] + os: [win32] + + '@parcel/watcher-win32-x64@2.5.6': + resolution: {integrity: sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [win32] + + '@parcel/watcher@2.5.6': + resolution: {integrity: sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==} + engines: {node: '>= 10.0.0'} + + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + + '@pkgr/core@0.3.6': + resolution: {integrity: sha512-SEeaJLb3qBNF/OaXnaR1NmmBbFYk1zC0ZH/52fATcRPLFg/p791YrcyFFy44Bo9sLaGuSuLp5Q6axbb/O+v/RA==} + engines: {node: ^14.18.0 || >=16.0.0} + + '@polka/url@1.0.0-next.29': + resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} + + '@quansync/fs@1.0.0': + resolution: {integrity: sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==} + + '@resvg/resvg-js-android-arm-eabi@2.6.2': + resolution: {integrity: sha512-FrJibrAk6v29eabIPgcTUMPXiEz8ssrAk7TXxsiZzww9UTQ1Z5KAbFJs+Z0Ez+VZTYgnE5IQJqBcoSiMebtPHA==} + engines: {node: '>= 10'} + cpu: [arm] + os: [android] + + '@resvg/resvg-js-android-arm64@2.6.2': + resolution: {integrity: sha512-VcOKezEhm2VqzXpcIJoITuvUS/fcjIw5NA/w3tjzWyzmvoCdd+QXIqy3FBGulWdClvp4g+IfUemigrkLThSjAQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@resvg/resvg-js-darwin-arm64@2.6.2': + resolution: {integrity: sha512-nmok2LnAd6nLUKI16aEB9ydMC6Lidiiq2m1nEBDR1LaaP7FGs4AJ90qDraxX+CWlVuRlvNjyYJTNv8qFjtL9+A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@resvg/resvg-js-darwin-x64@2.6.2': + resolution: {integrity: sha512-GInyZLjgWDfsVT6+SHxQVRwNzV0AuA1uqGsOAW+0th56J7Nh6bHHKXHBWzUrihxMetcFDmQMAX1tZ1fZDYSRsw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@resvg/resvg-js-linux-arm-gnueabihf@2.6.2': + resolution: {integrity: sha512-YIV3u/R9zJbpqTTNwTZM5/ocWetDKGsro0SWp70eGEM9eV2MerWyBRZnQIgzU3YBnSBQ1RcxRZvY/UxwESfZIw==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@resvg/resvg-js-linux-arm64-gnu@2.6.2': + resolution: {integrity: sha512-zc2BlJSim7YR4FZDQ8OUoJg5holYzdiYMeobb9pJuGDidGL9KZUv7SbiD4E8oZogtYY42UZEap7dqkkYuA91pg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@resvg/resvg-js-linux-arm64-musl@2.6.2': + resolution: {integrity: sha512-3h3dLPWNgSsD4lQBJPb4f+kvdOSJHa5PjTYVsWHxLUzH4IFTJUAnmuWpw4KqyQ3NA5QCyhw4TWgxk3jRkQxEKg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@resvg/resvg-js-linux-x64-gnu@2.6.2': + resolution: {integrity: sha512-IVUe+ckIerA7xMZ50duAZzwf1U7khQe2E0QpUxu5MBJNao5RqC0zwV/Zm965vw6D3gGFUl7j4m+oJjubBVoftw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@resvg/resvg-js-linux-x64-musl@2.6.2': + resolution: {integrity: sha512-UOf83vqTzoYQO9SZ0fPl2ZIFtNIz/Rr/y+7X8XRX1ZnBYsQ/tTb+cj9TE+KHOdmlTFBxhYzVkP2lRByCzqi4jQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + libc: [musl] + + '@resvg/resvg-js-win32-arm64-msvc@2.6.2': + resolution: {integrity: sha512-7C/RSgCa+7vqZ7qAbItfiaAWhyRSoD4l4BQAbVDqRRsRgY+S+hgS3in0Rxr7IorKUpGE69X48q6/nOAuTJQxeQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@resvg/resvg-js-win32-ia32-msvc@2.6.2': + resolution: {integrity: sha512-har4aPAlvjnLcil40AC77YDIk6loMawuJwFINEM7n0pZviwMkMvjb2W5ZirsNOZY4aDbo5tLx0wNMREp5Brk+w==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@resvg/resvg-js-win32-x64-msvc@2.6.2': + resolution: {integrity: sha512-ZXtYhtUr5SSaBrUDq7DiyjOFJqBVL/dOBN7N/qmi/pO0IgiWW/f/ue3nbvu9joWE5aAKDoIzy/CxsY0suwGosQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@resvg/resvg-js@2.6.2': + resolution: {integrity: sha512-xBaJish5OeGmniDj9cW5PRa/PtmuVU3ziqrbr5xJj901ZDN4TosrVaNZpEiLZAxdfnhAe7uQ7QFWfjPe9d9K2Q==} + engines: {node: '>= 10'} + + '@rolldown/binding-android-arm64@1.1.5': + resolution: {integrity: sha512-lZg8fqIv2v7FF237bwMgzGZEJvGL79/s5knJ/i6FmsGF4XXlzccZ4jb+TrFIxtSSxFtIpdsgrPZeMk1I9AFcyQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [android] + + '@rolldown/binding-darwin-arm64@1.1.5': + resolution: {integrity: sha512-51Bnx9pNiMRKSUNtBfySkNJ9vMU9Hh3I1ozDd6gyPPYzaXCfnptUcEZxXGYFn+ul2dtcMUiqGR1Yai2K10uoTw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] + + '@rolldown/binding-darwin-x64@1.1.5': + resolution: {integrity: sha512-Tm+gbfC0aHu1tBA/JvKQh32S0K6YgCHkiAF4/W6xX0K0RmNuc94VeK419dJoE65R5aRxmo+noZQSWrAMF6yb6g==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [darwin] + + '@rolldown/binding-freebsd-x64@1.1.5': + resolution: {integrity: sha512-JMzDKCCXq93YccG5gz3hvOs1oXRKAf0XYpfOS88e+wZrC8Iugj6j68867vrYZkvpDDpKn/KoKORThmchMpF6TA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [freebsd] + + '@rolldown/binding-linux-arm-gnueabihf@1.1.5': + resolution: {integrity: sha512-uML21j2K5TfPGutKxub+M+nLjZIrWjXQ5Grx4lCe/nimTj9B4L63zHpjXLl4y0L3mcm2htEQIb06oCG/szerNw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + + '@rolldown/binding-linux-arm64-gnu@1.1.5': + resolution: {integrity: sha512-navSiuTMogvnQoZoM/v+l3ZWo50/NTwSHSzheABx/RCnmUPaKwq9qSo4Br2OYRs21+Fz8uFqITZM3H4opOB0/Q==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-arm64-musl@1.1.5': + resolution: {integrity: sha512-lAryqH7IteztmCXQXk0etKj4wBQ7Gx5S6LjKhsgp9zb8I5bsuvU/2llH1hDQcjsFeqIsovMVN339/8pUDDBXxA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@rolldown/binding-linux-ppc64-gnu@1.1.5': + resolution: {integrity: sha512-fsK/sNBnxzBlL4O1JNrZakVQxPspqpED5dLtNsZS9oOKmtSpdNIzxH2kkol5HYTWJN47sE20ztMJPxfZ89qGOg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-s390x-gnu@1.1.5': + resolution: {integrity: sha512-gLYb4BIadlfTOYT5gO503n8zQjXflgzpD0FcyKh0Mzx3rqCZKnHoJWV9xe1KXUJ5lx2JfcSHr/mhzS0PC/McAA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-x64-gnu@1.1.5': + resolution: {integrity: sha512-FjcpEKUyJygHgs1o50VYNvkt5+7Le/VEdYt0AkRpkL33MnyQfwr8l5mXwMmfmTbyMPr5vJLC+8/Gd9gXnwU1QQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-x64-musl@1.1.5': + resolution: {integrity: sha512-Me+PfPI2TMeOQk0gYWfLQZtTktrmzbr8cDboqX83XKc7UrgAi55gF+2dUkWdxd19n55Essp2yeca+O9N5rBxHg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [musl] + + '@rolldown/binding-openharmony-arm64@1.1.5': + resolution: {integrity: sha512-yc5WrLzXks6zCQfn9Oxr8pORKyl/pF+QjHmW/Qx3qu0oyrrNC+y2JLTU1E2rcWYAmzlnqngWXHQjy51VzW70Vw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [openharmony] + + '@rolldown/binding-wasm32-wasi@1.1.5': + resolution: {integrity: sha512-VbQGPX2b4r48TAMIM2cjgluIM1HYutm4pcTEJsle7iEP7sB1dFqtPLBVbdLAZCxy1txCcPxf4QFf4v8uvltPqA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [wasm32] + + '@rolldown/binding-win32-arm64-msvc@1.1.5': + resolution: {integrity: sha512-gHv82k63z4qpV5+Q1y/12KrK0ltWBukVDI8nZcbT7Tt/ZlOIVwppazneq0F93oDxTo3IgAMEDIoQh3E2n6mVsw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [win32] + + '@rolldown/binding-win32-x64-msvc@1.1.5': + resolution: {integrity: sha512-tTZuDBPw85tEN5PQi1pnEBzDy0Z49HtScLAbD5t6hyeU92A95pRWaSMw1GZZi/RwgSgUIl0xrSlXIT/9QzvYSA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] + + '@rolldown/pluginutils@1.0.1': + resolution: {integrity: sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==} + + '@rollup/rollup-android-arm-eabi@4.62.2': + resolution: {integrity: sha512-6o7ZLZK+BeenkZCFNDXqpbjw9bD6nuWonvS/lwQJp7NoVVxm6p3qE7qQ5jGuBjiFsgvqjD8mZAU5oWxTmbOeOg==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.62.2': + resolution: {integrity: sha512-BaH7BllCACHoH1LguOU56UItGfUWjujlO65kS9LAodViaN4bwIKd7oeW/ZHJ/4ljr/7MIiENnNy3HJ0zXv8Zkw==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.62.2': + resolution: {integrity: sha512-v39RCCvj4He82I9sFmk+M1VZ0PLM9sfsLVikjfx2hYBNALhrrOR2D3JjQA6AhlaSOgcR+RzrKY7e1+bT6SUO/A==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.62.2': + resolution: {integrity: sha512-yl0y2vq3S3lHeuXhEdss6TWfKW8vkujImO12tn4ZkG/4oghr09LvdYm2RElVjokTQiUvDUGXLGsYeLqUMCKpGA==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-freebsd-arm64@4.62.2': + resolution: {integrity: sha512-tT4pvt4qXD+vEoezupCWi+a1F0vvDiksiHc+PxRlYTOH1I6/X4id9jPxTP+Fg+545euaFT1jJVs4CEdHZAU1vw==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.62.2': + resolution: {integrity: sha512-6nU5F2wCW+qvCBhTn1pdIU3bzsIoF7EUwsCDRxilWGprQR6yd508YnH9+OKFCwpfS8pjZqDUmnCAr7exax0XCg==} + cpu: [x64] + os: [freebsd] + + '@rollup/rollup-linux-arm-gnueabihf@4.62.2': + resolution: {integrity: sha512-n1GJHPOvpIfhi3TmrCeh6S6URt9BFCt0KQE3qvexyGCTAKpR4Lg+eWvNZEqu7epxwus/8ElT3hacYEucm49SZg==} + cpu: [arm] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-arm-musleabihf@4.62.2': + resolution: {integrity: sha512-JqgflS8wEB+UXV/vS1RpRbifGBeN4D5lz8D8oOFbFZw4vedvdOgCFAjfBmIMdW3yL10XpQQ0Ambepw6MXrhOnA==} + cpu: [arm] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-arm64-gnu@4.62.2': + resolution: {integrity: sha512-wnFJkogWvN4jm/hQRF2UBaeUmk20j5+DmHvoyWii2b8HJDyvz1MF2OU/6ynXt2KR63rbZLWkFpoytpdc/yBuSA==} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-arm64-musl@4.62.2': + resolution: {integrity: sha512-HVu2bp0zhvJ8xHEV9+UUs7S90VadmBSY3LcIMvozbPo4AuMGDWlz3ymHLHZPX4hR67TKTt8Qp5PJ5RBg/i+RMQ==} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-loong64-gnu@4.62.2': + resolution: {integrity: sha512-mQqqAV8QaoSgr9I2fKDLY2BAVvmKjWoGiu/cSYQonsLvtqwEn1E4QYfnCOcp5zoEqNhsDYin1s6jx/VJmrxlZg==} + cpu: [loong64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-loong64-musl@4.62.2': + resolution: {integrity: sha512-IxKLoxCQ2IWi6bT2akyDUBGsOImDKB+sPp4EsTmwFQ/fMwpCKm8uLSSgP/Kx/QYUgKis6SEZ5/Nlhup0DIA0PQ==} + cpu: [loong64] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-ppc64-gnu@4.62.2': + resolution: {integrity: sha512-Mk5ha2RQSgyFfmYYLkBpPnUk8D8FriBxesO1u9O75X0mHgXL1UQcH5Itl2lurWL2tj0RxV9b9tJgipac0hRY9A==} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-ppc64-musl@4.62.2': + resolution: {integrity: sha512-CjvEnqJL/0/TQ3TXX3OPIJ/kmBellrWd4heXUmHeJlTnmwjKpSJzoehLaL6Xk0ZnMHBu9dZuFADNOrtjF4v+2w==} + cpu: [ppc64] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-riscv64-gnu@4.62.2': + resolution: {integrity: sha512-1SiZbzwdkaDURsew/tSOrooKiYy7EQGT6m8ufavAi9NEyQb/6VuIxFXAL1fqa4iZe3g4NbNk4P7J32z2tw5Mgg==} + cpu: [riscv64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-riscv64-musl@4.62.2': + resolution: {integrity: sha512-nQts12zJ3NQRoE6uYljOH89v7szzLDvG2JD/vsX+vGXU8w/At1GowTZ5/7qeFQ8m7L55rpR8Okugnuo5bgjy2Q==} + cpu: [riscv64] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-s390x-gnu@4.62.2': + resolution: {integrity: sha512-E9/ll019jhPIJgpzfZoIkBGhcz+kKNgVWYRY0zr9srBdPPFVpvOKW8VaJKUbeK+eZXyQF9ltME+Kk6affeaPgg==} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-x64-gnu@4.62.2': + resolution: {integrity: sha512-5BqxR/pshjey51iliyzTD5Xi3EN0aLmQ2lZ3lvefVV9c82BvrLo2/6OT55iifpWBufs6kdwWbuOKS841DrmK9A==} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-x64-musl@4.62.2': + resolution: {integrity: sha512-uNN83XxQrRAh/w0/pmAfibcwyb6YWt4gP+dpnQKPVJshAloQ785ii8CT8ZCIxkGg9opVsvAlGhFitSm6D1Jjpg==} + cpu: [x64] + os: [linux] + libc: [musl] + + '@rollup/rollup-openbsd-x64@4.62.2': + resolution: {integrity: sha512-srjEIxSH3LRnJN6THczDHWQplqEMFiAJrTab0msUryh9kwNpkICf3Ea6q6MN/2cZwRFUNx5w+h6Hpi4QuHS6Zg==} + cpu: [x64] + os: [openbsd] + + '@rollup/rollup-openharmony-arm64@4.62.2': + resolution: {integrity: sha512-8hOJnxgbyObnCm5AlRA3A931xX19xq80RjVTKgJOvEKWqJruP/Uf12IbAOaDjjEXYRewwHLfmF0YRIdK3OwKWA==} + cpu: [arm64] + os: [openharmony] + + '@rollup/rollup-win32-arm64-msvc@4.62.2': + resolution: {integrity: sha512-mmF4AY1i0hG/bLWUctUq59gtmgaSIRa3cu/A3JFRp/sCNEme2bgDEiDS22P9FbnJB8NJNF4jPJiSP5RHQpUTDg==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.62.2': + resolution: {integrity: sha512-DZgkknc6jhHrk46V25vbAM0zZkyP0nSDkJB8/dRkLTxv470dOmWDqGoEJl/9A0dFfS7yE3REOwNDxpHwSLSt0Q==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-gnu@4.62.2': + resolution: {integrity: sha512-T6xr6ucWSFto+VGajA8YH26LdpHRuP4YLHEKAtCWvJDOlnmWcDZVCI2Jmjr+IFHDlt2zRaTAKE4tfjTaWLgJBg==} + cpu: [x64] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.62.2': + resolution: {integrity: sha512-BfzEnDJOt9T8M989/lA37EcJgat01wLRnoi5dQf3QzOH7jzpqTAzdDbVfRljVr5r+jzKqpbHeyOfAaXxAd0PAA==} + cpu: [x64] + os: [win32] + + '@sindresorhus/base62@1.0.0': + resolution: {integrity: sha512-TeheYy0ILzBEI/CO55CP6zJCSdSWeRtGnHy8U8dWSUH4I68iqTsy7HkMktR4xakThc9jotkPQUXT4ITdbV7cHA==} + engines: {node: '>=18'} + + '@so-ric/colorspace@1.1.6': + resolution: {integrity: sha512-/KiKkpHNOBgkFJwu9sh48LkHSMYGyuTcSFK/qMBdnOAlrRJzRSXAOFB5qwzaVQuDl8wAvHVMkaASQDReTahxuw==} + + '@standard-schema/spec@1.1.0': + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} + + '@stylistic/eslint-plugin@5.10.0': + resolution: {integrity: sha512-nPK52ZHvot8Ju/0A4ucSX1dcPV2/1clx0kLcH5wDmrE4naKso7TUC/voUyU1O9OTKTrR6MYip6LP0ogEMQ9jPQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^9.0.0 || ^10.0.0 + + '@sxzz/popperjs-es@2.11.8': + resolution: {integrity: sha512-wOwESXvvED3S8xBmcPWHs2dUuzrE4XiZeFu7e1hROIJkm02a49N120pmOXxY33sBb6hArItm5W5tcg1cBtV+HQ==} + + '@tybys/wasm-util@0.10.3': + resolution: {integrity: sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==} + + '@types/chai@5.2.3': + resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==} + + '@types/debug@4.1.13': + resolution: {integrity: sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==} + + '@types/deep-eql@4.0.2': + resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==} + + '@types/esrecurse@4.3.1': + resolution: {integrity: sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==} + + '@types/estree@1.0.9': + resolution: {integrity: sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==} + + '@types/hast@3.0.5': + resolution: {integrity: sha512-rp/ezSWaD1m44dPKICGhiskI13nVr7qTloFwDa/IYkhhf5nzwP+zIQcIJh3WIFSBOy/H1PzB40jPjMDksN4F+g==} + + '@types/jsesc@2.5.1': + resolution: {integrity: sha512-9VN+6yxLOPLOav+7PwjZbxiID2bVaeq0ED4qSQmdQTdjnXJSaCVKTR58t15oqH1H5t8Ng2ZX1SabJVoN9Q34bw==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/katex@0.16.8': + resolution: {integrity: sha512-trgaNyfU+Xh2Tc+ABIb44a5AYUpicB3uwirOioeOkNPPbmgRNtcWyDeeFRzjPZENO9Vq8gvVqfhaaXWLlevVwg==} + + '@types/lodash-es@4.17.12': + resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==} + + '@types/lodash@4.17.24': + resolution: {integrity: sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==} + + '@types/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + + '@types/ms@2.1.0': + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} + + '@types/node@26.1.1': + resolution: {integrity: sha512-nxAkRSVkN1Y0JC1W8ky/fTfkGsMmcrRsbx+3XoZE+rMOX71kLYTV7fLXpqud1GpbpP5TuffXFqfX7fH2GgZREw==} + + '@types/nprogress@0.2.3': + resolution: {integrity: sha512-k7kRA033QNtC+gLc4VPlfnue58CM1iQLgn1IMAU8VPHGOj7oIHPp9UlhedEnD/Gl8evoCjwkZjlBORtZ3JByUA==} + + '@types/path-browserify@1.0.3': + resolution: {integrity: sha512-ZmHivEbNCBtAfcrFeBCiTjdIc2dey0l7oCGNGpSuRTy8jP6UVND7oUowlvDujBy8r2Hoa8bfFUOCiPWfmtkfxw==} + + '@types/triple-beam@1.3.5': + resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==} + + '@types/unist@3.0.3': + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + + '@types/web-bluetooth@0.0.21': + resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==} + + '@types/whatwg-mimetype@3.0.2': + resolution: {integrity: sha512-c2AKvDT8ToxLIOUlN51gTiHXflsfIFisS4pO7pDPoKouJCESkhZnEy623gwP9laCy5lnLDAw1vAzu2vM2YLOrA==} + + '@types/ws@8.18.1': + resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==} + + '@typescript-eslint/eslint-plugin@8.63.0': + resolution: {integrity: sha512-rvwSgqT+DHpWdzfSzPatRLm02a0GlESt++9iy3hLCDY4BgkaLcl8LBi9Yh7XGFBpwcBE/K3024QuXWTpbz4FfQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.63.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/parser@8.61.1': + resolution: {integrity: sha512-PJ5vePq5/ognBbrIcoC5+SHO5dfpeLPzP9FpLkzWrguoYQEeeSjlJpVwOpo1JRSTEi7dRcwNy4h4dzV70PqHcg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/parser@8.63.0': + resolution: {integrity: sha512-gwh4gvvlaVDKKxyfxMG+Gnu1u9X0OQBwyGLkbwB65dIzBKnxeRiJlNFqlI3zwVhNXJIs6qV7mlFCn/BIajlVig==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/project-service@8.61.1': + resolution: {integrity: sha512-PrC4JYGmR241lYnfhmKGTXkFqv8+ymbTFgSAY0fVXpY82/QkMw5TZPl+vGzuDDU2QYJk9fIDOBTntF+yDv9LEA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/project-service@8.63.0': + resolution: {integrity: sha512-e5dh0/UI0ok53AlZ5wRkXCB32z/f2jUZqPR/ygAw5WYaSw8j9EoJWlS7wQjr/dmOaqWjnPIn2m+HhVPCMWGZVQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/rule-tester@8.61.1': + resolution: {integrity: sha512-x7xp2GZaFcrXv2tuGN5Lcdd05BcPDaL2wSPpARPSbbRE7N2N46za+9NTAtb8NX5a9FfoDLkhLYDbJjngV8xYDA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/scope-manager@8.61.1': + resolution: {integrity: sha512-L2bdIeoQS8FlKAvONAr20w6OcLXeB+qiDKbAooS9A0Ben+iSIkBef0FxqwKWYqt5sa0i4KJtxVyVmhMylKzF5w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/scope-manager@8.63.0': + resolution: {integrity: sha512-uUyfMWCnDSN8bCpcrY8nGP2BLkQ9Xn0GsipcONcpIDWhwhO4ZSyHvyS14U3X75mzxWxL3I2UZIrenTzdzcJO8A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/tsconfig-utils@8.61.1': + resolution: {integrity: sha512-UN/H4di+OO7EWx2ovME+8t31YO+KVnK0RRKEHR3kOt21/Ay8BOq3M1OMvWs5vNiqcFCYGYoxK3MXPZzmMUE+yg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/tsconfig-utils@8.63.0': + resolution: {integrity: sha512-sUAbkulqBAsncKnbRP3+7CtQFRKicexnj7ZwNC6ddCR7EmrXvjvdCYMJbUIqMd6lwoEriZjwLo08aS5tSjVMHg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/type-utils@8.63.0': + resolution: {integrity: sha512-Nzzh/OGxVCOjObjaj1CQF2RUasyYy2Jfuh+zZ3PjLzG2fYRriAiZLib9UKtO+CpQAS3YHiAS+ckZDclwqI1TPA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/types@8.61.1': + resolution: {integrity: sha512-G+CRlPqLv7Bz1IZVs03x5K59F1veqL0EJUROAdGhKsEq8qOiRiZbI+HUojPq5l0fEGOKModD9br6lObhB8zkoA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/types@8.63.0': + resolution: {integrity: sha512-xyLtl9DUBBFrcJS4x2pIqGLH68/tC2uOa4Z7pUteW09D3bXnnXUom4dyPikzWgB7llmIc1zoeI3aoUdC4rPK/Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.61.1': + resolution: {integrity: sha512-u+oQD3BqYWPc8YV9Zab4vaJElJuwOLPRc10Jm1o/qS+6Qwen14HCWwx0Seo4LnSn2wxea2Ik8DxPt2/FHmuhrg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/typescript-estree@8.63.0': + resolution: {integrity: sha512-ygBkU+B7ex5UI/gKhaqexWev79uISfIv7XQCRNYO/jmD8rGLPyWLAb3KMRT6nd8Gt9bmUBi9+iX6tBdYfOY81Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/utils@8.61.1': + resolution: {integrity: sha512-1+P/3Dj6jvtybE1q0HQ6yBt/gq+oKJyLdEv4HdnqasaEXRSYCAsD59mXEVQnM/ULNdQxbX77tdG4jPRjIS6knA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/utils@8.63.0': + resolution: {integrity: sha512-fUKaeAvrTuQg/Tgt3nliAUSZHJM6DlCcfyEmxCvlX8kieWSStBX+5O5Fnidtc3i2JrH+9c/GL4RY2iasd/GPTA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/visitor-keys@8.61.1': + resolution: {integrity: sha512-6fJ9MHWtK14C1DSkiMlHUSOmrVebL7150xZJBlJiL62jjhIA4JmOq6flwBgDxIdBKKdoiZRel+dfPD5MLfny3w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/visitor-keys@8.63.0': + resolution: {integrity: sha512-UexrHGnGTpbuQHct2ExOc2ZcFbGUS9FOesCxxqdBGcpI1BxYu/LZ6U8Aq6/72XtF/qRBk9nhuGHFJIXXMhPMdw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@unocss/cli@66.7.5': + resolution: {integrity: sha512-fgWkECRn2LGVo9sEpmjk/KJ3NSKUDitaZCNrJcEYM93DG+ELriTHcL+VWBlF4rcZf9fdGlq1nKbbRHUZirFCHQ==} + hasBin: true + + '@unocss/config@66.7.5': + resolution: {integrity: sha512-dkPl9glhEahJ+Xoja5ZseKKnH+vZaeaKQzg8b0otcKcPPNrHQgu1nu3QgfeOjnXOGrjZIotHwUeVtt4ZA2Skgg==} + + '@unocss/core@66.7.5': + resolution: {integrity: sha512-UdJb8MiMywcau8QrWEVgUAz0kvoFHyR+sACwYCgmBh/BpKJGyR/zw/Ys3wvysbm0f+i/20VGBex/QQxYVlzdyQ==} + + '@unocss/extractor-arbitrary-variants@66.7.5': + resolution: {integrity: sha512-5zOkbnLIJc8E749qNjLXfPHl3FdHloop12h706/ojr6idK4ix0KLm43R//uLnphixCehdHJRuHnavnM4C/kQbA==} + + '@unocss/inspector@66.7.5': + resolution: {integrity: sha512-WmTJMnj8bmRxvw/wGeShmL2eEHr2/L0BdGTXSxhfzwcO8y5XZEbBmVciLcM7pqaTXQ6JY4+KnITrDUf1urjZxQ==} + + '@unocss/preset-attributify@66.7.5': + resolution: {integrity: sha512-1Oi1Cp81pqYJwG3h4+OlP5A0FKyaa07MFBXaXc4Yr3faiTbsI8SKj2TqnZCb+NQvBsEqslEd+jKXGZ3lKzCVOQ==} + + '@unocss/preset-icons@66.7.5': + resolution: {integrity: sha512-ZsxadWnGGtHdANTikuMnjkQaT1qwUFJHZBF4fzVsPMnUiiKGs8rzXukwM9w3Gi9ontM7nbG2FYi9clWETSlpFg==} + + '@unocss/preset-mini@66.7.5': + resolution: {integrity: sha512-o37TSl4ecT0dKu+3/TYuTYht75h82SEwDNl476m9ve0KW4Pv1O2tT/9TWd7N5cutEpySr8/YtjMwtWBD+drxBg==} + + '@unocss/preset-tagify@66.7.5': + resolution: {integrity: sha512-/8YB1tXVi+WmNKPhsCdtO1xnQKEkshSnWDp6AbvVP3f6qOF7adlMYpAt3kpWCoVUBsfOQ06ZQlnfricMjObyoQ==} + + '@unocss/preset-typography@66.7.5': + resolution: {integrity: sha512-2dxC8LT9KYa29UZT4muDFl7DbIXvKktTfeSMbUGMdZKbHcuMtKSP2U52wti1PL5I9duqp4v+8G33EeVutGTUaQ==} + + '@unocss/preset-uno@66.7.5': + resolution: {integrity: sha512-zaUlYgNngbt50fZA/LbtsEnmPKojPqeiXCyUUiKQMv2uJQhncR32xhLZXVQ+TJD7hlfZ+6FAqlco1NIiAcub9w==} + + '@unocss/preset-web-fonts@66.7.5': + resolution: {integrity: sha512-OLLTK7kswdSu51qxEm6O+AehecgCfS08Ivqo+280lKzFW7V1jXr5okeJ1ty+85oHCprJqzcD9iG1khxNRLomcA==} + + '@unocss/preset-wind3@66.7.5': + resolution: {integrity: sha512-atFe/7Qein+oMdyZs0hEo+3EjV99Av2LVxDbzpCungxIfbS3TnQt70EIuHXMPNCVWLYwrMV+/P1n9Ntb0E3mow==} + + '@unocss/preset-wind4@66.7.5': + resolution: {integrity: sha512-n3jIvQv8x1jXpmWfvNFBIqHNARki4mKZXfxAA31gekpXsRRTg16u1+yC1+PBBJgoEDFEnnmKnG7EZP88S8LVXA==} + + '@unocss/preset-wind@66.7.5': + resolution: {integrity: sha512-LVKgGr0A9Lc7F85xGXrrb71DDXMlHGA8bcj/Kht8BCsuRdBZadNbLlnv5qnSJiHYhi3/blzcgVoaeRor6L9yNA==} + + '@unocss/rule-utils@66.7.5': + resolution: {integrity: sha512-/AKHBRF6ZOexE3EDDv8ZEYh40P5e2Eha41IYUbE1wjigW7++ssmvimSTdufJzZvU5DGP++E3B3WEsFPprZMjAg==} + + '@unocss/transformer-attributify-jsx@66.7.5': + resolution: {integrity: sha512-r8qDwNSt0eGSwWws3xsuIHb3PZYR2embFdYoE67hD/xlYgLjX1uPy/HUlGCSSh4uLc4vVYjurr0Oq5xF/B8YiA==} + + '@unocss/transformer-compile-class@66.7.5': + resolution: {integrity: sha512-KuECgsGF7tGe808vIvKViEjI0UCUgYgneJfK+/TWBkjC7s8dLVaUtJzzcP9/r6OfGlgyn/x1YTdRqTaCENa7Xg==} + + '@unocss/transformer-directives@66.7.5': + resolution: {integrity: sha512-VMJApXXOwlDubkW+cNMmOkfxLefFupJr+yU23gGYUB2NPsuVltc8H5CDM0gfVebpeL5CUW05evxzEAk2wsju+Q==} + + '@unocss/transformer-variant-group@66.7.5': + resolution: {integrity: sha512-iDmP3mM8J+IxuQf5Uh33zsi528xnGxTpKRJ0c+LCrqBTTkR2tZr4aCzNmJ0g29Js2yEOsyNXRRc8BNTuvgn0AA==} + + '@unocss/vite@66.7.5': + resolution: {integrity: sha512-1z1TBCNJCR2WzjPtjzmCHr8rtzXHosMjLdsCNe6Mzsfwiw044gzzLVuiEZO9vIjkI50lvQ+gIOxOiVQG0hGAeA==} + peerDependencies: + vite: ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0 || ^8.0.0-0 + + '@vitejs/plugin-vue@6.0.7': + resolution: {integrity: sha512-km+p+XdSz9Sxm5rqUbqcSfZYaAniKxWBj1KURl+Jr7UaPvvX7BmaWMdP69I5rrFDeQGyxAG7NXdc57vz+snhWg==} + engines: {node: ^20.19.0 || >=22.12.0} + peerDependencies: + vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 + vue: ^3.2.25 + + '@vitest/eslint-plugin@1.6.22': + resolution: {integrity: sha512-SDHPcido/3V5NdQh1rmOIMTHSixtjUBdV3a/8aE/A3Iwx/EZtVuLRC+e0g1uenh4Yd1fjps0JIN5HUNmhdIpQQ==} + engines: {node: '>=18'} + peerDependencies: + '@typescript-eslint/eslint-plugin': '*' + eslint: '>=8.57.0' + typescript: '>=5.0.0' + vitest: '*' + peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true + typescript: + optional: true + vitest: + optional: true + + '@vitest/expect@4.1.10': + resolution: {integrity: sha512-YsCn+qAk1GWjQOWFEsEcL2gNQ0zmVmQu3T03qP6UyjhtmdtwtbuI+DASn/7iQB3HGTXkdBwGddzxPlmiql5vlA==} + + '@vitest/mocker@4.1.10': + resolution: {integrity: sha512-v0xaezt+DKEmKfaxg133ldzADrwLGd7Ze1MfQQTYfvs8OqZIwbxyxaYURivwV7sWy5fqn3rH5uOrSp07bp44Ow==} + peerDependencies: + msw: ^2.4.9 + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + + '@vitest/pretty-format@4.1.10': + resolution: {integrity: sha512-W1HsjSH4MXQ9YfmmhLAoIYf1HRfekQCGngeIgcei6MP5QQGWUe0gkopdZQaVCFO+JDJMrAJGwa5pRpNpvy4P8Q==} + + '@vitest/runner@4.1.10': + resolution: {integrity: sha512-IKI6kpIH+LmpROplyLwBBaCfMgOZOMsygVa6BARD6ahA04VRuJSa6OaVG7kRvSEMD870Vd91rSSw0eegtWyLGg==} + + '@vitest/snapshot@4.1.10': + resolution: {integrity: sha512-xRkfOT1qpTAi/Ti4Y1LtfRc3kEuqxGw59eN2jN9pRWMtS/XDevekhcFSqvQqjUNGksfjMJu3Y+oJ+4Ypn2OaJw==} + + '@vitest/spy@4.1.10': + resolution: {integrity: sha512-PLf/Ugvoq5wO/b4rwYCR1h2PSIdXz7wnkQFMiUpLdtM7l6pqVFcQIBEHyT1+l+cj7mNwAfZHzqXqDyjvOuwbDw==} + + '@vitest/utils@4.1.10': + resolution: {integrity: sha512-fy9am/HWxbaGt/Sawrp90vt6Y6jQwf1RX77cz3uwoJwJVMli/e1IEwRPnMNJ7vKfPTwo0diXifkpPvwH9v7nGA==} + + '@volar/language-core@2.4.28': + resolution: {integrity: sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==} + + '@volar/source-map@2.4.28': + resolution: {integrity: sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==} + + '@volar/typescript@2.4.28': + resolution: {integrity: sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==} + + '@vue-macros/common@3.1.2': + resolution: {integrity: sha512-h9t4ArDdniO9ekYHAD95t9AZcAbb19lEGK+26iAjUODOIJKmObDNBSe4+6ELQAA3vtYiFPPBtHh7+cQCKi3Dng==} + engines: {node: '>=20.19.0'} + peerDependencies: + vue: ^2.7.0 || ^3.2.25 + peerDependenciesMeta: + vue: + optional: true + + '@vue/compiler-core@3.5.39': + resolution: {integrity: sha512-16KBTEXAJCpDr0mwlw+AZyhu8iyC7R3S2vBwsI7QnWJU6X3WKc9VKeNEZpiMdZ569qWhz9574L3vV55qRL0Vtw==} + + '@vue/compiler-dom@3.5.39': + resolution: {integrity: sha512-oQPigALqYbNxTNPvNgSOe+czwVExfbVF02lz8jP0S3AXJiu3jxYDygNUiqSep4ezzW8XgnubqH63My2A7JR/vg==} + + '@vue/compiler-sfc@3.5.39': + resolution: {integrity: sha512-d0ki86iOyN8LoZPBmk5SJWNwHP19CnDDCfuo//+2WJa2g5Ke0Jay983PIBIcSSzldC68I8DrD5GrHV3OSDfodg==} + + '@vue/compiler-ssr@3.5.39': + resolution: {integrity: sha512-Ce7/wvwMHai74bdszfXExdazFigYnlF9zgCmEQUcM1j0fOymlouZ7XilTYNo8oUjhlnjYOZbGrcYKuqjz89Ucw==} + + '@vue/devtools-api@7.7.10': + resolution: {integrity: sha512-KxtEpUOOpFz/qOGRrAwA36QF7DqIA+FXgCYit9mk9wjbaZt0sXOFz81ElOZtKA4HbWHUdwNjZHBFsFFyp5BZiA==} + + '@vue/devtools-api@8.1.5': + resolution: {integrity: sha512-YJipMVAKe5wT5CWf5kTYCaNV7NMNjFVxJkIkJaJ4W/nCxEBzlZzrOsYKeCymdCrFZmBS/+wTWFoUs3Jf/Q6XSQ==} + + '@vue/devtools-kit@7.7.10': + resolution: {integrity: sha512-3WNi2Kq4tbpVbmhml7RiphmAt0279oh3fKNeWMQIrltfX8Q91b4i5PL8DtyNKdwmcsGrV4fg+erwWOmD05CLIw==} + + '@vue/devtools-kit@8.1.5': + resolution: {integrity: sha512-FcSAxsi4eWuXLCB7Rv9lj0aIVHHPNVQ2BazGf4RJTc2JCqb4BQg0hk87ZFhminCfl+mD5OUI0rX2cgyu4kJOGA==} + + '@vue/devtools-shared@7.7.10': + resolution: {integrity: sha512-wOPslzB8vTvpxwdaOcR2qAbwmuSP0L+rhpoC6Cf56V3Jip+HWb7PQQXOUPgBNQARpXsbQX/+mvi8kKucmBGRwQ==} + + '@vue/devtools-shared@8.1.5': + resolution: {integrity: sha512-mhT4zcPFhF+Xk1O4BfhhrbXzpmfqY03fS6xGpcllbQG7lDjhQf8pQHcTIhqQIYx1hfwtHmk/6jM96ele0UxPqQ==} + + '@vue/language-core@3.3.7': + resolution: {integrity: sha512-LzmkKinXAMMoh8Jfi/jMUSDUjuPdv8mynH5WJGKfXyZtDw3hQ6GBaoI6Bcnl/Xqlu32q/0Z6i/trp4VXykzyLw==} + + '@vue/reactivity@3.5.39': + resolution: {integrity: sha512-TpsuBJ9gGlZa5d23XcM2y8EXanz9dZeVDQBXRwzy46ItgvM+rWpzs+UVM0wcRLxGvcav0HE5jz2gNL53xlRAog==} + + '@vue/runtime-core@3.5.39': + resolution: {integrity: sha512-9GLtNyRvPAUMbX+7ono0RC2j0guo2LXVi8LvcmAooImACUKm0oFf0jjwbX8/H0AE/t1nxhAkn8RSl9PMCzzxZw==} + + '@vue/runtime-dom@3.5.39': + resolution: {integrity: sha512-7Y6aAGboKcXAZ3ECuUy7RrS5yy2r47dhTp2SKaJmYxjopImaVFaNa5Ne66NwGovsrxVAl5S5rwc7m22UG7Lmww==} + + '@vue/server-renderer@3.5.39': + resolution: {integrity: sha512-yZSakiAGw85rZfG7UM8akMnIF+FmeiNk47uvHf2nVBBSe+dIKUhZuZq9+XgJhbV3nS5Z4ALH23/MpXofW+mbcw==} + peerDependencies: + vue: 3.5.39 + + '@vue/shared@3.5.39': + resolution: {integrity: sha512-l1rrBtBfTnmxvtsvdQDXltUUy8S1Y+ZaqdfUzmAnJkTd8Z8rv5v/ytW+TKiqEOWyHPoqtPlNFSs0lhRmYVSHVA==} + + '@vue/test-utils@2.4.11': + resolution: {integrity: sha512-GDqaqZsA6m2E5vNzej0aYiIb6BX8xV9pNSbbbXKOfEYwg7ZNblVX8suyqmUBThq8VIrgAJNxn+z72hVtUeiWHA==} + peerDependencies: + '@vue/compiler-dom': 3.x + '@vue/server-renderer': 3.x + vue: 3.x + peerDependenciesMeta: + '@vue/server-renderer': + optional: true + + '@vueuse/core@14.3.0': + resolution: {integrity: sha512-aHfz47g0ZhMtTVHmIzMVpJy8ePhhOy68GY5bv110+5DVtZ+W7BsOx+m61UNQqfrWyPztIHIanWa3E2tib3NFIw==} + peerDependencies: + vue: ^3.5.0 + + '@vueuse/metadata@14.3.0': + resolution: {integrity: sha512-BwxmbAzwAVF50+MW57GXOUEV61nFBGnlBvrTqj49PqWJu3uw7hdu72ztXeZ33RdZtDY6kO+bfCAE1PCn88Tktw==} + + '@vueuse/shared@14.3.0': + resolution: {integrity: sha512-bZpge9eSXwa4ToSiqJ7j6KRwhAsneMFoSz3LMWKQDkqimm3D/tbFlrklrs/IOqC8tEcYmXQZJ6N0UrjhBirVCg==} + peerDependencies: + vue: ^3.5.0 + + '@xmldom/xmldom@0.8.13': + resolution: {integrity: sha512-KRYzxepc14G/CEpEGc3Yn+JKaAeT63smlDr+vjB8jRfgTBBI9wRj/nkQEO+ucV8p8I9bfKLWp37uHgFrbntPvw==} + engines: {node: '>=10.0.0'} + + abbrev@2.0.0: + resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + accepts@2.0.0: + resolution: {integrity: sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==} + engines: {node: '>= 0.6'} + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.17.0: + resolution: {integrity: sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg==} + engines: {node: '>=0.4.0'} + hasBin: true + + agent-base@6.0.2: + resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} + engines: {node: '>= 6.0.0'} + + ajv-formats@3.0.1: + resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==} + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + + ajv@6.15.0: + resolution: {integrity: sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==} + + ajv@8.20.0: + resolution: {integrity: sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==} + + alien-signals@3.2.1: + resolution: {integrity: sha512-I8FjmltrfnDFoZedi5CG8DghVYNhzb/Ijluz7tCSJH0xpd0484Kowhbb1XDYOxfJpU1p5wnM2X54dA+IfGyD1g==} + + ansi-escapes@7.3.0: + resolution: {integrity: sha512-BvU8nYgGQBxcmMuEeUEmNTvrMVjJNSH7RgW24vXexN4Ven6qCvy4TntnvlnwnMLTVlcRQQdbRY8NKnaIoeWDNg==} + engines: {node: '>=18'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + engines: {node: '>=12'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.3: + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} + engines: {node: '>=12'} + + ansis@4.3.1: + resolution: {integrity: sha512-BJ8/l4R5LRE7hW9WdSuGYrLSHi2ynxeFpDFbH0K/CgNeY/tyhk+vO6TYxXC5r5CpUhNVX310xzPsN/H9lCdfOA==} + engines: {node: '>=14'} + + are-docs-informative@0.0.2: + resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==} + engines: {node: '>=14'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + assertion-error@2.0.1: + resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} + engines: {node: '>=12'} + + ast-kit@2.2.0: + resolution: {integrity: sha512-m1Q/RaVOnTp9JxPX+F+Zn7IcLYMzM8kZofDImfsKZd8MbR+ikdOzTeztStWqfrqIxZnYWryyI9ePm3NGjnZgGw==} + engines: {node: '>=20.19.0'} + + ast-walker-scope@0.9.0: + resolution: {integrity: sha512-IJdzo2vLiElBxKzwS36VsCue/62d6IdWjnPB2v3nuPKeWGynp6FF/CYoLa5i/3jXH/z97ZDdsXz6abpgM6w07A==} + engines: {node: '>=20.19.0'} + + async-validator@4.2.5: + resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==} + + async@3.2.6: + resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + axios@1.18.1: + resolution: {integrity: sha512-3nTvFlvpn9Zu/RkHUqtc7/+al4UpRW5az71ap5zccp6e8RAYEzhMTecX8Dz1wWDYrPpUoB1HAQEGEAEvUr7S9g==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} + + baseline-browser-mapping@2.10.42: + resolution: {integrity: sha512-c/jurFrDLyui7o1J86yLkRu4LMsTYcBohveus7/I2Hzdn9KIP2bdJPTue/lR1KH46enoPbD77GKeSYNdyPoD3Q==} + engines: {node: '>=6.0.0'} + hasBin: true + + birpc@2.9.0: + resolution: {integrity: sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==} + + body-parser@2.3.0: + resolution: {integrity: sha512-2cGmJupaNgg+QUwVLAucDuWuoMZ6EX9iHDRswZ5lsNYEmwPaRknMPCLZz07yTzVq/83p4o/wzbDZbBrTvGGTIw==} + engines: {node: '>=18'} + + boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + + brace-expansion@1.1.16: + resolution: {integrity: sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==} + + brace-expansion@2.1.2: + resolution: {integrity: sha512-w5JZcKgdhDOgOwm8H+KgbosopHMuGcl6qbulwjtz3SM7I7P3yW1eAjzMPLrIE+NQ9vjgANKHWeMHnrT0OXW1oA==} + + brace-expansion@5.0.7: + resolution: {integrity: sha512-7oFy703dxfY3/NLxC1fh2SUCQ0H9rmAY+5EpDVfXjUTTs+HEwR2nYaqLv+GWcTsumwxPfiz6CzCNkwXwBUwqCA==} + engines: {node: 18 || 20 || >=22} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.28.5: + resolution: {integrity: sha512-Cu2E6QejHWzuDMTkuwgpABFgDfZrXLQq5V13YOACZx4mFAG4IwGTbTfHPMr4WtxlHoXSM8FIuRwYYCz5XiabaQ==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + buffer-builder@0.2.0: + resolution: {integrity: sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==} + + buffer-image-size@0.6.4: + resolution: {integrity: sha512-nEh+kZOPY1w+gcCMobZ6ETUp9WfibndnosbpwB1iJk/8Gt5ZF2bhS6+B6bPYz424KtwsR6Rflc3tCz1/ghX2dQ==} + engines: {node: '>=4.0'} + + builtin-modules@5.3.0: + resolution: {integrity: sha512-hMQUl2bUFG339QygPM97E+mc8OY1IAchORZxm4a/frcYwKzozMzRVDBwHW0NjOqGElLm2O37AVQE8ikxlZHrMQ==} + engines: {node: '>=18.20'} + + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + + cac@7.0.0: + resolution: {integrity: sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==} + engines: {node: '>=20.19.0'} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + + caniuse-lite@1.0.30001803: + resolution: {integrity: sha512-g/uHREV2ZpK9qMalCsWaxmA6ol+DX8GYhuf3T40RKoP+oL7vhRJh8LNt73PCjpnR6l14FzfPrB5Yux4PKm2meg==} + + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + + chai@6.2.2: + resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} + engines: {node: '>=18'} + + change-case@5.4.4: + resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==} + + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + + chokidar@5.0.0: + resolution: {integrity: sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==} + engines: {node: '>= 20.19.0'} + + ci-info@4.4.0: + resolution: {integrity: sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==} + engines: {node: '>=8'} + + cli-cursor@5.0.0: + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} + + cli-truncate@5.2.0: + resolution: {integrity: sha512-xRwvIOMGrfOAnM1JYtqQImuaNtDEv9v6oIYAs4LIHwTiKee8uwvIi363igssOC0O5U04i4AlENs79LQLu9tEMw==} + engines: {node: '>=20'} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + clone-buffer@1.0.0: + resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==} + engines: {node: '>= 0.10'} + + clone-stats@1.0.0: + resolution: {integrity: sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==} + + clone@2.1.2: + resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} + engines: {node: '>=0.8'} + + cloneable-readable@1.1.3: + resolution: {integrity: sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-convert@3.1.3: + resolution: {integrity: sha512-fasDH2ont2GqF5HpyO4w0+BcewlhHEZOFn9c1ckZdHpJ56Qb7MHhH/IcJZbBGgvdtwdwNbLvxiBEdg336iA9Sg==} + engines: {node: '>=14.6'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + color-name@2.1.0: + resolution: {integrity: sha512-1bPaDNFm0axzE4MEAzKPuqKWeRaT43U/hyxKPBdqTfmPF+d6n7FSoTFxLVULUJOmiLp01KjhIPPH+HrXZJN4Rg==} + engines: {node: '>=12.20'} + + color-string@2.1.4: + resolution: {integrity: sha512-Bb6Cq8oq0IjDOe8wJmi4JeNn763Xs9cfrBcaylK1tPypWzyoy2G3l90v9k64kjphl/ZJjPIShFztenRomi8WTg==} + engines: {node: '>=18'} + + color@5.0.3: + resolution: {integrity: sha512-ezmVcLR3xAVp8kYOm4GS45ZLLgIE6SPAFoduLr6hTDajwb3KZ2F46gulK3XpcwRFb5KKGCSezCBAY4Dw4HsyXA==} + engines: {node: '>=18'} + + colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + commander@10.0.1: + resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} + engines: {node: '>=14'} + + commander@7.2.0: + resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} + engines: {node: '>= 10'} + + commander@8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + + comment-parser@1.4.5: + resolution: {integrity: sha512-aRDkn3uyIlCFfk5NUA+VdwMmMsh8JGhc4hapfV4yxymHGQ3BVskMQfoXGpCo5IoBuQ9tS5iiVKhCpTcB4pW4qw==} + engines: {node: '>= 12.0.0'} + + comment-parser@1.4.7: + resolution: {integrity: sha512-0h+uSNtQGW3D98eQt3jJ8L06Fves8hncB4V/PKdw/Qb8Hnk19VaKuTr55UNRYiSoVa7WwrFls+rh3ux9agmkeQ==} + engines: {node: '>= 12.0.0'} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + confbox@0.1.8: + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} + + confbox@0.2.4: + resolution: {integrity: sha512-ysOGlgTFbN2/Y6Cg3Iye8YKulHw+R2fNXHrgSmXISQdMnomY6eNDprVdW9R5xBguEqI954+S6709UyiO7B+6OQ==} + + config-chain@1.1.13: + resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} + + consola@3.4.2: + resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==} + engines: {node: ^14.18.0 || >=16.10.0} + + content-disposition@1.1.0: + resolution: {integrity: sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==} + engines: {node: '>=18'} + + content-type@1.0.5: + resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} + engines: {node: '>= 0.6'} + + content-type@2.0.0: + resolution: {integrity: sha512-j/O/d7GcZCyNl7/hwZAb606rzqkyvaDctLmckbxLzHvFBzTJHuGEdodATcP3yIRoDrLHkIATJuvzbFlp/ki2cQ==} + engines: {node: '>=18'} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + cookie-signature@1.2.2: + resolution: {integrity: sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==} + engines: {node: '>=6.6.0'} + + cookie@0.7.2: + resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} + engines: {node: '>= 0.6'} + + copy-anything@4.0.5: + resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==} + engines: {node: '>=18'} + + core-js-compat@3.49.0: + resolution: {integrity: sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==} + + core-util-is@1.0.3: + resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + + cors@2.8.6: + resolution: {integrity: sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==} + engines: {node: '>= 0.10'} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + css-select@4.3.0: + resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} + + css-select@5.2.2: + resolution: {integrity: sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==} + + css-selector-parser@1.4.1: + resolution: {integrity: sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==} + + css-tree@1.1.3: + resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} + engines: {node: '>=8.0.0'} + + css-tree@2.2.1: + resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} + + css-tree@2.3.1: + resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + + css-tree@3.2.1: + resolution: {integrity: sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + + css-what@6.2.2: + resolution: {integrity: sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==} + engines: {node: '>= 6'} + + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + + csso@4.2.0: + resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} + engines: {node: '>=8.0.0'} + + csso@5.0.5: + resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} + + cssom@0.5.0: + resolution: {integrity: sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==} + + csstype@3.2.3: + resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} + + dayjs@1.11.21: + resolution: {integrity: sha512-98IT+HOahAisibz/yjKbzuOBwYcjJ7BCLPzARyHiyEBmRz4fatF+KPJszEHXsGYjUG234aH/cOjW1wwTbKUZlA==} + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decode-named-character-reference@1.3.0: + resolution: {integrity: sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==} + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + defu@6.1.7: + resolution: {integrity: sha512-7z22QmUWiQ/2d0KkdYmANbRUVABpZ9SNYyH5vx6PZ+nE5bcC0l7uFvEfHlyld/HcGBFTL536ClDt3DEcSlEJAQ==} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + + destr@2.0.5: + resolution: {integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==} + + detect-indent@7.0.2: + resolution: {integrity: sha512-y+8xyqdGLL+6sh0tVeHcfP/QDd8gUgbasolJJpY7NgeQGSZ739bDtSiaiDgtoicy+mtYB81dKLxO9xRhCyIB3A==} + engines: {node: '>=12.20'} + + detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} + + devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + + diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + dom-serializer@1.4.1: + resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} + + dom-serializer@2.0.0: + resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} + + dom-zindex@1.0.7: + resolution: {integrity: sha512-cKU/h8v8IPBgdZOTPbPmq3Ib+Ac5C+kKoh9I4LbGR9BM3GwbmB16KYWKJcj5M2BavnA66EbgYzxYDLd1IytnlQ==} + + domelementtype@2.3.0: + resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} + + domhandler@4.3.1: + resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} + engines: {node: '>= 4'} + + domhandler@5.0.3: + resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} + engines: {node: '>= 4'} + + domutils@2.8.0: + resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} + + domutils@3.2.2: + resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + duplexer@0.1.2: + resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} + + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + + editorconfig@1.0.7: + resolution: {integrity: sha512-e0GOtq/aTQhVdNyDU9e02+wz9oDDM+SIOQxWME2QRjzRX5yyLAuHDE+0aE8vHb9XRC8XD37eO2u57+F09JqFhw==} + engines: {node: '>=14'} + hasBin: true + + ee-first@1.1.1: + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} + + electron-to-chromium@1.5.389: + resolution: {integrity: sha512-cEto7aeOqBfU1D+c5py5pE+ooscKE75JifxLBdFUZsqAxRS6y7kebtxAZvICszSl05gPjYHDTjY+lXpyGvpJbg==} + + element-plus@2.14.2: + resolution: {integrity: sha512-eNH9uP3wQoNqieEIHXiNvIVv+zO5sZDU0CAZq5b0zqSN06DD0/V9xIq1R/qm3rw5k3nBTM1JvpxhCfRbaFLzDQ==} + peerDependencies: + vue: ^3.3.7 + + emoji-regex@10.6.0: + resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + empathic@2.0.1: + resolution: {integrity: sha512-YGRs8knHhKHVShLkFET/rWAU8kmHbOV5LwN938RHI0pljAJ1Gf6SzXsSmRaEzcXTtOOmVqJ5+WtQPL5uigY50Q==} + engines: {node: '>=14'} + + enabled@2.0.0: + resolution: {integrity: sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==} + + encodeurl@2.0.0: + resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} + engines: {node: '>= 0.8'} + + enhanced-resolve@5.24.2: + resolution: {integrity: sha512-rpsZEGT1jFuve6QlpyRp9ckQ+kN61hvF9BzCPyMdaKTm8UJce96KBn3sorXOFXlzjPrs3Vc4T1NsSroZ3PxlFw==} + engines: {node: '>=10.13.0'} + + entities@2.2.0: + resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + entities@7.0.1: + resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==} + engines: {node: '>=0.12'} + + environment@1.1.0: + resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} + engines: {node: '>=18'} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-module-lexer@2.3.0: + resolution: {integrity: sha512-KLdwQm2NvGLDkQDCGvmiQrhkd0JbMzXthwQAUgWjQuQdBLFa3eiBP5arXZyA+f8x+x7OXgud6bq2rxjGtHV2tw==} + + es-object-atoms@1.1.2: + resolution: {integrity: sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + esbuild@0.27.2: + resolution: {integrity: sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==} + engines: {node: '>=18'} + hasBin: true + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + + eslint-compat-utils@0.5.1: + resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==} + engines: {node: '>=12'} + peerDependencies: + eslint: '>=6.0.0' + + eslint-config-flat-gitignore@2.3.0: + resolution: {integrity: sha512-bg4ZLGgoARg1naWfsINUUb/52Ksw/K22K+T16D38Y8v+/sGwwIYrGvH/JBjOin+RQtxxC9tzNNiy4shnGtGyyQ==} + peerDependencies: + eslint: ^9.5.0 || ^10.0.0 + + eslint-flat-config-utils@3.2.0: + resolution: {integrity: sha512-PHgo1X5uqIorJONLVD9BIaOSdoYFD3z/AeJljdqDPlWVRpeCYkDbK9k0AXoYVqqNJr6FEYIEr5Rm2TSktLQcHw==} + + eslint-formatting-reporter@0.0.0: + resolution: {integrity: sha512-k9RdyTqxqN/wNYVaTk/ds5B5rA8lgoAmvceYN7bcZMBwU7TuXx5ntewJv81eF3pIL/CiJE+pJZm36llG8yhyyw==} + peerDependencies: + eslint: '>=8.40.0' + + eslint-json-compat-utils@0.2.3: + resolution: {integrity: sha512-RbBmDFyu7FqnjE8F0ZxPNzx5UaptdeS9Uu50r7A+D7s/+FCX+ybiyViYEgFUaFIFqSWJgZRTpL5d8Kanxxl2lQ==} + engines: {node: '>=12'} + peerDependencies: + '@eslint/json': '*' + eslint: '*' + jsonc-eslint-parser: ^2.4.0 || ^3.0.0 + peerDependenciesMeta: + '@eslint/json': + optional: true + + eslint-merge-processors@2.0.0: + resolution: {integrity: sha512-sUuhSf3IrJdGooquEUB5TNpGNpBoQccbnaLHsb1XkBLUPPqCNivCpY05ZcpCOiV9uHwO2yxXEWVczVclzMxYlA==} + peerDependencies: + eslint: '*' + + eslint-parser-plain@0.1.1: + resolution: {integrity: sha512-KRgd6wuxH4U8kczqPp+Oyk4irThIhHWxgFgLDtpgjUGVIS3wGrJntvZW/p6hHq1T4FOwnOtCNkvAI4Kr+mQ/Hw==} + + eslint-plugin-antfu@3.2.3: + resolution: {integrity: sha512-U2fnz/H0gFPxpuC7QpaHa0Jv2AgCZ5hunp36SOP/yWo8yFzgvMh8X4pZ4uN4IKoqtBhk7G3HuVa93Urf51+sZg==} + peerDependencies: + eslint: '*' + + eslint-plugin-command@3.5.2: + resolution: {integrity: sha512-PA59QAkQDwvcCMEt5lYLJLI3zDGVKJeC4id/pcRY2XdRYhSGW7iyYT1VC1N3bmpuvu6Qb/9QptiS3GJMjeGTJg==} + peerDependencies: + '@typescript-eslint/rule-tester': '*' + '@typescript-eslint/typescript-estree': '*' + '@typescript-eslint/utils': '*' + eslint: '*' + + eslint-plugin-es-x@7.8.0: + resolution: {integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '>=8' + + eslint-plugin-format@2.0.1: + resolution: {integrity: sha512-0BA65p5DAiuKtx5MmMJfPk9WaTjoHHbyVW7ZXRhaZoA1fdiMHhay9QRiDL2wr0hJWZxdF7CRThOK/70VUKVg2g==} + peerDependencies: + eslint: ^8.40.0 || ^9.0.0 || ^10.0.0 + + eslint-plugin-import-lite@0.6.0: + resolution: {integrity: sha512-80vevx2A7i3H7n1/6pqDO8cc5wRz6OwLDvIyVl9UflBV1N1f46e9Ihzi65IOLYoSxM6YykK2fTw1xm0Ixx6aTQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^9.0.0 || ^10.0.0 + + eslint-plugin-jsdoc@63.0.13: + resolution: {integrity: sha512-ahG1kWA8jYNwaQJtzJlnF+v4Gb9w5r+WL98gp+L8qjLN9ErpL5sevGuemN+fCYsU3Np27F36KmDc8UPi1ml/dg==} + engines: {node: ^22.13.0 || >=24} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 + + eslint-plugin-jsonc@3.3.0: + resolution: {integrity: sha512-CsTR8aDcShDg6A71ZppLaWiPoSo2J1Ivjm5/c4Mnb9sxgwWq+WG2PgeoAnj7SwzDPJB75tlHvLrGy6ntooIitg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + peerDependencies: + eslint: '>=9.38.0' + + eslint-plugin-n@18.2.1: + resolution: {integrity: sha512-aO3C9//yq8JIvYOi/T+jPvcZ9hZzpwzbR8esrYpFtgE9vpbyM8kn42AQOtIqYspVmpaSWr8X+nrlQuAJYxXAaw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + peerDependencies: + eslint: '>=8.57.1' + ts-declaration-location: ^1.0.6 + typescript: '>=5.0.0' + peerDependenciesMeta: + ts-declaration-location: + optional: true + typescript: + optional: true + + eslint-plugin-no-only-tests@3.4.0: + resolution: {integrity: sha512-4S3/9Nb7A2tiMcpzEQE9bQSlpeOz6WJkgryBuou/SA8W2x2c8Zf4j0NvTKBjv6qNhF9T79tmkecm/0CHqV0UGg==} + engines: {node: '>=5.0.0'} + + eslint-plugin-perfectionist@5.10.0: + resolution: {integrity: sha512-HiqpDrUDbGrMC6iHQbemgDyHJ0366Vyz/qRWmxQcSAkmG25cXr8BdRgx8yAhOKhEfBXn8Rnf/mTCsV4EqUJSxg==} + engines: {node: ^20.0.0 || >=22.0.0} + peerDependencies: + eslint: ^8.45.0 || ^9.0.0 || ^10.0.0 + + eslint-plugin-pnpm@1.6.1: + resolution: {integrity: sha512-pgcaJclu3YxZ/WMsiKMF58bHQasbGVARSMqCJvFaETYxSc7KcR2H74UVWV6exuGv9nNv9c0KKqn4PVHQlzMSEg==} + peerDependencies: + eslint: ^9.0.0 || ^10.0.0 + + eslint-plugin-regexp@3.1.1: + resolution: {integrity: sha512-MxR5nqoQCtVWmJwia0D2+NlXX1xzdpkslsVOZLEYQ4PQWEaL65PCZXURxaBc3lPnkNFpNxzMIRmYVxdl8giXRA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + peerDependencies: + eslint: '>=9.38.0' + + eslint-plugin-toml@1.4.0: + resolution: {integrity: sha512-3ErTnfUjXq/23f72XeyRcE0Y4Sd/ME1lsZeezczqpn2R4tE7+Sgco/NUKDXm0xAMz15tzcRz/9RfJRm6AqRO+A==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + peerDependencies: + eslint: '>=9.38.0' + + eslint-plugin-unicorn@68.0.0: + resolution: {integrity: sha512-mHYWvX948Q4H3bGc39bsNMxD/leOuNI+Iws9NVsoSz5VA7EGP86wnz7mZ/SPSvRhefT8L4hd8DHfDuGC+lIoCQ==} + engines: {node: '>=22'} + peerDependencies: + eslint: '>=10.4' + + eslint-plugin-unused-imports@4.4.1: + resolution: {integrity: sha512-oZGYUz1X3sRMGUB+0cZyK2VcvRX5lm/vB56PgNNcU+7ficUCKm66oZWKUubXWnOuPjQ8PvmXtCViXBMONPe7tQ==} + peerDependencies: + '@typescript-eslint/eslint-plugin': ^8.0.0-0 || ^7.0.0 || ^6.0.0 || ^5.0.0 + eslint: ^10.0.0 || ^9.0.0 || ^8.0.0 + peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true + + eslint-plugin-vue@10.9.2: + resolution: {integrity: sha512-4g7ZP3pYcuqd7Zp0pzUKcos0W+RkjBz4EGdhJ92FcYk6v03Ti/GK5NwjgsjxHK+98eXDbHeK7VtX1az7/8doZA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@stylistic/eslint-plugin': ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 + '@typescript-eslint/parser': ^7.0.0 || ^8.0.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + vue-eslint-parser: ^10.3.0 + peerDependenciesMeta: + '@stylistic/eslint-plugin': + optional: true + '@typescript-eslint/parser': + optional: true + + eslint-plugin-yml@3.6.0: + resolution: {integrity: sha512-8lSqBIiOJO8ms1gktdlNaVGm3zXQJiYeKhQmtIG66XzU58kFDOjQae4sufQEMGHC4bP8VxiaH3tjU5PpDB6euw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24.0.0} + peerDependencies: + eslint: '>=9.38.0' + + eslint-processor-vue-blocks@2.0.0: + resolution: {integrity: sha512-u4W0CJwGoWY3bjXAuFpc/b6eK3NQEI8MoeW7ritKj3G3z/WtHrKjkqf+wk8mPEy5rlMGS+k6AZYOw2XBoN/02Q==} + peerDependencies: + '@vue/compiler-sfc': ^3.3.0 + eslint: '>=9.0.0' + + eslint-scope@9.1.2: + resolution: {integrity: sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@4.2.1: + resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@5.0.1: + resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + eslint@10.6.0: + resolution: {integrity: sha512-6lVbcqSodALYo+4ELD0heG6lFiFxnLMuLkiMi2qV8LMp54N8tE8FT1GMH+ev4Ti00nFjNze2+Su6DsV5OQW3Dg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true + + espree@10.4.0: + resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + espree@11.2.0: + resolution: {integrity: sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + esquery@1.7.0: + resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + + estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + etag@1.8.1: + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} + engines: {node: '>= 0.6'} + + eventemitter3@5.0.4: + resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==} + + eventsource-parser@3.1.0: + resolution: {integrity: sha512-kJezFj9YFAMLeORyi7aCLxLbD5/qWMQnoMVlVPyHIll7lgRJCc3JVln9Vgl9nwQi0YkMnhdGTMNn7CkRRAptMg==} + engines: {node: '>=18.0.0'} + + eventsource@3.0.7: + resolution: {integrity: sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==} + engines: {node: '>=18.0.0'} + + expect-type@1.4.0: + resolution: {integrity: sha512-KfYbmpRm0VbLjEvVa9yGwCi9GI34xvi7A/HXYWQO65CSD2u3MczUJSuwXKFIxlGsgBQizV9q5J9NHj4VG0n+pA==} + engines: {node: '>=12.0.0'} + + express-rate-limit@8.5.2: + resolution: {integrity: sha512-5Kb34ipNX694DH48vN9irak1Qx30nb0PLYHXfJgw4YEjiC3ZEmZJhwOp+VfiCYwFzvFTdB9QkArYS5kXa2cx2A==} + engines: {node: '>= 16'} + peerDependencies: + express: '>= 4.11' + + express@5.2.1: + resolution: {integrity: sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==} + engines: {node: '>= 18'} + + exsolve@1.1.0: + resolution: {integrity: sha512-D+42+T12DdIlJM3uepa55qGiL3sYdLBOxIl2ifQCzCHz4c7eiolaHsi3BIqEr7JxBzxv2pYZQX9kw16ziMcEmw==} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} + + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fast-string-truncated-width@3.0.3: + resolution: {integrity: sha512-0jjjIEL6+0jag3l2XWWizO64/aZVtpiGE3t0Zgqxv0DPuxiMjvB3M24fCyhZUO4KomJQPj3LTSUnDP3GpdwC0g==} + + fast-string-width@3.0.2: + resolution: {integrity: sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==} + + fast-uri@3.1.3: + resolution: {integrity: sha512-i70LwGWUduXqzicKXWshooq+sWL1K3WUU5rKZNG/0i3a1OSoX3HqhH5WbWwTmqWfor4urUakGPiRQcleRZTwOg==} + + fast-wrap-ansi@0.2.2: + resolution: {integrity: sha512-7F2Fl+TjRSenLqlU3UjSH0iyqopqoZIu7eZVpEirP2g1GtWa2G/ecEmBdgz31+Mxr+ELclgg6sokpSFIQiZ02Q==} + + fastq@1.20.1: + resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} + + fault@2.0.1: + resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + fecha@4.2.3: + resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==} + + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + finalhandler@2.1.1: + resolution: {integrity: sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==} + engines: {node: '>= 18.0.0'} + + find-up-simple@1.0.1: + resolution: {integrity: sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==} + engines: {node: '>=18'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + + flatted@3.4.2: + resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} + + fn.name@1.1.0: + resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} + + follow-redirects@1.16.0: + resolution: {integrity: sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + + foreground-child@3.3.1: + resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} + engines: {node: '>=14'} + + form-data@4.0.6: + resolution: {integrity: sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ==} + engines: {node: '>= 6'} + + format@0.2.2: + resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} + engines: {node: '>=0.4.x'} + + forwarded@0.2.0: + resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} + engines: {node: '>= 0.6'} + + fresh@2.0.0: + resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==} + engines: {node: '>= 0.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==} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-east-asian-width@1.6.0: + resolution: {integrity: sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==} + engines: {node: '>=18'} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-tsconfig@4.14.0: + resolution: {integrity: sha512-yTb+8DXzDREzgvYmh6s9vHsSVCHeC0G3PI5bEXNBHtmshPnO+S5O7qgLEOn0I5QvMy6kpZN8K1NKGyilLb93wA==} + + github-slugger@2.0.0: + resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + hasBin: true + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported + + globals@15.15.0: + resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} + engines: {node: '>=18'} + + globals@17.7.0: + resolution: {integrity: sha512-Czmyns5dUsq4seFBR/Kdydhmo8y9kC79hiSkPn0YcGtNnYWnrgt0vjrSjx9tspoDGWm2CMarffRuLjM4xUz8xg==} + engines: {node: '>=18'} + + globrex@0.1.2: + resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + gzip-size@6.0.0: + resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} + engines: {node: '>=10'} + + happy-dom@20.10.6: + resolution: {integrity: sha512-6QD0ilzDDt93tX44y8tbmZdAcdTRYDhUP+Asgi6pC8Pp5IA3cvaZGyoVN/EGtlq9ziT65iPuBBn3ASLr6hCgVw==} + engines: {node: '>=20.0.0'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hasown@2.0.4: + resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==} + engines: {node: '>= 0.4'} + + hono@4.12.29: + resolution: {integrity: sha512-1hNiRjawYrLq/4m3DQQjPGFg0VZkk4RjQJDff/excI6Dm9BiL75qxGrd7/c6YOxPdq6AscP3LiXhQ6fKFC1Waw==} + engines: {node: '>=16.9.0'} + + hookable@5.5.3: + resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} + + html-entities@2.6.0: + resolution: {integrity: sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==} + + http-errors@2.0.1: + resolution: {integrity: sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==} + engines: {node: '>= 0.8'} + + https-proxy-agent@5.0.1: + resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} + engines: {node: '>= 6'} + + husky@9.1.7: + resolution: {integrity: sha512-5gs5ytaNjBrh5Ow3zrvdUUY+0VxIuWVL4i9irt6friV+BqdCfmV11CQTWMiBYWHbXhco+J1kHfTOUkePhCDvMA==} + engines: {node: '>=18'} + hasBin: true + + iconv-lite@0.7.3: + resolution: {integrity: sha512-IKXpvIzjnC9XTAUbVBcMfGS0EPaIXtW6v+zr+RRp+hqULEpo0owZax6wyRwPOJbWbzjYspQwusTsfVr0ifh4uQ==} + engines: {node: '>=0.10.0'} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + ignore@7.0.5: + resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==} + engines: {node: '>= 4'} + + immutable@4.3.9: + resolution: {integrity: sha512-ObHy4YN7ycwZOUCLI1/6svfyAFu7vL8RhAvVu/bh/RZW9EPlOyDaQ9jDQWCtdqzaXUjgXZCW1migtHE7YI7UGQ==} + + immutable@5.1.9: + resolution: {integrity: sha512-m8nVez3rwrgmWxtLMt1ZYXB2Lv7OKYn/disyxAlSDYAlKSlFoPPfIAmAM/M5xqL4m4C/wAPw7S2/CNaUii1Hxg==} + + import-meta-resolve@4.2.0: + resolution: {integrity: sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + indent-string@5.0.0: + resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} + engines: {node: '>=12'} + + 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==} + + ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + + ip-address@10.2.0: + resolution: {integrity: sha512-/+S6j4E9AHvW9SWMSEY9Xfy66O5PWvVEJ08O0y5JGyEKQpojb0K0GKpz/v5HJ/G0vi3D2sjGK78119oXZeE0qA==} + engines: {node: '>= 12'} + + ipaddr.js@1.9.1: + resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} + engines: {node: '>= 0.10'} + + is-builtin-module@5.0.0: + resolution: {integrity: sha512-f4RqJKBUe5rQkJ2eJEJBXSticB3hGbN9j0yxxMQFqIW89Jp9WYFtzfTcRlstDKVUTRzSOTLKRfO9vIztenwtxA==} + engines: {node: '>=18.20'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-fullwidth-code-point@5.1.0: + resolution: {integrity: sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==} + engines: {node: '>=18'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-promise@4.0.0: + resolution: {integrity: sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==} + + is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + + is-what@5.5.0: + resolution: {integrity: sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==} + engines: {node: '>=18'} + + isarray@1.0.0: + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + + jiti@2.7.0: + resolution: {integrity: sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==} + hasBin: true + + jose@6.2.3: + resolution: {integrity: sha512-YYVDInQKFJfR/xa3ojUTl8c2KoTwiL1R5Wg9YCydwH0x0B9grbzlg5HC7mMjCtUJjbQ/YnGEZIhI5tCgfTb4Hw==} + + js-beautify@1.15.4: + resolution: {integrity: sha512-9/KXeZUKKJwqCXUdBxFJ3vPh467OCckSBmYDwSK/EtV090K+iMJ7zx2S3HLVDIWFQdqMIsZWbnaGiba18aWhaA==} + engines: {node: '>=14'} + hasBin: true + + js-cookie@3.0.8: + resolution: {integrity: sha512-yeJd4aNAdYZQjaon2bpD/Gb0B/omw7HQOsynXXcOiWVCacbBcPlgn8S/d1X6blFSaHao7ozqtW7NZW19xpCtIw==} + + js-tokens@9.0.1: + resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==} + + js-yaml@4.3.0: + resolution: {integrity: sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==} + hasBin: true + + jsdoc-type-pratt-parser@7.1.1: + resolution: {integrity: sha512-/2uqY7x6bsrpi3i9LVU6J89352C0rpMk0as8trXxCtvd4kPk1ke/Eyif6wqfSLvoNJqcDG9Vk4UsXgygzCt2xA==} + engines: {node: '>=20.0.0'} + + jsdoc-type-pratt-parser@7.2.0: + resolution: {integrity: sha512-dh140MMgjyg3JhJZY/+iEzW+NO5xR2gpbDFKHqotCmexElVntw7GjWjt511+C/Ef02RU5TKYrJo/Xlzk+OLaTw==} + engines: {node: '>=20.0.0'} + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + + json-schema-typed@8.0.2: + resolution: {integrity: sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + jsonc-eslint-parser@3.1.0: + resolution: {integrity: sha512-75EA7EWZExL/j+MDKQrRbdzcRI2HOkRlmUw8fZJc1ioqFEOvBsq7Rt+A6yCxOt9w/TYNpkt52gC6nm/g5tFIng==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + katex@0.16.47: + resolution: {integrity: sha512-Eeo8Ys1doU1z+x8AZsPpQu+p/QcZBI5PeOo7QGQdy2x2m0MU/hYagBbGOmXwr5KVbEfVuWv9LpnQWeehogurjg==} + hasBin: true + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + kuler@2.0.0: + resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + lightningcss-android-arm64@1.32.0: + resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [android] + + lightningcss-darwin-arm64@1.32.0: + resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + + lightningcss-darwin-x64@1.32.0: + resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + + lightningcss-freebsd-x64@1.32.0: + resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + + lightningcss-linux-arm-gnueabihf@1.32.0: + resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + + lightningcss-linux-arm64-gnu@1.32.0: + resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + lightningcss-linux-arm64-musl@1.32.0: + resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + libc: [musl] + + lightningcss-linux-x64-gnu@1.32.0: + resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [glibc] + + lightningcss-linux-x64-musl@1.32.0: + resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [musl] + + lightningcss-win32-arm64-msvc@1.32.0: + resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + + lightningcss-win32-x64-msvc@1.32.0: + resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + + lightningcss@1.32.0: + resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==} + engines: {node: '>= 12.0.0'} + + lint-staged@17.0.8: + resolution: {integrity: sha512-B2P/d+jVW0UXOQ0MVMLrB/9ydA1P+zz6jYfdrbbEd9ur3S2rcbduFWKiUCC02Sm5hbC8nrm7y24WuYMG54HfxA==} + engines: {node: '>=22.22.1'} + hasBin: true + + listr2@10.2.2: + resolution: {integrity: sha512-JtNtbZj8q5BnDMR7trpwvwk3RIrANtIVzEUm8w7amp6xelLgyuq+4WZoTH913XaQAoH/cNdYhaNzBPA2U3xbDw==} + engines: {node: '>=22.13.0'} + + local-pkg@1.2.1: + resolution: {integrity: sha512-++gUqRDEvcnN6Zhqrr+y/CkVEHhlrR96vZn3nZZPYzMcBUyBtTKzB9NadClFIsIVSsu+3i9tfk/erqy9kAmt7Q==} + engines: {node: '>=14'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash-es@4.18.1: + resolution: {integrity: sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==} + + lodash-unified@1.0.3: + resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==} + peerDependencies: + '@types/lodash-es': '*' + lodash: '*' + lodash-es: '*' + + lodash.escape@4.0.1: + resolution: {integrity: sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw==} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + lodash@4.18.1: + resolution: {integrity: sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==} + + log-update@6.1.0: + resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} + engines: {node: '>=18'} + + logform@2.7.0: + resolution: {integrity: sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==} + engines: {node: '>= 12.0.0'} + + longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + + lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + + magic-regexp@0.10.0: + resolution: {integrity: sha512-Uly1Bu4lO1hwHUW0CQeSWuRtzCMNO00CmXtS8N6fyvB3B979GOEEeAkiTUDsmbYLAbvpUS/Kt5c4ibosAzVyVg==} + + magic-string-ast@1.0.3: + resolution: {integrity: sha512-CvkkH1i81zl7mmb94DsRiFeG9V2fR2JeuK8yDgS8oiZSFa++wWLEgZ5ufEOyLHbvSbD1gTRKv9NdX69Rnvr9JA==} + engines: {node: '>=20.19.0'} + + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} + + markdown-table@3.0.4: + resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + mdast-util-find-and-replace@3.0.2: + resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==} + + mdast-util-from-markdown@2.0.3: + resolution: {integrity: sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==} + + mdast-util-frontmatter@2.0.1: + resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==} + + mdast-util-gfm-autolink-literal@2.0.1: + resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} + + mdast-util-gfm-footnote@2.1.0: + resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==} + + mdast-util-gfm-strikethrough@2.0.0: + resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} + + mdast-util-gfm-table@2.0.0: + resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} + + mdast-util-gfm-task-list-item@2.0.0: + resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} + + mdast-util-gfm@3.1.0: + resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==} + + mdast-util-math@3.0.0: + resolution: {integrity: sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==} + + mdast-util-phrasing@4.1.0: + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} + + mdast-util-to-markdown@2.1.2: + resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} + + mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} + + mdn-data@2.0.14: + resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} + + mdn-data@2.0.28: + resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} + + mdn-data@2.0.30: + resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + + mdn-data@2.27.1: + resolution: {integrity: sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==} + + media-typer@1.1.0: + resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==} + engines: {node: '>= 0.8'} + + memoize-one@6.0.0: + resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==} + + merge-descriptors@2.0.0: + resolution: {integrity: sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==} + engines: {node: '>=18'} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromark-core-commonmark@2.0.3: + resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} + + micromark-extension-frontmatter@2.0.0: + resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==} + + micromark-extension-gfm-autolink-literal@2.1.0: + resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} + + micromark-extension-gfm-footnote@2.1.0: + resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} + + micromark-extension-gfm-strikethrough@2.1.0: + resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} + + micromark-extension-gfm-table@2.1.1: + resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==} + + micromark-extension-gfm-tagfilter@2.0.0: + resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} + + micromark-extension-gfm-task-list-item@2.1.0: + resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} + + micromark-extension-gfm@3.0.0: + resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} + + micromark-extension-math@3.1.0: + resolution: {integrity: sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==} + + micromark-factory-destination@2.0.1: + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} + + micromark-factory-label@2.0.1: + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} + + micromark-factory-space@2.0.1: + resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} + + micromark-factory-title@2.0.1: + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} + + micromark-factory-whitespace@2.0.1: + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} + + micromark-util-character@2.1.1: + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} + + micromark-util-chunked@2.0.1: + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} + + micromark-util-classify-character@2.0.1: + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} + + micromark-util-combine-extensions@2.0.1: + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} + + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} + + micromark-util-decode-string@2.0.1: + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} + + micromark-util-encode@2.0.1: + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} + + micromark-util-html-tag-name@2.0.1: + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} + + micromark-util-normalize-identifier@2.0.1: + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} + + micromark-util-resolve-all@2.0.1: + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} + + micromark-util-sanitize-uri@2.0.1: + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} + + micromark-util-subtokenize@2.1.0: + resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} + + micromark-util-symbol@2.0.1: + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} + + micromark-util-types@2.0.2: + resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} + + micromark@4.0.2: + resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-db@1.54.0: + resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + mime-types@3.0.2: + resolution: {integrity: sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==} + engines: {node: '>=18'} + + mimic-function@5.0.1: + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} + + minimatch@10.2.5: + resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==} + engines: {node: 18 || 20 || >=22} + + minimatch@3.1.5: + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} + + minimatch@9.0.9: + resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==} + engines: {node: '>=16 || 14 >=14.17'} + + minipass@7.1.3: + resolution: {integrity: sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==} + engines: {node: '>=16 || 14 >=14.17'} + + mitt@3.0.1: + resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} + + mlly@1.8.2: + resolution: {integrity: sha512-d+ObxMQFmbt10sretNDytwt85VrbkhhUA/JBGm1MPaWJ65Cl4wOgLaB1NYvJSZ0Ef03MMEU/0xpPMXUIQ29UfA==} + + module-replacements@3.0.0: + resolution: {integrity: sha512-tHIZqde+RlyNRobAIjfcH5UIgIrEbZbDGRL6J/x+HERX/g8O9mrm0p6knJbsTXmQtDvZ+eFP+xfOP3/9jHk6YA==} + + mrmime@2.0.1: + resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} + engines: {node: '>=10'} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + muggle-string@0.4.1: + resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} + + mustache@4.2.0: + resolution: {integrity: sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==} + hasBin: true + + nanoid@3.3.15: + resolution: {integrity: sha512-y7Wygv/7mEOvxTuEQDB8StXdMRBWf1kR/tlhAzBRUFkB2jfcLOAxO/SHmOO2zgz1pVgK29/kyupn059/bCHdjA==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + natural-orderby@5.0.0: + resolution: {integrity: sha512-kKHJhxwpR/Okycz4HhQKKlhWe4ASEfPgkSWNmKFHd7+ezuQlxkA5cM3+XkBPvm1gmHen3w53qsYAv+8GwRrBlg==} + engines: {node: '>=18'} + + negotiator@1.0.0: + resolution: {integrity: sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==} + engines: {node: '>= 0.6'} + + node-addon-api@7.1.1: + resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} + + node-fetch-native@1.6.7: + resolution: {integrity: sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==} + + node-releases@2.0.51: + resolution: {integrity: sha512-wRNIrw4DmVLKQlbgOMdkMx27Wrpzes2hh5Jtbi2bjPd+4wJstWIqP5A+lscnqbm0xxmT5Bpg8Lec5ItEBwx6BQ==} + engines: {node: '>=18'} + + nopt@7.2.1: + resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + + normalize-wheel-es@1.2.0: + resolution: {integrity: sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==} + + normalize.css@8.0.1: + resolution: {integrity: sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==} + + nprogress@0.2.0: + resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==} + + nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-deep-merge@2.0.1: + resolution: {integrity: sha512-aKttDKcU3pyZqKcCkDhsMn70WmZFG2JGDQLP9EcLyTSIFQRCPWLAmBZRLJnrVUrhPG1jETEEbfdgbNtJf1LyMg==} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + obug@2.1.3: + resolution: {integrity: sha512-9miFgM2OFba7hB+pRgvtV84pYTBaoTHohvmIgiRt6dRIzbwEOIaNaP+dIlGs2fNFoB0SeISs0Jz5WFVRid6Xyg==} + engines: {node: '>=12.20.0'} + + ofetch@1.5.1: + resolution: {integrity: sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==} + + ohash@2.0.11: + resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==} + + on-finished@2.4.1: + resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} + engines: {node: '>= 0.8'} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + one-time@1.0.0: + resolution: {integrity: sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==} + + onetime@7.0.0: + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + oxc-parser@0.131.0: + resolution: {integrity: sha512-SJ3/7ZPbgie8dr5Z9BI/M51zZbpXba+hRSG0MDzVwMW5CRQg2fjYE0jHGlLX4eeiibGgC/mzoDFKSDHwVZEHRQ==} + engines: {node: ^20.19.0 || >=22.12.0} + + oxc-walker@0.7.0: + resolution: {integrity: sha512-54B4KUhrzbzc4sKvKwVYm7E2PgeROpGba0/2nlNZMqfDyca+yOor5IMb4WLGBatGDT0nkzYdYuzylg7n3YfB7A==} + peerDependencies: + oxc-parser: '>=0.98.0' + + oxfmt@0.35.0: + resolution: {integrity: sha512-QYeXWkP+aLt7utt5SLivNIk09glWx9QE235ODjgcEZ3sd1VMaUBSpLymh6ZRCA76gD2rMP4bXanUz/fx+nLM9Q==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + + package-manager-detector@1.7.0: + resolution: {integrity: sha512-xg1eHpwYL/D/HEdWw2goFZP6vV0FH7W+PZ5rFkGjdIDLtxq7EkzBUeT3m+lndYCt8wKbmofUu1MUdMCXkCk9ZQ==} + + parse-gitignore@2.0.0: + resolution: {integrity: sha512-RmVuCHWsfu0QPNW+mraxh/xjQVw/lhUCUru8Zni3Ctq3AoMhpDTq0OVdKS6iesd6Kqb7viCV3isAL43dciOSog==} + engines: {node: '>=14'} + + parse-imports-exports@0.2.4: + resolution: {integrity: sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==} + + parse-statements@1.0.11: + resolution: {integrity: sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==} + + parseurl@1.3.3: + resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} + engines: {node: '>= 0.8'} + + path-browserify@1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + + path-exists@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-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + + path-to-regexp@8.4.2: + resolution: {integrity: sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==} + + pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} + + perfect-debounce@1.0.0: + resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} + + perfect-debounce@2.1.0: + resolution: {integrity: sha512-LjgdTytVFXeUgtHZr9WYViYSM/g8MkcTPYDlPa3cDqMirHjKiSZPYd6DoL7pK8AJQr+uWkQvCjHNdiMqsrJs+g==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.2: + resolution: {integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==} + engines: {node: '>=8.6'} + + picomatch@4.0.5: + resolution: {integrity: sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==} + engines: {node: '>=12'} + + pinia@3.0.4: + resolution: {integrity: sha512-l7pqLUFTI/+ESXn6k3nu30ZIzW5E2WZF/LaHJEpoq6ElcLD+wduZoB2kBN19du6K/4FDpPMazY2wJr+IndBtQw==} + peerDependencies: + typescript: '>=4.5.0' + vue: ^3.5.11 + peerDependenciesMeta: + typescript: + optional: true + + pkce-challenge@5.0.1: + resolution: {integrity: sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==} + engines: {node: '>=16.20.0'} + + pkg-types@1.3.1: + resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} + + pkg-types@2.3.1: + resolution: {integrity: sha512-y+ichcgc2LrADuhLNAx8DFjVfgz91pRxfZdI3UDhxHvcVEZsenLO+7XaU5vOp0u/7V/wZ+plyuQxtrDlZJ+yeg==} + + pluralize@8.0.0: + resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} + engines: {node: '>=4'} + + pnpm-workspace-yaml@1.6.1: + resolution: {integrity: sha512-yTeZntGWi8m9WNuhoVsP0DpFc4sC1U0+rr/qR6Zi9n2g3sxXY+JfccjXjjruNz96tM8I09yaJUA86doRnNLkbg==} + + postcss-selector-parser@7.1.4: + resolution: {integrity: sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg==} + engines: {node: '>=4'} + + postcss@8.5.16: + resolution: {integrity: sha512-vuwillviilfKZsg0VGj5R/YwwcHx4SLsIOI/7K6mQkWx+l5cUHTjj5g0AasTBcyXsbfTgrwsUNmVUb5xVwyPwg==} + engines: {node: ^10 || ^12 || >=14} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + prettier-linter-helpers@1.0.1: + resolution: {integrity: sha512-SxToR7P8Y2lWmv/kTzVLC1t/GDI2WGjMwNhLLE9qtH8Q13C+aEmuRlzDst4Up4s0Wc8sF2M+J57iB3cMLqftfg==} + engines: {node: '>=6.0.0'} + + prettier@3.9.5: + resolution: {integrity: sha512-/FVl766LpUfB5vXgCYOYa0MeV/441Ia99AeICQIQFTY/Nw0roZwULcXpku5i1/m5kt/baz+s4Zogspd839HSMg==} + engines: {node: '>=14'} + hasBin: true + + prettysize@2.0.0: + resolution: {integrity: sha512-VVtxR7sOh0VsG8o06Ttq5TrI1aiZKmC+ClSn4eBPaNf4SHr5lzbYW+kYGX3HocBL/MfpVrRfFZ9V3vCbLaiplg==} + + process-nextick-args@2.0.1: + resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + + proto-list@1.2.4: + resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} + + proxy-addr@2.0.7: + resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} + engines: {node: '>= 0.10'} + + proxy-from-env@2.1.0: + resolution: {integrity: sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==} + engines: {node: '>=10'} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + qs@6.15.3: + resolution: {integrity: sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==} + engines: {node: '>=0.6'} + + quansync@0.2.11: + resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==} + + quansync@1.0.0: + resolution: {integrity: sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + range-parser@1.3.0: + resolution: {integrity: sha512-hek2mFQpPuI4E1BBKrSto+BU3e3x4xuarsbiwr3+lf7p44juvFMV0XFWQAP3xUyqXA4RrXLIoaSUGbSt056ZMw==} + engines: {node: '>= 0.6'} + + raw-body@3.0.2: + resolution: {integrity: sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==} + engines: {node: '>= 0.10'} + + readable-stream@2.3.8: + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + + readdirp@5.0.0: + resolution: {integrity: sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==} + engines: {node: '>= 20.19.0'} + + refa@0.12.1: + resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + regexp-ast-analysis@0.7.1: + resolution: {integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + regexp-tree@0.1.27: + resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} + hasBin: true + + regjsparser@0.13.2: + resolution: {integrity: sha512-NgRBy2Nx/bE+9F27nVHnqcN5HjyLmecqsqx2PJHu3/IEtADD4WuxuXIVExD5PoSDFVrl78dOonfcOe5O+5nbzQ==} + hasBin: true + + remove-trailing-separator@1.1.0: + resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} + + replace-ext@1.0.1: + resolution: {integrity: sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==} + engines: {node: '>= 0.10'} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + + reserved-identifiers@1.2.0: + resolution: {integrity: sha512-yE7KUfFvaBFzGPs5H3Ops1RevfUEsDc5Iz65rOwWg4lE8HJSYtle77uul3+573457oHvBKuHYDl/xqUkKpEEdw==} + engines: {node: '>=18'} + + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + + restore-cursor@5.1.0: + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rfdc@1.4.1: + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + + rolldown@1.1.5: + resolution: {integrity: sha512-t9z29cJjXf/vxQ8dyhCSpt6H6aSwHTk8cT5I3iy6SMXuFpk5mB6PL6XfC8PCwrPTx93udwKUm9HRteAlTGBLiA==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + + rollup@4.62.2: + resolution: {integrity: sha512-RFnrW4lhXA3s3eqHDZvN654g8OTjzRfqpIRJYczCGB6HzphckVAi/Qh4tbPUbRuDi7s1Llv8g/NspLkttY3gTA==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + router@2.2.0: + resolution: {integrity: sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==} + engines: {node: '>= 18'} + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + rxjs@7.8.2: + resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} + + safe-buffer@5.1.2: + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + safe-stable-stringify@2.5.0: + resolution: {integrity: sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==} + engines: {node: '>=10'} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + sass-embedded-android-arm64@1.78.0: + resolution: {integrity: sha512-2sAr11EgwPudAuyk4Ite+fWGYJspiFSiZDU2D8/vjjI7BaB9FG6ksYqww3svoMMnjPUWBCjKPDELpZTxViLJbw==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [android] + + sass-embedded-android-arm@1.78.0: + resolution: {integrity: sha512-YM6nrmKsj+ImaSTd96F+jzbWSbhPkRN4kedbLgIJ5FsILNa9NAqhmrCQz9pdcjuAhyfxWImdUACsT23CPGENZQ==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [android] + + sass-embedded-android-ia32@1.78.0: + resolution: {integrity: sha512-TyJOo4TgnHpOfC/PfqCBqd+jGRanWoRd4Br/0KAfIvaIFjTGIPdk26vUyDVugV1J8QUEY4INGE8EXAuDeRldUQ==} + engines: {node: '>=14.0.0'} + cpu: [ia32] + os: [android] + + sass-embedded-android-riscv64@1.78.0: + resolution: {integrity: sha512-wwajpsVRuhb7ixrkA3Yu60V2LtROYn45PIYeda30/MrMJi9k3xEqHLhodTexFm6wZoKclGSDZ6L9U5q0XyRKiQ==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [android] + + sass-embedded-android-x64@1.78.0: + resolution: {integrity: sha512-k5l66PO0LgSHMDbDzAQ/vqrXMlJ3r42ZHJA8MJvUbA6sQxTzDS381V7L+EhOATwyI225j2FhEeTHW6rr4WBQzA==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [android] + + sass-embedded-darwin-arm64@1.78.0: + resolution: {integrity: sha512-3JaxceFSR6N+a22hPYYkj1p45eBaWTt/M8MPTbfzU3TGZrU9bmRX7WlUVtXTo1yYI2iMf22nCv0PQ5ExFF3FMQ==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [darwin] + + sass-embedded-darwin-x64@1.78.0: + resolution: {integrity: sha512-UMTijqE3fJ8vEaaD7GPG7G3GsHuPKOdpS8vuA2v2uwO3BPFp/rEKah66atvGqvGO+0JYApkSv0YTnnexSrkHIQ==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [darwin] + + sass-embedded-linux-arm64@1.78.0: + resolution: {integrity: sha512-juMIMpp3DIAiQ842y+boqh0u2SjN4m3mDKrDfMuBznj8DSQoy9J/3e4hLh3g+p0/j83WuROu5nNoYxm2Xz8rww==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [linux] + + sass-embedded-linux-arm@1.78.0: + resolution: {integrity: sha512-JafT+Co0RK8oO3g9TfVRuG7tkYeh35yDGTgqCFxLrktnkiw5pmIagCfpjxk5GBcSfJMOzhCgclTCDJWAuHGuMQ==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + sass-embedded-linux-ia32@1.78.0: + resolution: {integrity: sha512-Gy8GW5g6WX9t8CT2Dto5AL6ikB+pG7aAXWXvfu3RFHktixSwSbyy6CeGqSk1t0xyJCFkQQA/V8HU9bNdeHiBxg==} + engines: {node: '>=14.0.0'} + cpu: [ia32] + os: [linux] + + sass-embedded-linux-musl-arm64@1.78.0: + resolution: {integrity: sha512-Lu/TlRHbe9aJY7B7PwWCJz7pTT5Rc50VkApWEmPiU/nu0mGbSpg0Xwar6pNeG8+98ubgKKdRb01N3bvclf5a4A==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [linux] + + sass-embedded-linux-musl-arm@1.78.0: + resolution: {integrity: sha512-DUVXtcsfsiOJ2Zwp4Y3T6KZWX8h0gWpzmFUrx+gSIbg67vV8Ww2DWMjWRwqLe7HOLTYBegMBYpMgMgZiPtXhIA==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + sass-embedded-linux-musl-ia32@1.78.0: + resolution: {integrity: sha512-1E5ywUnq6MRPAecr2r/vDOBr93wXyculEmfyF5JRG8mUufMaxGIhfx64OQE6Drjs+EDURcYZ+Qcg6/ubJWqhcw==} + engines: {node: '>=14.0.0'} + cpu: [ia32] + os: [linux] + + sass-embedded-linux-musl-riscv64@1.78.0: + resolution: {integrity: sha512-YvQEvX7ctn5BwC79+HBagDYIciEkwcl2NLgoydmEsBO/0+ncMKSGnjsn/iRzErbq1KJNyjGEni8eSHlrtQI1vQ==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [linux] + + sass-embedded-linux-musl-x64@1.78.0: + resolution: {integrity: sha512-azdUcZZvZmtUBslIKr2/l4aQrTX7BvO96TD0GLdWz9vuXZrokYm09AJZEnb5j6Pk5I4Xr0yM6BG1Vgcbzqi5Zg==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [linux] + + sass-embedded-linux-riscv64@1.78.0: + resolution: {integrity: sha512-g8M6vqHMjZUoH9C1WJsgwu+qmwdJAAMDaJTM1emeAScUZMTaQGzm+Q6C5oSGnAGR3XLT/drgbHhbmruXDgkdeQ==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [linux] + + sass-embedded-linux-x64@1.78.0: + resolution: {integrity: sha512-m997ThzpMwql4u6LzZCoHPIQkgK6bbLPLc7ydemo2Wusqzh6j8XAGxVT5oANp6s2Dmj+yh49pKDozal+tzEX9w==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [linux] + + sass-embedded-win32-arm64@1.78.0: + resolution: {integrity: sha512-qTLIIC5URYRmeuYYllfoL0K1cHSUd+f3sFHAA6fjtdgf288usd6ToCbWpuFb0BtVceEfGQX8lEp+teOG7n7Quw==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [win32] + + sass-embedded-win32-ia32@1.78.0: + resolution: {integrity: sha512-BrOWh18T6Y9xgCokGXElEnd8j03fO4W83bwJ9wHRRkrQWaeHtHs3XWW0fX1j2brngWUTjU+jcYUijWF1Z60krw==} + engines: {node: '>=14.0.0'} + cpu: [ia32] + os: [win32] + + sass-embedded-win32-x64@1.78.0: + resolution: {integrity: sha512-C14iFDJd7oGhmQehRiEL7GtzMmLwubcDqsBarQ+u9LbHoDlUQfIPd7y8mVtNgtxJCdrAO/jc5qR4C+85yE3xPQ==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [win32] + + sass-embedded@1.78.0: + resolution: {integrity: sha512-NR2kvhWVFABmBm0AqgFw9OweQycs0Qs+/teJ9Su+BUY7up+f8S5F/Zi+7QtAqJlewsQyUNfzm1vRuM+20lBwRQ==} + engines: {node: '>=16.0.0'} + hasBin: true + + sass@1.100.0: + resolution: {integrity: sha512-B5j0rYMlinhhOo9tjQebMVVn0TfyXAF+wB3b2ggZUuJ/is/Y+7+JGjirAMxHZ9Z3hIP98NPfamlAkBHa1lAaXQ==} + engines: {node: '>=20.19.0'} + hasBin: true + + sax@1.6.0: + resolution: {integrity: sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==} + engines: {node: '>=11.0.0'} + + screenfull@6.0.2: + resolution: {integrity: sha512-AQdy8s4WhNvUZ6P8F6PB21tSPIYKniic+Ogx0AacBMjKP1GUHN2E9URxQHtCusiwxudnCKkdy4GrHXPPJSkCCw==} + engines: {node: ^14.13.1 || >=16.0.0} + + scslre@0.3.0: + resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==} + engines: {node: ^14.0.0 || >=16.0.0} + + scule@1.3.0: + resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==} + + semver@7.8.5: + resolution: {integrity: sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==} + engines: {node: '>=10'} + hasBin: true + + send@1.2.1: + resolution: {integrity: sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==} + engines: {node: '>= 18'} + + serve-static@2.2.1: + resolution: {integrity: sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==} + engines: {node: '>= 18'} + + setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + + 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'} + + side-channel-list@1.0.1: + resolution: {integrity: sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.1: + resolution: {integrity: sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==} + engines: {node: '>= 0.4'} + + siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + sirv@3.0.2: + resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} + engines: {node: '>=18'} + + sisteransi@1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + + slice-ansi@7.1.2: + resolution: {integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==} + engines: {node: '>=18'} + + slice-ansi@8.0.0: + resolution: {integrity: sha512-stxByr12oeeOyY2BlviTNQlYV5xOj47GirPr4yA1hE9JCtxfQN0+tVbkxwCtYDQWhEKWFHsEK48ORg5jrouCAg==} + engines: {node: '>=20'} + + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + + spdx-exceptions@2.5.0: + resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} + + spdx-expression-parse@4.0.0: + resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==} + + spdx-license-ids@3.0.23: + resolution: {integrity: sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==} + + speakingurl@14.0.1: + resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} + engines: {node: '>=0.10.0'} + + stable@0.1.8: + resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} + deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' + + stack-trace@0.0.10: + resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} + + stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + + statuses@2.0.2: + resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} + engines: {node: '>= 0.8'} + + std-env@4.2.0: + resolution: {integrity: sha512-oCUKSupKTHX53EyjDtuZQ64pjLJ6yYCtpmEw0goYxtjG9KpbRe8KAsl2tBUGU9DyMcJ0RwJ8GqJAFzMXcXW1Rw==} + + string-argv@0.3.2: + resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} + engines: {node: '>=0.6.19'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + + string-width@7.2.0: + resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} + engines: {node: '>=18'} + + string-width@8.2.2: + resolution: {integrity: sha512-GaPUh5gfdrYzqeVNZvUfT23vYYxXzKYidUcnMtJg/3rxRV63EFZy3k6xfKlmfeJD0176lnUV/Usr3XcwSvFzpg==} + engines: {node: '>=20'} + + string_decoder@1.1.1: + resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + + string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.2.0: + resolution: {integrity: sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==} + engines: {node: '>=12'} + + strip-indent@4.1.1: + resolution: {integrity: sha512-SlyRoSkdh1dYP0PzclLE7r0M9sgbFKKMFXpFRUMNuKhQSbC6VQIGzq3E0qsfvGJaUFJPGv6Ws1NZ/haTAjfbMA==} + engines: {node: '>=12'} + + strip-literal@3.1.0: + resolution: {integrity: sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==} + + superjson@2.2.6: + resolution: {integrity: sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==} + engines: {node: '>=16'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + + svg-sprite@2.0.4: + resolution: {integrity: sha512-kjDoATgr4k6tdtfQczpkbuFW6RE7tPUPe/rbRd1n2NV92kdwaXEZMIxJqAZfMGOMfU/Kp1u89SUYsfHCbAvVHg==} + engines: {node: '>=12'} + hasBin: true + + svgo@2.8.2: + resolution: {integrity: sha512-TyzE4NVGLUFy+H/Uy4N6c3G0HEeprsVfge6Lmq+0FdQQ/zqoVYB62IsBZORsiL+o96s6ff/V6/3UQo/C0cgCAA==} + engines: {node: '>=10.13.0'} + hasBin: true + + svgo@3.3.3: + resolution: {integrity: sha512-+wn7I4p7YgJhHs38k2TNjy1vCfPIfLIJWR5MnCStsN8WuuTcBnRKcMHQLMM2ijxGZmDoZwNv8ipl5aTTen62ng==} + engines: {node: '>=14.0.0'} + hasBin: true + + synckit@0.11.13: + resolution: {integrity: sha512-eNRKgb3z66Yp3D2CixVujOUvXLFUTij/zVnV8KRyvFdQwpz7I5DS8UfRkTeLzb64u+dkzDSdelE24izu+zSSUg==} + engines: {node: ^14.18.0 || >=16.0.0} + + tapable@2.3.3: + resolution: {integrity: sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==} + engines: {node: '>=6'} + + text-hex@1.0.0: + resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} + + tinybench@2.9.0: + resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} + + tinyexec@1.2.4: + resolution: {integrity: sha512-SHf/r48b7vOrjve9PxJo3MN5v5yuyjHvdUcrQffT3WXMUfnGmHDVbC4k3sHJaJTgZCwpUplIaAo5ANtMyp3YHg==} + engines: {node: '>=18'} + + tinyglobby@0.2.17: + resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} + engines: {node: '>=12.0.0'} + + tinypool@2.1.0: + resolution: {integrity: sha512-Pugqs6M0m7Lv1I7FtxN4aoyToKg1C4tu+/381vH35y8oENM/Ai7f7C4StcoK4/+BSw9ebcS8jRiVrORFKCALLw==} + engines: {node: ^20.0.0 || >=22.0.0} + + tinyrainbow@3.1.0: + resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} + engines: {node: '>=14.0.0'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + to-valid-identifier@1.0.0: + resolution: {integrity: sha512-41wJyvKep3yT2tyPqX/4blcfybknGB4D+oETKLs7Q76UiPqRpUJK3hr1nxelyYO0PHKVzJwlu0aCeEAsGI6rpw==} + engines: {node: '>=20'} + + toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + + toml-eslint-parser@1.0.3: + resolution: {integrity: sha512-A5F0cM6+mDleacLIEUkmfpkBbnHJFV1d2rprHU2MXNk7mlxHq2zGojA+SRvQD1RoMo9gqjZPWEaKG4v1BQ48lw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + totalist@3.0.1: + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} + engines: {node: '>=6'} + + triple-beam@1.4.1: + resolution: {integrity: sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==} + engines: {node: '>= 14.0.0'} + + ts-api-utils@2.5.0: + resolution: {integrity: sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + + ts-declaration-location@1.0.7: + resolution: {integrity: sha512-EDyGAwH1gO0Ausm9gV6T2nUvBgXT5kGoCMJPllOaooZ+4VvJiKBdZE7wK18N1deEowhcUptS+5GXZK8U/fvpwA==} + peerDependencies: + typescript: '>=4.0.0' + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + type-is@2.1.0: + resolution: {integrity: sha512-faYHw0anBbc/kWF3zFTEnxSFOAGUX9GFbOBthvDdLsIlEoWOFOtS0zgCiQYwIskL9iGXZL3kAXD8OoZ4GmMATA==} + engines: {node: '>= 18'} + + type-level-regexp@0.1.17: + resolution: {integrity: sha512-wTk4DH3cxwk196uGLK/E9pE45aLfeKJacKmcEgEOA/q5dnPGNxXt0cfYdFxb57L+sEpf1oJH4Dnx/pnRcku9jg==} + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + ufo@1.6.4: + resolution: {integrity: sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA==} + + unconfig-core@7.5.0: + resolution: {integrity: sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w==} + + unconfig@7.5.0: + resolution: {integrity: sha512-oi8Qy2JV4D3UQ0PsopR28CzdQ3S/5A1zwsUwp/rosSbfhJ5z7b90bIyTwi/F7hCLD4SGcZVjDzd4XoUQcEanvA==} + + undici-types@8.3.0: + resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==} + + unimport@5.7.0: + resolution: {integrity: sha512-njnL6sp8lEA8QQbZrt+52p/g4X0rw3bnGGmUcJnt1jeG8+iiqO779aGz0PirCtydAIVcuTBRlJ52F0u46z309Q==} + engines: {node: '>=18.12.0'} + + unist-util-is@6.0.1: + resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==} + + unist-util-remove-position@5.0.0: + resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} + + unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + + unist-util-visit-parents@6.0.2: + resolution: {integrity: sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==} + + unist-util-visit@5.1.0: + resolution: {integrity: sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==} + + unocss@66.7.5: + resolution: {integrity: sha512-nAdmU8TwnQoiLnQjZ6Hm1GmHy9lTexKsAZNEJtZnxN9wyFRc1eLjQgmh9r7UEGxBQMQLD8OZOgmk5HpwObbh0Q==} + peerDependencies: + '@unocss/astro': 66.7.5 + '@unocss/postcss': 66.7.5 + '@unocss/webpack': 66.7.5 + peerDependenciesMeta: + '@unocss/astro': + optional: true + '@unocss/postcss': + optional: true + '@unocss/webpack': + optional: true + + unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} + engines: {node: '>= 0.8'} + + unplugin-auto-import@21.0.0: + resolution: {integrity: sha512-vWuC8SwqJmxZFYwPojhOhOXDb5xFhNNcEVb9K/RFkyk/3VnfaOjzitWN7v+8DEKpMjSsY2AEGXNgt6I0yQrhRQ==} + engines: {node: '>=20.19.0'} + peerDependencies: + '@nuxt/kit': ^4.0.0 + '@vueuse/core': '*' + peerDependenciesMeta: + '@nuxt/kit': + optional: true + '@vueuse/core': + optional: true + + unplugin-svg-component@0.12.6: + resolution: {integrity: sha512-lzxRbLq9cK6UjdWOeOfrMqI80I89izSCIa+R6k3+FjkqTWgMPay7kdVpZ0HJ8/1UqfRbgIG3kpPpYxvFlcJZlA==} + + unplugin-utils@0.3.2: + resolution: {integrity: sha512-xVToRh2CTmLk2HnEG7ac4rl1MJTT3RFkpS8B++/SnB0kXvuaavD+n3m/vrzyWQOdJNSZQACnbz01pnppbwV5BA==} + engines: {node: '>=20.19.0'} + + unplugin-vue-components@32.1.0: + resolution: {integrity: sha512-YiUkSxuRjab18XFOrX5VsIxXzccrfmHVGsGeJgSgklb829DQmCy9E4vvDUE4tuvZZdxyFJZX0Oc4TPnnxiiMyg==} + engines: {node: '>=20.19.0'} + peerDependencies: + '@nuxt/kit': ^3.2.2 || ^4.0.0 + vue: ^3.0.0 + peerDependenciesMeta: + '@nuxt/kit': + optional: true + + unplugin@1.16.1: + resolution: {integrity: sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==} + engines: {node: '>=14.0.0'} + + unplugin@2.3.11: + resolution: {integrity: sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==} + engines: {node: '>=18.12.0'} + + unplugin@3.3.0: + resolution: {integrity: sha512-qa66K+crbfyE6JK10GjvbJeRrOsuC/JpbnHctfyp/i4oBTxWOzJfRZyDiOk1PtErMFRu8JhsU/wPvOdBNWe5Rg==} + engines: {node: ^20.19.0 || >=22.12.0} + peerDependencies: + '@farmfe/core': '*' + '@rspack/core': '*' + bun-types-no-globals: '*' + esbuild: '*' + rolldown: '*' + rollup: '*' + unloader: '*' + vite: '*' + webpack: '*' + peerDependenciesMeta: + '@farmfe/core': + optional: true + '@rspack/core': + optional: true + bun-types-no-globals: + optional: true + esbuild: + optional: true + rolldown: + optional: true + rollup: + optional: true + unloader: + optional: true + vite: + optional: true + webpack: + optional: true + + update-browserslist-db@1.2.3: + resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + varint@6.0.0: + resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==} + + vary@1.1.2: + resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} + engines: {node: '>= 0.8'} + + vinyl@2.2.1: + resolution: {integrity: sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==} + engines: {node: '>= 0.10'} + + vite-plugin-mcp@0.3.2: + resolution: {integrity: sha512-U/fLFkozIAaIzOoWpFOA5aAKBa5j5isdn/gZPcTcw6m2DadoB+Y+9e2hkMXSuom0dAbeb0Q+nLTCQmLqj4tNnA==} + peerDependencies: + vite: '>=6.0.0' + + vite-svg-loader@5.1.1: + resolution: {integrity: sha512-RPzcXA/EpKJA0585x58DBgs7my2VfeJ+j2j1EoHY4Zh82Y7hV4cR1fElgy2aZi85+QSrcLLoTStQ5uZjD68u+Q==} + peerDependencies: + vue: '>=3.2.13' + + vite@7.3.6: + resolution: {integrity: sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + peerDependencies: + '@types/node': ^20.19.0 || >=22.12.0 + jiti: '>=1.21.0' + less: ^4.0.0 + lightningcss: ^1.21.0 + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: '>=0.54.8' + sugarss: ^5.0.0 + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + '@types/node': + optional: true + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + + vitest@4.1.10: + resolution: {integrity: sha512-R9jUTe5S4Qb0HCd4TNqpC7oGcrMssMRGXLW80ubjWsW9VH5GF8y1Y0SFLY9AbqSk6nt0PnOx4H4WNJYZ13GUPw==} + engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@opentelemetry/api': ^1.9.0 + '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 + '@vitest/browser-playwright': 4.1.10 + '@vitest/browser-preview': 4.1.10 + '@vitest/browser-webdriverio': 4.1.10 + '@vitest/coverage-istanbul': 4.1.10 + '@vitest/coverage-v8': 4.1.10 + '@vitest/ui': 4.1.10 + happy-dom: '*' + jsdom: '*' + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@opentelemetry/api': + optional: true + '@types/node': + optional: true + '@vitest/browser-playwright': + optional: true + '@vitest/browser-preview': + optional: true + '@vitest/browser-webdriverio': + optional: true + '@vitest/coverage-istanbul': + optional: true + '@vitest/coverage-v8': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + + vscode-uri@3.1.0: + resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==} + + vue-component-type-helpers@3.3.7: + resolution: {integrity: sha512-Skkhw9agYSgsWqv7bxSOGJZa9SaiJbZVGdXuFWnrzKaQYHnw9qbjD630rw6RyMqDbp54nfLCLw5SZA55if7JLg==} + + vue-eslint-parser@10.4.1: + resolution: {integrity: sha512-Gk6gRDj0n/fkRa3C3l0bBheoBckUq/Rs0F/TvMWIS6nzzx67amAViMe9CkNgsP2tXyQONvGiHQESHwFtZ3aYDA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + + vue-router@5.1.0: + resolution: {integrity: sha512-HAbiLzLEHQwxPgvsbOJDAwtavszEgLwri6XfyrsPECIFez8+59xc9LofWVdc/HEaSRT822lJ8H9Ns38VVond5g==} + peerDependencies: + '@pinia/colada': '>=0.21.2' + '@vue/compiler-sfc': ^3.5.34 + pinia: ^3.0.4 + vite: ^7.0.0 || ^8.0.0 + vue: ^3.5.34 + peerDependenciesMeta: + '@pinia/colada': + optional: true + '@vue/compiler-sfc': + optional: true + pinia: + optional: true + vite: + optional: true + + vue-tsc@3.3.7: + resolution: {integrity: sha512-+C+rgD49wAQ5bUTl2sp5a8Bzg4YoldMNXM+g7CFe604MYcQ8PrZPMQhIjJSzKXtPBCa+C5ayMipqjbA7splekQ==} + hasBin: true + peerDependencies: + typescript: '>=5.0.0' + + vue@3.5.39: + resolution: {integrity: sha512-xmZCYabFGcirU8r0fTuvl/LICc1OU620rnqepaJDL/a141ZigkG7AyaxQLdqJ02ZRYzWe6YPaDHeQx7MfknQfA==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + vxe-table@4.6.25: + resolution: {integrity: sha512-rFhGh8w+420cdnIasQKisiKagz9F/iNieB/z6v0j4GcsMfGHEmSJ72YrHcXogQh4wNlCzKVfb7rl7nREL5eIOg==} + peerDependencies: + vue: ^3.2.28 + + webpack-virtual-modules@0.6.2: + resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==} + + whatwg-mimetype@3.0.0: + resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==} + engines: {node: '>=12'} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + why-is-node-running@2.3.0: + resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} + engines: {node: '>=8'} + hasBin: true + + winston-transport@4.9.0: + resolution: {integrity: sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==} + engines: {node: '>= 12.0.0'} + + winston@3.19.0: + resolution: {integrity: sha512-LZNJgPzfKR+/J3cHkxcpHKpKKvGfDZVPS4hfJCc4cCG0CgYzvlD6yE/S3CIL/Yt91ak327YCpiF/0MyeZHEHKA==} + engines: {node: '>= 12.0.0'} + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wrap-ansi@10.0.0: + resolution: {integrity: sha512-SGcvg80f0wUy2/fXES19feHMz8E0JoXv2uNgHOu4Dgi2OrCy1lqwFYEJz1BLbDI0exjPMe/ZdzZ/YpGECBG/aQ==} + engines: {node: '>=20'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + + wrap-ansi@9.0.2: + resolution: {integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==} + engines: {node: '>=18'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + ws@8.21.0: + resolution: {integrity: sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + xe-utils@3.9.1: + resolution: {integrity: sha512-Ujk5UmoH6Iaqhgz3oGwfCXVcMdUJKlXnfvLABdnMyseMG0eHsX2mcCvLd/8sGlIXtfwsprI9bW7vgcVognLmqQ==} + + xml-name-validator@4.0.0: + resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} + engines: {node: '>=12'} + + xpath@0.0.34: + resolution: {integrity: sha512-FxF6+rkr1rNSQrhUNYrAFJpRXNzlDoMxeXN5qI84939ylEv3qqPFKa85Oxr6tDaJKqwW6KKyo2v26TSv3k6LeA==} + engines: {node: '>=0.6.0'} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yaml-eslint-parser@2.1.0: + resolution: {integrity: sha512-1zo9KRfp6vIAXBEhWAz09ex3hUwh3T+/6dGbGteHvNseA0Uk4FgQnPES55klZ6cDzSy9FpgKS0D/CoLUvCCj4w==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + yaml@2.9.0: + resolution: {integrity: sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==} + engines: {node: '>= 14.6'} + hasBin: true + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.3: + resolution: {integrity: sha512-GZtjxm/J/4TSxuL3FNYjCmLktBTnIw/rVmKSIyKeYAZpmJB2ig9VauCC5xsa82GNKVKDAqpOn3KVzNt0zmrU0g==} + engines: {node: '>=12'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + zod-to-json-schema@3.25.2: + resolution: {integrity: sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA==} + peerDependencies: + zod: ^3.25.28 || ^4 + + zod@3.25.76: + resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} + + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + +snapshots: + + '@antfu/eslint-config@9.1.0(@typescript-eslint/rule-tester@8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(@typescript-eslint/typescript-estree@8.63.0(typescript@5.9.3))(@typescript-eslint/utils@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(@vue/compiler-sfc@3.5.39)(eslint-plugin-format@2.0.1(eslint@10.6.0(jiti@2.7.0)))(eslint@10.6.0(jiti@2.7.0))(ts-declaration-location@1.0.7(typescript@5.9.3))(typescript@5.9.3)(vitest@4.1.10(@types/node@26.1.1)(happy-dom@20.10.6)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)))': + dependencies: + '@antfu/install-pkg': 1.1.0 + '@clack/prompts': 1.7.0 + '@e18e/eslint-plugin': 0.5.1(eslint@10.6.0(jiti@2.7.0)) + '@eslint-community/eslint-plugin-eslint-comments': 4.7.2(eslint@10.6.0(jiti@2.7.0)) + '@eslint/markdown': 8.0.3 + '@stylistic/eslint-plugin': 5.10.0(eslint@10.6.0(jiti@2.7.0)) + '@typescript-eslint/eslint-plugin': 8.63.0(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + '@typescript-eslint/parser': 8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + '@vitest/eslint-plugin': 1.6.22(@typescript-eslint/eslint-plugin@8.63.0(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3)(vitest@4.1.10(@types/node@26.1.1)(happy-dom@20.10.6)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))) + ansis: 4.3.1 + cac: 7.0.0 + eslint: 10.6.0(jiti@2.7.0) + eslint-config-flat-gitignore: 2.3.0(eslint@10.6.0(jiti@2.7.0)) + eslint-flat-config-utils: 3.2.0 + eslint-merge-processors: 2.0.0(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-antfu: 3.2.3(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-command: 3.5.2(@typescript-eslint/rule-tester@8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(@typescript-eslint/typescript-estree@8.63.0(typescript@5.9.3))(@typescript-eslint/utils@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-import-lite: 0.6.0(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-jsdoc: 63.0.13(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-jsonc: 3.3.0(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-n: 18.2.1(eslint@10.6.0(jiti@2.7.0))(ts-declaration-location@1.0.7(typescript@5.9.3))(typescript@5.9.3) + eslint-plugin-no-only-tests: 3.4.0 + eslint-plugin-perfectionist: 5.10.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + eslint-plugin-pnpm: 1.6.1(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-regexp: 3.1.1(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-toml: 1.4.0(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-unicorn: 68.0.0(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-unused-imports: 4.4.1(@typescript-eslint/eslint-plugin@8.63.0(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0)) + eslint-plugin-vue: 10.9.2(@stylistic/eslint-plugin@5.10.0(eslint@10.6.0(jiti@2.7.0)))(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(vue-eslint-parser@10.4.1(eslint@10.6.0(jiti@2.7.0))) + eslint-plugin-yml: 3.6.0(eslint@10.6.0(jiti@2.7.0)) + eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.39)(eslint@10.6.0(jiti@2.7.0)) + globals: 17.7.0 + local-pkg: 1.2.1 + parse-gitignore: 2.0.0 + toml-eslint-parser: 1.0.3 + vue-eslint-parser: 10.4.1(eslint@10.6.0(jiti@2.7.0)) + yaml-eslint-parser: 2.1.0 + optionalDependencies: + eslint-plugin-format: 2.0.1(eslint@10.6.0(jiti@2.7.0)) + transitivePeerDependencies: + - '@eslint/json' + - '@typescript-eslint/rule-tester' + - '@typescript-eslint/typescript-estree' + - '@typescript-eslint/utils' + - '@vue/compiler-sfc' + - oxlint + - supports-color + - ts-declaration-location + - typescript + - vitest + + '@antfu/install-pkg@1.1.0': + dependencies: + package-manager-detector: 1.7.0 + tinyexec: 1.2.4 + + '@babel/generator@8.0.0': + dependencies: + '@babel/parser': 8.0.4 + '@babel/types': 8.0.4 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + '@types/jsesc': 2.5.1 + jsesc: 3.1.0 + + '@babel/helper-string-parser@7.29.7': {} + + '@babel/helper-string-parser@8.0.0': {} + + '@babel/helper-validator-identifier@7.29.7': {} + + '@babel/helper-validator-identifier@8.0.4': {} + + '@babel/parser@7.29.7': + dependencies: + '@babel/types': 7.29.7 + + '@babel/parser@8.0.4': + dependencies: + '@babel/types': 8.0.4 + + '@babel/types@7.29.7': + dependencies: + '@babel/helper-string-parser': 7.29.7 + '@babel/helper-validator-identifier': 7.29.7 + + '@babel/types@8.0.4': + dependencies: + '@babel/helper-string-parser': 8.0.0 + '@babel/helper-validator-identifier': 8.0.4 + + '@bufbuild/protobuf@1.10.1': {} + + '@clack/core@1.4.3': + dependencies: + fast-wrap-ansi: 0.2.2 + sisteransi: 1.0.5 + + '@clack/prompts@1.7.0': + dependencies: + '@clack/core': 1.4.3 + fast-string-width: 3.0.2 + fast-wrap-ansi: 0.2.2 + sisteransi: 1.0.5 + + '@colors/colors@1.6.0': {} + + '@ctrl/tinycolor@4.2.0': {} + + '@dabh/diagnostics@2.0.8': + dependencies: + '@so-ric/colorspace': 1.1.6 + enabled: 2.0.0 + kuler: 2.0.0 + + '@dprint/formatter@0.5.1': {} + + '@dprint/markdown@0.21.1': {} + + '@dprint/toml@0.7.0': {} + + '@e18e/eslint-plugin@0.5.1(eslint@10.6.0(jiti@2.7.0))': + dependencies: + empathic: 2.0.1 + module-replacements: 3.0.0 + semver: 7.8.5 + optionalDependencies: + eslint: 10.6.0(jiti@2.7.0) + + '@element-plus/icons-vue@2.3.2(vue@3.5.39(typescript@5.9.3))': + dependencies: + vue: 3.5.39(typescript@5.9.3) + + '@emnapi/core@1.10.0': + dependencies: + '@emnapi/wasi-threads': 1.2.1 + tslib: 2.8.1 + optional: true + + '@emnapi/core@1.11.1': + dependencies: + '@emnapi/wasi-threads': 1.2.2 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.10.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.11.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.2.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.2.2': + dependencies: + tslib: 2.8.1 + optional: true + + '@es-joy/jsdoccomment@0.84.0': + dependencies: + '@types/estree': 1.0.9 + '@typescript-eslint/types': 8.63.0 + comment-parser: 1.4.5 + esquery: 1.7.0 + jsdoc-type-pratt-parser: 7.1.1 + + '@es-joy/jsdoccomment@0.88.0': + dependencies: + '@types/estree': 1.0.9 + '@typescript-eslint/types': 8.63.0 + comment-parser: 1.4.7 + esquery: 1.7.0 + jsdoc-type-pratt-parser: 7.2.0 + + '@es-joy/resolve.exports@1.2.0': {} + + '@esbuild/aix-ppc64@0.27.2': + optional: true + + '@esbuild/android-arm64@0.27.2': + optional: true + + '@esbuild/android-arm@0.27.2': + optional: true + + '@esbuild/android-x64@0.27.2': + optional: true + + '@esbuild/darwin-arm64@0.27.2': + optional: true + + '@esbuild/darwin-x64@0.27.2': + optional: true + + '@esbuild/freebsd-arm64@0.27.2': + optional: true + + '@esbuild/freebsd-x64@0.27.2': + optional: true + + '@esbuild/linux-arm64@0.27.2': + optional: true + + '@esbuild/linux-arm@0.27.2': + optional: true + + '@esbuild/linux-ia32@0.27.2': + optional: true + + '@esbuild/linux-loong64@0.27.2': + optional: true + + '@esbuild/linux-mips64el@0.27.2': + optional: true + + '@esbuild/linux-ppc64@0.27.2': + optional: true + + '@esbuild/linux-riscv64@0.27.2': + optional: true + + '@esbuild/linux-s390x@0.27.2': + optional: true + + '@esbuild/linux-x64@0.27.2': + optional: true + + '@esbuild/netbsd-arm64@0.27.2': + optional: true + + '@esbuild/netbsd-x64@0.27.2': + optional: true + + '@esbuild/openbsd-arm64@0.27.2': + optional: true + + '@esbuild/openbsd-x64@0.27.2': + optional: true + + '@esbuild/openharmony-arm64@0.27.2': + optional: true + + '@esbuild/sunos-x64@0.27.2': + optional: true + + '@esbuild/win32-arm64@0.27.2': + optional: true + + '@esbuild/win32-ia32@0.27.2': + optional: true + + '@esbuild/win32-x64@0.27.2': + optional: true + + '@eslint-community/eslint-plugin-eslint-comments@4.7.2(eslint@10.6.0(jiti@2.7.0))': + dependencies: + escape-string-regexp: 4.0.0 + eslint: 10.6.0(jiti@2.7.0) + ignore: 7.0.5 + + '@eslint-community/eslint-utils@4.9.1(eslint@10.6.0(jiti@2.7.0))': + dependencies: + eslint: 10.6.0(jiti@2.7.0) + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.12.2': {} + + '@eslint/compat@2.1.0(eslint@10.6.0(jiti@2.7.0))': + dependencies: + '@eslint/core': 1.2.1 + optionalDependencies: + eslint: 10.6.0(jiti@2.7.0) + + '@eslint/config-array@0.23.5': + dependencies: + '@eslint/object-schema': 3.0.5 + debug: 4.4.3 + minimatch: 10.2.5 + transitivePeerDependencies: + - supports-color + + '@eslint/config-helpers@0.5.5': + dependencies: + '@eslint/core': 1.2.1 + + '@eslint/config-helpers@0.6.0': + dependencies: + '@eslint/core': 1.2.1 + + '@eslint/core@1.2.1': + dependencies: + '@types/json-schema': 7.0.15 + + '@eslint/markdown@8.0.3': + dependencies: + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.7.2 + github-slugger: 2.0.0 + mdast-util-from-markdown: 2.0.3 + mdast-util-frontmatter: 2.0.1 + mdast-util-gfm: 3.1.0 + mdast-util-math: 3.0.0 + micromark-extension-frontmatter: 2.0.0 + micromark-extension-gfm: 3.0.0 + micromark-extension-math: 3.1.0 + micromark-util-normalize-identifier: 2.0.1 + transitivePeerDependencies: + - supports-color + + '@eslint/object-schema@3.0.5': {} + + '@eslint/plugin-kit@0.7.2': + dependencies: + '@eslint/core': 1.2.1 + levn: 0.4.1 + + '@floating-ui/core@1.7.5': + dependencies: + '@floating-ui/utils': 0.2.11 + + '@floating-ui/dom@1.7.6': + dependencies: + '@floating-ui/core': 1.7.5 + '@floating-ui/utils': 0.2.11 + + '@floating-ui/utils@0.2.11': {} + + '@hono/node-server@1.19.14(hono@4.12.29)': + dependencies: + hono: 4.12.29 + + '@humanfs/core@0.19.2': + dependencies: + '@humanfs/types': 0.15.0 + + '@humanfs/node@0.16.8': + dependencies: + '@humanfs/core': 0.19.2 + '@humanfs/types': 0.15.0 + '@humanwhocodes/retry': 0.4.3 + + '@humanfs/types@0.15.0': {} + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/retry@0.4.3': {} + + '@iconify/types@2.0.0': {} + + '@iconify/utils@3.1.4': + dependencies: + '@antfu/install-pkg': 1.1.0 + '@iconify/types': 2.0.0 + import-meta-resolve: 4.2.0 + + '@isaacs/cliui@8.0.2': + dependencies: + string-width: 5.1.2 + string-width-cjs: string-width@4.2.3 + strip-ansi: 7.2.0 + strip-ansi-cjs: strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: wrap-ansi@7.0.0 + + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/remapping@2.3.5': + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@modelcontextprotocol/sdk@1.29.0(zod@3.25.76)': + dependencies: + '@hono/node-server': 1.19.14(hono@4.12.29) + ajv: 8.20.0 + ajv-formats: 3.0.1(ajv@8.20.0) + content-type: 1.0.5 + cors: 2.8.6 + cross-spawn: 7.0.6 + eventsource: 3.0.7 + eventsource-parser: 3.1.0 + express: 5.2.1 + express-rate-limit: 8.5.2(express@5.2.1) + hono: 4.12.29 + jose: 6.2.3 + json-schema-typed: 8.0.2 + pkce-challenge: 5.0.1 + raw-body: 3.0.2 + zod: 3.25.76 + zod-to-json-schema: 3.25.2(zod@3.25.76) + transitivePeerDependencies: + - supports-color + + '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)': + dependencies: + '@emnapi/core': 1.10.0 + '@emnapi/runtime': 1.10.0 + '@tybys/wasm-util': 0.10.3 + optional: true + + '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)': + dependencies: + '@emnapi/core': 1.11.1 + '@emnapi/runtime': 1.11.1 + '@tybys/wasm-util': 0.10.3 + optional: true + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.20.1 + + '@one-ini/wasm@0.1.1': {} + + '@ota-meshi/ast-token-store@0.3.0': {} + + '@oxc-parser/binding-android-arm-eabi@0.131.0': + optional: true + + '@oxc-parser/binding-android-arm64@0.131.0': + optional: true + + '@oxc-parser/binding-darwin-arm64@0.131.0': + optional: true + + '@oxc-parser/binding-darwin-x64@0.131.0': + optional: true + + '@oxc-parser/binding-freebsd-x64@0.131.0': + optional: true + + '@oxc-parser/binding-linux-arm-gnueabihf@0.131.0': + optional: true + + '@oxc-parser/binding-linux-arm-musleabihf@0.131.0': + optional: true + + '@oxc-parser/binding-linux-arm64-gnu@0.131.0': + optional: true + + '@oxc-parser/binding-linux-arm64-musl@0.131.0': + optional: true + + '@oxc-parser/binding-linux-ppc64-gnu@0.131.0': + optional: true + + '@oxc-parser/binding-linux-riscv64-gnu@0.131.0': + optional: true + + '@oxc-parser/binding-linux-riscv64-musl@0.131.0': + optional: true + + '@oxc-parser/binding-linux-s390x-gnu@0.131.0': + optional: true + + '@oxc-parser/binding-linux-x64-gnu@0.131.0': + optional: true + + '@oxc-parser/binding-linux-x64-musl@0.131.0': + optional: true + + '@oxc-parser/binding-openharmony-arm64@0.131.0': + optional: true + + '@oxc-parser/binding-wasm32-wasi@0.131.0': + dependencies: + '@emnapi/core': 1.10.0 + '@emnapi/runtime': 1.10.0 + '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0) + optional: true + + '@oxc-parser/binding-win32-arm64-msvc@0.131.0': + optional: true + + '@oxc-parser/binding-win32-ia32-msvc@0.131.0': + optional: true + + '@oxc-parser/binding-win32-x64-msvc@0.131.0': + optional: true + + '@oxc-project/types@0.131.0': {} + + '@oxc-project/types@0.139.0': + optional: true + + '@oxfmt/binding-android-arm-eabi@0.35.0': + optional: true + + '@oxfmt/binding-android-arm64@0.35.0': + optional: true + + '@oxfmt/binding-darwin-arm64@0.35.0': + optional: true + + '@oxfmt/binding-darwin-x64@0.35.0': + optional: true + + '@oxfmt/binding-freebsd-x64@0.35.0': + optional: true + + '@oxfmt/binding-linux-arm-gnueabihf@0.35.0': + optional: true + + '@oxfmt/binding-linux-arm-musleabihf@0.35.0': + optional: true + + '@oxfmt/binding-linux-arm64-gnu@0.35.0': + optional: true + + '@oxfmt/binding-linux-arm64-musl@0.35.0': + optional: true + + '@oxfmt/binding-linux-ppc64-gnu@0.35.0': + optional: true + + '@oxfmt/binding-linux-riscv64-gnu@0.35.0': + optional: true + + '@oxfmt/binding-linux-riscv64-musl@0.35.0': + optional: true + + '@oxfmt/binding-linux-s390x-gnu@0.35.0': + optional: true + + '@oxfmt/binding-linux-x64-gnu@0.35.0': + optional: true + + '@oxfmt/binding-linux-x64-musl@0.35.0': + optional: true + + '@oxfmt/binding-openharmony-arm64@0.35.0': + optional: true + + '@oxfmt/binding-win32-arm64-msvc@0.35.0': + optional: true + + '@oxfmt/binding-win32-ia32-msvc@0.35.0': + optional: true + + '@oxfmt/binding-win32-x64-msvc@0.35.0': + optional: true + + '@parcel/watcher-android-arm64@2.5.6': + optional: true + + '@parcel/watcher-darwin-arm64@2.5.6': + optional: true + + '@parcel/watcher-darwin-x64@2.5.6': + optional: true + + '@parcel/watcher-freebsd-x64@2.5.6': + optional: true + + '@parcel/watcher-linux-arm-glibc@2.5.6': + optional: true + + '@parcel/watcher-linux-arm-musl@2.5.6': + optional: true + + '@parcel/watcher-linux-arm64-glibc@2.5.6': + optional: true + + '@parcel/watcher-linux-arm64-musl@2.5.6': + optional: true + + '@parcel/watcher-linux-x64-glibc@2.5.6': + optional: true + + '@parcel/watcher-linux-x64-musl@2.5.6': + optional: true + + '@parcel/watcher-win32-arm64@2.5.6': + optional: true + + '@parcel/watcher-win32-ia32@2.5.6': + optional: true + + '@parcel/watcher-win32-x64@2.5.6': + optional: true + + '@parcel/watcher@2.5.6': + dependencies: + detect-libc: 2.1.2 + is-glob: 4.0.3 + node-addon-api: 7.1.1 + picomatch: 4.0.5 + optionalDependencies: + '@parcel/watcher-android-arm64': 2.5.6 + '@parcel/watcher-darwin-arm64': 2.5.6 + '@parcel/watcher-darwin-x64': 2.5.6 + '@parcel/watcher-freebsd-x64': 2.5.6 + '@parcel/watcher-linux-arm-glibc': 2.5.6 + '@parcel/watcher-linux-arm-musl': 2.5.6 + '@parcel/watcher-linux-arm64-glibc': 2.5.6 + '@parcel/watcher-linux-arm64-musl': 2.5.6 + '@parcel/watcher-linux-x64-glibc': 2.5.6 + '@parcel/watcher-linux-x64-musl': 2.5.6 + '@parcel/watcher-win32-arm64': 2.5.6 + '@parcel/watcher-win32-ia32': 2.5.6 + '@parcel/watcher-win32-x64': 2.5.6 + optional: true + + '@pkgjs/parseargs@0.11.0': + optional: true + + '@pkgr/core@0.3.6': {} + + '@polka/url@1.0.0-next.29': {} + + '@quansync/fs@1.0.0': + dependencies: + quansync: 1.0.0 + + '@resvg/resvg-js-android-arm-eabi@2.6.2': + optional: true + + '@resvg/resvg-js-android-arm64@2.6.2': + optional: true + + '@resvg/resvg-js-darwin-arm64@2.6.2': + optional: true + + '@resvg/resvg-js-darwin-x64@2.6.2': + optional: true + + '@resvg/resvg-js-linux-arm-gnueabihf@2.6.2': + optional: true + + '@resvg/resvg-js-linux-arm64-gnu@2.6.2': + optional: true + + '@resvg/resvg-js-linux-arm64-musl@2.6.2': + optional: true + + '@resvg/resvg-js-linux-x64-gnu@2.6.2': + optional: true + + '@resvg/resvg-js-linux-x64-musl@2.6.2': + optional: true + + '@resvg/resvg-js-win32-arm64-msvc@2.6.2': + optional: true + + '@resvg/resvg-js-win32-ia32-msvc@2.6.2': + optional: true + + '@resvg/resvg-js-win32-x64-msvc@2.6.2': + optional: true + + '@resvg/resvg-js@2.6.2': + optionalDependencies: + '@resvg/resvg-js-android-arm-eabi': 2.6.2 + '@resvg/resvg-js-android-arm64': 2.6.2 + '@resvg/resvg-js-darwin-arm64': 2.6.2 + '@resvg/resvg-js-darwin-x64': 2.6.2 + '@resvg/resvg-js-linux-arm-gnueabihf': 2.6.2 + '@resvg/resvg-js-linux-arm64-gnu': 2.6.2 + '@resvg/resvg-js-linux-arm64-musl': 2.6.2 + '@resvg/resvg-js-linux-x64-gnu': 2.6.2 + '@resvg/resvg-js-linux-x64-musl': 2.6.2 + '@resvg/resvg-js-win32-arm64-msvc': 2.6.2 + '@resvg/resvg-js-win32-ia32-msvc': 2.6.2 + '@resvg/resvg-js-win32-x64-msvc': 2.6.2 + + '@rolldown/binding-android-arm64@1.1.5': + optional: true + + '@rolldown/binding-darwin-arm64@1.1.5': + optional: true + + '@rolldown/binding-darwin-x64@1.1.5': + optional: true + + '@rolldown/binding-freebsd-x64@1.1.5': + optional: true + + '@rolldown/binding-linux-arm-gnueabihf@1.1.5': + optional: true + + '@rolldown/binding-linux-arm64-gnu@1.1.5': + optional: true + + '@rolldown/binding-linux-arm64-musl@1.1.5': + optional: true + + '@rolldown/binding-linux-ppc64-gnu@1.1.5': + optional: true + + '@rolldown/binding-linux-s390x-gnu@1.1.5': + optional: true + + '@rolldown/binding-linux-x64-gnu@1.1.5': + optional: true + + '@rolldown/binding-linux-x64-musl@1.1.5': + optional: true + + '@rolldown/binding-openharmony-arm64@1.1.5': + optional: true + + '@rolldown/binding-wasm32-wasi@1.1.5': + dependencies: + '@emnapi/core': 1.11.1 + '@emnapi/runtime': 1.11.1 + '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1) + optional: true + + '@rolldown/binding-win32-arm64-msvc@1.1.5': + optional: true + + '@rolldown/binding-win32-x64-msvc@1.1.5': + optional: true + + '@rolldown/pluginutils@1.0.1': {} + + '@rollup/rollup-android-arm-eabi@4.62.2': + optional: true + + '@rollup/rollup-android-arm64@4.62.2': + optional: true + + '@rollup/rollup-darwin-arm64@4.62.2': + optional: true + + '@rollup/rollup-darwin-x64@4.62.2': + optional: true + + '@rollup/rollup-freebsd-arm64@4.62.2': + optional: true + + '@rollup/rollup-freebsd-x64@4.62.2': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.62.2': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.62.2': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.62.2': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.62.2': + optional: true + + '@rollup/rollup-linux-loong64-gnu@4.62.2': + optional: true + + '@rollup/rollup-linux-loong64-musl@4.62.2': + optional: true + + '@rollup/rollup-linux-ppc64-gnu@4.62.2': + optional: true + + '@rollup/rollup-linux-ppc64-musl@4.62.2': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.62.2': + optional: true + + '@rollup/rollup-linux-riscv64-musl@4.62.2': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.62.2': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.62.2': + optional: true + + '@rollup/rollup-linux-x64-musl@4.62.2': + optional: true + + '@rollup/rollup-openbsd-x64@4.62.2': + optional: true + + '@rollup/rollup-openharmony-arm64@4.62.2': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.62.2': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.62.2': + optional: true + + '@rollup/rollup-win32-x64-gnu@4.62.2': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.62.2': + optional: true + + '@sindresorhus/base62@1.0.0': {} + + '@so-ric/colorspace@1.1.6': + dependencies: + color: 5.0.3 + text-hex: 1.0.0 + + '@standard-schema/spec@1.1.0': {} + + '@stylistic/eslint-plugin@5.10.0(eslint@10.6.0(jiti@2.7.0))': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + '@typescript-eslint/types': 8.63.0 + eslint: 10.6.0(jiti@2.7.0) + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 + estraverse: 5.3.0 + picomatch: 4.0.5 + + '@sxzz/popperjs-es@2.11.8': {} + + '@tybys/wasm-util@0.10.3': + dependencies: + tslib: 2.8.1 + optional: true + + '@types/chai@5.2.3': + dependencies: + '@types/deep-eql': 4.0.2 + assertion-error: 2.0.1 + + '@types/debug@4.1.13': + dependencies: + '@types/ms': 2.1.0 + + '@types/deep-eql@4.0.2': {} + + '@types/esrecurse@4.3.1': {} + + '@types/estree@1.0.9': {} + + '@types/hast@3.0.5': + dependencies: + '@types/unist': 3.0.3 + + '@types/jsesc@2.5.1': {} + + '@types/json-schema@7.0.15': {} + + '@types/katex@0.16.8': {} + + '@types/lodash-es@4.17.12': + dependencies: + '@types/lodash': 4.17.24 + + '@types/lodash@4.17.24': {} + + '@types/mdast@4.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/ms@2.1.0': {} + + '@types/node@26.1.1': + dependencies: + undici-types: 8.3.0 + + '@types/nprogress@0.2.3': {} + + '@types/path-browserify@1.0.3': {} + + '@types/triple-beam@1.3.5': {} + + '@types/unist@3.0.3': {} + + '@types/web-bluetooth@0.0.21': {} + + '@types/whatwg-mimetype@3.0.2': {} + + '@types/ws@8.18.1': + dependencies: + '@types/node': 26.1.1 + + '@typescript-eslint/eslint-plugin@8.63.0(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3)': + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.63.0 + '@typescript-eslint/type-utils': 8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + '@typescript-eslint/utils': 8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.63.0 + eslint: 10.6.0(jiti@2.7.0) + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.61.1 + '@typescript-eslint/types': 8.61.1 + '@typescript-eslint/typescript-estree': 8.61.1(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.61.1 + debug: 4.4.3 + eslint: 10.6.0(jiti@2.7.0) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.63.0 + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/typescript-estree': 8.63.0(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.63.0 + debug: 4.4.3 + eslint: 10.6.0(jiti@2.7.0) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/project-service@8.61.1(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.63.0(typescript@5.9.3) + '@typescript-eslint/types': 8.63.0 + debug: 4.4.3 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/project-service@8.63.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.63.0(typescript@5.9.3) + '@typescript-eslint/types': 8.63.0 + debug: 4.4.3 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/rule-tester@8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/parser': 8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + '@typescript-eslint/typescript-estree': 8.61.1(typescript@5.9.3) + '@typescript-eslint/utils': 8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + ajv: 6.15.0 + eslint: 10.6.0(jiti@2.7.0) + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + semver: 7.8.5 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@8.61.1': + dependencies: + '@typescript-eslint/types': 8.61.1 + '@typescript-eslint/visitor-keys': 8.61.1 + + '@typescript-eslint/scope-manager@8.63.0': + dependencies: + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/visitor-keys': 8.63.0 + + '@typescript-eslint/tsconfig-utils@8.61.1(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@typescript-eslint/tsconfig-utils@8.63.0(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@typescript-eslint/type-utils@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/typescript-estree': 8.63.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + debug: 4.4.3 + eslint: 10.6.0(jiti@2.7.0) + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@8.61.1': {} + + '@typescript-eslint/types@8.63.0': {} + + '@typescript-eslint/typescript-estree@8.61.1(typescript@5.9.3)': + dependencies: + '@typescript-eslint/project-service': 8.61.1(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.61.1(typescript@5.9.3) + '@typescript-eslint/types': 8.61.1 + '@typescript-eslint/visitor-keys': 8.61.1 + debug: 4.4.3 + minimatch: 10.2.5 + semver: 7.8.5 + tinyglobby: 0.2.17 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/typescript-estree@8.63.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/project-service': 8.63.0(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.63.0(typescript@5.9.3) + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/visitor-keys': 8.63.0 + debug: 4.4.3 + minimatch: 10.2.5 + semver: 7.8.5 + tinyglobby: 0.2.17 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + '@typescript-eslint/scope-manager': 8.61.1 + '@typescript-eslint/types': 8.61.1 + '@typescript-eslint/typescript-estree': 8.61.1(typescript@5.9.3) + eslint: 10.6.0(jiti@2.7.0) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + '@typescript-eslint/scope-manager': 8.63.0 + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/typescript-estree': 8.63.0(typescript@5.9.3) + eslint: 10.6.0(jiti@2.7.0) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/visitor-keys@8.61.1': + dependencies: + '@typescript-eslint/types': 8.61.1 + eslint-visitor-keys: 5.0.1 + + '@typescript-eslint/visitor-keys@8.63.0': + dependencies: + '@typescript-eslint/types': 8.63.0 + eslint-visitor-keys: 5.0.1 + + '@unocss/cli@66.7.5': + dependencies: + '@jridgewell/remapping': 2.3.5 + '@unocss/config': 66.7.5 + '@unocss/core': 66.7.5 + '@unocss/preset-wind3': 66.7.5 + '@unocss/preset-wind4': 66.7.5 + '@unocss/transformer-directives': 66.7.5 + cac: 7.0.0 + chokidar: 5.0.0 + colorette: 2.0.20 + consola: 3.4.2 + magic-string: 0.30.21 + pathe: 2.0.3 + perfect-debounce: 2.1.0 + tinyglobby: 0.2.17 + unplugin-utils: 0.3.2 + + '@unocss/config@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + colorette: 2.0.20 + consola: 3.4.2 + unconfig: 7.5.0 + + '@unocss/core@66.7.5': {} + + '@unocss/extractor-arbitrary-variants@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + + '@unocss/inspector@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + '@unocss/rule-utils': 66.7.5 + colorette: 2.0.20 + gzip-size: 6.0.0 + sirv: 3.0.2 + + '@unocss/preset-attributify@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + + '@unocss/preset-icons@66.7.5': + dependencies: + '@iconify/utils': 3.1.4 + '@unocss/core': 66.7.5 + ofetch: 1.5.1 + + '@unocss/preset-mini@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + '@unocss/extractor-arbitrary-variants': 66.7.5 + '@unocss/rule-utils': 66.7.5 + + '@unocss/preset-tagify@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + + '@unocss/preset-typography@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + '@unocss/rule-utils': 66.7.5 + + '@unocss/preset-uno@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + '@unocss/preset-wind3': 66.7.5 + + '@unocss/preset-web-fonts@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + ofetch: 1.5.1 + + '@unocss/preset-wind3@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + '@unocss/preset-mini': 66.7.5 + '@unocss/rule-utils': 66.7.5 + + '@unocss/preset-wind4@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + '@unocss/extractor-arbitrary-variants': 66.7.5 + '@unocss/rule-utils': 66.7.5 + + '@unocss/preset-wind@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + '@unocss/preset-wind3': 66.7.5 + + '@unocss/rule-utils@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + magic-string: 0.30.21 + + '@unocss/transformer-attributify-jsx@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + oxc-parser: 0.131.0 + oxc-walker: 0.7.0(oxc-parser@0.131.0) + + '@unocss/transformer-compile-class@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + + '@unocss/transformer-directives@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + '@unocss/rule-utils': 66.7.5 + css-tree: 3.2.1 + + '@unocss/transformer-variant-group@66.7.5': + dependencies: + '@unocss/core': 66.7.5 + + '@unocss/vite@66.7.5(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))': + dependencies: + '@jridgewell/remapping': 2.3.5 + '@unocss/config': 66.7.5 + '@unocss/core': 66.7.5 + '@unocss/inspector': 66.7.5 + chokidar: 5.0.0 + magic-string: 0.30.21 + pathe: 2.0.3 + tinyglobby: 0.2.17 + unplugin-utils: 0.3.2 + vite: 7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0) + + '@vitejs/plugin-vue@6.0.7(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))(vue@3.5.39(typescript@5.9.3))': + dependencies: + '@rolldown/pluginutils': 1.0.1 + vite: 7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0) + vue: 3.5.39(typescript@5.9.3) + + '@vitest/eslint-plugin@1.6.22(@typescript-eslint/eslint-plugin@8.63.0(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3)(vitest@4.1.10(@types/node@26.1.1)(happy-dom@20.10.6)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)))': + dependencies: + '@typescript-eslint/scope-manager': 8.63.0 + '@typescript-eslint/utils': 8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + eslint: 10.6.0(jiti@2.7.0) + optionalDependencies: + '@typescript-eslint/eslint-plugin': 8.63.0(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + typescript: 5.9.3 + vitest: 4.1.10(@types/node@26.1.1)(happy-dom@20.10.6)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)) + transitivePeerDependencies: + - supports-color + + '@vitest/expect@4.1.10': + dependencies: + '@standard-schema/spec': 1.1.0 + '@types/chai': 5.2.3 + '@vitest/spy': 4.1.10 + '@vitest/utils': 4.1.10 + chai: 6.2.2 + tinyrainbow: 3.1.0 + + '@vitest/mocker@4.1.10(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))': + dependencies: + '@vitest/spy': 4.1.10 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + vite: 7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0) + + '@vitest/pretty-format@4.1.10': + dependencies: + tinyrainbow: 3.1.0 + + '@vitest/runner@4.1.10': + dependencies: + '@vitest/utils': 4.1.10 + pathe: 2.0.3 + + '@vitest/snapshot@4.1.10': + dependencies: + '@vitest/pretty-format': 4.1.10 + '@vitest/utils': 4.1.10 + magic-string: 0.30.21 + pathe: 2.0.3 + + '@vitest/spy@4.1.10': {} + + '@vitest/utils@4.1.10': + dependencies: + '@vitest/pretty-format': 4.1.10 + convert-source-map: 2.0.0 + tinyrainbow: 3.1.0 + + '@volar/language-core@2.4.28': + dependencies: + '@volar/source-map': 2.4.28 + + '@volar/source-map@2.4.28': {} + + '@volar/typescript@2.4.28': + dependencies: + '@volar/language-core': 2.4.28 + path-browserify: 1.0.1 + vscode-uri: 3.1.0 + + '@vue-macros/common@3.1.2(vue@3.5.39(typescript@5.9.3))': + dependencies: + '@vue/compiler-sfc': 3.5.39 + ast-kit: 2.2.0 + local-pkg: 1.2.1 + magic-string-ast: 1.0.3 + unplugin-utils: 0.3.2 + optionalDependencies: + vue: 3.5.39(typescript@5.9.3) + + '@vue/compiler-core@3.5.39': + dependencies: + '@babel/parser': 7.29.7 + '@vue/shared': 3.5.39 + entities: 7.0.1 + estree-walker: 2.0.2 + source-map-js: 1.2.1 + + '@vue/compiler-dom@3.5.39': + dependencies: + '@vue/compiler-core': 3.5.39 + '@vue/shared': 3.5.39 + + '@vue/compiler-sfc@3.5.39': + dependencies: + '@babel/parser': 7.29.7 + '@vue/compiler-core': 3.5.39 + '@vue/compiler-dom': 3.5.39 + '@vue/compiler-ssr': 3.5.39 + '@vue/shared': 3.5.39 + estree-walker: 2.0.2 + magic-string: 0.30.21 + postcss: 8.5.16 + source-map-js: 1.2.1 + + '@vue/compiler-ssr@3.5.39': + dependencies: + '@vue/compiler-dom': 3.5.39 + '@vue/shared': 3.5.39 + + '@vue/devtools-api@7.7.10': + dependencies: + '@vue/devtools-kit': 7.7.10 + + '@vue/devtools-api@8.1.5': + dependencies: + '@vue/devtools-kit': 8.1.5 + + '@vue/devtools-kit@7.7.10': + dependencies: + '@vue/devtools-shared': 7.7.10 + birpc: 2.9.0 + hookable: 5.5.3 + mitt: 3.0.1 + perfect-debounce: 1.0.0 + speakingurl: 14.0.1 + superjson: 2.2.6 + + '@vue/devtools-kit@8.1.5': + dependencies: + '@vue/devtools-shared': 8.1.5 + birpc: 2.9.0 + hookable: 5.5.3 + perfect-debounce: 2.1.0 + + '@vue/devtools-shared@7.7.10': + dependencies: + rfdc: 1.4.1 + + '@vue/devtools-shared@8.1.5': {} + + '@vue/language-core@3.3.7': + dependencies: + '@volar/language-core': 2.4.28 + '@vue/compiler-dom': 3.5.39 + '@vue/shared': 3.5.39 + alien-signals: 3.2.1 + muggle-string: 0.4.1 + path-browserify: 1.0.1 + picomatch: 4.0.5 + + '@vue/reactivity@3.5.39': + dependencies: + '@vue/shared': 3.5.39 + + '@vue/runtime-core@3.5.39': + dependencies: + '@vue/reactivity': 3.5.39 + '@vue/shared': 3.5.39 + + '@vue/runtime-dom@3.5.39': + dependencies: + '@vue/reactivity': 3.5.39 + '@vue/runtime-core': 3.5.39 + '@vue/shared': 3.5.39 + csstype: 3.2.3 + + '@vue/server-renderer@3.5.39(vue@3.5.39(typescript@5.9.3))': + dependencies: + '@vue/compiler-ssr': 3.5.39 + '@vue/shared': 3.5.39 + vue: 3.5.39(typescript@5.9.3) + + '@vue/shared@3.5.39': {} + + '@vue/test-utils@2.4.11(@vue/compiler-dom@3.5.39)(@vue/server-renderer@3.5.39(vue@3.5.39(typescript@5.9.3)))(vue@3.5.39(typescript@5.9.3))': + dependencies: + '@vue/compiler-dom': 3.5.39 + js-beautify: 1.15.4 + vue: 3.5.39(typescript@5.9.3) + vue-component-type-helpers: 3.3.7 + optionalDependencies: + '@vue/server-renderer': 3.5.39(vue@3.5.39(typescript@5.9.3)) + + '@vueuse/core@14.3.0(vue@3.5.39(typescript@5.9.3))': + dependencies: + '@types/web-bluetooth': 0.0.21 + '@vueuse/metadata': 14.3.0 + '@vueuse/shared': 14.3.0(vue@3.5.39(typescript@5.9.3)) + vue: 3.5.39(typescript@5.9.3) + + '@vueuse/metadata@14.3.0': {} + + '@vueuse/shared@14.3.0(vue@3.5.39(typescript@5.9.3))': + dependencies: + vue: 3.5.39(typescript@5.9.3) + + '@xmldom/xmldom@0.8.13': {} + + abbrev@2.0.0: {} + + accepts@2.0.0: + dependencies: + mime-types: 3.0.2 + negotiator: 1.0.0 + + acorn-jsx@5.3.2(acorn@8.17.0): + dependencies: + acorn: 8.17.0 + + acorn@8.17.0: {} + + agent-base@6.0.2: + dependencies: + debug: 4.4.3 + transitivePeerDependencies: + - supports-color + + ajv-formats@3.0.1(ajv@8.20.0): + optionalDependencies: + ajv: 8.20.0 + + ajv@6.15.0: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ajv@8.20.0: + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + + alien-signals@3.2.1: {} + + ansi-escapes@7.3.0: + dependencies: + environment: 1.1.0 + + ansi-regex@5.0.1: {} + + ansi-regex@6.2.2: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@6.2.3: {} + + ansis@4.3.1: {} + + are-docs-informative@0.0.2: {} + + argparse@2.0.1: {} + + assertion-error@2.0.1: {} + + ast-kit@2.2.0: + dependencies: + '@babel/parser': 7.29.7 + pathe: 2.0.3 + + ast-walker-scope@0.9.0: + dependencies: + '@babel/parser': 7.29.7 + '@babel/types': 7.29.7 + ast-kit: 2.2.0 + + async-validator@4.2.5: {} + + async@3.2.6: {} + + asynckit@0.4.0: {} + + axios@1.18.1: + dependencies: + follow-redirects: 1.16.0 + form-data: 4.0.6 + https-proxy-agent: 5.0.1 + proxy-from-env: 2.1.0 + transitivePeerDependencies: + - debug + - supports-color + + balanced-match@1.0.2: {} + + balanced-match@4.0.4: {} + + baseline-browser-mapping@2.10.42: {} + + birpc@2.9.0: {} + + body-parser@2.3.0: + dependencies: + bytes: 3.1.2 + content-type: 2.0.0 + debug: 4.4.3 + http-errors: 2.0.1 + iconv-lite: 0.7.3 + on-finished: 2.4.1 + qs: 6.15.3 + raw-body: 3.0.2 + type-is: 2.1.0 + transitivePeerDependencies: + - supports-color + + boolbase@1.0.0: {} + + brace-expansion@1.1.16: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.1.2: + dependencies: + balanced-match: 1.0.2 + + brace-expansion@5.0.7: + dependencies: + balanced-match: 4.0.4 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.28.5: + dependencies: + baseline-browser-mapping: 2.10.42 + caniuse-lite: 1.0.30001803 + electron-to-chromium: 1.5.389 + node-releases: 2.0.51 + update-browserslist-db: 1.2.3(browserslist@4.28.5) + + buffer-builder@0.2.0: {} + + buffer-image-size@0.6.4: + dependencies: + '@types/node': 26.1.1 + + builtin-modules@5.3.0: {} + + bytes@3.1.2: {} + + cac@7.0.0: {} + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + + caniuse-lite@1.0.30001803: {} + + ccount@2.0.1: {} + + chai@6.2.2: {} + + change-case@5.4.4: {} + + character-entities@2.0.2: {} + + chokidar@5.0.0: + dependencies: + readdirp: 5.0.0 + + ci-info@4.4.0: {} + + cli-cursor@5.0.0: + dependencies: + restore-cursor: 5.1.0 + + cli-truncate@5.2.0: + dependencies: + slice-ansi: 8.0.0 + string-width: 8.2.2 + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + clone-buffer@1.0.0: {} + + clone-stats@1.0.0: {} + + clone@2.1.2: {} + + cloneable-readable@1.1.3: + dependencies: + inherits: 2.0.4 + process-nextick-args: 2.0.1 + readable-stream: 2.3.8 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-convert@3.1.3: + dependencies: + color-name: 2.1.0 + + color-name@1.1.4: {} + + color-name@2.1.0: {} + + color-string@2.1.4: + dependencies: + color-name: 2.1.0 + + color@5.0.3: + dependencies: + color-convert: 3.1.3 + color-string: 2.1.4 + + colorette@2.0.20: {} + + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + + commander@10.0.1: {} + + commander@7.2.0: {} + + commander@8.3.0: {} + + comment-parser@1.4.5: {} + + comment-parser@1.4.7: {} + + concat-map@0.0.1: {} + + confbox@0.1.8: {} + + confbox@0.2.4: {} + + config-chain@1.1.13: + dependencies: + ini: 1.3.8 + proto-list: 1.2.4 + + consola@3.4.2: {} + + content-disposition@1.1.0: {} + + content-type@1.0.5: {} + + content-type@2.0.0: {} + + convert-source-map@2.0.0: {} + + cookie-signature@1.2.2: {} + + cookie@0.7.2: {} + + copy-anything@4.0.5: + dependencies: + is-what: 5.5.0 + + core-js-compat@3.49.0: + dependencies: + browserslist: 4.28.5 + + core-util-is@1.0.3: {} + + cors@2.8.6: + dependencies: + object-assign: 4.1.1 + vary: 1.1.2 + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + css-select@4.3.0: + dependencies: + boolbase: 1.0.0 + css-what: 6.2.2 + domhandler: 4.3.1 + domutils: 2.8.0 + nth-check: 2.1.1 + + css-select@5.2.2: + dependencies: + boolbase: 1.0.0 + css-what: 6.2.2 + domhandler: 5.0.3 + domutils: 3.2.2 + nth-check: 2.1.1 + + css-selector-parser@1.4.1: {} + + css-tree@1.1.3: + dependencies: + mdn-data: 2.0.14 + source-map: 0.6.1 + + css-tree@2.2.1: + dependencies: + mdn-data: 2.0.28 + source-map-js: 1.2.1 + + css-tree@2.3.1: + dependencies: + mdn-data: 2.0.30 + source-map-js: 1.2.1 + + css-tree@3.2.1: + dependencies: + mdn-data: 2.27.1 + source-map-js: 1.2.1 + + css-what@6.2.2: {} + + cssesc@3.0.0: {} + + csso@4.2.0: + dependencies: + css-tree: 1.1.3 + + csso@5.0.5: + dependencies: + css-tree: 2.2.1 + + cssom@0.5.0: {} + + csstype@3.2.3: {} + + dayjs@1.11.21: {} + + debug@4.4.3: + dependencies: + ms: 2.1.3 + + decode-named-character-reference@1.3.0: + dependencies: + character-entities: 2.0.2 + + deep-is@0.1.4: {} + + defu@6.1.7: {} + + delayed-stream@1.0.0: {} + + depd@2.0.0: {} + + dequal@2.0.3: {} + + destr@2.0.5: {} + + detect-indent@7.0.2: {} + + detect-libc@2.1.2: + optional: true + + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + + diff-sequences@29.6.3: {} + + dom-serializer@1.4.1: + dependencies: + domelementtype: 2.3.0 + domhandler: 4.3.1 + entities: 2.2.0 + + dom-serializer@2.0.0: + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + entities: 4.5.0 + + dom-zindex@1.0.7: {} + + domelementtype@2.3.0: {} + + domhandler@4.3.1: + dependencies: + domelementtype: 2.3.0 + + domhandler@5.0.3: + dependencies: + domelementtype: 2.3.0 + + domutils@2.8.0: + dependencies: + dom-serializer: 1.4.1 + domelementtype: 2.3.0 + domhandler: 4.3.1 + + domutils@3.2.2: + dependencies: + dom-serializer: 2.0.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + duplexer@0.1.2: {} + + eastasianwidth@0.2.0: {} + + editorconfig@1.0.7: + dependencies: + '@one-ini/wasm': 0.1.1 + commander: 10.0.1 + minimatch: 9.0.9 + semver: 7.8.5 + + ee-first@1.1.1: {} + + electron-to-chromium@1.5.389: {} + + element-plus@2.14.2(vue@3.5.39(typescript@5.9.3)): + dependencies: + '@ctrl/tinycolor': 4.2.0 + '@element-plus/icons-vue': 2.3.2(vue@3.5.39(typescript@5.9.3)) + '@floating-ui/dom': 1.7.6 + '@popperjs/core': '@sxzz/popperjs-es@2.11.8' + '@types/lodash': 4.17.24 + '@types/lodash-es': 4.17.12 + '@vueuse/core': 14.3.0(vue@3.5.39(typescript@5.9.3)) + async-validator: 4.2.5 + dayjs: 1.11.21 + lodash: 4.18.1 + lodash-es: 4.18.1 + lodash-unified: 1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.18.1)(lodash@4.18.1) + memoize-one: 6.0.0 + normalize-wheel-es: 1.2.0 + vue: 3.5.39(typescript@5.9.3) + vue-component-type-helpers: 3.3.7 + + emoji-regex@10.6.0: {} + + emoji-regex@8.0.0: {} + + emoji-regex@9.2.2: {} + + empathic@2.0.1: {} + + enabled@2.0.0: {} + + encodeurl@2.0.0: {} + + enhanced-resolve@5.24.2: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.3.3 + + entities@2.2.0: {} + + entities@4.5.0: {} + + entities@7.0.1: {} + + environment@1.1.0: {} + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-module-lexer@2.3.0: {} + + es-object-atoms@1.1.2: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.4 + + esbuild@0.27.2: + optionalDependencies: + '@esbuild/aix-ppc64': 0.27.2 + '@esbuild/android-arm': 0.27.2 + '@esbuild/android-arm64': 0.27.2 + '@esbuild/android-x64': 0.27.2 + '@esbuild/darwin-arm64': 0.27.2 + '@esbuild/darwin-x64': 0.27.2 + '@esbuild/freebsd-arm64': 0.27.2 + '@esbuild/freebsd-x64': 0.27.2 + '@esbuild/linux-arm': 0.27.2 + '@esbuild/linux-arm64': 0.27.2 + '@esbuild/linux-ia32': 0.27.2 + '@esbuild/linux-loong64': 0.27.2 + '@esbuild/linux-mips64el': 0.27.2 + '@esbuild/linux-ppc64': 0.27.2 + '@esbuild/linux-riscv64': 0.27.2 + '@esbuild/linux-s390x': 0.27.2 + '@esbuild/linux-x64': 0.27.2 + '@esbuild/netbsd-arm64': 0.27.2 + '@esbuild/netbsd-x64': 0.27.2 + '@esbuild/openbsd-arm64': 0.27.2 + '@esbuild/openbsd-x64': 0.27.2 + '@esbuild/openharmony-arm64': 0.27.2 + '@esbuild/sunos-x64': 0.27.2 + '@esbuild/win32-arm64': 0.27.2 + '@esbuild/win32-ia32': 0.27.2 + '@esbuild/win32-x64': 0.27.2 + + escalade@3.2.0: {} + + escape-html@1.0.3: {} + + escape-string-regexp@4.0.0: {} + + escape-string-regexp@5.0.0: {} + + eslint-compat-utils@0.5.1(eslint@10.6.0(jiti@2.7.0)): + dependencies: + eslint: 10.6.0(jiti@2.7.0) + semver: 7.8.5 + + eslint-config-flat-gitignore@2.3.0(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@eslint/compat': 2.1.0(eslint@10.6.0(jiti@2.7.0)) + eslint: 10.6.0(jiti@2.7.0) + + eslint-flat-config-utils@3.2.0: + dependencies: + '@eslint/config-helpers': 0.5.5 + pathe: 2.0.3 + + eslint-formatting-reporter@0.0.0(eslint@10.6.0(jiti@2.7.0)): + dependencies: + eslint: 10.6.0(jiti@2.7.0) + prettier-linter-helpers: 1.0.1 + + eslint-json-compat-utils@0.2.3(eslint@10.6.0(jiti@2.7.0))(jsonc-eslint-parser@3.1.0): + dependencies: + eslint: 10.6.0(jiti@2.7.0) + esquery: 1.7.0 + jsonc-eslint-parser: 3.1.0 + + eslint-merge-processors@2.0.0(eslint@10.6.0(jiti@2.7.0)): + dependencies: + eslint: 10.6.0(jiti@2.7.0) + + eslint-parser-plain@0.1.1: {} + + eslint-plugin-antfu@3.2.3(eslint@10.6.0(jiti@2.7.0)): + dependencies: + eslint: 10.6.0(jiti@2.7.0) + + eslint-plugin-command@3.5.2(@typescript-eslint/rule-tester@8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(@typescript-eslint/typescript-estree@8.63.0(typescript@5.9.3))(@typescript-eslint/utils@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@es-joy/jsdoccomment': 0.84.0 + '@typescript-eslint/rule-tester': 8.61.1(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + '@typescript-eslint/typescript-estree': 8.63.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + eslint: 10.6.0(jiti@2.7.0) + + eslint-plugin-es-x@7.8.0(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + '@eslint-community/regexpp': 4.12.2 + eslint: 10.6.0(jiti@2.7.0) + eslint-compat-utils: 0.5.1(eslint@10.6.0(jiti@2.7.0)) + + eslint-plugin-format@2.0.1(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@dprint/formatter': 0.5.1 + '@dprint/markdown': 0.21.1 + '@dprint/toml': 0.7.0 + eslint: 10.6.0(jiti@2.7.0) + eslint-formatting-reporter: 0.0.0(eslint@10.6.0(jiti@2.7.0)) + eslint-parser-plain: 0.1.1 + ohash: 2.0.11 + oxfmt: 0.35.0 + prettier: 3.9.5 + synckit: 0.11.13 + + eslint-plugin-import-lite@0.6.0(eslint@10.6.0(jiti@2.7.0)): + dependencies: + eslint: 10.6.0(jiti@2.7.0) + + eslint-plugin-jsdoc@63.0.13(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@es-joy/jsdoccomment': 0.88.0 + '@es-joy/resolve.exports': 1.2.0 + are-docs-informative: 0.0.2 + comment-parser: 1.4.7 + debug: 4.4.3 + escape-string-regexp: 4.0.0 + eslint: 10.6.0(jiti@2.7.0) + espree: 11.2.0 + esquery: 1.7.0 + html-entities: 2.6.0 + object-deep-merge: 2.0.1 + parse-imports-exports: 0.2.4 + semver: 7.8.5 + spdx-expression-parse: 4.0.0 + to-valid-identifier: 1.0.0 + transitivePeerDependencies: + - supports-color + + eslint-plugin-jsonc@3.3.0(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.7.2 + '@ota-meshi/ast-token-store': 0.3.0 + diff-sequences: 29.6.3 + eslint: 10.6.0(jiti@2.7.0) + eslint-json-compat-utils: 0.2.3(eslint@10.6.0(jiti@2.7.0))(jsonc-eslint-parser@3.1.0) + jsonc-eslint-parser: 3.1.0 + natural-compare: 1.4.0 + synckit: 0.11.13 + transitivePeerDependencies: + - '@eslint/json' + + eslint-plugin-n@18.2.1(eslint@10.6.0(jiti@2.7.0))(ts-declaration-location@1.0.7(typescript@5.9.3))(typescript@5.9.3): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + enhanced-resolve: 5.24.2 + eslint: 10.6.0(jiti@2.7.0) + eslint-plugin-es-x: 7.8.0(eslint@10.6.0(jiti@2.7.0)) + get-tsconfig: 4.14.0 + globals: 15.15.0 + globrex: 0.1.2 + ignore: 5.3.2 + semver: 7.8.5 + optionalDependencies: + ts-declaration-location: 1.0.7(typescript@5.9.3) + typescript: 5.9.3 + + eslint-plugin-no-only-tests@3.4.0: {} + + eslint-plugin-perfectionist@5.10.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3): + dependencies: + '@typescript-eslint/utils': 8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + eslint: 10.6.0(jiti@2.7.0) + natural-orderby: 5.0.0 + transitivePeerDependencies: + - supports-color + - typescript + + eslint-plugin-pnpm@1.6.1(eslint@10.6.0(jiti@2.7.0)): + dependencies: + empathic: 2.0.1 + eslint: 10.6.0(jiti@2.7.0) + jsonc-eslint-parser: 3.1.0 + pathe: 2.0.3 + pnpm-workspace-yaml: 1.6.1 + tinyglobby: 0.2.17 + yaml: 2.9.0 + yaml-eslint-parser: 2.1.0 + + eslint-plugin-regexp@3.1.1(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + '@eslint-community/regexpp': 4.12.2 + comment-parser: 1.4.7 + eslint: 10.6.0(jiti@2.7.0) + jsdoc-type-pratt-parser: 7.2.0 + refa: 0.12.1 + regexp-ast-analysis: 0.7.1 + scslre: 0.3.0 + + eslint-plugin-toml@1.4.0(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.7.2 + '@ota-meshi/ast-token-store': 0.3.0 + debug: 4.4.3 + eslint: 10.6.0(jiti@2.7.0) + toml-eslint-parser: 1.0.3 + transitivePeerDependencies: + - supports-color + + eslint-plugin-unicorn@68.0.0(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@babel/helper-validator-identifier': 7.29.7 + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + browserslist: 4.28.5 + change-case: 5.4.4 + ci-info: 4.4.0 + core-js-compat: 3.49.0 + detect-indent: 7.0.2 + eslint: 10.6.0(jiti@2.7.0) + find-up-simple: 1.0.1 + globals: 17.7.0 + indent-string: 5.0.0 + is-builtin-module: 5.0.0 + jsesc: 3.1.0 + pluralize: 8.0.0 + regjsparser: 0.13.2 + semver: 7.8.5 + strip-indent: 4.1.1 + + eslint-plugin-unused-imports@4.4.1(@typescript-eslint/eslint-plugin@8.63.0(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0)): + dependencies: + eslint: 10.6.0(jiti@2.7.0) + optionalDependencies: + '@typescript-eslint/eslint-plugin': 8.63.0(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + + eslint-plugin-vue@10.9.2(@stylistic/eslint-plugin@5.10.0(eslint@10.6.0(jiti@2.7.0)))(@typescript-eslint/parser@8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.6.0(jiti@2.7.0))(vue-eslint-parser@10.4.1(eslint@10.6.0(jiti@2.7.0))): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + eslint: 10.6.0(jiti@2.7.0) + natural-compare: 1.4.0 + nth-check: 2.1.1 + postcss-selector-parser: 7.1.4 + semver: 7.8.5 + vue-eslint-parser: 10.4.1(eslint@10.6.0(jiti@2.7.0)) + xml-name-validator: 4.0.0 + optionalDependencies: + '@stylistic/eslint-plugin': 5.10.0(eslint@10.6.0(jiti@2.7.0)) + '@typescript-eslint/parser': 8.63.0(eslint@10.6.0(jiti@2.7.0))(typescript@5.9.3) + + eslint-plugin-yml@3.6.0(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.7.2 + '@ota-meshi/ast-token-store': 0.3.0 + diff-sequences: 29.6.3 + escape-string-regexp: 5.0.0 + eslint: 10.6.0(jiti@2.7.0) + natural-compare: 1.4.0 + yaml-eslint-parser: 2.1.0 + + eslint-processor-vue-blocks@2.0.0(@vue/compiler-sfc@3.5.39)(eslint@10.6.0(jiti@2.7.0)): + dependencies: + '@vue/compiler-sfc': 3.5.39 + eslint: 10.6.0(jiti@2.7.0) + + eslint-scope@9.1.2: + dependencies: + '@types/esrecurse': 4.3.1 + '@types/estree': 1.0.9 + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.2.1: {} + + eslint-visitor-keys@5.0.1: {} + + eslint@10.6.0(jiti@2.7.0): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.6.0(jiti@2.7.0)) + '@eslint-community/regexpp': 4.12.2 + '@eslint/config-array': 0.23.5 + '@eslint/config-helpers': 0.6.0 + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.7.2 + '@humanfs/node': 0.16.8 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.4.3 + '@types/estree': 1.0.9 + ajv: 6.15.0 + cross-spawn: 7.0.6 + debug: 4.4.3 + escape-string-regexp: 4.0.0 + eslint-scope: 9.1.2 + eslint-visitor-keys: 5.0.1 + espree: 11.2.0 + esquery: 1.7.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + minimatch: 10.2.5 + natural-compare: 1.4.0 + optionator: 0.9.4 + optionalDependencies: + jiti: 2.7.0 + transitivePeerDependencies: + - supports-color + + espree@10.4.0: + dependencies: + acorn: 8.17.0 + acorn-jsx: 5.3.2(acorn@8.17.0) + eslint-visitor-keys: 4.2.1 + + espree@11.2.0: + dependencies: + acorn: 8.17.0 + acorn-jsx: 5.3.2(acorn@8.17.0) + eslint-visitor-keys: 5.0.1 + + esquery@1.7.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + estree-walker@2.0.2: {} + + estree-walker@3.0.3: + dependencies: + '@types/estree': 1.0.9 + + esutils@2.0.3: {} + + etag@1.8.1: {} + + eventemitter3@5.0.4: {} + + eventsource-parser@3.1.0: {} + + eventsource@3.0.7: + dependencies: + eventsource-parser: 3.1.0 + + expect-type@1.4.0: {} + + express-rate-limit@8.5.2(express@5.2.1): + dependencies: + express: 5.2.1 + ip-address: 10.2.0 + + express@5.2.1: + dependencies: + accepts: 2.0.0 + body-parser: 2.3.0 + content-disposition: 1.1.0 + content-type: 1.0.5 + cookie: 0.7.2 + cookie-signature: 1.2.2 + debug: 4.4.3 + depd: 2.0.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + finalhandler: 2.1.1 + fresh: 2.0.0 + http-errors: 2.0.1 + merge-descriptors: 2.0.0 + mime-types: 3.0.2 + on-finished: 2.4.1 + once: 1.4.0 + parseurl: 1.3.3 + proxy-addr: 2.0.7 + qs: 6.15.3 + range-parser: 1.3.0 + router: 2.2.0 + send: 1.2.1 + serve-static: 2.2.1 + statuses: 2.0.2 + type-is: 2.1.0 + vary: 1.1.2 + transitivePeerDependencies: + - supports-color + + exsolve@1.1.0: {} + + fast-deep-equal@3.1.3: {} + + fast-diff@1.3.0: {} + + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fast-string-truncated-width@3.0.3: {} + + fast-string-width@3.0.2: + dependencies: + fast-string-truncated-width: 3.0.3 + + fast-uri@3.1.3: {} + + fast-wrap-ansi@0.2.2: + dependencies: + fast-string-width: 3.0.2 + + fastq@1.20.1: + dependencies: + reusify: 1.1.0 + + fault@2.0.1: + dependencies: + format: 0.2.2 + + fdir@6.5.0(picomatch@4.0.5): + optionalDependencies: + picomatch: 4.0.5 + + fecha@4.2.3: {} + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + finalhandler@2.1.1: + dependencies: + debug: 4.4.3 + encodeurl: 2.0.0 + escape-html: 1.0.3 + on-finished: 2.4.1 + parseurl: 1.3.3 + statuses: 2.0.2 + transitivePeerDependencies: + - supports-color + + find-up-simple@1.0.1: {} + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@4.0.1: + dependencies: + flatted: 3.4.2 + keyv: 4.5.4 + + flatted@3.4.2: {} + + fn.name@1.1.0: {} + + follow-redirects@1.16.0: {} + + foreground-child@3.3.1: + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + + form-data@4.0.6: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + es-set-tostringtag: 2.1.0 + hasown: 2.0.4 + mime-types: 2.1.35 + + format@0.2.2: {} + + forwarded@0.2.0: {} + + fresh@2.0.0: {} + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + get-caller-file@2.0.5: {} + + get-east-asian-width@1.6.0: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.4 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.2 + + get-tsconfig@4.14.0: + dependencies: + resolve-pkg-maps: 1.0.0 + + github-slugger@2.0.0: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + glob@10.4.5: + dependencies: + foreground-child: 3.3.1 + jackspeak: 3.4.3 + minimatch: 9.0.9 + minipass: 7.1.3 + package-json-from-dist: 1.0.1 + path-scurry: 1.11.1 + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.5 + once: 1.4.0 + path-is-absolute: 1.0.1 + + globals@15.15.0: {} + + globals@17.7.0: {} + + globrex@0.1.2: {} + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + gzip-size@6.0.0: + dependencies: + duplexer: 0.1.2 + + happy-dom@20.10.6: + dependencies: + '@types/node': 26.1.1 + '@types/whatwg-mimetype': 3.0.2 + '@types/ws': 8.18.1 + buffer-image-size: 0.6.4 + entities: 7.0.1 + whatwg-mimetype: 3.0.0 + ws: 8.21.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + has-flag@4.0.0: {} + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hasown@2.0.4: + dependencies: + function-bind: 1.1.2 + + hono@4.12.29: {} + + hookable@5.5.3: {} + + html-entities@2.6.0: {} + + http-errors@2.0.1: + dependencies: + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.2 + toidentifier: 1.0.1 + + https-proxy-agent@5.0.1: + dependencies: + agent-base: 6.0.2 + debug: 4.4.3 + transitivePeerDependencies: + - supports-color + + husky@9.1.7: {} + + iconv-lite@0.7.3: + dependencies: + safer-buffer: 2.1.2 + + ignore@5.3.2: {} + + ignore@7.0.5: {} + + immutable@4.3.9: {} + + immutable@5.1.9: + optional: true + + import-meta-resolve@4.2.0: {} + + imurmurhash@0.1.4: {} + + indent-string@5.0.0: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + ini@1.3.8: {} + + ip-address@10.2.0: {} + + ipaddr.js@1.9.1: {} + + is-builtin-module@5.0.0: + dependencies: + builtin-modules: 5.3.0 + + is-extglob@2.1.1: {} + + is-fullwidth-code-point@3.0.0: {} + + is-fullwidth-code-point@5.1.0: + dependencies: + get-east-asian-width: 1.6.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-number@7.0.0: {} + + is-promise@4.0.0: {} + + is-stream@2.0.1: {} + + is-what@5.5.0: {} + + isarray@1.0.0: {} + + isexe@2.0.0: {} + + jackspeak@3.4.3: + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + + jiti@2.7.0: {} + + jose@6.2.3: {} + + js-beautify@1.15.4: + dependencies: + config-chain: 1.1.13 + editorconfig: 1.0.7 + glob: 10.4.5 + js-cookie: 3.0.8 + nopt: 7.2.1 + + js-cookie@3.0.8: {} + + js-tokens@9.0.1: {} + + js-yaml@4.3.0: + dependencies: + argparse: 2.0.1 + + jsdoc-type-pratt-parser@7.1.1: {} + + jsdoc-type-pratt-parser@7.2.0: {} + + jsesc@3.1.0: {} + + json-buffer@3.0.1: {} + + json-schema-traverse@0.4.1: {} + + json-schema-traverse@1.0.0: {} + + json-schema-typed@8.0.2: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json5@2.2.3: {} + + jsonc-eslint-parser@3.1.0: + dependencies: + acorn: 8.17.0 + eslint-visitor-keys: 5.0.1 + semver: 7.8.5 + + katex@0.16.47: + dependencies: + commander: 8.3.0 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + kuler@2.0.0: {} + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lightningcss-android-arm64@1.32.0: + optional: true + + lightningcss-darwin-arm64@1.32.0: + optional: true + + lightningcss-darwin-x64@1.32.0: + optional: true + + lightningcss-freebsd-x64@1.32.0: + optional: true + + lightningcss-linux-arm-gnueabihf@1.32.0: + optional: true + + lightningcss-linux-arm64-gnu@1.32.0: + optional: true + + lightningcss-linux-arm64-musl@1.32.0: + optional: true + + lightningcss-linux-x64-gnu@1.32.0: + optional: true + + lightningcss-linux-x64-musl@1.32.0: + optional: true + + lightningcss-win32-arm64-msvc@1.32.0: + optional: true + + lightningcss-win32-x64-msvc@1.32.0: + optional: true + + lightningcss@1.32.0: + dependencies: + detect-libc: 2.1.2 + optionalDependencies: + lightningcss-android-arm64: 1.32.0 + lightningcss-darwin-arm64: 1.32.0 + lightningcss-darwin-x64: 1.32.0 + lightningcss-freebsd-x64: 1.32.0 + lightningcss-linux-arm-gnueabihf: 1.32.0 + lightningcss-linux-arm64-gnu: 1.32.0 + lightningcss-linux-arm64-musl: 1.32.0 + lightningcss-linux-x64-gnu: 1.32.0 + lightningcss-linux-x64-musl: 1.32.0 + lightningcss-win32-arm64-msvc: 1.32.0 + lightningcss-win32-x64-msvc: 1.32.0 + optional: true + + lint-staged@17.0.8: + dependencies: + listr2: 10.2.2 + picomatch: 4.0.5 + string-argv: 0.3.2 + tinyexec: 1.2.4 + optionalDependencies: + yaml: 2.9.0 + + listr2@10.2.2: + dependencies: + cli-truncate: 5.2.0 + eventemitter3: 5.0.4 + log-update: 6.1.0 + rfdc: 1.4.1 + wrap-ansi: 10.0.0 + + local-pkg@1.2.1: + dependencies: + mlly: 1.8.2 + pkg-types: 2.3.1 + quansync: 0.2.11 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash-es@4.18.1: {} + + lodash-unified@1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.18.1)(lodash@4.18.1): + dependencies: + '@types/lodash-es': 4.17.12 + lodash: 4.18.1 + lodash-es: 4.18.1 + + lodash.escape@4.0.1: {} + + lodash.merge@4.6.2: {} + + lodash@4.18.1: {} + + log-update@6.1.0: + dependencies: + ansi-escapes: 7.3.0 + cli-cursor: 5.0.0 + slice-ansi: 7.1.2 + strip-ansi: 7.2.0 + wrap-ansi: 9.0.2 + + logform@2.7.0: + dependencies: + '@colors/colors': 1.6.0 + '@types/triple-beam': 1.3.5 + fecha: 4.2.3 + ms: 2.1.3 + safe-stable-stringify: 2.5.0 + triple-beam: 1.4.1 + + longest-streak@3.1.0: {} + + lru-cache@10.4.3: {} + + magic-regexp@0.10.0: + dependencies: + estree-walker: 3.0.3 + magic-string: 0.30.21 + mlly: 1.8.2 + regexp-tree: 0.1.27 + type-level-regexp: 0.1.17 + ufo: 1.6.4 + unplugin: 2.3.11 + + magic-string-ast@1.0.3: + dependencies: + magic-string: 0.30.21 + + magic-string@0.30.21: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + + markdown-table@3.0.4: {} + + math-intrinsics@1.1.0: {} + + mdast-util-find-and-replace@3.0.2: + dependencies: + '@types/mdast': 4.0.4 + escape-string-regexp: 5.0.0 + unist-util-is: 6.0.1 + unist-util-visit-parents: 6.0.2 + + mdast-util-from-markdown@2.0.3: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.3.0 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.2 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-frontmatter@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + escape-string-regexp: 5.0.0 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + micromark-extension-frontmatter: 2.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-autolink-literal@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-find-and-replace: 3.0.2 + micromark-util-character: 2.1.1 + + mdast-util-gfm-footnote@2.1.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + micromark-util-normalize-identifier: 2.0.1 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-strikethrough@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-table@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + markdown-table: 3.0.4 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-task-list-item@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm@3.1.0: + dependencies: + mdast-util-from-markdown: 2.0.3 + mdast-util-gfm-autolink-literal: 2.0.1 + mdast-util-gfm-footnote: 2.1.0 + mdast-util-gfm-strikethrough: 2.0.0 + mdast-util-gfm-table: 2.0.0 + mdast-util-gfm-task-list-item: 2.0.0 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-math@3.0.0: + dependencies: + '@types/hast': 3.0.5 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + longest-streak: 3.1.0 + mdast-util-from-markdown: 2.0.3 + mdast-util-to-markdown: 2.1.2 + unist-util-remove-position: 5.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-phrasing@4.1.0: + dependencies: + '@types/mdast': 4.0.4 + unist-util-is: 6.0.1 + + mdast-util-to-markdown@2.1.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.1.0 + mdast-util-to-string: 4.0.0 + micromark-util-classify-character: 2.0.1 + micromark-util-decode-string: 2.0.1 + unist-util-visit: 5.1.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + + mdn-data@2.0.14: {} + + mdn-data@2.0.28: {} + + mdn-data@2.0.30: {} + + mdn-data@2.27.1: {} + + media-typer@1.1.0: {} + + memoize-one@6.0.0: {} + + merge-descriptors@2.0.0: {} + + merge2@1.4.1: {} + + micromark-core-commonmark@2.0.3: + dependencies: + decode-named-character-reference: 1.3.0 + devlop: 1.1.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-frontmatter@2.0.0: + dependencies: + fault: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-autolink-literal@2.1.0: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-footnote@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-strikethrough@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-table@2.1.1: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-tagfilter@2.0.0: + dependencies: + micromark-util-types: 2.0.2 + + micromark-extension-gfm-task-list-item@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm@3.0.0: + dependencies: + micromark-extension-gfm-autolink-literal: 2.1.0 + micromark-extension-gfm-footnote: 2.1.0 + micromark-extension-gfm-strikethrough: 2.1.0 + micromark-extension-gfm-table: 2.1.1 + micromark-extension-gfm-tagfilter: 2.0.0 + micromark-extension-gfm-task-list-item: 2.1.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-math@3.1.0: + dependencies: + '@types/katex': 0.16.8 + devlop: 1.1.0 + katex: 0.16.47 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-destination@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-label@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-space@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.2 + + micromark-factory-title@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-whitespace@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-character@2.1.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-chunked@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-classify-character@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-combine-extensions@2.0.1: + dependencies: + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-decode-numeric-character-reference@2.0.2: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-decode-string@2.0.1: + dependencies: + decode-named-character-reference: 1.3.0 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 + + micromark-util-encode@2.0.1: {} + + micromark-util-html-tag-name@2.0.1: {} + + micromark-util-normalize-identifier@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-resolve-all@2.0.1: + dependencies: + micromark-util-types: 2.0.2 + + micromark-util-sanitize-uri@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 + + micromark-util-subtokenize@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-symbol@2.0.1: {} + + micromark-util-types@2.0.2: {} + + micromark@4.0.2: + dependencies: + '@types/debug': 4.1.13 + debug: 4.4.3 + decode-named-character-reference: 1.3.0 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + transitivePeerDependencies: + - supports-color + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.2 + + mime-db@1.52.0: {} + + mime-db@1.54.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + mime-types@3.0.2: + dependencies: + mime-db: 1.54.0 + + mimic-function@5.0.1: {} + + minimatch@10.2.5: + dependencies: + brace-expansion: 5.0.7 + + minimatch@3.1.5: + dependencies: + brace-expansion: 1.1.16 + + minimatch@9.0.9: + dependencies: + brace-expansion: 2.1.2 + + minipass@7.1.3: {} + + mitt@3.0.1: {} + + mlly@1.8.2: + dependencies: + acorn: 8.17.0 + pathe: 2.0.3 + pkg-types: 1.3.1 + ufo: 1.6.4 + + module-replacements@3.0.0: {} + + mrmime@2.0.1: {} + + ms@2.1.3: {} + + muggle-string@0.4.1: {} + + mustache@4.2.0: {} + + nanoid@3.3.15: {} + + natural-compare@1.4.0: {} + + natural-orderby@5.0.0: {} + + negotiator@1.0.0: {} + + node-addon-api@7.1.1: + optional: true + + node-fetch-native@1.6.7: {} + + node-releases@2.0.51: {} + + nopt@7.2.1: + dependencies: + abbrev: 2.0.0 + + normalize-wheel-es@1.2.0: {} + + normalize.css@8.0.1: {} + + nprogress@0.2.0: {} + + nth-check@2.1.1: + dependencies: + boolbase: 1.0.0 + + object-assign@4.1.1: {} + + object-deep-merge@2.0.1: {} + + object-inspect@1.13.4: {} + + obug@2.1.3: {} + + ofetch@1.5.1: + dependencies: + destr: 2.0.5 + node-fetch-native: 1.6.7 + ufo: 1.6.4 + + ohash@2.0.11: {} + + on-finished@2.4.1: + dependencies: + ee-first: 1.1.1 + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + one-time@1.0.0: + dependencies: + fn.name: 1.1.0 + + onetime@7.0.0: + dependencies: + mimic-function: 5.0.1 + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + oxc-parser@0.131.0: + dependencies: + '@oxc-project/types': 0.131.0 + optionalDependencies: + '@oxc-parser/binding-android-arm-eabi': 0.131.0 + '@oxc-parser/binding-android-arm64': 0.131.0 + '@oxc-parser/binding-darwin-arm64': 0.131.0 + '@oxc-parser/binding-darwin-x64': 0.131.0 + '@oxc-parser/binding-freebsd-x64': 0.131.0 + '@oxc-parser/binding-linux-arm-gnueabihf': 0.131.0 + '@oxc-parser/binding-linux-arm-musleabihf': 0.131.0 + '@oxc-parser/binding-linux-arm64-gnu': 0.131.0 + '@oxc-parser/binding-linux-arm64-musl': 0.131.0 + '@oxc-parser/binding-linux-ppc64-gnu': 0.131.0 + '@oxc-parser/binding-linux-riscv64-gnu': 0.131.0 + '@oxc-parser/binding-linux-riscv64-musl': 0.131.0 + '@oxc-parser/binding-linux-s390x-gnu': 0.131.0 + '@oxc-parser/binding-linux-x64-gnu': 0.131.0 + '@oxc-parser/binding-linux-x64-musl': 0.131.0 + '@oxc-parser/binding-openharmony-arm64': 0.131.0 + '@oxc-parser/binding-wasm32-wasi': 0.131.0 + '@oxc-parser/binding-win32-arm64-msvc': 0.131.0 + '@oxc-parser/binding-win32-ia32-msvc': 0.131.0 + '@oxc-parser/binding-win32-x64-msvc': 0.131.0 + + oxc-walker@0.7.0(oxc-parser@0.131.0): + dependencies: + magic-regexp: 0.10.0 + oxc-parser: 0.131.0 + + oxfmt@0.35.0: + dependencies: + tinypool: 2.1.0 + optionalDependencies: + '@oxfmt/binding-android-arm-eabi': 0.35.0 + '@oxfmt/binding-android-arm64': 0.35.0 + '@oxfmt/binding-darwin-arm64': 0.35.0 + '@oxfmt/binding-darwin-x64': 0.35.0 + '@oxfmt/binding-freebsd-x64': 0.35.0 + '@oxfmt/binding-linux-arm-gnueabihf': 0.35.0 + '@oxfmt/binding-linux-arm-musleabihf': 0.35.0 + '@oxfmt/binding-linux-arm64-gnu': 0.35.0 + '@oxfmt/binding-linux-arm64-musl': 0.35.0 + '@oxfmt/binding-linux-ppc64-gnu': 0.35.0 + '@oxfmt/binding-linux-riscv64-gnu': 0.35.0 + '@oxfmt/binding-linux-riscv64-musl': 0.35.0 + '@oxfmt/binding-linux-s390x-gnu': 0.35.0 + '@oxfmt/binding-linux-x64-gnu': 0.35.0 + '@oxfmt/binding-linux-x64-musl': 0.35.0 + '@oxfmt/binding-openharmony-arm64': 0.35.0 + '@oxfmt/binding-win32-arm64-msvc': 0.35.0 + '@oxfmt/binding-win32-ia32-msvc': 0.35.0 + '@oxfmt/binding-win32-x64-msvc': 0.35.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + package-json-from-dist@1.0.1: {} + + package-manager-detector@1.7.0: {} + + parse-gitignore@2.0.0: {} + + parse-imports-exports@0.2.4: + dependencies: + parse-statements: 1.0.11 + + parse-statements@1.0.11: {} + + parseurl@1.3.3: {} + + path-browserify@1.0.1: {} + + path-exists@4.0.0: {} + + path-is-absolute@1.0.1: {} + + path-key@3.1.1: {} + + path-scurry@1.11.1: + dependencies: + lru-cache: 10.4.3 + minipass: 7.1.3 + + path-to-regexp@8.4.2: {} + + pathe@2.0.3: {} + + perfect-debounce@1.0.0: {} + + perfect-debounce@2.1.0: {} + + picocolors@1.1.1: {} + + picomatch@2.3.2: {} + + picomatch@4.0.5: {} + + pinia@3.0.4(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)): + dependencies: + '@vue/devtools-api': 7.7.10 + vue: 3.5.39(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + pkce-challenge@5.0.1: {} + + pkg-types@1.3.1: + dependencies: + confbox: 0.1.8 + mlly: 1.8.2 + pathe: 2.0.3 + + pkg-types@2.3.1: + dependencies: + confbox: 0.2.4 + exsolve: 1.1.0 + pathe: 2.0.3 + + pluralize@8.0.0: {} + + pnpm-workspace-yaml@1.6.1: + dependencies: + yaml: 2.9.0 + + postcss-selector-parser@7.1.4: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss@8.5.16: + dependencies: + nanoid: 3.3.15 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + prelude-ls@1.2.1: {} + + prettier-linter-helpers@1.0.1: + dependencies: + fast-diff: 1.3.0 + + prettier@3.9.5: {} + + prettysize@2.0.0: {} + + process-nextick-args@2.0.1: {} + + proto-list@1.2.4: {} + + proxy-addr@2.0.7: + dependencies: + forwarded: 0.2.0 + ipaddr.js: 1.9.1 + + proxy-from-env@2.1.0: {} + + punycode@2.3.1: {} + + qs@6.15.3: + dependencies: + es-define-property: 1.0.1 + side-channel: 1.1.1 + + quansync@0.2.11: {} + + quansync@1.0.0: {} + + queue-microtask@1.2.3: {} + + range-parser@1.3.0: {} + + raw-body@3.0.2: + dependencies: + bytes: 3.1.2 + http-errors: 2.0.1 + iconv-lite: 0.7.3 + unpipe: 1.0.0 + + readable-stream@2.3.8: + dependencies: + core-util-is: 1.0.3 + inherits: 2.0.4 + isarray: 1.0.0 + process-nextick-args: 2.0.1 + safe-buffer: 5.1.2 + string_decoder: 1.1.1 + util-deprecate: 1.0.2 + + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + + readdirp@5.0.0: {} + + refa@0.12.1: + dependencies: + '@eslint-community/regexpp': 4.12.2 + + regexp-ast-analysis@0.7.1: + dependencies: + '@eslint-community/regexpp': 4.12.2 + refa: 0.12.1 + + regexp-tree@0.1.27: {} + + regjsparser@0.13.2: + dependencies: + jsesc: 3.1.0 + + remove-trailing-separator@1.1.0: {} + + replace-ext@1.0.1: {} + + require-directory@2.1.1: {} + + require-from-string@2.0.2: {} + + reserved-identifiers@1.2.0: {} + + resolve-pkg-maps@1.0.0: {} + + restore-cursor@5.1.0: + dependencies: + onetime: 7.0.0 + signal-exit: 4.1.0 + + reusify@1.1.0: {} + + rfdc@1.4.1: {} + + rolldown@1.1.5: + dependencies: + '@oxc-project/types': 0.139.0 + '@rolldown/pluginutils': 1.0.1 + optionalDependencies: + '@rolldown/binding-android-arm64': 1.1.5 + '@rolldown/binding-darwin-arm64': 1.1.5 + '@rolldown/binding-darwin-x64': 1.1.5 + '@rolldown/binding-freebsd-x64': 1.1.5 + '@rolldown/binding-linux-arm-gnueabihf': 1.1.5 + '@rolldown/binding-linux-arm64-gnu': 1.1.5 + '@rolldown/binding-linux-arm64-musl': 1.1.5 + '@rolldown/binding-linux-ppc64-gnu': 1.1.5 + '@rolldown/binding-linux-s390x-gnu': 1.1.5 + '@rolldown/binding-linux-x64-gnu': 1.1.5 + '@rolldown/binding-linux-x64-musl': 1.1.5 + '@rolldown/binding-openharmony-arm64': 1.1.5 + '@rolldown/binding-wasm32-wasi': 1.1.5 + '@rolldown/binding-win32-arm64-msvc': 1.1.5 + '@rolldown/binding-win32-x64-msvc': 1.1.5 + optional: true + + rollup@4.62.2: + dependencies: + '@types/estree': 1.0.9 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.62.2 + '@rollup/rollup-android-arm64': 4.62.2 + '@rollup/rollup-darwin-arm64': 4.62.2 + '@rollup/rollup-darwin-x64': 4.62.2 + '@rollup/rollup-freebsd-arm64': 4.62.2 + '@rollup/rollup-freebsd-x64': 4.62.2 + '@rollup/rollup-linux-arm-gnueabihf': 4.62.2 + '@rollup/rollup-linux-arm-musleabihf': 4.62.2 + '@rollup/rollup-linux-arm64-gnu': 4.62.2 + '@rollup/rollup-linux-arm64-musl': 4.62.2 + '@rollup/rollup-linux-loong64-gnu': 4.62.2 + '@rollup/rollup-linux-loong64-musl': 4.62.2 + '@rollup/rollup-linux-ppc64-gnu': 4.62.2 + '@rollup/rollup-linux-ppc64-musl': 4.62.2 + '@rollup/rollup-linux-riscv64-gnu': 4.62.2 + '@rollup/rollup-linux-riscv64-musl': 4.62.2 + '@rollup/rollup-linux-s390x-gnu': 4.62.2 + '@rollup/rollup-linux-x64-gnu': 4.62.2 + '@rollup/rollup-linux-x64-musl': 4.62.2 + '@rollup/rollup-openbsd-x64': 4.62.2 + '@rollup/rollup-openharmony-arm64': 4.62.2 + '@rollup/rollup-win32-arm64-msvc': 4.62.2 + '@rollup/rollup-win32-ia32-msvc': 4.62.2 + '@rollup/rollup-win32-x64-gnu': 4.62.2 + '@rollup/rollup-win32-x64-msvc': 4.62.2 + fsevents: 2.3.3 + + router@2.2.0: + dependencies: + debug: 4.4.3 + depd: 2.0.0 + is-promise: 4.0.0 + parseurl: 1.3.3 + path-to-regexp: 8.4.2 + transitivePeerDependencies: + - supports-color + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + rxjs@7.8.2: + dependencies: + tslib: 2.8.1 + + safe-buffer@5.1.2: {} + + safe-buffer@5.2.1: {} + + safe-stable-stringify@2.5.0: {} + + safer-buffer@2.1.2: {} + + sass-embedded-android-arm64@1.78.0: + optional: true + + sass-embedded-android-arm@1.78.0: + optional: true + + sass-embedded-android-ia32@1.78.0: + optional: true + + sass-embedded-android-riscv64@1.78.0: + optional: true + + sass-embedded-android-x64@1.78.0: + optional: true + + sass-embedded-darwin-arm64@1.78.0: + optional: true + + sass-embedded-darwin-x64@1.78.0: + optional: true + + sass-embedded-linux-arm64@1.78.0: + optional: true + + sass-embedded-linux-arm@1.78.0: + optional: true + + sass-embedded-linux-ia32@1.78.0: + optional: true + + sass-embedded-linux-musl-arm64@1.78.0: + optional: true + + sass-embedded-linux-musl-arm@1.78.0: + optional: true + + sass-embedded-linux-musl-ia32@1.78.0: + optional: true + + sass-embedded-linux-musl-riscv64@1.78.0: + optional: true + + sass-embedded-linux-musl-x64@1.78.0: + optional: true + + sass-embedded-linux-riscv64@1.78.0: + optional: true + + sass-embedded-linux-x64@1.78.0: + optional: true + + sass-embedded-win32-arm64@1.78.0: + optional: true + + sass-embedded-win32-ia32@1.78.0: + optional: true + + sass-embedded-win32-x64@1.78.0: + optional: true + + sass-embedded@1.78.0: + dependencies: + '@bufbuild/protobuf': 1.10.1 + buffer-builder: 0.2.0 + immutable: 4.3.9 + rxjs: 7.8.2 + supports-color: 8.1.1 + varint: 6.0.0 + optionalDependencies: + sass-embedded-android-arm: 1.78.0 + sass-embedded-android-arm64: 1.78.0 + sass-embedded-android-ia32: 1.78.0 + sass-embedded-android-riscv64: 1.78.0 + sass-embedded-android-x64: 1.78.0 + sass-embedded-darwin-arm64: 1.78.0 + sass-embedded-darwin-x64: 1.78.0 + sass-embedded-linux-arm: 1.78.0 + sass-embedded-linux-arm64: 1.78.0 + sass-embedded-linux-ia32: 1.78.0 + sass-embedded-linux-musl-arm: 1.78.0 + sass-embedded-linux-musl-arm64: 1.78.0 + sass-embedded-linux-musl-ia32: 1.78.0 + sass-embedded-linux-musl-riscv64: 1.78.0 + sass-embedded-linux-musl-x64: 1.78.0 + sass-embedded-linux-riscv64: 1.78.0 + sass-embedded-linux-x64: 1.78.0 + sass-embedded-win32-arm64: 1.78.0 + sass-embedded-win32-ia32: 1.78.0 + sass-embedded-win32-x64: 1.78.0 + + sass@1.100.0: + dependencies: + chokidar: 5.0.0 + immutable: 5.1.9 + source-map-js: 1.2.1 + optionalDependencies: + '@parcel/watcher': 2.5.6 + optional: true + + sax@1.6.0: {} + + screenfull@6.0.2: {} + + scslre@0.3.0: + dependencies: + '@eslint-community/regexpp': 4.12.2 + refa: 0.12.1 + regexp-ast-analysis: 0.7.1 + + scule@1.3.0: {} + + semver@7.8.5: {} + + send@1.2.1: + dependencies: + debug: 4.4.3 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + fresh: 2.0.0 + http-errors: 2.0.1 + mime-types: 3.0.2 + ms: 2.1.3 + on-finished: 2.4.1 + range-parser: 1.3.0 + statuses: 2.0.2 + transitivePeerDependencies: + - supports-color + + serve-static@2.2.1: + dependencies: + encodeurl: 2.0.0 + escape-html: 1.0.3 + parseurl: 1.3.3 + send: 1.2.1 + transitivePeerDependencies: + - supports-color + + setprototypeof@1.2.0: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + side-channel-list@1.0.1: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.1: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.1 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + siginfo@2.0.0: {} + + signal-exit@4.1.0: {} + + sirv@3.0.2: + dependencies: + '@polka/url': 1.0.0-next.29 + mrmime: 2.0.1 + totalist: 3.0.1 + + sisteransi@1.0.5: {} + + slice-ansi@7.1.2: + dependencies: + ansi-styles: 6.2.3 + is-fullwidth-code-point: 5.1.0 + + slice-ansi@8.0.0: + dependencies: + ansi-styles: 6.2.3 + is-fullwidth-code-point: 5.1.0 + + source-map-js@1.2.1: {} + + source-map@0.6.1: {} + + spdx-exceptions@2.5.0: {} + + spdx-expression-parse@4.0.0: + dependencies: + spdx-exceptions: 2.5.0 + spdx-license-ids: 3.0.23 + + spdx-license-ids@3.0.23: {} + + speakingurl@14.0.1: {} + + stable@0.1.8: {} + + stack-trace@0.0.10: {} + + stackback@0.0.2: {} + + statuses@2.0.2: {} + + std-env@4.2.0: {} + + string-argv@0.3.2: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@5.1.2: + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.2.0 + + string-width@7.2.0: + dependencies: + emoji-regex: 10.6.0 + get-east-asian-width: 1.6.0 + strip-ansi: 7.2.0 + + string-width@8.2.2: + dependencies: + get-east-asian-width: 1.6.0 + strip-ansi: 7.2.0 + + string_decoder@1.1.1: + dependencies: + safe-buffer: 5.1.2 + + string_decoder@1.3.0: + dependencies: + safe-buffer: 5.2.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.2.0: + dependencies: + ansi-regex: 6.2.2 + + strip-indent@4.1.1: {} + + strip-literal@3.1.0: + dependencies: + js-tokens: 9.0.1 + + superjson@2.2.6: + dependencies: + copy-anything: 4.0.5 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + svg-sprite@2.0.4: + dependencies: + '@resvg/resvg-js': 2.6.2 + '@xmldom/xmldom': 0.8.13 + async: 3.2.6 + css-selector-parser: 1.4.1 + csso: 4.2.0 + cssom: 0.5.0 + glob: 7.2.3 + js-yaml: 4.3.0 + lodash.escape: 4.0.1 + lodash.merge: 4.6.2 + mustache: 4.2.0 + prettysize: 2.0.0 + svgo: 2.8.2 + vinyl: 2.2.1 + winston: 3.19.0 + xpath: 0.0.34 + yargs: 17.7.3 + + svgo@2.8.2: + dependencies: + commander: 7.2.0 + css-select: 4.3.0 + css-tree: 1.1.3 + csso: 4.2.0 + picocolors: 1.1.1 + sax: 1.6.0 + stable: 0.1.8 + + svgo@3.3.3: + dependencies: + commander: 7.2.0 + css-select: 5.2.2 + css-tree: 2.3.1 + css-what: 6.2.2 + csso: 5.0.5 + picocolors: 1.1.1 + sax: 1.6.0 + + synckit@0.11.13: + dependencies: + '@pkgr/core': 0.3.6 + + tapable@2.3.3: {} + + text-hex@1.0.0: {} + + tinybench@2.9.0: {} + + tinyexec@1.2.4: {} + + tinyglobby@0.2.17: + dependencies: + fdir: 6.5.0(picomatch@4.0.5) + picomatch: 4.0.5 + + tinypool@2.1.0: {} + + tinyrainbow@3.1.0: {} + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + to-valid-identifier@1.0.0: + dependencies: + '@sindresorhus/base62': 1.0.0 + reserved-identifiers: 1.2.0 + + toidentifier@1.0.1: {} + + toml-eslint-parser@1.0.3: + dependencies: + eslint-visitor-keys: 5.0.1 + + totalist@3.0.1: {} + + triple-beam@1.4.1: {} + + ts-api-utils@2.5.0(typescript@5.9.3): + dependencies: + typescript: 5.9.3 + + ts-declaration-location@1.0.7(typescript@5.9.3): + dependencies: + picomatch: 4.0.5 + typescript: 5.9.3 + optional: true + + tslib@2.8.1: {} + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + type-is@2.1.0: + dependencies: + content-type: 2.0.0 + media-typer: 1.1.0 + mime-types: 3.0.2 + + type-level-regexp@0.1.17: {} + + typescript@5.9.3: {} + + ufo@1.6.4: {} + + unconfig-core@7.5.0: + dependencies: + '@quansync/fs': 1.0.0 + quansync: 1.0.0 + + unconfig@7.5.0: + dependencies: + '@quansync/fs': 1.0.0 + defu: 6.1.7 + jiti: 2.7.0 + quansync: 1.0.0 + unconfig-core: 7.5.0 + + undici-types@8.3.0: {} + + unimport@5.7.0: + dependencies: + acorn: 8.17.0 + escape-string-regexp: 5.0.0 + estree-walker: 3.0.3 + local-pkg: 1.2.1 + magic-string: 0.30.21 + mlly: 1.8.2 + pathe: 2.0.3 + picomatch: 4.0.5 + pkg-types: 2.3.1 + scule: 1.3.0 + strip-literal: 3.1.0 + tinyglobby: 0.2.17 + unplugin: 2.3.11 + unplugin-utils: 0.3.2 + + unist-util-is@6.0.1: + dependencies: + '@types/unist': 3.0.3 + + unist-util-remove-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-visit: 5.1.0 + + unist-util-stringify-position@4.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-parents@6.0.2: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + + unist-util-visit@5.1.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + unist-util-visit-parents: 6.0.2 + + unocss@66.7.5(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)): + dependencies: + '@unocss/cli': 66.7.5 + '@unocss/core': 66.7.5 + '@unocss/preset-attributify': 66.7.5 + '@unocss/preset-icons': 66.7.5 + '@unocss/preset-mini': 66.7.5 + '@unocss/preset-tagify': 66.7.5 + '@unocss/preset-typography': 66.7.5 + '@unocss/preset-uno': 66.7.5 + '@unocss/preset-web-fonts': 66.7.5 + '@unocss/preset-wind': 66.7.5 + '@unocss/preset-wind3': 66.7.5 + '@unocss/preset-wind4': 66.7.5 + '@unocss/transformer-attributify-jsx': 66.7.5 + '@unocss/transformer-compile-class': 66.7.5 + '@unocss/transformer-directives': 66.7.5 + '@unocss/transformer-variant-group': 66.7.5 + '@unocss/vite': 66.7.5(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)) + transitivePeerDependencies: + - vite + + unpipe@1.0.0: {} + + unplugin-auto-import@21.0.0(@vueuse/core@14.3.0(vue@3.5.39(typescript@5.9.3))): + dependencies: + local-pkg: 1.2.1 + magic-string: 0.30.21 + picomatch: 4.0.5 + unimport: 5.7.0 + unplugin: 2.3.11 + unplugin-utils: 0.3.2 + optionalDependencies: + '@vueuse/core': 14.3.0(vue@3.5.39(typescript@5.9.3)) + + unplugin-svg-component@0.12.6: + dependencies: + cors: 2.8.6 + etag: 1.8.1 + fast-glob: 3.3.3 + local-pkg: 1.2.1 + picocolors: 1.1.1 + svg-sprite: 2.0.4 + svgo: 3.3.3 + unplugin: 1.16.1 + + unplugin-utils@0.3.2: + dependencies: + pathe: 2.0.3 + picomatch: 4.0.5 + + unplugin-vue-components@32.1.0(esbuild@0.27.2)(rolldown@1.1.5)(rollup@4.62.2)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))(vue@3.5.39(typescript@5.9.3)): + dependencies: + chokidar: 5.0.0 + local-pkg: 1.2.1 + magic-string: 0.30.21 + mlly: 1.8.2 + obug: 2.1.3 + picomatch: 4.0.5 + tinyglobby: 0.2.17 + unplugin: 3.3.0(esbuild@0.27.2)(rolldown@1.1.5)(rollup@4.62.2)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)) + unplugin-utils: 0.3.2 + vue: 3.5.39(typescript@5.9.3) + transitivePeerDependencies: + - '@farmfe/core' + - '@rspack/core' + - bun-types-no-globals + - esbuild + - rolldown + - rollup + - unloader + - vite + - webpack + + unplugin@1.16.1: + dependencies: + acorn: 8.17.0 + webpack-virtual-modules: 0.6.2 + + unplugin@2.3.11: + dependencies: + '@jridgewell/remapping': 2.3.5 + acorn: 8.17.0 + picomatch: 4.0.5 + webpack-virtual-modules: 0.6.2 + + unplugin@3.3.0(esbuild@0.27.2)(rolldown@1.1.5)(rollup@4.62.2)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)): + dependencies: + '@jridgewell/remapping': 2.3.5 + picomatch: 4.0.5 + webpack-virtual-modules: 0.6.2 + optionalDependencies: + esbuild: 0.27.2 + rolldown: 1.1.5 + rollup: 4.62.2 + vite: 7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0) + + update-browserslist-db@1.2.3(browserslist@4.28.5): + dependencies: + browserslist: 4.28.5 + escalade: 3.2.0 + picocolors: 1.1.1 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + util-deprecate@1.0.2: {} + + varint@6.0.0: {} + + vary@1.1.2: {} + + vinyl@2.2.1: + dependencies: + clone: 2.1.2 + clone-buffer: 1.0.0 + clone-stats: 1.0.0 + cloneable-readable: 1.1.3 + remove-trailing-separator: 1.1.0 + replace-ext: 1.0.1 + + vite-plugin-mcp@0.3.2(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)): + dependencies: + '@modelcontextprotocol/sdk': 1.29.0(zod@3.25.76) + ansis: 4.3.1 + debug: 4.4.3 + pathe: 2.0.3 + vite: 7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0) + zod: 3.25.76 + transitivePeerDependencies: + - '@cfworker/json-schema' + - supports-color + + vite-svg-loader@5.1.1(vue@3.5.39(typescript@5.9.3)): + dependencies: + debug: 4.4.3 + svgo: 3.3.3 + vue: 3.5.39(typescript@5.9.3) + transitivePeerDependencies: + - supports-color + + vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0): + dependencies: + esbuild: 0.27.2 + fdir: 6.5.0(picomatch@4.0.5) + picomatch: 4.0.5 + postcss: 8.5.16 + rollup: 4.62.2 + tinyglobby: 0.2.17 + optionalDependencies: + '@types/node': 26.1.1 + fsevents: 2.3.3 + jiti: 2.7.0 + lightningcss: 1.32.0 + sass: 1.100.0 + sass-embedded: 1.78.0 + yaml: 2.9.0 + + vitest@4.1.10(@types/node@26.1.1)(happy-dom@20.10.6)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)): + dependencies: + '@vitest/expect': 4.1.10 + '@vitest/mocker': 4.1.10(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)) + '@vitest/pretty-format': 4.1.10 + '@vitest/runner': 4.1.10 + '@vitest/snapshot': 4.1.10 + '@vitest/spy': 4.1.10 + '@vitest/utils': 4.1.10 + es-module-lexer: 2.3.0 + expect-type: 1.4.0 + magic-string: 0.30.21 + obug: 2.1.3 + pathe: 2.0.3 + picomatch: 4.0.5 + std-env: 4.2.0 + tinybench: 2.9.0 + tinyexec: 1.2.4 + tinyglobby: 0.2.17 + tinyrainbow: 3.1.0 + vite: 7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 26.1.1 + happy-dom: 20.10.6 + transitivePeerDependencies: + - msw + + vscode-uri@3.1.0: {} + + vue-component-type-helpers@3.3.7: {} + + vue-eslint-parser@10.4.1(eslint@10.6.0(jiti@2.7.0)): + dependencies: + debug: 4.4.3 + eslint: 10.6.0(jiti@2.7.0) + eslint-scope: 9.1.2 + eslint-visitor-keys: 5.0.1 + espree: 11.2.0 + esquery: 1.7.0 + semver: 7.8.5 + transitivePeerDependencies: + - supports-color + + vue-router@5.1.0(@vue/compiler-sfc@3.5.39)(esbuild@0.27.2)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)))(rolldown@1.1.5)(rollup@4.62.2)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0))(vue@3.5.39(typescript@5.9.3)): + dependencies: + '@babel/generator': 8.0.0 + '@vue-macros/common': 3.1.2(vue@3.5.39(typescript@5.9.3)) + '@vue/devtools-api': 8.1.5 + ast-walker-scope: 0.9.0 + chokidar: 5.0.0 + json5: 2.2.3 + local-pkg: 1.2.1 + magic-string: 0.30.21 + mlly: 1.8.2 + muggle-string: 0.4.1 + pathe: 2.0.3 + picomatch: 4.0.5 + scule: 1.3.0 + tinyglobby: 0.2.17 + unplugin: 3.3.0(esbuild@0.27.2)(rolldown@1.1.5)(rollup@4.62.2)(vite@7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0)) + unplugin-utils: 0.3.2 + vue: 3.5.39(typescript@5.9.3) + yaml: 2.9.0 + optionalDependencies: + '@vue/compiler-sfc': 3.5.39 + pinia: 3.0.4(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)) + vite: 7.3.6(@types/node@26.1.1)(jiti@2.7.0)(lightningcss@1.32.0)(sass-embedded@1.78.0)(sass@1.100.0)(yaml@2.9.0) + transitivePeerDependencies: + - '@farmfe/core' + - '@rspack/core' + - bun-types-no-globals + - esbuild + - rolldown + - rollup + - unloader + - webpack + + vue-tsc@3.3.7(typescript@5.9.3): + dependencies: + '@volar/typescript': 2.4.28 + '@vue/language-core': 3.3.7 + typescript: 5.9.3 + + vue@3.5.39(typescript@5.9.3): + dependencies: + '@vue/compiler-dom': 3.5.39 + '@vue/compiler-sfc': 3.5.39 + '@vue/runtime-dom': 3.5.39 + '@vue/server-renderer': 3.5.39(vue@3.5.39(typescript@5.9.3)) + '@vue/shared': 3.5.39 + optionalDependencies: + typescript: 5.9.3 + + vxe-table@4.6.25(vue@3.5.39(typescript@5.9.3)): + dependencies: + dom-zindex: 1.0.7 + vue: 3.5.39(typescript@5.9.3) + xe-utils: 3.9.1 + + webpack-virtual-modules@0.6.2: {} + + whatwg-mimetype@3.0.0: {} + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + why-is-node-running@2.3.0: + dependencies: + siginfo: 2.0.0 + stackback: 0.0.2 + + winston-transport@4.9.0: + dependencies: + logform: 2.7.0 + readable-stream: 3.6.2 + triple-beam: 1.4.1 + + winston@3.19.0: + dependencies: + '@colors/colors': 1.6.0 + '@dabh/diagnostics': 2.0.8 + async: 3.2.6 + is-stream: 2.0.1 + logform: 2.7.0 + one-time: 1.0.0 + readable-stream: 3.6.2 + safe-stable-stringify: 2.5.0 + stack-trace: 0.0.10 + triple-beam: 1.4.1 + winston-transport: 4.9.0 + + word-wrap@1.2.5: {} + + wrap-ansi@10.0.0: + dependencies: + ansi-styles: 6.2.3 + string-width: 8.2.2 + strip-ansi: 7.2.0 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@8.1.0: + dependencies: + ansi-styles: 6.2.3 + string-width: 5.1.2 + strip-ansi: 7.2.0 + + wrap-ansi@9.0.2: + dependencies: + ansi-styles: 6.2.3 + string-width: 7.2.0 + strip-ansi: 7.2.0 + + wrappy@1.0.2: {} + + ws@8.21.0: {} + + xe-utils@3.9.1: {} + + xml-name-validator@4.0.0: {} + + xpath@0.0.34: {} + + y18n@5.0.8: {} + + yaml-eslint-parser@2.1.0: + dependencies: + eslint-visitor-keys: 5.0.1 + yaml: 2.9.0 + + yaml@2.9.0: {} + + yargs-parser@21.1.1: {} + + yargs@17.7.3: + 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: {} + + zod-to-json-schema@3.25.2(zod@3.25.76): + dependencies: + zod: 3.25.76 + + zod@3.25.76: {} + + zwitch@2.0.4: {} diff --git a/public/app-loading.css b/public/app-loading.css new file mode 100644 index 0000000..13fdbc7 --- /dev/null +++ b/public/app-loading.css @@ -0,0 +1,45 @@ +/* 白屏阶段会执行的 CSS 加载动画 */ + +#app-loading { + position: relative; + top: 45vh; + margin: 0 auto; + color: #409eff; + font-size: 12px; +} + +#app-loading, +#app-loading::before, +#app-loading::after { + width: 2em; + height: 2em; + border-radius: 50%; + animation: 2s ease-in-out infinite app-loading-animation; +} + +#app-loading::before, +#app-loading::after { + content: ""; + position: absolute; +} + +#app-loading::before { + left: -4em; + animation-delay: -0.2s; +} + +#app-loading::after { + left: 4em; + animation-delay: 0.2s; +} + +@keyframes app-loading-animation { + 0%, + 80%, + 100% { + box-shadow: 0 2em 0 -2em; + } + 40% { + box-shadow: 0 2em 0 0; + } +} diff --git a/public/detect-ie.js b/public/detect-ie.js new file mode 100644 index 0000000..6dc2f08 --- /dev/null +++ b/public/detect-ie.js @@ -0,0 +1,4 @@ +// Tip: Simple judgments may not fully cover +if (/MSIE\s|Trident\//.test(navigator.userAgent)) { + document.body.innerHTML = "Sorry, this browser is currently not supported. We recommend using the latest version of a modern browser. For example, Chrome/Firefox/Edge." +} diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c641cd002918bdb009192b6b74f55e42bb97adc9 GIT binary patch literal 8627 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 R=UV|lPD)v_M%*;ye*o|wcIE&8 literal 0 HcmV?d00001 diff --git a/skills-lock.json b/skills-lock.json new file mode 100644 index 0000000..0729caa --- /dev/null +++ b/skills-lock.json @@ -0,0 +1,59 @@ +{ + "version": 1, + "skills": { + "pinia": { + "source": "antfu/skills", + "sourceType": "github", + "skillPath": "skills/pinia/SKILL.md", + "computedHash": "897b6b0982956f41f5cc85128ca638b625e1b3c8bc619e303cd1e7661c95b7de" + }, + "pnpm": { + "source": "antfu/skills", + "sourceType": "github", + "skillPath": "skills/pnpm/SKILL.md", + "computedHash": "2ec08c851c6f901d4ed72c21b826416ed074a487db65662b36249418afd728bf" + }, + "unocss": { + "source": "antfu/skills", + "sourceType": "github", + "skillPath": "skills/unocss/SKILL.md", + "computedHash": "4b7a9f7b89994d5aef70b9d55cb7f65d6e80cea437d5786cd33bb5cf7231c7c4" + }, + "vite": { + "source": "antfu/skills", + "sourceType": "github", + "skillPath": "skills/vite/SKILL.md", + "computedHash": "867ff66238f3152e9c494339ad08dc432dd0df5bcf5cc7a00b61a72b580eb908" + }, + "vitest": { + "source": "antfu/skills", + "sourceType": "github", + "skillPath": "skills/vitest/SKILL.md", + "computedHash": "943d436114c677802426741980146c07560bf375297666b03062444f4b98a785" + }, + "vue": { + "source": "antfu/skills", + "sourceType": "github", + "skillPath": "skills/vue/SKILL.md", + "computedHash": "9c241141e07e836e4f0537c63e8f929fba3767c2997250be38e699f19b75e3f2" + }, + "vue-best-practices": { + "source": "antfu/skills", + "sourceType": "github", + "skillPath": "skills/vue-best-practices/SKILL.md", + "computedHash": "d7d22c8cb343583c3904692c4d1d7b50382945e433e4f6e053f4aabb9846cbc3" + }, + "vue-router-best-practices": { + "source": "antfu/skills", + "sourceType": "github", + "skillPath": "skills/vue-router-best-practices/SKILL.md", + "computedHash": "e27384f4e6c8c70a612e76b74e4387efb8e291a6a1e3aa14a69102a4ce4b4654" + }, + "vue-testing-best-practices": { + "source": "antfu/skills", + "sourceType": "github", + "skillPath": "skills/vue-testing-best-practices/SKILL.md", + "computedHash": "18c7d8f42f350f927e37de055e34c97b8cfb9f79c12cf942f7f3d2a0821057b5" + } + } +} diff --git a/src/App.vue b/src/App.vue new file mode 100644 index 0000000..22a59a8 --- /dev/null +++ b/src/App.vue @@ -0,0 +1,32 @@ + + + diff --git a/src/common/apis/tables/index.ts b/src/common/apis/tables/index.ts new file mode 100644 index 0000000..c6f29f4 --- /dev/null +++ b/src/common/apis/tables/index.ts @@ -0,0 +1,37 @@ +import type * as Tables from "./type" +import { request } from "@/http/axios" + +/** 增 */ +export function createTableDataApi(data: Tables.CreateOrUpdateTableRequestData) { + return request({ + url: "tables", + method: "post", + data + }) +} + +/** 删 */ +export function deleteTableDataApi(id: number) { + return request({ + url: `tables/${id}`, + method: "delete" + }) +} + +/** 改 */ +export function updateTableDataApi(data: Tables.CreateOrUpdateTableRequestData) { + return request({ + url: "tables", + method: "put", + data + }) +} + +/** 查 */ +export function getTableDataApi(params: Tables.TableRequestData) { + return request({ + url: "tables", + method: "get", + params + }) +} diff --git a/src/common/apis/tables/type.ts b/src/common/apis/tables/type.ts new file mode 100644 index 0000000..6328e48 --- /dev/null +++ b/src/common/apis/tables/type.ts @@ -0,0 +1,31 @@ +export interface CreateOrUpdateTableRequestData { + id?: number + username: string + password?: string +} + +export interface TableRequestData { + /** 当前页码 */ + currentPage: number + /** 查询条数 */ + size: number + /** 查询参数:用户名 */ + username?: string + /** 查询参数:手机号 */ + phone?: string +} + +export interface TableData { + createTime: string + email: string + id: number + phone: string + roles: string + status: boolean + username: string +} + +export type TableResponseData = ApiResponseData<{ + list: TableData[] + total: number +}> diff --git a/src/common/apis/users/index.ts b/src/common/apis/users/index.ts new file mode 100644 index 0000000..ccd9f72 --- /dev/null +++ b/src/common/apis/users/index.ts @@ -0,0 +1,10 @@ +import type * as Users from "./type" +import { request } from "@/http/axios" + +/** 获取当前登录用户详情 */ +export function getCurrentUserApi() { + return request({ + url: "users/me", + method: "get" + }) +} diff --git a/src/common/apis/users/type.ts b/src/common/apis/users/type.ts new file mode 100644 index 0000000..0b0dfa3 --- /dev/null +++ b/src/common/apis/users/type.ts @@ -0,0 +1,5 @@ +export type CurrentUserResponseData = ApiResponseData<{ + username: string + roles: string[] + permissions?: string[] +}> diff --git a/src/common/assets/icons/dashboard.svg b/src/common/assets/icons/dashboard.svg new file mode 100644 index 0000000..c8863a0 --- /dev/null +++ b/src/common/assets/icons/dashboard.svg @@ -0,0 +1 @@ + diff --git a/src/common/assets/icons/fullscreen-exit.svg b/src/common/assets/icons/fullscreen-exit.svg new file mode 100644 index 0000000..42aa505 --- /dev/null +++ b/src/common/assets/icons/fullscreen-exit.svg @@ -0,0 +1 @@ + diff --git a/src/common/assets/icons/fullscreen.svg b/src/common/assets/icons/fullscreen.svg new file mode 100644 index 0000000..a97be9e --- /dev/null +++ b/src/common/assets/icons/fullscreen.svg @@ -0,0 +1 @@ + diff --git a/src/common/assets/icons/keyboard-down.svg b/src/common/assets/icons/keyboard-down.svg new file mode 100644 index 0000000..de62543 --- /dev/null +++ b/src/common/assets/icons/keyboard-down.svg @@ -0,0 +1 @@ + diff --git a/src/common/assets/icons/keyboard-enter.svg b/src/common/assets/icons/keyboard-enter.svg new file mode 100644 index 0000000..819b87e --- /dev/null +++ b/src/common/assets/icons/keyboard-enter.svg @@ -0,0 +1 @@ + diff --git a/src/common/assets/icons/keyboard-esc.svg b/src/common/assets/icons/keyboard-esc.svg new file mode 100644 index 0000000..33256bf --- /dev/null +++ b/src/common/assets/icons/keyboard-esc.svg @@ -0,0 +1 @@ + diff --git a/src/common/assets/icons/keyboard-up.svg b/src/common/assets/icons/keyboard-up.svg new file mode 100644 index 0000000..e84519a --- /dev/null +++ b/src/common/assets/icons/keyboard-up.svg @@ -0,0 +1 @@ + diff --git a/src/common/assets/icons/preserve-color/README.md b/src/common/assets/icons/preserve-color/README.md new file mode 100644 index 0000000..f76c600 --- /dev/null +++ b/src/common/assets/icons/preserve-color/README.md @@ -0,0 +1,11 @@ +## 目录说明 + +- `common/assets/icons/preserve-color` 目录下存放带颜色的 svg icon + +- `common/assets/icons` 目录存放的 svg icon 会被插件重写 `fill` 和 `stroke` 属性,使得图片自带的颜色丢失,从而继承父元素的颜色 + +## 使用说明 + +`common/assets/icons/preserve-color` 目录下需要添加 `preserve-color/` 前缀,像这样: `` + +`common/assets/icons` 目录下则不需要,像这样: `` diff --git a/src/common/assets/icons/search.svg b/src/common/assets/icons/search.svg new file mode 100644 index 0000000..691a5f1 --- /dev/null +++ b/src/common/assets/icons/search.svg @@ -0,0 +1 @@ + diff --git a/src/common/assets/images/docs/preview.png b/src/common/assets/images/docs/preview.png new file mode 100644 index 0000000000000000000000000000000000000000..860ea0023b5f25faad019e01bfe8d45d435ab6ac GIT binary patch literal 503620 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
)`rX$G&|Ex?(6yCeVJ)v z$KI2BvPBv-`w#nJOr5Cx7b4I3l)@K*f1G`RyAAA=-GwgiNHumpffS~ff&wL$Su&;P z8&n=UR&m|8ap@JOOLLNSa!d@r(2hq{g*Azp?;J2NFwWjXQ^HN|qF4LnOj0)1)jAkKa z%m}_e2YK~lFVQ6;`V!>_+@#dvw|GoG_QSE61^wo1IjvijfD=*e25@ocoQ5HOgcFc9 zDYA^AI=r9b>WdmXM9me9)K#70+p?+C28aF7&FHo#ssyge@fZ@)hXu8J#2KwK4?<<*jzgJ}Q)wz3DCc!Nsw0+dh42G4A<e2u0hx9>+|wL$G*+6JA>2a)=TtB?UVhJ4bnA3n#d=+7(~Ndx1W|Qv=!c*`I5k8s4(a;VX}h)|{75C^^kO~bFesQu47Ef&*mG-3DmQE08ajsUZIA~1qik|h zE7`Jr{?H!jVstj9~gL}&C>m$;yx&+Dty;9iOAzIu5 zYYW+q@rDVCkhx)_6nCh>?#so#C-mu4LiVl-8P#+{N5qP}i`L_WyJ}Y$9&d0&k~Dj+ zNKzHYzPN#vUb)icS0S)zv=C13)1*{mwb`%IRko2*EZUDcV79#ARlc4F{_49DXz9q{ zmns&`vR|RW4==b{bMa7YZgF;BB+DjP%;fxAl;n6lZ%OJvf*3n{^ z@#VX~`u-W2jY|dLpD#F_i;KiOR=LFbs})O>lG8rjus*@^$gMFR3Bp{`tZSfh)Pg9L@@KbOxhMfAT$UDrb{?Azp6g@ePrksSMYmJ z<=l`{G@#M&q7bwLT+X<(%EQ^bgk^}GMoS$v^git-k=#(^@vFw#l(hixtr#bphjGu; zLZ5UOr0lHYoOdzc^Z-u%y{+@?6=;>VOkGZ3=1?@>J1=j+YeTt^Xr}kz#K)J$1&RO>6LgwgKk%-3Me#E8*@pak1T7wgE zJthlBPW}Gy?>~t{&ZP4h^&w3Iw5=$>cTsFaT{sXR+akmkLp89T*KM3k7{%H@*;vzR zxpR^56TC7&36P5oM24Wij90DZE7e6qJ};ufxiF z2|Q1r&63Cm&;hi3;h3laKVfaebr5=VD7gY_yoUJ%f`+aGh}@1w4IuWXu5DYB7keTW zls-!d0$+h7SwJ2OO2D%O>{%z!174K<1T1fX)EO13g}+Z;Z+xh08|x#y-Qb^*Tat^& z-2UkuAKdqO)}|ds?yl`#ZXmX;O)AGGS3HqhdX2mc#kT&NC4nYj)cV+Y%lyt+5CUhh zn&4C1YW*FuuYTjZDIV6?b9tbX!`CBI4D%sFu+malx5w=79)j{eTv zsOP8O5n9ey3W%8B&aS9)7rl7t6bdr_cyNS+_)+W_q=?sxk>;5He3jQ<&^a|bY@01*J%a&QCNuUHB5Y}Q%}YYT3;3trF#4iP|#UMPrqOBAn@$mVZS$0CN=#O zq)Rp14MO-b8=;)O&?gz(N~dU+4-8m9oh4(_w%bhQm^t)!Z!8VXxvcifKrc1FykPJ ztp<;zh>1|>%(y0+KIWI!|u3+%}Ct9~unWsRkbqeW;bqRoo~P7lyeW9z$3x>G0h|0IJ3$+d423DM}Li6S^rCR>Pu6o2CVV%7H|>< zx3K$MXY?mRd;^i)-|JZ~-rHY5%O{7xCy(s!B9RrwALDSc_aA9#7(dqk`}k53%11Z* zGVjR6V{cpDK88|ydR2v7KxB=+5z7A)DD%QT{WIuw**c?d+`-Qnd%WT+@I_~0> zre4VJK_fN~6cC@_2*n!)Psy9Ft#e$ltesDep(5;~HENo_%Rs1T@tv2uX=UZ6H4so> z!{gjs^U5MUc8qQ5n#x8iJe9Y8K4OGY!jI=-ktnQVt}V=p5J5g*-CRz_Iux)dVK%9SixfA zA{NEz1W)$hW;5F156wQkRtkc?6MB^AVGA!K%Y%*YSSX5KI14ZJkXn%Kg_Ei>^Kzc` zIV(2vJFT8%h-mA>>D}JME?EcR8z5>FP03p^K^}mJT55q+uNGLS^)XaFzV2{Hri8_> zHEunZ2b(oc0iuBx6MYgI{*o8n<1;`t!Lk)`+Wo`lv1SlNOAwd#%Aq zR}p^>0(xD-y7EvHFybvSYei2R_VgFbSn)AIz4$%S!ss6hm_<4X_ax3?Q}tST?PkQ0bZkF(;^|iOIl+g`c=VQC`5kkox)xC-o z7N?*%?)Hd$%`d6R?OLQXJO?2%m7Qb9Vmr|Rb-Na3aa78yyDt5wmfDv@rbL<1sT@YPk1wSo?{j~xX%9irjr@(gr)%P zmMIwRqcq!(z;4ff7Zd85^T+{tM^#^UQhXiVq5tU9iB~XbCGvX^HUWsU ztI3uXoTk)t`!Uuw!L`Dv^xm1N2n;Y;V@HOFZd5Zpt3D`|%mE$PNAY{6QL6m|m_N8d zG4RAHzaF_&39QU@vTGivYV5xj?R#%rYkxCH zeec_Y(AAW$wfG(JWi#_2&DMl|dSD4xWzDcITu%Yb!cc#Yh}g;a(6>ST@oem+zqC#tsx|*J5$d z50@-U78Ht_)Rs_oSaO@<&5f(cpRjW_{$WBr=4QO{l-~pRn^~_SmCy_3F#1{IPxRan z9B&xhz9d9K!!K8i=+S{4WmJMh zKfjYVBoiBnsnxXMSC zDaY~V>jV~(wJhu5j^Kj}Q@T;BeG#Mp<=SiMuHK+J(lTK8!;)?;BozF@{9#}I+gEX3 zri&q?F;OLIFTM`_=0Iq|0mWk-Mh;I(n_kaoi<95 z&@x!AeF~0VU}ba8F>5fUuZzo@DpmQdHt8_cg_8h@`4-X@rR`LFuH2vXI(%-DRcaDl z4+tukq)hY4hCy8Wt=Nx5%AzIKiR^YL#_A!B_Q$Mm4Y1wY{fU)k!SNXokZ}v>w)Ndf zJC@W5$lFSvjd%yBK8SH31i=|`eHrV2428r>)-dW-yy6j8<^p2MK7MF|{n|`>F6F_J znddyyeelf}aQnem^Gx1;l(z*OYpP{Uwjwfk_|og@+m7{* z3+DX+O3t{qxVNKhyU@T$^Yjt;7Z9Pr`RK0y{M(BX7sjX@1C7JmsCw3iLHsEElF|4_ zGr>_7S|CKa3^MTKar3va@ZS_Q_8GSl0Z^KQ7Wp0pDdK;#Vyxb=(#!QBWCtTj^ zk6$M~Zy5z_nvVz*RTfelVIFJEG~HqjNID8I$XdYOcoN|@WPt#i#l?g#6hwwBZR6RD zJ>xHl{_HFpK%+7kAEl5+#P{8fC`Y`~NOAhSHUBKn5;&di^KqJk!Vhl`q9RR|T9EMs z%(TaXw_YOiZLc*|M3=vGPgC_?b;`;!k;#(~t)~)?T<-rKi#1uwQBv58tU4_}uJPq`s0`3r22Nvr#H=}4_mb)2s|?fqzq{Z+o1ybN@}jM&w>S)&t=s{#cHe(&myN0DEX7Vg zd#S2u)2uEwHprr;_uf5u#Rh3lyi`uzSgH7!Sl}BYqp_saZwA-Itnv=5)&PVm+@xo; z+%L+|bE`}rKT&Hh(W%hz?nw;$Pi#`U^@>oyRx}v!7XD1>lnWU$CVFS&iJA=J>;-z- zp7pSZAwb^#V8$Uo>~-K-42UejU$b$B`-pI&(qk(=BBKp*Pamka`k2&AaYk$rB54-l zc?zX;?R)R1&}T14`84Sx<9A=hhDX6z{Rhg?*zTOOpOB<6#j^t7M**F|aP1C^|s0uazM`^zFpd7Mm*b8TJ<&QzUM}TMc|c>Ou4ECCneq zTFma8L4~CJc%HEN?ZQ_Oq`rKaji(YoME^4AgGwFvv>R|tXOtlmy_BwSzjQY_u z9l5~dl>d<5!vq@BGqT8T-7r?J>?1~3G8x7CgN>1!qNZ*h+mN)G4U_f23_9Xx5;IX{ zdYms=3mBMr`VYNPCJk<;P)M0XobQs}UXnw`7)g%cw=_Io+(#Oo} zmScP50igO#sTLT!^fk@8-LZ8L7JyxTb4>sPiCWUgAp7x`2?fiYY!)*fmvDU1?c&jJ z`)|UfQAmXE@c1`8m;HH^p{&la;qTY)v`j(8xG1rYQG7EC5X~>xSNM$|SllLQvx1GN zs^Di|iXmRk(+_3*9|z@NR=j(#`0*?@9+#$+HhqRch5G#(E2hRsFFWK#*0yl5`ADbzs{XAoS$4gW?xejzk&R`#%{cbWRn1 zm;s>JlnYp1*7uBKyyGeroX#IoyRjH8eZvy3G zN-a~Djq}xC;C58@Pn^1w6wb$bNOjUv8BSL-Y@AMJ-6EI18EVaXJRFO!xYnEDwT*zr zoQ>~7Te1R;*NaneI8$yLM777ipm%!~! zc#n0S{ldEmVTv6Y2gVSNSCh}yA6w}y-ie<;p#k9!UI&Rx@toP#-(WqD$xR3pn1V??pHlF?JI9*XkMT2GchGkF?6Sy_| zK8B_N(UAsDGgk*9e(R+PdA{YtShjezGCZ5qXRGW~W)lJch`{?*H=te8oQeWl_xmy= zwDE*^B~Q-X*;!55K8;XQQwV8KsNNb{{flGRDw_>mrS^A}?g>oE%A3E*;HDAkG03gq zZ+W*1O^Kg8Cm|ld=FYB*--`X3ZIKjuQiv}84g-EX)IRVA^Pfdoe0x~ZUL;@+8S8v7 zA{PJl6(=L982I^lR-NK=xJn3$CpU3V1NJp#1b|uJgbKuxQW02d3bV^vr?K+E^?%C7|BU7z^rVxCrqt8dFPA1ysc-u6 zVzM?gO&e*(paUfGsy-zfzf!86lNWl7+HU-s9DLME;WDWJRp`ET-)r-*WSr>Txg5K; zpc`eOHOcI9PtP}a(uu;|YNSDX+obHAY+F>jEr@m zGw{0mr16FKeC3`*ptWRXl-9C)(D8Ed$0oNjg_}a(=I3{GXAZ@0=*RCHoV(W> z_!KwV^}Id;do?wvx%%d&dbLLsJZkh6te|8;SCLvqa>=2@d@FIOO{i$NB)SF|qZu|0 ztMgffka)%!eS=!=HisM;L-w3~IO;y{zNA5=eAA(m&8wSo9asMBJeg6l*^paNVA*e< z2dmlvj<&A}&D%*z#|rzbd`m0Lp{={iglwj;bx&C3KySrnMK^E_jPG_2K4FuZBI#BPQu@JD2gaye1bO-cwK2i?c3dRF0g_WAKj1dkZb(Z)c|a z4xjf>zFjdwpOs5N)+l8IV)+NDyP zXw-ZUC?^D5ObsEh*#|&HNjPMpuxYlE-j_@DLtan|ionIkN2VZ~@Bj6R;kWeNuz__6g zI~Y+6H*v_H5VpI@U!I*ZJ;--X&~gPB{OR?$qirO+NovpgrMZ&O9_iGtaee-sHe#!9 zq_D(|ig(aTYalO2<5%aYYq=RDTKL4|6zUTa)k%G`ej&5C`~!PMwnK?!L+c81y0let zY9b6~Z7X}>d&%#S5ta9+G33wKHw;ef(3q*}qAk`TL3q*-sR_5MA5f=*mqVpLW8=i(y6It8r{= z6SOc}sYxK8|AlOKplDAdG_keCOKXouKE42dj&lpv5k3)_7ZddYiti=l*tP2gz=>f7 zw=ach;c~5U87u)~kP5?^WOg2RXj{#4<0g^2!=i#*cj&8jP6~UC!T53kX7vT{FnFY*@YRP_x`#9T@-(pTq|BE zR=VoPnDlUwJ))&)V?W)g)Bqoi{cf?9^hF)jZ?{o((4)68)hzE!!98GU$-FHHS?$8K z#Q4lDRHK1di%cyRcw*Hk6Pb);4UZ`g>A@}W%|q2_Xe!T4!wL#DW^3Qh3~To(q0pP@ zCMTnw%#Xs9Z`S1?#wt+YeshL&ih>3nmqXdxLo?+vsD>K#BQ()%O~d-v++A5m+&ivD zBBQN*vp*9hNeMPpPUeNbDk+*v`pr;?3?LkjE8-8>{pJmg@dNH~WYlBt!ZKq1_BqWz zHew|b*sG1&pW#?rbFgdfj5#&`c+7MHwwcZ@!^CM z04G5-S&Ll@ZxfRtg^eeu|1~Ve`9~qhHL=|kGe_fD8r8D3??rN2cY3Q<(nHMEiS$G6 z+LK9Wlepm4)&Uf({M`714Tx@F-AvXIr~Y*xmoNeZW;`OmrP*qRG}|xV zjjAiNvrsh(-Gyg$Xy+xCX zs`VT&Pm^>vML3f%#kuN3Zl>t9KFP9OohV!0Q49mGg6Sd~iT`6%j63N@&(pYtPbjj? z?(xjHtC3-CXNS{jMXg($AeKf3@Jh)6^c6{9qXJWPW=EBYM!fyHw}{LUQ1?Uswjx_;sPr`Ls;J4uKMJ8 z%2jgOcq6mXc?xs7wYOS3DB+r2lldH8(YbQAu8$j^~31juAqJw^Bx7x~B~s zs_U?#wY@P7Pn@?JGsWw3Oc{ecASj1JQ$2JAR=}@$(LU@~`WLFcePHPW=+$BSt^aN6 z$dZfnzy*W23g#hGj$-YLq!PxqmyC7js(65zn{@Cj^(-i-=y2KJmM z(_d(EQ`D$sadP(lo`L+@u!#m^QU_9(Oe__-H0(EP$M!oTlHD-Y9$VkupJ-Z)#kAsQ zj)od;tNKm5e6+=&)p3&^b!n4r2dowS&@ufHq01gZgs(tgi@zj!d#8%rR$i1hF%h{8 z)3h14jYL_3ZN+0Td2DKLSX3ywT}NO#yqi6D%vHy%BesR7MFh{DK`wWj_r`+JZ^p$S zG{rr+Y{O^cXQJZ2I9~3rqAShpFAoHewtMb-^!0`u<))qkqx=^V8$BD*ksQaYZFDxl zC3BG5#Un6hey52zIw{~EhpAZb8~NBu`zd}&OFPv^rJ-2iHwvZQv$R1{EV4iRX*d|8 zqsiyAvZtFQR!roTtzYuG<~1HL0{HJij|QfIa)0|7Z*@H424I=2d-0@-lSg^sDW`lm zhn?A3mGSZsV(+@8?{hAET*+{*62VF2u$MzLbzRipq)EO(%%Manz;l`e$UiD2ut!<_V$uQP%TU zch^GAQqfvX=a%+i8=ezDv^+j)a1U*)VIRb34Xv9UaII7y#Z7l;T`#8aO(-q(y3+_( z|3nL$Q!<%*!uvwL_NBSg6u@^giL+23(#iV%yMMY2H#UHJbGc5@;4Ppt>5K~Bg}!g9 ztUzRHf@9Pb{2iRzkq7K@R>?w_pK`jWm>z>j3;f%V`_~+PzBD$qSoYcv<%$WpNZM@@ zfeqxio9Nf+b-H1mH&tK->#-R>m5-t#hcL%eVq8UC(YO-?V^a>SVb+{-(P>gsOo2CI z;X!rA&i(D6=SbFji{*{%CY0&Ju$njUdlf(I%=D~%b#%E&* z%E-SHH{ysD#nbAxEe=aGeJ)EC3hQw+9XFz1b5k#aOJyNvauq&Vb~t|j>{Cv?pS#T8 z3PaD}=gWY!MiDYEQRyi&C`+ZIaAiq*;3P$~Be3${QXpKusjBH=rSGY)5S~dfQvEC- zxRpxjpBw)jxwM~(FjIYAG%DCaSG6y?kcY>#F;txSpgt$E7t$>w;b6oME5r46Gm=~+2;H@;G$|?`0Se-P;yVXzm zleX=D@<3Jipgb;y5X`|qqj{6J(L1bbBAg0!z-|9=SszrA+J}Y|K`I`~gHLG(B&_S91yEez% zG3Iic9%(40y%xrm@ona0Q(4cR|H=iLvGcIGpbnix8qrVXUZQJ$(x10Z%!^b=Ep_Ky$n;g*(snu(}~^`Y#L6g&>kw3gu$75d}EC zOPb(^!}i>WgK{tg6#j;)nk-sh*=461TZ~zJgHpryaj+cuO}6$KXS5_|vbvi#{1S!o zZKTusqD4_R^i%I@|qzr!Q$M zf8D%&lEQ&H3;dN9_fGf3{1J<_6D~j&$%>Pm^c=FOv!DB$Qny_;Bn#ql#rvOHfJ80H zqD~?96Sj5-Eh9b@Yf}$Obkb$bZ{pI{a`(#jz0M!p%>&Yj;lo?P$ElPHl?2RRl8)i@%z4Dg5o#aOLF%o8Rs{lHAe|=PqwB{ zZAUAM0{`~n|AmgM(eYRderc0x@lQFPGHEKvvp^@hNJX}N03ME<-0J)ws`X4zoel$1QSRZ z>2n;q$P;ZU5-9PfjLstTRSOb2N-Fe<1-DBAp9Fp~giCb3;1t=}l`;+RxY5dMU$JTQ z);MA`7o&8i&E4OBQG#7WX}8w}6eDsj`l)Fn7<9j>eDJ^Avj0OzQO_Kx_i+CF#ejd2 zp3Hg5J`{}jrT#u9gt~YbW^hGS8wYc2Jb~5iX2o>d`Ln#ExpZk;n9+N?r61y%k?q|$ zz4tq+B-C#jgZ+ADrd(=|4H`-jRomxsj-Z&vp`a$gu;NPD36iuUqB zg7_?D1GI4(snh@^P7hRigtXKMZ1Yk0Sz;AwAoshcCWW6SVs-QnTRgauGonnWpLMF& zrty4Bj8kA{QQk<)E6oi&{|jE?Lj}S4zVp0|MK*mej#x#7x&Su?UV365@*O|i@2Z;Q zaV!QeesKyunF;Xz(X~0)IV2J@eO1NW$*t#cXTJPx!(38s>^jy|130KaTR%f z^uiO1f@57-3j>U&61IM|#g9}^y(!f7*&GQ14(_aIq_H-XM<*Vh)~o_-0~jeIo+4Obqv?c^A~sxaab$y~jCqj>cgM>tKvzpy*;awVj=BQs=!GI#E@kjl(ib_DQ_lc|QDI%PAdN86wZzeOb9Ln5Qs&*VuQL*O6|n;(P(|Ea2{;MOtLR5>WX7 zl-Qjgy_tAGs)nAQIJJ5gKg`fGR+j61Ep99tCIHE0n&S7pU~Q&_NO~g33N|AO+CiPF za_NMD(LWi&Kl-g>&ta>Uo@`0gn0#f8KmDkGBck{~0RtN&?dbMfv?($wqTYQ`gLE9? z(K~}O%-zF;<)Qcz8}7&(FNUI|1M7<3iKy$7WM6!I7`XRG&X-i-SU0lhtokJA((a^N zMvhd)O-S15{t(RHGA#g;jY-4&Qd^VqakI4BylruloO6U#Z@NEUN4#;1iE>jYF*)s=?}WAs+A? zHO)E)XX#S5YRY2WT?0r@nT27w?}E^kiOdthM9=fL|GR%Y;rO3 z&_${HQRYTtJ-T}75Uwtg=T>#9H+Sl9i|#6?ex3)rQS|KchO;et-r7iTkqQE5wp7i!bQ@_kQpbF(zMmVxwQT5dlyD4MjCwSHu z>M!_e6Q8DN&*iRvS&S=wy!;ph4gdD)lIE-qZfd#_PuY*w|6sa zV@rkI*`496XdGYQN=8>HZui4ovvc_d7~P6f&3WYrgpy--&+fHC1FZJpU*CEPl1?n9 zV@DUS15i93ILYL;j)82ySaR9blv0LF-RN#cco6FpAAxTxU(swP_nRLAZhyJky(c4M zpL=7xgf1^Zsu`|^QG@D{K#sn$=Xo>tGv!f}dD)q3yjqoyTC%Lr@Mqs-`F9U%^~U;$ zeWn>Xf}!U#M6av=dZ7*7OU2!NaDjr3q9|!Nxa6_qI{L8G_qs5hUhCfIcC8k$!tPbk z#Kli!EUrB{FSCUZ%4|DvKaZcIftS2)#Y?~!bZ(~$l{w0-qbzXl&3_qq={Hu-l1k2c z6_j-xI`#2z9vBQzQtK^T9q*zNoFG4~y7Q~WSRpZN9cEXhg#*|NJW^Fd(wlV`fmbpo z&3QitG6f~PMeUnSp%GU-YB`BSBPbY^Za;F1nofI-?U!cMTQLub@e+3{?0%^lzN`E1 zTK}q@0}m|NdiMs@3AojsJidskruXqHm-^vkRo%SxTe8R^(LLD?@kHD9;d>{}yTbNu z`+-{C!x1s=*kG>yL7S#lvC0&7cF^3bJ&Z4j+RmbYKTzOOH!%il0)P(^RU zs6^%gu}9C#1x0P#H&E>Q`8&y0lK8Q&jKPxmBXdOAqT0_F^c0bTg{x6TG-Oc}M#F)h zD;fA7dA%>b$R$s`xZ;of_}3n`UNfOteGx!=tx6UBS=rgjdgn`p%@Gazvyi8Ef@^!E z!ERGLfKjFfXKEo>XXd`Th=(|~sU|=EhcqqK(}G+B(8t{KoCa;Zf!N5*WwPYmor4Cw z{9_3T1z$nCsRSXasZAn5YpPB|Z0y<%|34PE)z^yZVDw;QHuifmy`}r^OL=HeL|H}a{HKch3UuBwjr91vA#b1WZs7Uv4m@{iI z(B980_(=#ZaLd+x@)ejZ@^DEpF4I>i3_aCE3i6s*tWfG>GCtchk|ox3sl{d4(o}Uv z>}xTb?~O%9EdsGepujyyZuJOf?sWoU6@d=6k$t~Vd{xYh?W3Y~Q8o1muGM@Yfk zH}|F#)wL(}*Yhc?QMg;vVyc!K?@u_B9ryU|1E?=!=x##Ohvni`ruaeVfG($H7H)|$ zF4nAwk8LemYeY;cC93B=LN8ijwfI+kCh_}!wlLG47km{t==_Yzd2kZH*~+|X0((>pG!r-=q-K%wopCp6MDW! zaTvmQ$Tqd*{CGB5B5~^3I4h4r?sbuJ%C+ppxOi}PB0XanrqjNOgrg)@9{FxpsuVai zLxcJa1VVN|MR#wVH@v8DBu_1Ca58m$XLsM;I66a9rJm$(%$pT$K{1RF2UJ1|v|rSF zeI8x#0R^Ogh>15@P+!cMx5tvB!_Hph%%>Vu!B#10L#2wMip^qf*N~N_htv{E)|5REqSG8sClS+VFtbQonlJ#P0|U@;qQ6BjEA&<7dvXt~1V% zoxEP{w*jaZ8D;Jz;MUd^mkO)|CG-?@L0!)MUVD~1?%VcI14z&<#(?H3Bi%5Q=wjKw z@Nj?mdTG{pnlRE*ef0G3+pssn96(I{xIyU)VBSH?Fff^1E4V2-v*z)O@cOVDhpo{T zDH}pHKZj*RH;;*%W<^#(C>xDFp5?m}_4IKD+C^wl0$LWO!_^wf;&j^*sqbvoRF?N* zxbnT00I$Ek<&8-z#~HX8{~c-xv6idS38~@sLChDt)egMo@Q&4;6MB0FQDlYb`d%2zvHKCnrun)Z@F1} z-f8T!qC2uaSVfXwIdtz35w4;fR<&OF=tpUgD%m3$PDzxP3^k*M1z{;yUI!%|9P7Ps+wW?LI%|2(P4DPfpk%7tDrlk>h-E^okx zE1Z~%EIubHu5MoOa0mV>qA_2In`SC%w!a`>ynS$W#GhBe^mHd*89Gof(gG-6v(4Ru z#h@Hj3eEW7haIrK!fF&q+^LtP^ev9}ijMZl%4B^Z+k?f*BF;}bs+PyeQtz-!z_-2E z=IoK9C?*(M)*YOCDezum7YMC&2Aq8JentWAYgvwM(X}Mo2JPzChSkmgfmu+TY|KDQ zAViDO-{R`qQ7~EaRkPov6)E$CXAIly>hjCMmN=Gn{9Ts58Ywx1?$|_tAxi)8GJhgT z)=~bmAZnEhIy$v&7+L2pWDF<*Vk-7PN0%+}3RPWh$DPgPBF4~SriY5O*-5A&e_eb{ z(82$K7kr4$ST6SlJ}$35X+NN@H8bfYhc)25&Wz)jgbMkKN?x0zcXSW-e;LKz(e`29Q%%6a&aam><=PBsW*TjQIC+P3QJi# z_5LuAlX!Nndtl)(H6dCachjffTV8%qF0Z~aL_ts7kV?nlT_}uk84sl?wp5TSn4)2O znG?J|P85=ta3)%aPxj(<`;|JsE7L&bDrJp0vHLQWV*;GP^yBjWuJ#WFXL0$66Y3$O zJZVnSp~{E{L@*nBzymH66GlRL^5PMC;ETYD>vQ!$Mj0129z!rul8$^8tTnp9a@ZYP zAAgsOJ4O2Y4MT6=020I3qt{cJyR`~qJSJV0AeF!mk6(6^CBNc%CO3_b)92IviI(BF zELnKFRjo@?~?^ zV}xa&bkf8Ve0;19O#O;>GnDO!6EGDoh0NuB3FU6dair@{*7A+wiK=7s_eQndUC}DV z<{lu0F{ELdf1qwYobqqY^g+__+V}knuSTJC#UMx9$;Yb=al>8brU_7PeOHM3Tdi@y zkY@-gOs>(@9f11%sq;tv3YDx5+l(xKeQreYO5yXi%e73bhtk+Q44C5qtHsibFh3r1 zbC7Tc=d%d__(VFor0WoKZ_TX!k3j#!V&^KZI8cL2_1u=((O_UDJPnyew-$ybD@(j;t*AXWk zASUVhnlI9^jY; zTNhLBlO+@+DzflZ^2XBhe|sREL!2)ySONe$UjRwID0f7dq^4>FzyTO_>MdKo9|Bi% zSX&f5UgPh}tc(@YWjrX=yLXV;bju@ggccZ;%4=+ zYf_$(G}{bh1mvhca3X(Ddv;F~@qqK!1&ze7)lmZ*$NsW+=-5v@&}f5;1KW8!6L_TZ zq>g&@q_+A3jsN#&O-J{`we(NUY`%f|;@-mBUM>OxE9#7%mp8visVCfrbB_r=&1-Bk zuxSO%b*!;?K;S3zk19n!oQb%kCJoIm$Q(At-6%4t{45A1I*D2}s_@z6Gogx2Fp^pk z3aAa};$@pueOIq7uY1D-h)NFcL83!so-+XVXGVsVlfM~+A(6Tfu)r^MxK&=^S1c}w zmxG;8*h`J~T??~`4^v9^y|Kx;6L|}l{{V#TTqV5rwz@ZwZ~=!}1?NwVmfBsu^0$Q- zygk2D#?kUQHJ;)=%SzESeSK~g{2dANE75lBP^FFy#aLpXKRVnM9NRa5lpn5CpjYt; zsd(@Ww~ega+cdNBDxx2POh+9I^0;#QV_olqJG}owg#Be}N7U{Y46dR(F}oEpe}2yp zzRhZ!lj5I;X@JeN#%!?U#uyAt39mlkMOC%A3YiOi{&AKvHGmFfXGz>DOTd$sS@PCy z9Wf-%+hL$uS8>h#{M-a4bnN4V zpnk?5y1~NlKVFJ|BS8+7ZLd)C(7jVVSZltJjc?7e=Y1?MS|D^-RHbs+xf;04=#x9 zXdLU&rZ|*$KbO+ppHYl=MTx7mzZJ+6w%BWg8UmtY=>k zzV$m!Yq&<7ZOZZC*@q!)?!I<^r{C_wJfS4d@-?btLa7Q|I$jCjcsY^mQ|#`UEigMv zf!ARe@Su6E02h`1r(7M8ByPPe??DKB&*#JZD9)*Tedgs~%Q?M${@xEEH6~864w#F~ zZpNkUa-m69*Cv~E=SB|?KtC4b`pXuNkGov(6dxlF1rZuqn)nRN+@P_}PM6eUwj$PQ zYE2z15OoR6se(z@(8L<^=&7@%rCh5sLw!hf)3=A%Sa_&d^G)N>Hg|6aYHp?f^@{%( z9nHM_#23-H;<9>;E&|ee;3lGD%YBC{b%*6V#K5=rRQKvF2)?9jIYT zPnBM_IfFxn_!X0NK+fw@_{px)tDSGTq}|`3``s-%V7^MpNrley+mP$bZI8dF&l!XV zP|g1ioR=YmoYgx0%O@%zEa*KCKlRo7BG-P@66&vjcLsX(+k7ceXD+k36 zavMnr6;vvqd1*+3Og1pY1oCShe)TVzX&{r;EMiZ#Y{(#17GV-lITD%IIyo~#YiX>O zQQ9YU{kEbqnR4{^D>uT<*n~$Jw^w%jTn+sjZWo`zQ)wqtA@%#d2ZSU)e`}!R$(NO47Ipp&CknF?IxHC8ardhG9v<_tJ7!LF&fJFz|Ho@|T=>@` z>2rUKkjlsFOl{m<3#6npAR^Vxp;O;RPV6gTIv=S)YIHTGW{c?#uag!(^vrR|v*acA z)a3F_9gGoS`G_EN{u!32eouSy;v&KuF^c*~`;fRY*R?wVHm*DND}MWZhm}L!_vdZI zVYDh7QQGVv(^eAK!3a=T|N-Rg_v+NpAgevbNS z;rWMGz7B+&Mq|s4LIXI_i-6}Qt=`Bl;oc|Vu2!y*cq&HvI>1@#DCWUTMZ?Cdrb5N| z&V9D({_qXZt_KEfMCNV3S{^IWS9%R}UlpOSQo3hc*fH+uixs?LK+|am@Z|rcHy7e2ttiKC`ZJx^zFPv+$58r9Ih}3SFRY@f zGj^21T{U`i9>(N1jVsjJ+H5<_4QUq&o>(yQo<`6mxz?@^Oq{s#Y={J(F@FEKpl|UZ z?-AAvp|z)O1~F#KJ1$>os?L+dNiSoWzV+1`9uoBk`)3pz{J|3^0KS9HHEY4-N)VU) zimLUY)n&?q9Fb1-uLwebgwSlju}KHm%kYidBU^4)Frt#juJ&Et>GLuO@=F!e3`W=V zM$I6@rN7D^AVui7q>Md8DOpTxPu=Q2sV6M}I;>xL?9rKWVvpH7x%r4D&-8K*Ds<@6 za|roKER!a0(uQE^o;#KWN~Jydy_$skzls|C1=5F){zU^x>o?f9KcEfacrxqMz~OIXyqLhuMRy~5r--O!riX)rui#I zbqs_QNva}FW?N*?z@#zEFyZWqfRC$o4V2M4(R;YG?eU1<)T@8bxdg|0?vnT=afo*? z8fOf{geX+-tJiARBJ~d8M@(TP^Y}-?RCTCy+kz5N9H*#`ww;DlV1)2(;Xe5nbN}rH z2%1A@e%2MP(Bh=#>6CL=M49gU@mgZcf6vn>G{ z3)cwDySx9trkgBE`XVqAluUuH+Fux;PyDEiJfcqMi?GcX(ZyQeVXW)^@YsZ)%8+f0 z=#7z2JeEbV0*Cht#xzzRjC%!0I*VVg9L1C*gU`9Ja(YH*BYaIuZ+s>uu654!-U=2z zXm?A8+COr6zl6b*JwCuSwdNF!kOplo0Z-=tl%<+3YA~=5pNF#jeJJc-OU}=qMU`^u zAG0oM;~z_@5cP?=%;&@8ic2;VdTJg-_!~wq4yARudKXsaJR5#l+&dP2{Hy6Za(X#W z{+WWqYy4G+82y;SNbV-5n?fn5IU$58cb=Uv;DK#e@6^Z{g7y*a=KsWfF7JzIXloD8 zI{ke!tnpX7HuKrm%Z^0tcc*!dO)nquBL-VtuuRYEb%n2^#J^2N3O#|+Ca z9~fu-X}$dqT`*62pU~`Bihn*pFTEl1rQ*fa>}csMj2dI3B#6+3XQ@jAT-Hf|L8K{H z8D!fa-N4a^!raUt*OH~iH{&xbFMlxS>&u@nnbl4xab00SpYeWn9Q{}rTv~ay1@W8e zcN>d*T*0kqK3r@IN|yq&?#Quq%si#rck5p*P;5($#AYDxEkF;%%sd|=jp}p0y+*jj zj{B3)MU?h@HUB8fRq&W-TO=Csw)@hmi>?2_eQMpxI~ER)m0jw? zRJ@04D=EBusT6WsewCOcM&(-2M6|0m#yt&-vSQ#=2*R=P{I^(D4Z*CSo?>E_W!l=A z`@T2LpY=nr>OYUo>%oWLROn6C$&pe%h@B8oedd}kU-M9~y=+b=xl|)_kSY4aPO(z6 zFPBTs(y{?e=)a{`s2+P1Av~n7X|IP8lh6-lgA9IAGW8I=_ZK%Rweqt_~bSa^|qe_`*>n^3LE!Z2AgeYo`o+QrX@qu>6a)jt5wG+6ebeT}s zl%sTu=jk-WjUa=e`kCMS`2tip4AJ4(jQGETz-7$ z50K~6ENTeenKhKizY1Yv=xZxT>|%5s4rMc|F#mHa;K;?~!yZTVRnpO+JjZ9%hwQ;I z#kiAr64UU~h|iNk1&=H{EW94Ly>}DT$-4KF1ZIS!8*EdGoY#(T6l5=r3S-pI4KHd* zZrw%-6w|GOe6C?ruDTWD4azCmA{(9s4AXsQBl!>4IYv>OKJJxnvAd~;7Xb{jTh|6Z zy%|4C&Cph=-D6Q#+c>_dQjlb^!lh@Iac>6*yH+P3$DSRwk@Q$Rj9d#JN5Kn^g6KEg z!}4TE+&xjUHG)rdUo9YcT%4uh?C19M>(q;f|LaG(w1x7cLD%vQo2;FULMy$lN_U0V zcS&kNV(eIq*t@``8QqtIDZ+BAhPb%dR`Yz_Z?S#Z@GAG2I``2_>t^^WF^W1)`7p%c zZ5Y;hc(1EAkO@r!e@&i->(Gcv2kjj!nJrg zO*Nux-&Kn6K z3$J1ee8XLz{nvS1dSkM5;*GT=|JZG9aYOYxka!89M4ftP$8FrW{yep~EZC=HH&QKO z2kEu<{lWDjt?2426L-#PmklBzRb|H`a*#Nov7wa-mhxo{;X|gT{_9G&yn>)Kx20q3 zOnVUABs6&sHG2Q}6r1LD54=5ylwQPswB(F&;#5I$cD>ge9XsC9 zMa86jR&tPU`4b!UB}Y-%KNh0t#BAMOJrt+Wo)$@!jsI**7CFMQkTA;7y1^BhZ4JY% zHK2aB*@|_Z)1DwM0YKi0kDQzT3k?)d-lerBoL8|zTY?+GGc2oBx)?H9cDlQExh8KqV83l(AD?+JQOx5(gpSTTx5~lNOI;u^+X$;by_~DD0*+7 zZ_(2av%8+B-$sQF=vBAkk;v2pshd@e;h)TILkV3Yv7Mp>uA4RokxrPD`o|R~=dKQA zG^dFTk?P4F#TT)bzW;z~8_%kaqbn^){D7Dr)uQej^0Oz3zakUVnAhP4ru1>8cui#_ z*}up@F@fUL%(;Rfu7z$Znm=m~)(Q*vCB>GWzU-Vbckps*7MJksgY*=qZA^G9n-(13 z@wINAWG8@;##|54gCkc+E-o@^>p4sx*@sZn7md`kJFefArmTKq*)j)37!}6!eYK}s zi z@zX%|Xd>ONP*nQF<+S^N&-HE&g%JyGDgT9L+~dJ*Mqk4Scd|%RI)@mCRt`H#+tOwR z>o@7;gRNf-{=Z%$LI$n4kKC6Eaz*rY-5%km8R>aL?zrUY`&l)x#sDoiK~z@oNCRvE zYYvwMWfE^>x7yR)*mOhxSXuIv>2%_MSKx`c0vUO~2W}N0 zvR2FXJ}8fRR5t*@z_KUVY!*I+!-7mxt61DxOxE7rG-I~@W2W`jXYkj5+|V*f_Y1Ar zcvNeuT|A$m+exNQ4_t>}iExFnw>~^#0*as>`Vn23REqjBmE@d=UDT-8ksNuD%DaVx zg&z=Ro>u{QPE@$e#-zIVXTpft%d~kLOv?77Sjs#w@6?-pPSw~Hy(m}BvO*ir0?Ila zwTE#kyVLgfF^yIC!cwt)GFkUCb75k!-c*(bp~5?s_|zavW30Z7>P^APZzp1kR+tcz z>xO@9@E^SngCqxwAt7nHhxgBqsdzfqw5A;$<9nKHt3PXxvid4k>o}ZZJ61!>KQLh}+pP9>Y@Br%^=K5?(UD9Y zpcH_OE-bP&&yc(jiqJz8`^0g@kQK45Ob0DOHgpYv{?hSklDrlSzaEG&BhuhR2 zVPt8ZMnLIz@N!Exh>Q-)HmDS=Z~2nUH1fS+&wkmDYa6BaqYO;t@J^mf4KDNqhsfCDCZY)T=r$qTiwQ&{@m zyI6ky5v=J_8nutaJ3gcEqs}#BgnHm8JELAihQizeUx9|`^AK@#!XF>@!FybE(s{X< z#duNGu~6(aN&i7wM!lbOZ7=23Jt+OdochM8MK6a%U~N;DidVOa`)mzde(RkgzcF(Y zt@EpmQ*^~|wNPk0-EP_CB>)#RBDInAmuQ!cvoK!!0^s8Jh@B>+sA4sYgN>VB-FOZ} zB{IA&N~N!BS%m-?q%F~NdgAV&qWJxMS4j1$5!ZEY6yWBGtw&EN@pJ$14Inf;k}ZPi z;>$GTc(2;yQ?C4J0uQi<16^q3-ZrNv#cGj0n{+eF@-X&|uP2a^o%f0E(n;lSp+<`- z7+#W=YwgxI&4LfKtlFLW{%k5#JG#)(@(-4|_f}x|`c{1KcmKB)8J+tyd!V{?jR1|b za|SRHuoThu99Y5#TF|GTE5#7jsd5K5IVlK{o05+-j53MJwCCLcA2k>9H3)NdV85=f$UuHzKS1M)zEwHDm#Vwv^MAJ&<pJRIIgq8y0vWH}9(P`vr~pZ~FO>nG1OjbHV>&SYyq9*jhlZ$~*qR#i&4&J*#g zpiHnHR!8qVjFLVLbPRs=KH~vS0~|c&0Lx|T`xuf=-@;!IPL3&Xhi1?eCWHt@T>jLNWdR@L&VMkKheU!Y2QbB_yM&M(TxL<##Gt}HQI&VIY4shP5dB= zy405T9XrWerShPqQ?Z*_9I|gSu9!C5h9emG{W|x;dx`#e;xD;_0f}#hyN!Q*G@fj)G4eAs&5LlzoctEo`}` z!3t31QMX-k0WtHNZYMaf**>>tC;EjC^SZUE$7?M4kAQuyNS{Kv&E4yFoD6der}URi zS78a2WVi8s30GkV&w?~@9uhzBL6H4npQ;o(mt0-<7qlt{xMR30O9>y< zySU=#t*biZCc^M8#g!0>yf#WbENt!j63l@sx$4fMt|yI(PV<(_x!9cr%ZW!rW-CY995aIVx7G(aljDMT6XE6h)$f~RAQ4RdpQSFQg@y7f5qO;@3<45Xt`td!; zfmyi4ZeM$eq50PiBmTQ4t#CvOq*CLfIcN~Ya|Tyo_%rh`Yn=;0d{GC|wy&Oh8`7gG0NS;QVn$cD6(X+gocQ@5LchdFXTgjX+FJfZQqfcy#_)nU zwMH`Nd}zrAq!M%G#CX{1EIcmnMsMmsIh7@$^$9$Qt&p`-p0GQJpNpB1S9b}XZH?k_ z^g&*&_`M0(8S`k0z?tx~{v|}ssOZ0KKJ|uh?BzQ)e7$!2j>NlGny>huYgE&|jAFOJ zqP?yZY{)B5k>-pi7JFg}L8~Bt21S`c0s~^o1QR%LfI|VK=5PpgbCpmH+A7}%-7Bmx ztk_2XUKr%+h2W7yjbr3!vPF0Q&Guh`^QgiqTdP6wH0%0-_)lWGyLJ4H_q`(A1si9e zXx!Z2uCc$$lF_sZjKlUN9>OD`*hHG&k1$;^xpks+FOm+;j>5Wp?`2I?qee|L@4m|_ zs{FNtnNMOGaPTFKE0b8#=iT?uizNDtJ~FgY?u`x2)J;nHSUlbFIn=FeNMfRE9KMt= zFEqXyGMxOLd2=ZVj-?%`Ajsg&g)JOlW8&H+Z467fj5rq3gJlV9-P?zm%Sg@-St-wE zB|#hxKeX>&}Y{On?3?fRDSA@l_toY0yUYvkvvw3ewn(;wk_u zJbGxzl;oMv?o<99Pc0Rbo?dm4h;hTK#|M93A-OE4Oh#(Vb#alWuDPEhYmLAcZOT$x@>i%de9`>pq#MpB~amOOTgFrd1PR@Ii!I{5rpdE zIR^awZ*li8Z&*30aKQ0leI^ea_%dYN5VioovBmSQ2$t8~o>*Qe(5{eefHJQlS8UE6 znpY2zh(!!kPP?dIpwGS<0~3V9y}BuEsZNUIY4^k~pA2|@8oEg^W>d0pATP-@C*D1j z`T4PMq7afi51d*RQ6TRRgQkb!{Vz_x_jo?D<8rB7wrnhhDj0+>V^JWrjQqdir^n#< z?s%+1#H;&?V+T9m5Ob&sA^G^7R!c&&&aC>_L-c&Qff_>e^-uuTGJnB=Di*KSN+^)^ z|IO<-t0}~0d!ZoPqC+nNsOWW)uOkuMCXpFJah?dck^DFlFK3JVtb`4W3eBDe^(aM2 zC);}hKAR8^{IcZW-`39Ab{tT?68BTCsVm2C%jVIV^n8V4Mp)#9pYr zZ3dZR!h%-c5cX4Dx2calel+yQpYiX0y>Mf^(=jtMVGf}cE=SET7ie2=IgCL(e$;@~ zp+)KZ85W4$f!s&Ji>TA%vfe!6BMpM+#{nrQlc{v+=sKn78jdFk%lLKW~wMA6p*-fvn2sY9k5+ zg{p~!*AAmd{_x>HbT{ZK*a518*0OiqR*2d)r(jAtiCgYRc~de)<<&%HxHvw{nVl5d z?`1xcsxjWL_UUqND(hY$7H0b!VjdWyB{p<=rXKOieS@jh%z02JqK15Y1q!rtyj6&O zPz&hSY;u))4F>64pO!ehFklNb1aN|)U2puem#0j{wG@Rx($@A{+m<|^wG`E9dG&Jo zmQ}`gem>ucApQ|5a;$|GR1j$l3%;5jrQ3n79zj_IhA;ki|4mg}IyP)aDo}p$6n58P zw@}M_GR_uz-dRR);G4)uDgU4hhOq5|lho$RDOMr62;(G|AB;GH1HaVNjUy<=7ZWyb z5AplDj;rt6w`$A*ww~*gsbu%3+<)1zsS_EIzRVdaOfP$-~r4*W$y5edyZuHo(BA8rYE!Mu;Ie}OzEOF zC4plLq5GcZmwEs0;O`-x?Fipwd(@dYgrcOKI2b-i=#@q+5EWGhy+~Oi%-$K$RYOW# zGa}_SN>ES$4f1*VDy{}9EKT<>#M8pD-`{^rBu{^!7pTFqx$~LN9aTY2kM5j8~u z_ytqZgJ7yfi4{Bh1!Y4hp?jej1(3Aqdg#9Gp8=(&i+o7Y2@p$)LOh1w_v2a8DVFf8 z%Kkd^BWBz`{n)05d&IkG5f!?v_7$3woqy{B{c?F1HB=P1FEfOi{a+B97~!lS*P?gG zq~R9yD_4zmkn*>idfBZtRDC))?jp^d0u}y2B;wIDS&w7L!SS! zr>%z!RVXXcJRC@m7#eKMt$VpSzZUsnlwqKnPuYQN!;oJ~;ew;8{e-uV$w;hYzY0G2 z9W3YzQcG~m91MG#6DqQYlzqwhirAw@+ifGv8{OYyF`|hs7nR@uR9AGBdFqxV&7d~{fXwPEE;usLnI$_nRiV1)Du4tQ^3>FKxl z#EAU8@qR5F&<^|#&A7~!bet|(A zadzhtR~z@ny#FhdHymq#;gjEd+E-9t%vv+#j{)l?<_wOTP^Vm7?N|}SW3Y2~5BOf@ zF!bdRMgs7$M_nt=8<6+JN%0P&zB@O;av@wBTH+@?adl@7C-@QETsq#cJ9KPw`l9pD z_u_{E1}9I~e3{^A>(ii>W{^OZw@*2of41uvna#n3s2;0K+a})d-1=;IWf)C>ecdPu z517)XE&2^N*W|~dNIJvm&kgcOygnjt$=wpHdF@!Al01T%?klAuCHnBcX9Rm~PPX_( zCm)3=&WT8l-*`pai7Lm{n_9;lE8=h}6Z)G0z&leatKls+fl+|J2qMhfQv*e~h|T5) zUjK_G5wZ%j7a>3OJ@Te}^|MgkM$n;mSw#sbiqB;Q4YiFnI#Ag46pV{auHk@p6M$wN zXb9CZ@BGZw)ba4ptM6+4nbuj#vZtG!$n9%;Dtqa@yO%4e2jN&-2nK1#=Wcv57EsYX zBE67S*X^PL-LCYrU-{$xKG{RD-Zy9T%3{rnV0A_a?*v|oRY%m`ui>=7N{yy*QOhl5 zID*wPUB~Z<9N2a^_haEE4-1>}5mlep1f8Hnp(lf~+Imdz^`D|LBV>p8v-{s=rwsI5 z0Tp;u{~HsNzYhMNy*#+lXCHcpsE}>H$m95OBbat#V(IG3i3#gfz|Z9kzpuh|?&)V_ zro6wkW4tQ*kPzcF;6B;SKfGyTE`snLD=fE*nyyF?myFZh`tAJG>r!W1dtbcHXZE zG+{{legd$Nf9l#A6kkk@1IG2&WQ*tO?!BnJ6x ztSZAno9Xa#o1|BdqSv>JoY&D#5ek1)a`rVAr5l)2tBWe^P#d$)_D@57x>4z+{sqoi z>M?|l4Zm^2;8TFVPaV&)=yV99tgGY96(B-S_B}{ckUT zll{8z!riUqB>A!z?FNOA$}b>cnDUg=Z=Mt)Y8!&`6x;TB$x?FXK`qIrjRGV>5YMRvWg)oAlH9<}l000C0K6-k0=midPnw>DoUb>g^X&i-VhBb^%%Z4Se_ z#>Q%&KYdt&FA_LUCoV5+KcU`%SIDvhpHHvk^YD|$xAPk?t$>X^?@;Ts7xlg|(XKQ( zwVqB-h}rtTwB=0)+s$4`Og{)-`Oad-KrXm1yR*{M$Ez74lAZ@4z056A7{v0HqP?rs znC(cAWD(g?{e%!Z6-f(7F=1z**AtfURsVSC={#DT{Bb7SM$1fGzf#cbF?{?ewdv@s z?pcxlT;bj)pzW@nY+aZ<y(kf7T}e$jsQm|dNI&#Vp0_6EXo^W7yh9B~=mCKI7E zK)*G_ot{6kuZcE3USU2q=?97qyQm{{)Uj34MR)*$9c>%eTe|Br)ApT%TIQ*QI$s5L zl)-r_aI3-=y|XKt?5<@({4V)*^7EHYTsgn;w13iKN$T0)g{`xPLqNbJ>?i%*=XbCD z=NFmqz`h8FxPZH5lS_j!{smR|vxBkT!y;6W26GcC_8U@HRWGy+_Ciha9%FB-BCi34)fETU4!19$ zUf5DhSIu-gNyF^6pkYDp!~y7XL0K;gW`FV?+HuSZU?Z?jc>DEbrfuZz2Z+NcDhStd z|H)@HcKcCONV`(ei&F0ehlkfqrB#j)2%rK@}O}buJ47+#}j+@&3Eu z-lJhWZ_?MOag_QIx1L9=-qMS=FkjVmZ?T(l70(&;M?a|sQO~x&!+SMr+ol&fe2TvY?r;# z!d79B36Wx{7AUiNoU7)f=N6@geIW{jI@R{Y*1*>r)l8vr4&$f__F9g)_rF*kAyL1d zPY>t`zE$k#a2M+=_=@ixhqkupK7F|2J53clwaNz$b@{0y)BiO%mDmo12Vu^v|Fa z{n#3INEJ_bVp@eL)VIBo>4*5dFPjbw^f`Y=JwVI;pJqol3y0L|R=KdPQR#BcBo;f^ z8!2;Dd$sg7L>|!A!=4qAo3ecbvg8eb@UJBH*y;&XM_t2+;tQk&+Tb{s`s47064{61 z!^|hM5yS1wM~G=DP45cAXLJ6n5KZ8we2gs7Qkfgxp zpb`u?{`PvMnH7jO_nk6PSx(r-(VLh-pA+@>$1odWrK98^qOH(s3-mz!!-yOzsKWC* zPi%yUU7cm)I`p`^tP?T7>Na*uAAF0Py5MnZW|{* z45YEz>Tqf7$L4(Q0-LOeiSb&+?9t=RacE_Uikh8yoPHM%{Aw8{jGTnZ{j=$lNA;ll ztA~mdcCFt*aYV0In`Y#VL`jD1i{}S89Xn0i1{*^JD=Nzj?)8Y+CYHh|fB#j{fBwa% z_L58Gep2H9qv|`LnrfQAQB)K=iYP^FSVB_}5EM`mk*>fc)X)T^_mBJ3BKwGrK$c8wT@NO{HCTb~$&zZNu;D zZ<_{z_mz}z*bniHdxoMX{eLqJ0MqGllB7 z1Fn6Gt5O7tJce;b=<_<(^^L~<1phVn8ec@v{nGU|i5{zBrRB)-O(V*>XUSULY@2Bj zls#9+gM-=i?n`%lY7ut&{wx;20?uEaf-{yn`R*!P9T{){AK1h{VD$(^# zxfBwGC2n4!p=A2_P=qCmSp82h$Hyq)!s^JNNtG=J_t6T`gjr9U zwBPuEG*j*9L^m`N*)kq5N0Iv-oe%M!3o+DRbVbP$Xp9MEV zB^crtpY?$vr>sdG3-MMn*#1-^3Ltz{%pn`tm7No!OY;IM9ILK3AT#x2vn=qfI<3F_ zYeCJsga)ni{9{)~#@^m29X7AmPdv8P{c*CAH=OzGr%O2;iT)SUT7l8XO4F8&=eMqz zi_HJNa^|n`_$wLVU#TSs_#Wmpg7+qERzz{SxQilt6?E~`Q0Fq!W971@-_Wns85^^* z7F2Ev>)pGrs@$%N=3{+J*?hp+UTzO|{1hf`tEv=x-AqvPDypi{VQ28+_vd`2A0Ax_ z*JOO%#bwcam1cjo>>MFbj&;}*Hp8MQ*drf`f2Q6NOl#2WdQdzt*8j7z1Wv`r=+N(~ ze4SAlXTy-AG)E74i^uvz98>}o!l2N-{ zX6jX^wPJq;@Y(ajNy!ZNIP}3Y!7E@n^Sy@)FzM2zvhT~!I38Prah&%AasiJ%ncpR< zBC;fV@}S2G^%aRSxe-6*reoeTzT>_qKvHf?nIfU8O27_*#Tch&l|DauSij{0IDe@s zo6+u?F;9oKNVxw?fjJ|!64fETFH%OZAC%HU`BJ%m99#4$i0JpbbNjo>D-rei)UtE) zZ=F9#g?%Bn{xod4@{8d$=O5^{TuMi$r@{Ki5=3$CuSb)oeuL*|IREv>XAZfP9J0YV zGd@lIIhdYU@`|09s5lJp2QofRUEQ&+amLR65~k2ck2B*giE895v5Zap`J+IbTi5(> z&Bpi#B}qVhd+IahAgTHY3ed&JeSGO%Fe&$fLL2w-!XVqo9WM4w!xLO4Ob7oOGIu;d z9*J{Mk!si$jGzrZpr+X=YT3K`e77X3&y$Yrgolcb;m1e$lKvqUtOR4cQgjRlx<(G; z%7I~=GsIwF**FLbHO&A_-FbD)Q*R4nrUCP`YlA;>g0!Er^znUqp>fEY>|Ld#B`tj{ z@r$C|@Ve)3C?|RvxGFFEgueJSp5abM$cxN`Mf!+$h@o2PxlT2lD6PU{*reGlDfhHI zp(A!mC-lyGNIAE$$RE}*JFy1i?Z)tk3rZt^0<~1uh}86zA_F|7(p#ZEaLH83tZg>9 zQ`n82R|P)sUDv1w3P3uEqb^9dl8ipTR-HT49-QUR;oS|TDpd+ zYBzR&zfCHgaxh?JX)zL4%6!kDb zRDx=HQ3v-rsx~DLci~pFf+Ktb|6%N9`e^fvETg`V(HMBW2NsIL&P)a2V`|vF3!OiqH^D2JrD%B}!p^}4Ub=m^&R8LOt#dH6B zY;)jgg3I#bHa|6?(VyQSHHjDiN{Mik^8uMz4D#9{t1<(Lh%|qPq2vHE{>IIL8gp$a z3-Rg6+SP-y#1F_FWsFC_@! zv}(J{#s^S)vfsMnOs+fA@kFuAHo3k0(BX72j-`iKoLt`lTg$9cQt%p-<~Iz=W6089 zGQbcoKT)KXC}*Y$=L({mRC65z0EIxvNMXHRyIcb&cR6%qNrgdmax!EUAamus z&@lq&(Qf6WZc*k;5 z8h!N2Hv_turIs|GwHEvloJ&DVy|a%S(E4mF_w2+l<0s9DBPxNH2~C|a0`c?=fXMmu z^lgr9j63!C{9X_;QsGRVnpRPgrbezKm=rWVMr28K1<23z^z+9XOE%l_@;|+YAosZJPE;zUa zx7fpVRU^>t5QraGEqlDqQrzW6L$V_9oX=4OQaWzUJaLvRe+->d3j#-FK>-7Pxmr`hS*uu!UKS<9*JaL%u2dqDqz}9R@IkLWg8zv+O%{ z-y*j!y8)16575{`By~68o@1~YU+vimz)&jvX=*B_PVVf~v9-v}UU4&g_yb0;PYIxw zfKS{XUsD<&-{IJF!Ma{x!%X*Bom~9HE_CSR)=w09j&sq@%U30J-o%zs>An;1v*e%i zUyeF6!jpM%cm_Czx|8^}>qb;xuz>}i?j)vxBS)2IQL+Pn!rXgsN#eP92NGTz4yBq- zpJAE?lJYttU+-p)+P-yk34_tP?capE1@t1@;_CJB6xjnxlG}3TM)<`RHI4?;wJlwI zI3wGM6+~>(q39vuU{++EOR!4kf~nhAa@pRTUWAh;!^Top@e3yCI}QU4GH+v~n)y_( zM%lS!ZFhyoJ(!F~!GTBb)>tF|yW-ORTBp)lb@<+OS35U#1+iLY%NDYN5IP)`1gVK` z2IU|RzXormU!DfI(iW9ZAiAKn1}K$?xD7rpk(mZsEldl;-J|=CiJvTZG_Cu;iLMzOHy?gD?{*AM4V!0w@sYVG zIR5zCPZ|$ojxb_?2RATY2?y0Aj}t(%Ngujk`lsJ9qAG>yf9q4QNpb zuNfrW7DA8AzX?|JhY&)f4`rAW) z=01bbV|+d{SInzg%p{H#o)YjI?Hpc8kkamKnYf>c^dleGw&yUVXRKFoowZ0qto>40*ih;e{Q?x0qa1!-6aLTl zyfaUKtd-O9k-L6pSa&Gh7LPpAp69^hCdgU9JrDL9;JeD9BJn`g(b;jt^W*{%-K+;! zFc}FiPwvj2(&0LFTkdQHQXd}&14r?Hg_LZ3aQbHNn7%)0zIH~k_PjXn#j8-p=?5ytSDaGxj1G~{i+iw38-X*zU)&mx~Da56{1+iTF93W$cVH?h|rqi#k8yMxKc z!1J9!k`6fLG(k3%Fzg9C-ZhbW>H#KqGjY5q^F!-{B%N;!Uv)yOQ^lcgQeym+;i6>QkD8V=De$|{>_x5PYQtf{Y zW0X}Ue)EZBtm!)cu_M{83niJ?ET`izS@MbF#k#5*kH6gNLx+$S|J9rvWP`+ZHl{bo z5WbcZPoz{YvF&JiTan-ki#-Ff?7G~GqRx!DD&%?;^`+A{so}bNsKn4|3K1zQ3h3B= zGkQ%Xh+X;LkRdBDzGUJZjCVH0oXcT)e47si{QjgBWggC10GmBa3^3ZgB8>qq!6n%V zV6Fi%d{)_RRUdz?MU@B_B)9#9ta4o8ygLS9v$&Igqt9?CtDpm<&Kx$1yApTpvQ*;? za$OXlZr_UN22Y9=rg&(IC!OVWj zlY`4giF_m`Ooh>@F9vYA;rR(Se!1mm3~YUx3S3Yg zIzjBo`Syc#*z2fOZ2^2WO6Px~?e2SBZ!~}F&*|N5unyv{suq9!Mp?PRps%5}akf4p=m+NWu%1)oa;BOPf0Qt=sTAw zfnZK8h?a8_>}L}C@)P8JQepOn@04u5D~BVe4Ug7){i~nBBkJ!1URC@emzotdql}u+YVHOlSq%1` zR|VSUF@M=~xmwi_VhI1!LObnF*T+&*eY{9SQsLN#o25)%`3kk-(Y;RkCpoVD-dhIf z;z@v{s63l!>?id1X|%dJ^_2OFyeqj%us7j#zfRQ(!u|4cjy}F9`-k@iyYb25EnHxe z#?*VqgJI%Bz|Ah`D>?&NC|oo`R0_0p{fRuB%*e~vdpl_LxD>?F`}`r`dfeea)nclp zc@cg5_xne2lGp15q>5cLbid>%9}WwC^C#ruZ)+|sh1q^lMB4xHR&EsODOL>7@F{iZ zWDyKxA;U>5OnghE?82a5KWZ~e5qPm5N{C+xK{3jT2jHt2d?)U%gF{t!Iaa`jvSh~2 zBWbEL07V@`_O+t$ps6>WbE?NsM33nwGtU5S*>eKNTNU^*fYYiS^z#i~2~fGKLX6NW zS6FY|oDr4yJBi?nC*8{`3?5zIwYl#lCR^k3XI&1{)D`Zs{vogaf(}_^`Q6)G0pZfl zP6d^aeXsRsS>2$1WA9v-K*z;yrEUdlQ1%u72M3r(QF+sV_@iv~&MuX@gL_VS-NzXa z`vsq9n|8Jdy~!$30jLNVvpp{&YFdneG!_1_WkW67%Ct}IL7b)Unmz_=R&*@Lry8L? z*}fRXylHK!9V2ksNv;dJMp$06SW}lD8z@JKHX1^hK{}QnGYI1v2nw|O%2)>35)cu!rHX7r% zckJ2Oz8{UB^%cZ|7V$*yz6>OA79W=tP9A`sy{Phg^^oy+PyGzgd)4Gd`Y;os`4DX4 zU_%~|zSR2QJrP`N_hC)?3H>3eb}#;8nl{%x6AusGQ`|-ohBNSCTcM)}Id*(p) zG;%jGy|w5~j~I;lg@|wPn2zcW28%Ax&|P_UwOP+%c~{(lpZ50ckRRpGi%Bf>2i>aC z4PV=kescPYIY5-UOFCh3szNWTdn zguquwg!{L0MbxTdv$Af}UxJ*(*q<+hw$JgDbs&nMasu%xj}u@ep*~RBCzXk4@(ics zwox34+%KEYK4n412xH&V`ZgSS2A|w{3bjK4LcVm77MeH!OsZb(-F(Tpl`N1fAR;%9 zqyUyjf^kT{Nq`|nhE)u+HIRgK(T3mL7 z@K9(p$USKC#a8Oesfmkyb64sdb}cSTA_7h?$!V{q1-agRq?D4Qz&tsTj-vW_W7Tu9 zHvKBf|0Xl370G?S!#G-3aUh!uNvV=Bi5L*PSsJcE4M+`_$$yI9h(wd)P}rhXs5J?N z{W=90D@U5W-sx9I0D{U68Fq)J@)s48Z#SBRB|#KGT(YY>qYmgLLkXM?vH)Z6a_JKy zn4^tQzutBrQH+XL?^k?<)xI*NffxCV;$RMD&EA=f5Q@-Dm?A52Y1H6^EY-*>6@d4Igu=z?V@e({!?VYxk#;$jRXBM$?Tdnd*vnJ9tz zFRBIdO+GJp*h{h=j=v*sxLLeL)-u+P9{(B#`&#kKsmMRJyS*4gH-v!Nf-||T0}4-s z*&;oO;4f|Lv5?q5mWR(cbr%>aTT)TEl%F*>Tu@q+h&viY8Iwz^s^^*7I*Xg3k{>7s zktp6mG`suM{!8DF)AowS{l&tu&6p7jaCi` zLEx0Jqz9#WD8nh0JP%;&y!pfx3EJdH$tQb6 z<&h!Rk6YTDfEefd-~nVL|nAX%I)%M4tYq5QIaqako1u zY+gztLe*NnEe$czsRUGTB>9K$M^x^rGoY`PmYTK3>okGPr6SgU4!*({sbEtn9{hZ4 z89QFrP)gSo8Ha!`+x9#>W64~dWGL+jN6n+2Ysxrlpr6FYm|5GUlDI9Ghlu#3Qi|e$ zWQ$R%tlo=xVnkuUFndQ8FLHjy^=DSMI)ctkPDQ$y#KTHr*kgjD8a~|g88wlk|7q*= z-O}%A!De2j(#_1gmK>Vvs$x{oZwk{>YM<~qHcRU#}5A}_2W)o4bvCH3klk7 z2hmGS0Zjq+R0N!QxxHfkczAf;Xc;j0H=&8^3>f~1)EA3nGd!h-otm0olTo=c;N^J*}M&ref29}VRT(z67oU=!g!=K zKS-zr#8=#8w{2QT3JsVkc>$JgLv`&QRiQs%T(4q&evIRIL#LHsP%nXN+I?=-w)1yU zQtsFWu$QSZ{}2uE0UqI@y+WOt8diD@g^KCpkFLpz7U?Z@ksX=CV8nmutWKRB5wX6A z27to{Y!A|ujb}Zvn!FQ53Yi-z={BZ2l>T76cNB`_^5#qY30sH>#dAs)M8q^1s^7{X zx}7+DuSm`Q-&_Fmrs^~ZS*6ACPd0mKsfzCLF6y?Z6!ax7qMpNQn(^Dt^9i8138~Gx zjHrF3y*T8m){~Zs^gBr>H$(II;icwJAdhjaq&AOyA;LmJb#mSOa`hP=G9>o)tu+w0 zCmKh>MZB$J#F!j3GD&E!C;g$7m*a@^Hz1nb|54+LZHI=Oi_t&;z__0%7>vfoFXVhI z%$+>N`V0~}dAO%6J%FoJNj*h>mx?GZhX1uGrzk(v7b8ZJbFJtp4K42UXj)euUOIw5 z{$IM|g=1J!+#~uvr^;A4M%Foe>W@8fg1PZBbTE!{B9g7q(B{pN6@i=N!oKP;kmr3X zd0mN>G}i`g+)~(AJtRIn92-)PQwt2UJz?bc@Rk2%vf1Kqd*dl8yGge*z+n8=54oO> ztkOZ@_vX@CF`670{@v>{Hrcm*>I;OUqeZVkSz5J|(nN4le*J2z$T6HQnGE?#fF!Qo zniEhtNqUJi`6j;YP{V}o6aEzBf2rd2kOGxEuynDjMK~5YQ-T^zK}xHW3?Jy4K2-5~ zb&iv*B$Fj+bWrc>!1kt9Go;1Ml>pnYHAbQ-Nj;qMRK9*CLMZ1ZHkmG;By238ni+m^ zKK~3w!(pXV4No#Bm}aAaGb8=$yP1f+BsB`qWU(BelsheNVfeTZw`iofPAIq}DPxFG ziS0xKp(eQLwDJWw?0v((oG6q^-YK2B}FRK4TOol9*DPT%pQcUKg) zIw4D+4NfmwRgvT0&e70_g*b%*?zeX3twcF(MEeWS)Z)z+=qrNW93c(^h2W`R-ba|D zpE?56=N=KSNEVu^@-NYkJEA17zWX--Xcai>pz@u5#qQ|@fbmCiq@%HcZyhq)4k%9k zvMyu#v6rtr@D+(O<=M@7aL@W<%?K+w{9$dOgzu?c78bFBs)l$JBi)mpH4XI(l_e{G z;H=hu5V@BdycP&wb^8z}Z^a3!$zojEc3+6`S{NZ7f-gC~FDE@Zdl`>mfskQLtx85R zADJ@~P{NJBRgLsNR;TYFs=!T+aOmngASng;b{8f}$KgSui6(w=%}jqkWt5Wwh~@rR zxZD1;oI)KIre;*Pr z$9g`OR9HC^d+=p0&ZUCxV%qRx`36F&fCKm*KM}fLIS3}YY-sdgA^q7O$hVjh%Frvk zh`<7(AH6?!J#kZjk4RgN2;-*kP}_HC;Wjq#PVU(Gl>j`&9QVMiGR1X`FxKL3(Ogdd zm1>Oe2~t|jD1FyJ*(LnyGTuyP4I>ITU6SkLR_tTzfGgI{S|e|k+HE^n&KF>(<3)GJ zqS=}}*{6Yi z3Q@r0EAyw=^c^=i9NXtS4Grtj8Qz;Kv}iIrgsgpC7PyOM+|%bW77CyoxN4M4`}JfO z#*KM!xht2s{a2lXxc@D;%`UNFfY@7=IivW+nByF+#d}0LJJpz4T;*lXa)0yUgw7M! zG~_R$`~Awr&%>6|!3M<>AAjpJ6`j72XT=oW#+nG(<*q(>^&7VJ?0)PKq|VpnNV*yB z2S~`{o3@7RI|u3N8?m?v-h=Iodjk|r+x8>5sBGFRFt#vf>b#D1VgmGP!h zw5LAYru=ms2dLm3qDkgO>auxR7*WJN>m~@aNkc8$3Xu)bQ}7FECV=RlKzDz~<+ky{ z^lo#-iUY-*5wWlDT(3o%M2Yrrhb+iX@WfaoxUO6jP3)-o%=vF>_ScZBj`lngfCq?jFr7i9BH_Rf+;`x*n`pAuhDp@z z+>*PwY1)4HC~SQ6MZtnEdZR*n$j$Sezs0mh)zZ31!;883iKp|FYY8Z_d7W%5Jse?k zpXZl}_W!QUB(Tdht^d1cin_>}+r1JpHGV^mLQH{lus3FuuQe@(-~{Dpx_#?Dn%p-G zeCZtYH0ipn>h49Wv^Tk9h!|}p6|bK(8n$OFl8Vey!e>`K+S|NCp3QnQIN+{4A7O~p ziPxDc>m3Ffj;DvP_p+=bn(I_Zd=~*E9;ED27cFp9VTzyyb|hztDD3+lf_U1 zI_sboTo1Oo1~Q7ckYRVBEH8DZO?+V_MxNbL8yZ+C_lo2b%1wyplWW zm;UvppS-ZPwyfFO+T>aM$PnNq&eGs0oKoc6HkNNO^`kvD`_DMuu~)ws6S?_E@b_wg zVvw-up$rt4TH^j1%6FULDHUW)DgQO04LT7K`4iM^-&jr z7=j4!6H$s1)}jJmkOwkU2q1UbeG8sa2>)9M*FUjzf~lC&x2X^Y4jhEUY0Aj6qTKy% zts2=1bxz6aXUAbAeAldPr5Hgo*Q1*ckV_k0?ibAQn-Ok>P_Obf0oVV_@o?4(WRW34 zC=}k=HtpzAkac{7cqp26Wtq|Pq`z;Ytr$;9&x&($P1E2vgNGwES!*ig6N)jhNhaa{ zekA%I-)OId0(PN1^tEl!}MGxpcWuKSPx)Mh}eV#^KxKG|L_)HlxUkOXu+DCJMkl znkGgXAOPxPrI4%f>d-1#+Fgrh#IUtk-axim%oG#rnPwk5p~o#Mi&_;jc613X2K*RF+LpB?%M0R-eD&)#Ba;FtB> zfFqL0$=>VEW|utYJL;J!=P+9>>voZzp6tz$%#)VKtPFZDo}y8tP_){{w(Pa6-djZI zek!pO@8jsQvqqO#7rLH$&M-r^{Z)k;EMTta60GjdmhJxIWoah2xmSkLv->kL5k&wC z6bY1QN)B*IEGF2lSWQIG$=pm>2RS9ib+#_Y@R?bBay)imZ`$P@B{b zaYLC1?9%Yyd)?*c$BHcSsiP~h_NIz0}a<%{LrgB_)D6e=L9&q2gD2e zV-Gwgz?aBq&ipL|O{05k2(VIx?aALiRKnmfmH|=h4T4Ow+R-MqVZ1HwUDGR^M%Q`vYWVrCmpUMJGcVv}h|c7V{?(o2 z-(em7POdp?%(*5uI)Q@hZkqc|C;P%b9Y(wDL(6#PUqfLDrJ(DL@op&^PYM9Tb9p*r z_X|UmX`X>QM3YG)o;34HAHraDgBdmnN3=Aax8TQIODI;+$YMt|g(l?kYMrQtTWpeT zdr}oPP_UDIsA2cw#$KEI16ObS0eR2#87$Q-DVu1@o+xtpOW z&?fF%0=J#bWdQ$IQVIJJP_(x*nO_AK9m?x&Ak59r$gBI66y~47qV-2^!w^-lO2D*V zL4Ewo>}z{6pEQ0$lT&eu$378bP?LG16KYsrG4vxcNVC2P7$o+rG-7E7- zqkDD;fSnu7&_8PTHwMPR#NtsL@WNqeuO`Ibcf_oM9&HzOf z?&m)$_sh7J!Go4Nbrfbj%n!IL*l)uvhXF4mhNAA3=J~(9`|R~DF8)7b-IL2!Q(rGn z{ulFCG~7Mc2Osu&T@?t0!<0Ic8@Ckn=@gYlPvgirXR;C!wtU{r^wP}VghPtr?5YF* z-?Z!xbim>>l89Nz-)#Oz;Q#5v1^9u&%_lJKJ^ZJCiGt}Qz(u^B6k&n?Uk3MmawfwF zpdvo|qn*0}@0zV!94K3@4EZZEF=60SKqBlNHm60;}3w?y|u-}i(-QSnOIR_6s$5e-KF{3x!)1-&9rt{>0ev#8$r{>UiP6S*C2)?MtIJ6iwr&@Cp?`EVhzsTCz4 z2oKMbWu?{d`~t#<_TawsO9fverPvgbEof;<7<4vRCqWy+7Vclyz30QnxEp((FM$4V z$qtw&&Tz?>JbM+PX84Vi>@kSc_qO!Tu-iTPw)_8n2sm{sq80wjcDu&);NN85)h)i;DpM;vbu5~dmydb7+I(d<{$NgS zaV87@Wj5$P{<4UY9)esq+`Ge?pO%{hzxGJl*BYo~i+Y&Gc@D*h_YNI5L5C)pL|-2k zE$tXH@k5i67n+KySEh4_f^O@zzntiiY`!qh3*1i8l(ORyiMhAAH-=jtDel&d-S13G7O7boVs)!;t0=0bUa5p&`ry)=O$P>~DyDdpBz-uRhT9xJo%4@P z)lpm28ngXAwJ@2L)~0BY{2={^`_xMeU?Puz?}XD7m^gJoVp-0TMHCO3GR&&CJ<#VI z*-`SjKe8~zWC!p7*eJipyc~M_ew(G~KNwx~tPo~m?(w}Rum0ZQ-n0O62&jRx?JR%L zmRaQ?bLFHO+6X*TL3b88P8p)RvZ6Xi9@ec)Gvi74u99RAq`w(XG%)(Ry>RTUQ@Q(Q zfQCj$5ko%7b!v?Rf_gHKcs8BGlaf*$zN+r}IZPgda>o;+n^bcrTCNWt^{vw zA0uUsgx9ph1Pf}g&ZkODf_rX&hQ@k{4+ZO1yvSv|Z7DO27@TymavyjemsJYRTBzEc zXj+l4;*&q!{mUyzaYL(91WvTdtbsn6xiG>?X1mKu;|{_5|7yu7_1sFhz`bd2qa{j? z8q}e0QrEgP%)KEdUg}n1@EHs;)JQ*m(EI52gf#}Mb9wL0ZSXYD7*r!5+5i$nGXVeE z*wUf3e$)1QnPJ05>gQbesF}%I1pB6iiNTlHe|014oi)ZD!R;YTF15; z2jQY6dk%3RDYs*GZUat}Mzw&`kv=Ibb_Gqg?s(;K~* z=ny(MLIbo78-`;2nkBW=|~Tm}ss z2Wng=i&$;beYXrTJqp1iP_#%8eCZpuY_KsxRYN=QL_?jZd*~><_*FXxeS;ndcJbp% zEaK(H+eIxw8oP0IA@XhLV`>)o%1Kl@g&FU?%cc#77HeEHz^m+ES6MEb;*yuX<*J0G zd9PQ!Y*!2RvQn-86VjwUycp<^`bzeKhJ{XkRN##GAPg%l11phuJ`x+Op2E>l4~&La z<8%z*Y*`ncQKp!BZ_uHu@l)0gB3nIkcO-_`Vp`~%R-iH5mspkz-|T=%W^K{fRQ93G zLnVHz0*F6NN#YM5F_27`D#D{wh6C8>G1nkp+{lJ!1jp2Q)1V#=UlLT3UiIJ&{-9@s z4>F2h%0a!ys!56ZUhp|VO-G=^4JhLg@4bd373Lu&BNbc5g!6_oaa|Cq8zq3!glIgi z=-E!AqDXC_g;Hr6D~h9>9C%KgOYq{;jO3s~CuPIWTZ4mqozZv_`)D8`C&x{qfeAi2 z7jNF%!lbdTWcNY(omJjR9bm{@_S*4!Ka+U)V7>>zh>Y1?Do?cBbl806b0ODqcjwM7 z4EdPlH@M+JC~niH%9rc~Zk8EDFgeAPm;mwJ$u&PM!G`uCuYX(tg`>F+{JuWhE#!NN z04B%s(ucZm!r)F;c(k0Vo4lHKh*S~bekAKd$LZgh!Z!lfGI4NSORf)ZD)I`o739pjsZ}u}_QYae-`$gJO0^a)^&!1JSf*LKN*~e}> z{F((VbYx$@B_H1gRyp1SZhGNfUNvs%hacb;)}n(wQk)qQHzuvDMK9tvx@SxWcBi9S zY==b79F|SVP~r58Q~9v7tBf}?zxBAxOwgsU+2X|`!IdOub*z04Esf%N{6@-Use?1_X_B*L@S9r`t{8TMgnb;3EgLwu&FZ9>fJ!w3Z`}Qn*))aG zrc@R2q2Df0hwe)@^{6q=&S?_Tgy8+}?k^4DzVP_kk~5GqTENAiZ*Pj1@tTlKbMhF86xM^TJ}(e2gt*Kn{>RU-jn6~j$MSb+nOtg zllpF!L&d^iE8G$4y=LRbf#WNnM-H-Zu8uTo8WXo)kvM?e!S(~#_)Yvi-60qVr_dR= z6d%8H3ExUg7)!mUW-6jqRKXC(7ruR0>J1;BY>wl@V8?L5Y|fRa(e%!s-c_t|m*gvD zxRq*Q%G?5#8;d?e4*S6l{WE9Xjd81oHlzRc(N}>(75zj@|x(?7{ z$O6SPfb0HR0G8T(>qz8jub65mAOuz9NSnqm?Ku1mH$X<+_~>U3aE=lq6$}ZAOVN(0 z!mO$mPwhoohP7BdK;{ddkx_&D5Z(k00>Z@Zv3#PetrTZHzrYvQ7u&bHS3vSiGqSWI zjEG>9n35$RoTdTz2I9{#eSWi<_Pxd%hU>DxGhj*@eSz}idoS+kVLOvo(4yo`rpD)p zg&}I9t0PUjvMHY4@!9D^+gx{IWgQctQ-9Z4Fy#ZI>x>wz;G$W8BzQ;}DAcW5Yw=;m z&7v;0H}`==4Wu7@d-(h0kA?%75EE}SbblvOcS+y!8bEzxSGI697=lf3bPbA(u`sc2 ze@Z7amMJ5h5QN?pVRNKz=utQspS7c^bveUuGAt)Ty?C+`JaEW*zHtLxc{f76wgn{l< zpEiD2i)$`sZ=AocJ?cYy=cRrs}v|5oO|L_d{49VZ=d8yT>e!()0n5 zH*Bt`A1I(3x3{0^Y}>f2+#@7xI78FM;KpDg+O&Y+ zRjNtdti2r5Z6avrUP5YRz3Ys1Mf)L521v%eED{_^2YJi)-NN1gGQ1+Un}z{t(~utv zx8Xu94=6XUCOUssGOg2G09zqnBo5c57=@~3zD z`$#$$`@Sl*H>rukdeSPpY2H1a{lTRlBM{b^_kDUnet1+qoPDmn-6*MM4% zDI~8dyX0G(C|8j6Mx=H;kw1;dBjE@!A`76@43HuNzqyfC)v}aGI-v|$jye(itONr@ z?J7#AiR$eR$t8F;8lp%@^_67D1}&2lvcHaMpW7GsKF!mE$Z%SaGgjst`?$he4c3Y$ zF_(k-%)D(XP>F4t@{7|-Z!8Ipd3w#0Na~&aVo%`1u;HT_-n}H{&Di7ejJ1ZxOy)2~GocQ>DCeD!J9ryQpcId<^N|TmX3%+OecfgQHb) z1B}Is05kso*Vg21u&RXgQ*s@&v2BQU6xz|NA_#*cVgrVIj~jm}Rz$_{-|y1LFQR6E zS!+YQ2zdSkKVh+ zGR*T6*qi|d?F9a4b93)#IeplNVCvQzZ}!x!xR-{Iy~;o zy8xPhK}@-&kq}WXl2DJUwU^Ot=9FM7Z`eO zSJo=&MqD0L-<)xyL- zCJy4LQKfGJ+J=VAbYhj$fcyp-i+VkUs)S0qp|AcQQko-Q?%96v)I7>V*lQ6^zFuq? zw%|XL`zSBO?ScT8Ns5d^R3=$J4{@o6`{HZGWf+>;KeGAo|26w5M9O@dGhm9F@&#Id zDYgcCmOoN0;zMGjz5JZXn-t644URis`O8~XP@BJf+2$lVJP!Sjz0o2dZhqIFJucm5 zr+8JarBzwa{f%`U3XrVq4pt6URn&f+W#q}ARWGlMB+v4Refx%tlCXOWZ?kmzAj3*c zFSAc}P_{)nI!ock?@ugqb-wK^CAE8k+DOdC<2z z(`qHv>bg~Z$zynl_tbw5-&1r87H+5pC&MXOZ_30_cyc%)sOu+jiVH<$$Bf5Cr=0rO zV#UI7;_8L*yL-2$4)(o#iFoE@&&})5E%N?G^99x2?fxftdaq{JwTeo&?gJSoGZqbr z{j*S!i!DodXESp~>A{x04aJgIc!mY)RVx2Ho+$b&{T(s^SzESlRCsD>;L)S~I8myj zA{{Fy`e;;MpsWO}k89Yn{$P1!f5o}SJze@(;eqL8#Q17A>7<%U$6-y9Zz2-+4&^Xn zACMuBr*{V;w8(@WY;{PiloZ$@;V2Ge1~B~u zG!@wV*Xl}lHYFqfP1>L-J0IKvku6btW)1rAgXh&av2oZgGHo?!J=}{GR@B( z+*l_H5J{*@DvNgq;O+i_z;AjXYVJ0kB=YtIXr1#}!9BBfpIv(+rb){9j53Tm-J+C# z6)5SlB<2sJvABHf>X4t4w*O;gq1}MMJhlPB%Db$nUM}#MiE5u!GuSwl9~zAMxIZD) z(OC1RAF!`mO@Pn9oFYE_%)q@jT4$Y~?(6X}>SX4lD0mwU4cOmY-#;ARf9*V#D-JnY zjU;zya(3kA&+2Qh$yT&}r5>qY8r#LYUf4O6zR6p0aE9ol^hsRZ{PIXm=U7BfXcnCI zi7VUAS>8{T@jTrQJqFNNmetge663!XD#}&VlIb{IUk?8rB55xdZNHV}D+k|DxW~)iLcH`5yN9-A)Qi4z>1lOY_38$ZHtDOm4d+x3K@@__O+mUI#>n&| za54`Ukv=C8X&7=VWOT(o+m}vlKcZCjQ0evfL~GR*7K!@!U+rTZdG+9R(>zpe*40u| zosYj#eKePX@>inS+qcj5SVWDhN6R{HlP>~IlfXW>;}2xHSsPSs`{>4E>Wons?!B5? zOS<6Q198`SPdGcehL_j6nS`6Ef4UOdN~bgEmdN<2f*2Wvf zrjmP8c)zWo-=PG=iHK!7E@-B7#kOcOA17m+U96;1Lh@n+ITz?Zg(e{dbSfuJ;s0Mo ze1^4kSe5Ktldz(kWj+(RG&r<=X0QS)#iX}2)+y)d%uaaleZ1z@2?g~|aTy*5i%1qt zl;P5^kHiIPiOT58Y85rg@hz)!TjR(wLY0w*>wRYR?V@{E_KCTR&Ei7(OaP5L<5M6g zVGgkUgu}Qm!^U=i_kb=xn@-@Ke zRviE1v5D0$Q%N)uOeP0ejm!9ntv6Q7)0HH&LyT^J<9>}aMA@JG7?`rDNLlaqs0Q>~ zq4vNxXc)jJj1*A(%c(Z>R{iJKM$guq5I|3V=_Ntged5$$gr42cSgyJoJ+iZ1dFO)< zfhlX^fzzON`M3ya_H2op^BUq%Kr>Jw9(|N3ZL%A7C1$z z27Ib%;YJK!*tFd7y_>WH`I|0lvrU6d%7PnG%TIX|r-(m0>%W9~z+P40B@d0smBq5}}=lVXUbtS+pm|jVY$bJ;GQH zr-%o8zg@O#zK=C`^BT2bu-la;mhBkxZ_W5GgQpiD-z-O!u`>e!-H!+#XZ_~i3`!-* zevr9#YkZ(PEVA5Z^UaR$%TR4H--V-O1za0*^IZm<4(!}UaR*(BN(54-P?ll9==jx6yt-n@dHjk+$Al*KpMuR>k-Z0p9EweEQ ze5&wu^25Vw&K>XQs7Mts2zovYb)6B4w=7~A`iHm`v&A?xBOwSKr=6&PM-)_-Cea#T zf7;(>?l9#!`K19tvkY3jzz1M5FVlk9o?~0iabnTr6`@5sE|bm|5tH!`9*><7seCE< zQ;_rbFMNG%-Jf`6e85|tc+xZ|Sc<@e_CDW^-dK1xSQg=^B!{P5pd$_#LLzU6yOUmL zp!l!X8&d#}-Qajl&&DUZbTDWs9BoDGh}YTXKE=xfrpfRV!8ajaWb5mSZY#Zl=#3-} zX2;&{=niJ*$e*#)?&+^hVSX#{juB4nlt5#*fr^BOEu5udb-f;l#7S+JR>tX4XAFgb~bnrB>;4&yi6?(N-vj zzcyXtj`9f==F>5lkq0myym??qv}`E93ZR6>Dt)i5XZc4Nshnpgf!cs16l3twp}2cl z)6qw0ZIUZoi;aohh=+^?+H(wDwJ>@jnhb{qelgUL?zU#WzG2fO0|_*+d?Koq(+;k6 zEzyW6dip$y#-M>I**qqZv<#Z-dW}RP1^s$bg$L$OogbgXQQyxQB_LCcZPAQ;4M=#B zl>0i*6n+rqMZ!6TEvZzO_j~-Kp|Nvk)`>+XN=F-^ffmEU52thnNfzsxvG=mgxr)I+ zkI<8^j4LdKnr83NJ2(QIYK-xYfOAc6j*`vs?(6P*%ydU%F`?Y|MUzKYyQ(KsvEt#V zi-I-}9$b#&E~4~!GzwRX8TkgR&e~ko#y>I(9+QekaY(4YYMffUKN@;=t=sc4WnwdC z@IK_uuXT!G;p_ID09qH;GZaD*_~Nv0;t^pNFXXv#Z0lr$9 z$=3AI^Bc73og*8Bn^(;{G*nHHaGv*u5jL;)?hoV>xTL{!-xrTd6WIHqHXQNtHJ8aX zUSF5Ni9yM028i-a%JI#bL8N39jhEW3OLwI&`}sGHd5*3VBaQRgk|s|&8fuxt)24aH zcp1aK=e4ErSrb6N>&WjLnL#JWbsY|2P0lV+q3{yT;GZ0M=W+bA2_TgMY?@30pm~y` z%bAlX-S&hlnT%#y#YlDYY(Wt}N1$T1u^ZsP?&#&y!5v~z0@LzUCjyJ?)A)3X5|wgv zbp_~ZByzYr5_RJ&4~SbZ*MD)a6^Wodwd@c$^(}qX%;LRlr3y03;Qul8mSJrGP1`o^ zQoOhoD4{r|I24LQ(GWD0;_mM5?pmN|0t9#00)=A1-Mu&zTKIB5_Pu-Xn0zulIBD@G!&lF1(V2={$G1Kss3FZzuU@}tB@os*#p z;9=Vua4);0LI)GNeLwG8r@*GMGoD9#7{R)up>!~EE^m%#wnh_=bYstwr|1y%T)mRJ z3;ezG+}%QFp9Bas!1&Mpjl%fanc|YH!5uZKD9U=&WrHV^EI+-yOLbs;*k^YC#eYOX zT7Q@o@&VQ#0cUR@O$aVMq4b2U8^OO5VQkD(ExQikof3gA8_}@5pm7q| z9Mc@|Ctj9^O=S1s@ux5MLV2tCfc^eitBAQfC1DxQN4eel%3QnG?Xr&4b^pA0vTHEW zWfaU^rCd42ZZ`G}79QCD9To`3s8ukwAFn4RflCV%yO3!okdv(i2I3SfiQ`d1}ykv<&O`QDWlF)t+9b&R;7 zCVgS-icI80&i3PbD)u&taC?<3;{$h6N){6@_ytG(hEE(rA}0xUmHI6kF=F&=`P*)ul@~T9VI2tTKZXhUL@D3aL6{>`XHCt@h&vTD((4`}8C(i#&krhr) zKa5~rK>UvzM{Xbpv;u68?2M@kN4zQY-+4WP7q+a5@cabGFrU~P2pe;}RoxG`k`=Q* zyX>pN--*^Hr)I#o@m~nhBae7v%1DmjxP4sX;!iD^49`vA@UTe z?-c6zIizSbikWRw*(+5njr6u`1~XRI9|?=!Z!8srDz}d;r{!3YZ_9W}ER_k+#l7t@ zakbVFkZx$!rK$bN7@|*I3^F2ZPT!iUyv#3)^a;jrsx8zjOilva8tf37Gp%GqX_tV` zWS|d#rluPJVU`6O&xE5eiXWU?WV_V<>_aT5lG2v3>;Ktnp$kaY@hT##lSW`)cb<%z zpf?bEeR^hkw9eyrgf5E`DwnkG;H6+G|L{-D&DBvG;qYv0i_2cL0(&+F`4q4$e~Vp=u?x?Y=*{r5g7LIJG@2=R+pYmT{p3@-G(J{N{=Bzd#{w+W0^u*fIyW zsYYnC8DNfF@zIBj*gpw;``wFd2FkDroT4uUP3I`tg>OHQXMA>iuYvi6bbnc3Yt134 zN;<{(=4^Hr-C`@}q9%tL+{opm=*e*q1_Ob56M5|WmQhTUAW(m98Hn|YP(!iMYt!#U$(n6p2 z9_uXhb2g)lC(mqGjd3le_kynFpOyLd8<7?}{jX%@%!faw;`wPQ0Bv0}D^W~tal^J! z*!QE~<$0~NKQnYGrLVv473dIlt!nP6gLBPaZ6J1H?DU*77BypC^!Mt+u-CPGKGOg2 zFQz!?qk};IcK-AAlfZ~bUjpi?FXes$5VR_u44k~WfP7GZ0bGEM4r3ri!SsB{QF2AC z*l)Y*p^I^><>^ww)a;Ji!}=vzw|5h@Q4N=hct15VX?Z@eeea~yATt}|BCus7Ir-+8 zxZS7ZkNK`p^sH!E?{IGMMb4$J)78Y_+uu!Gl5#Bx%WSc)^21g+8F+aA7O&llc+H&9 z$8XND);Gu3SlN+S9eA&!?Hs4dti={xCTHy0L_{F&@ zgKTv>!t*!~8`!E74)S;ONyixo;y-Rm&HiE?pr`-~DeKtaXh4|naYyl$*uZ||g%-T| zm=1o2-iZ?t`QL-9g_2JSXq`4K`mrE{Z5#n}RblOgh%LRXB0&6uAkaqxC0I^RZ5}v} zt80gpf;|;@O)CkZ-p5ZPN*jIn0nZ}%6qPN#chTr*JZd~nz@0z5mvg9_^a`j?T-%RU zGZAA#%F(&MJanNMmui>&%!yl|Yb)(D{t7&2zlnK)a(oRbNiF?8fM5PcUM^p)4&xv7jlao2FK6*Ipi8Gn>lJH}EU)oX#8K`4k*HXn76CKTCA&NAh+ z;r=Xu>T2u8PVSfZ-@z&cSpD4>4h^qbfwlK4E|jW77Pa>M2dI8t`HPF{|*!Q{UD}?J>(&Br9%3{rOL1 z=;rGh3m8LoYBlCPGF*AKah7V@q)>!y4+4arlTQK7hF*^8w7hHiL6Qt*h%xj3{M|(U z$0W|)cOHk`01yfoQ;EMlDG<_W2xCAD26N0nEi}S3?0NRk<9Oqg;qhWuDDW_lp;=7` zfqN$*_tYy_ZMb{>Zs*T0Xzf2kFbfy~vjrWFR11R*cM%)QLqA`$cIN%z^Z%KQM$0}h z)VZF=r|?Y;#iNXDD`O+6;_X)-y|rf{SBum5HIn8gp{$%oi3#nO)B-M^c#16JSf%{GNHq(rIqfbsiD8Oh z)fpt(sDH&8XHn67i^`)q?XEz2&+A(peS_ubIZzY*DK41zPY-LP!!}TYJpQu*5wX*IgB!R>yO91W`#zCb&Wq0$4QGu{Bo)#9uX0c@zH4I zeq$%6RdctM+vs=|*{&J$opPRRqPX~?h`No0`e?Ye@|XOj-r~>I(N&5BJu;E(shCFW z^k(bjPyFWsBbiT)+L(EF$|g5ax8DgmQhxxr|Iv*?U{ectw!Bho7_TtVl!c;)kJ%~p z_BZ$M&!1lt%H8`)V7{ooMmnDXM!xZgSt_wpluBrZ=>IsLk~LDi0GhMF0UAOA`oqw% zS%JJL-mYAUZ-cG8B})MYbeb{LSyK-e`ZROPjS_6Ah8OkZe*JA()JCz;L{1?x6G@e6oqW22Dj z5qd?PVt{fR(yW;dTUhWa{r#$B}ENR}{Th(DO92ul< zv5Ll{Tva2`IakpjoXE?qfsE++tG1u~OW0I@qF>l&o4nj`m|0f%;!;c;Mw@XuqU|$w z5K!R%4Yl+EZ$$oc{jl^Q`zPx|_H9Vs2N89VR=PBN;1-D1EfrY%?iPG};|2+>6K7f8 z2aczauK8MeLE(HV+SQ=DF>Uk8T?Mv%n$f&UKFZmEr9y4BXNoL5z->ihTK(4dh!Lm|8`I#VZPrh)W?q?l=DfNE{V z-V|~-cA7b>fg3G~pPKGV9_~gRLdHZEae>EXAtHFM;%CMA` zkO2_|T@|$6VG~)COF>ZWD@|?}8e%H=z8Y;P74Cpk9f*0J01Ah zia8N_1WZvHN~o2QQ2#mUQYzGcD4`i!xse-^tkTEO1L%0_;(N;J588UmX06@!7a|jQ zx6dar{lgC^)V$d-zLk_WRC7j1hG~|i{S0J9@yk9kz->kza$l2Qia=IYa4q^HG^e$B zeP~efUx(e)guT>2HDT%(KyX7NJck(Fp) zRaWTZj|=Nkdol2MAti=l|OwD@HS7~PYR<88xlOL2dxt`1^GNYtTb zP|zq>O3ft^V$(4X*Ia1B6@G$v6WqaU6vG)Qfi8a2dGqlq=EuSZxWo`MBRdR8nef7VuYSeq-dM6$po0atyBN8~1ZGMEbWwqGyi-a}Cp8?Bb%!{@livAH|}i zG(dO-CJC=O1UIy4)MbwJKD(uSKE?j*&^G!wKztW+Xe6m)G4-Z#3^eJv0Sf)KB})BK z`v2B;I_%R6HuzTS7WfBx2~aWU4i&5mEbbd6ZS%tyfGP~|9@`9T@i~9Z&StU|v&dAq+Ptjbo#3N>L)*QYZ}trIP4^B1 z?a|P@v_8gh^hDGLo=I5`&apBga{Lu2S8o2S=`cF2Y!F;@wUMTyj9FgB<8H3GLPJZ! z@nKhRH?LY+Qp>v>lEBqkDQVCFr@8H6A$+eSfu;AIr>z*7vV)wf_pC~WMt7E;_Rr%uez2+uM)mYSXQu8#C;J`wG&F__i z;M;`}&!gK;+p?cE1FBu+yj zW)?m&md(D`nKJWg7q^A=e+}VYDola z&?88&J!N7*;k~7T4DV|T5moCIRyqFsnkU*$C4^_fqQT=-BM1|#eibeB&U$skX{b@m z%3b)mxssgQ%+r`&?-WSIW+gd9BOBQ`vWsU z<=Eqxq(nx;a98NSoB0la-3MJqa69#Y2;O45M>oZ*x`tAkk5ZozFVOiKM8cgjeca*7 zH(X(Urgg6d)NI!3OFr8qyd+U6y1wttxYd5gUYz2{Ha-S8L+Mcr{ygpa4{J3^^}K3= z>*k)X4G&HMS6UKiGUBdzE}lrBKb|}h21lO7fj13vGTQIP(l%kOWbcFnv6O<>F?!cALbJ`~Q0RMz=i zgyBFNXk(5@TbEXeEN5?Ncg!Hrt!C!6X|cR2jix~Dj~L&BN1-pUcCe1VM-#?2>3|E* zd$f^g4MF9*SW`lGihZBXlL_0UzLJchp9926w_;+#=Xv`WZ>pwQyW2kpRa2p-$I;Um zGgi%6|2l7JGyM_X(j!i=1mcb~TrIM}+a1(CZS_wX_Y#x~l?h)x>zK2K3Db|>bmNp|H{E3!&+t4xEPmvUc)}bL zZSCm2RSbIP60N3394#?WrmW;B-0TKrXVwh_ZlyCaZ^Ci>3H9@q)wy4TrB+L1uUz%@qKU-JzsqR8eJ6LXpXDwycn&yH<=k&_C8B z{+OEI$os0Q6G$0=duu)(ZKvOn)?U{Fc9E;wW?2@Yee(B>`O#~6$KTP2x{qTKnM_s} z1f~&sV&JRw{J2-{AKkPAJ6+`s=;?y6sYTBl-hPgs>G>X8bt@Txk9~$>F8I&mR@eJh z4q1eS_K}Z!M_*HwB*Nsc(0xKAz@pMDmp3n9{<>>9G=gxpc zt(B*LUjy3=XV%*$P{Q?F%X2!yXXDKCS{IN@$ijdFlwV}ncoE*}y6MbFW2I4Vv{YHK zFp-4)eyr#xrsz_TlC|`wQ4KN|fZ86qROlhMqm^W@gL*gS)$^3QXHl-c9RBJl!vjp3iZgS0i*zZx1(Z-w`L zHHk%*M?tBMk02J9Zy&aD>lNcW36|Y1s>fn7aDk(45ma6+MDh363EDF=3#5~z#py0h zgR}h?jL3Fy6q)B;!dG{Mb)3tt+o4uvH7r@VCyN{1&VEn&z*$-mk^nxeGn|i@bYWoF@?hI>KElH6} zVpkbSj%GB_iH@^Pd@$~*Ml@(S+nk>dGj@ky9MNKC=g+b_D5wcu!{;J;APes!_UfZ545~4D6eiKZMTe6MamFCXG$b8^QPz3O@J z98X8db2e1`Nh+BrjD$HOtGQ~9m!*XZ_nxzKA`zfU?R;R_=|R|U2lE(lLyZ}A=?h38 zf(j}za}c*}N9!HwMv0~S97!-p+H0F`@X-);2+zd4D zsxU=Gv`rbLQ%vJVSMg>KBE_vXhH3GpIR$@-cFIE!zmgd2%YUzap8Ug>P*OeP+!C|k z1iFCv2oQq418lw$1BqKykVP&0nG;o8y!}~5-;sjFf}EBQdNU|~!Ds-=6~8!*HZspc zws!|Pqm+D144*SY8Sk!aw&@PG9v8#R#e+3>c)_noZ70C!ws3X%;T<&EoxQM_D0i%C zD#DP?xU*%bW=Brtd_HSR4SJLC9Pim^AC1k@r}xdEJ?fN}+$E^yuS&~xLc<<5-6oS@ zt!sQ(KHR|l$kHU(_4+C7!A(exu+tm-hYLFMStAG`AOYQ?XpGi_?_vW(cobA zH6}()PJ*a;&-cvg9DGG#X0_PpSp&BA2E(m;O;XAzU9$HwhLmV5RIVuM8TpLBuMlv=HoNNc!|`4 zO9oat1_*iRvMvDB_^shE$P>wA+KcKrK@3IlRQ8tCN)<<_{{>~ezwSkeOKc7N-lfnq zv`RV)Xs)s;AX|Mw4Uaw5Zrj}T5kZXdAg2ol z`K^0M{Z74-T>@h$UW@0{hp$}vUolP!%h1tX*SqWqCb8ipN&|bS&#~O$j7DLVeE;O4 z*ahT`SzRzG>R&dQ_DS9iY`A&*uk;a~>yYNPeecO>MF$M>1W_&pa$XR2(%dy6soZmO z(m3^^V02Jst9QJcIct7rLhi~v7mvab$GC8clVnoBkna>#0*U)|CWX`88_qm|AM_Y; zwDerJ)x)IxfRVfQNuXg5iI00^ZFA?MIhWvvl!fmWaz4G(JR<1)_U=1hgw|Bc?jLf! zG0J?v4}yp^WX%V(zTSbzAMbu-i5?R1&k<>WxUs@RQ>l3a1P z{+?|bK(Y2O`Z><*97Je_iYTKc!Yo&yZ)us*UlncIfyfRLRbQiN;8uMsXwTrw*qP!f zSLD;)CfIE}0~BW~74-5iR(B^c5>Bz=r{Gf*4N*m`t}2FgO!BC8Jt?ezJgKCSr_Jog zSFv|BE^3ebeJ#~4_E;19+r6oU>xuj|vtlkGi^SR-m(e*-+T_M@lt~Bk4|(J|Y7zZ8 zBrW*$A)y-@LDknx8j$!((CZ_tA!xx8(OOLxq=gWxIw z*YQ7&I|%0YR}|w&MOPsFoXb5}Grbm<|JnY}Pd{q{uv1^nGWB=8r6<}x@GP?*f;Rr& z3fKWL4MDp(jrX2LE+CjDBth)bTzxIKDWROxULP3fY zrsi-XS%3PbO@>>RKz4^axJ?)81@a?YuDdLfW%)CKefI`+Wa(Zd07%W>h$7 zRgDDApbo>?F}HeEsMwuG|C?*+4D;vktq(2eW}*CvVuQnn%)73bv}zr9fJ=WA_22ei z`h9%zF8~@q^kwQzd_*fcsN%|Lu~w_?Bxw}RqN1dgD6l-nt*=%?!bVT^T0_Oqvlvkg ze*e>%MGJe`tu2-3%;VjG>Za|rELHr|6Z&0qM{u&I(udA}N4K?I#~N9zA3j-o`Q~0g z8oB^+TgAhhiL|HOpI!wGsOPj^zscnu(a;2LS1ILa^VCf$AnR~G2jXTR|A;fo;L^w| z`SJU@3 z-UpM8JMF^uMYIE{{+b~S3@2lKL=GV7dhfNLz0JBu3LemTwW$-esju+f7{l@TIRRf7 z}&^sea|(?8bD@&x|Ub%+KChkz;N>8rwNqW(&6EZE{4VQ?U&ZGPw~rPwDpbDJ%e zDO7qLk!NT-56HevGoGbErhRj%R=!YwJCis!8GWNxQ#rI&=f3uMA;>W6;q z6IAlybz%S30y0t1(()*dd;6-<5fJ8= z08Ow>(8o`HM^P47!j9#A9(oU)mshSpw|Rb_XlK#Rnl2Y@ut`|r={W^o0kSSK0*WM6 zlrI6*jwUb>iQ3quEYpPgi1g(-X&CM)kd{T~d=4J|`P@r{7Nc#L^3<6scSGyk)H-Ns z8R~zLYGG5I%&XuliX+LgoptK(#zXQRK&6X+NHvVvjLG|h?AN%1u%k9I3#H3h}r7G>n2g(7mdcbS((#PPgWCUD2e(Q+=D?&sT0O{w_MiLX(4$Y*;Z4$ydS!SdY8cu13iKzuP`Z47H9v52y6sh`-fExv zm_>&4`_maZ;T^o~imQHJB(~G#<#gRxVM_8qX7{?K`bn)R`$+i2ud=py@X=mu%Z>Dq z-DglAiESulV^-nPQPUhrJwd ziNlA1ZKt^x^!h~U_P(zybo^s}!-7erL*+zquHU|V5vh{B&O$HdB(ah;dTKq4LKz_w zDGp1dY)wsgtF$VfekyEaqIwz9fnihdHm_gB7Tb7*Lmxaio)=@9jK9TgfIg!Kv4|@{v-e@n62fp(B&{ z?$KoE=d2i`DKH70DCKkPGysypY=-%v*t ziaSU<1pOOFhR@m#Jds*`R`$m(S(`RBV%qDAP7pj?Wx`3vbhX~icl0Y}ww=8tzQI4y zk-EG|FL(x0Z8wvtgMU5U^{>jp<8c(Ik&lzwQ#tke^UWjr9Yg?HSr#u86>xG~PFojv z(Xymrs;#eDVvo(nr zdOtGu16=lapuh4kvL)NK@W$`njae6sZg`q>CEFtKo(Ku!{n4P#&)P1RaI3i7cs?b!%x^Z0)2E*A)5 z>Hq&r@;d!6avQh-2a|oXg&m(oiHnt@dFeTEnbF9obpm#4%P@zD+A|7lC~}qfv7^0? z8wefQ6*Nu=6^iYxEkh$(HuqlNQgnb zP-5%!B{01I@lh}OZnQ$-D5Corwd!rdUO7Sg8H-R#7FbL@^|lKC0?xr38RePPjR(H@s^sD|K+lq-fi* z&HQRs6J7q-SKtEW2rw%hxKdg#vqX zV(hG3zz0%s9lw4bW0Kb@`0+mIBG(r#@LYU}}v7E^79$cm!dR`&YsU{sW{Hq{y2 zRj=+Bcx-s(zbV&3=jM2UO)@kE8cmh?i^B+KcyfYgbbCU32Z%T&%0d?2!6J*~?MWu$ zK@w2EAoFg#SBP)m9X^^~S1inRwT|SOA~cj;clozdt?)$*Pu3gdkNE2bnY?TsRhq8b zou8U}-s8}>Sj?W~k1{8zcaXm~y2B{rw9|=>3#NqxIm>ivec6G^mZbAaCk?4feKobC zh~ek-Q39lMHwUpJEW4m0@pm2j_7BJwrO^)%1ko?!BDbViWaBGd*30V3-8_ON!bGa8+4VX-wrH#zpu)U;~k z`%lUt8XiuLUS#hyO6?r8_3J;uP7z|Gt#8*WMc;fna3?neN?H2+3B$xqJqlipng#?e zG=l#8#hlLhG`TNrHL_A|*y-rVqyIAM&HhhQEizkIP0he0SogwQFLkr@N1Rh?xpb(a z?4-Aa^!8is1mOc@`3y}ZF{Gp2-q`er#aaU7(e``xrdrTP;lb$ptMo?3qnRh|^PugR zNrZd`fHp|+_7AVkNcP=Y#LIN34sogI{wMJmOfeixnts3!M-Hl_6bP#dpK3H$cN1vB zE1kNxQF0jiSS?BCKL^1?iVwa;herG1K7O#@jijm`QU%sKl#DF8c`#_}-qoV}IAo zV?X5%f*1i_?IJS5vcZ!mTBk65g8UZ714hBvPAT)AG*y5-aG#YvG)Zo zPJ_|GIQe4ni3ZEiy9>a-g7k@PB6T0SF1gq7N+goqe9XU~ldGXSNEy4HBW-=d>m6AKgihA{uVjC*7a^7@v~cB3tsxUX zDdDq4=9g7r@S^@-SzUT>XdFc`LlS?|s)8&Uk7%f)^HvzOT-y;Pbc&bMMVPD6RMxbwNZ0 zI6LjE$X4?^0X=e}1=@?PE;c3$;bk|N39Q>by|&Z@7!*|ZFN;vLQ+*UYuK0<6$F-;C z=`sOg7+Ah!*_xi$GjDMa6k=c#01P|>Mn-0<8W-0E+)gK^HCdg>)bA6oA(U!Imwhz% z+w7YhEgm>PN@zK9{~pc2?Kc8y<+3AHG90N~}`V z6Un-M4{*?&hmo0E= zoq8)iWS~4Lh95N5TRdulE!zBe$j!k`G>%#~H7+W2KzI&Vk z<0=LI`Sdw{jXM@F_4S0fOmKzz?EkmF0L}WqYT_a%hn9B4<$z&wba6 z9=OsX@kp9SVa7qg0yw<|hBPY`wwM2RMDVMJ07yJVYb*g#N*swb{C+@p2N~ox zim)!C&~dNb;@B&5vp2kyyZNlf{fi2Ls&w5Pl&Q(Xl|u&(N*m{fI6Od+5R##bSdlZF z_^BH;@#2oIp?!+LZ*QjrI$Asi*T#SI(>hzh+66hX#*A8afuM5^kA5g*~wts zm`)&H2jtD}vmkS|mSvx_k`WEdJ{ko3{KpdJz$^|GHAh}9!0xGCnDG0F$E?V}W)Ms3 z&=t@+;mEXm|6jAJ&B|eD00&X>=Y&?3YTm2l7~{16?FA5%iS$m%RY2XRJhjj*%cj@z z-Mn9dw%0nZI`Uua-_7$#@?Pi`qb-vjNP7v_BZfTTkMYW$w6k9@ZHm>yF!Pp1(N}VH zs!h))381=3HS)~re}3tc!5*LQ08O?UdaE+bL;)NGORtjHw}LPh9CtZ!#~|@7USx@X zE9~<|s5+dhp4!M5OC!s$9H$z|N@LHqJ?y-A5l>y#{CJ_Fle#X zrN({eyfB~EEh%3QVWo`+3Gi=v6P3 z!&JHT6JC|_@95E82`|n_?_K*}I8!Kn^RgBi{0vu$mGlbm>c-DD3n?Y%#*fN0hf`n# zIiLqeaLc}*rlsR5nsfVuFYpzvQz4F!qjKAK{I*5o^GNOLH%8QX+3#nhNtJnRPgqw8 zd(fnl2Gt7wNlE1=XF{69;)Luiie3!)_>D`+4bzr&F9?ZR*QWnACv?F&Y6SDN$K5w& zKCBE}R*0@Y`{-_~9L?e|mz;WsAbXdx^``am&*_!gOUT*U@6`4~R|6#GWqi};>-w~U zhi{_R06Y^sKaQg`obfPKYNYV+5>vg?W8t{2tyOB0^xvmk1*VX|TDlR&l$Sb58+7mN z#7%!1@NlMSloY-drB-S^^`kR>l#<6AY(WwGn8$;$h%L=R5_C}|&o%|#L)#+W(Lamo zGR6M&&8uCq7@B8r2~=Gyt8I5^`rw>mhz=g3R$zcc%-%r=yOFMNxQ3S6^n_G^ChR9CJNTU`tBEJ+V)PfN_s+Fe{QR9 zjR}w7gO2g^!ZMWHek;V_xdtN!_t!_oR!l>>Oo#}ZQ7!UylMIh}&O<>zZ0~8g|*QiqLOEjQV>aaV27t|>(=?;Rr z)Q^CLco%bk$W*K+9zUjbjqL?w%7jSpR$P_hnjbg-PKHR@8~^)OME?b5qn0GdLqhgh z$+!zEO8-(AQTFbU0W~eRfjG7){HENR{PCXnW+lf>*T#Cm=x#VjssKp^cUfguvZ?G( z)T+U@c&Vo;>SA%x{F^TGmxhwRzL=lys*eOvxc>rCmVE^8pJc{xep?aV&x22ae^m!ewL@@<|>rJ+HD#sgSS zyI(FGi{9!Iob97XL|ajc(~$Gkm|sV2&NcsZJ!{N?na0KhOnv?Y>xHf&UM`%pTNpHL zGvd4Zrh5ACUWlc*HgDK{ElPSGJZ+gFQtbO*HZLEDrci)l7ZhbFLPl*PE zeLKL0Cn%p@jM_A%ARhL5x+kZAJ(K)`K3^-|8o#^H#B)NqRCPGe`*T8GK69DlL0|28 z23)j=85H*4#YF5nL2-|C{-BxWAXiVq`q$Mes1xQLX67#k){4Wr6nnJfdvVCJ?cib}#SsEKGs`ql+7)#=^p#EU5Xz2cU{AJt{kNRZQs`a>N(Ue;-2t{N&OnPBNl8*P zn7R{9?v!)OIk^;Q+yufW&f@(xx4#Nx0{QqFrn;IR#aORU*SAl`q1_Zxzk}({zOhc; z8k}Dw3DXf&Z1_Znnw`Gpn%TK~wj}<&-!@-UeZ>pKn+4vQ(Oi(KiQO(O^yN3^66$r^z zuZ~RmXLqp#YOkr#O3ce&bUDN$Uf*Cbza35z0^ukn#)+AsEo0Lr??)v(oo-L|O6V>t zr^!lnQV_wdJM(_OcKdc+$3i&PT5dys^@Rs8rKFr6O|hKXuAs)>!M-tbjo&lTZEucD z9(4>&f^$iicJKb?Fh-OJ+DIAs5 zJ!ogImJmHht;lfZcC~i=O<#nQDlM$fHGHGt%-jNy^3vx{i~59lQho=~TRR!wh6^40 z`|cyX-cos-H7 z9d&9Cq_O{0w_lBJy~gaC^XrR+A6acB8P}xJk>(SLtEnou37^~@sW;jmoLi#BJ|3IWMIy9W#QkO z-_fRvbaJ_fPSt!2iT56%c;b^n%G(eIjo>C`=MP+L3Zm*BIysw)cYtcb-9<4KNW=9} z!ZG9qM6);D6eL^nl-i}VaGtpcJzo57;^;eg7c1HW{_K;H@Y}#s^{5h?CyyAXa|Iy* zi%2ek7m$S(5M_GuV@0WM#ie~=p{xsD@A$_?9IlYDP`*NOEdtBOU@K+l(q?ym)P zs$Q7&52YbUny}HExD&ahI7p5Gifv&n3Q)#UBc!q{y?s&WyH~X~-IEqT zu&%7d`BXg>hjEN0W1rpkgSstNF9p?bXlNunsg)ll_E$6sE21w;b@NkoDTKZAobaP& zf}h9_*Jvi~q>08vbCJ<1V%6eV?PiyO<99HA0Y!vJ2+}{^} z%E|dHY|*K~9|3Z#-seMqg>YN@Tjh%tITrNlw|b)P#pIUBVvg0zq0H6(yWQ43pl+|H zfs-p0-}Fx~Y<-410LLM&iAxXBIR=DXL9;rO9wVkEFk5erl3KnS=bKR1yVyGjKT!7b z1>iZP>BDc1#0GS0fQ=)`gwv%859c$)5fbn5@DHy zMCElY#W$^*uRO zAJjT${5|figLe#VTbgP*N~$3{Oim;655TP;%L^b~{E2v+wpBx9q&E0Yq3dDB=T}$W z>8o7Pi$;iGipDp7tpDfSr$6?|7ef}I&&xi1U|B6~Om|Y#IxFjpd~PW#kI4jo5z__NYJgusaR zV_^N}s1@+|!y^<)mfW?XUm_1~%NtUKxjSTuB!|3EZQ@^$=@q^4aSi?*R9kmA1F(5Z z4O5X44IA7gz4GSmljqhb8y_wA#M4+tL6|C=UGNasvgyH|1mwcGGOcj((xp_w(fR62nZ|#Gc z4a}X^20BlAd=H$z0Q~-_qepq9gw)$g-Z}3FwuaeYqsXKSo?tnii!h}nWQlCcnm0b*1EBXitLB#m~@$BhM2Pj^%#c zB*vLU6wz2){l~$#$i8HDpJ+K{t?ggqVVY_LO=3yKd!Q<@6glgg@f&SH3oKxdSSIR6 zk#x>}M;2GNH^_?2?!>@w0j|&W$dRUjrXd>DJy`#&2v~G07x9az^ME^1GS&N56~#a7 z&`!bzXY0{GZXbWSu(>~_go{qk4TMdD!&5OkawKp2!Lr>-4x)6}gJM01#&YDdri=MKrv=1a;Yfj)K)&(w-vnddphU-4&#c z!tHra?jQ}T_H&}oP7b+jhMzs}EBe4>6i!7AQB-eEtWz{(f)MO$!@aV|BtG#fQqX7-d1@P0RaU8 zK|)b#D5a!Bx+N|{4u~M#J)|fgNW;+G%m70pF@Pf7F?4r#=QsMs|M%U+V%7rIW#3(A zpMCdv9@$+w43eQ8#y)C6C-1cBjcOBXbu7)BM$&p@iF+r0 zL-P+9^ke>xUEaDEnK~wO4{kh!7!xc2BQG&9qUexWp21^^Vs4#ZK6nr3&xSi`w#ne^ zKe$4$8@3TCz3RzAA~jRvavHfVmvl+GlI3J#*<`6MW|HP0w%pMmf2*ql{D>hTLUMOt zuyyab4Q*O`u4t87rmLHg$EFi=nvF3l4!UBR0Lt=eku9Btq^=Z|g)JvtP75QM?qP}D zj%U>xe@-QTD$7pkpQT&#wR?STIw97YSDp-POU%iSlDRXq4_P}n0Q+I3%pptF!DIAZ zv+(U>-PMX1hBv#wEm*?jIyRu6@G|O?dGkm!{d>$}j;U7ub?)odFbSKx$a9@eFUkxA z0Ye2HU4%^j9oV~eiMv7((;QUYshQgsPD2Lx9C@D+Yx!_u&f&lixlZmREBa_fR5AE< z#ybrC^baRLBs3DWP8}O%Opx-L0B7PC{)_GPTMOh}Cegax9^j&)hL4B+_pvuk)7H62 z#C-e3xLz_veA(q%CQ6NG3BYh+7djQn3tUpWqs93RlF8_7d21ctW0>8wS3#`O_e3!L zf6wXd+GF@L9lOufm9%%z7= z9dQQ5#PN#7w{p)L9vftkIcj#(hs?R^(>b?HFsPAt5`0g@`C!{(G`7z1OiEVt#VV1G z774pQx%rv%kERv@`oss=V{IY^hFN4$>|4Qsn}Mf?zcjP>de^Dv-@Y}7e1qED-Ff|@ z<>R5jxBKm88zQHl3L38Mjtr1cZ%4`e%la)lm+IMcQQHh~A$)V~OLA6oQ5U4|ed&lm zJm(45caS@EMGKhxqn5RK9JRjX$!ApsUE4`k73>r@-`fKnPp-ZJ% zv&KlyWCiOjleO?5dGjq}lAQM1ptKhhloApa50|YO;z@;Gi;~qXnHkv`FLVeMXkgF= zO)_%w2)^_qDJFfh(%Db1!=P#;;jEvESADL%dxL!~BO}*_2Xjx0X&TAkE}sZ^jhe5s6H z_+Z3$idgR@8ZJn=Vhvos$p1d|!^)Jl;k6{JDz=hzUobWLW1%SlBVK}SgixV+p){`E z*;(i0u!ET%c;Dt~qrfS9#o0Rl6Zjt{>NX|smvh2_W#}V_dihbvD>h>jti~-~L zs{|SeD|Qz4wkW4^l{3vm;V?;QEvc5EXeYX$e(h1vSw4pedtDKWtg^leq%s^%>4Ek? zhCA!UrN6UM_#(aZ#-`&7c57Fpf8^vK(lQ^}A^jRN%yk?zlwkhwbNKgmqruJWQpx_p zdn8qOK2)>C@m5Ai)!Pui(5F9iStngdstWqM!GkwpLK-zOIYOwBJ*=)H~*33JL5`WY!d!1R~@ahrN6O24AvsfLe`#D3*H!QI_3 ziUKHuD|IS*wV|k=dJq2fp0eI!7uiN)OZ^1sP_kQ1PFjyi&eD+Wis;g+WDumVoC~aEg&x}TYFS5?50cu*j=(xQtKmMTp)xO@`HY|$0EH?FR zP>t*3!mRyby_d{M$e68rxBodA91e&O-A3|T{@jHd6w`VOuE)4n#K>$f!S}S?Hi7t_ z#ORL#dw1M{yYH5c$)Kl2rOTk>hhtK9+Pab@6<{WkSgJI+J>O^Mm6hP;2TDhN8oCda zS3{Xw9{?IW;{B=_LWgnv(wIA`;vb(7GZ!n(Sn}Bt{?zqK?o2>LKPj-5gY^#kR5akC zciG%wj#vfn8C8U;_drutCnuKA+nN}=?`WAil_9?MnRD&U4}`@hgRD}2M&iKjzk+cz z=$zq)Dw?uD%vccnp!JO!kmL5io#am4`o+f`+Kb|obBY%)!YM;#v+e5qS9xNGW91tJ>wBLB| zf&X3O&8MUro43S&g(A|^Wc@9q^=Vf^NBj8YBI5Nm#*D~uz3G;wdgro&!ql5w|6 zMaRktS!!PvP;C?#-l4l#p2=qr52oPZ(Sv0dij6tyUXKjw!PXodM5AdjmR{Hb0>j|X zM1s}#?k;|Ke9tRxEvcF&RwvmZVU)m$l)w92a|&z1!!Y$bm#pt8KJLW!FE;ECV!3;E zmO24Rthg4Xh|G2h&0*3<%+l1`ubj}ke_hn}@wt#*ZBIbZUn}DV9eF270Vy?mA-TbJ zuXA|mmT~4SuOKC6!mC;iuZRq$Z)1z5vmsR|6E%1A#VJ9fvW>@z>kT%!*s?>M1ByKd zG*Q6!443*JL)0$?EUx0#t>-cQ)W*7J$fMAy{w=5s6!X#3_;@xkCax`=0*ZOj@Y59Odz%cMvmmB{#a9LGX3 z@^vPR0WPBmP0{S^=b6>-L2`T=@Wea9H@4o5`g8eR8`A}(8+DLK{WdipjrzL7_~+e! z6+=x`7V^FDm)*2BP7lR9)rFcKduZ^q2p>@NGl?8L`8VJ9So@eq^`h2>cIvp*@hT?y z%dJm{pONAJxO?8{ueB&HKhU8rRkR{x^QKsqqeb;1M((U$VFo#%=;4Q_%AA~?iwu=)KBq4Vr!w{~xX za2NhzImyZlY4|n2g+zkyS9i&%RQADTx_4{et(XQuF|71QhnDWJG>$i&^Km*8xP5F- zCkSjmhIT~>JedAE1lo>-R9aB_B!p}N#_c5GYr+t^qSqQp`Eci~5bYPlL2k`m*W?A1 znBBa&K@c06*Ei{!pFO8u0<@vSnjb;pUYp=ONT z;pI{4>BkmTMhs`c#Hf0g;+@<@fEly+65u{DX45Je)0qrFp039V;a)Rz2Nl%Y;EoIK z7boAbfDd_)sIKoJq;6pra>_Oc_W&t;8C!rfc)_&W${;!qC9+xJuCb8M_DUx#ieI6VqbA= zu=F3!hR@6l>t5})O!PPirJ+D~AV)1xo{!y0K=UD~bOq$_yR(CPiCEi~5C4Tb(K?#K zAg%`}K7pXc!=>IOaCpxH!Nt+qns+=q6Qu>GnW;F_)8c|vOOJH}Zbc10tZxsM8?ir%LWqivApJW7G~eaHf**{_iYWqs;lq`HPCaaxxy zS!M|h6mn(q0Pd@7_#-3%ZA`1&j{>=E8irwzidMBe@j%+iD8k=5|NV}r%a`UL9eHhS zHDzbA;1O6oQ%S-v)z3s8qt?0SB6hm6Cu$D*7XH$1*Wv%ri2 zG9$cqzv+RrLxfMLE|ZmnwuQi8Hx^M_b{YTqVYrK2z|`$_fxbg(0$={&^p|O#bN5V1 z_@u6Po2YE%PXAKVpBMjBu2~nI^XQnRHjV22RjHN?~cj)RF9}{LwS3DW~@%b$? z8@20#)eg=)!g++U_?E&!y-R2q2DRR5zvb^Lbc;*coZx;P?ms!_ddX!$q!AGszfpM% z8m|7ux}&UnC(sd@8tWt}+sY54mDXs+`KT+V5Q^bMZl*T6*I zI&)@sK=;w>CN=ZraudWf29sidvEtTwz6?mmMb3_}5n7&Ill2nNCHb6B)p?BXGRs0V zih!6Pp%#bh1K?}690yfas)h%);y&Q#0mWcFQl`upZ(YTdu!bms5InbDsI%Q4hD_+q4BB-rr$j?qQ-s4IUk~-ZnDcR}{K{X0Tt~wxGR|X^uQHz7 z@kBfJ8}3ZVFdZkHgdA~aFHT!~oa>>_Dr0X|_cPlwH-Efjz;;J(6Mq5I6@xu343KaA zG5%ORyVeh=r0J!feoV?)EK~dAz{+(~3rS9=%47QxeN^qf& zKU2Axl3nP~E!_7Q9;p!qZ_l+(Ct37l4&3^V`O`mXk8B(Peb-FH+QVTZjU+AhD$!3m@{!SOT>ZzPmGo+>#Z8z4e>_rW-<5V5 zKMf^}3KgAY{yPis0&?V@{$BA=SLHnwNo?aA;!-B_hW)Nb{ks{`O<wF3W zqt`SKgjr!gCW=>|?Norbo}PtIG5?yeEM@iF)Av=ob#`I$+es{%KbON?sWdYLQ{?KPu_B( zjkywQ##d|y7o)O6hs|z(m5JUi;hUXudoHUwUa86Ox*kVGrxW6|&uvQ?%y!1s`B0;~ z>4BLR-9t<+!`TGd_IkNN^Mx1}qje9WI=)-(3OJ?>-1+|&8s=Si<~V`_lQc#V;jsuqsJBo;$t?h;`o32H~hYswM1tSv1}n z1F7&3>@$`A=)z06X*~o_Q8w3NYvIj6G|(es4u8Eu*8fBsU24u3Q4e--Sp+O?t;hUw zbSEIFvW^@nQL?`fNKrvusY?cT-ww`lm@Jh zLwS($RaLTKz+oEU>U;j{UG!I8fxF7Lx4rRCn{+ngj^J^Z@bAtmg|ZB&pdiR^PnQ0Mx{jrkv{Aq))Z#7)bar-yK^F$`!X26FAZbt>f$)Z^iUfxhQXg1`bqa=iwy z&&Mgxox6vqZHPa7yMqB9DeB|}YW&ZG2^a@C;x$TFowVF=&LZ5@w0p_il#* zQ3M)F)bWgi2#$cEAtOmxf~{k3A(`@4ic4ExvvuT@3_`S)FxQH)wwvbSo}C&-!;%{P z4y`qY?CDM&aeTvO*spf<%$N zaRUfaTUd@X_1bGle!+=*h$qe&quf}reeFjSeGv3M5*I<8AehK$f;mxrGMQe&o@a*7 zOwz>?{qg3=~`G_S^I^S zg?fm|UEN|n3VG&Nb?m%x{gx^{nPQI6roWSjly(TQi%8)d3e2-qm*60=D}O25j4@D8 zl%f#c5bf`WX#D1NRlu_f1gc)XK;gwfh} z47kaOcMn4-3#$gUoCx>!1+OYDl+!?#a$^TGKfB-Va|j~xltF6yi(t^TP`HM2$nnB$CcmAb?pyrP0sQNCHD+zU zSNWIG)3(p8u|TK`AJc&hy6^D9d}`vA?!~W?ddGlUM}H#r2dCQ~m6HHe+}IGlrQLpm z4Sr9!PWGJTYreOa)D0b@fl(rL%}SAL0QnivTgpqc$D8-n1m6)TECMS=BbSBtM$|+? z44!D2b*KD;mrc-pdqyA0k3k*%J1)7aV`PvS!?#hmnBjLwwzFY(aFO-_FXDd4{a>-o z4Tm2(7RzwC#A0+rQECtlFmulhx@e$L_d7>Q7DuNc5r&DBWrJRQN}+r6xc4G zoSSi{X(X%v*3^hqU=T%qVMR#6wBv3-Rom+^AaRs3u?*s)UwqEX@Pbw4QMqeHTdjV}K1?4Jk>_tYFi^?Ehj1Y^Nhn&qet_vp=yxVL!dU~f zWwZN70~TEx;772EyTj{Gl6CRkjOqw)7O=$MpoghJqW-er5hOfx?;YSq{*b$~^||X( zx(nlY`g@LwyIhXd-xlLM?XX9Rys|~zB^538J87m3TQQ)JU=P4bP#x7gP(`TEHKXnZ zS_8rcV^oL{EFV|slPgQ>o^mICSVkPs|FqiW#fk0kz3X!2?_Kjp@IHirr7OB84nmR$ z@q35CBv$+)R_U(6-9^5(IDn|1wz`LLibxq`#|pWsysJhH1?5CtSEq&!JFI}UEXL*H zC%zQ8eUQc$b|0a0_tgz^VR9(T-Ek4&d!t7QaPBCFaT#L%hc!uF(hYhSgeZ@e5gqlh ztwi`0@y?ROb3Z|pJQd1o^3)TSdwIn0VN`P7?9zdL@>aafvqg{|5 z9Z4M$NEwOc5b*}ww4x{6^sOgqtS0Lp6vC7nyjRDrjvRzs??4uD2Hos&6`5IDz_<4m zOwID6k1reSkB5^zXG&E@vY6ENzuS)wf7ICw+9))&W~h{mu=%Fj%r=u;KQTneoapYT zwU}6!w==!DzZ`$kycS?wmOW+VmQZm{zQXWESHFyYWb3LeQEO57u`cXDlRU+(8Wy{- zHod}+JrzT1vf2*B zSk;Gqz5T|bL)%h>Q_N4G@5TOL%7(W1)2D53Eouy&9^E^F2HfB7Fzbf_*ZT~CeT2dy z6_B*`>*Q?GFQ(~U^*C|ABiKL)afa12G^8>%A+9}a-c-)d?CiG?T7ucX|&KpE;kF#G*y!O)`nXHK6ux;rT=S`jUk@-I2O01`*)FPujeJAreR*JP_ z6PXrHl^sJ@tpc)x-AnAa zSo6GvmZ`MPcI2&+A`5_n$Bok+q*%|S6szbdpm)&ea->|k>|C?BA`iKFiP)*0bgI8_ z_CAOkezQe0N!Gjs)2=!Y@b+`JTFvn1$}s+@K|c&0B#NUu zGM$UHz0iG=)$Z46@-ykvnM5R^n=!>;Adl`$GOy5A$|!wUe+cfa7`hEUmDmb|w0b$s zL=AJ|nLYX5Z*s_6w_cGXVC7KiAF=;9g!9+KorMe(>s4`ZCe-kinf&9?w&OBi_5cxx zVp+*?yOy=G~@_W?iY(+*`(jcxh&D;sgRu(`q0$z#m;NRCSpF;w_7pX z=m}<>Wwp8{wyFt6abK8htVh++^D@gJkyoWJ*8(xc&Z{+m?mu244}K>H(L=a8-}olH zq3zrVUHjL@K1`0GwCobg0^Bs|&?sDU>?7i(Z#HuZL@3_2|4mu&77AM-wqSk660CAJ zI*u-)=v`*Yut6 z6Uz%?NI7x@gk%c);-Y41)Wu=0rlq1f>u3GghoJY(hMGn(MXg&)x3250PBd&oH?A-C zIOd>kScM~#-ZQb&YF%4D`!QDAEjWau9djQ|VN-sjuRhqHw`3Vlz4=f`v3qQdh;*~#IBke;BWXo{> z(P1BkLJSQI{30Q-+$k*2@(;+W1ib~SnrF91N1N-+mm&wq1u~(Wp3ZLJ@LU|r|P&!Gj z$VqcUzfqdfuvjT|F~~G%bP!NA`g#LXp8exDyO{9`07G{`ghpKdOE9F81*Ut_#-($j z+TaksvrOtkDbzb$=RH}(uSmf9Y7*K#)R93z{_=^NVQd}NY1SA%>XN8x%b+sM-ysT` zX>#cIGvY0Uz|nZ9gR!=>`x{1!cX^SV7lnwlW8z{X?i$sj zg9co0*KbL_hoFC?x`kH(k%R*9zTXV2n00?%28n@Nlw+>t6ju_Xj2X6wD(5;%FZCy9 z>a($!dRdZ=;n0K1(b^E^nbi48=I%47w1fH6r$aelQR2KCiMr>hCyjcoivwTQeLQniR$U^^CY>`NbOB^`wS0ehH4*ZSqcBWx+N;f#L+b#QUG%XEdVmzQdj6ozWf6vjW zXPjJ+t4mVz^&{v6OYoyFtfPwu_8{Oe5L1J;HVz=P|5KK$a~~qKYjzB1@Y?@Q@kd|g zIbaO6%S5ljfbZKh*X)9;|>G4CUZWTWLL`ps&wN&$y`%ZRI%_~GDWbCiv7TRV$Q zjLKhl6OY{;v@X!4XE1q!4yphS2O~3*&dDfF1|vPa=$R^oX29)Y-!2m|Kb7B2R=nsG z^VDXBva{%1%ue(l7juQy6p11ES>|$M|7K{z?6QGD1Vk8d9(T4XQ0S^jE*$6-s@>d7A;tC%?vFHla$U!?iava6a=KXD=c>Mjcj zP4J|`%WMToU_%jb)+cnt=bAtvP^CecGDv=0%zkR^e%EH(R=3R8y3=6F%mhxk>twDx|}m?Zu} zTQ%Vq@D|+113}4cA-M4Ai~6ycAs=1*A zfU_aOCz{!%tR$)PQfU+3_4W%}wf~b!#Ydb(ywboz-!Vyp1hW=mZ2*OD@9WXfH{&*} zBL)yXXl9sMYlY!b=XR_ipGe2A*=Xa3bX==gQJxU(mWyO>5akB&=Q7Y;~&TK!CC{PTQEd+FxNj?Y=i<& z)>ayx&x(7hKmqg@Mv_%-Em`rR7g?-qJxs(xFPK$6jvSM?sRqR+>o8B5p3J>JW$(y> z=06jV$$zhv^>K6NqGytcPa>Hpn;q0W$TWh)1%INO5Mjo> z9H;jbe%*6lGw5Y-*aZ3nkwDLtj%O-VA@+yu{l*^`Q56u+6ds`#aW3G)2WN)Qjb^^OU6`4y^=;U*ppPzGejFbtFCKV9h zVB?chu3Eem{yG%M=&Q~gRg52eAG?s8t+p)vr4C1hw-StzxyD)p@eu_wI9A8B`!MaA zzn#D*H(=feTM0?@rx;O2f-ANt_0VBAHG7FM`#$;!kct5PlJ`2Wa(>t)rL;oH_vraq zN(L@d`C4RM`?#p&4lq_4d1lTtpI>gCKz5LYKmKj3);Mvg_3g_lMWzP2xm(#yU(|;J zOU4kT1RNa#9~ai_Ni&qzOusutbqHE!Ta56jU9I*5h{7KgWwvfTm`p?AT}b}3FW`M- zLCw92Tne%vtbb&^#XH1I;L2BJl01P&p)RD03i_QAd|J_nxA&{^ISgjP^aCD3-euIk zM9ID*JNG2unhdAJPFl4coMJHeiW|icOwDsc2|bN`@E%G z1;J;BC6ieli_Juxc4HmEEEs%}Ibb zX-rh8`3QIcs8jgUzcpV3u1JW6*JCn;c^nsW5SEuL6wSB6Z&g7!-0+EK>*B-15GKp- zulaNk%3B63Oe(Uh&YN`cqGqCSSh0SujNL6T5&UiUVj_No>Ov*6@ z=$Sy>I%@-b?YlP^AJYc==b{9WVAmxj_I+V!Rnh0U|xup}-$ zJLyrTQAK%oCIEx#`w0xO9aI!k&w#ucPs}*A)B--dhdtD(geVhXXU+ z?HdTiNDAIwmwc?Zc1y?%YZ@3Ok2E)4leqwY;#|;Q40^d_r^R1Qa*NY=(f(t*zq7ut zRxp$5TDwXQ?YMq1b6NUgY={nTlUx7^6GOt*RP8aTF&!<8g819D;{H`9$CjY1)R~sv z$B1m&RCU2{C%KV*2iDdk5sg>v(!jGtP7Ehl{atHkfh!z7q7QAHGsc_eeO3;3p(sDH ziYBMaaSWZ<(K+;r8^vqg=iK!D@En?m%I7&e7_gwZHj5v*=)D6)W0)r8RvYZQp94B%GqzF3=9b?j#2ve9R_%8joNMmo-gJ>Wt;yoQ)SEFc~uLzC=+ zx*87Y_R=@DdDkr!`zbbD18YN9j8m3>qIos;U|HyJlFGm8yHWXzBK(2&b@V~X|2 za?h2KbrQe3VkYkhly;;Gib%%v#vH-R`{0(^eV)fK$^}XCmF5IcP>T1GRMI2LY}Y3P zaMAByUclB+Uz6xutUW(8b=_@Iec9>8WBf5O^5P*M$(Ei zT{mG3y?20WE2PMz0OkxzM8SaWZvhSf3EyNtW-BM+7-YfX-u zuxFz5mW?nVb-SMsTeGlMwHtWkJxP`saLh*XxS&-0?L;&z=Z>4+LXT@kO!bo%py0#! z!%)fWlT>QHuZZK#gF6Lq%KjUPL{PnLY<61$QWoyoKrM&tNC);fO7N`19F2#gc3x<a9ARdJzb|6rclEuqY@f-Mp6xsT>k)9d>v+`9j}*FCwQ9?0O1r`61u2l zb-YQ9@hg{mG99<-9r3$?xt~j zy)?DBqi!|%7{HOKkh~_P`9ivG!NX`_q0gg!C8jxTCPFE4!cP_pe?bD)6HLHK&rAsG zZ#e{QU@6Z5(28h?arqAIV3?f&B1Zj?-d{GI!oP7{X=#~P!YcGfpero)!Dd;uF4uBJn=$E>M^Jv?x8d{lv6!#>HF_2 z0LxQx=sTt;%WR0j`o$?B&MKFbJpQ)gi~p<7Z`~5bNA@8KIMtwU4SI!LA()2zG$iMW zOZH~d5osA$=B6=RS=8-iuF$!5m5R4bkAf>9p`ZU$qnDUY|5ux@v?5NNq2UiWLo+v$ z)&W(@-2xmSLEVY7P2gSp|0QRxGls&TAnx~VSdVy zcch%Zj<^-~o$= zN-gczC6o*XwLs03G-9|nolPELxYPcL!dth}?(HbvSfbVqvYj6sm^g{>dRhKk%rKLgB{Gx2Rv zCObdMC*Q+vN)?LcwU^eu-&e8@ly1Kwc+Q~S4kgkh84x6hbp@eI?rDKjK-~Vl_YUC* z2+aA8)mMLLsKMUsXVt5RXCYyt@|ch;Ak_vN<{ABZcl5DnMTvE&J%fbKBuZ04q=eZF z^<`@KNeO@sGN-jzoy$xbr$&|xKdZ2QDs)Oq!ObyVPSRXz+x$7I(pa(3%5p&foNhc2 zNg|hBj#_G}U$wdd-zmr|znmvy2Ru{q<~1+*y$7p77=Etq4$AU|%Yf+%g-VHs^1S}LdfK6q4@hSpG$$6fs^{0M`4{hvNZxu-9#ca2bT z8Tj^Qjd@Pyf)j4F9W4jEHRZl3`y9e4*i@xY?>SGU$2uOr=j~i$*P2}UArz>_>q<5G zbm~IH_cXnGis-9WzOyz02YCYM`LwCWB#nWl8)S^;B07N|`%C5^<4Z_StMMIm@`= zOH9K|L=R1s;Pp%uc1T2I0U$<72X&#RHs{N!svK ziR$UiQc*}?NRt0k>n-z#sP(foAmxhD944m`A;g*mUhBmT!)Er1{-9_PJ9?5781C)f zb~dhs#B&JW6BOtkC=uNd@#SgZN_AcW@3|-I-TmYCr>tv$;N){TlKi8WML>*4%prV8 z%^ssjZE9)w?NISzv0#^hLr^|eo?eN?F0hkTspMQ#)01n=)rgCE%?X7iUc#|K{oGmQ z>gqVmMM`Kw?fsW|5Z62pOKtb}bV6DDui&)KX6VIq)?tm4gr?8KsrCGQrbS<8BU9fh zrjW3HG?=nd9-Pje|1q$>)rF^~9vddbZ9eM|>gV*SRPrro%&+|Pc6NmfuXa=$JgES; zspx7WG6?c+joDgj{!(CkOWNS#y_V8Nq7G_%=<$qRxmT+3Lh_p=Yt6DG2ptvW2b8}` zyhlQtOanvk>ziohRMETkfyMTzz4rrK|=ifQummthI#eYiPq&zzt zn;V0|wsJTPpUZq|tT+UbCkjvo$L5FF@rEgQ)=wDu!BbffL(vh!ohnD5LX#IFYDPWZ z1o-kvk4f~=VSjI#F=q?-sC#k;*Q{!id>NIy@)KX?rxj{{RfTlUh&QE;zo1*9Rq z*E_uq!lt-P>dC37k9e53JS%n8-BrF2IvKCHIBO(MQHElTqWE}+3#*?tM~SsjP&`8l z`c@wOSWZE<`eGl~_&Y^5QtnN7ECX1jdvI_-u6&Pt+aj?eDU?Ltvg*`(HT)JotP@@JepZw%T$$1x(Iqa-_G)7&p zSj2rHe2$&Bv(;q)Kw+2s#Q(LCZrySYeuP@Ti=nbgO&bHAgRzr(qf4vSfDcN@`2uiz zJ8QM`w&}tBlwh3F%=%b;cJt2{)1~h_5LE6KFL?~WP(aVFad3^Q35~HY2Wrgde`@4M!4K}8{Z9^Lm+A?5;_m7Ug>gpe zk#K(xLg^?Y?OU6k2YkPfP2g{PsIOG6s)NCCmPGR5dX8%#R(cofv=TfY%Win*N2CPk z&QPWOX86QNc3J@iT%Pp4@gA9($>L9YeEL)(Dze=pPkjXn|Vfdzq(k{U&IQpeqg?_MI}V3nTP3qpp&!j9cDWc9L`P#__7u02d%(f}@H@bsv=bERxA__;NW z!Bi3=pY`wl8#z8xhIJp^MNqu6KlpgeHO{zT<34)NQ6O-BLGb(nM_0SLeYwV4fi@W_WHhdg z^9lWWhi9S2(a^O32smbDaj_d z?D4x8wy5aMHiYn04^i{5y13UOfWe3;#N1NxUTIHL0o+|#EtoGx(SLaf$Q2t?L z*_Or0l134G&39)e>lvlQ+B29{QOb8Pwow_e{yBKxbxXMVlg3VWh?j6JWO&-WPC1?1_tI!U2l^1{MBA`; z=acBOhyQ$pK5?Aa!WF(o?!$Wm>DOwbSFLuF-?ZGdd(A)MBrIr$jGS&+@7tbWX`1%W ziXygvP;`Ux${ysZ?laQt!^78KB`PUCUO-&9QxOgliiEoXVeTZDfcvos>4aG);Qs!3%B&Xavw&W;#bCg&EG0hKI3MT`=ksxIj%& zqP)$;@%foW##)Vyo~cVA*qu~3cDzXKV8lexoHgMhnWKMtt8i+Nu6FuI=gJt;(aUO3 zo?+N|vvLF}GF6n)4MXW^O-)nzUWnIM5PHuid>=nKA~s2J`YD`bd*R`S_*^kyTZ1!_yWqanoyfl#&_>o7i2eaQCJYv0Q@JGJ`jk7A3|;8`Y>lunj1%{^MT-XAzk$=RVOoSWZZaaIn=Hq6So)!1Vu_^u9EnWFew%N)@~n z1LkAmlkYLcv7XK2LZ-UJkU((Rq1ugQR?lm{B2;zjS&b05EZTb z>p;V1ClSg;Dwj5t=2}Bq?0Res;`H5M zxWQF3>6?Q+sSS|K^OGJ4tJlH_PvFlnI|2CN?G;ZiQ6d1_Q~g`sp&U2~9Hu%|RGRZ5 z=_&srfH(({3911&|NG>WLnyg59yCz91Pln`=g2F(HuY+JX?(5Hddhl`&6E6U{F^%f zFMD87)M#dh45HZvWCPl2n5|+4?Mlqdh*kSvmoRlkOd`6JPT=H=zZ1T9dfoaVj|dH& zVp68o#d>V`U``zfZV#{TLZ+ja;cTzbUT@b#CMtgk=j^a=0471-4Z^{gJwqc+1h`so zvKqW5STDc)fwkJwEJa<6JGe;`rc!^dnqLP(5q?%`NhDLpf$C|Zipt?c1?wAQUHt4@ z2$N zBB1*FTzPeH<1C!@t!aC7o@yuj6rT5(`Q++oT`6EThpD9xp&_pg|8XsP2Qk%tyVvIQ zx4@Sq`=DwkWXC#$8=vemHjq-wkbf5;-0>^Bbbs4wu(pa2XCG5Z`Rv4i6<2iJ0B8OP ze%7539&D8+wG?e9TNY+*}vtdP`gG`THr-6$j;9Gge zhE3W##>cpRZ`1$&;Col{d^C4~{$dKzV*_q7SYerd8NWYNztBnhz6sSqM16BJVva85f#fm%%{WhzJAo{zT z=r3}90Kh^*b^@|fv_fY`wz8DS6=&_B>xEilc;5})BXHu55audGM|2@9-6p!vwjN+) z5lIr-2HfgY!O6L7!>vUz6t-;#P46W1{px=^>#j z1vgBl{rj3Mn?RZKr&>=T3=`m?SS(J?+WvfW2yh9a^2nZXa?264m>+RM@>SLDqo?77FV+0&!FPJ@#yS+sE)d z0j4Hif)5&RK(dMuUSdkEzQ)nEN1%fuw22)&Sd@GzMf9pmsCN%0Px{%^bg z)@k)-G}!G;l1&trTx1d%p&x($yNszeg4IY0)xZpxYDm#}bY%TGR|7(X=%TtL9+6$i z^P`(pPVaS(j;w4fS>W=!d3fK8-}mEEnnIQb*HQ;3CLT8bV&qU%94gActvHe% z__toZEdr|k$~uP!;ZFVY0T6~A7;RqKpIq?ALYL~!4A_+ZIwx>-#Yy&q2Mko$6GZpN z3_M1pcToLdo55=rZf+w^=^aSl)S0R)Lucc|svU6}-;@5s7Ir8c(qOsy8LyQCiEBUa zZi;d257l7u7YTZ9f?*5cbS+9pfGj6SnNL124*dML#HYslAO^SZ94jmb8S0MX5N_mv zO12L!?tdQBsBDa^>(I;2GsEbYbOD|}_WheX?IYExXgyzi@Ha48^C|2D5&h)vKp|L$ z0CzR2bFePku=4I{sM1#)Nf7+)nN{tGp>Yr1)ZW~xgNavPEkZSnL1;3e*su3+o&I&s z#$Mwpcc9)G$saq&fA2sHHGl{g zE~Co6gOK(`(SmARoN3~B{pvB%@aLLsEuBEg`5)wB4wpnfnNnBR1v+0Di$RVsVe}`s zLsu~}1IyZSB;3mOHt+t?O2|HFMlJR`ptM4N@og{$8NA0nfk&&% z=SNyZc~81#rwVj1@y`F_>Mfw6>Z1N(LPS6T11v&BPzFIlq@_d@X}AnIv~)KpAWBFo zFe2S`2N-JTp_Gu48oEPZXe6b+3qJne_x)zM7HhfgJ?HHD?S1w=XYZc(aA+ZuF`FRU z2NsT37uLM5Fc_gi@*_^smOzce(*uy3XS79=9xlaadL>SKX#Ygpl2+#iPXPxv9T*U0c>Xb`J2I0}xPFb`u7<#5;dYk3gxZY!kd88EbfmROxW6_6{9OKO=1u z2B}yJO6iPBk%YBbKwE*Y^S40lK|QL5(OJp!Gn^3O`q@KWXAebf+c)?!@IxSxZn<~Jby%b?ynp^!Bg@fWhHnZg#bj) z77v*=M8_Fgir?G>TRSrUhp@k9f9)fVUQyJ_w;|0LQjvGLHqI+)ZZ1Jnc?XQ z@fnf-i-TLI(ajkL`O*JtA^$VTQ}m{TI3x*W83f;`x1iP+6U{H%_CKP}!Xg4i1q2JE zqqD#!m|F>JD#@Gu7C^=L^v#~zE|Z?hU*QWv3p~@9RR3y=!0>AD)wdbt&7XsKQ-`@Y z+nW7fakkAznR*_vH5TLsg%8_`{{0jB_2&;~P&K$S1*Dykt@a7-JVHEc6Y@uC{SAMcay@zmF~<(R0UgH_xsF4S!L|;E+zch(E;2|P4 z&cJ$d{Cj1F`Sca&J>ed{{hs1kpbe_S0=-1}@WV?4Zg~srgtA5u=}*!4%B@=vHH<%^ z6Vvj^wY6zVYpJb9O0EC>qblVe!CrO;s{RuC2Eq6J!Kv-ydUt@4I6|qfl3Q!1zL8Gx zx}@7E{o)*u7lziVg?6U&lmXwS?E1U{W3)O@7f;^-;vDdxmsUe+-q~7Kf;S-U;>T(( z!*vOLhCjxfO)-5E#gE0$#}S^Q2qm7o#sWVFSl=qvqjWpLUL{Zx=2lH}$3biGQFOM! z0ydq$-T3c7kJi28Xq%q%>1gdhmFjsC5?I`SZQ%?-P+}6X&mzFVbC!&_6HpE6I<9Vk z&C4*wTu5shJ0FoQGmsLj@0_IGw#BsNp#Gdi@C1}LU*MQgc!sJCV$PipQno>R58PgO zz>hPk=#IItV5snW!82v4oBDy$>O}QhuCBv=qE1H*>qW6L%MwgR5~|x&1DvS**i$(} zezwv?^R+vGD$=7|us<6WO3KX76Rh9lAGe4W#mb(gBZu;sju{riiGo7A^rk5pBy^&X(_N~#6I7dAndw&_-Q@?nvv`OF?+5Wwl?Q8 zu=Hcb0@Am_`7Ll4E%C=O4Cx5HaMCeOZ4FkskZf_96mbXjK@+Y6p~CSwf(cFZ zt*VkLLd)$_NYuw0=Bnd?3RzvW3Pj>IjG+>NSr}j8GPnyFqaqLK5-{{a3#|p7*|X|( zBb|;u)FvHT>s~%Q2V#N;&51r1=ETTBstKV(qQ>!|@k0H`AWH|l;*9rSt5vbB9zcF< zR*4607!qhUe4}d{>=K;4+xR+FxTZq?Mn;`b!NAeF)f$>hVajO?UW)d@86g$~Bw zmleK3pf}4-<@)vUHW)vTLgbw-*+>Hol7@Z#cHnIct-4~*3Jc?Bn*sXIa`A?_eW)T_ zCI;nV*^DDdMl>=HplGA5VFX;C46L56|AxUkS zqxarjeot?SEy&ppH-OdxUhq1=`|fIW{`5xcH4n49}$n{+|c?Y8jJ84$A>h7?1j ze^G~~fT*$0g>#@Ux}7`aE2prlUYI4;Vk@E_)pw?1KZ+4Z$68P`3v>D((BlF5aNWKf z56<(CtxhEu9a}pP^nM$Bcn=L;%qTDzIg!j$2zuZgmrxykV+uW z^ugyEH>3_j4uW_7V}9dy2B<&w>~s z4OXt5ud{7#KRQq+_>{rbRa1oE^I%&6WB#)zZb&vod2kj4Wx2L+{`pgLsX$+Tk`1Oz1~WVr7Rc_^pfa6&JXFJK(hI@kX`y>O0iO zEf7mY1*e*{sm7Z)D-g&*w9txE>B!gJvO&aRB%eIa7;WM73zEW(&t+9&VR{j@-sTKz z>$aX_yL>nl4+C0D;|wmI7a}mrPrV>7`Jpl_?hpfvZ9EP4&f2tvCy=YJZNqS65aH>g z+`2S1Z$h@g?yBD&xDDpAM0bmG`AZzp5y*v$rnI#7UclWGJF1St@hrJW)}KFOO} z`W&_tU1vNzVSGqBA@|b;*n8xYa$>3sDK^76`p?c{J>=`4rM-5ZHfn}7MH_Bm=RwYN zo$VcA#@*9B&H90VQ-QY-|90Sj$nnoJh=mjf4bK}`a$oIV%BtUuI}sM~;CT_jNHh5F zEWmjPZp!;nwB8;+kz&Wx6ghBAa2QPU!EEw|ld%4R8Ks#rBskZ{sC*8%Cc3p=cK`+Q z*qlFf>l;2|rLcf5`u{$KlEc!JyM3NF!OGv3rDAR!W!oT54h!qu2L}%Fp#@a!|NhPT z+xF-CXr|8jfNxI^Y)Ri6LpEt#fN-|2)zP(XrG7L%Y2F4qWSdJbBr{kThj?qUKa%tz zr4$Lt@Rb%?HWv=yUcDS%^#D{=u(GFFL7#~)>jDP1ZQuSlsQvXL2ZB5p+}f}ThCyIF zIj37}lcClr^pq?jM?!S{J17VZZ{R$D1)G_8My_T_JOJpfd*Gg4v@Rs*(!NJ2iedkG zp?Nib2`J(#l;bFM)kVWHbTLCB zyW6N=zonSMYbi+&0Ens($j}8#bhamse1cW*z{Xll@BU+W_A4E9WiG|38F-&8Z^A~8 z*#XEh$MA^|%IvAAW5EO6)!jd*+_a+tXpHbpP7c>WSvENK?Uc7=tt=L1x|;`Iafwq| zb`jkMrMRK_9FJfSB0Mia;Ht(p_K6#F;f;R|$UHQnRM1)vCHKrI%a31uF>x=D=2PN0 zo)nxKWEnuIFbF85B5-D>5MB579)HUC`P?1^Z)Uiqt?kfv$nDNqIZteZ`-kqT3bmkT z4PHqBYhhbM4xt-&9vnB-%JzE$W2oKgfip$nXT~^6S@Pi(_o?;E#rf8U9%-OkKWsy( zFgV{CC5K-?&}NSZE02;K>l&;yzq+(iFLUbdR-ou8-36Ec-1YJxHQMe+?Lh7eLZ!fM zuyKgPM|8fMBoCg~FjuO20U}HH_?*|xyN(=RAGWD>9-TOeRB?BC04@-L~ zDyfT9L6c9V%D5c9tBgu(VjavUDu1FwlRrkbx9{HIfg6O3P8|c?1c`e2aKC!g=W#=}B>NDc2$eE+cjy5a2kGqEEr(FaXU_3-QS0p2!fh^nEk;hvEP?^0q#vO2w?@B9&p(#$ z58_+~3Ql!OyqcV@1a5uL;n~SLPaLtjWcx*3v@u$Xq9vo2O@-DhEp$h_w9F7N#P44% zru_QwaNtJ~+`bxSn!mv@4Xi-(tzS8v>-4uSOcyIXn3yE+Y4Fcs$^Hm&5te)d6q67TCaJL*cF5;!+v^OJWsXe`}!{QQHx!yLvmq@WQKg0C2k$>L~8bv)qNfHAGo zPDmdRZ@~DgM4P7ymO#laqEn(hosj}_#Gbg?PN=<~%nZlucJL!JaJHcLg-Q3t7sKj^E@ZU_~94u1P-=NLNca| zRU5?z>8vbT41SJ4&mYS`KosgF@tVEU&>%+Z_!}mYd;jG@s_rnolIWEPA(ex2&CsPp z)gb_9Pbn8@(i~4Ba)3~F~vl*qKi!<*@SnUgQ1Ubm%br;lL=IKrxUE5T%j>}Ip zo}f6?^Tas`4ttL3)8DWxxiVCD)iazUDoIBF{OLQBTkM)ZRj_Wc3iX#;RpYh#`T#HXNZ6H>9+Ph{f5CxsNg{=R5@iL z6h3E7X(kt0oIIj)`9GSHg5hlP&va$l!yIL`@JJvJr?9&N^G-Z;pJNpARxlsSA+G?T z&K^>%rq(Hfy-;0X7fXERVrPiufQJ4}$HCk?T>l+Iad7CXyr`-Uzp@x6G39Gk&y}lfm0?EJ) z9*!J*q1BO3A7{WGg=0YRYyy5PW1v7|V`k@ZNlEOXd#RH{O%T=PdzyFJ5ZjP0>X{xT zLk9{Twr+gTTe00(RqulOh5RSXNofJ0faHO!2SN8kARb&sd+fX6gojc2m!J-j1O(%E z5gAdL3hXE+nRNaP)!ZzHgq~Jj416(v>G0(eBOld^H?tC@ctTH{yUe)#bdpcUOE~iQ z^I8+V9Vm-EpE+oHKjwx@ zm|(kikfM&5OK>p6RjJD?=&Rcv|7P||n=$#x9b;O~%KTUWp7sI0U9u2(&t zw|RChKGzA?e03VQW)ny6qR@3jqE$XNhgyJ|K6!R_YFw&du{3>P)YRXpT?4y#BSHOJ zm(A9qO_E42!tV?&PkHB~ms}8_+uL}xsr?XyR7a1MAAvMMg9iU;4P!7IV|@Y6=Ay{9 zQaS@j>V9n5*B;1GL4iz-d_K9UY+%yl54KyPjd?{EGpiL!s+g+5`wMD8!_Z&8nVbnPN636}}PnyQN znL~j>x;c++9Gaqe-`xHFW5(#slO>@Uu3$$Af7Yb5HxCe)y=a@_UVvqOWZ?IhjVQ31 zX%g&s)pA}yeVqNNZtPvBqpJ>Y;cm+RDIvig3He(Mc`O53D8K6I{ET_P0K9ko;cC07Ks-7B*APP`Q2 z7%XLr290uCw>DtMk;_1u8&LgK`68@vM@nb(3I&At&kr(2rV*26)g-HitN=o(`?+0KA9?q~= z6napT*)@yLRowccd2VAvF|7<`*U&tXMWzMt7@-oWuQ02(?LUM36;G_ow<(BzirC)& zn>0O@i&x^x+rz*GpBf9tcCLy7ArM)y0Zx-amC7TIUuz>j=SOJesJcaL$tyQf<1#+= zC)KXM_1rIiVWSqPCa>&_sD!a2aED8u*&N^AA=t6pfF+9ZRySNfUhg=Q8`LTTjKmAj zI8$PLxXND5Rh92oQvRoib~#ZH;S0iO8%dV4uRul!OqKpn0C6&>!-1U zaLGU?=h2BmuE=)XVJto{7Zy}Lk~H>F%HFE=L?-DX>31=i9nkJw2e3RJa$a$wjRZ+^ zW6#}_2KQbZd^{&f<>+WxlvnJns^6nk=oMtPKur&DW}^NO#vb!Nerb<+O!d6E^t_T_ zH)y*A|e^Ng$WZ(@sn-FCbR_!(Lhxco`G#!NNb`IxNH0mb@rWZy6P zpXvA{$=EzkY2QIFZPs&ti_2?GFGn!ww6;Gw7~vA9-FzW&5Tnye8 zi)Q$IDd}Ug|5E){e%t=@;cKaP;<&BbN9sFZ2&QJO7@oIxZBs>YX6^0oYPsuYZom^@ z2S#svS^@H=x4(tv5n2zfqD8Ok=$fx+z#E%$oi5;E40Fqaf+6VZ=D>nl-#LQ)*@L-_zB1j}&H}^gu^^8u zjIevDJkKv|*$(6W@9*WwnalW(F-?uR<=7X%l$l_8)g|=Ko;Rqv6!Rv55tm_#ut> zv;46Z&($mOX-7?NxI=8}E87=&LvqqOBT-v7eP`Z2qILdq2^m_e7Uq<|I*ig`MB}gO zu*T$By4}rWnNN+xbK?0+TZBd0QE&L*j`$Gv9^ce z^uwg9H6maxFel`VX`nKXa}yNCsUI=%09R}H5!>SJY@JrtPBD*qGsert%naWzl-@J@ zqT#|PB8I>`-R5&DAN%b|oOPEZ@rNv=`xtN%HQs4p!Gc5bWrhwk;qL7- zj57HaPdnSy?j!mp(&3?navK@kukX+NJY-C(z5RmU(%zL}4;7JuvLZf+ zY2miOSX&*aw{i=Lcp=5%qv)K^OOw~@0H^7v{+GYwqoxB9NJW?TBda>tQuvBj2hF<{ zBGGZ1n-g6=x*BiZgt|--nz=xm0r{=65EO{ChQjK&t6K7mkzz^a->e-0X%ut-DAv?HzN@} zo+e0U@3#(eU}2Z@UN0ldJ4yT67!5*y`aq05w&&CCU5^>T;}ZTr-%hMC49;0U22%+o zoL`@aZ&lpo$DIp-5pQ2q&Lgly8UW+X)BZmIPcRk!)t)3`ljNsqu7%%_&57S`wnTlW_44>xEPU{fkq@^?$cbXPq^BXeM`?Oze6 zDhsu>bAb;5n=y z{2pA(AVx&e`4{;3Ouw5qkPRd7r}1HEC`jhJ_sHXgT7aRaOdU<0G^+=V1l_ao;DS0` zUBRK5aK~mf+?)7&dK+JxMSgA63fOSc!5N#qrXl0MYzJau6KNlyuocIN%fO4QBG-oo zPQhp+b7J&xc4xDLxo@cFMYIRNhsE#4rS&zB+8u{Fj+kG$G1-%mELL1ebQ5j%J1G#L zEa3l)V3|uLd>)z(Ay4~KXp7=73hMgyYujg3T!e&4xcH`p0=b-Rqi5EG$kgo_SlWq^z8a*M-hRETBY~h{#9B#h`>1! zh;|wE?v{PIvue5ub}};%E~`dj`rEf)R5HnzesNTDlYBid2UQ=V8H0TzY#iuD=_~4M zzTx#Wc>5tiQjg{ijefPpo$otv%`L}r{C)LcFNN3ZNanA;DN7vp=H{?oLUh!kz}(aW zW-dN#!&9uRu|gHIRzvlsjIm!I;cdyM4_>2aZFDXI$FMUX=vOR-v*mFNCsFg0Y{Bd_ z_l=~~EDdVH9Yw`aQ5dGgYnJTyMCvFmDT~zQZt7bFSQcUN^d3ly&NM=?*i6*{zy6Ty z*07!EqUKRDQNIhY_aW!sa5)}33`Z028pug&zzWFkpwzU8^W|c=|JxB1F) zA`nP0Ti1g|fjsA4>t4>Xv*Mut)-_u#r4_&Dxeq?tzyglhghV;SJJ(UqK9wiK`QX>0 z{f)l4wHq;<_?Xp=F?ZB_1c$g0G*$hcd6;u~7BZvdq(2K;1#N7nsx@Xp#s-^s{1*T_ zixCN4vWE-f%?{0;NhiBzG5Q$wldJ_`Cs{&^`tUVF#egU%o)FQe@5}u)=fc2#xflU< z->v1`(`Y4vJ6$jt!dTLVJUTDmJ%v(H3Fy5|bAh zN4W(vcAz(Zgxx*K)Acu+YrjP6H920ssP4@F6PO1fkuy8KDSyU}Wy3V;%nRrqzlEzt(<^c5tF;^3Wz%&9Y>nQ3V{nZ!Bb`FU?aa87x26xM| zL<66piTaU*0<<5^xa=X zh{02r9$9yhoF3cdIO{-wW~@uwq7#& znnfmCxW`~9HIx3sL15Bz3w%XI`Rp;`195A6mgJxN@3Ih!z}G0|fW1J8cJb_6JZya# zT_#$Z-`JwIOz%m6cX)?CK7N3t)k%9J;A)QE>}Yy(F0od~19-8MQeNM2l|?y403JhRvnT8}~YQ4q15o;R(t8WQkFtbn?CVCY878*wuPhk|q?{C#bWZ zdL(@eVmnn#8aj4N&-{{E%wlOvI;^lY-%JMw0~_|5APt`;`??*{OK z)Z4s*?H@x}{FNkDLXcD=mo)!hz!|)Kv?()2EDpblZEYXSx!#YQz|KC!w!ToFM}w8t zP@!=aEFPW}g^yyWC&O79WkEM6#}sz@cXciA%cc^V5pfk+>)xw(Xwo0I7!#;@zSI5q%qgJb<6Uc& zbj#q5D@hMNpv0&t_k>J6?|3;oR1kAX&`Oe{BwiDFrLXwWG?f`+ROW;f*<}Bnlq9~P*@q(n+|1#{m?~Z0Fa{eyLZBW`@;DT1X zoWYR83j;y;76@O`V9E1?;LnSo*utd50^gZ!gTkbh7Sc)h(-febvb5X9pDvjbCKgLQ z#vO_6bV_5buLU+Ro`2O(a*?*@Kn%~r>tn20q}0D{Ga~r%sui2YdYL$%9iGZ)#K}n3h|kgQR2`fpZM^pFij_y$3XekA)(6Kd8t&d{3g$q!D-2Fk|LLO^;sUhc9fD&l@&4SDv z7h66xFln3$H#kpumu9o2D?iCI1eaNz;J3HC)521f=~^tN-k>()0rHVlCht zIGhg8am#95$o0(=`y0;aS)qHr^c-*rkm>*l{&v5J2GyBE{ovqM5Be(BLfNRXYfd8cBZ8)adKS^# ztt5xO((F&n@cR^G9Ggf4y;)9p^5169K^Hfbfv*<@+?`(f36IBm{82jTLi)@{`8;JT z_;F8^ZYu7%QQmG!!#nM-RAxS|jiT*-L8Cy~s_K+aru}7v-?L7cBB{I|Kxd<|__?I_ z(jfg<&oh(6mumJ2-?J^aZKz_BID1g>+^F#GSlcdC1lA%LfqR&epctBL% zZLL}n&M3?Zdx^ZJ(HppHPguOIuI9h90MFYj215N3c!bR_obcY7wg@?Y9Z5TGF*>=_ zZ9n%-i22<$YMaI&7zL>l*p6_%acR(M<){K~ag8C3n4E_1+q%E+D}o$?M0ODqnXM0* zOdi0md$S_3Zqe=;@CrQzsQ%?!(!-teRAQ-Yu=iPN7QxaB4dl56gZtWDs0WXg_+r+^ z(<47ZS6Cr^E`?ivL)9^7NR7>6^6TtqTJI~<=zh%4Q8K&ftE!7qqP{!A)TbM{QmNqd zw9_yl8NRa2C$^&B_MV9Kc1uS?Z$6?mUf51tzC^X&GuBo9f9r!-Y zf?a|x3MMI_hNQkPf1Zx5$%x_io-1SR{!h!FDlFsWdEdhqfJu-@m8LF}RUeMSB<6C+ zZbmYUNIO#{!^%}!hoy!&XBn?1_1+VoHy%W6=Nftd%F!Dw1=l2i^BO0d23heQ&Tt7@ zo(j|h<}SXE2!=)iHx7lST)@oEcCOMXco8@d{wqX7=PWjAe7@}1^BKSIwz>SYu(kmP~>~FUANqdCwo>0|p z5z+AT|1uvgYJRO3J|z;Z10RxoKh<8*qoviG@`lCCQjKF&P{Jh=%v9V$@@Je)WFB>(G)5SCBgAM(GPs^ z_%!1?T2IJy0ln34+Ey_@Iw zq8ybKWL~yuP{s6Ls_XPmO+G(V`u|p0i0_a-$Xd-n+MyfKS>Z%HdL|Iri1qlQE5>e}B zOqZ6{dLE_2hw?IiQ3Rdv-KN&gf$e9F#v({I2sFl&S|*tTh&!?ux-ic z`BQ2cSlL=LFm{RZx&pN#F)6w8{rsNYVd9_Uy@XiCm1NOpg9JUI?M84wW!uDqrsIxJ zRPc!Rl9RZhDke|WfItprw7zoX2f+haG{R^y)KZ56E<|eo$RJ$@br%b!Q~@ze+{yXbBRRU@S&rR%FU7ohYsQ7?r{XhtmqLDW=g ze@c}&gsLU%J3d$_kxf(2#C9jp?B4H%y%&B`WVsQPdnF_f@?hSNEAd}D?^AMKNAI8x z70t}y@*_V|W2Eo9A|Fb^C4OI|o93cvASA_BGj7CtrG6Kmb#x$h%ovGY1Sl5NEReAS zO{~M;Y4*O$JLvhHEX-`t)+uz|ZusU_CvQ7yme}udQ+;loY38XZI%4x0*1~H1aWu4H zH6U4O@9UJ#C`pG`yg>WDs)r}KX>@x6O)Ik#|0kWH8|}IS6Or2%kVjW8JKt3=fte^! z=MIF1Qw^akE^X~B<*nwuE06udTCdA8A-zAAKY(|ss1IY<11Gbm`+zdA@`v4kfd9Y` z5Ao_54&H{~l|emZ#t4rma2X2<4!>kpz50x}^hSSxjvo!S_2FgtNn}Gu4ODi8S3a1U z{5jtWk%IJES{0rI;Cr-3u>i=EVOyCBU_0eaE{pjNg&gOP@>oJFLi`^#us#r~U7+3D z!H}+IlS1{MPB$NMi-3}ebQUskS^cVDwzK8LirMYgToWm z*@gOk3t#w}f#w78xY0WdmujA=xFqk*Y#k^bF!?YqXjo5ko?B%I^F3P@RVjx~mAU0Q zuIn5B@zNlI z#w$K`)aMRuj+V$T?r`@*;joEsdEaeBk{^`n)41T$%lcE_$yktiw~mTnq9$`TZ+YrN zJQ3*5DE`@g7$A25|#6QyHq3;QQS&UiY!4xehc>g zo}$#lpY2OduR96fq{44jUu;cpR$K<+^h%yepj%CM`+hxy>Q*zmZN3jTrflZ94+tps zb#f22j=czcSV_ZvZ__g4oA=)c>%Zhy|B3R^;{C;)h5bLBu|Avbca35a7{q^EorQJ` z(caL9bc48`u98=($SZm6#+3%vKEvJ2Lm&8ocRgrsnCzW&$QINvw}hf)f!1I^J~sa5ye|hCzj;r7^c16QV7C6HZWL?~?Af(Fr1Ss? zG%5s1yKL@Ie0gv7RU212+Z-Fc6=>eL73HJXowrC#Il0LJr!n*B>QuP*|GY8fgN525Br9)O*eN$`9AE)>+EPaiGhARFUV z!gN_FY_>$m8IG-u<0K(2GRpp)hFy%hw6MaZ;21Wp)b#ttNi>5*fyV~~kTfGfz6_+W z#s-7TYpNv$RY!*AE=7)YJb-mxhLyyJW1`s>P5g_&(baKHRRq%o>i5sim`IB~vR>>T$tBQ(^8 z%|&^GQ?+qSDJ#~lvcr)`XCbuG-D2P(RJ&+Hr}gQ0p6GCemMpr`gwbUY&^9yOd~Sab zXr>lLdE-Lj#mve^Ymc1WD4M5^CojjA?q_sXB-FwGYxxGX$JN|1}@QVsNu$EAa~z z8zz%6^zvGF6iIhk&O>>(WZ$bH->y* zClCQ7!#@x+bfL~?441}uBG^4}9QXRy`J+DS2kf0FfkDP zfS}=+{aly)gf4)|kj|I!=n3iZoGe-U$Jf%**9N{9TfSAfogdb@H)8j*U$F6XtB~|T zkIW5H!9UJ5Ag`3UJ?CUi2Uvo7UbSQV9qw-A`6$@K-V3yQ!xQ+T6t1iCtxb>AGfwvQ zE87zLN25Z6FKJ=2r1w05Zq`m;h6OORBJ_N^Ltup}XZpF}hpXYE^M!o)YXKzZD8A^f zib0ore(28m^GX4Fqgou9aE{hw=Bxb$zAlv-?de5XSh#4hdFyAaMdPa^)z8eOy)+KO zwtF-_|8=mu;9G+jBRlxho1iSS1$qq>n&e&L_+akzJzpr^@#vcF?hd&p4NJS+0JXxq zL16Y1Pf?xDwo8iq$LACb7oWp{bsc%VL$i>L1jfNk=^YU9US}IR9SUrLW`02w-sT0G zJC3dXfM|`R-_rD=e4C8>8q-7|sDHhi-vx1ElqnfIqbzETZe0WprhNM9$qV_Q4~<$V ziZ;LMP1jfJJG>r%+vD8hM(6Louj%D3Kni-I?TLKy%wY0xwmbH2OH_Xa9IxB9?4@g& zwq&j@`u5uEKUOg25dSLtWe?=BF;=K?{s&LAfW0`7HcF^rAv7w`IHxLL6q>9hFqFk> zy+hEAS|HOh41N6&)w~QyTD7oBCOzUie@Fy8ji2GQawCsFjE)(!y*xrqk(r%oy(t@Q zPvvywYVHk_j6rg-(Kdl!L9|+fp@UpH&u(s#7=>^*?FEEUD5=YI`xrLMS3lRFd4fw{ zlUcgtTy)X8=C{e~#7}P@7FU&>LxWgopO7@3p=hU|g6{s-?z9heB;i2nb!Z&tJQOT3 z@WW;-&NflDy&R4oFkj)J<4S{fr}PhHH4yIBwi-fLVA?yOL=sntDjWWeAm&c`nu;(f z4J`8$WeZL3C-NlY>{zx$eEPR@WlaCt`BHCP!n<8q~)iX1~ej?&(K9pA=q7) z$F?}XO5^92ZlD9UAK}cPZZs0rF&}Z=!U%0KA}(tt)x($ueZviAq?FMf@JEV1&HM$_ z3g@<7QGHjTJ|TgQJyMaOFUU2)rH8%?<{d41hg=41GT}K8RUgFbW=n4cEkl?9S^AMT zl*hRdX2c*ES@F0*(UypK!1UP#b?2NGl@ct`4)}8cz%igLDjw)QL&uV5TD}>w3oLV} zUwk?;hVvkbL)xlU3>{khNp3joe>#(2Da%ocnxBqGU~uDXWop4=kA|wYo;G{5F8|)l z2_6NWp@n1$bB{9{dqRA;n{F5#sy6vivfCTBUGb!SxB+z< z`OPtGagG_QkqG_$7N94Pt0W`n5cuP_1si@Zi@acu8twM#E3kj`e&?#2qj`-5abD!O zcG%^1k93HU)od7N##K#MTysrUF7$CF8)!KwQQbagW~vW;@HVY_XrtcOS>KWQn@I~j zE%MC@O>UbHHA9jzWc?qZZb#_W4qV#1)2a3<8&8nyH97a^vk7})@k$sRC6?g$`x=^z zbh&w)t5~*e*r_S5vIU8AU$wf7gbr`aaCD(KKRDEC3CA8=1Z=$K#Ay%I>tcAa06nN- zk0jx|m3UPLNeSJFsnng&1a7rANnZ{gCSA4V9L&+7r4)!Oye69983e8e?0~aqp%OSB zx9EDOEma&PaZ=DtK>jXoxp9J_)R!PyuxdW&A-v20>P5N=jzLCK{)uQ7Q#EAdT?DXGpV)a!I)c3W0|+&^Y~QMIWF}ZMj;!vH-j%FfOnXbqMnll z$t(cQ9L@E^UX_>9=qczKRX9b(s$3VYc?^`?<_b%x3i?JETp3cu(JIPAGf-ngxuN}X z|B?E#kjmJ z#p|rQk^`yV__;D8M}c~y#*j|F(q583rkZoaRsY+zB4mV%ereljtSn?>nCF^{@k@rD zxZnk#G)=CKUt-_KXyPN0C-vnVfBVNc7Pq|o((BV#!uQ9uET0QsiB93ge120^r;e-` zj=k%Ow0uSDG(yzd^M`Kk$@yIUk9QdXsj*yPtZcu~^ zO}#j`IHtxWe#E>5E39%$K&wFoosZu-m$eaL0`h+)kZ8p4IAOOSYo&44l z$yoqLatphrBqXT{M_c{Gx--nW_@24(zoEz50OONol=CA!F;l%g{GRjSV?)RUQih;*e(KXJYkP(8}b`xiyTZ7xX$9qjEv zD(gZCF{wZ2aXCD?;)xWrmqRi(LaNGr%r>KH3VbfZUs%}{*OvcNLq+(G>&=@4C^KyP za~Sm}oH5VlgcMVdsZl2s;9a^|zeeysCQXk=RNV~HE3EbE+-Cg4H|0}#JD`v^c2A|c zyMVJ4Zmv8QNtERoebWkedj`v$%KQls^XE_FBT#>7vIB$PpwuwdR_R9wPKCcwwAhV8 zS(9m-&2&EvTq(psB;4R$5ET(g%FJ%1c)2B&&DB*Axmu=tgg@D<=X zM<}K=>G9iJq4}@!!HjD{8H7BAtqZW%#E3u&^pe(XQF%_k$0~8dX2g!bjx}T30AzVEj1@;`IDh-7axCE;L5pzVdhF@7-Np|Ub{}eBh1;4iv8lHH!ma#hJ6~Q zQvYKibSTP``&7)9%wRy_U1+C^{KYEK{ez{z4vXlFowDt?r@jZ47y5azZ@q78LtRe^ z2o?ZpB@bX#2*#1X@Xin=um#G}b?a=T!#^s<#adkoL`%raV=J`$Z{>t|^_c7AjxQ{8 zT!gyI4Atr$g?#kgJH3tq{oIIy(=wM^);4LwG__W2!*ls8)8QtX-GRVdZCeEotMW^w zA55w6}*CWOqkoP79DiW|X`IroVlmsS}Ve^AcV3@x=sVFbpeujl5p1fr6keliH7! zuc~?Sa0})}0j~ONKo`q3u1b|5fM*%-x0|$oDfDsG58;>hC?q$r!kDf32o1Ss{PL+1 zvI4Ch+i|&|6SBn*pPCoySLRf9d7MA=K-L2CyS-@KYfCZszd(gT?Sm9uCi19 zp$GCJj{9Y6c@N6C`q3BRl-wkDX?b~hdK(Vdi0tbNnyb}NQ%+wQ6Zpzz^a5aFMo;7o zby`{b?+%U|Rj|&3xX?@Hi7SL{H=DkAMdpp=rNCEsxTTffs{3`Q#%Eto=|y#VCLp%& zvwm3uwBKz(V%maTfQWu06Q9(aZS)e&TUg*%`cxI7JO%B; z9_V^na@{&0my$_9WNe_U3VQk)yomEjZ)$oVr$qlUguu3*a}W829-h*k%H0tUWhS@4 zwg={knVMLm^J|MN#_8~*XHZ+gv!-cSaw1u@>=eQY%n?9&L8 zOpHy@Atd-PLar3gV}8P{@S18IlRF5%Ap~xLH{yt4C1}0R2ARq!t2ndqW2+}CoBT#Azo<8l7n9I_APIDu;0IeHDHLIAO) z*NC1th$GFvAs75NKs8xuT6@p!DSkp|N5VMpC2z%|Aheev{+_=HCe*utWfhcZ9OczH9r(F|X+Jrcs=DZZgH*GbpK~+RG4wiafI8lWlA@{5LWc=^yb>3x-tam3n7`FGgUY+4s$sZbbF02!^-_ zg9-2h`rel$`^hRZhwPw-C?MClii-|vjbjZ2G_xTs}*3@)5iDRZ6#t<1Ut zmtA2#^UKPe(v>*O2uiIft;;UrY1D^8L+?;364#&gj|rx|1pEcil!VFlaaD$h7L$6m zMVy1g^osu%pHz=zEJaToew7ZV7pMyu8mNI<-}kq$w8hE(-Wh^bzJSC4`r!`1e7$1i z0a@hxzS(1j^B;ipV$?%Bj_^;VqOp~77r)XPasRsu;3-wM#gso-cX?U4?&;)~=E|Sf ze`3&syRpy2+|c@jvH<<$`CuNj1`L1&Z88 zkFwRWx8bY}O>JgpF)z<%Q`k?~$Ll9ujK4(9s1shF;r$DdKf30-^Q*m^);DWh-p|J* zG(paN?RG%DK9hSs1ke}X=NmCYa1G_*EhBXu)_nr_oAH!r-McuJ^A)3cdF2@&Y%Uyo zran;2B6E-OC0`;Bz#6tkx32!tDWLQ&q1-=r**3=E_OM!B()_SX@yA?~6b2cRg73xL znTlY+Fhuhk5-7!9TDc3!2MQf{`ta~Ey^t@kQ~R||it`fWEW~c$Y>WsS`OT6Dn>+qg zA`#b(-eFRhjJsD?hgANkVcolu(pyfitr_RMdFX;v+HoAosTe2m`OD?aqc&xU%_>>dkM96m-!*$C)Gy86~i4% z>88;=)M{r8uEAje$hKd5wj=ix30cq}m_W9WsF3-r@zYJMXs{*UJ4gbKm141S40Y=| z6_8o;>UYOpI`&%8&Yn1$Y!uq$##7z0ihl9ixTBKne~9KqdUU{#qQw6ON%R@JnE?{_d1CT&f;3-l!6TNMO-L%jyTc`ZF$$kI_Bv zg)&J6USykhPj1l$t@)!c0!5OLxni!I=h{3|o=v+~^N`{N=%T9i{J;KaPC&f83XsUP zo;`+!ExCI0rrajqp6AZAAC1+lYlWrIk?a?wC&=X;sj;{5HbPhJdq+v8{?*}TZb%7- z7@03$E!3(HIUbTvO5a#{5Zv5FMocoonPbi^p=}>OQTwX?z-1I(^{dl$P*7G593!^b z;QMSYWXs*wFerClHO`WU=K-tw`*?AD!2Hb?Gf+f2`V#=mvgHFe3OUNzuc3o8p@^eN zPZ^d4tv~B?xwmw4lx^PuDg%Qug5iI&fw&<@UQe0(OWu6hgE-7^ms0s;E-Q>keRzr* zaCfI%hE+<&e`%ZaY~#ftd0R^b{lR;zM3g!O&+bL&>a|_Ts*%dsUZhP!wK4Dh$rN zy=(!hWhzL! zHgAt4Q{jUc+T3x`yN$*+s6X7B*2GYxPm)d&5o03!sbHk7`wYjewUFfaBvun10b+3#BGz>Nu-26A_41@HPs0R5u z@5-huZjY0dTIX73KGXSoZ6I|n0JHY&fDZremMj5$+TJ||D3JiO0yYY?H8aUaGi9ND zyQ91>a9uI85gpT{M4YDf?s;YSofM;gjM+5wR?WC<>Kb%Z9>lPNZe@dFwi%X-FcXy8 z0pS9ChbSmksV>OWn}Qse7vB^>bacQlFa_a|TKqjQrA(h95VJVoAr+DBWB}T%yL<7W zX4yc&Lgg+}{VOOdrPqQpX^^&-fMgLgpQ zCcst#zdH>%N!}nnIpmSabCyaGl#21%G&zwpe)dah>C(ta1-Y==XNO91r7iI_zJC?_ z6s6zam=8I!Z4(t-E;y#?o#gSxx=gdCUk$Rog5qYb7`$}Cv zG5m$P*~|x)P6lX3cW2IkNrwVz`=lr0kR01hMkha87Oeim%5!e zfGxBgKZTM9Sc*-6w4+7y+Gr5WP=_LkihPDF8qoMN%UO(A*WU3DTQS32oA8HTourazue>cKiBxap>=lQ6DXo$rlxXoJC3t^KAV+y9i11(TjT5e=WD^6%A$%c zoJq%rP7Mk%N5#IG0{3xOgXqb*Cq%JIbU}vp!geeEZe5ZI+%1*Xx9GiURBKY%iE5<$ z3n%du2gJyxxoccFDSF%CZHMF?2&=hlSa4aFGpS!k;7h&RDe-*Hk;154+UeXWz<2_o z)pq=cl)vkj4w77uR-SkA^x7x?S$W_TdIgyp262$|C+09{gLyWD?YZeCSUt9n(-eq5 zLc|?a6XHw~`i+k!2Kt9g&4QIlO`*UW(tFn^zc2PtRLH|RKOaC-D#2p^AT8w-D(q!^ zAyL=AR!}-V8YA~CJxZ=eKb>*b{3d|_Z30Ud1CI;|0!*x50`0a`SHqG2NXlv*XS4&- zJo|ND5uv1u)SC@L4;Xd;hEhno>kLduVneI_z=yselWBWma3GC0L&)fK|An(GBKT2= zrdH|UR_LSeQx*af$(xx;wrUL6!PCVJ0GbO#FM{y?p?Tp)iZEvY**_M-FLQuV+F+9+ z?#R{!-Flb=C`Q>JKQ~!mE|Gv;JBKu`e2~Ec1IKQ2RDwRoX6H^6MN=)REdEgT%Y_t+ z`=whu8JGV5V*nHQbXi)v!$0V`_uKISdwcnh6J@4ps@ zZ})EOFT`7900KGVi9vSf+ql$p0LDcj>RjSFfX@DlV9sHPqt091+T4e*iaqJAr};`XDrRBoP@VjF z?W3u**yPJGF*I(Dv&5FjDD_Z|*_aO%v>f*_77ceB|A* zauOBXfkYE}ar*yO;?2nKGgo(;PZFV3B~JDD7{tL#H56eC>_2REb4FTK`poY6mqG~K zW5cif9urntA87y0Lb>-@=mNSYpW}cGdozQ)_XYJC7~6bJL#%PMjIYcMM!u^(sHdc$ zTidvz)XZZ@FV-q8bugz1i`&{C8TiyxgHe?iTQwt}WrfTW_~pNjfI_qgat{UH01$bT z@z)Qy&E1irOME$ZmhyQGuMn*_fDGN(Iw4e;lzvGhKbcTn>IgF8{vx3vbTODYHt{|f zMv{?^8`)JE(W-j`jpqxNOHv!qkN;2ZGz&z%wc)0^$FaFns62Uh`JNVtK~}y{M#Z@9 zIR8u4i0irSl8T&5e~wjQfmW;WrxqYzNPm7fpxW&)J~O8uy~)54R@88r1SAc)zl@;i zi#do*Ilv8eKou@XN?FSyu)XIbY4X4b{7Okko{Q3)iBYIBGp9Y@Q3i&yWea2-q zPJ9b`r7k(-dwmv?(i^keCzb$e){boW{9j2GI&1zncT|o+9L@MgIS6z6Hse(XPBq<0 zc{b1qdo|ctT)Wp&ldu>UVBi(kaC=t{D90toRSDo6wty?lmi>JVVzULo#UzAJ!}jDW z{);`p*2fxAc1bhWrm?W)`R__}8wKTCscbWo-tO`|(W4LFRJs)U4T@JlT%Bhjjb1?L zSq=2(7!lX?1U4GE$d3*ompz1cKr>*g|I)`jB=g^n{QrTcM=^GBbxYyoEk;3n=Rsb3 zH*|Awg6Yn^l7G1rCU|?@4ltF{hGy%b@S_)UN9s-z9Nvc2=A*Gb7M4bnT|~srim&sO zIXUKhZn*Klqkx(5DuOnPFm- zThe)#q}pYGwdHSo$P>Udyy~U?qVB=MDRgJ8Z0#Fhn?;aJU+}+*fKa{C3m={c8~ZQ& zW$b_k5emrj_@?67O7np|fXFX4raIC20NO3x1GZFJ0+|C7@tKnR2{vM3Jb=2!g8Bb# z7u^_yg964|sfK<6Lb>J;t~bL!fF7SR0C!D+Z>+xIhvXp4iVp8aMnM03(_jYHqLvGd ztHMeeW$Zul#Pm5f1lHMW3J*GfR{Y(=VukzzXp9R|2KXpq1_pU|Pf>ZuyJJ=0a#j%ch z%)mMbK)wvHf#80szM``NkP#OKWj0WK zjeDceo6Ov2?a%s?EtzW9Sq(f2t;+0B?E@4u0SyGc`}6H{3ersCwt%) zU;of2+9&3EggOA#>hHnA2VMFnxKMQwRCXLW4XK#;>#uy}2s8HQXfBG{L^CiEt`tJv zCyJwuxLCmYq|A{QoYW2F-(5g$Iy17r-=$iu090mcUfmFIq4Fq*S{0agQ$0;5448ubPcTr<-JcxjfeM6W zM1|xl>}e69$FW9Mu3KR_mJbUOoU%*4C@n1k&Zz=lI57cVW)=N$?-fXkoF~A$e;R9)YL6u&(M&hC)yb;RIF$7G#w5Shbdycm)j+mX?ChISez8YQY zgE+X1GI8#RL{wY;8jI;U zZnejSxyFA1Jah_$5j?0vSAETsqo==d!!uekL``54dNQwnfxW0qmz1FF?$08II zCbdhOCLnb95GwzVt@9p2D#88--@>|`g#Gm@H=|D9p*VoGJ!l$^s}@0P9x>_nr7J7t zy{%87Qys7opv_l45+HOxV4#?SoLnCt|8Z%uA;o=O)E33tPMMM*)#&DVVCVVUDSr!y$94~)1jhScSZo72Q-S7{zu7$glRI*Cqg59) z10gDEBz)K2T;(VO_M>iROWru#pCaQdgJcm zqKl>*rT!M+VHR+=y+SNRhEEDF?5W#mWXpOJg0EraCQW2c7ILE-13E7-Hop{wa=OM& z^mv>v9bM30@IvssEw8rvgvxg-r&G8pvj&p-NxEx~%+AISn9NyPD(&A=3|9Brvk4p{ zhJ6r8vF9WD(=eRBr%hs@$~)Kry(&R$ru{pt0B}765C8~hv%q=95~sOAqf>_9 zbK$Pu&6~Ft`kohEJnFOcuR3?>{sv*8RTwzo>Al#jjE;W2*$seNU{m0rw`d~-H@&X~ zxGKT?-kdM?34x7SiJtC(j=EQMFj%k{AD-OWIyc|~k|MoR^7h{~3Xd3avk&VToIrig z2*nf~?UnV&e9=LvXSaFF>iA0-Cr5JDEi4|=ka05joMPTiv@@3`g3I}JSksfQ(E9ZT z4owDY`TENbOp7}-#-Cv>bewSq>x{jZ>|$4aE>fyh?XXKxt0$ORS`B7LCoV`NABeb2 zBP-atx3sj{qqnU7EV}gU$5LMJWx~nY%7V+nZAelO260&XGLVdR6lji@P^^1?PQjEPcQ0p3{2Yo$R8wd? z+fZ7%?X18-KYKc-R5_uJSX#{M-2|Gt2&=v*rlhG0Wd~;%f%=}pseQ#eM};!kyI*kW z+^@jZsx0Cx&+!*|D#699*VTLmL*iYM{aV$UOBZ3kwP$R5R9>PqfS^dN7}Kl=Xa7rE zqCh$EdGvwk7w&~(7U-35>d!`Q&muV1Y*2VfZN9s<&JG;Q*Snei&6C7aK*3YN-!hg6 zq^uFsnHXDtLB&}|*qI2;M06Sa1j%T%7c?spG>*`>IoHDUYvGcW%dW_I`GdL*+xZyR za zmgzYH1Z7pvYoGbEIdMDs zdSEKO#|IAYc<-+SnC#z=LG$b6LXO>LaWb$wN^Kgz1H>n)&A{H39dZNOlM5Dww{KS z{iaoX@v%(XfCiWWaT<=!Ke|wT5Dn! zbp>WEUbX9O%Co?IuBVrg9mM}&_?$tZkNVxzLke8mQ>=r>EV5;MKUoT$Mh*p~XN(S1 zng@Kgdso*^4i0;8 z|5zn>Iq$Hz<}LS_Udw*Yybu_Hn`VJK>HVR%-+Z10?xF}ML+FB?hA(!5$Ay_CdXLpC zFb4+YXw&-i9Zn*e;klf(mv3ZKZrf=56AG9rQ-rWzeZ`BXX$_?kTst*@hDkg;q`#_V z;!GXH*5-y<<5xDiLD%UK66N~a4~Puo=#>=e&Cq@;RbhsLlP|DiQ;0Q5Izy5P-9h~g z5k~_}uyD8%m!g2Ve{y_-?@D@m)}kZJDWK$D4L@O4WQrCGot6|IXByMzO(5)A+&$oV z^DIZ3-XROUh2!fNx~CVflw?2Bdp|Eyf3vpKF8ta2W!K|v=RfCtZ}xnrV5wiKXGFa} zBkpLff)7hwSss?b-1o0KYv%T$I+Rs^Kqq2k!=RHg=73kkXQQY;V0tRmH5N{$Cy~+P zd(rPZoP64|l#blKsqd;^XX!#qP@EDY9}^uYuvMr?Nm0ZMr6puwu-|C8BX_NbzayYE zACBtz#FzD*L&0O6fXpF0DTaC(|12p?6J0=1pX%pCb$KY_*04fb?~a2qM|u2NXmaq` z2v4tjkT$smc=&S^Sp9eNx#X1~a|%H?{B2_=8q&+hteVuz=lOuu;P$q%PBcM~*?XlQ z-{Ewc0}0o^vLRVc6=Kg@&{JtY-R1LXm4Nb=0y!|RflKHtXBd1dg~|5k;H#6h3URO{ ztC;Ws`T+yeQs@YsItSXt!pldPvN4)&2LAD{y1HzWb1$(p*DOm8u3yafD6~FQK-u?6 zi*d5B4F1AKi#m?dtG{*Z`^?w7=egQ^eduRHMS74yR^qpcrzs9kvhh&Myo%BU#V*Gu z&rC~f-9phaX;;jG@(rIU!I~1k6Lit^d%w~y`!ltu=*VVFAsFja0)AXMVqBQsB|2Pvz^cnpcmtzrs$hBx86cAwSBkq&onFz17AM=+-T6nUcXt@xg}TyM#@Wp zQ5ci%8b|xth;Sd(r_vsx#S@C~KERQ}+SvXXm3%kVQ0yXM+|utQQT$pd$9=*aZ+1$V znD}f9Di`ovJO8Pf=W7$Jp`burHlnUKe!@l*WUlYMQdNiN{lO)J@=JfR7FJo$Zu7&` zJfaY0Cb#3HHWMFO+lwT74W6t+XVE20N;C@R%Q^im?C*T%ykU^9{mRNzt^1v44k|?N zMY2v3Rj>wC)lC8&{bav7G)Lxkb@(LomwtaqxaVom6+GMEh!7^P6WgtceNE_6n?%}#M+A1?S4pA079MKSV3Em|zbCj_E)Mldw<70JCTzbnQ z{z*0aCLLce;&%x6WbG5EF%?mBEm=4PtE{$=C2q<>wD@&vtg)KE*9(2MrDUyD8u0ja zcj?}G7eYoFwV5I~!1u8RQ)Q|U89LyzlrL>ROoK{{7nG8^d76&_rCA59^+AkEZi)+^L`VsTR+Qxa{$3yaNlE$@^}FX^ z?eb4k)cJxun(S6=15?8uEr5GD`08b9nkB}gV??17f*~s=hUfM+mNTicnmS?k5`vHV`up{Ux8mB6Q}~v zoU{jCaKBW|(@%2>9zJysK#(0k$M>O>z2J+pq;=?VLrgEFXU~6k0T2w@V=4z}#nlAx z76;0)NrG^n?A~W`2Mi;Nvk7Bj%?0Y-Mju=Cm7S3|x28^xfp)B>WI1JdOiY#Gxw1#^ z4``$-9%)F@GdYR|W&40NPU#Ah7K4y>q+VJ}Gh`bK@N0qTWU;{~R^v~c(#y^<+>vP< zauu66UG6aY^;H?Ym02tZuUa8wAR64?uD< zO+df$T+rql_&upUsHv1t!34*pI433 zH`)sAJrU>i$vjtks9{*#i$Mr7qw4Z!C&dSsMHS)ab_YF|Ii6~e4SvE-kpJDt&4}}t zqgok>r@dOwoHWJ+xV_o9nTY~Sqx>lNwlktis@6$9TKF-4(D}n<%g%Ps2$ak3WA8Xs z)h)V-zt=DE%W!nA+a^5x^KjM}!4w}9D$q9@&BR0z5n{z+f)z?BO8(_oxK>WOwzSt; z^<%i{7}M^PR0lt{>iW+Sy_oJupdg9AlHkGN^ctmpOCJ+4pFTF)UJ6)KCl!kT5em2s(Q*omI6bf#Ic`-mh zwo)%?gd>LPZxZX-kNGIug+C@5Ho?4lt|GkUhFYdjUMz?YabGF1mhc)93p=>~ zH%OwDnx}(4@dAv<5|yZ%Nft2DvvsCnfUfRJ(#WC{@78`m1sUcmkbV&Zo#j?;zu@Z- z+13Di18+wd``d|mFyezv#>&{ix@P!iY&{TU^CmC^C6}V6ZL~;%4x7zX4sKVk? zgUT%$d0n5c#0e~mGWETq;06UTArH-jFQ{b#3NHJUpzS3aX|LQ9YAll zQ-LmjX*O4c1klo zJq2!Ek8Do5Kkhu^M*hJN!AW^I{Lywnt2~w9|8sQm}ks97-XsMD7px2e&GgYOP6V2d8X( zf#8O3TUmogZN(#$zhPck2lhwvf`^+Tq&Yb5i@L!t zsjgF8N2V8nCI%rjIcimu**FHNAlt|Ofou?f zF7@{ER=PR42VXM~kns4ZiKZFQ*m5ZN8$B#wnSvF4z~JjBOvKA=PkJp4vZpInf+2|# zH_*OaF5Vn%>|@_S?2$$%M1 zXr$jwHYoa8o0yiE4FxGZ5}?)LQ=57wC{{7qZ`Da#M}$rEis4zd3Gt+vWRz;O{{9hl z8MPDoOVNnNbLXx}UL`e85go^amsKMmW@AcrI;7)kyn!vz4k1r>`=(n07bH4erXY2p zmJ>^yGF26Z%5TqM-hfc-ni`bqTi!1vV4f1NtN>?`&i6P^Pi7JE1rPZeQ2d1d%yD6R zuA#K_6KvH?Wsul=>15WAoZst$*ef1*ePb?>4RLHLo&12#&H|MVRZQuq8#@+GP*t{S zE}&}sg(>+BRkXP2`(@gh_(M$#eltv?GX)HS8EW)2ZCOE*uP??Xw*B3j*|%qm^$x-v zmR!a(HtR6amd)C|p(zSZF&+ z!e?uo9D#szUY#=3Ivcp88Ad#^DP+UDPz?KMYj$L&bI!hfWGj>Ni6VL!M`N|M1b>Tl z6Za)3-KLyw-Sh&=E7w^69C9MM13H)oUfVYgZ-dTeU}y^JZA|*cFJdx8A`*-xW6le8 zs}l*!zYY60z(9h+*ufv4h&(K%*-*_t{ot<^pI^X&)igNG2R`$UV&>7bRbsFP2lAoaQDvZTXw7=9>*M3Fw zd^mgmqz$94*qLMAd=bV^_5uAwrfKTWM)4HbHD--PD0p8W4L{elWajJxOP%=7Hw3Z| zOt+)287B3UB}Pz8hmb`3KNi=>W@@q(u8z8|;Tgpu|rF*N}xz586RB ziAVrZSy(E!X}|w(spsF77=f$TAUEW#0}Y1FH;Kp8r9R?YS|^q*#KD$FkpUuVv_vN2 z>XBp8;uzVll*33a`h?WJMQ^`bq8`=Mu!#A_ma6cz=a&Vs&q%s8&m*>-u8wE*A^4)S zN-RyP`x0RAZcmlGhZgP#!j;+C=a)k`&&=K1hbffH$^e6 zjT8KZ1lJC17Z2^5La?8<*cjz&PR?Gwq?AvSPt7A1lPL|`H!?{Kmm^%ityJk<21y@7 zjUdRCfmL6c&1q%&Xf9ru+~6gww9&NI=soC2@z3!}=WMBxnXuu>W3Me_HpZ2w!V$;D zaQdrww+ig+S7ae&nG#$%RoEZNAGwv=%7-i#aY#dCPW2BQy+FJfCK0k@HE5XuZV}Z( zbWh_su;3xl#s^RIkVf3-C;fZ^2TxN`em#tZ6X;H}EFd491iw)h@~XirZ%f|S=?;zDWHUaW#e$yh`3%T7@ko-7 z5k|5o5xOBtr!Pw#XW({yfv^2=6x!PhI-_0QlM3}Hrq<*1jfG#p$!n2^&^yj>@C|N* zuiw0*`|NbxKzBfXdMZ(!pbWhBLXHmZ77sbW05!GU3LB~_JPm)O^5@+eW;BdQe6E7J z&EG#(14Bd2f)<`gr{0}v5Th;&I*Kz8v@hIW?ussVYSL$Hr)R^~S=@W`ZtfQ!Be#Y5 zOx~nGKffbt-x#i~Pwbso(KK&!m{~q6X8#nimQxq9^_}Dx%K?9u+^31>-LGw!7Q|@@ zDVeFM$}*2XDW9<)fc^yEO#oDw&J#omUYz}fb}ohTS2q6Piv(*bFr$Gn-+kyzU6NQ6 zlDck_$N{G$40N=->zDWXHR}P89O?I0t$p*f*w~31i3k;0#$J|!Qx{-;!6reCn+Or979oBE4B5|mEF^i{q-^PTMJP-L%C;*scGQ5%jqE>mUU_DlD# z%1ChnvDsQbJSO7zm^f&KwgOU;8w`b!=)4#fC6fhXOft~a72_4PjFRMJwGt4FAk<*= zpbI!`rH+Gp&xc{kR3&-g;3v^A7rEk}PY*u^WxY{O(%>6=h}BIvHd~@qSUmGGlt1u? z?`B@6T6=}M?nbx>xKVmmc%#kt>pl zUC06JIJ{eN--oBLG4m~i9&V@E1^cE-sgMREldQZRa8MWwvYAwZoVd1M;UapDQNnCB zrZ*qI4e&;iKW#y2(Oi{}FQ&?<2sc79aEBen4deQ?JE`XjmAkO1j~?^cjQqhN_&`wk zQ`ZQnPk7RZA9akH2|p_E8+{}Dn#jwg7NkC&A#%HVj(KoGp$F?5KY`i)kxw7YTyGY_%3uZzZuEkcmF{|&BO_=7?ZxKoFm8+N2M;1 z%j@B^b8UN6lt>R_svHzmEK9af@`uH?$D0sZXW06MG%=>27u(nr?Q45wGrO)mp)@Q} zhs!3QlpI^Kq^eS5q_n#FzXAv7hk72|Z2D^}GSUQ8}fM$?T{ z5wbQA3&teC{UjhKaoqhxB#G3%Al9eGp-Iv+$3TQsU*ie4iekF>E2VEvez?hWU*8YD z9^mZc4v&~tue*5m*@IiZ&rwBQ2toQXZ$ly}F%nG;=X38ReM<@tz3~MeWrLt8?)i*Z z!n0L7O*uSK6S3Fh#hWkd8818!V%_KcL&=QVNJ&SP-g#_~rsaSWcow1znXFevv-CHI zQq@3DOL0WtnE~l3l3@L53?#~_5qkLXO{0WqiHoV%(+^7s))Bf_zaq%8o2XO;+YBVn zRgLQPpL}h{IOxD&m0$U2Og*;A^f0OztPTpL7JC==`9qAK_JPyM3H(ICoK{3P?Nbo+ z(>TS5``b8Thx0o8k5sM?@j(YTO8B)!^#lxzQ6AIL;0JE_Ub(dl3rm}+pWqq}=zPjx z4$5X_5;~85be83M@ts!f#WANjrT)dxRf1E{QR!2dCshrNPjS*ZV*Jmum+oHJoWEu^ z8mni}_atqx{pt@KS`!W+MXH9%a(!P0|LKeKLha z6YCg!-a#o6!IF*X3>+4j!v90}J4#`NoLhB!BO*A$OyC;gs{Ifv8YGsHM zk35T^y7>x7cx(wEbsv0z@F}=l-|aJ{Wy2DSk}oad`;;^H#_UC}H~)S<{g1wat7fJA zlhLp9teC&|D2KuQ>{)3;FpJ%*63MMehD&{>FA)WuWJcQ6t)4}RbNR8RuNBaK<^KE< ztkvT??1M&3Mxvr}$dx(Z zE}>#fg>2s|o<9X&N0jW2x+0m6K`yTG=oqn4#F{75IX7epzVD#jD__$5)}EbOU>~8G zAoGLimIhlEd1P}!FyC`Vf7t#4Hmyv5s&0#c3VWKuWf{}%OG=EVkr*l4PQZ+9$-ql9 zLj}UZ*U&qO##>LuJb0A7DkY)%)x6`28n(o`ZtnCY{g#PtU&)Pn*af_KI|&q?uW9^Pn}Wlw$@nF^K0Z&Fbn(m{v(I0Q~B zC#nR!l=N^BJ%{(ZPxJWNOm6Dggq{#83R#jfL^YqO$jH&?$?gWWz+A+}J-_NyBm&f= z@ed(WsGL>NGH*J5uEP?|FF;d`n&E~V6SUjL3Faq&5`g37sxkUqq~S(Cy*XC&dbn)-A{8IgqLX?Xo|g4XFSZ{&ad#s(AXj98 ze>D%uX4F+5`H^vr2CWb3(A|RG!!!RaJnTBBAxnEx1jt+B5=bg}P3B#xRkK?tl z3Q#LO8`^Hg>@mtGnT=Po)zIvQ4Gur^YW{eliCxBoPvEk7Q)-mnUN)k5{=OzHnfF3O z2f7G_;CG`+-A+4$Uo|*R5YO+W-hJ7#s2=V3`qqtbG+tjaL|OgrF0W{gZ0dP2Jz8G3 zop^WUWW0l~|Mh$D*-ug3ST?GMfe(G6$~*t?K#GpJ*^YWB$~tVz#|!NjcxZY*qvY8R z4Y1*6d~!80>}@`WrrEZQE{JP|&_VF2x+${hSY&#=K%Xh3y*ECJW!yc5+x^7K(Swuz zDvh>lW=k#A@HUZC^1=3bb47ahHw+P%|EtIb3V+#KmBM*Y7YPXpnCD5 zUoTg)mo2J5z3gLqA@Z z7j_lf-vtP#>098A?x3GG1Ec~uKOI1Y92gSH;h}UdID;n)U|x=|(knyGU^BlVNalT& zUGnNo><#hqIg|WasBW5i;qOw`&0OtGmR@j#+^*dXmfT7aIjvv__hf5V=CM$XgF)wR zefXP4@huUpi%BCNgz*b%1GfJpAbMV$N+J*9pBNN@T)3gnM61a$XP39^ogZP%@+P@|E8O+>h)hk&rZeK# zlYHLhh?Gry^T${*(_MN0xzmrPv^;Kui=Q?~oX=7heLv2@vEZ02t;7CP2jq-_3lb*+ z5S(Q8E&;2%A69ZO>b-m8VX*1^n)j%#9zn#OYo{WJ7%tRxMUNxdX)p#W852I|GQffFu*;7p?v*v?$c`K+WGRKCBg{o`91{WFKh zp3(|H_sULkOlnKox=Y=wP%Ms-!RHiVl!T=cLvMvk%4p4X{AxdmK{4okDXAyowHM8Y zc&*zFUdlh$#0}G53mQ+|v`>Ax^|psODnGMV<=U3XC68BDizAB4-r*KB<-#?lr${>) zgCyJSx@vdewB z98SO(FpJkm&3Z9b;MqK>_MqXyPA<<~6O#_K`b#h0NZ3>`Q!V{=fBo#PP-pH3*fgP7 z%grz*puE5Hg}o^yen1lm~+JXOHZ; z(NIyZ*oWWct&FkTO<)6-oTK z>5u(rgV05)xY5}vEf@M_UPB5zBi#;6Lky8tlMk;5h*S?^m!}x(Ls-+UhAElN1#^Ah zJz1`v*BA@_k>7kA;bIx@Hqn?Ju1~0kIlT7W+tcg4MGbI5m@q?_97)*(G z#~IB*Nm}xe>VJ+@Sp84YHi*<~9SSPkF0n^%V>TG*7%>_Vh)sLoN||NPhWI5Ev8gW& z)Ar6}b6U=M;O<=`ptJyGc}a=q^ggwJ_B1gb{TtPe!n>r@F%tjr({B|!QVhr+!}3sQ zYQFgg-D5t=%pb*Ak6Er#9Y2}Nt90{q)D_`I9PI&qqHKV(TEd= zNu<&I)1hZ~G9%0@dGJ-qDdOX`0e1%OlK%s1-SefA?Q=7@MicCI{B++%@4zSUM`>#dFP(UbtQ#n9xvYF8p^umJabo{w({rk02c;5X)!so2W(4oc>4NRzV)|_qdeBb(I!8Go zMWy^*+q?ohk=hfAX>{Om0Aw=e>HY*LeZvjT9h@+NDO@0RZr^(&D_xNDdmeL@VD;|( zeD`q&)nN#zmk9KU2-L#1T%>J`r^MGLnD=9rh`rc(Y}(0_UADbQ%~v-U62Pcp|}T9Nok{$pMfGrd8Uv9E#g?>fh)0}Ng}s%%;VEsCX);ggJx zwVoS4DM5>wASzUi0#Bmz^mwf8JV&9i_*1*bO*0*ddI>H%0wyhcT3Cil85M)%QNmIc zeDa^ZsUzZr0~`iN#e^4moW?sU4R&xF@oEE_%T%!S)^1eaew8wqAsheysCw(Dwwkql z7${PtKyfXlMM`kj;x0u)&;Z5V-MzSbaZiAt#kEkpXrQn&BZX7p4T$8xchzvv0rW<^J7X?YnSx(IoHoM2w^J^ zzx$+?{c$SYCt}&1OAS?-&F9zm?c7_R0EWa)+R?TVZ|Q0rbh0Xlt248wZQp-Sm#~%T znD75K@&>5_Jp&%oG}&tiuN=T?i#N(ygszfWK^BZ^Hi0$mrST!92mT5a#E(_l$7}}& zHTqA5fx2DfkK1hy^q0e|XW9-3XtO2#(C?`cFY14+3N(Q*)78y9LEY#w%qETb%H;Ik zBet$$JlIoRfyQhFGj`(PdJ3As`n}myKnkMN6=8p;#h%BW(uoTHrQ2ko5!QrViU;Aq z5xMa}pb3RgA^Iz$_+@ZSuFauod;9s&M+9}tML4-s;au`(hY;K!`y>SLRM=$2a|zC= zc^%8~=*R^j(?u|M4GTSqjMU}k31B&xMfkRG?Xt$L2SFIT#j0*~<+uc`^6!#&t|DxN zc0z0+hHobo@aKO!JiNc;ZCjXFC{&!%8yH*E2I|Xmjsy?;>Y#px;46_==}fV%I0jBZ za-SIfR|}9)6^m7V?@}R3Ycbz-JclsC^Z)-cl8l7Vw%nN$)L$o26>qhmehPGV-Q5!n@EHP0$S0JQiSLwy^(K1KV~hE?!&J zJnHn5IplUhTy+RjwObcJQ>rQSa@STNlz`cI%9OyE)OZVyWMgnV2?D;hUaKf-rh<=R zR=CgRbB<66Hiyix`FtU-lj~(NVLw5yyaAjzzrk(r8zj4A|Bie+ZsmOYCzMe62gXJO ztnxflR=zDU8esUc_s#}JP#K)P^NK|42~o|6KL~7=rt>M6E=cKt^Mqh)AwCMUGQ9$J?-le_mL0_s?cxAHn40K+cbDj z(xgvb)2l_q;aqqgZ~ySopksVu77KCY(8}Jeraw@OR;sPKg9SXm!xUb*NrX%0W+Usw zJf=1%_$G>82_3uat4pHRxQM{Qg_rPtLtjLJ0(is_p8FNZdN6u>4?RJkh8AckT>y63 z)am(Ek6hv49X4$E$uziWoxpj1BoV$NsMaWL)ar^C)n1eSO#kk5FcHK4Ok*Dzi8Yz< zvTlU2OjtpmBp|8m9x~a(srVI{eXi=`Z{mZF!Eifrml1&&-`_2$HJ=Olk{$>>c&?f_ zc675_Miy6Aj!-Q7RI*qW4}Y@Sv@o)bTsCDo8T|N8C_^-TUo@#R zbee~>IUBy|rlC+L+Ptl;DbQD(KavaD`8D`w_p6yg8Aa_4Z*j>y#nHCxWgHdn7Zrc< z9>by^riOT#G}+nawhwlUE!HfybWh=@s|r%>x0wDyh;92j$S-fZSNQRro9-I zp#d}2nqoX{uYUSc38-gMTFcgtuSBhK95%IBo-lmvgEr698u7wq`Qfe6i>ahot~b4s zFL5eRL!!;re9|jFYO{w)pN5b9jgmMj`dxl>hIeEM&eSj_7Hm!kja!tV6c|qs0cdo- zU2_>~7o&1|;S0pBh4?)nVGypyO}edKo>KPU6GEY7HWlRrAC6jY{YM{hznZ8SycURQ zc7;*C8p6!pY?lMO(SU(`ixD+KSIlo%9tnS-idbVtZxh0U1r>1KTb1Rns(JOrdn8U+?qK?K=6cjl_ z(8bx8nH)*KK4b!>q0tAbigG`D9{n*23*PX?sc4)Ib=;>aE6pbU#u)2}sE1s}%cRIR zy=6$Nie^b1oRIA8>v{%j*Jxqwh*9EyA1ak1d$<%O?uCEti0)9c{c?gVH?WAONvbTP zh!pR$MrYupHuU0^xZ=Z;u&Ri*hB^f5&y^K@Yd4t&?kW5HT64OJ(CI}epf9Gd!86c+4!&) z@vm3R{ev6ppOKk#*uNkM7W_cY#1YFBMRN?5Et=@{7I8 z4eGHh`+&Dp`6J=d9v?a_IoaC-nH|N~wt%`^ANfi_a8n6*_3}uj{?4p8_w}J-B?VHs z!#>a=-T1Qu^@9WTV?_72@-?!grm`?iSGFK_fH1__n-+x>Y}w+{YI5g#63EQnE&_}L z+s!tqINHW7DatDRon1vC-}~ZylYx^4OU@>MMTgBS*_QsQP|k=1+ZcA+M5RtF1q8en zIq~hAl6dnIyKSt9eO;RHGEvZYDjMSxjY(RiI6tQvmv9-{Cc{0O%$o>s+?BZ>i{DQ& zCWC&Cw1gImR`3VLm4_a8DC4# zTGvYShhq@PWYrNAlm`ZoJd)D1bMv|@5^_|G3PD1@w9B))Ni7GH2h<`S_oe{!R zFSEjoQ*xQz?#xXLIWhWM-R~$0g&uR!Pv!Q3d_=Ys^XkjF31~7+#ttCRw;wKkIqg`q z-kRR}JM6Z2El2O}$A5*gV(WKQkGJc+Xq)wVP?wtxdOCR86mo~-xE>&I?@p>NAdb=8 zDpm5&g_DYW>dy2i!MX>;ov`(krtcXQjar*Ub?SN~&R9_rDk)+If0z(>O>sxE>=?l+ zO2I$M^q9~89$Lfb$T#9CD3U-s8VjF>q4D*n-5JTY63Rzry>g291)1#qaI~Y*lOytd zNtr`2#t2KNmqa-{pN4oUE9R0{x)C^5&nEXifTE5Y{b}fp>r{$v7ClrnYvo&jM$Wcl zstSJregm!sFD!rp5IOesF10gFUj@<$mS4Sa#`d|}%i|y)IKRf<)IB>pgL zOw^TlbHRN(&h01kYP>@oU`S8_NC0tRkJ~AkmQh4x8So|`b_}bI3X(Ww_fw*2T$B*M;_b{K5g)^94@7db%IAdP~?L90J$cz%@5z2n~Yr%|| zy(~D#yp)xSL`hZEoK&2pPz3!@f|*7kQL-qSaJgT?pLbOx64Qo8vkWHgyCGk`QG)J; zMI?AX6@mrBpSf1XxfgwsJ~6V*5@Mh-s*wLMVDnRo#R6#ZSx zuG^?d)i3u)*9We?16)J1WvYO@KmHrdX#AHb_XEtv;+#1g43u0XDFs>EWuz-~Afe&A zoooYkFP1;R>3~f{R(5e}hojK9m-aa^P!2`&4-tyZX)xBEE0rB!Yeri4J0E>cWQnxX zr}GjnmQ#5d;u^ra;|$~qBr+zWI5jYkSA|x;hj{j6EgF2?!DdU{Ir3BgMRs1th%$j_ z+piazJFvBy+o#wP%My4t7d}tQ$tMd62X~BQcc~pt!ig->IZC@5J>pKQs#|nFu2r0;$){PmmR;dET+Go=c1qmmVjP6oRp6Z3#idX8UagVuPZ(A9(vQP!!rK7bZ0aA@ zqn0^c-0cc@kcTjoX#M*%Y-{3`Pvv2dVKa@SqLQ72A-8Q7u!jGwgKDN2`^E#D}IO)7~`~aQI=qeVza@u z@oVmiPU8aOm+dJDiFt9=rTfU-S=*&JRW{bGwn}ndvrXStr7Jz^=o#<7`z=JiPyUNo z1zEX>N9e@XaNf()zWMjTVWSr^BZs_F1XNQeS(XC1&4pytd(88B^Lkg&8|eP4kLnDu zLGp`~L5!O3b(K@5CiYZtnRU%YB9{V|dK%#uU(ql1QHP|QzFuB(-oU@_{q4`n;e}DF zbIi8}%&s0i> z{Y>-{Xk@8B(SYG&qxnxt+h)pw?$6$`U4ic(2(Ya{P&}Rd5+<7$Y(ZbQo5lmw4BWa9wHQIr zEcmorzVhN{BGq*zbjbIaSxQ~CPN(J_P@>Agsv)>r@xQB5IYh|pU>g`*tax`{6kUHT z+KI({g)+ZS@5ETU4U67(k9f!I7#=s!>@Vj|OwXx$(xPYt6nh7QSnde8CxL+2t3lV| zKZ|WQXsEDHXdr%SzLAb@dIwR?+Z%pzAHDzb@VprroYERt$uM$f_qciDdCmK6Y}9tj zw_w$pz{XGCB_7H86W5H&oT`d++$)<6ETP!;6>H*pZK(|e@oWrr zF${;$d_VrW-cN8yzF-=39~fz5lm?>4MR9bL#5W@j(?;Yot5oIHly%CFiU ziHnDzenj)xSVlT=WPVQp2apd(0MWNYBUJ=R)B)LG-iJ>J7}M;CbyrUYk_RtmldW2I zb?L{>Df%epz_aozi-Ic8OA!mrRqzA9)gT_B#8{Guc4Ha`*bsF zk;Es>J~@q5{IhPF_D2~Q1p<{d1o~M~!1TeK&Er#E3k26_$M=n@DWS0I);|9@luNT7 zz>Ptpi>}4`>s2;++3*^?dD)KVQj6BrG{DMYB6T{9=M4`Ak7kXng~H2X!Lm9E8Q$u9 z0|LW^Iv$UZFo6K$G6JtkVxLK>$&o%y0=f|)O{2LY?c3P%FO>wJ(yIKgd&WS2=_&vs zas2U|+pINnUOM2WJTPz~E*Jb}(ys>aT(d?5zV?w?gP2eKVJzF=;Q@mR3knMh&&905 z+<{>~R6TZiy8q&tJX=syWq|C(VGwzkO=vlgp-kEy!`U+uO?Pf%E9e;&y~hgp;!Q`h z_b5~8?4O|Wi*`M^U}B81qorXefToBw8j>J|Cb%FZJKsw)Ux`5Sg!wp=Bcr{@AB<6b zTLP#Ie^2sKvLP~~52XttJa2C`OQmMo&~K-Yr7zSO{h{LLi#Y5+Ix{=yTo482)=YBA zoOj2^FX@fGA6owiCW4#?&m6J-&P_vuKFcQbZejSR5uSSScPGSf=vgGhB;V+q^fg6# zO2Dv+jy6&NFrQek`CrphoLNG6@Q25^#)uVshetjHB8LxmR1>j6wSLB*rqFcwS$fOs4`CR!NMfw6!$I(L*hY5vb zU`rH@lcz;NHBKmq^N}P{MhY%WLJs~+_A#Wl)URxUn!JF6pt*s-V7b7H&YEGBaS_8b zLCB9wxzt07a|f)Nmr`GL1s}a$`oZ5cE_XtbSj&HZM=l?c25PkgJm5$C^vqk}@T`6% zF_9_p;u@nb_cDR?0$uHiUM;C=BRQ~W&DjXO+{0q6wt zNmNx@Zdyn@P+DA+8%eWazuGclT=4dY&r0g( zN(I2|;4l32G<_YHch$t#ZK-2UZD_u-(=lZD+3k-sAeY&@obH~QdPz`+be=5P-s%Ep z=j-p_-kY;v5WR4%5*POwMCJteyR#rB1wJ$pDh*1!7ZDa-`DzE|&Bqk@T}`CV47kv4 z>b5cZ7VSXFC=uDr$5P^KkwVmqI2zt}+>ZKUuB1v`P=x4#gr9XdwedTuN-Ky!P`vUY z>^tGgV?>BI9OBdye_Xm*t?=z@$Lvl-y)TgP*CyaDZ!J-KzYgk~=6Ms^PZ0#FE`aK_ z(@{Bj2sE|>$-V<+7m#GP@&zU1IuT1RxRS4ibEJ|a_b3b3z@h^Bk(1^UzO&=F^G}EY;i|zFYN>At2C93eSrr7V&~+oU zN?9wO9OR02!ep?Q8Su6rjYNB2jukvWx^lO^AjMsxUeH36BWds<)`{29I3k+d)iQGe z)4I-tq+)-Q-3uK%GPZtP{k%<0_zph|5Z2`nERv^n zi=1SKeh3AGPbNvILSiG~lX+girP>#g8Czz56u-Cpa&H|@-3QEE5Az4Vzxea+ySQ0G zb=Wn{+fB2O!(I?Jq=ajE@_uz@so*>A0xdDbK= z*yb!+=UWhO1_~rcx3HvOKp{1`DRucei9lSp%sad~#l}V6)Tqa%1F#Lfjz}~Vx)T!F zy)^eVM6S7b6dBy*@YBu1#w?7^iDKqmApW@Ec2Vkg{t)=)1PDEYNFh##nU_gp0~$WN z5vv;~ki+F7N1O=t7XQ1^=4^EF#JTtLpO zC7cv*vRsnd(EYwW%{T3(PVcwh3vSp5_J}J}t$lDBH!{Yl-=p)vR%I%s-zUsjCR(8% zgn)Rno1Yp=HzBy^H?foi7CVw6hxO_4-wyxiPNLjGwjMg-bc3%t{Btr* zTC_U7l7gFV@j_Qxv@F6qr%faco?k_b3;Ocy;0%|iJpF`ovdTiT%_8%@$7zxnyKK2J zQE@D2m-hFF4$|DdSccxX!5010s6uzdP*sA|L|vg2_L?7*_Gsy?PnG~2q*e)wGX4_6 zZn0%v(lx(G?xiYjkZeij$gW}lB_~DEky@Xc5Zt0-;Oo^E{I9CtfTB-hMjcuxMSp~( z_?&4ddE3mqV92~_*6HRKk$Zdi({oF2M3XAYC- z?)Z7-Bo0Vw@gz4-a`;l}Wy;zEtrujJ0>*09FYBH&x?76 zIY*E1f%>HwFA@yy3L|~tSZxPRj9~L1*$#%~&up4-l(2*@0ScYF+i+^0V1?}D$ty*B)ZoK0eq zc^w$9n%jXrS6b=@*}k}NwpiIZuSfz7ZysE-?Lop%fILws9l_OK&LM)6pGC72K3z1p z^bum#rrhC7K@ zE4^nHDp5JK&%Ut4cB=jzB!8#R3g$Ifh6+%f^`8&+?sW95l47(_%(xw?694t5^+WJv z;o{cBcy7t&%ub`73blZ$Ut;iJp8;HHP)rUii3)jVOf6O@O+2WkBLc1rqFc*Zg4@J% z;Ke*oHli7?qVX0VS~`2OzZbkMY;P0S)K9a06IvjbH^X{I7wYqf?pUMy=jP<%$J{0` z@}JZpWqgSoCRBci<4dUlR)IaJoFkCzdV7dSP>kC$wLS!#}TMnk>?$ z?6ADh%x898MEgoo{AC9B5EvLaw$xQb=m3tKu-Mczan8`fp@Aj!esoty=nk% z4XGE{M|K;D@3mkqIxUP;9NTVUr_;6gc#Q5DGGhE)aJL#~ZJP;GQ^PG$wW^kvZ8opK zz+-R|JzcQvX7if~K4wo=53$B$qAXplS|sMe!JFtZTwl((6Us1Ymc5PK57AhQJ2=kq zIb85ax2woR4Iy}NkcAA8+%NU6D<2OF`eFN_xGn4B3KaL}?kG;~A)%%FjbGYERt`mR z^{m^^)^GbFcm?M3kh%WrubwJ7-;tR%fXk_Vb?adF7!WYxMc&_#{}^h1D99XEspOUa z)R-grb&Y!k%Ag)(bUMQb267c9GnS#jk^u7r1pc2KSY6~l;mwYF$tx4m9TQLT*9N^l zhFTH*k{_}TO`jtkZnY^vV&ys1k1Pspq$nhJgAqL{F8&~*WX7x{Z~-|U6F|QsFRU#` zu7_L(cPA$Z^0%T(&(6#slf!ICCV{fKC2T4>*qZz;XMapW7nrGP#PP+kN5`ykd*&lE zW@o<5fhJX9(pSJq{!>NUlvK5YN$SA^Ru)zDfXVlwiA4GCd&D1ZaY#&uidBf9aNWPjwfW?hs zHUDOMxz0J2{;Fk*j|;i*IC^}Rbn%E&C$v&Muc8$q$uR)nZYmE!&)wk{J;+*Ycs5-9 zrPu*!r9mX#M+j8=%AZEc%hXGt(lTwMxZ$cli=me%f9`nRw3r-0T_&k=K z?1F)Yz(~*l=nU9w-PSu+!}vk1YH6jrLt7ONWPXEi=P^)Yp` zzAp?*zDZ%?$t#s39LNjaRpHWF=={Z07= zT(!y#EYKmXF+$17(0lQhK8kntdm^Y3qoTc4FtgM(?Cy#CrH>gx_rI`1Zg4Po;%FpK z$srd~kDOOhq@=9_{N@}``?xv_92II);R#@ABzukaFax$c95lnx@*h%9#NeARL-)|D zi_TFj1?K2bMrLQjY>V8}`3T+sBVw#hqOOu#y@gcE7`U<2Bd0CoYwdzd@y(Q|6q(XA zFiaB_Fj>8yD}Meln zdO<(Gqy-?WziI6c!GCQ>bL_cMD25cz0JWLiv}=-36MN;@i^~`ljK8N*f`=5gcdpgq zvhNm}=;-dhK38Yv?Y;r_G%(7f;usw{J!pUY`?uy|aK`g*ZiaXJHYa6Wj*Y>O)5VM4 z4J`V!;L~UNN@zfr+P`pxL(rbW6JWMEe0fOmv(((-N}d)sa}-&8YH*clvhl~#<4VV5 z`q7Q+wTssT`kJLLE3c@cWC3!9Uy%~Kbi_27UP%G+^{Qzcp2j!=~-(nQat*p-;UuMe5Pu_cZL#HEOlbrpV9fa3Y5`xJ4m8VN$d-=oXkcb8 z%eVD>pU||3N}v;9fZ+@)Ic;4)0jS@{26(Vt z9n|!F)*moqLsfpVa2)X6=Rmw<1nTrJ)^s8$SZW3OgD9x%2P9E`Q^?SkUUrVbFp`%) zw!T!8ps`^(a+}zdz{rH&oLtkcb6Q5esGg~~mpCc7h#{qAfwZSvG5tc?ke2Bio9vn5 z3&>hww$PmRF=Rzrm*QhY_38B!!IS+@6o&g!?mg(-D0I2ESz+q7$|fH8m!%yq2Pw1F z-8`}esbg0jW{5)(vL*B>Qst!bGSEKAxbLS+a9!Lu9kr-LEFR7ua1)&*2wgn z4lShAlULh83%C~meK)lD2H1Th0#g)$aM*#>5$X%9WQJH^%cw#aWy{34eRZVA-$$f; z$&4DJD|xG!8m#O6b9?8LFys=XQ&o>&Qn|>2$%iR^r;&}WU1(I9DyuQ_#hapq2Tr#x zL(BzBuGrQ}SSg*;EJ;1)Pw?BAm9!ZUaw<`G1p38VGltR@FuHi(tp9 z2U%uX*`R5EfG&RyA`RMlS4Q(-5EO8NQyjHEuCoX3ad6_Sr{BgDVd><*>TnBkrF>~( zRA47cT;ln+<0rcpvd^qF$j3!|8<-#MzXOc5eu24AmL31gSqFp1* z;}lWOW#F&yJbL|jE(>;dS$6)PTex+CxnP$Ac8-g`1!bg~KK0Ps(4uncZ?>1}a2h=$h8yJ-sp<;(K&y?b>zIRTq@C_G|L8i}76Vpm zUQt8n7vuaq@n&V$oC7Qv?sJbrIjh4VL|Upg8J(@8Xs!C8h|H25Y2IQ(&wZ8+d5*e^ zv-SxEjwir&e%AT>%O==8z#o1KN^U#Y#s2>oRB0uI1Y4SNN&5&oMi;QL9MBdhZ~VdV z2$+WKEmcjYtz*M4-`q_vHFsx*0)*oE5o&~ z`5c<^06U5V9r4t`ThszY!>#?EnA}6qpX{*vjNjmEjN5-umXW-P1!g-TICN-7!CZ*j zp6ma{l%@`w(_k_~8PvJ85s&s|Y|u%Rs{t83Cmq0HT*uxm24UHty-e*p`yQb)9?um3 z7ehGE3o}n}T?@A0I_h9_*Gi)KRm%dc(o21@fr@|$$0;wF;` zh4TjWik%m+r!w5Syr|;u>OGyEOl5IfyV)(oH=^SJ5!R-+fq?=47w0lsKq|9ZdBMPZ zrpiC*CEc&Dg|kEw@;|NJ9qI%oci`#&jj#4!dc(5&IL8d~!#LD=y1D&*>i^eGwj@34 zZ{9BNRQ;oURFifV7k+!*Gg|EBP{vOLXu}Q|`0>s7%vGJ=mTH>e52He(qHeHRcBi)N zchKCXbES(`-_95-hoLJL_n@)z4rgt&bO=%;?K>i#kfJqnE!xe+C-u*CSIoi5${yXh zBY8GJs_MrzBtqvYV@0loE2k_n+O(lDH;)shUS&(eJ!uXvIDv2|j@t>x`GCZbX()}R zvaD8bL1|;&Iv}aaxSKEUxH&gm_eA}v825$Yq?cea&y{~VL1^I0|2ZWo#k5pp{BR2WFm|@-b zZI9+e+@HL=Dczs?wl?1SlK+k&zs1sfo@UY9)Z+n=`dr~%D_XE?03I~|sC)J4Z7Y>K z!61l=#9MNj!+#KX|8x0KOkV*Lh`G0cG|`m*7ZecLm4h{i9uf>kKT<>ULKgT$<=TQ4 z^vPsf$x;opGRkuc=|~4XRhM_eKWnVA=JlntiU+p!JwmjV9cSQjn+Jozcf4ZTFL%BX zC0r!kVUIyMIi+im?B_29bO!&7yfzhWY6ioZ8D%ALQ5mBsg=fu)^w&P-wD&(|?cVOG zR%3UoQ2mDNfP6)GvyWV{EbLAz{XG#j7Jmxkafj2){x=JBD)EI|sSn5tA^O6B@-%I| z44qDXp^dHd7mz>pEgu-#9mu=*2jtDm|2JRn2@gtE>F}Ewuy7Gk?sq+tla?DerD#-d zcPI0(o07dde%NdWs?BGJ1g=DQa){Q&F;RXH{@5jZU&v&14;MjUW8!=Nx%qc(m*k1f zy*q<`CXi#nG=8)4{YJ8g#U~!I$7?0V-l@Z`**6xgAvCWn#Yo&?f_)$+sEb5074~ z50#m!t#`{>LWV*_Ocx8&SEn0^pj_(P!1gwf|I&AN$nPGmNKiXLtGiH_l9v6y288BC*OTWVg@(msB2g+y&z(C%;U?Q zHE*FAt1*8seHd&{3i*hCKNaiFxQFN9W#6|KU4Nz2u4K;iJF79z8QhK${e5x?1M_>W z{4gDDrq6!G3x}KE9~0YSe~Z)OcWmaD>Mh(D{62GHY=Nr)K?ky zzorQ-su=Shj~bG=UNPzwk$lH%d7nU;nM2BUC@2z!GXJ;BP<5ZY_2IrjL8pcEiOoH~ zWdqxVXo4CuCyP_t++U#TPQZ=O-)Q5<8NWlo7c+kxw@ak?q~(+Kauw5gG**3uv^SEr0|H-?Evi)Hn7W(4; zT;0KVN}yYW{it=`plh2oK`0uBK60ilN!~#Z)D`P@sg!hHQd@dCX+7cdJ1-p6Y2(du zO!0X0A;o;$^?cjU!}g-uozWseZZ%NPu}oKu9g?8l(CBY}+e((-FgzPr{#geKg?e}G zthnmyg8ZB7^gR_89m-ar?rYamD-0u07lf@d!xWWp|6E?CS%85L2Au!7o>sLAEbet~ zAvt1sv5$aPAD#IUMr(439IR&Co0gu*H4 zZEz2bESgW@@zk<&39SJ|!|UY02^~+)@yK)KRd6VUVc3Ca(3ESws3yE7+qDtnRn4~D zM5gKYc5PqzpFj8S{5$?1T_3~PF<@?Yw01)?N2LZW!=BDP6t0v+k2iz z9RxJkepLSW6qo3hk%2S1zW44<9Hu_n0;|qDZ8MZ5Qx^A!`=xUIfH!$(viQJc!5MMMX!w{DnUplZi#D-?)g|Y=mw>HOHZ$U#-Y^-^;+WdL5L}x@a z8ADAY$@!QLw%(7T37i&ts!NcW79kKg1jnJGh%MxQ5cs!&wbPx732-g071V!p4h!7k zO8lQR3gMeP_fV|j%H|wZWn?`T)OkdlvTKJA_Ct9Uctn7+=41=5wczwa(Z#D4P$yy$ zlf#|(;veyB1Dz^-)5eRjbpM&Y`Dg6z>*p4xf(rlrAmT}j4_?m$!4;0uEnpkS=nf-T z{zs6BpkAdGQ0b;7koFr&O9>}l0us_Kgnv(e;9rUb#6Q+Q-Xp1j#!X@+!R~sA|A^u( zLM~3Q`&uPdRAls?@Nl4C(*{U!VF8=MKO*(5(3k7#_YHM1pk?z07p0qM;Hwc$>Vl``e67s{`^%VWDCU|SgOx9Ci++4%khzJ zk{6rc>kCv>+@a!s>)Szr|7LXJV6@0KkoDo8`YIX@qkxJQ!U>;(A)jFRS{CW}jL?pY zSbKSe8Zwgd*`MdUDQNZ3DN;rB1#Cn|`T&@aUvv94bR|{8Bhe}>;|VyV2!)<$rl9@b z0C~lTBFzF_IRw|UFjGMOoPuu=9l8Jr%yrs$;QNWZWbKl0%lW2gfJr~3W_D1=BdTL@ zLG+B@5f+8EJ%5db%bBIjutAVPlkSz@{vb4&Y#=D|RBto2Z^C|e>`1V&^?eg6_88KZ z_)YppT$D0Flo+G!1F@Unl_9v$k=Xkmr9oUh`%(Dn#~WZ`T9^>MLWS@D=~k65P>A^I z54}R@xlN9N*8Sa_KEcp=J!NMw;}r9z0=d#$3&o z?-YP#W3NSAR5W{Oj#(8`0)3|H6lNPm!Mb-bGeI``rjlzr(9nPBLl6xJdV>%GEm<+5 zI-|M^&>lVvb-)23X1NHZLoE7=@=ZWJm(L}#t3Q5XV`g))%ndoZ>i{kP=%K@TH4OZ& zxz*fubf{>UMxH{vqv1fjAgW}ckury_ZL(?|rb?LJ$#9qh%QMSBm$5)?=4M68MJTL+ z41y@4u;TmVtQ6w=?7u8#BwrZRU?X|Msg!ZOEWF`(|GFZCY5|v_AtlQ3udSSQGyZhQ z_a6um2(YltjV60pTrlc#vd>;QFl4myirBW(bLW|WO+rt5mE;v^{VHp>+G(9Dt26+b zm7jntS<_h`6s~`ij;WZ-k}HHyyI0nZ!9RFNLD!k|q|9r3v)OcwlLTy9oM3Iz^ERpP zU?@QaCVHAgGT`k&mT+|~8ALOMn-+AtD9KfLdYbN$e6;79wm&RbSEnps?@fnq??heZ z*@t!j5EiT5$AIBS_ql}v@s2k!)d8583!}h4*0<0-s=qKrEXuV=(m7#ADU&x96=zWHEF|6F&ze;!m(6ON)l;Moi!K3hnu|-vcz%ELU;ygUi5fzo z6zXH-sl~Dq7U8|FfMlnAS4_0=sI1UNwBBmXW*^V zU0B}mtQDxs{~Q-{3&?tuM`5&t-1fIEL9?j*O}5D-D>#`$vwTgHX1L>zqU5aE=gwoa z8n(^XT=-qmIxOMR8Y$Vz3d=C@P5W!r=J=f?&ocTk&o5`*eE|tl&X77YKwd7a9JSb=BSY4HBAfJ*KAK~1Z5sM+MJPJc&K@RK`SytcXYzj$UA&&eQpr}CT zR*iXx0W-;W){PzWZ+ih;hwt?nI72Tr1MiDsM~Z&(%9j|%?Pz?96Yv2oHjYc1SmBAbKn@pQ=E3f_b4#{}{ z!k+QDwDh-S0ucPcip2TeCSH>W`=I31&9h|CZ1Vx?MerC4*Zf|AWH@vKI%{3Bt%8`Z zk$FBMJJWmHR9D!Yrb{tQ5T4+F(I%cd zBTe(}6MZ5J#}WZ_-3sG;8oe`BnQe$utU!QOhozamldj$-TD&FI1YSEV!N+V{h3KyY>WXkTgMrhLH;O6!)>Eq=K z6oeGs-$Kq79#N<(`Yk!$)d*nDTeIe{vb#Yl5~Zp?86Nh1Zg*XfxWgA=D&9>MUS-}e z!i%~6o+iK=J63UGwnM5cZm5F@KkIm^>+xe!kt%_+t+g_MD?PazaHqrTbBL5Mp0 zz(nmyzm~JA9Wn1n`7Y-hvC5O$6P&4`pAhHK?4eE}d!X;CO@e5D=Lo`H^t^$;wu2I+ z|1no3B;dUgb$MVL{O#YuCxkjCEDXoa_qY0F70#58Rdv+=^DjD^M#mXfO0O zuc0!vqzG7_eiPoiV`W4(8Dq^()$#Zx6dDT(hK0Pf+7gkP*)PX4q0X~Goe{8k?iNrI-dYzoVV6KH+{bP4S%comv#bygV5 z^=Nyw{ljr}jH4ywlBKOcttmS=Iv{t%h8Rod8%i6c!LOj)iXN?KtZHb5o;OG12uH!+ zcr|6VwQalSjHzrsmhFoEgV^+yI-;~?@5Up2u~|+6H-Eu znpc+3(jJ=frrIXaur?-gLu?v5758cs$9zP;SUdD7;7uU(3sE710!EXV>=atua&^6R zzL5|a$JdGnk*_Pm$|P?g)UgDtB$+kSf1@1-DXF6&vv^Pz&Ns(`&fVb*JF43=?4Q=x z_R*x2C@UxP!WCa~-Zv4yI&jok;}*m4WLo6FywBa&b%JR~qsh8@U9Xz*r4>{OYotu0 zjQeoo?c!QBQczgSMU2Y)!qWLEM`hq|<|4jP>KK5wT=#bGxYXV>@9`7KIGPt?B=AvJ zx-IhIrt@}m7-0noLZ}>n6zHvh8Wj$Yr4D?tvzn^9Dl@n6(Hr3VUf$mNnu@u}H5N(} zdW{=q>btjih#8RVC4_w)QN^+X-St)S&&LmYTk+=!0XHKs6BC8C0-gOfJj3TGJ(38K zchVo`uYxJomjYjxH^tGaOE7BvW^YP6a3VFAp`2LO$dxCUYE+(ywMT4jNyJjC>uqar z^|vsAVIl*ib4C^29{!Qzs!kb2D64GTjJ}ci3tzK$LoT0`7QHMt;Jz^n(v(RiQ3*vR z7iugJlj(kHf7GLxrxUkbz4fCQ8v?n(*Ml3gje^9TMrMcagkE%3M8{XZdGiHyS3`o@ zg%z@D0P(($0#5PC07p4Nlab z9P=H>9RX?ktj*5>l60cxa+@cfhUBk<>4QL>)nkD&Zp0TZ68MccuD^D-5Ou*J1=NTw zXe6G_a$op7IP*i~W339YdICRvSh7Zh#VyN~sU9+{es7*VS%dgJIF(bN&{q?U!X8nc zp>e-S>?{qzSU?tJ=rx_YwE#$e4Sl%bd_hh^5N@e|x0y|Hy` zB2DK!rI(TDI;%xW$mU*!{KwT34PKTwRGS zMUmV4=tAd-+NH>0+v1Sn|J4F?i6CirVcrsERExTloI8#{mQE~Puu&#xO;Gw4w% z_cCNP4VF!ZqU`$QoGDPt-ZV$P3u(Da{7qa{W=NGj2F10G=zTLDy)WvfeEXVTOA%*Z z%r{bT z_1ZMHGrfJ zB4_(JB}IF&7cU>3{M6&X6l+R}zI?Gq-aty&xZ%eHemCB^>k%p?bZ5I@kf@}Nop!@Y zL{;rO^L_BS?6lJ`-($$Vc_f)IE6#0C@!;~3mp|`b#TeC0wT#DQfmcD$drLLXXP+8a zV?YoDLD2nc_Sr5Z^sTjaXFb8K&h7a;z1;FuV!1~Mg5H&`I>;(9t4bWBbbDq4r+Aw< zR`o4I7&%<6rxGWrKs?FC(GC;Kt5{d9`SCL0x@Eq~7nKfGzf}oYg?|Mca}ZY3Oosc? zAwC4Ja!yF)e+btvbsaD5>AT3i>S1I9cb3ud2)+t}-q*eA2=^)odL{QN1D@$!-K%H^ zhp|N5C}XnCIXR%rnM~0dLq+BIRh4t)p=>g~o4=p(ra4qfQPEvo2%q!skpU?JdGJM( zG;Ag`P+O@1B?VB+_e91u_R_V!A2OD?gVx$BN>yv^zpqKd+lW>SzlxYLFetBGUrPPB zuuo{Eh&Jv{q+R2*n!oYbfJm5naW*l3$);D7d(+ihYS;DVdTrRp_>=Nc((el~EBIHj>y#Y;Q7K*QgSUsG?PO;hyadq3+uJs(G!A4ZD#w9!dP=kxxK}~*>13Q3 ziq7y)^iLUTA)@u=e!rNv9eTP(za;93p(8Pgwmw{ryZXM?;xqKpt1G{nTdQVZ!OcTH zt?21&yspL~4iuN(M||dTdgU=~K5XctV`pb|oq0E~+Vk0^>AST%w@#m(JM+c)syiRD zJ>q%&r$VQ8a=QGQ$*P%tcgQS^Vz}3It<^H$%80a8CVCC)ww|oa$)J;u1?%6ac&idO zqyLk9m7Jv88#DI#IN{DAM4a0;7DVE6SNYAl8ngCQqmR{CUP7D3wh3e<&CidCbd|pZ z%PN0k_^S1rl#(j$tFES3vtFLzUUfLE;8lF+ccglTE0q6sIo9j0%)9DgcvV2PGC!vy ztZ5+VU3EJB0rx5pm=IKsSHZpNUEQnXj`QmaKn^25IhQJuRet*(po@Na%Ktt>APZel z364M|bxsc01iUI5vba;%@o9fm8!{B~`;l&K*m&LMpHO~b`|4oQLfXcjs_4>UqQ#5t zTH%gtX2q?!Z?+gyA_56aBn%yuz1~#%*iip#^~Gdv)oSKPP9{0HSEcvyU)+TM@n7G9 z0hKQ~=Qt0n411)CH$1n5lzr>ie(teWPu#1@_({CFFFBhihpJ{#*RkTK1bbK6OQ(1y zIeW1jz+7v8*t?2xDJ9IAgB67dRC6d}_A2;Kg_g`k`B13c#YXokB~1u;0lbniuE`KI zP57H6-}w@{?Bznp_1y>tyg1~RME*MBRq%;=QSYi!yy|i6)1pfi@T!utvDUWZX;}W4 zG6$X*Hn#;7lz-&|d>KzF1Y9!Sz43Ps1m`eJ*xeeTlZ_CxG_eY;rL=Z!_LRSFUArC$ z1l+5jxkBLTi~jS;#h&bs|AO8}w^IyWK02Pba`C?xj(!}~xPCF$nCXUK7-D0HeK8Qa z(6mdM#((Vzp_uy&qh8{l5dv)57JB*6<--43tuLEl(Tz*uBSswO<2dJZ_`DuhcP$>X z=xYA(ZWce0VP*fvKUTJx1(m_7nOe=^^c>QF`Dw~FH9Fh^ulm<#kdH8JA3EcD+b@Ih z3kioeokqR+7Z+ZoLl_KeHZQ1Qg`QiWacn$sZ^oqI^EPOYG0p#7{ilJ;X|f!namzTKaPhHp-Dj=pyWFc%IO+;6Y0dFLr!hlws2Gd7H?>O8tZTMDf0Z9?bgdd` zE`Kc#fu`yaD`u)f*$9963cQst!PrXaDoF@6I z#lqx(r$>NJ^TIpe1Z#t;9dp&efO%>6YPcFPNa;= z<^Bpu16NEP)J&3;F?HtcG}|1&pkHdV&niV?qM z$cr%5UVk=KtEmB(U%$Xm^#>6vJ`x@XPi1tltMWCbNVSh%Ejv^xQZk$+@@=>&6Q!K% zlyBJ9>U0Y3Rfhel>@g+>G_Dzv3r0JuO2%`N5hV@X#&HdWAp>4zvSy0^vv)4+jjBKx zeh4vU)Cld9{H!PO z`m`P8^EJe`uU(m*|4V%5<6T_Ats)saQmrUCkOpw4DZ3YWm0Sp6jN#aGg|XDKGpuZX zDEK7xIQj?lsvV)FbbX~))$%s(Iw?e*tJ5f6c5836I_=tT1#4@0UGJK1@^>&!5*|3YL4VZCK0O?T>!*?9 z82FM0poG)ad}aREUf0`bAIq!iK>hVT+iG!dQb#DKv?KJ{2t194yvlh<99lh+U?RD3 zKVFXYSj#_aI0^l)%;bq3KV{9<%oX=LZEV*!EK%QJS7?sg_^7ObtkzoYV5n@WEfpO*QzZiL<;Hj?ck>))(hO7biamPb={*^tu;PkZr1wu*V7;@jf?wUdR6zRr*qX#>xD?uwB9Cf0lgAFmV06GKcfnOO0+4^o88dosAu)Ugxg5VR#{taM$;~%9(yB zy-Ga}EQ@V;l(<_-GAi*PIpE*JrVe3mHZ&Vz8?Yh{W%_##?0NvOI?RR<4d?!&H;?8* zMMEltm<$HdTp%q7#CS=|=)M~IE2yKa<;+=Gt#ZLF`i-Oo(VECA1D^R5F*7RUoi&kQ z(5AFoG(!tLIi>dBQSldlYi)lYXXwZXzTZ&@(5u#87=o(#9>wbhbu@hM^wsyd!Fns) zbf>zOX?c(3PQM*5=wBU8!C61u*BwnCk-&jh>+;Q^roUICeE|T}XOirxb&a+)L5@ zoiKHA$x4#7{u=f2>(H~+&!tz%_pPX98HEULl0CU_Pe(aQuOb*rt@ovre!T2_X!#}gi1tQjJ`=}KuZ2-Jpv$S#?$ z>;(~AC6L8|a6^s2!;;&P>9hgiqyFLv2#-1z(@tEtFb zGOlW(SJ99fL9NOZtNWd8)$9Etd7gKZ)5HzL%|HnSqaw-u%HlnXhaKKHMojQXi;}+u zN0LO(R%x=u;CI>NFSCC9@y)TF|SYq>9uedKF%qth<8RY9ZumW<6K?74#~(Bd?OkLr4577WTCCyVn1g zy5x4@i5;U?eO~ImM*--r(yMkQQOW2}LH=m(^(;f2w|Fj0!0sK_g3CQoby#)W@rK>B zc`da(qE{XJ{+1WcbF3+_MhtwNPuiDs3DbuuT!IQX; zXp24h$Hx^~;{Adx@i;M|IC9`aZ=MjE?#3^8N9YbdDiQ>wTPi$7M`A1+16r7tX&e!% zgyI}HCR(OcQQw@xfe|r^vN@1W3y<6h*l!%38#I!$aPhNs#R3NOM7k}p#X5RFu%@>E z-}Xl#bV6z*`CE+vQdB`S<$H}7Pfr4>@*CtTeu2J9ry2r2JprwdD)tSSO6fdW#nV$2 z_0xRe(Ij?F?}n-8(dDC4WQIfo5>+x~4Xd62>0@YBUY@I*!BkO&NPYn?m`-XU3!@Cf z_ySo`rPB(0Gjp4B`p8c(G_}CyJ9BQ`u|#=+s7U? zs!yd?J(O2f^-jAdEU`{4VhDK54+@5JM3|Co;c6i4g{8*u7RFQCm`THyaa1`XQW6D1 zk|}8xx1;S931P512Op^G+;dI;Qp^1iwf)xD7+Hh}gVAO_6+$syN?n%oe>e-gz)IwW z_r1x!%ByNwMqQmP>J$!s!j@?R<45p}oFyo_C8r{KHQ7^7L<+W~+*1oU1{!CMxKh^C znMUX=gBqlUPQLhb`l|^ph;8-a$gU~||2?0*k;)G`DtThj;fdO#9&yhA zEMx{&$|-x_WVxLkNIor>=NKG&c#y96vVi1Y1z)9+pAdUp7q*%w zoSf}VOjygb^Z1WVGa>zo<$uszj@~n&%4x#hHEEj@UCoaUI4go$C3DfZbTrT$OQPxG(yca|C_`z3RG4uPVSKt~3jZQmubq zy^*4A78)z{?ewZYk9z7Vy=qTQ5Mw{RN5Q!*c~$I>%d4`cDjM6DYP7?;<1;eQp8sr$ zxoW9pDVsbtK!&sJ?WVkHFFj~?t`fgm7N#j#B{p}c(lZ2BLJbg55eb28S0E-rT6uHH z(47Ns>+F=xlJ`C@8tkLMy>e+s4A^cyD0=B&jd6$=qi2KJ<$hj?UZty?=||J6#QXE; zEta;zJfc@^CJj77NfHM%QDQ5n;PbRrVxLQOAY0a6LPD`4*%A#>RRx#cpY($?R}fUu zJulExtdVlKLDwu70RIKcFp~=MDW2^lm<=O&d+!|7Qy{c>pKsoo%THn~O_QH_1I4^7 zrP`cK>zJDAy?<+Me}@Q0JknH&9ZK8urAfol>yyk|BQD~iU<1iaHW#BE@ctnu02Jct zC$1GDP|^>DUbR!MpjWL0JyqfK0`>L-$pJqrmh(hjRbv%<)5K?bm6VPrXj5)KU{nxm zz_%Yf6=X*~BaT5~U(Q;U+QS?dkXcjEBGy3HQ#s+FqiNx3-vNoPS|C~IZp#kT9nCH0 zuImR<%iEF$p5FR$JD$AG%0I6A1|TnX52Z zqF3c~et8W`M=5*?v9bBW|-MIWDp0s9SDbPvU2K1$&X4FLJ3*Q zU>9bPKo>Dv)Ig-;Dnb2O11Xd^ea6IQU0tfM)Xs);x|+6qss_>%;3Gc=TeiiR!F*DP zuP`8pcOB9gBcW7gQjy?~fGujFzSB&AfptuS6GYkQv|M;%mG&iGT0Q`AR0z+{yg<(< zNCO(P#^|CT(Dee*T+(+0PgQXa%&tX~lw+h!#CYeOvAdqKYvE9QWc;C($o4Oe{4Fum zb@XLn){ZjH%8zf0zt?7|SY7mQv6_;+@4#MhLOW3!RYyiHF9#nI-V^34ER6_t5!r0{ zbcaGW9EQhbHb}f3ymc{kH!u5=w|6bCqRW9`R}v_igKG+WlCuwxG1e31O80%>m4p(^ zw^`DW>Ev0rMM37*=l_e;Rj2mExT#gXJrJr!B33n$K~=iRTV3)*icw#vs!z>n&Mi3g z(>{b{Et30X5LI){nksc8c@^obm|jJ7hZm(JuM;bF6?gL`^s1fYfW0i-q*Z>p{Igis zss&=HF8`Y465OgxuuA_A(yKlzH(WP7mRD8r#J(nK)>^r6_lAX|^eTW~SW^W_fXgBU zdelW7FFux3n3Z*|pFl0o=vBwQzr)b?4=g~}eU5^wmfyjyiY6;ThZtQ0IQ^wVxqL7#C^E!c0wqjZA>>>^kCd%stX`3(5|%pKlaXr%TZN{!ix~ww18rQ z{{NqP*}Dog@ARC${g{C@CsBO$Nl2m8=G$<+YVvb`bb+&@Xu6Z@_uPx@7tDg52*r{e zxWySfvG%A9uoG7jWWK>n<8M#kC;bHE#7N>jhhpWK?v<1XP*m~0(lRun0ehmbsqNImyHGHM7=6%u=I zbftuvN!_so1ctYk*I1go zdGvpAJl+5&ZQKIu@;5D)g|C)ZVLI#K-iDg3cru79)4G>rzNBM^KE^rfd~Ezu!Jf!# zxmHjsRvfP+Zn$-pHx&bTk0EZd547*dhm*zPtQ~M$gy|_$42db^d|Nd$Nn8bSwOpoZ zhwGXB%*`H=gz-dQL|I9am(c`F;v9F+G_I8-4Yyt=Z!5j3mQ7HE@rG$Co!BYy)cP_9M=047NjFCo|ua?7-3V(GPcXc{ZM>UV{%jq6kC zU0d;wa%^KkDQPsXLiZP>I`xBqr$BLuSYxxIGAqt7_l~|e?xMe*#E+78SP9)Uo)9C2 zfyq&bbqWv<%vff}jZ@HZOD@36vnR&sMXtq*$%tq0E^>@*#E%~7aP7GbZCrPEdNl#c_9MlR@8wrE*#YnNjn=~1QgUK%Fn zb;RO8h$o*MklWQWa6MT(;b|qG@v!Nc`&hbhS5BbwNoK2uslc@*#ZWX?xTZJ<7s8eZ zvDS0{Tl%Ukb7~Ph;XXZrUKJ%y&??Y-%BT<_a>zLPrrqUjInL;j#qCewRJ+^ss*O9~ zvf!YjlA<1gryy>CQlaazAvm`?`; zT#nNw&Nd|&xS?N`K%6Jvel2=Aa8LppvH_mnQy8Q!_JH|H^CHVC6+90Q4fun8jJ&EFz$>ZcSJJE6rz#BdKt`nM3FmGRkW9O& zzpq#_FQxeZ8~Vm76bJvrtg|8JN#mr%Kpj5p2^}+J0m(_StM*>VR z#(O@@Lmgm%9>O3v4FLuBBI+xpS{WDtPN!f6a_z-=P^kVyUkfwl+4pUpD#q&iSFW4Q zSMm^}W^U*J&82c?ORo|pTK-X6YcVPfRu!aEfqsFYSHU4rWLJk4!|K)+d6kSP3B79b zGc%x9y(aE4_1pcit?8A(cq^nD1KAXUQf>qgd(NbM5;SF#hB!-6_ikobKvli z2;l5mVen5PaXbFs>a;>$Ywc;r#0W8Hgg9(Wf_5qgy`G|f4pI~YM z)C#0PR97YQz?1r8;k_KCI1A)5X1v=a+fYj_YZG-tf32=+g-hi*!<{Ot+_<2hvPj0r zh6pQV=&NKW9+B^#u+!zQpwg>q*#^ZlJMcAoFO-Z~Y*MWxVihkXq0p@|8mHOZ6GSc| zud=j0OOj)4(;QY7mVh2@yOK2!C5Z@H;wfPpl9k1I$WE?(+Hcb7m3E;_G{r&EuZof< zSYKi6k$ZY}f)fbWB*um!MIy86MBtU`^e`Baij|dU@DdIAMEEQ-#n1R9p&eD4M_ zI2L-JmJBTo9LzBu!35svpMl+si z*+oKf(tAnv*?AW@L_yLjXIUPR`XS0RlvE7VH@6c1n!0MYYYI(DDOL>>RPg;v^a;g% zeBs;qy!}A`P_Eb=R91d5=-ZkD-lJC)Syl1%1L(@d(`7lMSDn=ZWVNEJ%D?{$z3PcM zU~W=PYi_81+?f{0TyGue$mB9S12Lm>n+7o=2BbHILfG9iox1+Lt;yUDh#!omBCjI7 zNR3P=t_X=#?6pHxZ6vbTWu}sxqn|j3RCi?Qx*}pFpW-v?^FX8~Yqu zDZUUsqr|;8kynWn3&tjo6p1Un%HPsfRk73eEuXsszBIbJ`xG${^Oa7_zDaQ8^rE!0sbZMetM;Ir2JgC(WKZ7 zIE#H8!59_c@|)yUL&@JGg^xay4QdVx{e&u}SrFM)WdQ_0MzEbY2a62IapL5wd<+|s z3Yh!2@YFE#A$Xp5W~;(oJyB`ejC`S2kvA#5d}+hHK$M0Gp=t`Mks=%`kX{u+Sab!D zI*c&{@w3dA;N`3np+mxSGeOrbcV?<96wb>Oz!Xeg@iJ4ajr#8@0b0SUuqt$_vjS4h zPM-tv001BWNklBz^s07|Jgw@e90FnzoSixW${jutcSq4zm?|QyxImJX_^~LuhXk`kLgu#q%(`Ir?C!l ztHq(NDch8(v~FuQnxI<$=k=>apw=ktDu4Q~%BwyJ%F$JN)#uQwnDPh2g&979O$ohf zFAmzXvRi<8A;CRwTR!3rgoZt!D+E?iPax2jDPs40r>h2AGzN!D7WOGuiHOlmVD6>fV}$PwvDiQ0qikOPp!*H$}C?p+8nsELHx->`JeqR110pKjVSl`#8Z@ zkVB@TvNAp?y^5#^Dix4*R4k16XPIXPkdHp=s#5vV^%t!H&CA~<=~AY-GzWyZ3hJo= zP=6)mXcU)f%@T; zhal%ei;5!aqfa2lF3@u3-fLq^{eBL~$K1Qy6$%q`Wh9g8f9#zNd!sB9g)f4siGX5? z{QsZ&GG_+F#C-JK?LPg0Y`01b#)QtO9PXn*h8gi>%Gm;1;e7(J#$6ewe0)fz@Lh1V zpy{1?Y(O+j0%h?`vC|r^t#teoc0wImA&7@UXlv!?#Lw|IXH$O0%ot`>(Qn-&?r~nW z5J^)?_d6%_)MD!;zbJHO#WGM*-moB52z#DF;8Ra^H!R-Ll)S$Mz*pE1SUZN|oSE?oGcDTD|TpygAEUrDbzohq?Y zmMpRLH=wfz%fC}(pgZe<$yMoG{$hK3N}*yabdrBZeHWIs?j-NE?~QZs2KuRYr^E&@ zJ+i!tv@?cvR>ok2;Ha}oi{Ezt8T2asm|ite23=J>0$18TD(%(Hqpu)Lt^WV3uQgY? zR$uvfcu8IL`R0I)UiF+_HJ*oIICtl60Vrh_2-T2Qms#jlpssYRD1aMQ3=m4iR9!ye zE~Xa@1Ef_9bfFD8+T8i28wRKhP$> z(v9gC=vCd&&C^IL^T2PLbd8h z`PA{VF)Rbj1))e?mehBt0Tybd-Y6?&U);P1x5lNWS9QX|I&(X-fUmv`y~;H`(>JA8 zz3mv>Jr+3JZb#sdT{aC-t$Ov8QT0s8qdtMy^Cv~UR`=+@m78iH3*9=jJfN5^w@8&{ zGQEm0EVPP0G2AgcD$7<^Z_*@Pdpqc)h})7b=mp`z^r|Dh%7fqHydqmbr#uU=95<_O z=~e1Q6gDbpkBAWqPX^CG)y|gQ>Jo!t3DbyWrzy_20 z$IJajYt_F_uR8r*de!NkysC}JJo)T=I;9D~A%=hTO zIJJ&52--p{0zv1*a)xqX6eHs_M6zW!ExX3CXyvMlj??X*F|(>Lv)%Goiw3dkz=A5> z6AQ!kM6WueGa)bLfCsJp!%M}9bl$JtPOaUqcK#ku47Md`}hG2iAf%pY5 zA!b+LRl&u|=(M&Z5{OR~F+Dg%2&Epl<2i3D5RFy5O0#$x!{rb5#}Ke$vyw)7Ln zKJX-gY7^QE`uVCyNbe52raK$#@K-vw%kUQ*G103qHO;MocJ27(rF2Ql2ii1)KQ3qc zYvLqj>>&7={Ge+9O<2i5Is9_*umelm9Q00$ww)XPs?a${EkaP_TL_WUi5$l$`Y%hD zZ17vP6TO-yf@PtVh_F%)ha=Ov)k=pfHi11)3AyRM>`5S95W3Ym6YIjSr1J%`O%LE# zUbz-hT;?k*26OSTOg}CLevn>utc6j<9grV^qJ{^HR%TNO)yiAUm?*}A8-Ue4o>VW} z9BYWxv4^CJ=~XT-JCRn&f>;Koa_Em&a;{IJS3NNYv{_rF`l9+NOIcU7QD1GhYxRFp zfBU&++d$B(x_?TqdSDLNv=h(hRgveofZO7U+(IYb;Hu12IWUOAFM4cc-4AxK!^*QdRq1IhxrN zje0x2!J5rrCNayX@NLqjxO68kH(cpUyGGMX1M~y9&W|LdVnR#$UWfs+(yIWA zLwdE^s;ksXN4tw2YwMr8z7-rkM2)HYU0&Uig^on8stIO*R}r2HH)t%8se+KHK(AtW zd5Zev6c|9SqC4zDuOf3mwQ(BE^s1MUbgF&ZU#K^|7X2P*anr)d)67YZMwAr{5Df3` zC`c(sQOZ=BDrK~0zLlaW>kOZwsMck0pUMC%l@bjTt?0&QguXOlcyd9QGrdB~|NZig`0Ay5s|WKp=~en;PqearM4qt|SRq{$(W{nXRZJ7GG5veW zl?!MqR>qBWxKslJ8u&VGNlmHQz(|H6C@^>)>!4BOiRo2f-C7jz3M_RB8voaRT{mjl^tnJbRrmu0`mhc2pA09Nn+## zlq#Zv3Nlbi0rOpgnVc4Jv!SL}VI(reL9niZh*Fm<$kAb|H`UsYEkJ%NmB~g+XJPdh zQrgQrN6oa8bS{l8VYN3dCHe9Rvyn9YPI9X1NeBIt3phb{x`s*;=!~rbFN-(q+0BSG zPP&|{Y1X{Rzf#vi<__Wt?y?Og=VV&bz}iX;XjiNz007GswH3*=>1}kxP7rdNqwLDjkW21cLh zRfOWD_HYwf*BY%DEdnX4W=E>;p7c`&^eU!QF}#aN8U1HTO zZ%J>oSgrnp^=j{P#s8|%tNyLL>VY|66Hh!Arlq*;%fm5MDvmRKfzS*vRf`y(zpvPL6 zWO$WyC<0TT2SNGdf_w*g=fhOxkbk&o0s+d*v1|^GJ zn~&_}cVxYjBe|u8@Ji(ZdX-T^uPUB?Jhy3y;7|p=A89hZif}N~;@=$Zb2^Z%l-;Tg zl)9^oP=9=^t^7@9n))lPTvaJ;-D!jJQKz14|58s0(_|ey0BKe-I|T;YXLCT3R~=V+ z)nRK6SnziGs{IE5rPjy3SZ`7fW2t&%6Ij=PD`k!vQ|jMHau?>&0ZByx2;(OtrNVtf zgfd~!yeZSud{U!|Fsjh2;3H^2yrK{E@k|KDI5S>AXW_BRkbO(rS4UwA%g8Dz7s6R-q;M3^Phpe8UW@H>{Z$tx#J!d?RGFfkI`~(Qe0%`97%!P+w*x>h~Gy3LqU{zFU8?F^txPf8i zbalzsHgXijQc#dqobaUv!F>8*w&)+BS5+>1tHO%ZQ=!BIf05{Lv6nYG|1tnskv#L5 zU$u1yOpAwodR5KJD)xXvtfC*YrB}f#(2-q*m;)-)_s7~>5I?8SpjSPSSJ{mYsA4Hq zN}$TG?piCPTKyl?SBk5=+^?ViAvSu|x1m>I8UvRRh^oaQjYOhZ5fdoJX&GXv^nU6f z!5ZPGB~X{F3?QNqo&9#;R*4L25F`w(dQx6_?5A+BWN*<;O=I?rsUIiUhdQe~M zrU?un;!`oUikt!oXoX)hv4MzQ1wPsyy{c>Us#Z4gs!`}wp7`t>AIZaXVQ6d$R6*EM zBrRo8)UuSx*Et#v72E3ErJy>M95r;Zy->0!6t3Hn-n8nb!%#iy{iAH zY-VTRyjRZc!D&FXQcn%2ULO8eA91@Oc$xK-+VE)J68E_}cYf*H?h&Yl!uz~;oQ(w-xHvtr@ z{bpV}?Sz>%BZ$)4^ajYzK5~gJJNiNKDzR62W(SJB3Ui+w;RS38=~yRE?TazLh3Hf- z&}Vsun)g%P-rw_KSS9UJYYY+?3ppu_>A+aUL_m4mE%qve1A?q-+k1P}=38kOdzJYx zvsYWg-_V-O2h>%&2k6w8=UkB5r8+%_K-BK6TD`SsDz!l+PIXslmVGXL=A=U{rf95M zDQrG)!P(awJUFe;mwMUIfyKkUQtZwmC%I#MD(>_pXw{l<%YlKf++01_KWVReh*wo+ z;@O86=DxTiEYmmaYMQpf0ey^9nJSLI)Le8WNMrfL&qU!KE zcbucG)Ogso{ZV-X=VXr*NOx*m8G2I7l|b+1CXBVO4r;AF9kOh zOp_WWsC_Hku|Q3y{>`-NfC#WYK& zO;x@{!VRhKUmIR*(Y8VC7Uc{A8~o5$d(}^C_dBjB3nDso&+d>Zh}=*%BrIxfzQT#T51i+WIK9OZuekS{fot&u{-|)kkJzg;X-|Uz z^S=k?0xEckg5aW@=m+Sk9Ox-WbFE!Vq{@Tlkwg2i7_wFZsx!4!qO2lD1&@uAR-~%D z6{}V26|P!h2<7h=*sBJ6n^m`Xm2Ry|3v<=(_^oyrqPqR*_6^6DnneeB6&|FY!Hf2) zKc|*@Y_B?2c;bD41%vquS`ffRc|Xf7>mc^3d7ztRj!?OT8+%nciC&abpa!U7QSyqg z!bRWs!lMNmu)=itmGP>%94<_k`s1q0+FrF&B97yr3xd@)_A267BbdNnBmTQEAyBvP z+N<^nuDblw_NvrMP}l+pQlZd~an|jY)MZ8m`a0b~YgxnQv?NyV%Y08oZD0Ee3 zx)f3E`?XQ+sA%e6W3Q@s)pxa5y+9wC=1G_yFsfZbr}N%?2-JCxy?CTed6g(JuOS`g z<9N|?_UH}|Gk#EeRYM^QRLzlbfL&)vTgmNjO7Q)u!`;TYTiL6|IhbOf>cW(+qi1Sh zprZzZg|~&hD*cc#QPp@s5d?DRaC?&P6f~o7M^?5QxcF|%sO$gV^_^hGT``-vjR$;2 z)L6F_P8m%H9EM1HRb#n=HQK9qi$=F^>{X50t8N-g=WJ)1mwtgCM{?HI@HMUJ_dIE( zqhRgogau7yiN>k9^8!YB8A(h}JF!=Z!H+jBPbikzb0tZt)KH-gGVV*#|L}5Uvt*Hx z7e)#aNA0qvZ}Tos!7vW1-}sU?t8IP!S&wf}E31gitM;ltHPP9*^CP^fj@vz-B>uKU zUSOm*4w`eZ3=#KKPlRqeZtQHUx(%}oiVQMp>UGFM#wrv{kbEu7JZD-F4iq{OTGgLK zT^=>jez;RhNlXaoDvZEj8ase0+N)9r0WN^KAtJPrY4Fz=8jk5kcer^!3w29f>T-j| zfDsVkg^Z5E0_4}FQ&<+dJXbtTkrKH($i}Ky!xCfh*)-I@t%Bbs+I*~wH=e6%uljbS zi-g=}h#u3|y_X(w79eRjrxZ*{COuF5V%D8BWOc=Kp*bx*@fWHA#0DF`s}p%uyYpBJ5xW{ zf2RfAhUjMV)T;LNrBh|yOU)w{J0ES72^>;h@l@(-gThu~+jWt!Qr_Iq(}J1yEa}aU)51u@T$y9gwVJNJm!EX0`VrV@11sf!#ZG%VFiccR zN05_v(cPsJ`M|UO!Zbl}rhI`y+2CitUjqj>%f4beQxwdxg4Z|PPp2G3PrP`~$ z++M{jEXkpod_RoG>5V=sW-g@9Z%n7`)3Nv1c9f0ccwrFR#$Lrlz%jib{WyqMF@PKP zD&1?E=)>abvEWrfk2du+%CRn+We+SF;r$uKRW)9a{+F7r*sFS|tVXd{DOm-)uNQ6A zxM#1b;ed6ywO464;BXY)sShY(somS4qPI za(W?;n%)|$)kV!#^SYv@wvF2q$G_#{xeSA^IMX+^S9OnI8S~g`a*I9CQniOi7{8`A z%)6meuPJTJGcL-!f@ql+Bsup1f-k76O!FjBuk1jsNkJBl_4`IH(S6Vxiv*v%12;v4 z9r%F4Q5$cQM&s)pR)2o6Z95ER~?XjWm%4&SUO2`l_ciU4>LW6@oEO zK*x`uFgGEbWox!qEk3KJgGe06R9euOtUR{3Q}1}!IyxxQutg@uV{^yL^v>Kg8XNsn zO`duE8>s7_+nUUN?KL}L94Q?=LW8`;8nY^fK@8>)dDLk+J(=ySJ{s} zQJ3{3@#2mU*@bh&$~hR3IuonYze{FS*+@S@ysn2lWK=}s1~~{ZO-fqHWO9-O=O}Z_ zWk@56;7*2eD`!=gyEZ!Pcq{BxXR~7lyCec?tWb>98`55NxCWW{PD@7GaF!?RJqA(L z7Z!eOz^kmBNuP8)K-v^N^NQwv#DHwb#|?gK zubQC5s6U(Ugje;e!TJmzTdG(@+DQA8@BnV@YymuqCh(T6EN|WqvMQahY@T|7pR){7tTfL9a)E0Y{9!aK)sRwJu36s<3KxcVQWQYL?gFH3Bx4?$o;SNVo zA0=98&sB-i%m3Eg3LP!WDq3M9Ug%OeL3);#- zMsr|@;C+$X@nO~FC%2%IjEn06n^{xOs|1^MQ5mng-cHewIwZa5j4;6IO{z^;U$10_ zi=DamR&7(eU(mV}kK5GVg}Ac%bw!<8B6%tKfFcIO$hvHGDzJ3-@AuEpRfqPTtpa1| z2x8iDo}Y?C*Eq%m;xWqy&9ygaf7xO6$X>NVuomf6=igwjddv2zQzx>jv?;({C14d9 zEZoj2;;Q@wH~$xVl|8?YSEZ)Yz?rlWDsAAYH7HahOKnE5RvR0dmok-QR+|@osP12= zHM{-@&22m*Uh=BF>Q9XtS9{fO*sB&-3N!pJlV6YTQ|E$Vzx2#y>v$0uAguTlBmz#r zsu0))<{{Tj}VqH2?A9YdK=~t)%pnGfc{Sy{U-Wvp z@WzqV7rZGED(*ba^G04J$N3xWRo+yv>3i9$PA_o|?;|&+^BZ4Hd4s&&+zi8;7X?%A z@KEM?ETH+X`W5p$5%BjESEez3n8jX|*#O_1pqV;O<222-J9)^YJ5UMzlr{pZI%Rv6 zmy7mO;RW0(QOgdP+k9Hvs|L!k(!bPUjWWYD{f}e$#p?2(Se**3e3obE)zHe1i{gy6 z{=8`eSb-z`lrGLq(>0hu#q0DgZ9g9lc#`ThTym$CbS;>kZ}@Q2p3GveGCMHNOYwBo zV)eJRCiC(B!fwD-_YWuLx;t!iHn2Ryfb)L!)n zud2|*^HGdqrLvSxh*$zstHr3%1`hn@`Qd3}0Bk-Y%SasT-uy&Aw=NG}X-e$THo8K?ja;nEm02_q?~A|YB!e3%M{GAs2@ zdef*(N*S=N_Ns5*hQ>|r7%{Xi)~Dgh=0)Oa_SCA-K@3jGaMyX^qi}b?d&Qo#tMvMQ zqE2(eT;M6`m7}Gb#ai`Is=W$1C*I0|oZ<%fZ<<0Y9lnqZ-UWf980N>j7|>5f%D6jv zxG+gfdUiWV5}+h@iRnd>x(dr68wK{7l)X}2%oJ)<`DuN2a5sg@l8QjD9RoXS*k`Uv zMxWbaucFk-9nN>a)?C5Tf3ExOP=5k6kXBMiK|qDzv#`o)S(O5J|8gkb!F{G3@~g&R zyA2c-eCxCem(_0n>)|fv<<0-c-WjO5sRB{>BWSb%3~q_<|EQNUGawj~HEs8Hw+sE6 zh$6blWYBQ(AHBICmD3ZUmeoc^^VJ-X)>^=O<5@UdO3=NOP%*zLs8@AK001BWNkl-0d{RJsVJCwK#rIUo!H zom1oBNN^QbDX|AM>=sDNLq5x7W%z)V^_%pn@${TtWk~t60WCeQZB6e;SybqPRH4(V z)mdg$B7NibSTCDZ@e-Q6OZpdgJxH&b8@=l9)2pUye(g%C)cV>&CeYnNg-}WKsvGUH zN>*kM(^&?%#5On2##V&I;-mRlcFOds>Dm-7tvvW#-+z7?TlHh6r^|(qRAdr(Az;;y zA05-H=qav>kv4OTc6;=yZfe@TR%&_GO)?t=U)L?6h?|_Rpt?%2lNo+9w5W+*1yY|x z*=0$Z)0?!s+!nfKW>-`gd9mB-oS9f6=qiu%spM6yd`)`Q6Dg5;e|mjT(CFMZhThH` z6DO(dF<(?gspEcsHHt<3%F+5~=&DqGWmH>D8*M38yl8P~fdT;vE$;5c2|!2$Qufx&;YEMq45#C#?u8PgZDpj$f+Bq{jiuYN&pFiqw%sSK6K)K zd0d*G2+m5DWzifVElXdx^GCMkx9R<@Xz>gAcIcBu%K)0@ji(M@Q-MSI)Q_mkZlfE9 za3S@c?0xh;ChX)#x!D0xU}Si`-Hl|v@^SG@%C@1*JNyCj_{7+^MO;ea1L6us42~;Q zLvrZ+iA_4TFKWr}ce9M-btH-;3i!PXxTe+I9D7pr)YfF#j-7Ig$O^&;J=qT9>V?>OEUY88%Hqo5TAN{7W*6isX7R_IFP!i9In}&InAAL&d4$$E0~C8m4 zv0dNtJx6E4%5nNw%i3*W=J(=o>as;}bq`pvH138vZjubvZCSL?f3+!u)AsUh`lcL30-hOn%1f$tQ zK_Y79_F2LIK3(#*)_SbgRiGw)N*K1zYeCU}bO#>Z#nSWd6*mxNXL z1#*2;W%^F)rOGULMZ9EIzJ}?{t~5Aaj1O)<0<&Db^%%u|uG;Lk2Fg zuVb2!EBDY_F3MH8lJrXb3yV91)xb@KmC_jFWxWIJ^nA~*Wy7kAhNl1;C=#NNrjHp< zE{49T&vgXQ9iQBqde2x6CSs6=*Np80L8Eg;A&tFm(0oJJa%DZ4c4$3F7j$9hV!#pK zZh4mu2A0i^z$aiWk_udY@8J$+g+BYh*#xjx2Dg0H0y z@HvO#z&<{pcAv7IWn?_9g)r2+@hK=P9*p7HDp|=_Q7AL8Z0HmY(x8_N0LgD+vK}y+ zunu&ixW-|n9xss;9BSXMEMkqtXxj$fDUuxMzMN^|@=ezhl;6bAtd8@#uUq%n&e+0zx$F;{GSO@F}2N8O`rP-#`*HwLhvD?jn zF9L+R90dl}PpIRmV&0vlQ!fPQ!ipF=77jkBbGK?u8%a_NKOr_@WAl5=1@KP-`Z6wy zs1EWp^qJ5eLzDm9ALFtwh1aMW#8l$0HxZYO;E7A&vWNtxm@}{ z?P;b)VPyU~x4h10ee#lQ5zR{_ad!1-Us|$B+SxJLAxBM2I6M1{kVzI&xGz=sO88Ho zILqwI)-3iMAX+5&M%Wv9B^>dc7Ptyy%CBy06wjTE9f5NFC3o%oV#+UbcOKrWksSEY z4r`rMGrfq7c=A&+63pVq`aap>jO-ImTJUoX217i|Q~98oToGt<`JRR2m4L5h-pIvJXP%h3C@5LVFhxQEb23~>W{|6r z%xk+sM}Bhcen}3?ls&96q|{L8gWfO)7I2VeNIjg(VNgNJr>j6Yk0W z&NUXX9xP)(qq!=ln5g7I;iPgBNB5ot8xQzN_7^t&7Hcxrq^5d!@l?y3CAgw$A~&(i zhirUk5-$xl7SP>?+5J?Zl6-6Fw8W(3gZy_%x{7H~?EZN-&x+K)Be~T#=T!x{Ps3)VpAcX$< zauPrT=+&=tjq#x#@o_P2Yk}5TE>ZGYWQYLZ4(Ct}DfpS^)1r7`MvePT%&f?|ccect z(_#AwTi73aT})D%xs(;F3d5MCp6BT~@FxNsZMMj-FpTl+NzFKgypHMYi`b@q?!GXF z>PwYBMK~ygqV^f=Q42iXGjqDLsAFLbGfOO18AVyLG{GGT7MM~&lL_r zC2Nq9Z0WZ?I9}Y(AGMQ?Sn2?ox*f`%JM9kwr@9@N`SjioYPR}SBs)!no>y>>JZln(xc^clt!&0j9EITHmt-QzB?zByd zbh$PiE`|3Ur2IMchcB{O6!@Q$e|%E#rBy%;hxCoFMtjPMZofigXVeE< zx(8)z_DV7fstDV7J!yJsW8vXGw zqv&-AhP0{7DmrZciL3nTIxS#M<*dJZ?B#cb(s7@zE)l*GY2j-mQ6|yY*))As5ZdN6 z4*|I4&{hSH1NIjDW9j|2(A}7e=u5VDh%-@TV^Q(Vdp_s%pvsFa$<&rS$?!d39mi)m z<~8TGC(oYQ+unG}iuU@&uk7p6)Sj*4-CHjh`;(?bnen+d?X2tT1Cz0Lj6;VGz`?mC zW!CMkx^9cruZ24b-xqjN|88j8cUz=Qr~ys#7bFh4%Ii>Cv!jloBxd$r3bib7@3-5q z{aC*cLp$8OE4XErI)?0i7;j{J>qvfLng=4t*Rtp$p`Rz^u?Z&KMt7}^$HB2M z+b0i{mlolyDo?NinC@Ts35n<0fFd~junr+g+k2D zgpb2k56$TrZO zthva#@p*#0i24A{a=YXHlIzK~#Kt-G^Z$5{tsUDQE)SJ9X69JCHr2ZDXJ$T2h zbFe$(%x}^?1nmhhuSAyQf%t`ypdyfSkq&gmq7CkDp(=q7;dd1}i9%HNjpIigR1fW1kE+8y>+_XaUIsa&uwCa`0s*DBoXIU? zO1u8fdj>e&2U_rpA6c{?D=&c9OgtIrCwKuWT^h}(RClxO?<%E6sHnIP{HzWxy4nWj z4Z>EkeweN41JMi_C0f4+KF_8$Gcg{luOn^${pRz>EF2rzmC%eKV?bK@lekSnOpVL*(MVjFiWZjNR}Sn> zzrLKxP!VD%KK!0YPY}*uncFVxI~N-68d}N)+)jxE z3J&{Q9T<*Mdrr)}a1}PNV_f(NaCwC}mw$UY4EIMMKO$Sm*CCp*FD+Jr+8X?riqhj~ zi;*dAUicSkgu`7BJwjdY?~k*1SKLz$VvcF9@00ODsjYrbZSPTY!~Y(am>@lmfU#PD z@dB#XRvx*1X+s=Hk>Ij>bUB2bs4)_do$n&l$t?TFn7meyV zw0w$XSVH3caZ>9UdwgW8N2pZmk@Qi&AVi4JBJ_2;?nGu-n3vBqxc&~68L|gD%~OTm zBOOFri*D%afC-4Gp&nSYJ6yN4ls?5FQb*kMtV70YM&?4!10bIho6(?d$M0SKS==9J zTdAepTY)|6cQED=&GpcuaX19}d#!T`4R$O3wg8h$Zg{pap_vWf%IFhEJwAZdDdV)|*>!fw^=%>2*e!j&^T1be8gc+ho*y_S7Mn=FH|JyYw4>+rx)|E(whF#X#f02gki(qQ!BS-U7~~m zoo~PDuiolJ&K*5@_wCoJcY*7`7XtKmQiKl(f0jtC)c7(46T`N-IH zwu-9@y3-Wig_xYCAYO^ajMS}Q`Bx`Vls%@*T2Rml=u9BfVm>@^z{*X{dN z2SsKBcTL*`Du1x-+yV2)ZR?#b{P}eL4Rce5I)s3}uaS_pvxAe^7yI>~xPC34 zm_cy;-H3QjtV6=o*;nMykF&|lq^0~!e6D5Kr?utN69of)s_^N$w_RckQ!e%M&7abR zr1m4VoTrAR$>(4sVG#@SQ{HX!402}Lq3HR9f&p_{n)W5SVr#Hk1*m&;@5?}&4@W~~ zJ+X_D43$7CZG%JaX}7E1foV&TQc*CA|!FJIb!Ps-oE>Ky?Z6fj983_4GM$=Az1Uenb| z@;yABlRasAV#u-yR9t|)FIOtuOIg#^eE~0Stxa4VI9jRa)6>+_q7(TrI4=HPnc%7f z0>c^UNkd*Gv&O8wUP15vQ%k-pf~bbau71`JGbk9IItKkA)nmQ~Mb;dErmrXJgq9i85M?>q~&rY5Osg|LJf zMsu?7~%uVE3veyMeA0WGZCTAF2EyB`hJ3BT@aB{x7r- zgFh&$*uq0}Uq2z?6B}DqGAFptK+cSu-(cdr zdTP$FZ+9YExx+|&5?oaCGXDel@@YYSi??$1(EJMSjE@yOKR;i@O>@0x+>1LUVFthF z;lklc>Xq74a1r5n95(HFjx-Bt@dPk>{=6$o^3cCkCqO^)7v@6j@8@rtipqklzI_0f zl}dc8Oz6Pve8*1O_Tu%!I%mhzv;sif&l;LROjT?cXCu&H9})(`S1O_cm^1JhTh9(A z3x~8XO^Nn^>mxzzY1(W?+Dk+u)9;^tk^R)J$5ExvW`Ubqp0>hHCfb}eEoSWGA6&{o ze_L^%)pcSc&9O;5r5s{^2|ZKtM?US4AOAUVHA^Jl`nou`cs3GX0T;P@Q2j^_9C}WE znva+3ATi*h3x#dj3Fha5J+ZKNeqNI(8*Vj7RtqhOZl!&CJ?kXueP<}-n06zeU2OJLGP){>Bmmk z>+iL#AkiMm{>Z9T!tY??G;1lFjeE$$T7Y@G9(yp5yrRlg+(p5i{a3)rCLh6 z$V4w0x{)|HH1=f6Tn5}X!IabVN;J-ZGiS7A=Q3}22v7T~!N{u>kVEHM_%TpLhrB}4 z`Y|^@f2izF;@v?FQ&n6PU>VH+{O1QPe{#5hK}q7TJXzXBrTjO^Lazt@qA?Q3g`6io zq0y@pFQ+K9HAgUsM`;Sg@9gK_ynptZH;`Ccd-UD5gsC%AYEa_JX=k2uG#y752y>7a zweWu)s(GG1YnToq)@5(Ky0@bSa7wt>{g{J&B$3;8?z6u|>|2*Wc8OGbV3hJ#D5E;h z5Y53BvQL(^Q3n3@^}J_Xqzy{7b@b+0B)@DLJ2>nZl{fjt3Q22 zW!0tXn1)d|C)xO$a5;Zu@TpEkLPlH1f}OlzZ&_)jBit{OKvJAdGARns4+avCe^B#B zRs+7bi8WhUl9o4>HgIxOIiCgVDslALVfsE+TzKu*p)rpW#-Bqw2_0hEWUxPm%}j{S z1tXnbse1d}H+pgW&1$>jLXb4!$nd?d6P)|eX;!QAz3%|qpVa9?Y1W>N$b8!G#2u3s z59-^;SR)7<-6?jlZ?q9!Ep=iba)7NhE-K35PD0klb&QUkvUPP3ERTxpe74>9!8U(w zvlr(zE=J!bON?qYJ6^&Z2_b23=Pl$}lcNr5uK@ziV(mScNbgQ^li~b7gU}X=tk=snfPkQ;4*oSp;%6aZV7*P zH&4-PIB)i-_~Aq;PC@>{`~%RPgH|&XUl$V> zyZ1V&D;=8l18Szv1*|Sw75z9Lq{FNIrx!o82f48*=jcA7dy~v1IyzPbswQYtiG@pu zZKpDZhTn{jErEeIFMaezz9zjFj3yU$PW)~;uNY2e&XsJP7`=-#7j3n%LF7dAw#GpO zD5O0hDm}$s{m5h6O0A)qk2r8@i;9XmnB?i-bn*v2?CtUCXcaBOs5jEypb$TX%@g>) zR>{Mi4soqk7ED>O88@k<=?fqqyv@`ZGVvw4+GVA1>&&+1$Laxet702hpH0 zvhnQUVfobB3&=+mfA$bNjAcAzVwH9YkiG<<0`2h~eouf9l8Ys=5sUg;>A#jxldyYZ z!7h}i%0A%*>m1Alg__Y*qXsbLrlZM2eu^h4uymo%4Gs77?0ZvZ)rcj8+qx%K^rM?5 z|7zS&&#~^l?(9}dovIl-K0ij-9(d|>v%)kf7*qLo%Abk|lM7<;5Q|ig2tVnDp@v9U z1Y1UpaR|?Km&DnSJ!)M*`x>aN>E^HGMS4l>*RO<>OG0Vx4^OFh zUY|J3E&r*!1Q1L=KX&ZavF&(ZVe<2%E#uu*B41=_AW|jdvWwBtpVMjez`CoqulTD= zV)!OYHX`ZUj_^BdUfmd{Va#NG7k9ikdR=Q+s)v2A^R<}p7+(p`GP5TNireXRj{gDc zHN9Fmy;?1|dHK!bb+JKxjCUQVZwctW5*3&8`REcwSNvqR6LR7Ms{_5oFHoAI-G{%c zXocF_!7V7m%u{Xus#hE?ZZ~9f3}tFG!WYy2g3VGH6hP$i`vp1@*4s?L8jh zUsaw097jI=7{Awf_6eHW;{NXVM(NVv@HmEToz0Ig)6-w-O$Da2)jUze^GTkQwwO8o zBP$CENN_Tvv_Zx0BcI-Wh6Na9*d^4|9Nx`KpwjXOiN}|uElgs75i5kCf1xiO7i4ym zbtElqze?`C#3T|-o|ZCN+;D^)w1m>Pzlp}j(7a49yEJTFe3Zzf&Ji3%k$x`)HdIUb z=~Vr83{{+RS4=!`Bx<&9LwAHM@7z6XaU@Qv1#x06wZ72gmAYC4ZUFInO0S`ZMfM~6 zxvEpf9n|UPDAQ5y_%a@RXkT(Y=BB;8=D7XTVsc{p=pSqzNNb7=G{W!-DB{E=TLbQ^ zR$@IWQ(UQC1GNe-fT6!S&ThDry>2i=3tp@8p~sTW48o=_q3?y)%5(tpY2Q>P^<-(l z!X-rq&zo@h)DsjB6lcEl+v^IaNfGf^3@Hq-+9u;#8}!EsO86pOJ6Nwt{3o%0lsAG( z1oyp_f{bERTOYK-N?=rB%AFdDn?Q!o5`!P#jqrX1cALxBBO7Z$^V_@^1D-&ULu8cB zF^(n%UaE8mwf+ymnTV$N`I;=AlG$Mc4~E5bYo?;RjXwjw(|`T=6y@1_cE6VD{JZ4# zx5j*b$J);Z$7>o_h7>~yjWN%ug)(3xtr-0@mekL!uxoW$GCK6QVi2tw-~yt6b{){Z zcn%5POoH~qo>ulx=y}f=3xelQ8;`5|t49|pY;!XXQec?B0b%BR!h)m6eyt|laf`nf z#P_*hxM#Ewxo%%52~za%;P>2DcGPN^#&sB9wR~FsnFM+}5?25-%t;D@THTqx&3jMW z0N_z3Z+`--8mzAmgT+@+=McpL7`mfm{)Yv4iv*%2OZ){oC4=^lfoUF{4dqo8Er*=i zT<7S!Uhk|K>i|6to#R(qi@BdvlhTfWHP7I8eIA9c#^qF=IqQD6HhmWe#;|L_zDM4jGH(bXydLzB3NxoT24bISRJ0!a`SOvxr@RyPlX2oa`4YOt?pN;l zNh-jFW`e~WPP(JdOT%u9SBLZ&j^b#;lI~O|d)hGK&nrJFS;^cJra`1Z%&JeOFWd=5 zlnu9V4s|RiJvIc))M|M+d;l*#xlYwfy08?EYc-#??3DtU_jv#2xnor%t;>1x&h7Oh za;2*{CvCvp&sAMQwf?7eUqeUCaS$L8a?Huoi*l%WZZ*%l)e8@Vab?f;qzQM*@c9uS zJM^k{5!N`3$0KE$#>hoLvIK@y(xxJ+;>n#3TiO?V8q2UEml^ zd{3-kWtXHsKZD%Tvo7LP#XoO;L-YQMjjjI`9p6f8xMcs&)GG6SWLZ7+oX3ic(2@7s zijw+Az%lTj!5ciueQd4!gp?MhSg}aWxk4ZG=)6Kf-L2JuUn68~j??}?@Ta@k{j9v0 z03~EI8|+c!Z=fNkbfqD{U!-{aW&=Jye>Wc}Dbq7Y9P35+I~{+(6ZE|2Ax=b~ZQ_qe z__~6zwS<+)i(fiU1Jkb1M5e&rd@Mw7D&|iYpSnje(EfI-0nIbtTFO?FJ3h@h!mJ~X zgZxzzDF^%$Dvpx-8;1t@c7O1VZeE@@QM%K)>Rde@`=$ym?|tE2dYya$)M<42}+He#A6xGKnr-&N_V5C74>S ziP68|@mszFF2Y7?5C;yNHa}T*vuf%uSl(As@Dv3l$R$TUQ6h~Dm14nctoaRD=GBsA zTPw9snzlI>4{Qo8NlS=N4yu2OI*2yhS$qY|SgX%htfC+Y5%EVd=JsTYHvftv3F3!$stxdRz^^fcM z*gBg&J-o_cy*qB8Xta(~WNvOcS{P46vD6|ZNp!yWZp!&E;_Ku7*1()e6erL=6!m{ z!0D?(YWy)SOC4@1V(9rU{I6#2`n}#GZ6Ueh>NF?c-Ond+4KL``3{~lqn`d1=1=&ON zti3w2wE4XRv?%TVjCyBg=g@D?y&8c01OrL`&F=ps_#AQ+7TJ3ww7TlpE7S1Mo!~?@ z>?Z94GD80%B^Ko18r9{*FXkezjpV6iDi!H1L$5vJX*d{!(wdNY5-+LS+@;+#RA0Lvp>8N&uOW#wkshSPbe%Uxt}|T(^;gGN=PF_!~D4VdlxF z(73p;>-BsRptM&2Kl{)1~H*YOpmqx^->1mHN)XnwkRaAqlPoashfsBKFo-YMk zOWI_IYF1htHMlJAdmP2!$jlCEXEo{YHJ*lsc7x&mbeRGB-QU>;L(Y43lpkMnVtmx& zN&>$hi3%-)1_YmP@Amh@BwcXud&=uTSrNR5GQ`l1+bg1$t~YI% zlTDa)7djDHkNuYf3jjxLhhR4z-ykN6Sp4u!I`V-}v>ivn$vD!zYY@!zvBj}64VqyA z-d+N)f$MdT@GIPBj%t5%Hef-DQ{NSJ4i;Y+no|?rHHh|Jr9@;M0R@gtYH+9$`OP1) zE*wvUmPhFOai7>aK^RwbJB+#X2?zek8vkh>NtM(ew251kQAaK-%buT=ZT{)?`*6qe z4P+t;P%@J)$g!6S$ZufB7kF)6>_Ndcas5IU&5!cC&o2~nTn&e7sI^o`3>ey38d^5y z20ioKD2oW@co#TVr#ZOYASagH(VPZ{WgE3GwQL90x%hA#19O;Z|Cy&9wId+soj=GQ zh(96K46P%g)_e+k@{MdVkJsR(JcC)<%^aXgCeWPQtHmt*g?Vt&6Bt^~TLNipxqV5^ z@|%efG>wR~{h9Ak`izh9Wcpl}qrdI^krQ8IjA zS{$UX4N#@Ty*S_h9v)SvsI(t|tQgu*0HMC9hhkeaLu;9N9j<*goyBJ|R!qQ!~tE#Jd4vN#7z&s5!Svw8PN#2<**wLj1|XQYUNRrS6$kE`9$bYt|-sZzWl zTdf)k4=#B2^%LHPt1UDh2)Fm);S*DBpHZteJSNgK7E3wA=zE7z{Ad_#!}{B9;S--V zMzB)pSi2GbT5<3gNp802MpiRHRnRvL(v!SIrn$kQUAwhYokHW-g%uRo(&H*tN?@7Qm~k@j5Z zbz^Wsxs2)hu7VOn%CVr6;jLjB`Ry%UFJ?>I+>7m=O&{JzaCs=&p? z-Eds^Kk*hd@hg2`Ac>uyhCgzZWtvTM;`%veGCu#DAHY~kvUH!&XxQlGFBfSAGfZ;f zkWI4?+o7iTcN<$To{jdd?o)+4?H<-U$@>%q4t~@R4r$ivjy(LVkhfKRdiM+lqEj<` z#D#TewwDyDTy^_r@ra;>53qf zF{L0cJO1-Q7mSnNVer@XmvLPNFqo~aI5kJ$nM_ps-vW9p*EOz%xom-X(XVoHJYj~( zC!cD==2ha%8Xrb5UWe_4rLcd4)r04so&)|7#`6RC0euPMR5(T*JS%SdH-`-K+V|Tp zYW;5hoC6Hoxz&kQCyHfvI1HZ&$sZ=aO1~DjJNcdK_2tR(+x$<*fe*h3zk8j2%NG^M z;#cj1aqaemwr_~$wPJ}ZbXHB6;H`r%De2~f7bMU3$$Ex=FuYTkvMjJ?O4w`|je0yY za6M$KL($8V(YVD})>H7hv3B8X85qS^_d3Ff^B6W9krjs`RXs#>jy zfG!^r*q=I(a8|`RrASvLKWO`YYV+0Ytd9@foY9fg`4&19txe?zz?)9-PHN8cJDFD6 zGjumslhRMaQB{{XOa8)T9$dr_VC&YYiE{;eiMq|6>o{ykhf_Mg?ni2is#ifhE~epB z!47oXg_pXtE@rebPN5Mq?&=J+D}G)|8geNgX|%mf+aogJd&08ti+!%w*13;0EHJO?j$L<5(8?en~E*%E#T zw97vQ_G1jZ%a-xZw|#-b=F4w$6B8Dl`3cuh@0f*x32&poZ+OhY$`X8^O9@MVEmCw{ zMFJZ@U8eu4lc5x{Q0)|i5J4OqtGji6#jNlCV2Cp(_@i!^QMb&%F(Q(+WQQ3-iaL1v z@m-G`fp=l=AIL(-mfyF;eC5!`#A0urw4NHfi5N&9+DH~iILZNM4&uz8Tcy1@8!_hR zDuvQid=`?sn-Aiu%1IX1s{<$2J^x|yZ2>8765eKCC%C@tzBn^FT~F`#CZ^eg;kUiS ze9!iQ#zQ)4dZz;4UI-m2LA{D9Q*?2n;*`p#Y4N}r1G|Y;Gw5x1 z&e-JVqN@z96cZ_rd1mI6XL{U}$F8o;Wd2{!)%6Iw$b3wUfw`c64D{c&g!;K$3&NT3 z4@r(uC;h7lR-y8@Kj@&2&|->EX)ym4_WTpyWcGAKCkn=Bu++tQPaoN;P&H!D!uk@= z_AcWjdgN~C6vULFVhx5_o28`F!_x#gtX)_#RGLvotp5>+e2#&jML+>_xZRNGoLMyJ`)( zNFP7mX~{$;3%4f>SW~_tH=LL*lwE97_H%}BvRe0N3JSL8P@Yv?OA&7*JPWw`R@7c{ z!la&&n$c1$O~7k5Yj&JZoW^47eCD9C`TWfG##Z{@g~m7svuUyGs)GK+E+YSaun#o! z9gQM>yjE+Sd*KL~j>Oy6WZ}Fu>ebo*4n|(SYI@*UguOyI*mXFWCceo@0T=DPnGaI} zXn)MU68kezeEIS&0nQ%`-$90N&woj*$&1`Q6z_1Ba?buqSguc(x2!Th0kev#OyDg} z7zqY)xa3B0yBb^GUY9x=oniD3_cLK8C(~_N&O+Q70yNCSn7+a@@1{GrIrB1)in0aRnP>*3tVreDKu6t%DZj?sn;2@p; zJA`?Fx#`kC2lAJCRSDW=E8%l@eRkSB~`a+w1c(!TcR#93|>4NmCl??PX-6>m2IVUf=Fy zr-CnBvHQOeksYh}AHK|j{1n;}idIrm8uLI2EsFWHLR!sLJ@&oMaUsA|ElSIqi8&tL z?<>N#p4i`)BJvw4J>kyH7O!?SkJQ#%VjW%-^V8bQ8$3vOu?>z0dY7*19BAC@oc)vr zR~g{^e*ymynsN#Bl5EF|yEAC^%Yv1FP z2KNzT&?p#(ULKBrWj8*Wd{hoZy7&P}Frq0eHr*dJV8gM!s|T1US%l4S+Er>2lF7tE zW$(7Lb~rM^`X;3FWUdli#7-EOLdQd0sbdj?m!(ejGpp+1BU#I8L6Or!Ng2Vf zu}}*+2}Gv-5!95s(AQ?aF)Faw_rpj4U~N`v&5^*UrPr80F%9B~xuLvUf5H#(Y-?}) zJgRIEP~Jnq2>GNfY*t!BRFY5{?hqZFN(o~lkSU!cN}w5dw@W^XPH`E?&t9yB=j+am zz`gvp>bOO*V-lcGqE(Vl(G{Nq-mr0aI+r&<*t>N(lR|~HEh{`{TN*BHD(feQ8VUi9 zQHGAL%g9jq24nuCp8z4DwW1PGS~j@op6h+<^^9eK*KD)R5pdrUL;9EO<|w;eR>twlkQwY&ezPIc7&~=#zUZDLuRI@sX;WUvr&s0wHUp`^AtYJB_-e zy8}>F*4t6u<1F*nUFh`o&hUtQz1dU42tu}$a@pg11=hn)>$Ir%VDRX&YgX@17iBf( zm88khR|3gK42}C7?mBIl+~M+L8I3RE!@PUiitsQg0ipA1I&Tp}o>Rs@U1c(?XY>F5 zl|dh}CW08_5j2^(E_!-hsGZb-egl7yP`$I_PJ7rQMfC&OzduFd&vR2J>~}Mp&%Khp zoc+5IS6rLZQPwyi4#YL}3ydXtyXEU^C@`q#M_!*@z-PR?cS$v%hj(6V_c`huFev%B zd1yA{9ch4d&(ZUBBFQjktI4aQA#O8eF3*B$b^p$3A7~yP!5x4!;SPIw!lKwS;efp5 z57!?J*5N&$F8X3!WEAHHgIInKP^ms>OYbKq1Bf3?H#gelAfQ1A+k51}p|_=bqg zoF=Q&3#c73qwrn|zOhhQ0t!{BXhadyZhYl_KV2Rv2P;9zK9zlsvbiz1^~m^8bq|Vs z{8=fZ`A++-O&&<{H!*_s9N<^#g&F5yT?M__{=*%9E-ST^4m*96A5-$F zlhjRlu~YY??V0Q87?0Qys2kcOe1jo4!l^TOn;9%0Y3gWYILHZI zC0XSt0jXIK$5z(h)PLJ>IIL_v0?uY#efS<9AKy|ZIc$pR=~aQilQq$0TPb(9&JF5c zjA5*##dFuwb(K(6yRLMRB!wB>RQKPyLt!8WJ>L0)L}$%~MMt^`JvCX85s`ciiB}a0 z%oL(k7O7HU31LY7#sNY8W^tE}hHM|kqw2>vMD2u!PH6t=tJE$w#@Bl&WTrKP=5Ilp z^h<%P+I}{+kZSwx?opo+#UEH=YH&j_B3o6=Z+#Zk`h|A^)|Z3EI!0Y+K2P+}5dg`p z2}!NqN)IVLuZUCZLZI#2bwaK9E;!Who$mZkzx43kCve=N@^7T)Z5^aGQ%Ot+=&`nJ zi#@>6Z*7(UwOwDAK&EVPQ|u@kBQSlqWlBk>d7M>glMB4b_t=z#SuGINu}cayI*=9mE>+f*TPt zN?k9brsnkKJEh_8fGF{Jq+Fp0)TzaJwyb;P8{|lr{a|eina%?SK?L2o@dItR*`zUk$M1U z9gkZCtR{pH5D8cq0JsTyDMWjYu14+4J4?%$(LLZEUTC|HU5JSO>!&p`t?QXTVI=Kb zC4Vc|f@<$dFW-ZHpP!*hYH4df_b8prTjjC~)v!@f(|htBc6IjyQ>DQyu2mZKhY8)Z z2dIm4ZDqhs+u>Npc;?2mZK2ut_mtZxP{0OD2XliA!j|Sx%ptB}_Lpl})=TcNLrFjO zvJVt5dD39aMGBsfnZ#KYbsPTXTh&VdJ4C3Md$3v9?&K}ClT51aoL40U&IxnntP*^Z zN8Kw6bG|deF&#V?k~ChQY<5zE^&7EQ)yk{zmDfcVDn+qr*NA(!d13FkNWTJgleCK; z*3UQc^_P9=*EUBg(_T+!qQkWtTMbL^(5ZeQz$3~{QvSMizV|wPwJz;JWrRSViPmX< z%7P~z3yoGQCU{_S{WSDHR@kteX!CRt;_Tp!l;xCI!sG3m|Y* z`>H-)IZMx^qM&o%5k5iv;}>?{h5uKbx~pDT$o^8iH7w?LTm_63kX*56hRgm;z!oWj zo4!Po4#)N*&x(4r^6|p2uEX?AAV6rXSi>2sL1Y^a9h-!q?)~qB{@Xo30NjP}Vc{&U ztEhIc(B;L(rB`s5_^Yx6MSuZxYY#>(t;bFy43fx7fxkG1X8uT$O?h3V&8fvbrx)2* z_$oBqf;yyQ_|Y%%)a5Sa`4UbUuk=kcouq-Dnq{v$;?V_!%+%s$| zfBPL=MAOSF0QUC~SB|>E-khd;Aeqa-Rb7wsPnzH{3_U_b1!GOn4ebMo6GH(XIG42( z$_=gH9_R>_ypk{4>mBN! zumzQaQxAgbqAsDY<$vht*hzhVnM^SQv%-0GM}FK~m@fx+Xa&=3_T>Dq6d~wDLo1Gc zJ1P2JBl#*NxaCG|z30w!k?DXYKTJLWJ4aNk z^(922$QZ+RWI;#tD9gT=e=Os~c=?>T^qYfh-kT(aJWbcq?!H^=7{XzmV5vCPbhOn84+BBm^P zrmjM(u0TD;lVr6bqr35_d)+F~M4LEOI=)(`Co+NIp&ac%zGHfDJjj7myU2S2_(wB% zcMs?UM=i7eJMD*4UN1e#@8whG9auFY-+rb7tqyY^irW3H5&HWn&^yrg{!xWIKuh9x z8A-_yY0nUA0#IclkSx;1f`OvFR)mPkNN}i1tM^RQw{z%RE9q+_g9FY(73Jp5Y7wZcBrd1# z2iX0?sSjm#FGn`O{oxN5(Qj2u+s5DLHv5*uw%3*#a3Jm9)+i9}U&fvvK9V0c`d)*Z zN!(lVFv->1E`upFR?m7w@p7b`IdC>E#b&fMS-2O~8`8eN@i@kn2p~UMfbO*{_V( zlQ3P<79p@DKI-{&3qinYg(uL1x$%O_%F<`P@-7_vzw(TY$cQY@7k-~}&aJ|_&}!=z z&TPw=Xi^r;KnN1r)9%avn(aT!M8afS*sS=3%)EYer{Jjb5OVC+5_D zQr9h+A2Jzn;FSRM$l%@sBBCiug89k!fv*iq75vEEfaq<|N(4$zU=L_6{<0K5KF`8t zBjoe&cGD=91CPPt??Cx)GM(F2(8ef{meASbz7Mehh z0+0 zarJZ(xL-+|y?r-fcv&^eA0&Cr^)gwg+Ce9o_v_XNy@tyXpK7WEr@@#6g#Rue<0D+m zJX!ZAT_$Q?F5Vd77&)&MtsaxD=)+|j1PIsM^`K6A zqAX^+yRF5c6eD9vuYb#dn`GjmUR`(&j=HZ6fDk>R5XCY2ZXnBdKu+ci`Nr&>L_921 zm`F%^&q3>rdk-L<#=Qq|^tloSwU6AX`%jr(ZqZjrmv&dK1bAwDCt0~MkkXdB-BGxj zAy34ueRZ{-dta1GggRFYU9;-MLztBaA>xmBcx%!^>2S20n6z)JJky!_4s|~+QS~tR zDa%u$&HHU?9d_eBansx{^0GxenZ?nP9$}1H&IzHLD%kG;LB`p^%hEAh;y*6zDcG@@ZN+ z+Vb6dvlWCICwJif=T_GLcMa%az5m??`VFu%wju#32ALxOtEgq}{V2MC$Q8Cs+7ZZH z2`TF6f2oxSK)YsJx=Lm0Lm6TaB+hV2=lem?tT-M0m6f0j**y}=*W15xO(Rp4Sk|Uf zjN+n2v>f`WLBn~wtI*$|(8-5`osOh#)qu}UW{M{~{0O?Vv$x6$SsLv_v znVFOFfxmHEcXFIIrB-KE2t8?{B{DQ*O(1_Kn{8_Uox4Pmjcy5C1yv=ub_$f>`|k6+^M%A(hs*RHz~SQA zn|(E?9P(v!NkuRljga&ZaXgNUR%fapsl6OR8$*-v>C9evVNFFlA>qpz@Ql=mL+cnJ zKByeP@<{2nHH8w?(7!pvIM(q>fCwuY*8S~|=*dVf=tuCv$3XW5)${w>IxNd`;F~tV z4TU)z#(j+;okP}}Q~z~(-HfyR5fNhNR84XHwsi~LGn zQT>H-`ps*~}2{0sdm4_kfrvADS*{g@!T; z)O`jX^hLzAmCsAyOYRB5s4nkP2#__XvTYB&m0Au>adJIoQo!TmjEs%I5ZSE(z-*n5ITu{2ws23B_aXIx#~q>q*rm{#RiD zY35|!4-tQc%>$9w6FZ^mdeR5HLfZ|qO66#EM@a1cpW$8RAUtD3O7*Nj8MIA0_EZ3Q zJeq9wi~!^SVq=KAnT68H9PWW)TCXx86M&3KXbMimu%EUHfBx+nW3>DE1=fnL1;z(e zko>Z!tbytHLI6)$y2o3i9$`@_(j26WsUB9`Y(@>2tMQnd-yWH$?jJ(+6y&dAB?k{4 zPIZ1t?3KZM;0Q!&QXU1TfO!QqClVLGb(vlh&VOTCX~5JD*-NN8&gj)uZh8M-Z?z9m zZ~uiT($uCOWbmi{AL?OBjYdv1PAmI_a&V3yMH(dCZg&&itr?h^3+)i#%K|N|y9Vv* zgTGrws2f(JV~&M*DeI`^D^pd>WNa+z0lmpd&dWI!uSmL^BV2>j7Pq0G;mVT&FmPlQ zjT6of3nR->=7|v-7PJ@M`A2d15!{7$_B-r(RzG=fro8(Xj4f%}4K_D4|28Df57wRg zZ1Z+%@RH&ac2)Xe$1k@r+aQKJ|LbAnpP!pO=q(rY&nKobSHh{M5mT*R|IeWRGuOe$ z09tS|Q0%AO-8>Li%}Wbm^xsc+?UzzM ze!>uFfGWtkPW`DmMO@8PbWNWsQNsHy6U*dKOn>f(S96Ot%~3)yghTTAJ*yHvv47ji z8pTewgG^VWZuty2_W$()pShPyU|^-R#PM8w%g5XWnpCC%GcYWvZIxOvmmP4XMCN~)zo}2nMN11)=4;_U z3oj86a2I>%JILdfEwwKn(`1ei!#Q)P6*VM`N{l6sK9yhY#3QdpoB{vGkJ}U~bRT|g zSjt#Z$2d5{YhmxGN+ibB-?)0e;=+<%=Z~o8+%T3+$hYmbFyxO|HJFivtYx8poE`cQ z0CHiF9Ig6?0}sXj#Wy5F%Br`gv`cSzeX8EMn1@QW0am}U)BqdFy1$laEaHRgL1dHs`-RFo3GE)Btf#~vFKDf`Ld}o#QMMaX zqNSo-bLkpUyK0bWLRp{%RVE$@7jkG_J`g01jJF3IJ!8celSOkHPqJY^IDKL0)F1z! z&WmpejLP4^=S!YLqe0d~)a7AMViJ%HO9H#Z${kG=LMYU(LUaa?G6Yv>O{E4F8M~GA3C&Y?uhw#+@okaZB>$PTmkCX>8cgvc_hMtR%nB^xM`pB z5k%Xk_L%cSYvX!by!UFSx>(^N;-?td+}tOHZ`XFD~g!6l1wT5!dQ-rEA+&yX8Q9-?|U(} z230uO)Q^nGW5x-OyKmcGWGRntf6j%PjmHzhPJupTY5%Xm`hP~;2d{@!YLNhUpn-6? za~g`Ofvs8vK&lU#80mWu@Ip8AEnf3TLE_7rk34&fXkWxB5MO|b)>XJX@siveDL?b) zwmbkJobx%8I2{#{P0TwZ#xm~=5Sk|l4duVLBK9bs5_&AdhX{8;{;9BhY zY|@ECrPIxu2`+c1)qw`!Ml5sGhU!~CR%Kluv&29N6;phC`|e9OjQ=X&DynX0rOpX{b~H<(~NHwKB-?gv@c`GfCXkA zXtO~Gi4RQvHLD;`E`xDh*UtAMXRuA>_J23>zhQX=YOGV=`<3)lUwMz5zD$g&1le+K zhL~VLtWEkS(xVc0I^H0*qcGg9b8Lpnj9Nb>th^kjDW}#8pIPY#gixbyr7xGR#SX_w z0Lw`V{^di^H9o!yR-~myiqCD*aW%Cu7pF2b(|5pL@ZBlv4448wW`uKP3)SH9PI~KJ zXw{zZDj8#8$eS^-{wUg7f1Al=z{qGYwFFgywO$n(NT!y+9{m38D`-pO%lhoEZA~%q ze{PM!w04xE5|0~Lkhu4X9eKG~elpN81=dSjmF-SiNJR29SoTO+RYL29{D%^o3{odF zkeh_8=`R|x-5aEr9fWJaskwx^m^-KV;14Wr)Mrw*#F6FlUnPC%J~T`&JR4fmo)UMT z=DJNmbAP#u{>tyB`bF%kWHumQX3as+6{(oswj+051=IXryZIl2u);4Dw4Kv@G|h__ zH`P}@8^)b?%1Pi)JiSJqS#*q()7G>NH5OYW5~qUd+ef@hNB|t| zxBH;KP0GeyB?EN;)@zMBh(hUJfU&|v-|kU92gY}dOqX3frYAJ*6L&`vetaX+op%rgymsYa z-GlGlE8vNFnL^UL@3w8$us0X)h)q;jqBNrBnmXoOdOl2@i-7uJI~fekj7wE1qP<@+?}__wS)q06smQ z#3))3i&7K2XwhtrJX{{tQj^kc52~;V#Z3I1{A!NSn(xZGx{g1RcbN3KK^aFUogXPME=zER{r0a ztTuUZ(qi?Ens@myVUv-8jpvOfxAaZX!G)Xb%zdY-e?4P%8D}}J4!QiKZn+dgD>ej@ z{&w>D0gMH?)?J=cAfFI!hT4a}H}LG9J>o)FrQRg=UWwXkQ>{6icO+i4ZsV`oaU;mc z>>)hY!o6G-z7ixEIpXRVg!~gA-9e}Fxq$`WyM8OEKkOc_;F@T;1kdWN_;+z#c-<3L zo7FzJ1iD6XJW>p3g;w{Ru2l&+d zi;HxG`bxmp=Pzdm!n%$#A4TQyhg&3$Crm_=7cBng)LqHgdxX$U@c%hGCaljK$`Y8L zfdf9r3iVe~y>bkeK%tQ(Ftv99A=ERd9bn|8MpIOP!7|PCTT569FW#se*WbsYT;X0X z$w^`5TM5U~w7j!vvCF^3KgupO^9+2Ur-*qNd|>S)C->H-+CQt4?xzfKtWUq(dq|hY z$D@{N;Ezw)Y4N#t)zt-9lt+e5De)|Rc8@D8cz9fPM{VBeZ2 z8i9JIASNdA*Uy+pX-y@$&(dxbKcV`D--|vV$nb(9~UGKxECaPVQuPa3p zH9$c}N~d2*%&dMc_@kPOo*8m8wWU9;%bPi|&tZ~yCeg6&4#QCE(?45&z?jwU9(f-& zn$cB2NpV4iH_o|bgw@_#BQzWIVLujYlr?Y9y9rI7GIC4c?t(qa#07Qcs?;eFsUnrz z9XqvsT~1kaVQ$1AhKTR|QRDe+L5l7rOFqM$hj^Xfg4-JQ;Wn1v(Y#U5VP1JGdXlYW z0Q&Ln?5M`H53-1bGGhA2ug9T_jbA`}J8w&n*SD6a1`|p-vus@^f|hN@Au4J`w$)MU zY2g*$`17fm2bFJNNEn#hG2=GmS6v+MG0>GjBid;vY0Z;ot@%e+sg5C0QGrX#YVImU z?e6JdnOWR!$@KhBiUyNCW7>jrBl|O;5vTyVVqCm-V-%D#t4uTNd9(VT)Pn5|M9`ge zUIx3(u_m?(=!qsD?}Lh7u1~lYv_8a~%D{llgyCG+0s)g*5~~8QDnPUtcAh$M z$I6SVf=b%vSDNXkc%BmyL{onl3qM8{GGAHi1|Oj01J3yGIxa{7Acg#(Ecf-f>vclT zo4WX6Z)Rejr2+ra&VT}=GEW)?zROT5+R@=RCb;GcHS0d`ZOdBu8s!_`8yjJqT0^3M zOS(ya#|UB6ewhuQ0Uvq32T=rh*AM7SreqJ@*?0xRME_U9Bz=uA4tjs&BLsgiQ4CpM z1K%UB(i=Vy+*0OjvW{U4P4&ls0i{DDA4do&Y*`IN2M0!#Gma^1MS0A*rI0{zW%Dc< z>Xw~Qz&!*+W;LeNrKVFgS$R4Jmkmugr~l0Lm?X|pJ7=`_cT(AL^rA^kUNDr()GEU> zI2lM4cSxE5wV62qczIWnULI_YO6`E%9@_4TYDdgRG#NBMM?VEZoJSdNUpDSx@*()< z>HR6fP8k-`W!-iC&6?FKB%fBC_AA8YSd*g7?KzHhmFk8|unR_Bh2gmMPHK=(Fcvm4 z3N9!^I6E|>L-1E}y}RA+^;U!zfQ?Z6?5E6*y*DxX%10@qKAjL78`V%A?1g}tmnK(I zPmE=*!iTfO``5&u;V+70yT7abq?8MN(ZIj3V=*dkZ(x@8b{P^#1Ov$$N)w9Ru~|62 zb__eEUIXneV5WULQj$TxL4()giZA6=><-NXH;5unyM6?9VaqD|>0z_7TlR!>^M8tO zeD5I${1PCr?a6U3N+gLZtQT9c{TY0|Iry%<`EQFje>sl7XmqP-2H1R&KUhAHUMS5p z05Xw1{7eF&XlF@Ml;mnL-z$Zb5jw*BHG)ym>2XoqD-|U1`YF+8PW#sbTY0Tr)mj=W zzx4Gp7j4OaL^Izc@Qw?{YJEYuyYFZ5a1P+*)}Y11?XXmUPpP z4ds@RW$;(-z6Jb8cv#^P&ySYZzTTP4CMe3E>Fpq-O7`2+)0uClfm3>SN?VC^?(XSC z;|hEa^P?f=h2`;!uXXO)eh&k@QaQA_XoV5K>3({aNCTw;P!dEL;wT9HUt zr(cAW0G?aDGY0|U{OFm%9~ut>IxJ1DQU3+PppQ}90@(KU-_546!bwG2kA4UR%aD5W z1h<;~alvE!K{}JqPNT19(%PyLaqVP9LvLAIv^0-(64B>)>8E2MK0lXlO~ondJT-tc zPa^VDAWoZVn_)b516_@JX^eS9>k$85n@Tqo?q~Hrl3JNh5orgpSd4LWOBLmB07uYL22lqAYOOo`u==7Hss7JwQE_mc2j{)UE<;>zOYN-py zKyH5W1^55n%2Oxhn=UQ0;C&YyqVV!5FkhYKFKJT3lc0AN>M4-tZd^f;^J~^urrIxo zBfknRT4EdP8kCc`90g;iHY;~8{dN!U%7L@0BWl7sP6sS=JYPIxvL5wO zmXHMn_`v9F2dqLdUk8;uW);5a z)gM$~FC1U}NUEpI;QU5|;;aPIe-xcy)#>IqM>@j5ysh_w3?BJp@;^o)sw9$-v_p1K zS;B9vmt)}CaV1d12>;J6VLnC}2qL2+(Q0}TJCPJD66%?}rXkAq2tSyZRFq9UW%rxp zoXTTahf2)kN7}W1sjeGv7_03(j{3?;odRWib4U?A=I8@KE0auw;EZ46#1{3}LQw3*BdHVasP2InS?G_a#A7hwHF9C$%Xi)>hEU zkV6|QQ8WOyx(UesRNBvzp#qdolWV}pJ?uY{y-1(vSNy3YvojW(s8U zNov&K*i>HaOLSCH=x=4N*mlH!bGeK8FX>W+pAoW?KZng%jNe7N3H?{~c!I*5&OyCu z#W9~?VkjyH)ipoOri&+{_hptLos@5mIMtFMxwt0z-oE+y(mmgN2NHmxe{jThPMAM% z#6ozb?`!7)mzu_q`q3sFMKwTgTedQklKkYl9jArKbpK4>&Mve@S2pCcXQ~{jtUV9W z+(z-vFT<0_CLKtyhcec>{rH&e6$n_B9s6r(eqpJ?5 zSb+_19?KioTw~*(o_ID&+==N-_csefm#d6V!nj}Ggo2?N0%0$yzD~uq20h#Qa|c9| z6oCfRF-pMqb)>I!hlMEpLW4Npt!^x_Jj?rP(z+2ttNN%u?_ibOz&w)Z^&5Ck`=i-;t0viUP42>s`Mw_n|Uww3tt zUIM+A0~gSdCauvn^yDnPk+M3_MMxUN7Ou%`fEJw>Oh;6H($LebSf_4iXqf5hoMcbz zPYfll`tWVNxxeSX$E*E2rtdy6C#BKLwufGIl^>q2YwkiL)wdF&bFhK-6!b_L{C^lip%;6lpfPzZ23zUWStiunR&>3 zUxDK;`T5u~yBdK{JJGn@DJ1E)fVhj=FQYxQ^-FwSQHX ze9*A|;5w;8msnKDd*?c8YnJ*d5rrHZJ4r)*oToK-S z!-~w|rF+VD6rj_X)3ezGeSVX~_<-9+a){Q{<_Luu&dTA0ExqSH*v-VI)Y@taz4V_c{px@qJ%c4rr!*=SIO67&f&dzv*Tb5_Q zq)Fm~+2h@;-R%)k4X(Q0e}KUQdBz@dz>iGKCjcX3+4=ag=gz6`+8y zZ2S23s=I2(IO-$=-aN(**eEkG?Ym8)VRi<=afIcXy0v=>{>z5kzX-kM$=`fkBQQX> z`M;$-*gPNX7D;|>ORlS7u)G8^5?cWh^*Apn2~%yW%?r0#jp@N{PY!4Fk^czjoYU(ka^K8lYWK{+Ohls5am+1h z&NQR8MkD!7fA`4j@qYe_=n2`3g|DW@v|v%I*=?r?f212U}W z0b4#=1;Ljg_sX*okgFO>OVoRCk1WVtaVJG<$94bXid8GF1tE=dMyn0TourWRp8`?H zBj58~hgD$|^KhxvI6mwoyaD*q>dAQ3dQFnqDNdrMYbRrSsd37^<9 z#LwZV8gNvoN<-|>G08>0=al}DUbr%3vpoY_h-JXj7O7E3Ki+3tT0u`C#E5|${Ywt1 zZ#RdE&bq=0b_82)EWP;H(QnBto|fp`4ap?TxNyazU)7-eF!s+#Ng2OD_4XN{Y~!ef zJ=F#wCT0nY`QI6j5sTIrUoKqxRiZ;&5i3Xd<^5~tkH|}fz2^phYv0xPr&SnbAQ`bT z+~k^#FEG@lmUMI%Absk_()-kMo+06-wGj+#W5_bj(g+Bm@VBwISpzs?>AQ+h1-I~;?=1Y z@H!U8VvYLUBn!Wz<@VfnRLLIU`8q*(d~etMG}6|dE(`cCiupNJDd9vMh58&ySaI53 z0;zrlE6gX7k4$iwS+;~NGf1gc?(Abi4^n=9PRqT?7I2-*#faxe`3XIx1D~fI<5ZQr z#N*9lB6WiJwmZeA9YBK|6>WU+DR)FB0pInrP#9)kZ_i z8xnGN&3Dh4{Tj=({_+h94{ttu6ATT;xsk?5pS!aB^Q=B6MW{ZH(|`=YfNKf3odVZ? z?A^TY_L>)xs)5E*R^B>(4i|2f6{x8@5}pG4DAjZ%?m;-5dDPdmTfyv3LuufO?#10k zgScCPjWDEVnLiH{y%jwj(yA&W+SE^eOFlHC(yQ9@^|*8;UprXq)o>fey;vNy%eLjh|qfV?|#+~+^~j*F)$I0#9^O(fO7+O;`y~2@=1}PcS^%KnS0Q@ zod4lk^g?a`6sOMVHJfe`#+|~b;$H*FC(M!+9Rox;i$JxttWaFu_EaH>$C?Rng+HOt<^U-`SC1ucgB5#oT9~2-UI_Lr1z(NSs-5x z8oC}c4+~5$EvEEyuHlAaaDE^pEsU24hLeRd3(>%yOe;FPqSmn(wx#LGo%8hs)w2la z3sidD73vk`rR^qpL`pXiiqxdaSAY*Tl&$0rOf z;CmxU{>H*(l=kN&qCTU(abHto!z)ci2#-tgzv*to_QWotaD+0+*S#sF0m~!-#kwT4 zpBRx~3-w)~0^h1R%nVVJnx0PN=eF2Tm@EW!$I_3}RNp*u6qJ(}e8ZE0jYUC5hQa^! zhUd6l{gvSg`u}R^8-L5Omy|FyijTK?woBv$9 zz$s8quRj<D@_JESD_md16YbFykY=Ejk;m0MLE)T+6MSx_!U zT~slbTgWQBpAyB>k(n7-KV~*Ns%U}=DC*1|)3WuC<9-|#=25#5CrDf--74|TTjASS zWI^|-s!GUL3%Dj_ho-`SPYq}FTsuDoUgk73H2fp|wXh%=fENN@NHKIe2S-9PFgAQP zkEoG&F0FqeHr36)2hhc0_xL1@Vgm;%HrzAnNgm~vek_BB8wD8sBQ&ISrqxDlv1 z(r-mc!1qz@nijTk{z??9@hN9JO%crXz?E@3)&Ku_|M_5 zgn}s{C?j0?Uuzbu(&$@r-y@}j*~qH)+DB^1UWDe}SNcnCMKKDM(SCWEsP^UwKcniJ zUebfo%dN&{zvLKXpp?I^d`H_0Wts~9oA#7S_GV!?_tk}VB~PNs_8(HcpXeIfKhg;= zx`s9BISJbaW@6(haach?&tR32C-UX|ijgDFf=Cq(9~D~}RSCc}9%gbe%nU92vsLTG zgZhl#^m@01Jj3%xKbWo(SGZ#&gY@or=Qx{(@VG4sS~l-Py$rKeF61y%cx|JJMz%3o zmOR!(XVV?Qx?tU=f?^avkY!pn(j~Eq2on606jyKOL2Xy%`o(S)Hx9vAkVr68)QHQ} zPw=%`zfolYYGdYoF6wtW*!)4y8b57t`eA)r0ZK#T;BBgTd=LCP+()Fn9bvHJgU)93 z01YBEd+d(Kq1sG29;fs5B_@>SqOE`LgT1-=B?;mvu)bwO0&}Jz2C< zBM5k@6@BgP6&z9jZOtkrp!~wz*H-u!>A{sssv=vTt|X(kR@5W@|1YGsqu zt3x%p7mr~yR;$O1!(_+_T<#kVQsbC$dS%Tz;KT6Cds~t;w&%Cs0mq{@89?4|mp?Y< zYSMN4&pya&9e{`kyY#Cn5oJ-skV&|ZgtEZ#`zWd=7Y@T6Z0YuJAtH33h=JaiwlF-v zwA-8K@7^;1Hp*vZ0GF9~C|KZ3bp(2hR7=Xs5Iw0n&ps-|m_EzvipG>x+*YkiD*Y$kYj3~>}9%=e*B01ve{*SdipWkhsU%&I%HEZ4(dGi5HcW}Sdc}q$v3UL=l~Ql(4d6AH+k`3RJNpb zO5!2k0iQ7*(=2D}neIb7yrl5$*c|SzwUs-h?OPD1Tg|o4E8RABIR&kROW>?`iToPd zt+cNunCAU9UGm9O;;>{MldPItxU|=nLnMRCOIh8d+f7&JD--SfK3l2$MUCk}FE`Bi zdQUfh9v*!MBa`N?Y5Cz4U%osGXH+qGze2w?4Hs(iZC+b)GSXW5gPb)^)z|Y<+$VxX z<$UyGkq_oh0>~8YhblFUl#@#FpFo?xy`t)O6T8VL-p^;U);QBeCiyiwd=rb(F4v6U%5Qxu^KdP!7P zoszBeJ4B2Q*(CizGBWJ}7mQKS)ElK1?U|0W^bpq932pgP#z|KJ%}O{q#>M;V6mlDm zUOACV*)2DCyVs>*>SaZmKIN-Q_i&{&4i6|Y{G{l1YmlJK2Oiq$Pq`N_F z*eZrxtLdk}jegEm7E#}pRfVqOY`!-J{c~Jvjob7PH3VmW_gZJ(GvG%ggv&GR;Fevj zJsNaZ;{D67rBQ-^bOvdK@!9bl=@vZY zBE#Xw$Ni|s^|V=zk7vFXaTC>@e%G?>uWWoUp>BYB>J{C9nzp%lSoHt6{u{>-HOlR+qiQqf&0)~=!)W8 zJa}au^)hPpnVvqS+=KQ}Gq#7=X(#4y^{jb?s+T!jIfj!;Lb}9pzs6A=C3YZ3F$R*v z7{pSg;Gpd&X;7g{Q)s}aqiAOD0Y#?eMzJVmRRo%&MGRnUOsS>j=whgYbQ}u6$B2_u zducSkM%NX~WzcR)zIb{3OK`rRF1yw1MgtXqe5N^Vv#f%XISW+0ow~SI)#hY>h1m~~ zxfeAQ&hbHX75l)K7IbflmTl?p^xNPcJ~&uhE>}ocgZsd1P&NA+W#U_JF-jyw$@&TQrIukOim;+|Z z63*WMdFN(7F~#1IrqvJ}nHD|0-Ivt9$+jP3A1t^ zDwS-t?3lY9t^6qUH-d$Y*h6FB>wH|88@UO^@%3M!!=Og<1#kI}WfO)9`s4Hn!zs&H zaiC?ctHL{>IUpy;b#2K&u<*pycat>)-D6**^yJIe2wokR1eHz#_Sf(FlfQoHI+6-3 z9L@*EX(Z3;$ergXO;l9I;Q^J-PX0;g;qShtZ|(}EGyy}qW6|I99|6F$f_)SJ0shxu zlG!+ZQ4HC?{4bXSI+ZoDOx(7em4B3%Tx@F0_f1<1ke=o-aL6>^va4J?PB1z}q2pon)6|cWc zieua5npGUO6nLGjCC?QufAJO1iOMfW>YKqGXqAy1{r)*u$sZl|82;zq-M+ZPm3<-_ zs3x|$Fwkl9ss%&=9%UG3`CsE^N^cHZzH#jG)Yql{({q*oFl-{>b0bqO+y0qE9gg$0 z*p1K$Q*@X$q+UkpbJ%1vjTfmk;SG4M=%LxD0>L}O_yI!p`!}vy&rgG#b(*WaZL3*Yc&z=oSuzE?56ph zq_GGFY?qcPe32wIgXsgp=0I1@h{&2kw*UB(AsWRFm)r3+Ha>BXz%`4V&A+q7Sq0Dj z+6J_eG}k>QkZItoT}z0vU6~@(;+6p16f_-SjI3y#A~hH;m2-X$2CAwpR(bDx)s1|5 zP?uJbDO|EBl-rpoU8KeM{LM%Q1)I0{%fCugzmi+?-hXh$gXoRyMM42!F&$Q9KRlx zkT6C&`e}emn}Vz03#q5nw8~c!qiTlk|q>!Y!t_=sk1cA zWV||)lzviP&5gdwhi;nF?^TSW`x4(6e&VA02=2K$BlQLTy|Smu?xMg_+at%g1jdDV z_jS6xW|@zF(G$f}1j?hO;-8(C2T2ZtYle0D1+OslFONS}i&R7eFp0+$3e~~h9Dk-;cK6g<8igSx;aVh9l0BFQb7&fTAkK@X>s*ZBQG^CabNrU0z}oZt8&Jj-0x9 zIY?0U{9bEOs#`m!psdFMQGrJU!f*#);~^4?(SBY?c? z6Z0V{ny_A}>}9;hQikj(^dNGRoX|@ZVQRGt(&S*mC7^{1vlBD4!^m-UF%Chf5q<{U zaq+5)v=WCwCWhNUN6b66CHwt(8MQjxx)w^Vt?MHVyCy=kU{CkEV}rVFo60AcaFf#Q zC(Osc3S(H7Ax{RsX&nGec%A8xBq8RkHj&n7sh{W4P?SG^yCQ`suHE&63JOkMog38W z);Fm=bMprkveP;+q_-zgQl4mDbUPw;m6hpVja8=HeW0m8h>Dx`l?+%n}{_oaXk@=>i>N|VA^CKWzq@LHR{ zmEiBqtWK-elazTzpg&BMF4vmwo5cMvL2dB+hy4!zs?val zAEoariIL()k*mk8mr!)PDi#yxtKG{jHn`*m-<*14VYFJc*Jt`-;r@`ykO-rc(DbA~MXFtu?7f=up>J?At&98^19i`C?y zlFjm8J^(Ru&V9 zP|V*NVPCJ9&~6)OsM~r-mVJ4#MYDsNCxJKCbtXLIZ5jDC$LF3=w|`FLwX^(h6)acQ z8gBZT%73XYc}nz>h!zL-ajbgmyMbptII}Uj!HX#3X&{1c$|?AKV(el?vB}Spqmyw^ z8uBSzD$YkdJ6R^QoOV#(e$|WQq285Le`}10rK@DpnFKE{Yw@eh&6(GK@?~Q zAn-m?RquEuda|IGR`9_8W4!vel^ER`(Lbr<7_AKiTYzj9@e?pmO2Q2u?A71#K5M(d zKpZnKO=5#nHQSod9{elS6s1jqS!NIh$6*PQw*jTgNFoMQ&QSKOC z2k$|-u}YNYo94ar_zC&ZsWS$GsinDEPNJ=7TlJiK*diMoAA~y-rEy)~#x8j>eCBxC zd%#+P-POSUxEBKB5$^ByF3aEvOF~FXPSXb3`I!_zUnO60fw(TpjmA?V!p1Qph>wE$ zInwkcTD=-S)JBbMO1a+=Y4IwMQ*6B3{ozFbNYbLpwuw|?=NH*|y#DY$EB@Af55j97 zR@$aFP{lOrg>a_89k1dQ6-W*k2zV(L;lxQDEX>DkO-LyQ{MMX$0}IILLMwvT@X(DmQzF z`l6sb?+T*)NswhRBUYcuz0LEpO3=lpSD;^yibc$|gb^+N z!HyZ(LK`4+T+)ItkFjns7OrKW*>3EGSRPWzZt7*lZo-w8bk{n?dQOM2zBi_UaJ_*# z+^Fi;swHR{-DSm1R$af4&#GCOSqTi=jBLM2Ha46B^&i1+&)Oe7^}{xeXT(us!Eb*_ zD|w=(<<)YOq#kSAmWliF^s^p$3~W}dmce!7H#XPd((T?2g?d6jRQ~N-$vqWUKv*_D zyi{P0?z>(c*LK=n1Ps)$PlVffev zdHXT^Kvq`j4RQ+*3&YVn-)W~5=OXmJ)bg@R3@n2|CyTgIkEo;Ej#(QK- zU_=SF$2dhGe7Vp+|A7f?&wwC>PvB#N>K^D<>zvBtn)eYJh-_VPbAZ|JV)gZ+Py4rR z+QYN#QIo4RQg%wuCArYn1zMms*s%nyl7UR7%_2v9GnBxzJmn{93(a9~4qwg-bEhFM zk9{=>SB3*8Yd|IAjT6diw9s78de3&8?>(sDaloPLu6q-|QN3G=!@;D3V#x*18|Z8I zFWrA$A9mnvGQ+fJTa)Vujw!zIS}*I)oz~uVG-<&6riH7Jc0Y#*dcN0L5KgNU3HB$P4+EFkcewciAdJP_Vi_j~vAUw#qMY|TA5llq zRdMTkQRndSEepv4BwGG5?fpY9={6Z24{eur?$44%@W}$PdXN3szqQ5&dl!!3&|wc2 zd-_P20u)8juFfzgBb{LTz(!z)?q|sNZm#A)3ng z`}pg9{(awExU%f~D@;0I@Yql6tCwW2zqbO~mUayj+O6Q3rQgYSRX;gMccCHzxIq~tTWyqXJwJZFgr#AB$KU`GQsw6abW8QeNQ+k%bfFIj)&-;zn%Mm07A_mN5b9;> z^Aa~>_@RCDc6;2~@&d2NoK(94Pu*ywp%wM!tc^P7tm#916mb4yWzWr71RA5~_?%`TgeJb2(yx>lu2; zO8rdnx_y-Elw=nC%e=e&xB`8-X6)B&WA|2f9wnndRCv1uIkaNyze+SzL*{v5yw%VICWfOZ$W@YMnlJaRreTGlgI5{9^ zPuB$d6tQjtxtrsYj?FeTyMXdo(C@#{nV*408cE5;>qHoIQUU6ec(9du^aCf(NR2H^ z9&aR@seXE+h=21h^X1A>=}z-9(7aS6u2qy?hZ@Y2-9dKXJ_}c1O6%lb8tIzxh(MyX zZt1y`f<0>_8{pBUhe3{k2u&&Fja_X!$l3rv>5CRznWBP}Z4*>YEh%N1SFX3DS4dUT zSn#VR8or=dS_6OTU^p{gJHQ(_Gr!uK>}fnVR{i@~joN0%Zsr^U~A!DpcY3 zR%>1@hqmbAwGa#Opq8Yya&@tEy-gxfZl}oGLDCwVz>#T? znpKX!^yZ9gkn|liU*SDya#EOR02*gD{HKx`bve@|Xo_x$h$gLrvs(GUNLG?bi(Os1 zE>HU2HVU8%)4)6U=a?2J@T0LE^xR^46nB8^_k4o8 zy$9<^XJ|sI?{e7-0KaxCjLjR7v6c|?vBYB=nDU->1*lL-?t_K3jKo(U)sX2kaJ9V% zv!hTFC+MPI!?B_d4)hC*q=zA6K=q}YgWCzf>^lg}%C*Vbi*`s6V*mdEyFf(0YP0fQ z@4YIK1}L*!Uo*7E)kG{Ix|q;wFxL}#b>;!a@mJ29_CG z$UH8GV9V{{ni4EkNyzFds8wuOMw$xW-sNG2tgybB!+4waD)SJ`dGIQ3Sf!&j-K|Xz z-|l;Vux8g`ZX9=P{B&#vJaZR>Dok|9TE;gRyD@le}OLBtM&?_?!ZO+fFrla?Q@%X zf^IF*Z!=nNEvawQCgoOMuiFHzHX;Pw%E7uP-jucCZq!)2K3sjX-)XP1&pq)XQ`I%+ zVKP!>%MYRh@f3xec27DAo+-puG}Hof@ZM5(5w|~6*9oD@z+{WQ_Ow^^Ls#id<~R}R zWds*LY~rEfZ09ikO7l=2H6HC%xc&U<(;%_j-(67+g8>jPY8N3D(jPpBA+85p@M=@p zuio45#n_pY7sH_1&JO9w>8UC`D(!6jY4JmU4E!I{I5yaUJRu>@j5PZB3V@w5G8zI6 z!(zec+Ir}mwtESjX-26}M{=eY^;Dn*qoAiKw$8=iZw6K8@j-t6lue6|+WI3Xf*PMF z#QIbu<#j)f?F&y;b~-+flj_)=@`D1c0iPmrmr9G@iw3 z9Yi$Ao|Yw!wGHF`_%L*cooyEc8I<$74okfrP@KK6e{Nd#`n)Y-mWj#Zl%w`)&y0T} zHLq0V zKI#0F8v?InuF~iBYn`hARFhj(^zg99%B2GkMm1!6m8IJ| zch^i*4VPBVKD*4wT0PnyRlA?FSDjL&F9C$n2Sinusyd}WKcZLFrFwfi zRdJPaW~9oYeOr6W>Z!N!$46$WQaGTObU?*HuM7` zHvc~tU1`>yLQv-R(A17qx_PSJGSttWrpGx|aIMDtjYg?t*Se8W&Eo{!?9qCn;Zja@ zOJa@0*ktKWdsX{gLXK^FRr|`aBaHDU90{RRHSwx}_v+#HUr+=1RDg+n5Tz9Itj9wH zFyJGxf`k8hf1lz3T#J+d1S?XWkOf65zlIPCaan_GCwLW(;hbm&-wMSg1@tl_w^bB* zab29xh0b^!*`cpG>{Y5z8-;0Ls)h+&)r#}qUUf`k;}n~l*pQ(!ITvK5 z+7vr0P0%1nD4|jyQ*5ttRaNs;f~YX4SCBCcEQlqsNv;>w5SxBVV_1Kl6VioJ3faxL z_>bGGs$ca*{Z5b67xwk!CVzt!Yp1d znwH{)hv!xMUZ|6vs@;Ez_iN^<2uC%uS1p!Dq6$9%Q1OhT?nGg!cpX~R*RuW`#>?$h zM>%u5pGLjSC|$MbO(;s8@Y1QR7IaTJR>eli)|$~xP9{Zdfk2Pi8-6y)j1@pAdJ-5Z zEYtJI_;681<{WjYBiacE z{AhdC+GuQ!F-CVO68LD92ltFNwU@lU3InvI^ObrXFkYKCsaw{%Z~_sAe`A&{cyV|* zmFH@dnjb-hVcOb=1;)X1=Qtn(`);H53OWty-A#d76D!O$eGn(;8@uMh2xp=fT%L+i zD+k1ivTem<6>1P9pMcE`FAZm@c~Nd~7qWLvS?8=yAQOa9Vi}?qsnQj~;JIDXZ0kd0 zk<|%}aZwsbH;cU_6-8Ab+EE}dK5R)wq1dQZz4RU%NR4_bIWE*p%{1=941Ne+)isU* zyar*s;ZLtK_KM7A$h;yNnw|{EDUu!^)VHas9FOh;~Y8n1KzG}fb5wS$se+~kx3Mql)sUp-0)C;RjGg^*T^TCvPZ7LmXzKV~Sf_CK*n;wmAmV4|Y;Tvv9jME?;;RZ<*p z^Hr7tT~(vKs#>>KEpznpx1wAr2bbveW0Dp)2Ki0kqqH5=Oj=Fz0B1i{w$&Wen!T6P zPHMi6prnVV+@_-kHWEPWEIM!G}v0ZFW4%pEGZlz3f%r0!=BYGp-vu z>pPOB@G!ywvRBHTf)qV0q8HsTI6u%rqOyiT5GpvZhGBrAsvA6p4a#gm4<2X^Vwa*| z6&4lHcHpu+Acc`&80}Tzb>D!TqCqz-e)(c30f!^Iq|K4qMZs_38occ;d(~&*RoyxY zL$a!YQ9XVg!vX2li$ebjS*d^(jizNQaoMY`DWP`M01{E$dj4#VKndSTCX@0$&IRi@2RM(<`j&2i_%kX{hRzjn48)< za&;Q5Ih*Fl_Nw_(iylMkQvRQ10N5{9#W|`HM&F)c~v#u_)#YZiEX=bC04Up{d&+S#)c-1HO-(pm@ zoq;29ly}97ia4AbHoRA#e zQV2{ox8BEOKlI|+s?gxlV^%tu&Tk6&K8f2* zIJI$>ozg;CiCaumxVQ1WZsLd*x)mbzR<;fg^EGlXe#EAKoRaeKj=m~Npl%}=rGF7o z#Z=Xk99HhhQ$@>wSJ4b*2lXSv_^a&b+MBBN?5|01N-yyuHC0N9xk`=serBG$m&!E}j*`t47q_rlA)Rn#*Hp+a zY!TTkrElxpl%9FArf^pNdl@BLGeg(}5z9d~`E<(IbM~s@AK0rt*>zM5L%rzA2VT{| z#?o{h*{j;FBreMP25&NG;E_$`8~Pm%3~6;?wq>nUEFhFH_?}Y*eLo;ytKkyD(vsIH zCxV!$ZYg+;PH={f?)OSAt<1`SFNXLAak~r`U3J;3zTm0?I#tRHp)V1y!lF*-Do;?= zxcWlxcHvdmlt{jCO7cEtpoVtN_ufS-U(sjCN!wP&#*H3|#Q;GM?-feo z_&?%DGqEDt!h$g?7F`LEN)2Cu-L&7O-TRYpz<;N!`VLB|?`N;NZ}UVu!B?|jE(@>H zvWK0x3Zo9iRO*eys>R!;g?$iQbyszVQCc+wFwj;J z>4p3WDTIo-DR#-EkD+ewn7q{g6Jhl`Ql(j?QHMpT9r{e|?_C|mSf2b?TX~uEtnogt z>=JIn4hEzG-W79Hj_@i6dlej3^q(H;=*z#{lEquISDmmc9epmf16y6S>D?H=-(^sb zP9Jd*YZ92Y<;>K&XT=}H(y1d~|#KgG(w)w8dbl#e+SJgqG>`>}y$4W}{(DSDfFtZZ*) z$!?it`kvVVu~yRojowTL)N9|*GE=joUC$&;J3sey)%;a^)#EMh>QnkB+GpypHF@8E z8vGq?DdMkyXT{ah2f(Ap-5Ab+A=foJYo)gXVEGVrRpiTvBUONy_oIx(WK0#NXwQO= zC2Y|*#7@1qmC)jO@mOz&gz;9|1Nb%{Ph1^0(vkwb4Dgw58)Gl^T(t%Jcn}&ninsk-GWV2+R zG-9Me=k=eoy7vu3-<~)oQzlDgdS!e3}QXjO1!T8 zKI;4{=%*g_wK(ZMslj;|X{DUJI;Ud88Jzr4}l zCm*S)%jH>e!Qko&h^md2KkonFD2|9}L0sB#ArKuWG5FoDYKv(rNwN259)C%!|t%M1(`)agTEyPuN5!bhjxWiAA zIjg2(CTnhMswY{lCMeN-k7}-<(n?P#sGL($<~Gw!tthT^rn#E>vKFc-V>hz=^x~H^ z0ml+OW%Ca){XjD}*aQ)qfNZS%QfKk1%U<>0@&ZIKE%2&v1zi#}Mcw^{pi`WM)zF9+ zq^cpwif97Jt0c7(zN$fZDk`0FJ3aGJycVQW%)2$5HR#%If>({408B6?HYnH@;}Ag~ zj`*uguZebx}pI;4G~=aS3^d{RF#AQ7Rg@4rYd^hi_EGMztswAdD*M3X{-wr zXIl7h#Q|fK4;Rs)K|`ZgLSR)EqpYeJ8csb;kQ6m&U8Jk1F{72cugIYei0JCj>^A%; zA#R$QNeE>cPF^iyT}LWm_g(7gU&X7obXC*$&q=NRjr!_a3buaRUbWp_zDZxvKrp*T z3D`>d(~rXb_JE25Ig&a+Esin>Pl;yKTj0lyrBXF_<5Q4`t)smv+$a0yCGLBo0HTZq zcik+@$EZ?HvLb$_j~l{lZT<&#|?3Wc4n_q^jLt{nXo+kNtBgX zE{fZ_|GJUfg~I`RxF_zn$NjEkPh0M)Kf&JA_nALrRo>)P)J}y~t9+Asr&^wM7pe1q z6_wko=G$2&t2}ol(n|%ricMCM2PlDnVsm)a%j%NbtJIEy>SPq&KH_-Qrei0cI%~&L zZ~ry6h%%)i!lNdu=Co03odf`?|FL&2>W$(`5dIWQl!+uPY~cML^{A>_TxElIXLobP zkjcc{F^CqZOMjV4V%=v)>R&29o*^ojPv(TEqOw(5hPqS+Nf&%@ENp;UMNg5c0RRiL zfdz~?co~hgM!Jo%?Mhcni|$>8ugM&+Y}RKFj1=KbwtDX2XG>D2W16lV?a~41*3qk_{RaAvgD>WYJT4RnFLZl}!n~s>!y#S+v!qigf^d+ma&* z#gpt#5L2FT6?qEq!crOORet2c2x3y43|rRJsHg|ftLPOd>xW4(cA=%ASMilcpET;n zx>H{DR)zas5JbDM1;JohC>ihpk_L{K5R-No{CQsAsQ%5~dk8i90s!?B3A(uw)p#jB zyFn{RzJpG6FyrG)NrfIFcIpab#j%|9s*W!uu3{)&KXNWaqVm2J{o;WEwg;YQKl2Xl*_Z_KKH}7kFgfXB`^WYgML&s*Ik1qO; ziCFb9@~a-vt3Ezv%BU>JGG8BANF|Pd{1ot3p>3$p_D}_CzD(`1C~M+n?bEB&{!bkO z$)Kv#ED*E?;H$c>y|mX(bYz`CtvoB%_R%))y!jz34-v)QJb>TD1jW0o06Gdu4n!?Rw=47kQmoEsjiY|cD zmd#qOwmF`;`bv&kHWAzJL+YyEl`}r+RS)DzRAgbh;wMOf3*lI!)z(CKiH$;rsNI4apsvv1cnGVa z8&*0Rwv~-rATj2&20ZCiv<3vlO#J>Rof3qV$g5bIWWt3uZ5SB}GA&ZpPI=WiEYy4< z)2kZg=*7`swN<7bLZSGWHe*DRaQK~7q|GHGsZbCha?LU;{6EkuqiHABm8iCQdUf$% zbID2(n0lk3vzkXN;$7^uyh+oFe)F)<>1Ny~Iswcg?ykS8>0aZzQNX+Rr7 zm{G6}UJ3KyBL7vI&ObJo9Wz7o{IZ*^W#r!`0v$4Yd&M2_$xUI7(5vnu9R(z4pkUC2 zAp%n+!YWBN8fSt}wHN4B+wx-ShxDpvWW1-|hNk{;#p)-QCiCc)HBTgYuc@wzo0@&n zpp?pj1in;qK)0(Mz1@oFDf>(bWeY}rhlEhJu(*9ByP9FAir}lVHpxCV_1o;- z9#&Y{U9grd9G%@*1FrE`2Rs>%wXUL(@i(R1PIJHq=Vi3@n@_w_9VIN5sM%YgT_6$A z1$NEUI`{9g_$$+^o9j_Xtw#*YM>FINY25qim0DLrdRP{Nf1}4tj0-& z#4YGm?mWxqunwLI#~6dxwaJ*XN|{pGuT+wxVZ``l{9lKqB*?CVaD;*Kv_=dI!y&b8 zt0eh5Q8Qq#s^Rz?{;%}|(k7u6*?y!~=}awrl{|SnH3w9Bm6ENrbpi!tR8?iG!BkEF zM^nGRCXgrVoKj&z-Xb3n2Aw32_D(B&|B5=p3x0Beb@*mz3Tm< zXHhT`^5FOnZ+)0bRf9;cgcEZw=tt9&;aNw&Pjn=^N~%$Yk1tgx#Ty8^^7@e}ej1!4 zPAMBV2iFBla$@$%Qi_4}Dl5(5t6=<>x1)S4va6ane`;h^Uy1iR1X|aq-9%=dg^0<~ z<%5r4wejHlKMqLw3cc!U37z7Y_vsSeZk@kHa;wrG>WgkM(i;$yZu~S`c>%DhKgvp{ zdZvlWKL#<#A?%Fus=Hd5hA*L4#T=fZOIOX=kA*-h{p_K-iK^276<;MEL3pOBikPa{ zRg_|7s8#wvyFe+whCpIIx39(LQ$H@t6I(^RV@RpE{D}y=kUe^t0rVQ zC+iNBtBJUmV;==kJz#w~82-A9;fbrXDIlsY>ms$#x2yzv3q(dV{Og{28l!4RB@wHo zO*b{JsNC9_bn8DJzE||Bf0-=x+c)%NgFg~f^|$C%c9RP~Ze(TZnK@u_sm=5Ud3*D! zlE55F^p_8~;KO!INOe@QWke@MHjA^;+K2W<(5t>g#T1mNg4g;XL;iQpfsEKb8mC5RE>djtL(dYV=76=UvKY%*2hu(vo;?~GJ@lr)RWTzY zAyCnM-2S97H4;`abIQIr0SAUq)|r_Zy(;=g&?fsLKFSucRra{|pWWY=EqMOfJxf7* zfIwC72eePj0qt}8l`ZMA?4Ez1E$O+AHLkkfNv}HPRb|=PwHYRSm0TM|u;dJaFszWq zypN;e?5m4D{ zJB&5>RVvy_Ayus3TPaL@BJW63vDuc&WqlMKey?In2+iP~>#DLr@Rx36T}qU6Ro-_l zrkP&lyIU^|t$Z(B!L1^_>b&A_Rb!V}Qvs>?FPjyshEvkpLcHHgRIAnfGMwbnH>!O_ zT_p_NRxdqbjntY>;->_gs*7_}6#;uOPSvN7`LxR9N^~yo$B5Rku|jrw&$j6O`ekEM zTvh7syVhQFH#lye_ew0_;3shxt8$zBid0rzSO2v4npfaeb|OxRRtaJy`vE^d$f#~W zSb1ozL|=6ihd@V7qD>Wv)XPu|Cp2|nNA?}4b6@i7AtKMnz zNLL=%De9^CEo8J(Bvse^LM@rfR0~0sPHld*5mVci6f3WKEI&5~T@u5HERp+n_nZpVcHO0S?UX_*# zjhL9`pmdqS6WDu=s;MrE!bW+Os;&fP^-C-P$B>FH+86q=GWL$u7?i9(;|yJ||2L|m zm(f!{1B3O?(W_o?b$bl3f_}mlpe5<_xtB#udol|1s^6A*!3oP816Vyle(~4%Zs>_j zVPj(-32Pama|?P^x&TyL4RroM1k5ez)GthH2F9L6VUGof-J(PtB69bUvdKGo*f_V#Z0%%f6*)WBHR43(4l0r883Dt5kf(nmeb zv?3-YXwR}bX771SVmi_}6-j*t68TJ!-l9$*e}e3*Rg!A7#S%xtK-_afd(^_)&D)1s zBwNrkJ%ThH(L~L6VxQUs+Uhw?tNh76lYSMy;*R~FJ%;3}Uh_089I}15-Q)DC-zFpS zUoYvd-Y7}Yj(w-oSfqP}sH51EIz3ffC67DH?EjCwGtqKeRifykkxgF%GP05W|5G2Q zsz7M8+;>P`EM+C#*64v0lG)k^H`LO&s?G$Ka82odYTBL8N-RG0$xB(m6586Ar7M$5 z9-|og$yfq5AKff89*dD)zM;JORLh;^=k$S`;LzH6vCv-fk27pOKn8#xsfiX_{>F<5QCcs%`q8rVkU-IDphb*FODlo0BY%rbc&n6>e!Q) zG8cl2QY$H_4T26`i?84er1(KD)M-;E$d)WPr~mKXIgi&*>{S_}n|M@$qF&pxy(%}f zrM*h$nWCE#bQ(tOfgmnb4&&sg)VrgRO3S6bm{0qi9^I4k?zc#?X#Ta#%`P_)Y&q)g z&rsjbYuqcoNuM*f#y?pRBhz!#TP@kF(4KARV@e}+uhNT-pfPGqd`Pbu!yUJE6?c{N z+K%jck-sgajk-Zxx`usxsW*)dR@}7a#9oDB7Dfg&%>PfA^l&|K9MzU;ro)LO+?B^Ija zs=tI+iM=XHfFR8zdsTb8$2g`6MjbO=rRR*1uIy80MawkxPE`gfTdA6aG*VM?C|jEh zUTxM-jWkic2l=a}LZ~&G%amimd!<%Zzsw-0g_=u`%B!i4Yx=TP?bo7tV#%7uE6&lb zB^tJP(<&ubSxcF(;j~x%4y?d!h%0zi5PKCx|Bc~*99ES+lyqvFF4Y9As_a!axUFDa zxn~xD!>-uh(nI^gv(nUb1hzrKGPPHc^o5o;Wgl3%qYX+pARAt2VrBum?z@w&`aIsH zU&E^~;or2BR94hx#8SofDhUuwD?j`3!D+8Lr`_iE7s}(L%s^Q+vsX2!Yq$JMm+{ng zj0OZh)jnsoJ%|G-_VkvEA$EMD(%X!)cz12McQuyUw!e$LD%x}Uz0_7m?NwIo52kMp zy;qokxh(BfYBwBE9i$ZA#|!54!rzG5Qb(|ab<2+BdqYD&a34FNGUUX!Ea_~of-)+2 z;;Q%#C~tY0*Picu3Ii^Tfe#RPPRlBL75O6geyX%E5P<~{tB8v@^-onOjrpdVp@OW> zrWj_muouRRm>d4DG!cnSMKD$qDP3p)St=_DR zYOisrHS-$%$cd#_kBaxCP%ikXu+VD4J;9>l4jNP@u8!(E*Cw<^`eQUNyL!m1@_tfJ zLztCpnOd8dT`CmgR3B-t1JzgOhE##6+J>2IZRJ%Pu~(Umgub;0n>wj=ZPm6&%Djr* zGrMfnE0Su?DQ(bL<^U6B4y>@fAG4kl_?kq+<3r!Ae(8VGUZvk#@F}Ad>C7dxKHqZ9 znhWBYijSh)+pT5L*0DwkgRzlGNnIiaU3g$RnAk`;w zpNT9qoqqYeK|MPBv}HCA{ql@+`nbuj49|a$QOVXqWrchXo*C(MXz)b+;#c@z(Z^w( zmEGIn#H-F}-gf{^^-jv1A9X_+_#=B&5ngCc3&O0n6&ac)^aWD`Sw<`#K;p~exGh&w zs*b(juv~SusI8u!bQ)Be+tXh4r*zK6Ud5!+V=Qyy!h0v(bRP}ds|KO`TxnYrg1-)pSXXnO`gm#D&tqoVJ*Aqw8so=mgN`KyroLoVc6cW zAB$XCB_2IpkG6ay0;=gQk_Src_n#Jf`HsD+j@cU(RIpbC3ITNKvXcx}4@Rxrm-+f~ zI{gJ-l`io!C^bzOG+$eXyXZ;lc}h+o{Z!wKT`5X_t78m>vwCf>Vlql+ zX_YR373BZ|_6uEePd`SbRiK4ruZprgZOwSqUE3LAG|vc}!${UhcHPJ-U5v@ee@bsa zOd}hm=U%B5*lC*Vw*f6Jsj#V;$}V3=MQ2SS0q3OEoW)w~co~g26L_g=X?~M7L|v10 z$32+uWA>_lPA#=T%EId4ZK*!gX3j(rs=yyrg&5rG<)N2d%M-uRlVWh|#6M1Z)nApU zD#KK4uM(wI)2-R7HZ)b;iC3M|l;-1b!1Rltxm7S#c0su?&mW1B#lpS@++?Uggva3DobWf%-3>&#!px2klkY z9c(}y4e~0Ms@X`t6+70pgGX(vbzV58)SH0R@%%xxgEbsRi%5N+x{`FU!h8VypD?r( zdsPRy3frrm=~}wU>ms`kXH6cqmA)aTGz2ev?M$m&FP`)+h`YiC`qj|Ey0!~wZ80Zm zNkStHL5?;nBy-UrI`PPWGq{pzE2N$D9m%tN*EU!wJuf00cHR#)X)x-Aij(c~6b(!o_X4Pz7==7aepc z3KbB+rqyK3fP#3vd|mw=#R}|&x=`(IXueo$=E$9IokeVSe@M9uN11 zd1=>QwF4yWJzA4vt^YKeF@#HE>Rpf2N;u%uvt`y&|IAvzp;-mT_Hz`sS*u@RuiC<^ z+-Hwd&`s3A=b_J*VW~c+QVcZoIRvYD++hf8YRN=ZZ18Um24aGMId5pNc%))#uPP1~ zd_U~H8~qn$jA9zZ=IB0i3@=1-yX24~CxIWDWy9Aw)+k$S;=|dh=B@oJR{%XsPD~Unn z(O?-*jV_WVqvc%?i(^po=e}PPVK^LZxFXd$O3+& zguo})vy543>!06?{@9%cv`@Nf3BFW}-1VW_ z0q1bhT5g|Sik?=9rdrHYDXD~0%IS9#_-YbFc**3}D8@1~6lwZsiaAY}TQh(5)=V^6 z)5N~Z^ymCV@ZMCNerTq$tNKMvas!JItY*fFscUNNs?!j!p*c96_Nsr=G;$L`3S&y- zry_+)M~DCfQMb`v1w1Nm2klkc$Oiq8bycueb$uIIq(VCyRmI`L)Y~kbup8Q$ z(50_Ku*$L0k){rrwA#>~?y67ZUAi@URYgltLLgCrYxXM8Eos(p+N;j#NONl-;Y-b_ zX>+t+RYRMB?NxoYS4lwXbS>EbI6(ksz+G3u1({B5rOu+fvPW@p{@u3gUe-V z#O*X_@K@Ta+-a)%-Jal4d(}SNv^#h{h5&9@s;umPLxH7U5=`o#Vnw|e-dD??Y7J*m z#~B8-wr@3}DHyTy1A!<6Ct1g)U#DS%GCt5qf4YFfg}qJXA;1*HBvvG06utn0VhZjk zYwzj0IfgLsI%$3E&FTowg|sh$p%-Q8%G;K=^vgR}tBD|m@fybqwEoreGgB1V6M`>C z!1tPgUxK>q;W;k}jDxX_|K?-$nle#80bAa+|7@D#NfmC6ZoRP&6%%3h`3d#BZp5v0#5Z)6>dN z3~0bu;nK2!Zlo<)o)~GxOpM)PJQt%K`a#ADrnt0s_o2-ePhXE@3^T0(>$IHb=i@U~ z#j~{xjOf6l#@MkwM`}L~uj-crXqIUy&oWOlK6nN%S;?t6=9MHXd04eqnW1;*n|w~w z(pgFuQ&8UBMK)!`OBFaUH5Dcr1w$1x;}C7BZ~tTOY}ixPl_>nALE|IPra-) z6FviCZ_hqG6>KYDNK&0npjo`j@#dLU{EUd|gRK#5x9N*2D8}srBI+Y55;j$0>D$E`ECL0pnN}xe8?fuL>9q{1wQdWi2qPB)#rV=+Wu=^FGk4 z#3Zn(`3u&^2mV&U{aE3Z1=Ue`S;dwQ50zIXdR5HmNA06M2I;p59isZ^8p+I)M&fR? z6vZjdzWJfTUNI0<*H+I-dunQ<7S-ik0?GcI-w-met95x&l5__xT7PXC@;{ z;GW2=e6ltT?$jTsUms6yDN}k?as}i{&#vlD4vQ|5YeY2URYX<6D3J0h;;R6)63ak* zm4i9pK%yE+hTKdZl?6SGVNDZglgTNtrt~TSH1#N}zS^N4Q6XhjRWtC^LKl|!RJ}K# zH2g6VS2;5)Z&L4Vf51fgol;YVj{=ka)#gg3*f$9AT89qK`3zc=6vpcdQ}WiX4RFwa8LJr<~Gy?)?*!q z@gkp}s`05dGgRBPWY|`!5^ZYV&QjaBbKL>v{Biz}^4-sK-xKzmMI6KE<1E$gV~_1a zg_-p#{yJ&snOe+j81vilUkZ?HL{X(y;^#a3~}?C%*b&}<`!N5P>E6s|LKrCid`;cD+y2U%tfn3J!dI~jdOP#<5=i@NSM=LU6(Q9 z*2SDrpPO@|+?I#kE>)4+_8?q$_shTRR{RCshQiA2Y-3*DZHS?=Z;8uG&=z_#_w+5? z_21PG_pS7*%bL8(zWY=~tp-)CGF3P^;FMk^cq!aIZ3R4$N@J4Yg6Uk&4p5uLN`hqt z>GBEw7ASn_X)m@f8-3W)(0s$Cy z$=T~Cb?qpThKtVBYK}uv84E?suq|UFqcұ^l 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 Q^q&{ZS!{gKXw~lj0v#z4YybcN literal 0 HcmV?d00001 diff --git a/src/common/assets/images/layouts/logo-text-1.png b/src/common/assets/images/layouts/logo-text-1.png new file mode 100644 index 0000000000000000000000000000000000000000..70c566ddebf38a3e451e3091a7b64f9753a9381f GIT binary patch literal 93711 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

wpHG$v8>Vg3z*(fcAMy- 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 literal 0 HcmV?d00001 diff --git a/src/common/assets/images/layouts/logo.png b/src/common/assets/images/layouts/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c641cd002918bdb009192b6b74f55e42bb97adc9 GIT binary patch literal 8627 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 R=UV|lPD)v_M%*;ye*o|wcIE&8 literal 0 HcmV?d00001 diff --git a/src/common/assets/styles/element-plus.css b/src/common/assets/styles/element-plus.css new file mode 100644 index 0000000..c550ac9 --- /dev/null +++ b/src/common/assets/styles/element-plus.css @@ -0,0 +1,90 @@ +/** + * @description dark-blue 主题模式下的 Element Plus CSS 变量 + * @description 在此查阅所有可自定义的变量:https://github.com/element-plus/element-plus/blob/dev/packages/theme-chalk/src/common/var.scss + * @description 也可以打开浏览器控制台选择元素,查看要覆盖的变量名 + */ + +/* 基础颜色 */ +html.dark-blue { + /* color-primary */ + --el-color-primary: #00bb99; + --el-color-primary-light-3: #00bb99b3; + --el-color-primary-light-5: #00bb9980; + --el-color-primary-light-7: #00bb994d; + --el-color-primary-light-8: #00bb9933; + --el-color-primary-light-9: #00bb991a; + --el-color-primary-dark-2: #00bb99; + /* color-success */ + --el-color-success: #67c23a; + --el-color-success-light-3: #67c23ab3; + --el-color-success-light-5: #67c23a80; + --el-color-success-light-7: #67c23a4d; + --el-color-success-light-8: #67c23a33; + --el-color-success-light-9: #67c23a1a; + --el-color-success-dark-2: #67c23a; + /* color-warning */ + --el-color-warning: #e6a23c; + --el-color-warning-light-3: #e6a23cb3; + --el-color-warning-light-5: #e6a23c80; + --el-color-warning-light-7: #e6a23c4d; + --el-color-warning-light-8: #e6a23c33; + --el-color-warning-light-9: #e6a23c1a; + --el-color-warning-dark-2: #e6a23c; + /* color-danger */ + --el-color-danger: #f56c6c; + --el-color-danger-light-3: #f56c6cb3; + --el-color-danger-light-5: #f56c6c80; + --el-color-danger-light-7: #f56c6c4d; + --el-color-danger-light-8: #f56c6c33; + --el-color-danger-light-9: #f56c6c1a; + --el-color-danger-dark-2: #f56c6c; + /* color-error */ + --el-color-error: #f56c6c; + --el-color-error-light-3: #f56c6cb3; + --el-color-error-light-5: #f56c6c80; + --el-color-error-light-7: #f56c6c4d; + --el-color-error-light-8: #f56c6c33; + --el-color-error-light-9: #f56c6c1a; + --el-color-error-dark-2: #f56c6c; + /* color-info */ + --el-color-info: #909399; + --el-color-info-light-3: #909399b3; + --el-color-info-light-5: #90939980; + --el-color-info-light-7: #9093994d; + --el-color-info-light-8: #90939933; + --el-color-info-light-9: #9093991a; + --el-color-info-dark-2: #909399; + /* text-color */ + --el-text-color-primary: #e5eaf3; + --el-text-color-regular: #cfd3dc; + --el-text-color-secondary: #a3a6ad; + --el-text-color-placeholder: #8d9095; + --el-text-color-disabled: #6c6e72; + /* border-color */ + --el-border-color-darker: #003380; + --el-border-color-dark: #003380; + --el-border-color: #003380; + --el-border-color-light: #003380; + --el-border-color-lighter: #003380; + --el-border-color-extra-light: #003380; + /* fill-color */ + --el-fill-color-darker: #002b6b; + --el-fill-color-dark: #002b6b; + --el-fill-color: #002b6b; + --el-fill-color-light: #002359; + --el-fill-color-lighter: #002359; + --el-fill-color-blank: #001b44; + --el-fill-color-extra-light: #001b44; + /* bg-color */ + --el-bg-color-page: #001535; + --el-bg-color: #001b44; + --el-bg-color-overlay: #002359; + /* mask-color */ + --el-mask-color: rgba(0, 0, 0, 0.5); + --el-mask-color-extra-light: rgba(0, 0, 0, 0.3); +} + +/* button */ +html.dark-blue .el-button { + --el-button-disabled-text-color: rgba(255, 255, 255, 0.5); +} diff --git a/src/common/assets/styles/element-plus.scss b/src/common/assets/styles/element-plus.scss new file mode 100644 index 0000000..790d962 --- /dev/null +++ b/src/common/assets/styles/element-plus.scss @@ -0,0 +1,15 @@ +// 自定义 Element Plus 样式 + +// 分页 +.el-pagination { + // 参考 Bootstrap 的响应式设计 WIDTH = 768 + @media screen and (max-width: 768px) { + .el-pagination__total, + .el-pagination__sizes, + .el-pagination__jump, + .btn-prev, + .btn-next { + display: none; + } + } +} diff --git a/src/common/assets/styles/index.scss b/src/common/assets/styles/index.scss new file mode 100644 index 0000000..db2f8b0 --- /dev/null +++ b/src/common/assets/styles/index.scss @@ -0,0 +1,67 @@ +// 全局 CSS 变量 +@import "./variables.css"; +// Transition +@import "./transition.scss"; +// Element Plus +@import "./element-plus.css"; +@import "./element-plus.scss"; +// Vxe Table +@import "./vxe-table.css"; +@import "./vxe-table.scss"; +// 注册多主题 +@import "./theme/register.scss"; +// Mixins +@import "./mixins.scss"; +// View Transition +@import "./view-transition.scss"; + +// 业务页面几乎都应该在根元素上挂载 class="app-container",以保持页面美观 +.app-container { + padding: 20px; +} + +html { + height: 100%; + // 灰色模式 + &.grey-mode { + filter: grayscale(1); + } + // 色弱模式 + &.color-weakness { + filter: invert(0.8); + } +} + +body { + height: 100%; + color: var(--v3-body-text-color); + background-color: var(--v3-body-bg-color); + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: + Inter, "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, + sans-serif; + @extend %scrollbar; +} + +#app { + height: 100%; +} + +*, +*::before, +*::after { + box-sizing: border-box; +} + +a, +a:focus, +a:hover { + color: inherit; + outline: none; + text-decoration: none; +} + +div:focus { + outline: none; +} diff --git a/src/common/assets/styles/mixins.scss b/src/common/assets/styles/mixins.scss new file mode 100644 index 0000000..758e6e5 --- /dev/null +++ b/src/common/assets/styles/mixins.scss @@ -0,0 +1,42 @@ +// 清除浮动 +%clearfix { + &::after { + content: ""; + display: table; + clear: both; + } +} + +// 美化原生滚动条 +%scrollbar { + // 整个滚动条 + &::-webkit-scrollbar { + width: 8px; + height: 8px; + } + // 滚动条上的滚动滑块 + &::-webkit-scrollbar-thumb { + border-radius: 4px; + background-color: #90939955; + } + &::-webkit-scrollbar-thumb:hover { + background-color: #90939977; + } + &::-webkit-scrollbar-thumb:active { + background-color: #90939999; + } + // 当同时有垂直滚动条和水平滚动条时交汇的部分 + &::-webkit-scrollbar-corner { + background-color: transparent; + } +} + +// 文本溢出时显示省略号 +%ellipsis { + // 隐藏溢出的文本 + overflow: hidden; + // 防止文本换行 + white-space: nowrap; + // 文本内容溢出容器时,文本末尾显示省略号 + text-overflow: ellipsis; +} diff --git a/src/common/assets/styles/theme/core/element-plus.scss b/src/common/assets/styles/theme/core/element-plus.scss new file mode 100644 index 0000000..54061a7 --- /dev/null +++ b/src/common/assets/styles/theme/core/element-plus.scss @@ -0,0 +1,29 @@ +// Element Plus 相关 + +// 侧边栏的 item 的 popper +.el-popper { + .el-menu { + background-color: var(--el-bg-color); + .el-menu-item { + background-color: var(--el-bg-color); + &.is-active, + &:hover { + background-color: var(--el-bg-color-overlay); + color: #ffffff; + } + } + .el-sub-menu__title { + background-color: var(--el-bg-color); + } + .el-sub-menu { + &.is-active { + > .el-sub-menu__title { + color: #ffffff; + } + } + } + } + .el-menu--horizontal { + border: none; + } +} diff --git a/src/common/assets/styles/theme/core/index.scss b/src/common/assets/styles/theme/core/index.scss new file mode 100644 index 0000000..5bfe156 --- /dev/null +++ b/src/common/assets/styles/theme/core/index.scss @@ -0,0 +1,4 @@ +.#{$theme-name} { + @import "./layouts.scss"; + @import "./element-plus.scss"; +} diff --git a/src/common/assets/styles/theme/core/layouts.scss b/src/common/assets/styles/theme/core/layouts.scss new file mode 100644 index 0000000..faa23b6 --- /dev/null +++ b/src/common/assets/styles/theme/core/layouts.scss @@ -0,0 +1,34 @@ +// Layout 相关 + +.app-wrapper { + // 侧边栏 + .sidebar-container { + background-color: var(--el-bg-color); + .el-menu { + background-color: var(--el-bg-color); + .el-menu-item { + background-color: var(--el-bg-color); + &.is-active, + &:hover { + background-color: var(--el-bg-color-overlay); + color: #ffffff; + } + } + } + .el-sub-menu__title { + background-color: var(--el-bg-color); + } + .el-sub-menu { + &.is-active { + > .el-sub-menu__title { + color: #ffffff; + } + } + } + } +} + +// 右侧设置面板 +.handle-button { + background-color: lighten($theme-bg-color, 20%) !important; +} diff --git a/src/common/assets/styles/theme/dark-blue/index.scss b/src/common/assets/styles/theme/dark-blue/index.scss new file mode 100644 index 0000000..d39200d --- /dev/null +++ b/src/common/assets/styles/theme/dark-blue/index.scss @@ -0,0 +1,2 @@ +@import "./variables.scss"; +@import "../core/index.scss"; diff --git a/src/common/assets/styles/theme/dark-blue/variables.scss b/src/common/assets/styles/theme/dark-blue/variables.scss new file mode 100644 index 0000000..e65ab92 --- /dev/null +++ b/src/common/assets/styles/theme/dark-blue/variables.scss @@ -0,0 +1,6 @@ +// dark-blue 主题下的变量 + +// 主题名称 +$theme-name: "dark-blue"; +// 主题背景颜色 +$theme-bg-color: #001b44; diff --git a/src/common/assets/styles/theme/dark/index.scss b/src/common/assets/styles/theme/dark/index.scss new file mode 100644 index 0000000..d39200d --- /dev/null +++ b/src/common/assets/styles/theme/dark/index.scss @@ -0,0 +1,2 @@ +@import "./variables.scss"; +@import "../core/index.scss"; diff --git a/src/common/assets/styles/theme/dark/variables.scss b/src/common/assets/styles/theme/dark/variables.scss new file mode 100644 index 0000000..df0a354 --- /dev/null +++ b/src/common/assets/styles/theme/dark/variables.scss @@ -0,0 +1,6 @@ +// dark 主题下的变量 + +// 主题名称 +$theme-name: "dark"; +// 主题背景颜色 +$theme-bg-color: #141414; diff --git a/src/common/assets/styles/theme/register.scss b/src/common/assets/styles/theme/register.scss new file mode 100644 index 0000000..6b74211 --- /dev/null +++ b/src/common/assets/styles/theme/register.scss @@ -0,0 +1,3 @@ +// 注册多主题 +@import "./dark/index.scss"; +@import "./dark-blue/index.scss"; diff --git a/src/common/assets/styles/transition.scss b/src/common/assets/styles/transition.scss new file mode 100644 index 0000000..5a4657a --- /dev/null +++ b/src/common/assets/styles/transition.scss @@ -0,0 +1,25 @@ +// https://cn.vuejs.org/guide/built-ins/transition + +// fade-transform +.fade-transform-leave-active, +.fade-transform-enter-active { + transition: all 0.5s; +} +.fade-transform-enter { + opacity: 0; + transform: translateX(-30px); +} +.fade-transform-leave-to { + opacity: 0; + transform: translateX(30px); +} + +// layout-logo-fade +.layout-logo-fade-enter-active, +.layout-logo-fade-leave-active { + transition: opacity 1.5s; +} +.layout-logo-fade-enter-from, +.layout-logo-fade-leave-to { + opacity: 0; +} diff --git a/src/common/assets/styles/variables.css b/src/common/assets/styles/variables.css new file mode 100644 index 0000000..32ec870 --- /dev/null +++ b/src/common/assets/styles/variables.css @@ -0,0 +1,72 @@ +/* 全局 CSS 变量,这种变量不仅可以在 CSS 和 SCSS 中使用,还可以导入到 JS 中使用 */ + +:root { + /* Body */ + --v3-body-text-color: var(--el-text-color-primary); + --v3-body-bg-color: var(--el-bg-color-page); + /* Header 区域 = NavigationBar 组件 + TagsView 组件 */ + --v3-header-height: calc( + var(--v3-navigationbar-height) + var(--v3-tagsview-height) + var(--v3-header-border-bottom-width) + ); + --v3-header-bg-color: var(--el-bg-color); + --v3-header-box-shadow: var(--el-box-shadow-lighter); + --v3-header-border-bottom-width: 1px; + --v3-header-border-bottom: var(--v3-header-border-bottom-width) solid var(--el-fill-color); + /* NavigationBar 组件 */ + --v3-navigationbar-height: 50px; + --v3-navigationbar-text-color: var(--el-text-color-regular); + /* Sidebar 组件(左侧模式全部生效、顶部模式全部不生效、混合模式非颜色部分生效) */ + --v3-sidebar-width: 220px; + --v3-sidebar-hide-width: 58px; + --v3-sidebar-border-right: 1px solid var(--el-fill-color); + --v3-sidebar-menu-item-height: 60px; + --v3-sidebar-menu-tip-line-bg-color: var(--el-color-primary); + --v3-sidebar-menu-bg-color: #001428; + --v3-sidebar-menu-hover-bg-color: #409eff10; + --v3-sidebar-menu-text-color: #cfd3dc; + --v3-sidebar-menu-active-text-color: #ffffff; + /* TagsView 组件 */ + --v3-tagsview-height: 34px; + --v3-tagsview-text-color: var(--el-text-color-regular); + --v3-tagsview-tag-active-text-color: #ffffff; + --v3-tagsview-tag-bg-color: var(--el-bg-color); + --v3-tagsview-tag-active-bg-color: var(--el-color-primary); + --v3-tagsview-tag-border-radius: 2px; + --v3-tagsview-tag-border-color: var(--el-border-color-lighter); + --v3-tagsview-tag-active-border-color: var(--el-color-primary); + --v3-tagsview-tag-icon-hover-bg-color: #00000030; + --v3-tagsview-tag-icon-hover-color: #ffffff; + --v3-tagsview-contextmenu-text-color: var(--el-text-color-regular); + --v3-tagsview-contextmenu-hover-text-color: var(--el-text-color-primary); + --v3-tagsview-contextmenu-bg-color: var(--el-bg-color-overlay); + --v3-tagsview-contextmenu-hover-bg-color: var(--el-fill-color); + --v3-tagsview-contextmenu-box-shadow: var(--el-box-shadow); + /* Hamburger 组件 */ + --v3-hamburger-text-color: var(--el-text-color-primary); + /* RightPanel 组件 */ + --v3-rightpanel-button-bg-color: #001428; +} + +/* 内容区放大时,将不需要的组件隐藏 */ +body.content-large { + /* Header 区域 = TagsView 组件 */ + --v3-header-height: var(--v3-tagsview-height); + /* NavigationBar 组件 */ + --v3-navigationbar-height: 0px; + /* Sidebar 组件 */ + --v3-sidebar-width: 0px; + --v3-sidebar-hide-width: 0px; +} + +/* 内容区全屏时,将不需要的组件隐藏 */ +body.content-full { + /* Header 区域 */ + --v3-header-height: 0px; + /* NavigationBar 组件 */ + --v3-navigationbar-height: 0px; + /* Sidebar 组件 */ + --v3-sidebar-width: 0px; + --v3-sidebar-hide-width: 0px; + /* TagsView 组件 */ + --v3-tagsview-height: 0px; +} diff --git a/src/common/assets/styles/view-transition.scss b/src/common/assets/styles/view-transition.scss new file mode 100644 index 0000000..72d5975 --- /dev/null +++ b/src/common/assets/styles/view-transition.scss @@ -0,0 +1,20 @@ +// 控制切换主题时的动画效果(只在较新的浏览器上生效,例如 Chrome 111+) + +::view-transition-old(root) { + animation: none; + mix-blend-mode: normal; +} + +::view-transition-new(root) { + animation: 0.5s ease-in clip-animation; + mix-blend-mode: normal; +} + +@keyframes clip-animation { + from { + clip-path: circle(0px at var(--v3-theme-x) var(--v3-theme-y)); + } + to { + clip-path: circle(var(--v3-theme-r) at var(--v3-theme-x) var(--v3-theme-y)); + } +} diff --git a/src/common/assets/styles/vxe-table.css b/src/common/assets/styles/vxe-table.css new file mode 100644 index 0000000..37743c6 --- /dev/null +++ b/src/common/assets/styles/vxe-table.css @@ -0,0 +1,97 @@ +/** + * @description 所有主题模式下的 Vxe Table CSS 变量 + * @description 用 Element Plus 的 CSS 变量来覆写 Vxe Table 的 CSS 变量,目的是使 Vxe Table 支持多主题模式且样式统一 + * @description 在此查阅所有可自定义的变量:https://github.com/x-extends/vxe-table/blob/master/styles/css-variable.scss + */ + +:root { + /* color */ + --vxe-font-color: var(--el-text-color-regular); + --vxe-primary-color: var(--el-color-primary); + --vxe-success-color: var(--el-color-success); + --vxe-info-color: var(--el-color-info); + --vxe-warning-color: var(--el-color-warning); + --vxe-danger-color: var(--el-color-danger); + + --vxe-font-lighten-color: var(--el-text-color-primary); + --vxe-primary-lighten-color: var(--el-color-primary-light-3); + --vxe-success-lighten-color: var(--el-color-success-light-3); + --vxe-info-lighten-color: var(--el-color-info-light-3); + --vxe-warning-lighten-color: var(--el-color-warning-light-3); + --vxe-danger-lighten-color: var(--el-color-danger-light-3); + + --vxe-font-darken-color: var(--el-text-color-secondary); + --vxe-primary-darken-color: var(--el-color-primary-dark-2); + --vxe-success-darken-color: var(--el-color-success-dark-2); + --vxe-info-darken-color: var(--el-color-info-dark-2); + --vxe-warning-darken-color: var(--el-color-warning-dark-2); + --vxe-danger-darken-color: var(--el-color-danger-dark-2); + + --vxe-font-disabled-color: var(--el-text-color-disabled); + --vxe-primary-disabled-color: var(--el-color-primary-light-5); + --vxe-success-disabled-color: var(--el-color-success-light-5); + --vxe-info-disabled-color: var(--el-color-info-light-5); + --vxe-warning-disabled-color: var(--el-color-warning-light-5); + --vxe-danger-disabled-color: var(--el-color-danger-light-5); + + /* input/radio/checkbox */ + --vxe-input-border-color: var(--el-border-color); + --vxe-input-disabled-color: var(--el-text-color-disabled); + --vxe-input-disabled-background-color: var(--el-fill-color-light); + --vxe-input-placeholder-color: var(--el-text-color-placeholder); + + /* popup */ + --vxe-table-popup-border-color: var(--el-border-color); + + /* table */ + --vxe-table-header-font-color: var(--el-text-color-regular); + --vxe-table-footer-font-color: var(--el-text-color-regular); + --vxe-table-border-color: var(--el-border-color-lighter); + --vxe-table-header-background-color: var(--el-bg-color); + --vxe-table-body-background-color: var(--el-bg-color); + --vxe-table-footer-background-color: var(--el-bg-color); + + --vxe-table-row-hover-background-color: var(--el-fill-color-light); + --vxe-table-row-current-background-color: var(--el-fill-color-light); + --vxe-table-row-hover-current-background-color: var(--el-fill-color-light); + + --vxe-table-checkbox-range-background-color: var(--el-fill-color-light); + + /* menu */ + --vxe-table-menu-background-color: var(--el-bg-color-overlay); + + /* loading */ + --vxe-loading-color: var(--el-color-primary); + --vxe-loading-background-color: var(--el-mask-color); + + /* validate */ + --vxe-table-validate-error-color: var(--el-color-danger); + + /* toolbar */ + --vxe-toolbar-background-color: var(--el-bg-color); + --vxe-toolbar-custom-active-background-color: var(--el-bg-color-overlay); + --vxe-toolbar-panel-background-color: var(--el-bg-color-overlay); + + /* pager */ + --vxe-pager-background-color: var(--el-bg-color); + + /* modal */ + --vxe-modal-header-background-color: var(--el-bg-color); + --vxe-modal-body-background-color: var(--el-bg-color); + --vxe-modal-border-color: var(--el-border-color); + + /* button */ + --vxe-button-default-background-color: var(--el-bg-color-overlay); + + /* input */ + --vxe-input-background-color: var(--el-fill-color-blank); + --vxe-input-panel-background-color: var(--el-fill-color-blank); + + /* form */ + --vxe-form-background-color: var(--el-bg-color); + --vxe-form-validate-error-color: var(--el-color-danger); + + /* select */ + --vxe-select-option-hover-background-color: var(--el-bg-color-overlay); + --vxe-select-panel-background-color: var(--el-bg-color); +} diff --git a/src/common/assets/styles/vxe-table.scss b/src/common/assets/styles/vxe-table.scss new file mode 100644 index 0000000..ee86a35 --- /dev/null +++ b/src/common/assets/styles/vxe-table.scss @@ -0,0 +1,38 @@ +// 自定义 Vxe Table 样式 + +.vxe-grid { + // 表单 + &--form-wrapper { + .vxe-form { + padding: 10px 20px; + margin-bottom: 20px; + } + } + + // 工具栏 + &--toolbar-wrapper { + .vxe-toolbar { + padding: 20px; + } + } + + // 分页 + &--pager-wrapper { + .vxe-pager { + height: 70px; + padding: 0 20px; + &--wrapper { + // 参考 Bootstrap 的响应式设计 WIDTH = 768 + @media screen and (max-width: 768px) { + .vxe-pager--total, + .vxe-pager--sizes, + .vxe-pager--jump, + .vxe-pager--jump-prev, + .vxe-pager--jump-next { + display: none; + } + } + } + } + } +} diff --git a/src/common/components/Notify/List.vue b/src/common/components/Notify/List.vue new file mode 100644 index 0000000..174a42a --- /dev/null +++ b/src/common/components/Notify/List.vue @@ -0,0 +1,60 @@ + + + + + diff --git a/src/common/components/Notify/data.ts b/src/common/components/Notify/data.ts new file mode 100644 index 0000000..e628545 --- /dev/null +++ b/src/common/components/Notify/data.ts @@ -0,0 +1,58 @@ +import type { NotifyItem } from "./type" + +export const notifyData: NotifyItem[] = [ + { + avatar: "https://gw.alipayobjects.com/zos/rmsportal/OKJXDXrmkNshAMvwtvhu.png", + title: "V3 Admin Vite 上线啦", + datetime: "四年前", + description: "一个 AI 友好的后台管理系统模板,基于 Vue3、Vite、TypeScript、Element Plus 等主流技术" + }, + { + avatar: "https://gw.alipayobjects.com/zos/rmsportal/OKJXDXrmkNshAMvwtvhu.png", + title: "V3 Admin 上线啦", + datetime: "五年前", + description: "一个中后台管理系统基础解决方案,基于 Vue3、TypeScript、Element Plus、Pinia 和 Vue CLI 5.x" + } +] + +export const messageData: NotifyItem[] = [ + { + avatar: "https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png", + title: "来自楚门的世界", + description: "如果再也不能见到你,祝你早安、午安和晚安", + datetime: "1998-06-05" + }, + { + avatar: "https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png", + title: "来自大话西游", + description: "如果非要在这份爱上加上一个期限,我希望是一万年", + datetime: "1995-02-04" + }, + { + avatar: "https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png", + title: "来自龙猫", + description: "心存善意,定能途遇天使", + datetime: "1988-04-16" + } +] + +export const todoData: NotifyItem[] = [ + { + title: "任务名称", + description: "这家伙很懒,什么都没留下", + extra: "未开始", + status: "info" + }, + { + title: "任务名称", + description: "这家伙很懒,什么都没留下", + extra: "进行中", + status: "primary" + }, + { + title: "任务名称", + description: "这家伙很懒,什么都没留下", + extra: "已超时", + status: "danger" + } +] diff --git a/src/common/components/Notify/index.vue b/src/common/components/Notify/index.vue new file mode 100644 index 0000000..6d7e3a5 --- /dev/null +++ b/src/common/components/Notify/index.vue @@ -0,0 +1,94 @@ + + + + + diff --git a/src/common/components/Notify/type.ts b/src/common/components/Notify/type.ts new file mode 100644 index 0000000..d41fa7a --- /dev/null +++ b/src/common/components/Notify/type.ts @@ -0,0 +1,8 @@ +export interface NotifyItem { + avatar?: string + title: string + datetime?: string + description?: string + status?: "primary" | "success" | "info" | "warning" | "danger" + extra?: string +} diff --git a/src/common/components/Screenfull/index.vue b/src/common/components/Screenfull/index.vue new file mode 100644 index 0000000..b8cecb7 --- /dev/null +++ b/src/common/components/Screenfull/index.vue @@ -0,0 +1,111 @@ + + + + + diff --git a/src/common/components/SearchMenu/Footer.vue b/src/common/components/SearchMenu/Footer.vue new file mode 100644 index 0000000..f8eeeb9 --- /dev/null +++ b/src/common/components/SearchMenu/Footer.vue @@ -0,0 +1,54 @@ + + + + + diff --git a/src/common/components/SearchMenu/Modal.vue b/src/common/components/SearchMenu/Modal.vue new file mode 100644 index 0000000..3fbd0d0 --- /dev/null +++ b/src/common/components/SearchMenu/Modal.vue @@ -0,0 +1,199 @@ + + + + + diff --git a/src/common/components/SearchMenu/Result.vue b/src/common/components/SearchMenu/Result.vue new file mode 100644 index 0000000..3bdfda8 --- /dev/null +++ b/src/common/components/SearchMenu/Result.vue @@ -0,0 +1,114 @@ + + + + + diff --git a/src/common/components/SearchMenu/index.vue b/src/common/components/SearchMenu/index.vue new file mode 100644 index 0000000..2f42e80 --- /dev/null +++ b/src/common/components/SearchMenu/index.vue @@ -0,0 +1,29 @@ + + + + + diff --git a/src/common/components/ThemeSwitch/index.vue b/src/common/components/ThemeSwitch/index.vue new file mode 100644 index 0000000..c910b4f --- /dev/null +++ b/src/common/components/ThemeSwitch/index.vue @@ -0,0 +1,30 @@ + + + diff --git a/src/common/composables/useDevice.ts b/src/common/composables/useDevice.ts new file mode 100644 index 0000000..8966cc3 --- /dev/null +++ b/src/common/composables/useDevice.ts @@ -0,0 +1,13 @@ +import { DeviceEnum } from "@@/constants/app-key" +import { useAppStore } from "@/pinia/stores/app" + +const appStore = useAppStore() + +const isMobile = computed(() => appStore.device === DeviceEnum.Mobile) + +const isDesktop = computed(() => appStore.device === DeviceEnum.Desktop) + +/** 设备类型 Composable */ +export function useDevice() { + return { isMobile, isDesktop } +} diff --git a/src/common/composables/useFetchSelect.ts b/src/common/composables/useFetchSelect.ts new file mode 100644 index 0000000..7065417 --- /dev/null +++ b/src/common/composables/useFetchSelect.ts @@ -0,0 +1,44 @@ +type OptionValue = string | number + +/** Select 需要的数据格式 */ +interface SelectOption { + value: OptionValue + label: string + disabled?: boolean +} + +/** 接口响应格式 */ +type ApiData = ApiResponseData + +/** 入参格式,暂时只需要传递 api 函数即可 */ +interface FetchSelectProps { + api: () => Promise +} + +/** 下拉选择器 Composable */ +export function useFetchSelect(props: FetchSelectProps) { + const { api } = props + + const loading = ref(false) + + const options = ref([]) + + const value = ref("") + + // 调用接口获取数据 + const loadData = () => { + loading.value = true + options.value = [] + api().then((res) => { + options.value = res.data + }).finally(() => { + loading.value = false + }) + } + + onMounted(() => { + loadData() + }) + + return { loading, options, value } +} diff --git a/src/common/composables/useFullscreenLoading.ts b/src/common/composables/useFullscreenLoading.ts new file mode 100644 index 0000000..f5671a6 --- /dev/null +++ b/src/common/composables/useFullscreenLoading.ts @@ -0,0 +1,36 @@ +import type { LoadingOptions } from "element-plus" + +interface UseFullscreenLoading { + ) => ReturnType>( + fn: T, + options?: LoadingOptions + ): (...args: Parameters) => Promise> +} + +interface LoadingInstance { + close: () => void +} + +const DEFAULT_OPTIONS = { + lock: true, + text: "加载中..." +} + +/** + * @name 全屏加载 Composable + * @description 传入一个函数 fn,在它执行周期内,加上「全屏」Loading + * @param fn 要执行的函数 + * @param options LoadingOptions + * @returns 返回一个新的函数,该函数返回一个 Promise + */ +export const useFullscreenLoading: UseFullscreenLoading = (fn, options = {}) => { + let loadingInstance: LoadingInstance + return async (...args) => { + try { + loadingInstance = ElLoading.service({ ...DEFAULT_OPTIONS, ...options }) + return await fn(...args) + } finally { + loadingInstance.close() + } + } +} diff --git a/src/common/composables/useGreyAndColorWeakness.ts b/src/common/composables/useGreyAndColorWeakness.ts new file mode 100644 index 0000000..615dfd8 --- /dev/null +++ b/src/common/composables/useGreyAndColorWeakness.ts @@ -0,0 +1,21 @@ +import { useSettingsStore } from "@/pinia/stores/settings" + +const GREY_MODE = "grey-mode" + +const COLOR_WEAKNESS = "color-weakness" + +const classList = document.documentElement.classList + +/** 初始化 */ +function initGreyAndColorWeakness() { + const settingsStore = useSettingsStore() + watchEffect(() => { + classList.toggle(GREY_MODE, settingsStore.showGreyMode) + classList.toggle(COLOR_WEAKNESS, settingsStore.showColorWeakness) + }) +} + +/** 灰色模式和色弱模式 Composable */ +export function useGreyAndColorWeakness() { + return { initGreyAndColorWeakness } +} diff --git a/src/common/composables/useLayoutMode.ts b/src/common/composables/useLayoutMode.ts new file mode 100644 index 0000000..e2edd77 --- /dev/null +++ b/src/common/composables/useLayoutMode.ts @@ -0,0 +1,19 @@ +import { LayoutModeEnum } from "@@/constants/app-key" +import { useSettingsStore } from "@/pinia/stores/settings" + +const settingsStore = useSettingsStore() + +const isLeft = computed(() => settingsStore.layoutMode === LayoutModeEnum.Left) + +const isTop = computed(() => settingsStore.layoutMode === LayoutModeEnum.Top) + +const isLeftTop = computed(() => settingsStore.layoutMode === LayoutModeEnum.LeftTop) + +function setLayoutMode(mode: LayoutModeEnum) { + settingsStore.layoutMode = mode +} + +/** 布局模式 Composable */ +export function useLayoutMode() { + return { isLeft, isTop, isLeftTop, setLayoutMode } +} diff --git a/src/common/composables/usePagination.ts b/src/common/composables/usePagination.ts new file mode 100644 index 0000000..c13d8ef --- /dev/null +++ b/src/common/composables/usePagination.ts @@ -0,0 +1,62 @@ +import type { WatchOptions } from "vue" + +interface PaginationData { + total?: number + currentPage?: number + pageSizes?: number[] + pageSize?: number + layout?: string +} + +interface UsePaginationOptions extends PaginationData { + callback?: () => void +} + +/** 默认的分页参数 */ +const DEFAULT_PAGINATION_DATA = { + currentPage: 1, + pageSize: 10, + pageSizes: [10, 20, 50], + total: 0, + layout: "total, sizes, prev, pager, next, jumper" +} + +/** 分页 Composable */ +export function usePagination(options: UsePaginationOptions = {}) { + const { callback, ...initPaginationData } = options + + // 合并分页参数 + const paginationData = reactive({ ...DEFAULT_PAGINATION_DATA, ...initPaginationData }) + + // 改变当前页码 + const handleCurrentChange = (value: number) => { + paginationData.currentPage = value + } + + // 改变每页显示条数 + const handleSizeChange = (value: number) => { + paginationData.pageSize = value + } + + // 重置当前页码,已在第一页时直接执行回调 + const resetCurrentPage = () => { + paginationData.currentPage === 1 ? callback?.() : (paginationData.currentPage = 1) + } + + // 监听分页参数变化,并执行回调 + const watchPagination = (options: WatchOptions = { immediate: true }) => { + watch( + [() => paginationData.currentPage, () => paginationData.pageSize], + () => callback?.(), + options + ) + } + + return { + paginationData, + handleCurrentChange, + handleSizeChange, + resetCurrentPage, + watchPagination + } +} diff --git a/src/common/composables/usePany.ts b/src/common/composables/usePany.ts new file mode 100644 index 0000000..8dac8d2 --- /dev/null +++ b/src/common/composables/usePany.ts @@ -0,0 +1,61 @@ +function initStarNotification() { + setTimeout(() => { + ElNotification({ + title: "为爱发电!", + type: "success", + message: h( + "div", + null, + [ + h("div", null, "所有源码均免费开源,如果对你有帮助,欢迎点个 Star 支持一下!"), + h("a", { style: "color: teal", target: "_blank", href: "https://github.com/un-pany/v3-admin-vite" }, "点击传送") + ] + ), + duration: 0, + position: "bottom-right" + }) + }, 0) +} + +function initStoreNotification() { + setTimeout(() => { + ElNotification({ + title: "懒人服务?", + type: "warning", + message: h( + "div", + null, + [ + h("div", null, "不想自己动手,但想移除 TS 或其他模块?也有懒人套餐!"), + h("a", { style: "color: teal", target: "_blank", href: "https://github.com/un-pany/v3-admin-vite/issues/225" }, "点击获取") + ] + ), + duration: 0, + position: "bottom-right" + }) + }, 500) +} + +function initMobileNotification() { + setTimeout(() => { + ElNotification({ + title: "移动端", + type: "primary", + message: h( + "div", + null, + [ + h("div", null, "如果你有移动端 H5 需求,试试新的开源模板 MobVue"), + h("a", { style: "color: teal", target: "_blank", href: "https://github.com/un-pany/mobvue" }, "点击查看") + ] + ), + duration: 0, + position: "bottom-right" + }) + }, 1000) +} + +/** 作者的小心思 */ +export function usePany() { + return { initStarNotification, initStoreNotification, initMobileNotification } +} diff --git a/src/common/composables/useRouteListener.ts b/src/common/composables/useRouteListener.ts new file mode 100644 index 0000000..82b5ac3 --- /dev/null +++ b/src/common/composables/useRouteListener.ts @@ -0,0 +1,52 @@ +import type { Handler } from "mitt" +import type { RouteLocationNormalizedGeneric } from "vue-router" +import mitt from "mitt" + +/** 回调函数的类型 */ +type Callback = (route: RouteLocationNormalizedGeneric) => void + +const emitter = mitt() + +const key = Symbol("ROUTE_CHANGE") + +let latestRoute: RouteLocationNormalizedGeneric + +/** 设置最新的路由信息,触发路由变化事件 */ +export function setRouteChange(to: RouteLocationNormalizedGeneric) { + // 触发事件 + emitter.emit(key, to) + // 缓存最新的路由信息 + latestRoute = to +} + +/** + * @name 订阅路由变化 Composable + * @description 1. 单独用 watch 监听路由会浪费渲染性能 + * @description 2. 可优先选择使用该发布订阅模式去进行分发管理 + */ +export function useRouteListener() { + // 回调函数集合 + const callbackList: Callback[] = [] + + // 监听路由变化(可以选择立即执行) + const listenerRouteChange = (callback: Callback, immediate = false) => { + // 缓存回调函数 + callbackList.push(callback) + // 监听事件 + emitter.on(key, callback as Handler) + // 可以选择立即执行一次回调函数 + immediate && latestRoute && callback(latestRoute) + } + + // 移除路由变化事件监听器 + const removeRouteListener = (callback: Callback) => { + emitter.off(key, callback as Handler) + } + + // 组件销毁前移除监听器 + onBeforeUnmount(() => { + callbackList.forEach(removeRouteListener) + }) + + return { listenerRouteChange, removeRouteListener } +} diff --git a/src/common/composables/useTheme.ts b/src/common/composables/useTheme.ts new file mode 100644 index 0000000..5992a9a --- /dev/null +++ b/src/common/composables/useTheme.ts @@ -0,0 +1,75 @@ +import { setCssVar } from "@@/utils/css" +import { getActiveThemeName, setActiveThemeName } from "@@/utils/local-storage" + +const DEFAULT_THEME_NAME = "normal" + +type DefaultThemeName = typeof DEFAULT_THEME_NAME + +/** 注册的主题名称, 其中 DefaultThemeName 是必填的 */ +export type ThemeName = DefaultThemeName | "dark" | "dark-blue" + +interface ThemeList { + title: string + name: ThemeName +} + +/** 主题列表 */ +const themeList: ThemeList[] = [ + { + title: "默认", + name: DEFAULT_THEME_NAME + }, + { + title: "黑暗", + name: "dark" + }, + { + title: "深蓝", + name: "dark-blue" + } +] + +/** 正在应用的主题名称 */ +const activeThemeName = ref(getActiveThemeName() || DEFAULT_THEME_NAME) + +/** 设置主题 */ +function setTheme({ clientX, clientY }: MouseEvent, value: ThemeName) { + const maxRadius = Math.hypot( + Math.max(clientX, window.innerWidth - clientX), + Math.max(clientY, window.innerHeight - clientY) + ) + setCssVar("--v3-theme-x", `${clientX}px`) + setCssVar("--v3-theme-y", `${clientY}px`) + setCssVar("--v3-theme-r", `${maxRadius}px`) + const handler = () => { + activeThemeName.value = value + } + document.startViewTransition ? document.startViewTransition(handler) : handler() +} + +/** 在 html 根元素上挂载 class */ +function addHtmlClass(value: ThemeName) { + document.documentElement.classList.add(value) +} + +/** 在 html 根元素上移除其他主题 class */ +function removeHtmlClass(value: ThemeName) { + const otherThemeNameList = themeList.map(item => item.name).filter(name => name !== value) + document.documentElement.classList.remove(...otherThemeNameList) +} + +/** 初始化 */ +function initTheme() { + // watchEffect 来收集副作用 + watchEffect(() => { + const value = activeThemeName.value + removeHtmlClass(value) + addHtmlClass(value) + setActiveThemeName(value) + }) +} + +/** 主题 Composable */ +export function useTheme() { + return { themeList, activeThemeName, initTheme, setTheme } +} diff --git a/src/common/composables/useTitle.ts b/src/common/composables/useTitle.ts new file mode 100644 index 0000000..1305363 --- /dev/null +++ b/src/common/composables/useTitle.ts @@ -0,0 +1,22 @@ +/** 项目标题 */ +const VITE_APP_TITLE = import.meta.env.VITE_APP_TITLE ?? "V3 Admin Vite" + +/** 动态标题 */ +const dynamicTitle = ref("") + +/** 设置标题 */ +function setTitle(title?: string) { + dynamicTitle.value = title ? `${VITE_APP_TITLE} | ${title}` : VITE_APP_TITLE +} + +// 监听标题变化 +watch(dynamicTitle, (value, oldValue) => { + if (document && value !== oldValue) { + document.title = value + } +}) + +/** 标题 Composable */ +export function useTitle() { + return { setTitle } +} diff --git a/src/common/composables/useWatermark.ts b/src/common/composables/useWatermark.ts new file mode 100644 index 0000000..0fb1293 --- /dev/null +++ b/src/common/composables/useWatermark.ts @@ -0,0 +1,236 @@ +import type { Ref } from "vue" +import { debounce } from "lodash-es" + +/** 默认配置 */ +const DEFAULT_CONFIG = { + /** 防御(默认开启,能防御水印被删除或隐藏,但可能会有性能损耗) */ + defense: true, + /** 文本颜色 */ + color: "#c0c4cc", + /** 文本透明度 */ + opacity: 0.5, + /** 文本字体大小 */ + size: 16, + /** 文本字体 */ + family: "serif", + /** 文本倾斜角度 */ + angle: -20, + /** 一处水印所占宽度(数值越大水印密度越低) */ + width: 300, + /** 一处水印所占高度(数值越大水印密度越低) */ + height: 200 +} + +type DefaultConfig = typeof DEFAULT_CONFIG + +interface Observer { + watermarkElMutationObserver?: MutationObserver + parentElMutationObserver?: MutationObserver + parentElResizeObserver?: ResizeObserver +} + +/** body 元素 */ +const bodyEl = ref(document.body) + +/** + * @name 水印 Composable + * @description 1. 可以选择传入挂载水印的容器元素,默认是 body + * @description 2. 做了水印防御,能有效防御别人打开控制台删除或隐藏水印 + */ +export function useWatermark(parentEl: Ref = bodyEl) { + // 备份文本 + let backupText: string + + // 最终配置 + let mergeConfig: DefaultConfig + + // 水印元素 + let watermarkEl: HTMLElement | null = null + + // 观察器 + const observer: Observer = { + watermarkElMutationObserver: undefined, + parentElMutationObserver: undefined, + parentElResizeObserver: undefined + } + + // 设置水印 + const setWatermark = (text: string, config: Partial = {}) => { + if (!parentEl.value) return console.warn("请在 DOM 挂载完成后再调用 setWatermark 方法设置水印") + // 备份文本 + backupText = text + // 合并配置 + mergeConfig = { ...DEFAULT_CONFIG, ...config } + // 创建或更新水印元素 + watermarkEl ? updateWatermarkEl() : createWatermarkEl() + // 监听水印元素和容器元素的变化 + addElListener(parentEl.value) + } + + // 创建水印元素 + const createWatermarkEl = () => { + const isBody = parentEl.value!.tagName.toLowerCase() === bodyEl.value.tagName.toLowerCase() + const watermarkElPosition = isBody ? "fixed" : "absolute" + const parentElPosition = isBody ? "" : "relative" + watermarkEl = document.createElement("div") + watermarkEl.style.pointerEvents = "none" + watermarkEl.style.top = "0" + watermarkEl.style.left = "0" + watermarkEl.style.position = watermarkElPosition + watermarkEl.style.zIndex = "99999" + const { clientWidth, clientHeight } = parentEl.value! + updateWatermarkEl({ width: clientWidth, height: clientHeight }) + // 设置水印容器为相对定位 + parentEl.value!.style.position = parentElPosition + // 将水印元素添加到水印容器中 + parentEl.value!.appendChild(watermarkEl) + } + + // 更新水印元素 + const updateWatermarkEl = ( + options: Partial<{ + width: number + height: number + }> = {} + ) => { + if (!watermarkEl) return + backupText && (watermarkEl.style.background = `url(${createBase64()}) left top repeat`) + options.width && (watermarkEl.style.width = `${options.width}px`) + options.height && (watermarkEl.style.height = `${options.height}px`) + } + + // 创建 base64 图片 + const createBase64 = () => { + const { color, opacity, size, family, angle, width, height } = mergeConfig + const canvasEl = document.createElement("canvas") + canvasEl.width = width + canvasEl.height = height + const ctx = canvasEl.getContext("2d") + if (ctx) { + ctx.fillStyle = color + ctx.globalAlpha = opacity + ctx.font = `${size}px ${family}` + ctx.rotate((Math.PI / 180) * angle) + ctx.fillText(backupText, 0, height / 2) + } + return canvasEl.toDataURL() + } + + // 清除水印 + const clearWatermark = () => { + if (!parentEl.value || !watermarkEl) return + // 移除对水印元素和容器元素的监听 + removeListener() + // 移除水印元素 + try { + parentEl.value.removeChild(watermarkEl) + } catch { + // 比如在无防御情况下,用户打开控制台删除了这个元素 + console.warn("水印元素已不存在,请重新创建") + } finally { + watermarkEl = null + } + } + + // 刷新水印(防御时调用) + const updateWatermark = debounce(() => { + clearWatermark() + createWatermarkEl() + addElListener(parentEl.value!) + }, 100) + + // 监听水印元素和容器元素的变化(DOM 变化 & DOM 大小变化) + const addElListener = (targetNode: HTMLElement) => { + // 判断是否开启防御 + if (mergeConfig.defense) { + // 防止重复添加监听 + if (!observer.watermarkElMutationObserver && !observer.parentElMutationObserver) { + // 监听 DOM 变化 + addMutationListener(targetNode) + } + } else { + // 无防御时不需要 mutation 监听 + removeListener("mutation") + } + // 防止重复添加监听 + if (!observer.parentElResizeObserver) { + // 监听 DOM 大小变化 + addResizeListener(targetNode) + } + } + + // 移除对水印元素和容器元素的监听,传参可指定要移除哪个监听,不传默认移除全部监听 + const removeListener = (kind: "mutation" | "resize" | "all" = "all") => { + // 移除 mutation 监听 + if (kind === "mutation" || kind === "all") { + observer.watermarkElMutationObserver?.disconnect() + observer.watermarkElMutationObserver = undefined + observer.parentElMutationObserver?.disconnect() + observer.parentElMutationObserver = undefined + } + // 移除 resize 监听 + if (kind === "resize" || kind === "all") { + observer.parentElResizeObserver?.disconnect() + observer.parentElResizeObserver = undefined + } + } + + // 监听 DOM 变化 + const addMutationListener = (targetNode: HTMLElement) => { + // 当观察到变动时执行的回调 + const mutationCallback = debounce((mutationList: MutationRecord[]) => { + // 水印的防御(防止用户手动删除水印元素或通过 CSS 隐藏水印) + mutationList.forEach( + debounce((mutation: MutationRecord) => { + switch (mutation.type) { + case "attributes": + mutation.target === watermarkEl && updateWatermark() + break + case "childList": + mutation.removedNodes.forEach((item) => { + item === watermarkEl && targetNode.appendChild(watermarkEl) + }) + break + } + }, 100) + ) + }, 100) + // 创建观察器实例并传入回调 + observer.watermarkElMutationObserver = new MutationObserver(mutationCallback) + observer.parentElMutationObserver = new MutationObserver(mutationCallback) + // 以上述配置开始观察目标节点 + observer.watermarkElMutationObserver.observe(watermarkEl!, { + // 观察目标节点属性是否变动,默认为 true + attributes: true, + // 观察目标子节点是否有添加或者删除,默认为 false + childList: false, + // 是否拓展到观察所有后代节点,默认为 false + subtree: false + }) + observer.parentElMutationObserver.observe(targetNode, { + attributes: false, + childList: true, + subtree: false + }) + } + + // 监听 DOM 大小变化 + const addResizeListener = (targetNode: HTMLElement) => { + // 当 targetNode 元素大小变化时去更新整个水印的大小 + const resizeCallback = debounce(() => { + const { clientWidth, clientHeight } = targetNode + updateWatermarkEl({ width: clientWidth, height: clientHeight }) + }, 500) + // 创建一个观察器实例并传入回调 + observer.parentElResizeObserver = new ResizeObserver(resizeCallback) + // 开始观察目标节点 + observer.parentElResizeObserver.observe(targetNode) + } + + // 在组件卸载前移除水印以及各种监听 + onBeforeUnmount(() => { + clearWatermark() + }) + + return { setWatermark, clearWatermark } +} diff --git a/src/common/constants/app-key.ts b/src/common/constants/app-key.ts new file mode 100644 index 0000000..cd5d7b9 --- /dev/null +++ b/src/common/constants/app-key.ts @@ -0,0 +1,22 @@ +/** 设备类型 */ +export enum DeviceEnum { + Mobile, + Desktop +} + +/** 布局模式 */ +export enum LayoutModeEnum { + Left = "left", + Top = "top", + LeftTop = "left-top" +} + +/** 侧边栏打开状态常量 */ +export const SIDEBAR_OPENED = "opened" + +/** 侧边栏关闭状态常量 */ +export const SIDEBAR_CLOSED = "closed" + +export type SidebarOpened = typeof SIDEBAR_OPENED + +export type SidebarClosed = typeof SIDEBAR_CLOSED diff --git a/src/common/constants/cache-key.ts b/src/common/constants/cache-key.ts new file mode 100644 index 0000000..8b6fc64 --- /dev/null +++ b/src/common/constants/cache-key.ts @@ -0,0 +1,11 @@ +const SYSTEM_NAME = "v3-admin-vite" + +/** 缓存数据时用到的 Key */ +export class CacheKey { + static readonly TOKEN = `${SYSTEM_NAME}-token-key` + static readonly CONFIG_LAYOUT = `${SYSTEM_NAME}-config-layout-key` + static readonly SIDEBAR_STATUS = `${SYSTEM_NAME}-sidebar-status-key` + static readonly ACTIVE_THEME_NAME = `${SYSTEM_NAME}-active-theme-name-key` + static readonly VISITED_VIEWS = `${SYSTEM_NAME}-visited-views-key` + static readonly CACHED_VIEWS = `${SYSTEM_NAME}-cached-views-key` +} diff --git a/src/common/utils/css.ts b/src/common/utils/css.ts new file mode 100644 index 0000000..b5b3c64 --- /dev/null +++ b/src/common/utils/css.ts @@ -0,0 +1,18 @@ +/** 获取指定元素(默认全局)上的 CSS 变量的值 */ +export function getCssVar(varName: string, element: HTMLElement = document.documentElement) { + if (!varName?.startsWith("--")) { + console.error("CSS 变量名应以 '--' 开头") + return "" + } + // 没有拿到值时,会返回空串 + return getComputedStyle(element).getPropertyValue(varName) +} + +/** 设置指定元素(默认全局)上的 CSS 变量的值 */ +export function setCssVar(varName: string, value: string, element: HTMLElement = document.documentElement) { + if (!varName?.startsWith("--")) { + console.error("CSS 变量名应以 '--' 开头") + return + } + element.style.setProperty(varName, value) +} diff --git a/src/common/utils/datetime.ts b/src/common/utils/datetime.ts new file mode 100644 index 0000000..5c71f9b --- /dev/null +++ b/src/common/utils/datetime.ts @@ -0,0 +1,9 @@ +import dayjs from "dayjs" + +const INVALID_DATE = "N/A" + +/** 格式化日期时间 */ +export function formatDateTime(datetime: string | number | Date = "", template: string = "YYYY-MM-DD HH:mm:ss") { + const day = dayjs(datetime) + return day.isValid() ? day.format(template) : INVALID_DATE +} diff --git a/src/common/utils/local-storage.ts b/src/common/utils/local-storage.ts new file mode 100644 index 0000000..3e7b543 --- /dev/null +++ b/src/common/utils/local-storage.ts @@ -0,0 +1,81 @@ +// 统一处理 localStorage + +import type { ThemeName } from "@@/composables/useTheme" +import type { SidebarClosed, SidebarOpened } from "@@/constants/app-key" +import type { LayoutsConfig } from "@/layouts/config" +import type { TagView } from "@/pinia/stores/tags-view" +import { CacheKey } from "@@/constants/cache-key" + +// #region Token +export function getToken() { + return localStorage.getItem(CacheKey.TOKEN) +} + +export function setToken(token: string) { + localStorage.setItem(CacheKey.TOKEN, token) +} + +export function removeToken() { + localStorage.removeItem(CacheKey.TOKEN) +} +// #endregion + +// #region 系统布局配置 +export function getLayoutsConfig() { + const json = localStorage.getItem(CacheKey.CONFIG_LAYOUT) + return json ? (JSON.parse(json) as LayoutsConfig) : null +} + +export function setLayoutsConfig(settings: LayoutsConfig) { + localStorage.setItem(CacheKey.CONFIG_LAYOUT, JSON.stringify(settings)) +} + +export function removeLayoutsConfig() { + localStorage.removeItem(CacheKey.CONFIG_LAYOUT) +} +// #endregion + +// #region 侧边栏状态 +export function getSidebarStatus() { + return localStorage.getItem(CacheKey.SIDEBAR_STATUS) +} + +export function setSidebarStatus(sidebarStatus: SidebarOpened | SidebarClosed) { + localStorage.setItem(CacheKey.SIDEBAR_STATUS, sidebarStatus) +} +// #endregion + +// #region 正在应用的主题名称 +export function getActiveThemeName() { + return localStorage.getItem(CacheKey.ACTIVE_THEME_NAME) as ThemeName | null +} + +export function setActiveThemeName(themeName: ThemeName) { + localStorage.setItem(CacheKey.ACTIVE_THEME_NAME, themeName) +} +// #endregion + +// #region 标签栏 +export function getVisitedViews() { + const json = localStorage.getItem(CacheKey.VISITED_VIEWS) + return JSON.parse(json ?? "[]") as TagView[] +} + +export function setVisitedViews(views: TagView[]) { + views.forEach((view) => { + // 删除不必要的属性,防止 JSON.stringify 处理到循环引用 + delete view.matched + delete view.redirectedFrom + }) + localStorage.setItem(CacheKey.VISITED_VIEWS, JSON.stringify(views)) +} + +export function getCachedViews() { + const json = localStorage.getItem(CacheKey.CACHED_VIEWS) + return JSON.parse(json ?? "[]") as string[] +} + +export function setCachedViews(views: string[]) { + localStorage.setItem(CacheKey.CACHED_VIEWS, JSON.stringify(views)) +} +// #endregion diff --git a/src/common/utils/permission.ts b/src/common/utils/permission.ts new file mode 100644 index 0000000..c4ccbca --- /dev/null +++ b/src/common/utils/permission.ts @@ -0,0 +1,13 @@ +import { isArray } from "@@/utils/validate" +import { useUserStore } from "@/pinia/stores/user" + +/** 全局权限判断函数,和权限指令 v-permission 功能类似 */ +export function checkPermission(rolesOrPermissions: string[]): boolean { + if (isArray(rolesOrPermissions) && rolesOrPermissions.length > 0) { + const { roles, permissions } = useUserStore() + return roles.some(role => rolesOrPermissions.includes(role)) || permissions.some(permission => rolesOrPermissions.includes(permission)) + } else { + console.error("参数必须是一个数组且长度大于 0,参考:checkPermission(['admin', 'permission:button-level'])") + return false + } +} diff --git a/src/common/utils/validate.ts b/src/common/utils/validate.ts new file mode 100644 index 0000000..47c7f5f --- /dev/null +++ b/src/common/utils/validate.ts @@ -0,0 +1,15 @@ +/** 判断是否为数组 */ +export function isArray(arg: T) { + return Array.isArray ? Array.isArray(arg) : Object.prototype.toString.call(arg) === "[object Array]" +} + +/** 判断是否为字符串 */ +export function isString(str: unknown) { + return typeof str === "string" || str instanceof String +} + +/** 判断是否为外链 */ +export function isExternal(path: string) { + const reg = /^(https?:|mailto:|tel:)/ + return reg.test(path) +} diff --git a/src/http/axios.ts b/src/http/axios.ts new file mode 100644 index 0000000..7428fa8 --- /dev/null +++ b/src/http/axios.ts @@ -0,0 +1,125 @@ +import type { AxiosInstance, AxiosRequestConfig } from "axios" +import { getToken } from "@@/utils/local-storage" +import axios from "axios" +import { get, merge } from "lodash-es" +import { useUserStore } from "@/pinia/stores/user" + +/** 创建请求实例 */ +function createInstance() { + // 创建一个 axios 实例命名为 instance + const instance = axios.create() + // 请求拦截器 + instance.interceptors.request.use( + // 发送之前 + config => config, + // 发送失败 + error => Promise.reject(error) + ) + // 响应拦截器(可根据具体业务作出相应的调整) + instance.interceptors.response.use( + (response) => { + // apiData 是 api 返回的数据 + const apiData = response.data + // 二进制数据则直接返回 + const responseType = response.config.responseType + if (responseType === "blob" || responseType === "arraybuffer") return apiData + // 这个 code 是和后端约定的业务 code + const code = apiData.code + // 如果没有 code, 代表这不是项目后端开发的 api + if (code === undefined) { + ElMessage.error("非本系统的接口") + return Promise.reject(new Error("非本系统的接口")) + } + switch (code) { + case 0: + // 本系统采用 code === 0 来表示没有业务错误 + return apiData + case 401: + // Token 过期时 + return useUserStore().logout() + default: + // 不是正确的 code + ElMessage.error(apiData.message || "Error") + return Promise.reject(apiData) + } + }, + (error) => { + // status 是 HTTP 状态码 + const status = get(error, "response.status") + const message = get(error, "response.data.message") + switch (status) { + case 400: + error.message = "请求错误" + break + case 401: + // Token 过期时 + error.message = message || "未授权" + useUserStore().logout() + break + case 403: + error.message = message || "拒绝访问" + break + case 404: + error.message = "请求地址出错" + break + case 408: + error.message = "请求超时" + break + case 500: + error.message = "服务器内部错误" + break + case 501: + error.message = "服务未实现" + break + case 502: + error.message = "网关错误" + break + case 503: + error.message = "服务不可用" + break + case 504: + error.message = "网关超时" + break + case 505: + error.message = "HTTP 版本不受支持" + break + } + ElMessage.error(error.message) + return Promise.reject(error) + } + ) + return instance +} + +/** 创建请求方法 */ +function createRequest(instance: AxiosInstance) { + return (config: AxiosRequestConfig): Promise => { + const token = getToken() + // 默认配置 + const defaultConfig: AxiosRequestConfig = { + // 接口地址 + baseURL: import.meta.env.VITE_BASE_URL, + // 请求头 + headers: { + // 携带 Token + "Authorization": token ? `Bearer ${token}` : undefined, + "Content-Type": "application/json" + }, + // 请求体 + data: {}, + // 请求超时 + timeout: 5000, + // 跨域请求时是否携带 Cookies + withCredentials: false + } + // 将默认配置 defaultConfig 和传入的自定义配置 config 进行合并成为 mergeConfig + const mergeConfig = merge(defaultConfig, config) + return instance(mergeConfig) + } +} + +/** 用于请求的实例 */ +const instance = createInstance() + +/** 用于请求的方法 */ +export const request = createRequest(instance) diff --git a/src/layouts/components/AppMain/index.vue b/src/layouts/components/AppMain/index.vue new file mode 100644 index 0000000..ba2d2b1 --- /dev/null +++ b/src/layouts/components/AppMain/index.vue @@ -0,0 +1,50 @@ + + + + + diff --git a/src/layouts/components/Breadcrumb/index.vue b/src/layouts/components/Breadcrumb/index.vue new file mode 100644 index 0000000..5d9ba40 --- /dev/null +++ b/src/layouts/components/Breadcrumb/index.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/src/layouts/components/Footer/index.vue b/src/layouts/components/Footer/index.vue new file mode 100644 index 0000000..cf7543a --- /dev/null +++ b/src/layouts/components/Footer/index.vue @@ -0,0 +1,20 @@ + + + + + diff --git a/src/layouts/components/Hamburger/index.vue b/src/layouts/components/Hamburger/index.vue new file mode 100644 index 0000000..33e5668 --- /dev/null +++ b/src/layouts/components/Hamburger/index.vue @@ -0,0 +1,32 @@ + + + + + diff --git a/src/layouts/components/Logo/index.vue b/src/layouts/components/Logo/index.vue new file mode 100644 index 0000000..f70bbeb --- /dev/null +++ b/src/layouts/components/Logo/index.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/src/layouts/components/NavigationBar/index.vue b/src/layouts/components/NavigationBar/index.vue new file mode 100644 index 0000000..db4d1bf --- /dev/null +++ b/src/layouts/components/NavigationBar/index.vue @@ -0,0 +1,134 @@ + + + + + diff --git a/src/layouts/components/RightPanel/index.vue b/src/layouts/components/RightPanel/index.vue new file mode 100644 index 0000000..2055f7c --- /dev/null +++ b/src/layouts/components/RightPanel/index.vue @@ -0,0 +1,35 @@ + + + + + diff --git a/src/layouts/components/Settings/SelectLayoutMode.vue b/src/layouts/components/Settings/SelectLayoutMode.vue new file mode 100644 index 0000000..37322fb --- /dev/null +++ b/src/layouts/components/Settings/SelectLayoutMode.vue @@ -0,0 +1,103 @@ + + + + + diff --git a/src/layouts/components/Settings/index.vue b/src/layouts/components/Settings/index.vue new file mode 100644 index 0000000..6069fa8 --- /dev/null +++ b/src/layouts/components/Settings/index.vue @@ -0,0 +1,93 @@ + + + + + diff --git a/src/layouts/components/Sidebar/Item.vue b/src/layouts/components/Sidebar/Item.vue new file mode 100644 index 0000000..014b585 --- /dev/null +++ b/src/layouts/components/Sidebar/Item.vue @@ -0,0 +1,96 @@ + + + + + diff --git a/src/layouts/components/Sidebar/Link.vue b/src/layouts/components/Sidebar/Link.vue new file mode 100644 index 0000000..f9907dc --- /dev/null +++ b/src/layouts/components/Sidebar/Link.vue @@ -0,0 +1,18 @@ + + + diff --git a/src/layouts/components/Sidebar/index.vue b/src/layouts/components/Sidebar/index.vue new file mode 100644 index 0000000..be1ad04 --- /dev/null +++ b/src/layouts/components/Sidebar/index.vue @@ -0,0 +1,150 @@ + + + + + diff --git a/src/layouts/components/TagsView/ScrollPane.vue b/src/layouts/components/TagsView/ScrollPane.vue new file mode 100644 index 0000000..5293490 --- /dev/null +++ b/src/layouts/components/TagsView/ScrollPane.vue @@ -0,0 +1,165 @@ + + + + + diff --git a/src/layouts/components/TagsView/index.vue b/src/layouts/components/TagsView/index.vue new file mode 100644 index 0000000..9f1ecd9 --- /dev/null +++ b/src/layouts/components/TagsView/index.vue @@ -0,0 +1,271 @@ + + + + + diff --git a/src/layouts/components/index.ts b/src/layouts/components/index.ts new file mode 100644 index 0000000..7669934 --- /dev/null +++ b/src/layouts/components/index.ts @@ -0,0 +1,10 @@ +export { default as AppMain } from "./AppMain/index.vue" +export { default as Breadcrumb } from "./Breadcrumb/index.vue" +export { default as Footer } from "./Footer/index.vue" +export { default as Hamburger } from "./Hamburger/index.vue" +export { default as Logo } from "./Logo/index.vue" +export { default as NavigationBar } from "./NavigationBar/index.vue" +export { default as RightPanel } from "./RightPanel/index.vue" +export { default as Settings } from "./Settings/index.vue" +export { default as Sidebar } from "./Sidebar/index.vue" +export { default as TagsView } from "./TagsView/index.vue" diff --git a/src/layouts/composables/useResize.ts b/src/layouts/composables/useResize.ts new file mode 100644 index 0000000..0d7f89d --- /dev/null +++ b/src/layouts/composables/useResize.ts @@ -0,0 +1,56 @@ +import { useRouteListener } from "@@/composables/useRouteListener" +import { DeviceEnum } from "@@/constants/app-key" +import { useAppStore } from "@/pinia/stores/app" + +/** 参考 Bootstrap 的响应式设计将最大移动端宽度设置为 992 */ +const MAX_MOBILE_WIDTH = 992 + +/** + * @name 浏览器宽度变化 Composable + * @description 根据浏览器宽度变化,变换 Layout 布局 + */ +export function useResize() { + const appStore = useAppStore() + + const { listenerRouteChange } = useRouteListener() + + // 用于判断当前设备是否为移动端 + const isMobile = () => { + const rect = document.body.getBoundingClientRect() + return rect.width - 1 < MAX_MOBILE_WIDTH + } + + // 用于处理窗口大小变化事件 + const resizeHandler = () => { + if (!document.hidden) { + const _isMobile = isMobile() + appStore.toggleDevice(_isMobile ? DeviceEnum.Mobile : DeviceEnum.Desktop) + _isMobile && appStore.closeSidebar(true) + } + } + + // 监听路由变化,根据设备类型调整布局 + listenerRouteChange(() => { + if (appStore.device === DeviceEnum.Mobile && appStore.sidebar.opened) { + appStore.closeSidebar(false) + } + }) + + // 在组件挂载前添加窗口大小变化事件监听器 + onBeforeMount(() => { + window.addEventListener("resize", resizeHandler) + }) + + // 在组件挂载后根据窗口大小判断设备类型并调整布局 + onMounted(() => { + if (isMobile()) { + appStore.toggleDevice(DeviceEnum.Mobile) + appStore.closeSidebar(true) + } + }) + + // 在组件卸载前移除窗口大小变化事件监听器 + onBeforeUnmount(() => { + window.removeEventListener("resize", resizeHandler) + }) +} diff --git a/src/layouts/config.ts b/src/layouts/config.ts new file mode 100644 index 0000000..93a678b --- /dev/null +++ b/src/layouts/config.ts @@ -0,0 +1,59 @@ +import { LayoutModeEnum } from "@@/constants/app-key" +import { getLayoutsConfig } from "@@/utils/local-storage" + +/** 项目配置类型 */ +export interface LayoutsConfig { + /** 是否显示设置按钮和面板 */ + showSettings: boolean + /** 布局模式 */ + layoutMode: LayoutModeEnum + /** 是否显示标签栏 */ + showTagsView: boolean + /** 是否显示 Logo */ + showLogo: boolean + /** 是否固定 Header */ + fixedHeader: boolean + /** 是否显示页脚 */ + showFooter: boolean + /** 是否显示消息通知 */ + showNotify: boolean + /** 是否显示切换主题按钮 */ + showThemeSwitch: boolean + /** 是否显示全屏按钮 */ + showScreenfull: boolean + /** 是否显示搜索按钮 */ + showSearchMenu: boolean + /** 是否缓存标签栏 */ + cacheTagsView: boolean + /** 开启系统水印 */ + showWatermark: boolean + /** 是否显示灰色模式 */ + showGreyMode: boolean + /** 是否显示色弱模式 */ + showColorWeakness: boolean +} + +/** 默认配置 */ +const DEFAULT_CONFIG: LayoutsConfig = { + showSettings: true, + layoutMode: LayoutModeEnum.Left, + showTagsView: true, + fixedHeader: true, + showFooter: true, + showLogo: true, + showNotify: true, + showThemeSwitch: true, + showScreenfull: true, + showSearchMenu: true, + cacheTagsView: false, + showWatermark: true, + showGreyMode: false, + showColorWeakness: false +} + +/** 项目配置 */ +export const layoutsConfig: LayoutsConfig = { + ...DEFAULT_CONFIG, + ...getLayoutsConfig(), + showSettings: DEFAULT_CONFIG.showSettings +} diff --git a/src/layouts/index.vue b/src/layouts/index.vue new file mode 100644 index 0000000..8272da5 --- /dev/null +++ b/src/layouts/index.vue @@ -0,0 +1,55 @@ + + + diff --git a/src/layouts/modes/LeftMode.vue b/src/layouts/modes/LeftMode.vue new file mode 100644 index 0000000..b88601e --- /dev/null +++ b/src/layouts/modes/LeftMode.vue @@ -0,0 +1,181 @@ + + + + + diff --git a/src/layouts/modes/LeftTopMode.vue b/src/layouts/modes/LeftTopMode.vue new file mode 100644 index 0000000..3698b40 --- /dev/null +++ b/src/layouts/modes/LeftTopMode.vue @@ -0,0 +1,113 @@ + + + + + diff --git a/src/layouts/modes/TopMode.vue b/src/layouts/modes/TopMode.vue new file mode 100644 index 0000000..12568bf --- /dev/null +++ b/src/layouts/modes/TopMode.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..b43cfa4 --- /dev/null +++ b/src/main.ts @@ -0,0 +1,29 @@ +/* eslint-disable perfectionist/sort-imports */ + +// core +import { pinia } from "@/pinia" +import { router } from "@/router" +import { installPlugins } from "@/plugins" +import App from "@/App.vue" +// css +import "normalize.css" +import "nprogress/nprogress.css" +import "element-plus/dist/index.css" +import "element-plus/theme-chalk/dark/css-vars.css" +import "vxe-table/lib/style.css" +import "@@/assets/styles/index.scss" +import "virtual:uno.css" + +// 创建应用实例 +const app = createApp(App) + +// 安装插件(全局组件、自定义指令等) +installPlugins(app) + +// 安装 pinia 和 router +app.use(pinia).use(router) + +// router 准备就绪后挂载应用 +router.isReady().then(() => { + app.mount("#app") +}) diff --git a/src/pages/dashboard/components/Admin.vue b/src/pages/dashboard/components/Admin.vue new file mode 100644 index 0000000..f204fed --- /dev/null +++ b/src/pages/dashboard/components/Admin.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/src/pages/dashboard/components/Editor.vue b/src/pages/dashboard/components/Editor.vue new file mode 100644 index 0000000..1aaf09b --- /dev/null +++ b/src/pages/dashboard/components/Editor.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/src/pages/dashboard/images/dashboard.svg b/src/pages/dashboard/images/dashboard.svg new file mode 100644 index 0000000..434d465 --- /dev/null +++ b/src/pages/dashboard/images/dashboard.svg @@ -0,0 +1 @@ + diff --git a/src/pages/dashboard/index.vue b/src/pages/dashboard/index.vue new file mode 100644 index 0000000..53728d0 --- /dev/null +++ b/src/pages/dashboard/index.vue @@ -0,0 +1,13 @@ + + + diff --git a/src/pages/demo/composable-demo/apis/use-fetch-select.ts b/src/pages/demo/composable-demo/apis/use-fetch-select.ts new file mode 100644 index 0000000..3dc6f2d --- /dev/null +++ b/src/pages/demo/composable-demo/apis/use-fetch-select.ts @@ -0,0 +1,39 @@ +/** 模拟接口响应数据 */ +const SELECT_RESPONSE_DATA = { + code: 0, + data: [ + { + label: "苹果", + value: 1 + }, + { + label: "香蕉", + value: 2 + }, + { + label: "橘子", + value: 3, + disabled: true + } + ], + message: "获取 Select 数据成功" +} + +const ERROR_MESSAGE = "接口发生错误" + +/** 模拟接口 */ +export function getSelectDataApi() { + return new Promise((resolve, reject) => { + // 模拟接口响应时间 2s + setTimeout(() => { + if (Math.random() < 0.8) { + // 模拟接口调用成功 + resolve(SELECT_RESPONSE_DATA) + } else { + // 模拟接口调用出错 + reject(new Error(ERROR_MESSAGE)) + ElMessage.error(ERROR_MESSAGE) + } + }, 2000) + }) +} diff --git a/src/pages/demo/composable-demo/apis/use-fullscreen-loading.ts b/src/pages/demo/composable-demo/apis/use-fullscreen-loading.ts new file mode 100644 index 0000000..756cd7e --- /dev/null +++ b/src/pages/demo/composable-demo/apis/use-fullscreen-loading.ts @@ -0,0 +1,26 @@ +/** 模拟接口响应数据 */ +const SUCCESS_RESPONSE_DATA = { + code: 0, + data: { + list: [] as number[] + }, + message: "获取成功" +} + +/** 模拟请求接口成功 */ +export function getSuccessApi(list: number[]) { + return new Promise((resolve) => { + setTimeout(() => { + resolve({ ...SUCCESS_RESPONSE_DATA, data: { list } }) + }, 1000) + }) +} + +/** 模拟请求接口失败 */ +export function getErrorApi() { + return new Promise((_resolve, reject) => { + setTimeout(() => { + reject(new Error("发生错误")) + }, 1000) + }) +} diff --git a/src/pages/demo/composable-demo/use-fetch-select.vue b/src/pages/demo/composable-demo/use-fetch-select.vue new file mode 100644 index 0000000..ae13e73 --- /dev/null +++ b/src/pages/demo/composable-demo/use-fetch-select.vue @@ -0,0 +1,37 @@ + + + + + diff --git a/src/pages/demo/composable-demo/use-fullscreen-loading.vue b/src/pages/demo/composable-demo/use-fullscreen-loading.vue new file mode 100644 index 0000000..f375b86 --- /dev/null +++ b/src/pages/demo/composable-demo/use-fullscreen-loading.vue @@ -0,0 +1,67 @@ + + + + + diff --git a/src/pages/demo/composable-demo/use-watermark.vue b/src/pages/demo/composable-demo/use-watermark.vue new file mode 100644 index 0000000..49dc27f --- /dev/null +++ b/src/pages/demo/composable-demo/use-watermark.vue @@ -0,0 +1,67 @@ + + + + + diff --git a/src/pages/demo/element-plus/index.vue b/src/pages/demo/element-plus/index.vue new file mode 100644 index 0000000..f3766ca --- /dev/null +++ b/src/pages/demo/element-plus/index.vue @@ -0,0 +1,275 @@ + + + + + diff --git a/src/pages/demo/level2/index.vue b/src/pages/demo/level2/index.vue new file mode 100644 index 0000000..3018f18 --- /dev/null +++ b/src/pages/demo/level2/index.vue @@ -0,0 +1,30 @@ + + + diff --git a/src/pages/demo/level2/level3/index.vue b/src/pages/demo/level2/level3/index.vue new file mode 100644 index 0000000..a1ad378 --- /dev/null +++ b/src/pages/demo/level2/level3/index.vue @@ -0,0 +1,15 @@ + + + diff --git a/src/pages/demo/permission/button-level.vue b/src/pages/demo/permission/button-level.vue new file mode 100644 index 0000000..ad9f784 --- /dev/null +++ b/src/pages/demo/permission/button-level.vue @@ -0,0 +1,58 @@ + + + + + diff --git a/src/pages/demo/permission/components/SwitchUser.vue b/src/pages/demo/permission/components/SwitchUser.vue new file mode 100644 index 0000000..24228c9 --- /dev/null +++ b/src/pages/demo/permission/components/SwitchUser.vue @@ -0,0 +1,53 @@ + + + + + diff --git a/src/pages/demo/permission/page-level.vue b/src/pages/demo/permission/page-level.vue new file mode 100644 index 0000000..2537c37 --- /dev/null +++ b/src/pages/demo/permission/page-level.vue @@ -0,0 +1,18 @@ + + + + + diff --git a/src/pages/demo/unocss/index.vue b/src/pages/demo/unocss/index.vue new file mode 100644 index 0000000..64b69bf --- /dev/null +++ b/src/pages/demo/unocss/index.vue @@ -0,0 +1,17 @@ + diff --git a/src/pages/demo/vxe-table/index.vue b/src/pages/demo/vxe-table/index.vue new file mode 100644 index 0000000..6d48375 --- /dev/null +++ b/src/pages/demo/vxe-table/index.vue @@ -0,0 +1,451 @@ + + + + + diff --git a/src/pages/error/403.vue b/src/pages/error/403.vue new file mode 100644 index 0000000..db16d5b --- /dev/null +++ b/src/pages/error/403.vue @@ -0,0 +1,10 @@ + + + diff --git a/src/pages/error/404.vue b/src/pages/error/404.vue new file mode 100644 index 0000000..982b6f1 --- /dev/null +++ b/src/pages/error/404.vue @@ -0,0 +1,10 @@ + + + diff --git a/src/pages/error/components/Layout.vue b/src/pages/error/components/Layout.vue new file mode 100644 index 0000000..7039d31 --- /dev/null +++ b/src/pages/error/components/Layout.vue @@ -0,0 +1,26 @@ + + + diff --git a/src/pages/error/images/403.svg b/src/pages/error/images/403.svg new file mode 100644 index 0000000..254dd53 --- /dev/null +++ b/src/pages/error/images/403.svg @@ -0,0 +1 @@ + diff --git a/src/pages/error/images/404.svg b/src/pages/error/images/404.svg new file mode 100644 index 0000000..7813181 --- /dev/null +++ b/src/pages/error/images/404.svg @@ -0,0 +1 @@ + diff --git a/src/pages/login/apis/index.ts b/src/pages/login/apis/index.ts new file mode 100644 index 0000000..3c559a3 --- /dev/null +++ b/src/pages/login/apis/index.ts @@ -0,0 +1,19 @@ +import type * as Auth from "./type" +import { request } from "@/http/axios" + +/** 获取登录验证码 */ +export function getCaptchaApi() { + return request({ + url: "auth/captcha", + method: "get" + }) +} + +/** 登录并返回 Token */ +export function loginApi(data: Auth.LoginRequestData) { + return request({ + url: "auth/login", + method: "post", + data + }) +} diff --git a/src/pages/login/apis/type.ts b/src/pages/login/apis/type.ts new file mode 100644 index 0000000..86c0e2e --- /dev/null +++ b/src/pages/login/apis/type.ts @@ -0,0 +1,12 @@ +export interface LoginRequestData { + /** admin 或 editor */ + username: "admin" | "editor" + /** 密码 */ + password: string + /** 验证码 */ + code: string +} + +export type CaptchaResponseData = ApiResponseData + +export type LoginResponseData = ApiResponseData<{ token: string }> diff --git a/src/pages/login/components/Owl.vue b/src/pages/login/components/Owl.vue new file mode 100644 index 0000000..ca3cf65 --- /dev/null +++ b/src/pages/login/components/Owl.vue @@ -0,0 +1,92 @@ + + + + + diff --git a/src/pages/login/composables/useFocus.ts b/src/pages/login/composables/useFocus.ts new file mode 100644 index 0000000..9167564 --- /dev/null +++ b/src/pages/login/composables/useFocus.ts @@ -0,0 +1,17 @@ +/** 焦点 Composable */ +export function useFocus() { + // 是否有焦点 + const isFocus = ref(false) + + // 失去焦点 + const handleBlur = () => { + isFocus.value = false + } + + // 获取焦点 + const handleFocus = () => { + isFocus.value = true + } + + return { isFocus, handleBlur, handleFocus } +} diff --git a/src/pages/login/images/close-eyes.png b/src/pages/login/images/close-eyes.png new file mode 100644 index 0000000000000000000000000000000000000000..14e483a462f2b6967ee5f39b447b885e1b5cc1b0 GIT binary patch literal 2098 zcmV-22+jA2P)EgMxiCs8&fP&Oq|HYQIrBvCddOfw@lCJ`eS5CH)I1_S~F0s#O3 z000000|EgF1_Tic2p<&;3kL)v7Z7Di9aT9eO*14%Fd;)NA5S$USUM>t84x8I5ilVZ z8xjmUCmT#NBT_deIVKucIw?^$B?|`y1_T2U3kMJh1{n|wJ}De%Qvlen0OPs>K{5jN z&j9(+0BTbL|K0$*lK{n<0Kb(0lXC#TmH-M1JT3qL06uh5PE!B^2oV}3aIJq~I7q|V z-`d3R`2YX^|G}tueCP82|Ns5%|NsC0|I|_Qla+*gHD&kccP{+rPXC=w^QQaD1qqp^ z000K*Nkl-aU=+$PeQUlV6#MKVK-=@78$wQ(|!Nb4U*gMiFFWJcpL{v;%7va zitor7JtR8~M`;uWLdx-Q^7!;LozAB71&D~%{Av08GD^e$3oZ!9Ka$C6o#lDHUKiy~ z>(%5Tz8y6fq{GQZ5dhFm_z;1ZN$KS<4ZfVR$#9(;Z50y$u(H}^4eMkS-DYPOX7Z$P zRzy%wFY(u&$Z=9RePoK1$#$s8co5vs{!y~|%#zt^mw(E+W}$>e#LMv)V!k>{EtodO zeONIcR>-=tTn&4NIvBT@Ev0Q{9?SgQEX}rG!IWBS!wZAUe<3>(DO2TR4wN5 z)UKRn0EFci6nHQ++?Mo=69Qn1exyPCwrMd{Q`pODmyE?rc;`6diE1z}_-Rnt)jir9 zripFS)E58`QD^rJb-V$f%ta$k5n!$-9gJQTKx|KKFUzW`D*mdfvMg&*8Nhsd$2_+R zAbr}-hn2=l8>-!rUU@uMXU;-9^jM$2Kri>=47UWZIrej8#WA4PKdvARF z??gHVV0*0n3etvCgV^;L+mQkA%R6U02UM@UD?rtkNP~1zIy&TRFnf^tzLCNip!ylA z6kt~uNC$6qMZ~6eYrE~Gt=|Ls4sc&XIRoZAX^_5_w&Cm_XP0yy`ONbl0=eFcHw5Ib zmgtNT~mVr0U!FCGh-khxsE|W7Wk6#OBCF3kI27dc{D9ix9vaA`jtpSS z!$`wnsYy$U+m-S0|}uidn#w$zXr#DkCKe zv?~q7;@83)(4y75rn|4v{?yt~cdAgi{2dsK7J!ii+IF|7(}U-qVj~Q+D;D3o;mZOf zT)hSIdK~P3T!>v~ee&+k10m=;K?y+(VD@jLD9NZhRV*hyq=R1sD_ngJ*m@Z5{X=tP zJvO(az06u3$Td+#F4-Kla}>1`A(JD|6_ zK%PWX3$`Kg79L&>RaHXgu`*nggoXkp`zgD=(lK@C`sSfLyV92=514eGAYEfHIq(gHO;0 z@1TVbP$#|~86ciNp9C$w1!&+0R1-i4pyH|i6E$K>hCnp`6@G&L{==R@E6nAIYN4e} z1K4rK!ROfRl-PI$%`lfIYGsxj6Vu}HN3{1>fwWi99RIRz7K@R?Fc?m}bScG>TqaYQ z!b9)>TD#d(F=;II-kJFX|1Z-ncc@1&te@l%jd>|6^`=k`kenoF;Lf`0Nds|=z#;j% zX$Q=Aq-X{0#lb-);4kT*j*RI(aAx^GQjJy))UvN_sCxvL3>t{^OJ99k!;F`npMlro^nYe!R{}SCw2!w^PAKH*=4UL zTza!MY*2@I@FSBTebVz&8a*H_+bKz33DmAZ{iI|rkL@O;lmL7)1**!Wb4<`cSiCuY z<(-n+xw?x0ZVGfzqmB#e5%#6-JwEONhMBbs0QD5;Ff(*+sFTP^sD5)O$vY<1;OC_@ z4xoKCSuBgS=Ybl+?Q4}urSw3g!@&*!8xqSlwC zn*8KyO)P(*VxPmw|9jB7I8@)+QDtoofQb_^9;k&Z)1HX({EqmnapOBufRD4fUltG3;>Rfzk;C292mcO7eGoVvaxe6 zPq1Qa1)Po?bPe#Fi1B-O21!_20E^K_(L5*LmBeiPQN&VRRyf&=KZpwqryvx?3;XI8|R4QZKKe3x(L`l2@(mbuL(T*bfx9X3@&c{bs zF|w_#QC|K9xv{5o+@ok;r~8JGeC~Uyjf^PU2Uxu|A6j+)?pkKcoU*1)!G{E zg+#Xe4QhD=w4DU9arF5#=e4z_a6)3gr@Q_|I0>L79Yv3rVHE`p&h->D~*cN9&|n(PlyvnACCj+g~1My#^d)J`}cVa#LGmtZtTkrdb;55CXOb6(is zTqoMtkpw3F5sSvE?|A~OhaN?g90XO)izX(p$L@LaiwRXdGBU zv;NbNg{^tc2QKLpNQu&iDDp)W-ZfetE&Cg}6xu41udp9>pKn4bic#c4Uyy_=BXQby zUFvF6cZ^6(2i@mW5;#K?dEqGi(((qzIgz!gXOp{{Ri%mBJ}w!x6)= z8QzMMK0IDL-9NubP%jS7HKjFLG{EkUR|GChsjWF<$zph%{O;lT>iOoZ1zaIQ<~Bjl zLR5c%P61SfD~#1TWkjA1Y)^#d`tsuG`T71jd&xQ47 zAqXLPD&rN#6?G-6lI46DtznY^!2B@|=yUXL0dxKW6tOHg(ct6%-qWn@QbuwfB^4q7 zBOwpT5RRDXQPlJC`oI}M4T_8R2GW?gPm!Nn+{xY<%?V>wkhFFH4al4=1~Q)Df%EDY zXa{j|VFA~v!|fZ{0raTd>bm4C4SYolsBK_QlK;DTPcs~H=(6VwX+-_S`x!u^pe=yi z2WV3otLidc1xX!X&wg|PwVDn<&WhZ<^_(${Dt~eR-h{+CEXXkV0F}mAYn9a$kPc8U z|50lmO3K1O03LBY8`$gJaVPde0t5qw!23Vfzl)3w|K85eUMAx=*%UV$GqKbGVEy)q z>v4gohWn7_+e=Yv#3aS8KH6kM6ngm>h4u$Irl;lxtdD8lFnth%Vll z6x__xL$tUUry)&)l$bpOVZ~cpNU2!TJ*sM-$x^FVAVVMcdxsz74MMG!OiDHa+TD-g zywk0NPO(eO7J%s6Y0NpAs&L<}(O4~)TAxC)*Uv4HTDVV`QnDzznK8+;q>8lxBoE1_ zJ{=m)Pr-}KEnwlG7kPvc9Oa(pM+b z1vL~;cS2?yM3}fy(&zwTtV`Oz3gV|$Ps3g;x8WMI)=Z+1se76PmrFavhjax5MegPC z=;$R6-fUO2o!TTyC>|zB61mNq2^p2LvF`UvC9U_?YPFu8{;1qjtM!I{{r=kcs6c^n zXMmQj!w&~Z+!vh%93R*#5bg3+hFjl^mPgaq`50hg+g#=-kC7@yaHFcj741spqg*zO zdVP)bi4vim=+X6xl2$s>&siU-*A1gw{;0I6UAX618#F^d@*Rv>CBF_=TaSJ`iy=e1 z+Dp;eN}{=`702>q>K(X)s-YYC-9bl(@6o>VPWv0*Yq#N>=vKAXXb#en?$lmeXO!Mn8pX0{UYgvwQMw7SDa&4Pb}ZgySc zF5-AE=yw{0(-~_*6B2c(nQe|}+PzYx0M1>cH9-sGw9)8>iNBA0-wi{@ zVZu9*Y|&sNg-8T2iQUaLw*-AcGoGJM2E&>a~f-TMr?LnIuA#IcnepTMT})Eo(t zAt`dDe!-F8Y+5YNEdjC`twyge057pvf*z+_7VwnvM2fZk#3?;b`X)1CU;V|b0Mi+ue z>6Txv5!en#q(?odJmq=vH%WsrP>EQvORdRfWRj@O<^a1?eh1I<6kZ6tSHuCKe(>nS z{57JG{GRTD{Bi=HdO7ls!PCXfASKFxY$yjvqG@WvGn0=EPe+A8nwQm&CnKFiW61*0 zg?Mz)IUws|!kf}bDEe+s6=yNb*rSVX0Vx;jA_4RTimtLhX>2x0`D2TUcnru}p{N7V zQPj#(Mm!C?2N&f#3lQyInGRvaBr3U(500Qi;X7rVR9a7%@znkllAPA*BiVAze^xY@ zbKz}NXTq?~S@yJ**tY7C2)?j(418fhs|bXo zu%fv&m;e8dzL-f1gaML(bY9&n$@rO>cRaXc5f{9-fHI>T8IWHzad;d3ucUe6KT((k zQhAIDElQc3^5WMG_LJn8ss_c_79ZJuy>{2U#>v zfwdQuI4wWA`}w`R1ngFPVW4<~V%N#~6A{U%M)XkW3^Nsk$%(ZeG@CZN5$H{my83+S z^H03^lSF4F$s7zcuwv&?pfse{BPN6wgo`}w1)V`RLiD4n?E>W4KU@{nM5&HGmy(3h z{C?Ink0YXlKp}Bfp3U>L8#EL!8=;`kb{8=k^SJa6Wha&X(FRh1W{vN`oQIOOQsSbv z$`*OtnNd%JqMtTCLEA;TQJSYo*6klAgvyeeQS&^>RDZ=Hs6vHl-qnl(6K10pP|@s0 zr}d(M_3wrX7DP9pruiSj1oiF`6+x26?Vx1R(stn}on3aLIA4VPN&_)LgXDUz=4t5J z%)48Hg?Zj~mqMWJ{tx{y0NQRCS25#I*?7!bP|5tdq{ew7dsgnZYOugb(HM zI}DVdQJ&%%rA6CChQR0V#rXnnYG5ID-)02FxwCA!?TsQTvOGmVNhXc9w)^c23L`^4 z4{UaKoI@aOPzt*w;eAa&C9q%uw$ zprH%rOUps(g(Qf653Mc8DeBYKx>a0Cu3yG%+t$M-{DEJEDZ_kHzXY}6%aoSUh=wHV>bLwW^bq-p<64yC ztdu1eq-iPzvLtm&N*s3PN#0FLqx=GtwH>5y@cNQTpS9&uN`{2qbbKZyW}V9>k!N;u zO**Y2y*_BYPMwQqOzrNpQng6yU6&he*G9%kRzxhn4O3a@*9))@j-c9EUT;K=QA;ZK zlkwqwxms_wpv~rEwcPC=Dp7STE;|pIJg$LCqvardeknjbcg7Tk>G@wzecc~+%j5C5 z+#Mc2L+{v<_Y_pj#pR+ltZD9->n*1BaR*PpAAz?701Zt1MGgM>ZH2x+qfJn$eDf1> z`BB@->iyLyH1%YA@nVI`xeH6~$`w)A!_=rh0u%M-c@y-h1=Q#M%x{2lX+h+j!*R21 z>bNf!HLZq?L|6&4$Lgypr`Y@smh94I`3R&FTdLkO20&p3{LupHShFUmRMT_h*V`6- z91Ja2@{(b0JUG$0w=VSoDv2c2k8Q3sV`0+HW#X;o~* zQT!sMBtLT|jMY|U6CJzN_G%r$B2(T*N@W~>fu4um@6S!pUnr=OmZ9~&-u7r$)E1NV zFn=DVIjK367x~<8wl`=4W#eE*tr;cOpdpmu&lb?xC8+d^sy$v4atBDUl&1BWh%3!` z*xsn+qzGmkDdmvTv;cLxKury5m!JwbAA8dYPSwR_dJ;)#9*SC-=$K$$=zoGHRlGB$ zX#}7xqY(xQb-Ta1xE_mu^F~VJSXL7%r}uEe6ADt!aZs7Y{h;3pP^$_mMRA&MuUA2; zcs-@5emi3o&e>_z_w9XxrYBWL;{{M3X22FuzY5Bksq6OUebl$1Kk3gi;elXT@aF(h zSK=upCFl%hzz$GLd6nOYJlt4Yub11Pe36!w3kL0pUjGve3nis$o_>N_U7$t<6r40! zZ*S9DN5`&_M!yq})e6_y+z$#*F!6>|)GmMu_)SO`Xtfa?x3_9_xeY;nN0o%?lV!CX zqGK^Q$ky5gPu?T@70P;^+15 zc0qZy@0Os-GmYtXsI*Nd$Yl~7+W@Kx&>zn|pwMxT+k5nJQCTz$Xf>hB!Jw<6`p}ey zC(uxX@&feR&u&mi=)JvB52d1#(m=A(p|I*e?TbdBP?N?zpuei1%DXS2pp98iDOc5& z`!NFO8d8eC!o*?lb(iw%ts7MO;LtmDsK;BCccl&tl!J9>aVhhXe36x)-+MqgOx;5Q zj&(&&$4Myk0mGK~6bPUu4*E|C3L6@!!yOb{gl=OnyO4_fhUl{SnELrpsIR2_6W zD(DLDMwEozpf4q;1)zg1RBsiEPeufVZe&v401YxyfKGAHpD&*`47329tcP2u-YS$b zA$nu!!N8^xCVN1QI;aDnBX%RjpiIVXyG>9JAx9$MZ>;TR2D zGWzxjI%DI29xq!3x8VA3G`-_PAgh5sp`hl7psRYT0MO%@pi3N-oxpu?Nd zhjx(dyRL89>TTjU?ur>usJU;5!R` zyBSeqqzp=@cRr?Rmr$l#Ruly*8kJQ-#KZq+6$Eh{1gkK*x9fUW&{03A#51Cvx4ZHL zxo3s;0D4Ac zDHhYkfOMn<>ifwq=-8P6sMXAMInbvT^s-^HWrQn#Inahf+cbxRP6X!Wg_G?sIa8XH|fA+b7wyji)qmF|t0Zs^L8`RqD6vc&^Aj*+`d5g3QzZMi*GCf>DDeSw^B8`TU5CqVQ@CpU7b)DJI^R~() zk~iNNd+s(|;|0#qF}^kg(8f0gMH*w%3z-(+E~tvV7_`ifmF`1KdKC5bB8x9kYu18d ztNp*egHno{#$qCscKHjv#4{IE=iA*Sq*@>7Qg+1I{LY(Nu1l|=7H+@!2U6Ff?Qcbg z{32Vfp!t{+#w4KZSk<*1LnrFdLRzByb-{pM1UDnhQ1u3&V+!sY#MkMQ9u1oyrNu!8 zx~=kUI#3Cy^d9QNDJm#Y0DZ#0`)nHCgu+xEsS%s>DL(h2Tn@Ua@~krF@(Kk(*TSSB znLGB}$?OVh;C|gdx1g_M{sUEbXH8Sy6bB~Y1kgNlLMZqitt6St^;~MTnF|lzZz53m z0cA9#K2efcvJ(!<32isekGojy-z_CQSD#X@L`Q%LpznV$PkjUWh6c{Wzk!43x2Qlhr5CPhAl-77mR)Zi-?#6gaQDmj?v&u>;B* zJXgA6>Ppf!(al|5=h-LWA6(QAnE3!3qEG|QmUboaCI`hyRY9GDkd$rGf#_Mnpp+o1EJr1$!xKvGRThc8=PQvQD7-FoGeP)pB3ZEi(W%4347)Q0C6&< z%Z(WM10F<_=G^npHI~FtXA_#a8TElD6tPs>{(nair)85$loLQKD=~&x2q_on{}Z)i zwxYQyU1o0eD^u1LL{w>~oqKSuh1yoc`zjSVC-5lri?*N!=(@Q)&#qvkdAYIR6;dXH zFh|?@@5H>Gl~G75coCB+S)z@|>L0t`sF_$aK$$a212ZNMdob=(>T6M*Du9ovl86wO z0RP(o$DV2mvGUcXY=vNvdWT_8T>i6*fA1#ql`4ZNe w)z^Kk@1uJkcFDz!ZZqofau`Q<_!qAI32;ByWewMgivR!s07*qoM6N<$f^k9)^8f$< literal 0 HcmV?d00001 diff --git a/src/pages/login/images/hand-down-left.png b/src/pages/login/images/hand-down-left.png new file mode 100644 index 0000000000000000000000000000000000000000..aefef6cf3085c5f9a954dbb45b2368eec82e8c79 GIT binary patch literal 1382 zcmV-s1)2JZP)o$?G$R;3Djhl}8!u+55dZ)H6?9TgQveM`X)b=Gk5?Sn|Mbh}|GWSH z|NLjOCR_jj1b<0HK~#7FoRVdN!Y~jb=0zkhQ^tQc4)-LVk^P3Zky(j4*~bW9;$l9c>$|+$*tAQc7)v ziUAR!BtR)a@y-0{^^f5AXFLlQY$z&FfET(2iB2^ODnYf+kdO4x2EN{i4Xz#jD+0+!+BW5;oWU-dqZ3LJ2Z-7 z*bP20m~9N(tJ_$(l3iKz5H^b9bQ)px@s^EY2O;lz!-?6gdF?0k6V~8coLJR=>*b+j zEeb^8+M6@8fr?_OpwRvP54bi*W&r=W6RCKEUpHSLEhNNXuK3;>Y&(zbTvB(E{iPK< zND!NhV4Xo`|3I~G+`06<#O}r0(%#_2Voq%s4#sJXZC=5X4Ej(z_qbk+j;(MhK16L1J1C{kI2DbR|=dC)BudJsdJHoYXHc0(wgeC#+c1}4u-Mi z5U2-u=t{ju^aqh+sn#}upq7U9ymZUn2Tw3OQITGG=(_<5$cT~50R?V_s?u4bVylxIP7k*7nmi%`YCh3V^UjF*#L`% zI|~gdWg7)7M7D)S>jI5ywP<0s*T9(6f?>qx>qxuP^J9t85B`S$!1{~qNZ^S zDx%Ob^)?o3IH1)1qZ6`3K`}>$j-rDsP}vDq2@AziI!+%Sk)>TXbIA!d4sV}>Hq)$ literal 0 HcmV?d00001 diff --git a/src/pages/login/images/hand-down-right.png b/src/pages/login/images/hand-down-right.png new file mode 100644 index 0000000000000000000000000000000000000000..a2602a6a0a021a920553d719fe0c604fc50f76c5 GIT binary patch literal 1306 zcmV+#1?BpQP)a-D@QCGRXQm;CmS#z7B?jt zJ}Mn!o&cl(000nlQchC5!NyeNvSe7GxBQ8#Vd)x~>nS!IE1Yh_J8JTXqM z>D088&C6BN;Vo_UIUS3Ot<&(4={a4uecx!13%%u2Q~d#q!MUYFlhwm|GUOt_*>em?;(F%}DvBlMd3v(B~w)KylFUe{I`f%L@ob$oKXxYk}h<45*)tcrF5D~&W z_4iM%Y~yV}OHPtR$4Tq8&!N+dYJrex*AP~cf2WPs4d9KGI%c>g?`dC)d2z;sdGD=d z0z>oPc$?IbC+Rz}rFMI--el1<{8KvMG{#f)m32;5WxhhuU;A%g66GM)dMv(-njFPp zAUsKC6JjQbL3O;?FbL`Y|HfO~UY870N$U3D^ptXuk9Mn#Z9ir8|NQo$`GI;|ADZX! z$C?Ooqj_tXoiQd(9;>mghw1gcLYCW)hCB7PkCPzD`*y`?i?fKeyc+I2u0wG)Z{9BG z^X~_=Q1=GU5iZbR<#y`?irjwZ?rCl6RG{$(xgIXCv3DA5JSN_LCw|!wguu&Q@3g=L z*05>X_a7HxyJ=cuUK*nIy^*wWfq4wIe=E|__{F_YlT+Jy9g+Pp~|u=+{{a;a}SC4vasc3_J=Afbz4)Pz03*ldAFcx!g3!>#;m-n_KlG3RbsmPBnn9$W4)KZV`#%{p(C;Wk(*e+Cct%jJB+-uS-W zQg>KW1efd0UtOzj#q)FX_0?Q%(Dz@#339zxkk8MLzpcmdbUPhBKmO8J~=Q zPcf-K{YZ{x=-}A|2@t(`h60qNo#apoS z^te6mg)>eQ46VAGO!jY()9a-r z;%?q3ni8;EUf{^__NWP;y!yV3wjShAKU(hzMOB2-=thWj=NHY~%Synj@66u?!Jc2SR*M75n~P3SM)m74UqU`~?EVk>_ zEbhAUb;LWXK}CTQ)ORt;Euf(J*k-dP9!rR@h}td@KMtSYs}807py(l#(Bi6WGynAR zU4JFGn6k$mQ;(tsQBJ`y-xhH8>?X;M-$WtHnR0IjQZR?fJrv_~9-%7ElYL?EOoyVZp=1>li2ZyE5zV$j8(`#>oIiVG+>l&D?n2EUy5U?f>X zFdDzw2V=zb8WvMk9|cAEF-GS>&NEU@^zc{GyLfBBxW0V z#pJas;wahNhc!Y0O*ENSme&&~&iXCwqt1C#Z3G}E&WbIr+^Q#x`xHzS8cawAOhb)f z4r@gTKo zumvAbS(l%Lhhl<4=QhWtW2hVW95v{Zhk^KONR~Z&^0$uCN>H-IN)b)}-s#rSgf)m$ zuXC*l=2^UTp~~4pGNag*(MHlIP~sUJn4*SY-FREGjL!OF=>UVt?XH!qWLt*RqQGPB zjJ2EegdB&b-kL>prZ@#*5LvN?WQK(aby;x~V{B``NKfZ`^n1wIw`PXd{agdpNE_9c z429bo+B_Wwk47raQO3K>qG}k7ae%Rc?HW8$P|{OmG-*L`d=@+w&}E0OxqxH=9ua<+eTL;z+kc&G}=_u zxeo&2VgE9~RWc1T%u19L&S?G~O-PoBkmi9I1Qxw~&pyRE7|JF}hUaDo1>2UDazkWv6JOF% zHh@8;OEhLaLPz8tSY?LEWc*VJXNxS~CBVBD#vlr+$(SKBECAs;mX~dVAgU?+|361D zumOJoh`!zuHBj{zGwJ_;nEDFfz?ykoZkSdZH$Hp(ngs&Qw0J20CZL1wm21hpOlf*DcfFziz$$ms8 z=e-#{0C{fPQ?5pnX}YUv!eF*OXcYInP`@Cf8%73W=YwYK4^WEFXV!wDBmxN_GU&DA zVDM$C1#6n&WBIA9R^}&UtVGisN`NhkX0&9u<)SpvGX9_#AGn$TFOTK%72|_QVx*$7YY!6a7vbyHUIzs07*qoM6N<$ Ef`lx~HUIzs literal 0 HcmV?d00001 diff --git a/src/pages/login/images/hand-up-right.png b/src/pages/login/images/hand-up-right.png new file mode 100644 index 0000000000000000000000000000000000000000..088fa16089012f7fdfb53b93c1895128aa536011 GIT binary patch literal 2015 zcmV<52O#)~P)rJ0}~9d2X46cwtULPcW~EN-!Z&Hzr*~HF{@T zlYetaJ~;m9qNe}=01-2M&MkIi}FjB_~K)1pTy@(Fb>@4w0PlM7to2~IIG#V&>)%j zeOttIe%wAQQVn#-2ZTe8v#Iu7SHu-&TK7-h7zK?7TFzZID{n89Z|jQ1v>adM zIlo^SS!a)S5dO6jXQjt^jAO!Spp4h@Ri54Zv$@RD0@MB!!D}!Z+kmZZan#VDJlAi* z6j7E|j1^xw+Rh+tAfayKKJ7x$)$ zL$;)Zn7%xd+fHx8AmpJpvL$6Y4?i_UiH?G7m&`#)yR zHo9)MAq)gcA2b{T^FlV|WW#gy>f9;Y=23mv@V{U~lM;jjA$W>TvbBTsazaeV_MB${ zY7yv3?aA$sTOqnhwpuZcE+|9Ym1;b4vS9<+%u9iDB>u@@vLmc^&eNS}YHDnHw@Enk- zay|G+IZYnm4gGIEcOuCTNj4|9&{za3a0A>o8-+#G*4t$mZNr zl~o#AgXpYyxrnpe!o%z!<)Yepy8eB^KuVyTQv6c2-7JEL>h z1U?Vir*k?#M2tB)HKY5Ey2I1ZOcx5hqL%!9iPIgl_lmXbU44hKeJ~&;$^p zOPC^#&Ryr0D&$xcFu}%sOBw7wcQh2zlXuGC=*K;wcLMP4K7EOgCGN`*#gejvhu-PH zeT$VAFZ0PoNRfaZQhwEvO6G#?YHu9EkTcLxP%WLol*tT6KeD)*U8qRN1SjiGz;pz| z3(1a`8TIuTQJLAZTqa*(boZokU!@x=^aL@$qv$&AW;2D1(L&8|@=DI7?4+X;O;JQK zz@dhj1J%m;)nVQcTx4@8D@W%l0K;js%)kyWlLk| z%uO(t3=85M8^7u%7+tvC5-=RAFu{8V;2}kZ!P@i6PPR1vRR7rloeD#W){#B|439ki zss3Xa?Qe^0OdlN4I1&E|NG+oyYX<|XHG;?Ll+qHvZ5Pt1CU+Y^(3gMegRXabdIwgEHfuJd3L@UFPX1V~k@eF+%VbYFin zo>;YX37yi7aQp*Sp508f#U?O$LVF7KlK~MOswNhh0H&5a!t){wHN+?Xm1~Kqd4JG_ zK-zG8qIDLS0O6gGqp`CfZ9cA=%4?wwAoF{eHc(A|KsBS#IGA3|wO*Hx8?| zxOIRNq#PX09m=f}!YoT4SdFIvPaXXs9HZd@KD&>p7N$bz0XD(sR6}t>m^0I1uPucs x=P-#o_3{o4H&hXYFgsnADgQsNPgUn}{2$qfBtJXDKbrsm002ovPDHLkV1jbhn~eYf literal 0 HcmV?d00001 diff --git a/src/pages/login/index.vue b/src/pages/login/index.vue new file mode 100644 index 0000000..1b48390 --- /dev/null +++ b/src/pages/login/index.vue @@ -0,0 +1,209 @@ + + + + + diff --git a/src/pages/redirect/index.vue b/src/pages/redirect/index.vue new file mode 100644 index 0000000..5240270 --- /dev/null +++ b/src/pages/redirect/index.vue @@ -0,0 +1,11 @@ + + + diff --git a/src/pinia/index.ts b/src/pinia/index.ts new file mode 100644 index 0000000..8359d2b --- /dev/null +++ b/src/pinia/index.ts @@ -0,0 +1 @@ +export const pinia = createPinia() diff --git a/src/pinia/stores/app.ts b/src/pinia/stores/app.ts new file mode 100644 index 0000000..684fe80 --- /dev/null +++ b/src/pinia/stores/app.ts @@ -0,0 +1,59 @@ +import { DeviceEnum, SIDEBAR_CLOSED, SIDEBAR_OPENED } from "@@/constants/app-key" +import { getSidebarStatus, setSidebarStatus } from "@@/utils/local-storage" +import { pinia } from "@/pinia" + +interface Sidebar { + opened: boolean + withoutAnimation: boolean +} + +/** 设置侧边栏状态本地缓存 */ +function handleSidebarStatus(opened: boolean) { + opened ? setSidebarStatus(SIDEBAR_OPENED) : setSidebarStatus(SIDEBAR_CLOSED) +} + +export const useAppStore = defineStore("app", () => { + // 侧边栏状态 + const sidebar: Sidebar = reactive({ + opened: getSidebarStatus() !== SIDEBAR_CLOSED, + withoutAnimation: false + }) + + // 设备类型 + const device = ref(DeviceEnum.Desktop) + + // 监听侧边栏 opened 状态 + watch( + () => sidebar.opened, + (opened) => { + handleSidebarStatus(opened) + } + ) + + // 切换侧边栏 + const toggleSidebar = (withoutAnimation: boolean) => { + sidebar.opened = !sidebar.opened + sidebar.withoutAnimation = withoutAnimation + } + + // 关闭侧边栏 + const closeSidebar = (withoutAnimation: boolean) => { + sidebar.opened = false + sidebar.withoutAnimation = withoutAnimation + } + + // 切换设备类型 + const toggleDevice = (value: DeviceEnum) => { + device.value = value + } + + return { device, sidebar, toggleSidebar, closeSidebar, toggleDevice } +}) + +/** + * @description 在 SPA 应用中可用于在 pinia 实例被激活前使用 store + * @description 在 SSR 应用中可用于在 setup 外使用 store + */ +export function useAppStoreOutside() { + return useAppStore(pinia) +} diff --git a/src/pinia/stores/permission.ts b/src/pinia/stores/permission.ts new file mode 100644 index 0000000..26611f1 --- /dev/null +++ b/src/pinia/stores/permission.ts @@ -0,0 +1,70 @@ +import type { RouteRecordRaw } from "vue-router" +import { pinia } from "@/pinia" +import { constantRoutes, dynamicRoutes } from "@/router" +import { routerConfig } from "@/router/config" +import { flatMultiLevelRoutes } from "@/router/helper" + +interface UserPermissionInfo { + roles: string[] + permissions: string[] +} + +function hasPermission(userPermissionInfo: UserPermissionInfo, route: RouteRecordRaw) { + const routeRoles = route.meta?.roles + const routePermissions = route.meta?.permissions + const hasRoles = routeRoles !== undefined + const hasPermissions = routePermissions !== undefined + if (!hasRoles && !hasPermissions) return true + const matchedRole = routeRoles?.some(role => userPermissionInfo.roles.includes(role)) ?? false + const matchedPermission = routePermissions?.some(permission => userPermissionInfo.permissions.includes(permission)) ?? false + return matchedRole || matchedPermission +} + +function filterDynamicRoutes(routes: RouteRecordRaw[], userPermissionInfo: UserPermissionInfo) { + const res: RouteRecordRaw[] = [] + routes.forEach((route) => { + const tempRoute = { ...route } + if (hasPermission(userPermissionInfo, tempRoute)) { + if (tempRoute.children) { + tempRoute.children = filterDynamicRoutes(tempRoute.children, userPermissionInfo) + } + res.push(tempRoute) + } + }) + return res +} + +export const usePermissionStore = defineStore("permission", () => { + // 可访问的路由 + const routes = ref([]) + + // 有访问权限的动态路由 + const addRoutes = ref([]) + + // 根据角色和权限生成可访问的 Routes(可访问的路由 = 常驻路由 + 有访问权限的动态路由) + const setRoutes = (userPermissionInfo: UserPermissionInfo) => { + const accessedRoutes = filterDynamicRoutes(dynamicRoutes, userPermissionInfo) + set(accessedRoutes) + } + + // 所有路由 = 所有常驻路由 + 所有动态路由 + const setAllRoutes = () => { + set(dynamicRoutes) + } + + // 统一设置 + const set = (accessedRoutes: RouteRecordRaw[]) => { + routes.value = constantRoutes.concat(accessedRoutes) + addRoutes.value = routerConfig.thirdLevelRouteCache ? flatMultiLevelRoutes(accessedRoutes) : accessedRoutes + } + + return { routes, addRoutes, setRoutes, setAllRoutes } +}) + +/** + * @description 在 SPA 应用中可用于在 pinia 实例被激活前使用 store + * @description 在 SSR 应用中可用于在 setup 外使用 store + */ +export function usePermissionStoreOutside() { + return usePermissionStore(pinia) +} diff --git a/src/pinia/stores/settings.ts b/src/pinia/stores/settings.ts new file mode 100644 index 0000000..dee9a92 --- /dev/null +++ b/src/pinia/stores/settings.ts @@ -0,0 +1,51 @@ +import type { Ref } from "vue" +import type { LayoutsConfig } from "@/layouts/config" +import { setLayoutsConfig } from "@@/utils/local-storage" +import { layoutsConfig } from "@/layouts/config" +import { pinia } from "@/pinia" + +type SettingsStore = { + // 使用映射类型来遍历 LayoutsConfig 对象的键 + [Key in keyof LayoutsConfig]: Ref +} + +type SettingsStoreKey = keyof SettingsStore + +export const useSettingsStore = defineStore("settings", () => { + // 状态对象 + const state = {} as SettingsStore + + // 遍历 LayoutsConfig 对象的键值对 + for (const [key, value] of Object.entries(layoutsConfig)) { + // 使用类型断言来指定 key 的类型,将 value 包装在 ref 函数中,创建一个响应式变量 + const refValue = ref(value) + // @ts-expect-error ignore + state[key as SettingsStoreKey] = refValue + // 监听每个响应式变量 + watch(refValue, () => { + // 缓存 + const settings = getCacheData() + setLayoutsConfig(settings) + }) + } + + // 获取要缓存的数据:将 state 对象转化为 settings 对象 + const getCacheData = () => { + const settings = {} as LayoutsConfig + for (const [key, value] of Object.entries(state)) { + // @ts-expect-error ignore + settings[key as SettingsStoreKey] = value.value + } + return settings + } + + return state +}) + +/** + * @description 在 SPA 应用中可用于在 pinia 实例被激活前使用 store + * @description 在 SSR 应用中可用于在 setup 外使用 store + */ +export function useSettingsStoreOutside() { + return useSettingsStore(pinia) +} diff --git a/src/pinia/stores/tags-view.ts b/src/pinia/stores/tags-view.ts new file mode 100644 index 0000000..0162423 --- /dev/null +++ b/src/pinia/stores/tags-view.ts @@ -0,0 +1,110 @@ +import type { RouteLocationNormalizedGeneric } from "vue-router" +import { getCachedViews, getVisitedViews, setCachedViews, setVisitedViews } from "@@/utils/local-storage" +import { pinia } from "@/pinia" +import { useSettingsStore } from "./settings" + +export type TagView = Partial + +export const useTagsViewStore = defineStore("tags-view", () => { + const { cacheTagsView } = useSettingsStore() + + const visitedViews = ref(cacheTagsView ? getVisitedViews() : []) + + const cachedViews = ref(cacheTagsView ? getCachedViews() : []) + + // 缓存标签栏数据 + watchEffect(() => { + setVisitedViews(visitedViews.value) + setCachedViews(cachedViews.value) + }) + + // #region add + const addVisitedView = (view: TagView) => { + // 检查是否已经存在相同的 visitedView + const index = visitedViews.value.findIndex(v => v.path === view.path) + if (index !== -1) { + // 防止 query 参数丢失 + visitedViews.value[index].fullPath !== view.fullPath && (visitedViews.value[index] = { ...view }) + } else { + // 添加新的 visitedView + visitedViews.value.push({ ...view }) + } + } + + const addCachedView = (view: TagView) => { + if (typeof view.name !== "string") return + if (cachedViews.value.includes(view.name)) return + if (view.meta?.keepAlive) { + cachedViews.value.push(view.name) + } + } + // #endregion + + // #region del + const delVisitedView = (view: TagView) => { + const index = visitedViews.value.findIndex(v => v.path === view.path) + if (index !== -1) { + visitedViews.value.splice(index, 1) + } + } + + const delCachedView = (view: TagView) => { + if (typeof view.name !== "string") return + const index = cachedViews.value.indexOf(view.name) + if (index !== -1) { + cachedViews.value.splice(index, 1) + } + } + // #endregion + + // #region delOthers + const delOthersVisitedViews = (view: TagView) => { + visitedViews.value = visitedViews.value.filter((v) => { + return v.meta?.affix || v.path === view.path + }) + } + + const delOthersCachedViews = (view: TagView) => { + if (typeof view.name !== "string") return + const index = cachedViews.value.indexOf(view.name) + if (index !== -1) { + cachedViews.value = cachedViews.value.slice(index, index + 1) + } else { + // 如果 index = -1, 没有缓存的 tags + cachedViews.value = [] + } + } + // #endregion + + // #region delAll + const delAllVisitedViews = () => { + // 保留固定的 tags + visitedViews.value = visitedViews.value.filter(tag => tag.meta?.affix) + } + + const delAllCachedViews = () => { + cachedViews.value = [] + } + // #endregion + + return { + visitedViews, + cachedViews, + addVisitedView, + addCachedView, + delVisitedView, + delCachedView, + delOthersVisitedViews, + delOthersCachedViews, + delAllVisitedViews, + delAllCachedViews + } +}) + +/** + * @description 在 SPA 应用中可用于在 pinia 实例被激活前使用 store + * @description 在 SSR 应用中可用于在 setup 外使用 store + */ +export function useTagsViewStoreOutside() { + return useTagsViewStore(pinia) +} diff --git a/src/pinia/stores/user.ts b/src/pinia/stores/user.ts new file mode 100644 index 0000000..3678dcb --- /dev/null +++ b/src/pinia/stores/user.ts @@ -0,0 +1,83 @@ +import { getCurrentUserApi } from "@@/apis/users" +import { setToken as _setToken, getToken, removeToken } from "@@/utils/local-storage" +import { pinia } from "@/pinia" +import { resetRouter, router } from "@/router" +import { useSettingsStore } from "./settings" +import { useTagsViewStore } from "./tags-view" + +export const useUserStore = defineStore("user", () => { + const token = ref(getToken() || "") + + const roles = ref([]) + + const permissions = ref([]) + + const username = ref("") + + const isGotUserInfo = ref(false) + + const tagsViewStore = useTagsViewStore() + + const settingsStore = useSettingsStore() + + // 设置 Token + const setToken = (value: string) => { + _setToken(value) + token.value = value + } + + // 获取用户详情 + const getInfo = async () => { + const { data } = await getCurrentUserApi() + username.value = data.username + roles.value = data.roles ?? [] + permissions.value = data.permissions ?? [] + // 防止路由守卫逻辑进入无限循环 + isGotUserInfo.value = true + } + + // 模拟用户变化 + const changeUser = (value: string) => { + const newToken = `token-${value}` + token.value = newToken + _setToken(newToken) + // 用刷新页面代替重新登录 + location.reload() + } + + // 登出 + const logout = () => { + resetToken() + resetRouter() + resetTagsView() + // 重定向到登录页 + router.replace("/login") + } + + // 重置 Token + const resetToken = () => { + removeToken() + token.value = "" + roles.value = [] + permissions.value = [] + isGotUserInfo.value = false + } + + // 重置 Visited Views 和 Cached Views + const resetTagsView = () => { + if (!settingsStore.cacheTagsView) { + tagsViewStore.delAllVisitedViews() + tagsViewStore.delAllCachedViews() + } + } + + return { token, roles, permissions, username, isGotUserInfo, setToken, getInfo, changeUser, logout, resetToken } +}) + +/** + * @description 在 SPA 应用中可用于在 pinia 实例被激活前使用 store + * @description 在 SSR 应用中可用于在 setup 外使用 store + */ +export function useUserStoreOutside() { + return useUserStore(pinia) +} diff --git a/src/plugins/element-plus-icons.ts b/src/plugins/element-plus-icons.ts new file mode 100644 index 0000000..5fb6456 --- /dev/null +++ b/src/plugins/element-plus-icons.ts @@ -0,0 +1,9 @@ +import type { App } from "vue" +import * as ElementPlusIconsVue from "@element-plus/icons-vue" + +export function installElementPlusIcons(app: App) { + // 注册所有 Element Plus Icons + for (const [key, component] of Object.entries(ElementPlusIconsVue)) { + app.component(key, component) + } +} diff --git a/src/plugins/index.ts b/src/plugins/index.ts new file mode 100644 index 0000000..ac348f6 --- /dev/null +++ b/src/plugins/index.ts @@ -0,0 +1,12 @@ +import type { App } from "vue" +import { installElementPlusIcons } from "./element-plus-icons" +import { installPermissionDirective } from "./permission-directive" +import { installSvgIcon } from "./svg-icon" +import { installVxeTable } from "./vxe-table" + +export function installPlugins(app: App) { + installElementPlusIcons(app) + installPermissionDirective(app) + installSvgIcon(app) + installVxeTable(app) +} diff --git a/src/plugins/permission-directive.ts b/src/plugins/permission-directive.ts new file mode 100644 index 0000000..79fdbaa --- /dev/null +++ b/src/plugins/permission-directive.ts @@ -0,0 +1,24 @@ +import type { App, Directive } from "vue" +import { isArray } from "@@/utils/validate" +import { useUserStore } from "@/pinia/stores/user" + +/** + * @name 权限指令 + * @description 和权限判断函数 checkPermission 功能类似 + */ +const permission: Directive = { + mounted(el, binding) { + const { value: rolesOrPermissions } = binding + const { roles, permissions } = useUserStore() + if (isArray(rolesOrPermissions) && rolesOrPermissions.length > 0) { + const hasPermission = roles.some(role => rolesOrPermissions.includes(role)) || permissions.some(permission => rolesOrPermissions.includes(permission)) + hasPermission || el.parentNode?.removeChild(el) + } else { + throw new Error(`参数必须是一个数组且长度大于 0,参考:v-permission="['admin', 'permission:button-level']"`) + } + } +} + +export function installPermissionDirective(app: App) { + app.directive("permission", permission) +} diff --git a/src/plugins/svg-icon.ts b/src/plugins/svg-icon.ts new file mode 100644 index 0000000..5ecd869 --- /dev/null +++ b/src/plugins/svg-icon.ts @@ -0,0 +1,7 @@ +import type { App } from "vue" +import SvgIcon from "~virtual/svg-component" + +export function installSvgIcon(app: App) { + // 注册 SvgIcon 组件 + app.component("SvgIcon", SvgIcon) +} diff --git a/src/plugins/vxe-table.ts b/src/plugins/vxe-table.ts new file mode 100644 index 0000000..6a0685d --- /dev/null +++ b/src/plugins/vxe-table.ts @@ -0,0 +1,61 @@ +import type { App } from "vue" +import VXETable from "vxe-table" // https://vxetable.cn/#/start/install + +// 全局默认参数 +VXETable.setConfig({ + // 全局尺寸 + size: "medium", + // 全局 zIndex 起始值,如果项目的的 z-index 样式值过大时就需要跟随设置更大,避免被遮挡 + zIndex: 9999, + // 版本号,对于某些带数据缓存的功能有用到,上升版本号可以用于重置数据 + version: 0, + // 全局 loading 提示内容,如果为 null 则不显示文本 + loadingText: null, + table: { + showHeader: true, + showOverflow: "tooltip", + showHeaderOverflow: "tooltip", + autoResize: true, + // stripe: false, + border: "inner", + // round: false, + emptyText: "暂无数据", + rowConfig: { + isHover: true, + isCurrent: true, + // 行数据的唯一主键字段名 + keyField: "_VXE_ID" + }, + columnConfig: { + resizable: false + }, + align: "center", + headerAlign: "center" + }, + pager: { + // size: "medium", + // 配套的样式 + perfect: false, + pageSize: 10, + pagerCount: 7, + pageSizes: [10, 20, 50], + layouts: ["Total", "PrevJump", "PrevPage", "Number", "NextPage", "NextJump", "Sizes", "FullJump"] + }, + modal: { + minWidth: 500, + minHeight: 400, + lockView: true, + mask: true, + // duration: 3000, + // marginSize: 20, + dblclickZoom: false, + showTitleOverflow: true, + transfer: true, + draggable: false + } +}) + +export function installVxeTable(app: App) { + // Vxe Table 组件完整引入 + app.use(VXETable) +} diff --git a/src/router/config.ts b/src/router/config.ts new file mode 100644 index 0000000..4220c91 --- /dev/null +++ b/src/router/config.ts @@ -0,0 +1,37 @@ +import type { RouterHistory } from "vue-router" +import { createWebHashHistory, createWebHistory } from "vue-router" + +/** 路由配置 */ +interface RouterConfig { + /** + * @name 路由模式 + * @description hash 模式和 html5 模式 + */ + history: RouterHistory + /** + * @name 是否开启动态路由功能 + * @description 1. 开启后需要后端配合,在查询用户详情接口返回当前用户可以用来判断并加载动态路由的字段(roles / permissions) + * @description 2. 假如项目不需要根据不同的用户来显示不同的页面,则应该将 dynamic: false + */ + dynamic: boolean + /** + * @name 是否开启三级及其以上路由缓存功能 + * @description 1. 开启后会进行路由降级(把三级及其以上的路由转化为二级路由) + * @description 2. 由于都会转成二级路由,所以二级及其以上路由有内嵌子路由将会失效 + */ + thirdLevelRouteCache: boolean +} + +const VITE_ROUTER_HISTORY = import.meta.env.VITE_ROUTER_HISTORY + +const VITE_PUBLIC_PATH = import.meta.env.VITE_PUBLIC_PATH + +export const DASHBOARD_PATH = "/dashboard" + +export const REDIRECT_PATH = "/redirect" + +export const routerConfig: RouterConfig = { + history: VITE_ROUTER_HISTORY === "hash" ? createWebHashHistory(VITE_PUBLIC_PATH) : createWebHistory(VITE_PUBLIC_PATH), + dynamic: true, + thirdLevelRouteCache: false +} diff --git a/src/router/guard.ts b/src/router/guard.ts new file mode 100644 index 0000000..78d744e --- /dev/null +++ b/src/router/guard.ts @@ -0,0 +1,59 @@ +import type { Router } from "vue-router" +import { setRouteChange } from "@@/composables/useRouteListener" +import { useTitle } from "@@/composables/useTitle" +import { getToken } from "@@/utils/local-storage" +import NProgress from "nprogress" +import { usePermissionStore } from "@/pinia/stores/permission" +import { useUserStore } from "@/pinia/stores/user" +import { routerConfig } from "@/router/config" +import { isWhiteList } from "@/router/whitelist" + +NProgress.configure({ showSpinner: false }) + +const { setTitle } = useTitle() + +const LOGIN_PATH = "/login" + +export function registerNavigationGuard(router: Router) { + // 全局前置守卫 + router.beforeEach(async (to, _from) => { + NProgress.start() + const userStore = useUserStore() + const permissionStore = usePermissionStore() + // 如果没有登录 + if (!getToken()) { + // 如果在免登录的白名单中,则直接进入 + if (isWhiteList(to)) return true + // 其他没有访问权限的页面将被重定向到登录页面 + return `${LOGIN_PATH}?redirect=${encodeURIComponent(to.fullPath)}` + } + // 如果已经登录,并准备进入 Login 页面,则重定向到主页 + if (to.path === LOGIN_PATH) return "/" + // 如果用户已经获得其权限信息 + if (userStore.isGotUserInfo) return true + // 否则要重新获取权限信息 + try { + await userStore.getInfo() + // 注意:角色和权限必须是数组! 例如: ["admin"] 或 ["permission:page-level"] + const { roles, permissions } = userStore + // 生成可访问的 Routes + routerConfig.dynamic ? permissionStore.setRoutes({ roles, permissions }) : permissionStore.setAllRoutes() + // 将 "有访问权限的动态路由" 添加到 Router 中 + permissionStore.addRoutes.forEach(route => router.addRoute(route)) + // 设置 replace: true, 因此导航将不会留下历史记录 + return { ...to, replace: true } + } catch (error) { + // 过程中发生任何错误,都直接重置 Token,并重定向到登录页面 + userStore.resetToken() + ElMessage.error((error as Error).message || "路由守卫发生错误") + return LOGIN_PATH + } + }) + + // 全局后置钩子 + router.afterEach((to) => { + setRouteChange(to) + setTitle(to.meta.title) + NProgress.done() + }) +} diff --git a/src/router/helper.ts b/src/router/helper.ts new file mode 100644 index 0000000..383fd36 --- /dev/null +++ b/src/router/helper.ts @@ -0,0 +1,56 @@ +import type { Router, RouteRecordNormalized, RouteRecordRaw } from "vue-router" +import { cloneDeep, omit } from "lodash-es" +import { createRouter } from "vue-router" +import { routerConfig } from "./config" + +/** 路由降级(把三级及其以上的路由转化为二级路由) */ +export function flatMultiLevelRoutes(routes: RouteRecordRaw[]) { + const routesMirror = cloneDeep(routes) + routesMirror.forEach((route) => { + // 如果路由是三级及其以上路由,对其进行降级处理 + isMultipleRoute(route) && promoteRouteLevel(route) + }) + return routesMirror +} + +/** 判断路由层级是否大于 2 */ +function isMultipleRoute(route: RouteRecordRaw) { + const children = route.children + // 只要有一个子路由的 children 长度大于 0,就说明是三级及其以上路由 + if (children?.length) return children.some(child => child.children?.length) + return false +} + +/** 生成二级路由 */ +function promoteRouteLevel(route: RouteRecordRaw) { + // 创建 router 实例是为了获取到当前传入的 route 的所有路由信息 + let router: Router | null = createRouter({ + history: routerConfig.history, + routes: [route] + }) + const routes = router.getRoutes() + // 在 addToChildren 函数中使用上面获取到的路由信息来更新 route 的 children + addToChildren(routes, route.children || [], route) + router = null + // 转为二级路由后,去除所有子路由中的 children + route.children = route.children?.map(item => omit(item, "children") as RouteRecordRaw) +} + +/** 将给定的子路由添加到指定的路由模块中 */ +function addToChildren(routes: RouteRecordNormalized[], children: RouteRecordRaw[], routeModule: RouteRecordRaw) { + children.forEach((child) => { + const route = routes.find(item => item.name === child.name) + if (route) { + // 初始化 routeModule 的 children + routeModule.children = routeModule.children || [] + // 如果 routeModule 的 children 属性中不包含该路由,则将其添加进去 + if (!routeModule.children.includes(route)) { + routeModule.children.push(route) + } + // 如果该子路由还有自己的子路由,则递归调用此函数将它们也添加进去 + if (child.children?.length) { + addToChildren(routes, child.children, routeModule) + } + } + }) +} diff --git a/src/router/index.ts b/src/router/index.ts new file mode 100644 index 0000000..e737c0a --- /dev/null +++ b/src/router/index.ts @@ -0,0 +1,262 @@ +import type { RouteRecordRaw } from "vue-router" +import { createRouter } from "vue-router" +import { DASHBOARD_PATH, REDIRECT_PATH, routerConfig } from "@/router/config" +import { registerNavigationGuard } from "@/router/guard" +import { flatMultiLevelRoutes } from "./helper" + +const Layouts = () => import("@/layouts/index.vue") + +/** + * @name 常驻路由 + * @description 除了 redirect/403/404/login 等隐藏页面,其他页面建议设置唯一的 Name 属性 + */ +export const constantRoutes: RouteRecordRaw[] = [ + { + path: REDIRECT_PATH, + component: Layouts, + meta: { + hidden: true + }, + children: [ + { + path: ":path(.*)", + component: () => import("@/pages/redirect/index.vue") + } + ] + }, + { + path: "/403", + component: () => import("@/pages/error/403.vue"), + meta: { + hidden: true + } + }, + { + path: "/404", + component: () => import("@/pages/error/404.vue"), + meta: { + hidden: true + }, + alias: "/:pathMatch(.*)*" + }, + { + path: "/login", + component: () => import("@/pages/login/index.vue"), + meta: { + hidden: true + } + }, + { + path: "/", + component: Layouts, + redirect: DASHBOARD_PATH, + children: [ + { + path: "dashboard", + component: () => import("@/pages/dashboard/index.vue"), + name: "Dashboard", + meta: { + title: "首页", + svgIcon: "dashboard", + affix: true + } + } + ] + }, + { + path: "/demo", + component: Layouts, + redirect: "/demo/unocss", + name: "Demo", + meta: { + title: "示例集合", + elIcon: "DataBoard" + }, + children: [ + { + path: "unocss", + component: () => import("@/pages/demo/unocss/index.vue"), + name: "UnoCSS", + meta: { + title: "UnoCSS" + } + }, + { + path: "element-plus", + component: () => import("@/pages/demo/element-plus/index.vue"), + name: "ElementPlus", + meta: { + title: "Element Plus", + keepAlive: true + } + }, + { + path: "vxe-table", + component: () => import("@/pages/demo/vxe-table/index.vue"), + name: "VxeTable", + meta: { + title: "Vxe Table", + keepAlive: true + } + }, + { + path: "level2", + component: () => import("@/pages/demo/level2/index.vue"), + redirect: "/demo/level2/level3", + name: "Level2", + meta: { + title: "二级路由", + alwaysShow: true + }, + children: [ + { + path: "level3", + component: () => import("@/pages/demo/level2/level3/index.vue"), + name: "Level3", + meta: { + title: "三级路由", + keepAlive: true + } + } + ] + }, + { + path: "composable-demo", + redirect: "/demo/composable-demo/use-fetch-select", + name: "ComposableDemo", + meta: { + title: "组合式函数" + }, + children: [ + { + path: "use-fetch-select", + component: () => import("@/pages/demo/composable-demo/use-fetch-select.vue"), + name: "UseFetchSelect", + meta: { + title: "useFetchSelect" + } + }, + { + path: "use-fullscreen-loading", + component: () => import("@/pages/demo/composable-demo/use-fullscreen-loading.vue"), + name: "UseFullscreenLoading", + meta: { + title: "useFullscreenLoading" + } + }, + { + path: "use-watermark", + component: () => import("@/pages/demo/composable-demo/use-watermark.vue"), + name: "UseWatermark", + meta: { + title: "useWatermark" + } + } + ] + } + ] + }, + { + path: "/link", + meta: { + title: "文档链接", + elIcon: "Link" + }, + children: [ + { + path: "https://juejin.cn/post/7445151895121543209", + component: () => {}, + name: "Link1", + meta: { + title: "中文文档" + } + }, + { + path: "https://juejin.cn/column/7207659644487139387", + component: () => {}, + name: "Link2", + meta: { + title: "新手教程" + } + }, + { + path: "https://juejin.cn/column/7046214632771420196", + component: () => {}, + name: "Link3", + meta: { + title: "周边资讯" + } + } + ] + } +] + +/** + * @name 动态路由 + * @description 用来放置有权限 (roles / permissions 属性) 的路由 + * @description 必须带有唯一的 Name 属性 + */ +export const dynamicRoutes: RouteRecordRaw[] = [ + { + path: "/permission", + component: Layouts, + redirect: "/permission/page-level", + name: "Permission", + meta: { + title: "权限演示", + elIcon: "Lock", + alwaysShow: true + }, + children: [ + { + path: "page-level", + component: () => import("@/pages/demo/permission/page-level.vue"), + name: "PermissionPageLevel", + meta: { + title: "页面级", + // 在路由中设置角色来控制访问 + roles: ["admin"], + // 在路由中设置权限标识字符来控制访问 + permissions: ["permission:page-level"] + } + }, + { + path: "button-level", + component: () => import("@/pages/demo/permission/button-level.vue"), + name: "PermissionButtonLevel", + meta: { + title: "按钮级", + // 如果未设置,则不限制该页面的访问 + roles: undefined, + // 在路由中设置权限标识字符来控制访问 + permissions: ["permission:button-level"] + } + } + ] + } +] + +/** 路由实例 */ +export const router = createRouter({ + history: routerConfig.history, + routes: routerConfig.thirdLevelRouteCache ? flatMultiLevelRoutes(constantRoutes) : constantRoutes +}) + +/** 重置路由 */ +export function resetRouter() { + try { + // 注意:所有动态路由路由必须带有 Name 属性,否则可能会不能完全重置干净 + router.getRoutes().forEach((route) => { + const { name, meta } = route + if (name && (meta.roles?.length || meta.permissions?.length)) { + router.hasRoute(name) && router.removeRoute(name) + } + }) + } catch { + // 强制刷新浏览器也行,只是交互体验不是很好 + location.reload() + } +} + +// 注册路由导航守卫 +registerNavigationGuard(router) diff --git a/src/router/whitelist.ts b/src/router/whitelist.ts new file mode 100644 index 0000000..7811e19 --- /dev/null +++ b/src/router/whitelist.ts @@ -0,0 +1,13 @@ +import type { RouteLocationNormalizedGeneric, RouteRecordNameGeneric } from "vue-router" + +/** 免登录白名单(匹配路由 path) */ +const whiteListByPath: string[] = ["/login"] + +/** 免登录白名单(匹配路由 name) */ +const whiteListByName: RouteRecordNameGeneric[] = [] + +/** 判断是否在白名单 */ +export function isWhiteList(to: RouteLocationNormalizedGeneric) { + // path 和 name 任意一个匹配上即可 + return whiteListByPath.includes(to.path) || whiteListByName.includes(to.name) +} diff --git a/tests/components/Notify.test.ts b/tests/components/Notify.test.ts new file mode 100644 index 0000000..211a9d2 --- /dev/null +++ b/tests/components/Notify.test.ts @@ -0,0 +1,35 @@ +import Notify from "@@/components/Notify/index.vue" +import List from "@@/components/Notify/List.vue" +import { shallowMount } from "@vue/test-utils" +import { describe, expect, it } from "vitest" + +describe("notify", () => { + it("正常渲染", () => { + const wrapper = shallowMount(Notify) + expect(wrapper.classes("notify")).toBe(true) + }) +}) + +describe("list", () => { + it("list 长度为 0", () => { + const wrapper = shallowMount(List, { + props: { + data: [] + } + }) + expect(wrapper.find("el-empty-stub").exists()).toBe(true) + }) + + it("list 长度不为 0", () => { + const wrapper = shallowMount(List, { + props: { + data: [ + { + title: "" + } + ] + } + }) + expect(wrapper.find("el-empty-stub").exists()).toBe(false) + }) +}) diff --git a/tests/demo.test.ts b/tests/demo.test.ts new file mode 100644 index 0000000..ed011e9 --- /dev/null +++ b/tests/demo.test.ts @@ -0,0 +1,33 @@ +/** + * @description 该文件所有示例均是为了向你演示 Vitest 最基本的用法 + * @link https://cn.vitest.dev/api + * @api describe: 形成一个作用域 + * @api test/it: 定义了一组关于测试期望的方法,它接收测试名称和一个含有测试期望的函数 + * @api expect: 用来创建断言 + * @api toBe: 可以用于断言原始类型是否相等,或者对象是否共享相同的引用 + * @api toEqual: 断言实际值是否等于接收到的值或具有相同的结构(如果是对象,则递归比较它们) + */ + +import { describe, expect, it } from "vitest" + +const author1 = { + name: "pany", + email: "939630029@qq.com", + url: "https://github.com/pany-ang" +} + +const author2 = { + name: "pany", + email: "939630029@qq.com", + url: "https://github.com/pany-ang" +} + +describe("这里填写作用域名称", () => { + it("测试基础数据类型", () => { + expect(1 + 1).toBe(2) + }) + + it("测试引用类型", () => { + expect(author1).toEqual(author2) + }) +}) diff --git a/tests/utils/validate.test.ts b/tests/utils/validate.test.ts new file mode 100644 index 0000000..22c9686 --- /dev/null +++ b/tests/utils/validate.test.ts @@ -0,0 +1,40 @@ +import { isArray } from "@@/utils/validate" +import { describe, expect, it } from "vitest" + +describe("isArray", () => { + it("string", () => { + expect(isArray("")).toBe(false) + }) + + it("number", () => { + expect(isArray(1)).toBe(false) + }) + + it("boolean", () => { + expect(isArray(true)).toBe(false) + }) + + it("null", () => { + expect(isArray(null)).toBe(false) + }) + + it("undefined", () => { + expect(isArray(undefined)).toBe(false) + }) + + it("symbol", () => { + expect(isArray(Symbol())).toBe(false) + }) + + it("bigInt", () => { + expect(isArray(BigInt(1))).toBe(false) + }) + + it("object", () => { + expect(isArray({})).toBe(false) + }) + + it("array object", () => { + expect(isArray([])).toBe(true) + }) +}) diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..d552060 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,45 @@ +/** + * @link https://www.typescriptlang.org/tsconfig + * @link https://cn.vuejs.org/guide/typescript/overview#configuring-tsconfig-json + * @link https://cn.vite.dev/guide/features#typescript-compiler-options + */ + +{ + "compilerOptions": { + "target": "esnext", + "jsx": "preserve", + "jsxImportSource": "vue", + "lib": ["esnext", "dom"], + "useDefineForClassFields": true, + "experimentalDecorators": true, + // baseUrl 用来告诉编译器到哪里去查找模块,使用非相对模块时必须配置此项 + "baseUrl": ".", + "module": "esnext", + "moduleResolution": "bundler", + // 非相对模块导入的路径映射配置,根据 baseUrl 配置进行路径计算,与 vite.config 中 alias 配置同步 + "paths": { + "@/*": ["src/*"], + "@@/*": ["src/common/*"] + }, + "resolveJsonModule": true, + "types": ["vite/client", "element-plus/global"], + // 允许导入 .ts .mts .tsx 拓展名的文件 + "allowImportingTsExtensions": true, + // 允许 JS + "allowJs": true, + // TS 严格模式 + "strict": true, + "importHelpers": true, + // 不输出任何编译后的文件,只进行类型检查 + "noEmit": true, + "sourceMap": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "isolatedModules": true, + "skipLibCheck": true + }, + // 需要被编译的文件列表 + "include": ["**/*.ts", "**/*.tsx", "**/*.vue", "**/*.d.ts"], + // 从编译中排除的文件列表 + "exclude": ["node_modules", "dist"] +} diff --git a/types/api.d.ts b/types/api.d.ts new file mode 100644 index 0000000..8ab5c24 --- /dev/null +++ b/types/api.d.ts @@ -0,0 +1,6 @@ +/** 所有 api 接口的响应数据都应该准守该格式 */ +interface ApiResponseData { + code: number + data: T + message: string +} diff --git a/types/auto/auto-imports.d.ts b/types/auto/auto-imports.d.ts new file mode 100644 index 0000000..f859f3d --- /dev/null +++ b/types/auto/auto-imports.d.ts @@ -0,0 +1,94 @@ +/* eslint-disable */ +/* prettier-ignore */ +// @ts-nocheck +// noinspection JSUnusedGlobalSymbols +// Generated by unplugin-auto-import +// biome-ignore lint: disable +export {} +declare global { + const EffectScope: typeof import('vue').EffectScope + const ElLoading: typeof import('element-plus/es').ElLoading + const ElMessage: typeof import('element-plus/es').ElMessage + const ElMessageBox: typeof import('element-plus/es').ElMessageBox + const ElNotification: typeof import('element-plus/es').ElNotification + const acceptHMRUpdate: typeof import('pinia').acceptHMRUpdate + const computed: typeof import('vue').computed + const createApp: typeof import('vue').createApp + const createPinia: typeof import('pinia').createPinia + const customRef: typeof import('vue').customRef + const defineAsyncComponent: typeof import('vue').defineAsyncComponent + const defineComponent: typeof import('vue').defineComponent + const defineStore: typeof import('pinia').defineStore + const effectScope: typeof import('vue').effectScope + const getActivePinia: typeof import('pinia').getActivePinia + const getCurrentInstance: typeof import('vue').getCurrentInstance + const getCurrentScope: typeof import('vue').getCurrentScope + const getCurrentWatcher: typeof import('vue').getCurrentWatcher + const h: typeof import('vue').h + const inject: typeof import('vue').inject + const isProxy: typeof import('vue').isProxy + const isReactive: typeof import('vue').isReactive + const isReadonly: typeof import('vue').isReadonly + const isRef: typeof import('vue').isRef + const isShallow: typeof import('vue').isShallow + const mapActions: typeof import('pinia').mapActions + const mapGetters: typeof import('pinia').mapGetters + const mapState: typeof import('pinia').mapState + const mapStores: typeof import('pinia').mapStores + const mapWritableState: typeof import('pinia').mapWritableState + const markRaw: typeof import('vue').markRaw + const nextTick: typeof import('vue').nextTick + const onActivated: typeof import('vue').onActivated + const onBeforeMount: typeof import('vue').onBeforeMount + const onBeforeRouteLeave: typeof import('vue-router').onBeforeRouteLeave + const onBeforeRouteUpdate: typeof import('vue-router').onBeforeRouteUpdate + const onBeforeUnmount: typeof import('vue').onBeforeUnmount + const onBeforeUpdate: typeof import('vue').onBeforeUpdate + const onDeactivated: typeof import('vue').onDeactivated + const onErrorCaptured: typeof import('vue').onErrorCaptured + const onMounted: typeof import('vue').onMounted + const onRenderTracked: typeof import('vue').onRenderTracked + const onRenderTriggered: typeof import('vue').onRenderTriggered + const onScopeDispose: typeof import('vue').onScopeDispose + const onServerPrefetch: typeof import('vue').onServerPrefetch + const onUnmounted: typeof import('vue').onUnmounted + const onUpdated: typeof import('vue').onUpdated + const onWatcherCleanup: typeof import('vue').onWatcherCleanup + const provide: typeof import('vue').provide + const reactive: typeof import('vue').reactive + const readonly: typeof import('vue').readonly + const ref: typeof import('vue').ref + const resolveComponent: typeof import('vue').resolveComponent + const setActivePinia: typeof import('pinia').setActivePinia + const setMapStoreSuffix: typeof import('pinia').setMapStoreSuffix + const shallowReactive: typeof import('vue').shallowReactive + const shallowReadonly: typeof import('vue').shallowReadonly + const shallowRef: typeof import('vue').shallowRef + const storeToRefs: typeof import('pinia').storeToRefs + const toRaw: typeof import('vue').toRaw + const toRef: typeof import('vue').toRef + const toRefs: typeof import('vue').toRefs + const toValue: typeof import('vue').toValue + const triggerRef: typeof import('vue').triggerRef + const unref: typeof import('vue').unref + const useAttrs: typeof import('vue').useAttrs + const useCssModule: typeof import('vue').useCssModule + const useCssVars: typeof import('vue').useCssVars + const useId: typeof import('vue').useId + const useLink: typeof import('vue-router').useLink + const useModel: typeof import('vue').useModel + const useRoute: typeof import('vue-router').useRoute + const useRouter: typeof import('vue-router').useRouter + const useSlots: typeof import('vue').useSlots + const useTemplateRef: typeof import('vue').useTemplateRef + const watch: typeof import('vue').watch + const watchEffect: typeof import('vue').watchEffect + const watchPostEffect: typeof import('vue').watchPostEffect + const watchSyncEffect: typeof import('vue').watchSyncEffect +} +// for type re-export +declare global { + // @ts-ignore + export type { Component, Slot, Slots, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, ShallowRef, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue' + import('vue') +} diff --git a/types/auto/components.d.ts b/types/auto/components.d.ts new file mode 100644 index 0000000..4ede21b --- /dev/null +++ b/types/auto/components.d.ts @@ -0,0 +1,66 @@ +/* eslint-disable */ +// @ts-nocheck +// biome-ignore lint: disable +// oxlint-disable +// ------ +// Generated by unplugin-vue-components +// Read more: https://github.com/vuejs/core/pull/3399 + +export {} + +/* prettier-ignore */ +declare module 'vue' { + export interface GlobalComponents { + ElAlert: typeof import('element-plus/es')['ElAlert'] + ElAside: typeof import('element-plus/es')['ElAside'] + ElAvatar: typeof import('element-plus/es')['ElAvatar'] + ElBacktop: typeof import('element-plus/es')['ElBacktop'] + ElBadge: typeof import('element-plus/es')['ElBadge'] + ElBreadcrumb: typeof import('element-plus/es')['ElBreadcrumb'] + ElBreadcrumbItem: typeof import('element-plus/es')['ElBreadcrumbItem'] + ElButton: typeof import('element-plus/es')['ElButton'] + ElButtonGroup: typeof import('element-plus/es')['ElButtonGroup'] + ElCard: typeof import('element-plus/es')['ElCard'] + ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider'] + ElContainer: typeof import('element-plus/es')['ElContainer'] + ElDialog: typeof import('element-plus/es')['ElDialog'] + ElDivider: typeof import('element-plus/es')['ElDivider'] + ElDrawer: typeof import('element-plus/es')['ElDrawer'] + ElDropdown: typeof import('element-plus/es')['ElDropdown'] + ElDropdownItem: typeof import('element-plus/es')['ElDropdownItem'] + ElDropdownMenu: typeof import('element-plus/es')['ElDropdownMenu'] + ElEmpty: typeof import('element-plus/es')['ElEmpty'] + ElForm: typeof import('element-plus/es')['ElForm'] + ElFormItem: typeof import('element-plus/es')['ElFormItem'] + ElHeader: typeof import('element-plus/es')['ElHeader'] + ElIcon: typeof import('element-plus/es')['ElIcon'] + ElImage: typeof import('element-plus/es')['ElImage'] + ElInput: typeof import('element-plus/es')['ElInput'] + ElLink: typeof import('element-plus/es')['ElLink'] + ElMain: typeof import('element-plus/es')['ElMain'] + ElMenu: typeof import('element-plus/es')['ElMenu'] + ElMenuItem: typeof import('element-plus/es')['ElMenuItem'] + ElOption: typeof import('element-plus/es')['ElOption'] + ElPagination: typeof import('element-plus/es')['ElPagination'] + ElPopover: typeof import('element-plus/es')['ElPopover'] + ElRadioButton: typeof import('element-plus/es')['ElRadioButton'] + ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup'] + ElScrollbar: typeof import('element-plus/es')['ElScrollbar'] + ElSelect: typeof import('element-plus/es')['ElSelect'] + ElSelectV2: typeof import('element-plus/es')['ElSelectV2'] + ElSubMenu: typeof import('element-plus/es')['ElSubMenu'] + ElSwitch: typeof import('element-plus/es')['ElSwitch'] + ElTable: typeof import('element-plus/es')['ElTable'] + ElTableColumn: typeof import('element-plus/es')['ElTableColumn'] + ElTabPane: typeof import('element-plus/es')['ElTabPane'] + ElTabs: typeof import('element-plus/es')['ElTabs'] + ElTag: typeof import('element-plus/es')['ElTag'] + ElText: typeof import('element-plus/es')['ElText'] + ElTooltip: typeof import('element-plus/es')['ElTooltip'] + RouterLink: typeof import('vue-router')['RouterLink'] + RouterView: typeof import('vue-router')['RouterView'] + } + export interface GlobalDirectives { + vLoading: typeof import('element-plus/es')['ElLoadingDirective'] + } +} diff --git a/types/auto/svg-component-global.d.ts b/types/auto/svg-component-global.d.ts new file mode 100644 index 0000000..8c7ee10 --- /dev/null +++ b/types/auto/svg-component-global.d.ts @@ -0,0 +1,26 @@ +/* eslint-disable */ +/* prettier-ignore */ +// biome-ignore format: off +// biome-ignore lint: off +// @ts-nocheck +// Generated by unplugin-svg-component +import 'vue' +declare module 'vue' { + export interface GlobalComponents { + SvgIcon: import("vue").DefineComponent<{ + name: { + type: import("vue").PropType<"dashboard" | "fullscreen-exit" | "fullscreen" | "keyboard-down" | "keyboard-enter" | "keyboard-esc" | "keyboard-up" | "search">; + default: string; + required: true; + }; + }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly; + default: string; + required: true; + }; + }>>, { + name: "dashboard" | "fullscreen-exit" | "fullscreen" | "keyboard-down" | "keyboard-enter" | "keyboard-esc" | "keyboard-up" | "search"; + }>; + } +} diff --git a/types/auto/svg-component.d.ts b/types/auto/svg-component.d.ts new file mode 100644 index 0000000..ca3f244 --- /dev/null +++ b/types/auto/svg-component.d.ts @@ -0,0 +1,26 @@ +/* eslint-disable */ +/* prettier-ignore */ +// biome-ignore format: off +// biome-ignore lint: off +// @ts-nocheck +// Generated by unplugin-svg-component +declare module '~virtual/svg-component' { + const SvgIcon: import("vue").DefineComponent<{ + name: { + type: import("vue").PropType<"dashboard" | "fullscreen-exit" | "fullscreen" | "keyboard-down" | "keyboard-enter" | "keyboard-esc" | "keyboard-up" | "search">; + default: string; + required: true; + }; + }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly; + default: string; + required: true; + }; + }>>, { + name: "dashboard" | "fullscreen-exit" | "fullscreen" | "keyboard-down" | "keyboard-enter" | "keyboard-esc" | "keyboard-up" | "search"; + }>; + export const svgNames: ["dashboard", "fullscreen-exit", "fullscreen", "keyboard-down", "keyboard-enter", "keyboard-esc", "keyboard-up", "search"]; + export type SvgName = "dashboard" | "fullscreen-exit" | "fullscreen" | "keyboard-down" | "keyboard-enter" | "keyboard-esc" | "keyboard-up" | "search"; + export default SvgIcon; +} diff --git a/types/directives.d.ts b/types/directives.d.ts new file mode 100644 index 0000000..6788f00 --- /dev/null +++ b/types/directives.d.ts @@ -0,0 +1,10 @@ +import type { Directive } from "vue" + +export {} + +// 由 app.directive 全局注册的自定义指令需要在这里声明 TS 类型才能获得类型提示 +declare module "vue" { + export interface ComponentCustomProperties { + vPermission: Directive + } +} diff --git a/types/env.d.ts b/types/env.d.ts new file mode 100644 index 0000000..4b07d10 --- /dev/null +++ b/types/env.d.ts @@ -0,0 +1,11 @@ +/** 声明 vite 环境变量的类型(如果未声明则默认是 any) */ +interface ImportMetaEnv { + readonly VITE_APP_TITLE: string + readonly VITE_BASE_URL: string + readonly VITE_ROUTER_HISTORY: "hash" | "html5" + readonly VITE_PUBLIC_PATH: string +} + +interface ImportMeta { + readonly env: ImportMetaEnv +} diff --git a/types/vue-router.d.ts b/types/vue-router.d.ts new file mode 100644 index 0000000..7cde6ea --- /dev/null +++ b/types/vue-router.d.ts @@ -0,0 +1,63 @@ +import type * as ElementPlusIconsVue from "@element-plus/icons-vue" +import type { SvgName } from "~virtual/svg-component" +import "vue-router" + +export {} + +type ElementPlusIconsName = keyof typeof ElementPlusIconsVue + +declare module "vue-router" { + interface RouteMeta { + /** + * @description 设置该路由在侧边栏和面包屑中展示的名字 + */ + title?: string + /** + * @description 设置该路由的图标,记得将 svg 导入 src/common/assets/icons + */ + svgIcon?: SvgName + /** + * @description 设置该路由的图标,直接使用 Element Plus 的 Icon(与 svgIcon 同时设置时,svgIcon 将优先生效) + */ + elIcon?: ElementPlusIconsName + /** + * @description 默认 false,设置 true 的时候该路由不会在侧边栏出现 + */ + hidden?: boolean + /** + * @description 设置能进入该路由的角色,支持多个角色叠加 + */ + roles?: string[] + /** + * @description 设置能进入该路由的权限标识字符,支持多个权限标识字符叠加 + */ + permissions?: string[] + /** + * @description 默认 true,如果设置为 false,则不会在面包屑中显示 + */ + breadcrumb?: boolean + /** + * @description 默认 false,如果设置为 true,它则会固定在 tags-view 中 + */ + affix?: boolean + /** + * @description 当一个路由的 children 属性中声明的非隐藏子路由只有 1 个且该子路由为叶子节点时,会将这个子路由当做父路由显示在侧边栏 + * @description 当大于 1 个时,会恢复成嵌套模式 + * @description 如果想不管个数总是显示父路由,可以在父路由上设置 alwaysShow: true + */ + alwaysShow?: boolean + /** + * @description 示例: activeMenu: "/xxx/xxx", + * @description 当设置了该属性进入路由时,则会高亮 activeMenu 属性对应的侧边栏 + * @description 该属性适合使用在有 hidden: true 属性的路由上 + */ + activeMenu?: string + /** + * @description 是否缓存该路由页面 + * @description 默认为 false,为 true 时代表需要缓存,此时该路由和该页面都需要设置一致的 Name + */ + keepAlive?: boolean + } + + // 路由的 redirect 属性设为 "noRedirect" 时,该路由在面包屑中显示为纯文本(不可点击) +} diff --git a/uno.config.ts b/uno.config.ts new file mode 100644 index 0000000..35c8f2d --- /dev/null +++ b/uno.config.ts @@ -0,0 +1,25 @@ +import { defineConfig, presetAttributify, presetWind3 } from "unocss" + +export default defineConfig({ + // 预设 + presets: [ + // 属性化模式 & 无值的属性模式 + presetAttributify({ + prefix: "un-", + prefixedOnly: false + }), + // 默认预设 + presetWind3({ + important: "#app" + }) + ], + // 自定义规则 + rules: [], + // 自定义快捷方式 + shortcuts: { + "wh-full": "w-full h-full", + "flex-center": "flex justify-center items-center", + "flex-x-center": "flex justify-center", + "flex-y-center": "flex items-center" + } +}) diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 0000000..b9e94a3 --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,156 @@ +/// + +import { resolve } from "node:path" +import vue from "@vitejs/plugin-vue" +import UnoCSS from "unocss/vite" +import AutoImport from "unplugin-auto-import/vite" +import SvgComponent from "unplugin-svg-component/vite" +import { ElementPlusResolver } from "unplugin-vue-components/resolvers" +import Components from "unplugin-vue-components/vite" +import { defineConfig, loadEnv } from "vite" +import { ViteMcp } from "vite-plugin-mcp" +import svgLoader from "vite-svg-loader" + +// Configuring Vite: https://cn.vite.dev/config +export default defineConfig(({ mode }) => { + const { VITE_PUBLIC_PATH } = loadEnv(mode, process.cwd(), "") as ImportMetaEnv + return { + // 开发或打包构建时用到的公共基础路径 + base: VITE_PUBLIC_PATH, + resolve: { + alias: { + // @ 符号指向 src 目录 + "@": resolve(__dirname, "src"), + // @@ 符号指向 src/common 通用目录 + "@@": resolve(__dirname, "src/common") + } + }, + // 开发环境服务器配置 + server: { + // 是否监听所有地址 + host: true, + // 端口号 + port: 3333, + // 端口被占用时,是否直接退出 + strictPort: false, + // 是否自动打开浏览器 + open: true, + // 反向代理 + proxy: { + "/api/v1": { + target: "https://apifoxmock.com/m1/2930465-2145633-default", + // 是否为 WebSocket + ws: false, + // 是否允许跨域 + changeOrigin: true + } + }, + // 是否允许跨域 + cors: true, + // 预热常用文件,提高初始页面加载速度 + warmup: { + clientFiles: [ + "./src/layouts/**/*.*", + "./src/pinia/**/*.*", + "./src/router/**/*.*" + ] + } + }, + // 构建配置 + build: { + // 自定义底层的 Rollup 打包配置 + rollupOptions: { + output: { + /** + * @name 分块策略 + * @description 1. 注意这些包名必须存在,否则打包会报错 + * @description 2. 如果你不想自定义 chunk 分割策略,可以直接移除这段配置 + */ + manualChunks: { + vue: ["vue", "vue-router", "pinia"], + element: ["element-plus", "@element-plus/icons-vue"], + vxe: ["vxe-table"] + } + } + }, + // 是否开启 gzip 压缩大小报告,禁用时能略微提高构建性能 + reportCompressedSize: false, + // 单个 chunk 文件的大小超过 2048kB 时发出警告 + chunkSizeWarningLimit: 2048 + }, + // 混淆器 + esbuild: + mode === "development" + ? undefined + : { + // 打包构建时移除 console.log + pure: ["console.log"], + // 打包构建时移除 debugger + drop: ["debugger"], + // 打包构建时移除所有注释 + legalComments: "none" + }, + // 依赖预构建 + optimizeDeps: { + include: ["element-plus/es/components/*/style/css"] + }, + // CSS 相关配置 + css: { + // 线程中运行 CSS 预处理器 + preprocessorMaxWorkers: true + }, + // 插件配置 + plugins: [ + vue(), + // 支持将 SVG 文件导入为 Vue 组件 + svgLoader({ + defaultImport: "url", + svgoConfig: { + plugins: [ + { + name: "preset-default", + params: { + overrides: { + // @see https://github.com/svg/svgo/issues/1128 + removeViewBox: false + } + } + } + ] + } + }), + // 自动生成 SvgIcon 组件和 SVG 雪碧图 + SvgComponent({ + iconDir: [resolve(__dirname, "src/common/assets/icons")], + preserveColor: resolve(__dirname, "src/common/assets/icons/preserve-color"), + dts: true, + dtsDir: resolve(__dirname, "types/auto") + }), + // 原子化 CSS + UnoCSS(), + // 自动按需导入 API + AutoImport({ + imports: ["vue", "vue-router", "pinia"], + dts: "types/auto/auto-imports.d.ts", + resolvers: [ElementPlusResolver({ importStyle: false })] + }), + // 自动按需导入组件 + Components({ + dts: "types/auto/components.d.ts", + resolvers: [ElementPlusResolver({ importStyle: false })] + }), + // 为项目开启 MCP Server + ViteMcp() + ], + // Configuring Vitest: https://cn.vitest.dev/config + test: { + include: ["tests/**/*.test.{ts,js}"], + environment: "happy-dom", + server: { + deps: { + inline: ["element-plus"] + } + } + } + } +})