From ba5cd4bbe12a7970a2603380d37398ba596e127e Mon Sep 17 00:00:00 2001 From: yuanzhipeng <2501363769@qq.com> Date: Wed, 17 Jun 2026 14:40:43 +0800 Subject: [PATCH] =?UTF-8?q?feat(lzwcai-agile-db):=20=E6=9B=B4=E6=96=B0Agil?= =?UTF-8?q?eDB=E6=8A=80=E8=83=BD=E8=87=B3v0.4.2=E7=89=88=E6=9C=AC=E5=B9=B6?= =?UTF-8?q?=E6=89=A9=E5=B1=95=E5=B7=A5=E5=85=B7=E9=9B=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将技能版本从0.2.0升级至0.4.2 - 工具数量从33个扩展至57个,新增数据源管理、AI训练、库表关联配置等功能 - 新增MQTT字段关联同步模块(8个工具)和库表关联配置(3个工具) - 添加重要的契约提示和安全确认原则,包括target默认值、alter_table操作限制等 - 修正工具参数说明,如execute_sql的executableSql改为sql,参数结构优化 - 增强安全机制,明确危险操作的用户确认流程和目标资源选择规则 - 更新README.md中的工具数量统计和功能描述 --- .kilo/skills/lzwcai-agile-db.zip | Bin 9699 -> 0 bytes .kilo/skills/lzwcai-agile-db/SKILL.md | 387 +++- .kilo/skills/mcp-tool-testing.zip | Bin 5992 -> 0 bytes lzwcai_mcp_agile_db/README.md | 3 +- .../__pycache__/__init__.cpython-312.pyc | Bin 323 -> 323 bytes .../__pycache__/server.cpython-312.pyc | Bin 5979 -> 6276 bytes .../logs/lzwcai_mcp_agile_db.log | 212 +-- .../logs/lzwcai_mcp_agile_db_error.log | 17 +- .../lzwcai_mcp_agile_db/server.py | 31 +- .../__pycache__/__init__.cpython-312.pyc | Bin 833 -> 754 bytes .../tools/__pycache__/_base.cpython-312.pyc | Bin 4053 -> 3985 bytes .../__pycache__/ai_training.cpython-312.pyc | Bin 0 -> 3375 bytes .../__pycache__/api_keys.cpython-312.pyc | Bin 5420 -> 7243 bytes .../connection_config.cpython-312.pyc | Bin 0 -> 3951 bytes .../__pycache__/data_import.cpython-312.pyc | Bin 3259 -> 8935 bytes .../database_tables.cpython-312.pyc | Bin 6876 -> 12430 bytes .../__pycache__/datasources.cpython-312.pyc | Bin 8404 -> 12060 bytes .../__pycache__/mqtt_sync.cpython-312.pyc | Bin 0 -> 7845 bytes .../tools/__pycache__/skills.cpython-312.pyc | Bin 6027 -> 7867 bytes .../__pycache__/sql_execution.cpython-312.pyc | Bin 1386 -> 1866 bytes .../__pycache__/subscriptions.cpython-312.pyc | Bin 1293 -> 1718 bytes .../__pycache__/table_data.cpython-312.pyc | Bin 6518 -> 7523 bytes .../lzwcai_mcp_agile_db/tools/ai_training.py | 68 + .../lzwcai_mcp_agile_db/tools/api_keys.py | 33 +- .../tools/connection_config.py | 104 ++ .../lzwcai_mcp_agile_db/tools/data_import.py | 166 +- .../tools/database_tables.py | 141 +- .../lzwcai_mcp_agile_db/tools/datasources.py | 90 +- .../lzwcai_mcp_agile_db/tools/mqtt_sync.py | 151 ++ .../lzwcai_mcp_agile_db/tools/skills.py | 46 +- .../tools/sql_execution.py | 9 +- .../tools/subscriptions.py | 18 +- .../lzwcai_mcp_agile_db/tools/table_data.py | 32 +- .../__pycache__/__init__.cpython-312.pyc | Bin 531 -> 456 bytes .../__pycache__/api_client.cpython-312.pyc | Bin 11555 -> 12896 bytes .../__pycache__/env_config.cpython-312.pyc | Bin 2150 -> 2181 bytes .../__pycache__/logger_config.cpython-312.pyc | Bin 5588 -> 5508 bytes .../lzwcai_mcp_agile_db/utils/api_client.py | 50 +- .../lzwcai_mcp_agile_db/utils/env_config.py | 2 +- .../数据库模块-功能与业务链路说明.md | 454 +++++ .../数据库管理平台-MCP工具设计方案.md | 54 +- lzwcai_mcp_agile_db/main.py | 4 +- lzwcai_mcp_agile_db/pyproject.toml | 2 +- lzwcai_mcp_agile_db_third/.python-version | 1 + lzwcai_mcp_agile_db_third/README.md | 75 + .../__pycache__/main.cpython-312.pyc | Bin 0 -> 826 bytes .../lzwcai_mcp_agile_db_third/.gitignore | 21 + .../API_DOCUMENTATION.md | 1620 +++++++++++++++++ .../lzwcai_mcp_agile_db_third/README.md | 75 + .../lzwcai_mcp_agile_db_third/__init__.py | 1 + .../lzwcai_mcp_agile_db_third/main.py | 216 +++ .../lzwcai_mcp_agile_db_third/mock_db.py | 137 ++ .../lzwcai_mcp_agile_db_third/pyproject.toml | 41 + .../lzwcai_mcp_agile_db_third/tools.py | 870 +++++++++ .../utils/__init__.py | 14 + .../utils/api_client.py | 223 +++ .../utils/env_config.py | 31 + .../utils/logger_config.py | 85 + lzwcai_mcp_agile_db_third/main.py | 17 + lzwcai_mcp_agile_db_third/pyproject.toml | 41 + lzwcai_mcp_agile_db_third/selftest_tools.py | 418 +++++ lzwcai_mcp_agile_db_third/uv.toml | 4 + .../lzwcai_mcp_api_converter.log | 8 + .../__pycache__/__init__.cpython-312.pyc | Bin 213 -> 213 bytes .../src/__pycache__/__init__.cpython-312.pyc | Bin 243 -> 217 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 252 -> 226 bytes .../__pycache__/business_util.cpython-312.pyc | Bin 25065 -> 24983 bytes .../get_business_api.cpython-312.pyc | Bin 8473 -> 8468 bytes .../core/__pycache__/__init__.cpython-312.pyc | Bin 248 -> 222 bytes .../api_auth_service.cpython-312.pyc | Bin 42777 -> 42750 bytes .../core/__pycache__/api_base.cpython-312.pyc | Bin 22656 -> 22640 bytes .../__pycache__/core_server.cpython-312.pyc | Bin 42421 -> 42323 bytes .../core/__pycache__/get_auth.cpython-312.pyc | Bin 12391 -> 12386 bytes .../util/__pycache__/__init__.cpython-312.pyc | Bin 248 -> 222 bytes .../__pycache__/api_helper.cpython-312.pyc | Bin 15667 -> 15667 bytes .../__pycache__/logger_config.cpython-312.pyc | Bin 19573 -> 19572 bytes .../__pycache__/nested_value.cpython-312.pyc | Bin 5863 -> 5827 bytes lzwcai_mcpskills_generate_reports/.gitignore | 36 + lzwcai_mcpskills_generate_reports/README.md | 159 ++ .../.python-version | 1 + .../__init__.py | 29 + .../__pycache__/pipeline.cpython-312.pyc | Bin 0 -> 4112 bytes .../__pycache__/render_quote.cpython-312.pyc | Bin 0 -> 7520 bytes .../__pycache__/schema.cpython-312.pyc | Bin 0 -> 5816 bytes .../style_transfer.cpython-312.pyc | Bin 0 -> 8814 bytes .../lzwcai_mcpskills_generate_reports/cli.py | 122 ++ .../lzwcai_mcpskills_generate_reports.log | 37 + ...zwcai_mcpskills_generate_reports_error.log | 0 .../pipeline.py | 79 + .../render_quote.py | 161 ++ .../schema.py | 123 ++ .../server.py | 223 +++ .../style_transfer.py | 183 ++ .../template_scanner.py | 133 ++ .../utils/__init__.py | 6 + .../utils/logger_config.py | 112 ++ lzwcai_mcpskills_generate_reports/main.py | 10 + .../pyproject.toml | 40 + .../samples/sample_data.json | 412 +++++ .../templates/standard/meta.json | 11 + .../templates/standard/template.docx | Bin 0 -> 1918410 bytes .../__pycache__/main.cpython-312.pyc | Bin 17061 -> 17121 bytes .../schema_converter.cpython-312.pyc | Bin 9905 -> 9905 bytes .../logs/lzwcai_workflow_to_mcp.log | 148 +- .../logs/lzwcai_workflow_to_mcp_daily.log | 148 +- .../lzwcai_workflow_to_mcp/main.py | 11 +- .../__pycache__/__init__.cpython-312.pyc | Bin 1073 -> 1073 bytes .../__pycache__/api_client.cpython-312.pyc | Bin 22890 -> 22890 bytes .../__pycache__/env_config.cpython-312.pyc | Bin 2917 -> 2917 bytes .../__pycache__/json_helper.cpython-312.pyc | Bin 2311 -> 2311 bytes .../__pycache__/logger_config.cpython-312.pyc | Bin 7496 -> 7496 bytes .../__pycache__/name_helper.cpython-312.pyc | Bin 1543 -> 1543 bytes .../__pycache__/schema_helper.cpython-312.pyc | Bin 3042 -> 3042 bytes lzwcai_workflow_to_mcp/main.py | 4 +- lzwcai_workflow_to_mcp/pyproject.toml | 2 +- 115 files changed, 7587 insertions(+), 575 deletions(-) delete mode 100644 .kilo/skills/lzwcai-agile-db.zip delete mode 100644 .kilo/skills/mcp-tool-testing.zip create mode 100644 lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/ai_training.cpython-312.pyc create mode 100644 lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/connection_config.cpython-312.pyc create mode 100644 lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/mqtt_sync.cpython-312.pyc create mode 100644 lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/ai_training.py create mode 100644 lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/connection_config.py create mode 100644 lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/mqtt_sync.py create mode 100644 lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/数据库模块-功能与业务链路说明.md create mode 100644 lzwcai_mcp_agile_db_third/.python-version create mode 100644 lzwcai_mcp_agile_db_third/README.md create mode 100644 lzwcai_mcp_agile_db_third/__pycache__/main.cpython-312.pyc create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/.gitignore create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/API_DOCUMENTATION.md create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/README.md create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/__init__.py create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/main.py create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/mock_db.py create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/pyproject.toml create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/tools.py create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/__init__.py create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/api_client.py create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/env_config.py create mode 100644 lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/logger_config.py create mode 100644 lzwcai_mcp_agile_db_third/main.py create mode 100644 lzwcai_mcp_agile_db_third/pyproject.toml create mode 100644 lzwcai_mcp_agile_db_third/selftest_tools.py create mode 100644 lzwcai_mcp_agile_db_third/uv.toml create mode 100644 lzwcai_mcpskills_generate_reports/.gitignore create mode 100644 lzwcai_mcpskills_generate_reports/README.md create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/.python-version create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__init__.py create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/pipeline.cpython-312.pyc create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/render_quote.cpython-312.pyc create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/schema.cpython-312.pyc create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/style_transfer.cpython-312.pyc create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/cli.py create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/logs/lzwcai_mcpskills_generate_reports.log create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/logs/lzwcai_mcpskills_generate_reports_error.log create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/pipeline.py create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/render_quote.py create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/schema.py create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/server.py create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/style_transfer.py create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/template_scanner.py create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/utils/__init__.py create mode 100644 lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/utils/logger_config.py create mode 100644 lzwcai_mcpskills_generate_reports/main.py create mode 100644 lzwcai_mcpskills_generate_reports/pyproject.toml create mode 100644 lzwcai_mcpskills_generate_reports/samples/sample_data.json create mode 100644 lzwcai_mcpskills_generate_reports/templates/standard/meta.json create mode 100644 lzwcai_mcpskills_generate_reports/templates/standard/template.docx diff --git a/.kilo/skills/lzwcai-agile-db.zip b/.kilo/skills/lzwcai-agile-db.zip deleted file mode 100644 index 72157c8aed1d1dd638a194d2d851c1449b954a95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9699 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 diff --git a/.kilo/skills/lzwcai-agile-db/SKILL.md b/.kilo/skills/lzwcai-agile-db/SKILL.md index 16f04f9..ac1b2ec 100644 --- a/.kilo/skills/lzwcai-agile-db/SKILL.md +++ b/.kilo/skills/lzwcai-agile-db/SKILL.md @@ -1,7 +1,8 @@ --- name: lzwcai-agile-db description: AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据库操作工作流指导,适合零基础用户。 -version: 0.2.0 +metadata: + version: 0.4.2 --- # lzwcai-agile-db @@ -9,33 +10,56 @@ version: 0.2.0 AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据库操作工作流指导,适合零基础用户。 -## 完整工具清单(33 个工具) +## 完整工具清单(57 个工具) -本 skill 基于 `lzwcai_mcp_agile_db` MCP Server,共提供 33 个工具,分为 9 大类: +本 skill 基于 `lzwcai_mcp_agile_db` MCP Server,共提供 57 个工具,分为 12 大类。 -### 一、数据源管理(6 个工具) +> **⚠️ 契约提示(2026-06 真机验证)**:以下契约文档曾写错、已按真机修正,调用时务必遵守: +> - **`target` 默认 `test`**(不是 prod)。写线上库必须显式传 `target="prod"`。 +> - **`alter_table` 的 operation 只有 3 种**:`ADD_COLUMN` / `MODIFY_COLUMN` / `DROP_COLUMN`。其余(RENAME_COLUMN/ALTER_COLUMN_TYPE/SET_NOT_NULL...)后端**不支持**。 +> - **`alter_database` 改名字段是 `newName`**(不是 newDatabaseName)。 +> - **`generate_table_by_description` 是异步**:返回 taskId,需用 `get_ai_training_detail` 轮询。 +> - **`list_tables_with_ai` 的 `datasourceId` 实为「库/配置 ID」**(list_databases 返回的 config id),不是连接 ID。 + +### 一、数据源管理(10 个工具) | 工具 | 功能 | 危险等级 | |------|------|----------| | `list_datasources` | 获取数据源列表 | 安全 | | `get_datasource_detail` | 获取数据源详情(含数据库、表结构) | 安全 | -| `create_datasource` | 创建外部数据源连接 | 安全 | +| `create_datasource` | 创建外部数据源连接(可选先测连接) | 安全 | | `update_datasource` | 更新数据源连接信息 | 中等 | | `toggle_datasource_status` | 启用/停用数据源 | 中等 | | `delete_datasource` | 删除数据源 | **危险** | +| `test_connection` | 测试外部数据库连接(不创建) | 安全 | +| `get_realtime_structure` | 实时探测远端库表结构 | 安全 | +| `create_builtin_datasource` | 创建内置 PostgreSQL 连接(建库表链路第一步) | 安全 | +| `update_builtin_datasource` | 修改内置 PostgreSQL 连接 | 中等 | -### 二、数据库与表管理(6 个工具) +### 二、数据库与表管理(9 个工具) | 工具 | 功能 | 危险等级 | |------|------|----------| | `list_databases` | 获取数据源下的数据库列表 | 安全 | -| `list_tables` | 获取数据源下的表列表 | 安全 | +| `list_tables` | 获取数据源下的表列表(基础) | 安全 | +| `list_tables_with_ai` | 获取表元数据列表(含 AI 训练描述,内置库主列表) | 安全 | | `get_table_detail` | 获取表结构详情(字段、类型、主键) | 安全 | -| `create_table` | 创建新表 | **危险** | -| `alter_table` | 修改表结构 | **危险** | -| `generate_table_by_description` | AI 根据自然语言生成表结构 | 安全(仅生成,不创建) | +| `create_database` | 在内置源下创建数据库(建表前置) | **危险** | +| `create_table` | 在指定库创建新表 | **危险** | +| `create_database_table` | 一次性建库+表(合并接口) | **危险** | +| `alter_table` | 修改表结构(仅 ADD/MODIFY/DROP_COLUMN) | **危险** | +| `alter_database` | 修改数据库(改名,字段 newName) | **危险** | -### 三、表数据 CRUD(5 个工具) +### 三、AI 训练与生成(4 个工具) + +| 工具 | 功能 | 危险等级 | +|------|------|----------| +| `generate_table_by_description` | AI 自然语言生成表结构(异步,返回 taskId) | 安全(仅生成,不创建) | +| `get_ai_training_detail` | 查询/轮询 AI 训练任务详情 | 安全 | +| `list_ai_trainings` | AI 补全训练任务列表 | 安全 | +| `create_ai_training_by_selected` | 按选中表创建 AI 补全训练 | 中等 | + +### 四、表数据 CRUD(5 个工具,target 默认 test) | 工具 | 功能 | 危险等级 | |------|------|----------| @@ -45,26 +69,26 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 | `delete_table_rows` | 删除数据行(按主键) | **危险** | | `export_table_excel` | 导出表数据为 Excel(base64) | 安全 | -### 四、SQL 执行(1 个工具) +### 五、SQL 执行(1 个工具) | 工具 | 功能 | 危险等级 | |------|------|----------| -| `execute_sql` | 执行原生 SQL 查询 | 中等/危险 | +| `execute_sql` | 执行原生 SQL 查询(入参 `sql`,target 默认 prod) | 中等/危险 | -### 五、数据导入(2 个工具) +### 六、数据导入(2 个工具) | 工具 | 功能 | 危险等级 | |------|------|----------| -| `preview_import_data` | 上传 Excel 文件,AI 智能识别并预览 | 安全 | -| `confirm_import_data` | 确认导入 AI 识别后的数据 | **危险** | +| `preview_import_data` | 从 URL 下载 Excel 文件,AI 智能识别并预览 | 安全 | +| `confirm_import_data` | 确认导入(需传 databaseName,自动组装结构) | **危险** | -### 六、表订阅(1 个工具) +### 七、表订阅(1 个工具) | 工具 | 功能 | 危险等级 | |------|------|----------| -| `toggle_table_subscription` | 切换表的订阅状态 | 中等 | +| `toggle_table_subscription` | 切换表的订阅状态(configId+tableName+subscribe) | 中等 | -### 七、API 密钥管理(6 个工具) +### 八、API 密钥管理(7 个工具) | 工具 | 功能 | 危险等级 | |------|------|----------| @@ -74,8 +98,9 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 | `delete_api_key` | 删除 API 密钥 | **危险** | | `get_api_key_permissions` | 查看指定密钥的权限配置 | 安全 | | `grant_api_key_permissions` | 批量为 API 密钥授予权限 | **危险** | +| `revoke_api_key_permissions` | 撤销/删除已授予的权限(按权限记录 ID) | **危险** | -### 八、技能与工具管理(6 个工具) +### 九、技能与工具管理(7 个工具) | 工具 | 功能 | 危险等级 | |------|------|----------| @@ -84,7 +109,29 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 | `create_skill` | 为数据源创建技能 | 中等 | | `create_sql_tool` | 将 SQL 查询创建为可复用工具 | 中等 | | `delete_skill_tool` | 删除技能下的工具 | **危险** | -| `update_skill_config` | 更新技能配置 | 中等 | +| `update_skill_config` | 更新技能配置(名称/描述/模板) | 中等 | +| `update_skill_tool` | 修改技能工具(id+description+uniqueName) | 中等 | + +### 十、库表关联配置(3 个工具,外置源纳管/内置删库) + +| 工具 | 功能 | 危险等级 | +|------|------|----------| +| `create_connection_config` | 建库表关联(外置源建连后选库选表的最后一步) | 中等 | +| `update_connection_config` | 改库表关联范围 | 中等 | +| `delete_connection_config` | 删库表关联(也是「删内置库」的实现) | **危险** | + +### 十一、MQTT 字段关联同步(8 个工具,内置源专属) + +| 工具 | 功能 | 危险等级 | +|------|------|----------| +| `list_mqtt_configs` | MQTT 同步配置列表 | 安全 | +| `get_mqtt_config_detail` | 配置详情 | 安全 | +| `list_mqtt_target_tables` | 可同步目标表列表 | 安全 | +| `list_mqtt_target_table_columns` | 目标表字段列表 | 安全 | +| `create_mqtt_config` | 新增同步配置 | 中等 | +| `update_mqtt_config` | 修改同步配置 | 中等 | +| `delete_mqtt_config` | 删除同步配置 | **危险** | +| `refresh_mqtt_config_cache` | 刷新配置缓存 | 安全 | --- @@ -103,8 +150,11 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 ### 环境参数 `target` -- `prod` = 生产环境(正式数据,默认值) -- `test` = 测试环境(测试数据) +- `prod` = 生产环境(正式数据) +- `test` = 测试环境(调试数据) + +> **重要**:表数据 CRUD(query/insert/update/delete/export)的 `target` **默认 `test`**(安全优先)。要操作正式数据必须**显式传 `target="prod"`**。 +> 例外:`execute_sql` 的 target 默认 `prod`(沿用原行为)。 ### 主键 `primaryKey` @@ -120,6 +170,20 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 ## ⚠️ 安全确认原则(必须遵守) +### 〇、目标资源不得擅自选择(最高优先级铁律) + +定位操作目标的参数(`datasourceId` / `connectionId` / `databaseName` / `tableId` / `tableName` / `apiKeyId` / `skillId` 等),**永远不得猜测、编造或"随手挑一个"**: + +- **多个候选** → 列出全部,让用户选;严禁默认第一个或自认为"最合理"的那个。 +- **唯一候选** → 先声明"我将使用 XXX",给用户否决机会;创建/写入/删除类仍需用户确认后执行。 +- **没有候选 / 信息不足** → 直接问用户,不得编造。 + +> 当你发现自己正在"替用户决定用哪个数据源/数据库/表"时,立刻停下来改成提问。 + +**创建类操作**(`create_table` / `create_datasource` 等)执行前必须逐项确认落点,绝不"随便找个数据源就建"。例如建表须确认:数据源(`connectionId`)+ 数据库(`databaseName`)+ 表名(`tableName`),三者都要用户点头。 + +--- + ### 一、执行工具前的风险评估 当执行以下类型的操作时,**必须先询问用户确认**,不得擅作主张: @@ -294,26 +358,36 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 **用户**: "查一下 users 表前 10 条数据" ``` -调用: query_table_data(tableId="5", pageNum=1, pageSize=10) +调用: query_table_data(tableId="5", pageNum=1, pageSize=10) // target 默认 test;查正式数据传 target="prod" 返回: { - "columns": [{"name": "id", "type": "INTEGER"}, {"name": "username", "type": "VARCHAR"}, ...], - "data": [{"id": 1, "username": "admin", "email": "admin@test.com"}, ...], - "total": 156 + "data": { + "tables": { + "tableName": "users", + "columns": [ + {"columnName": "id", "columnType": "serial", "isPrimaryKey": true}, + {"columnName": "username", "columnType": "varchar"}, ... + ] + }, + "content": [[1, "admin", "admin@test.com"], [2, "user1", "user1@test.com"], ...], + "total": 156 + } } 回复: users 表共 156 条记录,当前显示第 1-10 条: - | id | username | email | created_at | - |----|----------|-----------------|---------------------| - | 1 | admin | admin@test.com | 2024-01-15 10:30:00 | - | 2 | user1 | user1@test.com | 2024-01-16 14:20:00 | + | id | username | email | + |----|----------|-----------------| + | 1 | admin | admin@test.com | + | 2 | user1 | user1@test.com | ... ``` +> **返回结构注意**:列定义在 `data.tables.columns[]`(字段名 `columnName`、是否主键 `isPrimaryKey`),行数据在 `data.content[]` 且是**位置数组**(按列顺序,不是键值对象)。展示/取主键时要把 content 的每个位置对到 columns 的同序字段。 + ### 注意事项 -- `target` 参数:`prod`=生产环境(默认),`test`=测试环境 +- `target` 参数:`test`=测试环境(**默认**),`prod`=生产环境(查正式数据须显式传) - 如果用户未指定数量,默认 `pageSize=10` - 如果用户说"翻页",增加 `pageNum` 参数 - 如果用户想看更多数据,可以增大 `pageSize`(最大根据 API 限制) -- 数据返回格式为对象数组 +- 行数据是位置数组(`data.content[]`),需对照 `data.tables.columns[]` 的列顺序解析 --- @@ -329,7 +403,7 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 1. 如果用户直接提供 SQL,直接使用 如果用户提供自然语言需求,先转换为 SQL ↓ -2. 调用 execute_sql(datasourceId="xx", executableSql="SELECT ...") +2. 调用 execute_sql(datasourceId="xx", sql="SELECT ...") ↓ 3. 展示查询结果 ↓ @@ -345,7 +419,7 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 调用: execute_sql( datasourceId="58", - executableSql="SELECT region, COUNT(*) as order_count FROM orders GROUP BY region ORDER BY order_count DESC" + sql="SELECT region, COUNT(*) as order_count FROM orders GROUP BY region ORDER BY order_count DESC" ) 返回: { "columns": [{"name": "region"}, {"name": "order_count"}], @@ -362,7 +436,8 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 ### 注意事项 - `datasourceId` 必须提供,如果用户未指定,先询问 - `sqlTemplate` 可选,用于模板化查询 -- `parameters` 可选,用于参数化查询(防止 SQL 注入) +- `params` 可选(对象),用于参数化查询(防止 SQL 注入);工具内部映射为后端的 `parameters` +- `target` 可选:`test`=测试环境(默认),`prod`=生产环境 - **执行危险操作(DELETE/DROP/TRUNCATE)前,必须向用户确认** - 如果查询结果超过 100 行,建议用户使用 `query_table_data` 代替 - 对于只读查询(SELECT),可以直接执行;对于写操作(INSERT/UPDATE/DELETE),必须二次确认 @@ -497,7 +572,7 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 - `data` 只包含要更新的字段,不需要提供全部字段 - 插入数据时,自增主键不需要提供 - 如果操作涉及多行,使用批量操作或循环调用 -- 增删改操作默认作用于 `prod` 环境 +- 增删改操作 `target` **默认 `test`**(安全优先);要写正式数据必须显式传 `target="prod"` --- @@ -511,12 +586,20 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 用户请求: "我需要一个用户表" / "帮我设计一个订单系统的表结构" ↓ 1. 调用 generate_table_by_description(requirement="用户描述") + → 返回 taskId(异步任务,此时还没有表结构) ↓ -2. 展示 AI 生成的表结构(表名、字段、类型、注释) +2. 轮询 get_ai_training_detail(taskId="xx") 直到 trainingStatus=2(已完成) + trainingStatus: 0 待训练 / 1 训练中 / 2 已完成 / 3 失败 + 完成后表结构在 createTableData.data.tables[] 里 ↓ -3. 用户确认后,调用 create_table(connectionId="xx", databaseName="xx", tableName="xx", columns=[...]) +3. 展示 AI 生成的表结构(表名、字段、类型、注释) ↓ -4. 确认创建成功 +4. ⚠️ 确认落点:列出可用数据源,让用户选择 connectionId 和 databaseName + (多个数据源时必须让用户选,绝不擅自找一个;只有一个也要说明后再继续) + ↓ +5. 用户确认表结构 + 落点后,调用 create_table(connectionId="xx", databaseName="xx", tableName="xx", columns=[...]) + ↓ +6. 确认创建成功 ``` ### 示例 @@ -527,28 +610,34 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 调用: generate_table_by_description( requirement="我需要一个商品表,包含商品名称、价格、库存、分类,用于电商系统" ) -返回: { - "tableName": "products", - "tableComment": "商品表", - "columns": [ - {"columnName": "id", "columnType": "SERIAL", "isPrimaryKey": true, "isAutoIncrement": true, "columnComment": "主键ID"}, - {"columnName": "name", "columnType": "VARCHAR", "columnLength": 200, "isNullable": false, "columnComment": "商品名称"}, - {"columnName": "price", "columnType": "DECIMAL", "columnLength": 10, "columnComment": "价格"}, - {"columnName": "stock", "columnType": "INTEGER", "columnComment": "库存数量"}, - {"columnName": "category_id", "columnType": "INTEGER", "columnComment": "分类ID"}, - {"columnName": "created_at", "columnType": "TIMESTAMP", "defaultValue": "NOW()", "columnComment": "创建时间"} - ] +返回: {"data": {"taskId": "831", "status": "0", "message": "任务已提交,等待AI生成表结构"}} + ← 异步!返回的是 taskId,不是表结构 + +轮询: get_ai_training_detail(taskId="831") +返回(完成时): { + "data": { + "trainingStatus": "2", // 2=已完成 + "progress": 100, + "createTableData": {"data": {"tables": [{ + "tableName": "products", + "tableComment": "商品表", + "columns": [ + {"columnName": "id", "columnType": "SERIAL", "isPrimaryKey": true, "columnComment": "主键ID"}, + {"columnName": "name", "columnType": "VARCHAR", "columnLength": 200, "isNullable": false, "columnComment": "商品名称"}, + {"columnName": "price", "columnType": "DECIMAL", "columnLength": 10, "columnComment": "价格"}, + {"columnName": "stock", "columnType": "INTEGER", "columnComment": "库存数量"} + ] + }]}} + } } 回复: AI 已生成表结构设计: 表名: products (商品表) 字段: - - id (SERIAL, 主键, 自增) - 主键ID + - id (SERIAL, 主键) - 主键ID - name (VARCHAR(200), 非空) - 商品名称 - price (DECIMAL(10)) - 价格 - stock (INTEGER) - 库存数量 - - category_id (INTEGER) - 分类ID - - created_at (TIMESTAMP, 默认NOW()) - 创建时间 是否需要在此基础上修改或直接创建? @@ -559,7 +648,7 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 databaseName="order_db", tableName="products", tableComment="商品表", - columns=[...] // 使用 AI 生成的 columns + columns=[...] // 使用轮询拿到的 createTableData.data.tables[0].columns ) 回复: 已成功创建表 products (商品表) ``` @@ -580,15 +669,13 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 4. 确认修改成功 ``` -**可用的 operations 类型**: +**可用的 operations 类型(真机验证,后端仅支持这 3 种)**: - `ADD_COLUMN`:添加字段 +- `MODIFY_COLUMN`:修改字段(改类型/长度/可空/默认值/注释,整列重定义) - `DROP_COLUMN`:删除字段 -- `RENAME_COLUMN`:重命名字段 -- `ALTER_COLUMN_TYPE`:修改字段类型 -- `SET_NOT_NULL`:设置为非空 -- `DROP_NOT_NULL`:取消非空约束 -- `SET_DEFAULT`:设置默认值 -- `DROP_DEFAULT`:删除默认值 + +> ⚠️ 后端**不支持** `RENAME_COLUMN`/`ALTER_COLUMN_TYPE`/`SET_NOT_NULL`/`DROP_NOT_NULL`/`SET_DEFAULT`/`DROP_DEFAULT`(会报「不支持的操作类型」)。改字段类型/约束统一用 `MODIFY_COLUMN` 传完整列定义。 +> `operations[].column` 是列定义对象,字段同建表(columnName/columnType/columnLength/isNullable/columnComment/defaultValue 等)。 ### 注意事项 - `requirement` 参数应尽可能详细,包含业务场景和字段需求 @@ -608,9 +695,9 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 ``` 用户请求: "帮我导入这个 Excel 文件" / "把表格数据导入数据库" ↓ -1. 用户将 Excel 文件转为 base64 编码 +1. 拿到 Excel 文件的可下载 URL(http/https,<500KB,.xlsx/.xls) ↓ -2. 调用 preview_import_data(connectionId="xx", file_base64="...", file_name="data.xlsx", target="test") +2. 调用 preview_import_data(connectionId="xx", file_url="https://example.com/data.xlsx", target="test") ↓ 3. 展示 AI 识别的表结构和数据预览 ↓ @@ -618,9 +705,10 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 说明:导入的数据将写入数据库,请确认数据来源合法合规,不包含敏感信息、政治内容或违规内容。 请确认是否继续? ↓ -5. 用户确认无误后,调用 confirm_import_data(connectionId="xx", data={...}, target="test") +5. 用户确认无误后,调用 confirm_import_data(connectionId="xx", databaseName="目标库名", data=<预览返回的原文>, target="test") + (把 preview_import_data 的返回原样传给 data,工具会自动组装后端要求的结构;databaseName 是落库的目标库) ↓ -6. 确认导入成功 +6. 确认导入成功(返回含 insertedRows 插入行数) ``` ### 注意事项 @@ -628,7 +716,10 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 - 支持格式:.xlsx / .xls - 导入前默认使用 `test` 环境(安全做法) - 如果用户要导入到正式环境,必须二次确认 -- base64 编码的文件内容需要提供文件名 +- `file_url` 要求 http/https 可下载链接,且文件大小 < 500KB +- `file_url` 对应的文件扩展名需为 `.xlsx` / `.xls` +- **`confirm_import_data` 必须传 `databaseName`**(落库目标库);`data` 直接传 `preview_import_data` 的返回原文即可,工具内部会自动解包并组装成 `{tableStructure(含databaseName), allData}` +- AI 识别会把中文表头转成英文列名(如「姓名」→`name`);若导入数据键名与生成的列名对不上会报「未找到 XX 字段」,此时需按预览返回的列名核对 --- @@ -707,6 +798,23 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 - `database`:数据库级别权限 - `table`:表级别权限 +### 7.7 撤销权限 + +``` +调用: get_api_key_permissions(apiKeyId="7") +返回: { + "data": { + "connectionPermissions": [{"id": "101", "connectionId": "58", "permissionType": "read"}], + "databasePermissions": [...], + "tablePermissions": [...] + } +} + +调用: revoke_api_key_permissions(permissionIds=["101"]) +``` + +> 说明:`revoke_api_key_permissions` 按权限记录的 `id` 删除,需先从 `get_api_key_permissions` 获取。 + --- ## 场景 8:技能与工具管理 @@ -768,6 +876,20 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 ) ``` +### 8.7 修改技能下某个工具 + +``` +调用: update_skill_tool( + id="2066468871151718402", // 工具 ID(来自 get_skill_tools 返回的 id) + description="改后的业务描述", // 可选 + uniqueName="新展示名", // 可选(工具展示名) + sqlTemplate="SELECT ...", // 可选 + resultType="list" // 可选:single / list +) +``` + +> 说明:后端实体真实字段为 `id`/`uniqueName`/`description`/`sqlTemplate`/`resultType`。旧参数名 `skillToolId`/`name`/`businessDescription` 仍有兼容映射,但建议直接用上面的真实字段名。`businessScenario` 后端无此字段,会被丢弃。 + --- ## 场景 9:表订阅管理 @@ -778,13 +900,117 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 调用: toggle_table_subscription( configId="数据库配置ID", tableName="orders", - isSubscribe=true // true=订阅, false=取消订阅 + subscribe=true // true=订阅, false=取消订阅 ) ``` --- -## 最佳实践 +## 场景 10:库表关联配置(外置源纳管 / 内置删库) + +「库表关联配置」是数据源能用于智能问数的**最后一步**:外置数据源建好连接后,必须选定要纳管的库与表,平台才会同步结构、允许后续问数。这一类有 3 个工具:`create_connection_config` / `update_connection_config` / `delete_connection_config`。 + +> **概念澄清**: +> - 配置(config)≠ 连接(connection)。`create_connection_config` 落库后产生的 **config id**,正是 `list_databases` / `list_tables_with_ai` 里要传的那个「库/配置 ID」(`datasourceId` 参数实际指它,不是连接 ID)。 +> - `delete_connection_config` 既是「删库表关联」,也是**「删除内置库」的唯一实现**——删内置库就是删掉它对应的那条配置。 + +### 10.1 外置源纳管(建连接后的收尾步骤) + +``` +用户请求: "把刚建的 MySQL 数据源接进来" / "让这个数据源能问数" + ↓ +1. 已有外置连接(create_datasource 返回的 connectionId) + ↓ +2. 调用 get_realtime_structure(datasourceId="连接ID") 探测真实库表 + ↓ +3. ⚠️ 列出探测到的库和表,让用户勾选要纳管的范围 + (多个库/表时必须让用户选,不得擅自全选或挑第一个) + ↓ +4. 调用 create_connection_config(connectionId="xx", databases=[{databaseName, tableNames:[...]}]) + ↓ +5. 确认纳管成功(返回 config id,后续 list_tables_with_ai 用它) +``` + +**示例**: + +**用户**: "把 mysql_test 数据源的 order_db 库接进来,纳管 orders 和 users 两张表" + +``` +调用: get_realtime_structure(datasourceId="58") // 先确认库表真实存在 +调用: create_connection_config( + connectionId="58", + syncTables=true, // 默认 true,同步表结构 + databases=[ + {"databaseName": "order_db", "tableNames": ["orders", "users"]} + ] +) +回复: 已纳管 order_db 库的 orders、users 两张表,该数据源现在可用于智能问数。 +``` + +### 10.2 修改纳管范围 + +``` +用户请求: "再把 products 表也纳管进来" / "改一下纳管的表" + ↓ +1. 先拿到该配置的 config id(list_databases 返回里的 id) + ↓ +2. ⚠️ 与用户确认最终要纳管的完整库表清单(这是全量覆盖,不是增量追加) + ↓ +3. 调用 update_connection_config(id="配置ID", connectionId="xx", databases=[...]) + ↓ +4. 确认更新成功 +``` + +> ⚠️ **全量覆盖语义**:`databases` 传的是更新后的**完整**纳管范围,不是增量。漏传已有的表会导致那些表被移出纳管,务必带上全部要保留的表。 + +**示例**: + +``` +调用: update_connection_config( + id="123", // 配置 ID(编辑必传) + connectionId="58", + databases=[ + {"databaseName": "order_db", "tableNames": ["orders", "users", "products"]} + ] +) +回复: 已更新纳管范围,order_db 现纳管 orders、users、products 三张表。 +``` + +### 10.3 删除配置(含删除内置库) + +``` +⚠️ 安全提醒:此操作存在删除风险。 +说明:删除库表关联配置后,该库表将退出纳管、无法再问数; +若目标是内置库,则该库本身会被删除,库内数据永久丢失,不可恢复。 +请确认是否继续?(回复"确认"继续,或取消操作) + ↓ +用户确认后,调用 delete_connection_config(ids=["配置ID1", "配置ID2"]) +``` + +**示例**: + +**用户**: "删掉那个测试内置库" + +``` +回复: ⚠️ 确认要删除内置库「test_db」(配置 ID=456)吗? + 库内全部数据将永久删除,不可恢复。请回复"确认删除"继续。 + +用户: "确认删除" + +调用: delete_connection_config(ids=["456"]) +回复: 已删除配置 456(内置库 test_db)。 +``` + +### 注意事项 +- `databases` 每项是 `{databaseName, tableNames:[...]}`,`tableNames` 是表名字符串数组(不是 tableId) +- `syncTables` 默认 `true`(纳管时同步表结构),一般无需手动传 +- `update_connection_config` 必传 `id`(配置 ID),且 `databases` 为**全量**覆盖 +- `delete_connection_config` 的 `ids` 是数组,支持批量删;删内置库即删其对应配置 ID +- 内置库删除属**危险操作**,务必先确认库名与影响后再执行 + +--- + + ### 1. 安全第一 @@ -839,8 +1065,8 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 - `1` - 已停止 ### 环境 -- `prod` - 生产环境(默认) -- `test` - 测试环境 +- `test` - 测试环境(**表数据 CRUD 的默认值**,安全优先) +- `prod` - 生产环境(操作正式数据须显式传 `target="prod"`;仅 `execute_sql` 默认 prod) ### 常用字段类型 | 类型 | 用途 | 示例 | @@ -854,16 +1080,13 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 | `BOOLEAN` | 布尔值 | `is_active BOOLEAN` | ### 表结构变更操作类型(alter_table) -| 类型 | 用途 | -|------|------| -| `ADD_COLUMN` | 添加字段 | -| `DROP_COLUMN` | 删除字段 | -| `RENAME_COLUMN` | 重命名字段 | -| `ALTER_COLUMN_TYPE` | 修改字段类型 | -| `SET_NOT_NULL` | 设置为非空 | -| `DROP_NOT_NULL` | 取消非空约束 | -| `SET_DEFAULT` | 设置默认值 | -| `DROP_DEFAULT` | 删除默认值 | +| 类型 | 用途 | column 对象关键字段 | +|------|------|------| +| `ADD_COLUMN` | 添加字段 | columnName, columnType, columnLength, isNullable, columnComment | +| `MODIFY_COLUMN` | 修改字段(类型/长度/约束等,含改类型) | columnName, columnType, columnLength, ... | +| `DROP_COLUMN` | 删除字段 | columnName | + +> 后端**只支持上述 3 种**。`RENAME_COLUMN`/`ALTER_COLUMN_TYPE`/`SET_NOT_NULL`/`DROP_NOT_NULL`/`SET_DEFAULT`/`DROP_DEFAULT` 均会报「不支持的操作类型」(已真机验证)。改字段类型用 `MODIFY_COLUMN`。 ### 权限级别(API 密钥授权) | 级别 | 范围 | @@ -879,7 +1102,7 @@ AgileDB 数据库管理平台的 MCP 技能。为 AI Agent 提供完整的数据 如果用户说"帮我查一下数据库",按以下步骤操作: 1. 调用 `list_datasources()` 获取数据源列表 -2. 展示列表,让用户选择或默认第一个运行中的数据源 +2. 展示列表,让用户选择目标数据源(**多个候选时必须让用户选,不得默认第一个**;只有一个候选也要先说明"我将使用 XXX"再继续) 3. 调用 `get_datasource_detail(datasourceId="xx")` 获取数据库和表信息 4. 引导用户选择要操作的表 5. 根据用户意图调用相应的工具: diff --git a/.kilo/skills/mcp-tool-testing.zip b/.kilo/skills/mcp-tool-testing.zip deleted file mode 100644 index 5303d592a1209602192f3405e24cad07b1b248e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5992 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 PQ2trJ{@G(l{!ae^Xf`D> diff --git a/lzwcai_mcp_agile_db/README.md b/lzwcai_mcp_agile_db/README.md index 8ae50f6..c996cd7 100644 --- a/lzwcai_mcp_agile_db/README.md +++ b/lzwcai_mcp_agile_db/README.md @@ -1,6 +1,6 @@ # lzwcai-mcp-agile-db -数据库管理平台 MCP Server,提供 33 个工具用于数据库管理、表操作、数据 CRUD、API 密钥管理、技能与工具管理等。 +数据库管理平台 MCP Server,提供 34 个工具用于数据库管理、表操作、数据 CRUD、API 密钥管理、技能与工具管理等。 ## 环境变量 @@ -58,6 +58,7 @@ lzwcai-mcp-agile-db - `delete_api_key` - 删除密钥 - `get_api_key_permissions` - 查看密钥权限 - `grant_api_key_permissions` - 授予权限 +- `revoke_api_key_permissions` - 撤销/删除已授予权限 ### 技能与工具管理 - `get_skill_by_datasource` - 获取技能信息 diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/__pycache__/__init__.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/__pycache__/__init__.cpython-312.pyc index a0a9bb2e4250e40c02dcf9e60bea8a1a8fad546f..c958bb3bf73fe9137bfe03339ee5798cf1310a2a 100644 GIT binary patch delta 28 icmX@ibeM_vG%qg~0}%Y0sh<_Ik(Zs3@z!KfMm+#=1_y@# delta 28 icmX@ibeM_vG%qg~0}zx<*31gu$ji>i_-nE#qaFZg^9K+B diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/__pycache__/server.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/__pycache__/server.cpython-312.pyc index 9caadc5e8ebea95e814769bc51fcd379e3010511..5294a1babc5866cf3074601a2ef7678ea711bbb8 100644 GIT binary patch delta 927 zcmZ8eZAepL6n@{`dw0#<-OX(}zxL(YGQVej6}Iw9kcoXEg!HS_ABiETVN#%`nTC@3 znv06aNC-qL_CqNAu?hXDADW@d1_rgM|3(h9532J{`#hI(?sLw0o^#&!-gjAD4)LW@ z8I8b%ne4it`l<8dO&PM!|ld=l)R3_K$%lcOsG-5=UJR!1LYZ&ib&|Ks#sCu;#zq}`K)^P8#e8|AhsX!>rxkVX{3rj#-P}A_c*_w!Qrq2m$_H5C#R!!nj9h33Sr(0$A>YM2m?gJWCJWunQwGP7{T&E%ePOR%hHTV*P(1`38y%o3OLe$p{z7IUZiX5m@1}qj>EM*lU z4mIHx8Aeqw9;3eEi%b=2p(=~@?{&ui*TqNH(Ls^Z(Lorsz(c|+iI?YOIkFtNq*#3h zN0EE#ETK^ar(WW!>l>PC$t$(Btqk&W;7u{_%G%~^{4nFr@HC0}k{h(jrR*AbHv7v}jG%{s5piW^9w z6hky@Fi4l;a)yma(9bGT{F*kyqQ*L>vCeC3i-K)Vu!R^TSVJbDZH8o^*n|RLm(%4O zbbbk$k<$J-44f_bKkC=p>TgX$aF;8%)P%c4sQ?XODM3ycKqDp5l8Nz{v6LkDSXjVq z9-9Iho*XP0SdW9HINtzDuLetbtXC_iH~~Z5n}k8&HAJvUE;)Fw4NIwl*UnR%$x}`q z-RdncmL@YZI$Wxcnu+BpPG+E94afRzJRkIkmLNE=+O54Y$GZYO|u~Cb}xwf@ZBki>RP&waKK` zY@cgEK|e64pd!x2qS%GI?JB&;%DXhzO_&Rm3hMhL`rv)uhv$8G_;_YQp91n*lSxG6 zon7)LXO)-oAAmfTnL{>DIP9ssdRkpwsm`v}@{cR8Z{lN2hw}@budLnsJTHv#XC7niWn!8&Jox^ttnJdx~^YoB8eC46dpLrvV9?$O_n5EPR+*ut+KSOU{u5=G8#x8fhJ2r+wtE?{G`~b zGem9GsoZMo|BvGD^kMR=t4hoaw?OUHEwY3ysiGQX3vN&&x`KzJ+-D?uVGpSNTp_5V zJOWhj2g;+mm`PX%h;h<7BT#M-h(1c9k=AJ&WIVKlRGdJXl#e_qJHe0KL}L7OYCoZu xaJnN8`!s!L7<_FnRZ~_9HVV}LQ$H|qX6*c_<3p*0cGSTEFN4_Fj!$fH{sm9It&#u$ diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/logs/lzwcai_mcp_agile_db.log b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/logs/lzwcai_mcp_agile_db.log index 1379807..f62c1f9 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/logs/lzwcai_mcp_agile_db.log +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/logs/lzwcai_mcp_agile_db.log @@ -1,202 +1,10 @@ -2026-06-11 09:30:49 - root - INFO - [logger_config.py:102] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\logs -2026-06-11 09:30:49 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'lzwcai_mcp_agile_db' -2026-06-11 09:30:49 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest -2026-06-11 09:30:49 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest -2026-06-11 09:30:49 - lzwcai_mcp_agile_db.server - INFO - [server.py:124] - ================================================== -2026-06-11 09:30:49 - lzwcai_mcp_agile_db.server - INFO - [server.py:125] - lzwcai-mcp-agile-db MCP Server 启动 -2026-06-11 09:30:49 - lzwcai_mcp_agile_db.server - INFO - [server.py:130] - 已注册工具数量: 33 -2026-06-11 09:30:49 - lzwcai_mcp_agile_db.server - INFO - [server.py:131] - ================================================== -2026-06-11 09:30:49 - lzwcai_mcp_agile_db.server - INFO - [server.py:133] - 开始运行 MCP Server (stdio 模式) -2026-06-11 09:30:49 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor -2026-06-11 09:30:49 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') -2026-06-11 09:30:50 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: -2026-06-11 09:30:50 - mcp.server.lowlevel.server - INFO - [server.py:720] - Processing request of type ListToolsRequest -2026-06-11 09:30:50 - mcp.server.lowlevel.server - DEBUG - [server.py:723] - Dispatching request of type ListToolsRequest -2026-06-11 09:30:50 - lzwcai_mcp_agile_db.server - INFO - [server.py:42] - 收到 ListTools 请求 -2026-06-11 09:30:50 - mcp.server.lowlevel.server - DEBUG - [server.py:790] - Response sent -2026-06-11 09:33:24 - root - INFO - [logger_config.py:102] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\logs -2026-06-11 09:33:24 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'lzwcai_mcp_agile_db' -2026-06-11 09:33:24 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest -2026-06-11 09:33:24 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest -2026-06-11 09:33:24 - lzwcai_mcp_agile_db.server - INFO - [server.py:124] - ================================================== -2026-06-11 09:33:24 - lzwcai_mcp_agile_db.server - INFO - [server.py:125] - lzwcai-mcp-agile-db MCP Server 启动 -2026-06-11 09:33:24 - lzwcai_mcp_agile_db.server - INFO - [server.py:130] - 已注册工具数量: 33 -2026-06-11 09:33:24 - lzwcai_mcp_agile_db.server - INFO - [server.py:131] - ================================================== -2026-06-11 09:33:24 - lzwcai_mcp_agile_db.server - INFO - [server.py:133] - 开始运行 MCP Server (stdio 模式) -2026-06-11 09:33:24 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor -2026-06-11 09:33:24 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') -2026-06-11 09:33:25 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: -2026-06-11 09:33:25 - mcp.server.lowlevel.server - INFO - [server.py:720] - Processing request of type ListToolsRequest -2026-06-11 09:33:25 - mcp.server.lowlevel.server - DEBUG - [server.py:723] - Dispatching request of type ListToolsRequest -2026-06-11 09:33:25 - lzwcai_mcp_agile_db.server - INFO - [server.py:42] - 收到 ListTools 请求 -2026-06-11 09:33:25 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:48] - [客户端初始化] base_url=https://dempdemo.lzwcai.com -2026-06-11 09:33:25 - lzwcai_mcp_agile_db.server - INFO - [server.py:56] - ListTools 响应: 返回 33 个工具 -2026-06-11 09:33:25 - mcp.server.lowlevel.server - DEBUG - [server.py:790] - Response sent -2026-06-11 09:33:45 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: -2026-06-11 09:33:45 - mcp.server.lowlevel.server - INFO - [server.py:720] - Processing request of type CallToolRequest -2026-06-11 09:33:45 - mcp.server.lowlevel.server - DEBUG - [server.py:723] - Dispatching request of type CallToolRequest -2026-06-11 09:33:45 - lzwcai_mcp_agile_db.server - INFO - [server.py:66] - 收到 CallTool 请求: name=list_datasources -2026-06-11 09:33:46 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:100] - [API请求] GET https://dempdemo.lzwcai.com/api/datasource/connection/list -2026-06-11 09:33:46 - httpx - DEBUG - [_config.py:82] - load_ssl_context verify=True cert=None trust_env=True http2=False -2026-06-11 09:33:46 - httpx - DEBUG - [_config.py:148] - load_verify_locations cafile='D:\\anaconda3\\Library\\ssl\\cacert.pem' -2026-06-11 09:33:46 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.started host='dempdemo.lzwcai.com' port=443 local_address=None timeout=30.0 socket_options=None -2026-06-11 09:33:46 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.complete return_value= -2026-06-11 09:33:46 - httpcore.connection - DEBUG - [_trace.py:47] - start_tls.started ssl_context= server_hostname='dempdemo.lzwcai.com' timeout=30.0 -2026-06-11 09:33:46 - httpcore.connection - DEBUG - [_trace.py:47] - start_tls.complete return_value= -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.started request= -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.complete -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.started request= -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.complete -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.started request= -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Server', b'nginx/1.25.2'), (b'Date', b'Thu, 11 Jun 2026 01:33:40 GMT'), (b'Content-Type', b'application/json;charset=utf-8'), (b'Content-Length', b'51'), (b'Connection', b'keep-alive'), (b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Strict-Transport-Security', b'max-age=31536000; includeSubDomains'), (b'X-Frame-Options', b'DENY'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block')]) -2026-06-11 09:33:46 - httpx - INFO - [_client.py:1038] - HTTP Request: GET https://dempdemo.lzwcai.com/api/datasource/connection/list?pageNum=1&pageSize=20 "HTTP/1.1 200 " -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.started request= -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.complete -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.started -2026-06-11 09:33:46 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.complete -2026-06-11 09:33:46 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:74] - [API响应] HTTP 200 -2026-06-11 09:33:46 - lzwcai_mcp_agile_db.utils.api_client - ERROR - [api_client.py:91] - [API错误] 登录过期,请重新登录 -2026-06-11 09:33:46 - lzwcai_mcp_agile_db.server - ERROR - [server.py:96] - 工具执行失败: list_datasources, 错误: 登录过期,请重新登录 -Traceback (most recent call last): - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\server.py", line 84, in handle_call_tool - result = await tool_instance.execute(arguments or {}) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\tools\datasources.py", line 30, in execute - return self.client.get("/api/datasource/connection/list", params=params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\utils\api_client.py", line 102, in get - return self._handle_response(response, url) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\utils\api_client.py", line 92, in _handle_response - raise Exception(error_msg) -Exception: 登录过期,请重新登录 -2026-06-11 09:33:46 - mcp.server.lowlevel.server - DEBUG - [server.py:790] - Response sent -2026-06-11 09:39:21 - root - INFO - [logger_config.py:102] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\logs -2026-06-11 09:39:21 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'lzwcai_mcp_agile_db' -2026-06-11 09:39:21 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest -2026-06-11 09:39:21 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest -2026-06-11 09:39:21 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:48] - [客户端初始化] base_url=https://dempdemo.lzwcai.com -2026-06-11 09:39:21 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:100] - [API请求] GET https://dempdemo.lzwcai.com/api/datasource/connection/list -2026-06-11 09:39:21 - httpx - DEBUG - [_config.py:82] - load_ssl_context verify=True cert=None trust_env=True http2=False -2026-06-11 09:39:21 - httpx - DEBUG - [_config.py:148] - load_verify_locations cafile='C:\\Users\\HiWin10\\AppData\\Local\\Programs\\Python\\Python312\\Lib\\site-packages\\certifi\\cacert.pem' -2026-06-11 09:39:21 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.started host='dempdemo.lzwcai.com' port=443 local_address=None timeout=30.0 socket_options=None -2026-06-11 09:39:21 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.complete return_value= -2026-06-11 09:39:21 - httpcore.connection - DEBUG - [_trace.py:47] - start_tls.started ssl_context= server_hostname='dempdemo.lzwcai.com' timeout=30.0 -2026-06-11 09:39:21 - httpcore.connection - DEBUG - [_trace.py:47] - start_tls.complete return_value= -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.started request= -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.complete -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.started request= -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.complete -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.started request= -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Server', b'nginx/1.25.2'), (b'Date', b'Thu, 11 Jun 2026 01:39:15 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Strict-Transport-Security', b'max-age=31536000; includeSubDomains'), (b'X-Frame-Options', b'DENY'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block')]) -2026-06-11 09:39:21 - httpx - INFO - [_client.py:1038] - HTTP Request: GET https://dempdemo.lzwcai.com/api/datasource/connection/list "HTTP/1.1 200 " -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.started request= -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.complete -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.started -2026-06-11 09:39:21 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.complete -2026-06-11 09:39:21 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:74] - [API响应] HTTP 200 -2026-06-11 09:39:52 - root - INFO - [logger_config.py:102] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\logs -2026-06-11 09:39:52 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'lzwcai_mcp_agile_db' -2026-06-11 09:39:52 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest -2026-06-11 09:39:52 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest -2026-06-11 09:39:52 - lzwcai_mcp_agile_db.server - INFO - [server.py:124] - ================================================== -2026-06-11 09:39:52 - lzwcai_mcp_agile_db.server - INFO - [server.py:125] - lzwcai-mcp-agile-db MCP Server 启动 -2026-06-11 09:39:52 - lzwcai_mcp_agile_db.server - INFO - [server.py:130] - 已注册工具数量: 33 -2026-06-11 09:39:52 - lzwcai_mcp_agile_db.server - INFO - [server.py:131] - ================================================== -2026-06-11 09:39:52 - lzwcai_mcp_agile_db.server - INFO - [server.py:133] - 开始运行 MCP Server (stdio 模式) -2026-06-11 09:39:52 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor -2026-06-11 09:39:52 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') -2026-06-11 09:39:53 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: -2026-06-11 09:39:53 - mcp.server.lowlevel.server - INFO - [server.py:720] - Processing request of type ListToolsRequest -2026-06-11 09:39:53 - mcp.server.lowlevel.server - DEBUG - [server.py:723] - Dispatching request of type ListToolsRequest -2026-06-11 09:39:53 - lzwcai_mcp_agile_db.server - INFO - [server.py:42] - 收到 ListTools 请求 -2026-06-11 09:39:53 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:48] - [客户端初始化] base_url=https://dempdemo.lzwcai.com -2026-06-11 09:39:53 - lzwcai_mcp_agile_db.server - INFO - [server.py:56] - ListTools 响应: 返回 33 个工具 -2026-06-11 09:39:53 - mcp.server.lowlevel.server - DEBUG - [server.py:790] - Response sent -2026-06-11 09:40:08 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: -2026-06-11 09:40:08 - mcp.server.lowlevel.server - INFO - [server.py:720] - Processing request of type CallToolRequest -2026-06-11 09:40:08 - mcp.server.lowlevel.server - DEBUG - [server.py:723] - Dispatching request of type CallToolRequest -2026-06-11 09:40:08 - lzwcai_mcp_agile_db.server - INFO - [server.py:66] - 收到 CallTool 请求: name=list_datasources -2026-06-11 09:40:08 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:100] - [API请求] GET https://dempdemo.lzwcai.com/api/datasource/connection/list -2026-06-11 09:40:08 - httpx - DEBUG - [_config.py:82] - load_ssl_context verify=True cert=None trust_env=True http2=False -2026-06-11 09:40:08 - httpx - DEBUG - [_config.py:148] - load_verify_locations cafile='D:\\anaconda3\\Library\\ssl\\cacert.pem' -2026-06-11 09:40:08 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.started host='dempdemo.lzwcai.com' port=443 local_address=None timeout=30.0 socket_options=None -2026-06-11 09:40:08 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.complete return_value= -2026-06-11 09:40:08 - httpcore.connection - DEBUG - [_trace.py:47] - start_tls.started ssl_context= server_hostname='dempdemo.lzwcai.com' timeout=30.0 -2026-06-11 09:40:08 - httpcore.connection - DEBUG - [_trace.py:47] - start_tls.complete return_value= -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.started request= -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.complete -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.started request= -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.complete -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.started request= -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Server', b'nginx/1.25.2'), (b'Date', b'Thu, 11 Jun 2026 01:40:02 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Strict-Transport-Security', b'max-age=31536000; includeSubDomains'), (b'X-Frame-Options', b'DENY'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block')]) -2026-06-11 09:40:08 - httpx - INFO - [_client.py:1038] - HTTP Request: GET https://dempdemo.lzwcai.com/api/datasource/connection/list?pageNum=1&pageSize=20 "HTTP/1.1 200 " -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.started request= -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.complete -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.started -2026-06-11 09:40:08 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.complete -2026-06-11 09:40:08 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:74] - [API响应] HTTP 200 -2026-06-11 09:40:08 - lzwcai_mcp_agile_db.server - INFO - [server.py:86] - 工具执行成功: list_datasources -2026-06-11 09:40:08 - lzwcai_mcp_agile_db.server - DEBUG - [server.py:87] - 工具返回结果: { - "total": 14, - "rows": [ - { - "createBy": "", - "createTime": "2026-06-10 16:47:43", - "updateBy": "", - "updateTime": "2026-06-10 16:47:43", - "remark": "设备报价管理系统包含设备基础信息、预设方案模板、报价单主表和明细表四个核心数据对象,支持从设备参数管理到整套产线方案配置的完整报价流程,为销售部门提供标准化报价服务,实现快速方案生成和精准成本核算。", - "id": "58", - "enterpriseId": "1937166012193443842", - "deptId": "1171", - "userId": "292", - "host": "host.docker.internal", - "port": 5432, - "datasourceName": "HMD产品", - "database... -2026-06-11 09:40:08 - mcp.server.lowlevel.server - DEBUG - [server.py:790] - Response sent -2026-06-11 09:40:55 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: -2026-06-11 09:40:55 - mcp.server.lowlevel.server - INFO - [server.py:720] - Processing request of type CallToolRequest -2026-06-11 09:40:55 - mcp.server.lowlevel.server - DEBUG - [server.py:723] - Dispatching request of type CallToolRequest -2026-06-11 09:40:55 - lzwcai_mcp_agile_db.server - INFO - [server.py:66] - 收到 CallTool 请求: name=list_api_keys -2026-06-11 09:40:55 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:100] - [API请求] GET https://dempdemo.lzwcai.com/api/datasource/api_key/list -2026-06-11 09:40:55 - httpcore.connection - DEBUG - [_trace.py:47] - close.started -2026-06-11 09:40:55 - httpcore.connection - DEBUG - [_trace.py:47] - close.complete -2026-06-11 09:40:55 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.started host='dempdemo.lzwcai.com' port=443 local_address=None timeout=30.0 socket_options=None -2026-06-11 09:40:55 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.complete return_value= -2026-06-11 09:40:55 - httpcore.connection - DEBUG - [_trace.py:47] - start_tls.started ssl_context= server_hostname='dempdemo.lzwcai.com' timeout=30.0 -2026-06-11 09:40:55 - httpcore.connection - DEBUG - [_trace.py:47] - start_tls.complete return_value= -2026-06-11 09:40:55 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.started request= -2026-06-11 09:40:55 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.complete -2026-06-11 09:40:55 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.started request= -2026-06-11 09:40:55 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.complete -2026-06-11 09:40:55 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.started request= -2026-06-11 09:40:56 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Server', b'nginx/1.25.2'), (b'Date', b'Thu, 11 Jun 2026 01:40:49 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Strict-Transport-Security', b'max-age=31536000; includeSubDomains'), (b'X-Frame-Options', b'DENY'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block')]) -2026-06-11 09:40:56 - httpx - INFO - [_client.py:1038] - HTTP Request: GET https://dempdemo.lzwcai.com/api/datasource/api_key/list?pageNum=1&pageSize=20 "HTTP/1.1 200 " -2026-06-11 09:40:56 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.started request= -2026-06-11 09:40:56 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.complete -2026-06-11 09:40:56 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.started -2026-06-11 09:40:56 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.complete -2026-06-11 09:40:56 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:74] - [API响应] HTTP 200 -2026-06-11 09:40:56 - lzwcai_mcp_agile_db.server - INFO - [server.py:86] - 工具执行成功: list_api_keys -2026-06-11 09:40:56 - lzwcai_mcp_agile_db.server - DEBUG - [server.py:87] - 工具返回结果: { - "total": 6, - "rows": [ - { - "createBy": "", - "createTime": "2026-06-06 15:10:31", - "updateBy": "", - "updateTime": "2026-06-06 15:10:31", - "remark": null, - "id": "7", - "apiKey": "Lb8LgEJ7eBUU8QMifKUJvo9w6YLAotbKJ-w1DKU8ZrU", - "apiKeyName": "AWINBEXT", - "enterpriseId": "1937166012193443842", - "status": 0, - "expireTime": "2027-06-06T15:10:32.000+08:00" - }, - { - "createBy": "", - "createTime": "2026-05-25 14:47:11", - "u... -2026-06-11 09:40:56 - mcp.server.lowlevel.server - DEBUG - [server.py:790] - Response sent +2026-06-17 11:19:35 - root - INFO - [logger_config.py:102] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\logs +2026-06-17 11:19:35 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'lzwcai_mcp_agile_db' +2026-06-17 11:19:35 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest +2026-06-17 11:19:35 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest +2026-06-17 11:19:35 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:48] - [客户端初始化] base_url=http://x +2026-06-17 11:19:35 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:78] - [API响应] HTTP 400 +2026-06-17 11:19:35 - lzwcai_mcp_agile_db.utils.api_client - ERROR - [api_client.py:98] - [API错误] HTTP 400, 参数不合法 +2026-06-17 11:19:35 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:78] - [API响应] HTTP 200 +2026-06-17 11:19:35 - lzwcai_mcp_agile_db.utils.api_client - INFO - [api_client.py:78] - [API响应] HTTP 404 +2026-06-17 11:19:35 - lzwcai_mcp_agile_db.utils.api_client - ERROR - [api_client.py:107] - [API错误] HTTP 404, {"path": "/x"} diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/logs/lzwcai_mcp_agile_db_error.log b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/logs/lzwcai_mcp_agile_db_error.log index fa261fd..eb8d141 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/logs/lzwcai_mcp_agile_db_error.log +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/logs/lzwcai_mcp_agile_db_error.log @@ -1,15 +1,2 @@ -2026-06-11 09:33:46 - lzwcai_mcp_agile_db.utils.api_client - ERROR - [api_client.py:91] - [API错误] 登录过期,请重新登录 -2026-06-11 09:33:46 - lzwcai_mcp_agile_db.server - ERROR - [server.py:96] - 工具执行失败: list_datasources, 错误: 登录过期,请重新登录 -Traceback (most recent call last): - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\server.py", line 84, in handle_call_tool - result = await tool_instance.execute(arguments or {}) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\tools\datasources.py", line 30, in execute - return self.client.get("/api/datasource/connection/list", params=params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\utils\api_client.py", line 102, in get - return self._handle_response(response, url) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_agile_db\lzwcai_mcp_agile_db\utils\api_client.py", line 92, in _handle_response - raise Exception(error_msg) -Exception: 登录过期,请重新登录 +2026-06-17 11:19:35 - lzwcai_mcp_agile_db.utils.api_client - ERROR - [api_client.py:98] - [API错误] HTTP 400, 参数不合法 +2026-06-17 11:19:35 - lzwcai_mcp_agile_db.utils.api_client - ERROR - [api_client.py:107] - [API错误] HTTP 404, {"path": "/x"} diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/server.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/server.py index 035da04..4f144cf 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/server.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/server.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 """ lzwcai-mcp-agile-db MCP Server -数据库管理平台 MCP 工具服务,提供 33 个工具用于数据库管理、表操作、API 密钥管理等 +数据库管理平台 MCP 工具服务,提供数据库管理、表/数据操作、技能、API 密钥、MQTT 同步、AI 训练等工具 """ import json @@ -104,19 +104,24 @@ async def handle_call_tool( async def run_server(): """运行 MCP Server (stdio 模式)""" - async with stdio_server() as streams: - await server.run( - streams[0], - streams[1], - InitializationOptions( - server_name="lzwcai_mcp_agile_db", - server_version="0.1.0", - capabilities=server.get_capabilities( - notification_options=NotificationOptions(), - experimental_capabilities={}, + try: + async with stdio_server() as streams: + await server.run( + streams[0], + streams[1], + InitializationOptions( + server_name="lzwcai_mcp_agile_db", + server_version="0.1.12", + capabilities=server.get_capabilities( + notification_options=NotificationOptions(), + experimental_capabilities={}, + ), ), - ), - ) + ) + finally: + # 释放全局 HTTP 客户端 + if _api_client is not None: + await _api_client.close() def main(): diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/__init__.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/__init__.cpython-312.pyc index a9dadb2cb065569b7706334a93489ba5e6621fd6..0cf7a272f1810809ad12b94373f6bfea77e23dcd 100644 GIT binary patch delta 72 zcmX@e_KB7EG%qg~0}%Y0sh_2>kyn$6QFU??ld9+~4x8Nkl+v73yCN~5G$RlfS5Dr; X+ delta 151 zcmeywdXSCxG%qg~0}yab*31&y$g9cZQ{ZY9Q<E-0l%JKFToRL0Ri2!fsasrC znGR#;CKu=yrxul^7U>owCTAz6r$S}ofim%l>6tmH@hM3$lg*h_MSpSFj} delta 126 zcmbOze^s9MG%qg~0}$9x)y&G+$lK1ycwqBX#vDfG#DdJt+|1UDKDn+|F_js*iJ374 zMfq8&$t5v4RprTvnYzVQmFX~cZgPQcacWUnYLRY1Vsdt3dMZ>V9w-x^n4X!F8lRFB Qv)P^H0T<)1$r}8b08WD}lK=n! diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/ai_training.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/ai_training.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5bb2392217f7f3fcc6a3b3c59db76fbc0c72ca82 GIT binary patch literal 3375 zcmbVOYfK#16~1>KyUQ-HVDm7JgU1hI7B>(#RuZ`+6$vpWc2O-{rzLKt!_Ig!WZB)^ znXLl>3BM8?k${!d(3+;u+75`=#*tfF!EKuUiqt=gsAM$1kdj@NU)~j#+WJ?|y)&DD zgRLr8+H=pnd*+_|INx{9KMM-H2->IrsO#v;L+C3y$TgRvERTXRj8xQyRIGAg+{v|Z zoqQXQ5r;HR<)^T1$)P5s3a5}NYWx&$&rLatv6gFV37y-T?iE*P9%gl0sTUBZ{fXrqUkPZDzgt$uy;GK_vGC2xG1yfTpLAA-@7Qu4yJ^!1D0C3LkpUg%P9Shbpalw>Igl=8chPOe3bQ8J34=Z^U(?sg|ISkYTxqX2wY*NH>yebU!EI zw>%AEKf>@3J-EZcM9zrzIV?1yL2i%_@;VA~zk~xEfz^7sUcQI#!vlFeTo3;NH&7s; zUV+V`j+Ne=1v}_F+}BjxBYeV5Io2luv2Oti&vC>2+oFhC!5cY zxG5XK*R)Q>5>!2Ck}cqB5-o#7M52P?mkAoiMk|O@Xu((6*EqlKslNRSMH?2X9#1^? z>g*P>&TjZc)-9BKGhS3$p7nc5Tzv;JC7jrd$F^q>?I(8M zWj(3Md9f;kM58RY;sq!d!cziFHFXuYd_(^)!RP-6w+K3Btl|T<$q!)_*adi{5O@W+ z1$d>1@k()EomKe)+r_uc@_bjTvjavkJHcU`iqyavAO|2&O3>pI$^P@nna|c{9O9ve zgcRmLe+A1Bn&K=`Aw=nl(>O|BI_~f|TNa2&0+LvqImOt-ArahGabzH2z6Bh*gXrzyxE2pM&Bs0_p(${?-BbyuSg8@xxFI$Q5$PeRLIa?Z^H0 zG6BVT9Y!=FQ{sbDJOZvPAr>{vNsc@U1GasG@`WVX0ZAjY`>}_=PY#mw7K~~THY9Dd z-7c+~Ev-sC_G04T&l06obESuG`wu5PhZFw8_Y6wPC$`k!KjCWOf>?uF$X1vk0V-IK zN>qD1Cuq9(1{6CfD1Mv+#m&g;S@`={ z_(QE?l{aZCvT7r%Em+*|hPC4f5UD?0gkppRI;&*tq?*2ZDRuHR%{@{Pkr2v}CYy=vk*m=`aPGcKfjwvS7NYW6$Z)E@Ueq6vI%tZB#7@~Z1V$xAP24&=vR~jSAvVCva#Oj zLpQ6hy_(qFn5cSju5|Bh|K5aWZ^FOV!B$MYsu%gq9KQsZAiurWjxR4-44sk^lez literal 0 HcmV?d00001 diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/api_keys.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/api_keys.cpython-312.pyc index bf3dd892d3f243771264f7326d0a27e87d242cbf..db7da021f473f035e0ade09c0e028b32e4a86830 100644 GIT binary patch delta 2756 zcma)8Z%`Y@72mx(2_b>b{1G4#&|xfufI$6c>J(EvQgBj=0NF`N48^k0sYC=L=1vqt z!4OPbxg`d2sR73sL*h*E5XTUv4R)LvJ0CjExHCPfcA%O}#~C9TK3NohsOfa3yC;Ed z>}j(z_ulTicl-Ojx2yN`Y2NJ@)VJf~l>m+N2X;1no-(XXgVq^i7TiSu7r|<#Abtk` z0bT}dNDO=MMPn!v;*3;!W2(+$m? z?M{c=e$3fwcQm@2U3Rvi$m{Vm^F_imwX5eaBEAg%)eF9*lZMKE+v%egvyGn=PZVD) z`D=oCqGW8(=+05c^v;HkDw5<2%BD zl-c0qo(EXZ#>pXsuM2whUcsKI)IS|NikHIiUPAFE2}few`-~g0MA56qBAt_xrr96~ije=RDU{+y8`44y$1zr9> z0>%fNj1IWo{QMTc1&wiDV-)jB=e#${u6E8fi@6og2-{EyKY<0*q^uByefSw6>*6W+ zeQ2!frF%Azs1nYqt9EXsBgJog>4x{#Pv>8LO?>Hf(Qw$Wsa>FJMMbSh*RBgRU7t`F zO+sBX33Wm@eHT{FI<~o>>QxjW_cJVNg!zPB@UZajc%6`$82i1h2F_Gol%l;L_o-|} zuE!zqNP~1goC~y5R5(T2DIJl#8skae-EV{V>zds_Hc(XW)NLjY|SBq9}|C{i^Tv#p#7UOBb$?#IC|K9AIld*}Kil?0WY z(7@@Q$YS}k>EKttW6Du6I?X9C+xXT^h;o+aY{!cWyS;tE zw|z@ro?#kYUb~~!ZGY3%VSlt4&n%z$A~<;V{`CPQ8K=|J(&BP@Q6!JW#1t{C!|P~p z@UADV$kzOXX=(0q=*r;A#8ng*<7S!Q<&n^5zc-N)uIZR?oNz&y2xQ-Ae%xPpbrRM<;6*o21{(X_d%9y!WrB$SgIdj*p1$>;onVlfhJskwu~nF z2}6&xVr5;_`{093u&2w9)B_MbsRP7H9Y9{i9YJ5W>5zDIK#l zjni+;<1F}7EPl1cM{YJd<9szP{^hr_Z)wEbYQM&|K-)xx?cqOTfzAQL3b5@UT<38a z?8~uihm$dubZT0Q#7!lIrP{1O=C4zrg`vJqRa&;=uGmwL{5dST(8C`>q95E*8GFkX z6Ki@a?rclD6PLc2reD-CfopZRwr$ghr#MLeDeG- q{{fK>QJYC!16X6Qg0N&-Es?gd7PSZh z`vXnRi}{p9lu(fk`uDV_2z=&Xwp~Irf+p5)MCY{asc1_>Fmc)?M1s-Sz!@<- z80$&_8p70|R~Wpv=gh z6%+BAXkuP3UJ%1WgJQDG7m1_q+O4Uhvcs>$k1ND`#+dfpOpa*hw%Z>xOf=kUoMqj2 z>c(ovgr~JrO=(N|$f!+X-6Ogg);-4s^lX#NzGF{e@^HZd48Ve(Rk4~%fVgS0--75;9=boj+qu6 z0C>=olD+7%o@P3f0Zz&TEK>()M6dN-HI^0es-9WKG{cxA^S-QKVoW*4D^cD;UW>I< zngM;JH=_`BfNfLwpr}pZlVj#N)%6D-*+HNl`mnWf75uW@`m6`rZI!6j0(wvPvtAX> ztHOEF@!}8QlhwDX%JJ22QI(&lv#)}kWh^s{MY1)%^k;3aj=%It*4DqYTW!nQy9~|$ z&^~FizaN^D3Ak1>Dn=}xtpBZZrlnKzbV;UTIi_2px(l&`=mWhKyyGs2aV>+>l{kE180>Iej`7r#{Pkx zp+0ecEGQpA{^MT=)KFncaggrK6Q#g`{B%k40*SYaRRqak6<}T>*Fzhmhw}uExW}@f zq!ufco~j(!mq-J6VeD9*z!CRUFDR)+^Z#%TwSfv$odX9Z3&5B{7Epkkm@Kf;MJ1)!{RI{{dF22A diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/connection_config.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/connection_config.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..856d041559a91abe2ec1aef87662ad167977b739 GIT binary patch literal 3951 zcmdT{T}&L;6~6PcKP(H&|DUaTi@{+{fY_yVoK~oIXd**|RE0Pdjx=5N4rI}?OYZD8 zg*w&7h6EbG>)HhyBL}x81v$o66U8u{G(oDc`cSfo$&x4rdPW<1g}-vdp*!BhesCA zPdu9Gv)Qy8ceLsAv7z^4SN`Dq>W>F24?3%$t*$)yXlBG#;p_+~!50I5zw8Nm1Afq2 zysb{Bc6WN~x7NQBn~tEtRR7Yw%dx?6Ei$+q?gM*}5Z>ZQcWg8aoeQ_avFqa)1$-v7 z%~zbU^AOzTC4n`SeR5FV5|-9GW~>?`iS);YKU=u-VeG<18}R7q6xFRxVG}%wbJd&F#LMb0 zKp7@7Y2x6v@RVy3DBmPffr`{b&7(ZEP%BNLwo!qmQoG)truV1Pbn2j@m!lalmI;Hd#7%xpu2XFY2*w-WOa7GeKaXiy*Y# zOK>>2B^!1Yb|txUBgRdM{qAOLU~210KAP!=V~l+;x%APyi_@PhPF=z6oIba3dvNR7 zJ`A6NTM+Awz-g~LjP(sHo&Fr|-@^1@?BX=&%fnMJs+t4MZE($0vl3)pf9qO4M7ur< zj?}nKaA?PBCwWy2c6P{WDwP!v^LF6nR4vW0QrYcqT-%FNFWk@~AK^W?K8~T?Jr}#& zjp5(Durzhm8Dt@OQebwlR4r6)aff_CmWFR8H)HP3wF1yLEmAx48?EOvaJGij0ISv_ z18cdU!j>%Dz79J9W6%dtFW&9eeJ4JV@azrB?Fs~Mr|zJ;*{#S8?si$Vf$q~)g%yG~ zRs?MPQRxS-6(2G(z(LEgWjAVRME{^ z71hk-V2JrWJai==5tP<m3DFdcwi|4JP=Ekds`JgWlmza%~AtOHRcW8Sz@eA4g7- zHuSgYX|rtVfLAJ<VGp($v8AfPG_ERuwKx z351wOt};M4$*C!AO29ASh)YyO>V*qrQ{-UcL{+oL=av0IRYW4gYoo}%7WQ3ms9?}e z=i^FW*V`VqS8DfkNbXjzPnKx&8%P4m8&9@40s6|0PSqm+Quc&`a#!)raH~w%RN!}N zKrE4ehRNR?*^$~0x_ZSqtNo0l&vC&%M*nIppUW*AK5_QMgWS^D+|ua27rvm;+|v8G z^$#5NQEPqFQU7=~6I`6CIbz|yB-{~`_$6loy|F$BO$2IhSLaL0 z=gN=H?R$3O&1mVNxJ7)XC~mUs&0EPJ#n0W`9d*{kb5o15;uc3ydfbwoZ(AuNc_m{f zqB#fR75O>l@GC0^1=B0sSjh^(cB1+ly=8}zQK|)@4mka%F*M>FpVeQ3_>T-N0!JfL z>pV?Ufp_gRO=s$Kz26QzouM;zCX8i)Wj4(LUPgw-p1e`9mC*d(bJ(*JQ@^Iiye(5d z4*`abf{0!EG&Xc|XQu95oEcjB^I7fIpEeRPFwj!}Y3-Atm%x6A`Z_7;Fl5Eh_y0sltVCa+fu1s4kPCz=0I*m&XbE01z=Y`PD&G0D zlSJ`ToQS*gUl7HxbXJO%9{!>+BHhoed*G;xTI-^Yy2q>v<~OkCK(Zg8&@rN8`UQMN z@jdt{5fBMX&t)AC*Ux7Z%hM(sFI98|h7gPEgU$^_h7NH9jEKG+aD_XjC;Dbkj6@IV8uZQ2PHFxmq_IprM?D+0%H zao)m-|HvZT{e!d5qm^Qh`8`!{b{|DFH< literal 0 HcmV?d00001 diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/data_import.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/data_import.cpython-312.pyc index e15c973fd67113fee6212c9bb664f012a4dba076..0c41287e47d80f4f06f6df51a387accd86d77847 100644 GIT binary patch literal 8935 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 ZRri2y%XVrd2p#T(bE(rk5*MWv{x9gTbdCT3 literal 3259 zcmd59FNd6&z-UR`oqr_)kr3`vKFHZ+E3W_Xdt57jI@WQO=BPqD{g2J*zYyIMPO z?HPDuXLQc}IrrXk?>*=HuKrq6<7eRe^Ob129ZLV873UMGh4pbLOfiT_Fo;E5hE1@R z<`NuoAwJ{E@(DicPPkcyV=#~0bF4j*W1eS_Fu@=XcF(!&wmDld3Bj`UK4R+wTmLq; zo)In@Fun{!{Y$_2c~3n?CjC-{VC zBob{f8(y^C>9@S;181nCgkFL142U~7e|l$rMtp8Ki8JETJ3qN|>yvx)KkMxmm)`ws z<>H@KZoIx&oLl_kCwJeUSox^9a&>n3*3XxIGZD9s%M{dsG*0TKpy@=(4gNC-Q`%ii zpG}JWeb+dX*GKZ$3?Qr}iIUe9HD~g9q9W+Pnr=j3#PVA=7T>=J>)yRJy>k5nk#%_5p^OuahFwEZK;^doPwfNgtMS4A!H5f#BGniC!IoJ?**^f*?m&qX3%|J@YV98#@ z^jVdhoW&#z6OslH*Ic%2# z?f8&(GTCVWUD%vWK%RnI_c@(u3lW@}tqX#)Hu9!i3OnX0Flib@TfTH?O9NDqufY8Z z^7_}Vf(LO082!6|g9a}#zjvKyqrsE*9nl~obyU#XB8?zM19pO1mv8d)Qb&8`d_JQj zWqSSbb2-!rmzf*RW>PB2%DNU)Qz<2hk(xBJIHz}Nkm@qhhA`H%nNCYT*b|rYN}NWO zrWz!PQ2Y&?#q=`Iv^uIZR@CIr&3*5LbI7 z=#k_>nmuS>+cpZG+8KIYRlw}bkC+}jjFX0rNB3=uUY*r$x;^a=AXb=vjWd4_g(v&o z7%lRZ=DqKE-}TPyUufP^nrkXD|Pd_&E&4v0WibADv_tenkq3N-O##k{>i8N0g zzkGc9mD$)r9JDe zN2@Nb-d}V>cU|P|3zsf@9y(AC9jMesXJfN1r6Vtvg5Rm^YN|x`PNz!Ywp9;PcW|BI z>-?(>@ALm#qnY#Sv9@C!?8$3h(<@07P$bFpOHx)v1{|1V1|{jNA!n*RyahQF|IDD0 z%Nx3+C5LcUCI_I2#6VnQ)qyb{cL#;sT_Q~^tIFFFD2G|?k4|gkZEk4`F<&K zc&*+S5yro@+8B2GXIfVoP_y0lsUlA~%bH;bs+2;qI})J-9_uf|nE#3hDGj=SAZ;29 zLb(Rj0{w+7`l|!_0}2HC+hx&TI2thyW1j2*u|1EJpy&UBN0>AZu59_z&fDjq zcI38DTmTg3t0?Z-g5usUptyA&`(c)CAhjBH0I9yTrsk{%7!ko1UKCcU(0eBxAmAOM z!b8JNqO`?2*~e+gf=IfAMw!k+LOZ8ul8x@$Hl!R(qHiiq1@S*&QYifP@TK8tVIkB~ zWY25uVpom`pl-}0fcJ?Hpfk(Qju+q`OgCn#`MHl?E(;znRpl1g> zD4j}_8(*pHYb*7n%8|h}4-X*Vry%g%QsmHD$ZLT>#BYNDC<+3g>{aPnz(gKN0>YFe zLSNaW4TR~oo>GJc2%#rzW0mFLqfS5Y9<{;n8S)LVqc0=vdmvU_EX%HO9LukJ8MgLs zjBlBVt_chmDur4X*tYxJ0oFhL{5k__-NkV2tF&S5IQ);;uxPR^Kv@=R9F#1_{{znC BcccIS diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/database_tables.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/database_tables.cpython-312.pyc index 8f85dc86f6f2b5e0dafd4ee52e1cef21a760a4b8..7afa7e3421983435ce2d9c47610f0186e5ac1de8 100644 GIT binary patch literal 12430 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 E0jK7QO8@`> diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/datasources.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/datasources.cpython-312.pyc index 0e71be68fcbed473f9782d7f0f8478122dcbcd30..303eb140324cb06bb20cb1be4c4312d18d23c59d 100644 GIT binary patch delta 5379 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 WJ9RAC1iS@G7HCzaaTZziO#cr`#};P* delta 2646 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 literal 0 HcmV?d00001 diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/skills.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/skills.cpython-312.pyc index 8a0ffae0c0308abf3c22d6cf7a19186dafa0c51a..bda77d25726adfb5ec92dbd94e529943b8e05fde 100644 GIT binary patch delta 2959 zcma)8ZBSEJ8b0UVn@=E@d_nk10!a*^2wL4%ch$;A`KU@kkc22i@TLe-aBs-EB5g8C zx3K6E_S#C7syo}AGRs)Cc3Q1=DE?x0|J*Eg$z=8iGlhV^41+tf!|abe=LT$0w(Xh8 z^PZgdJ@5OTbDs0wGgx?kx8m`#L#gdbXR(@7K29!@K z$BHYqS}Juj{2>G~Cqu>9;i_-B|) zeIm-^&dA!7_SG!xt6A9Z{9BewLfsvG5`?xNIS^45TY`eKuOaBsb2}8H@O|z(MLzjR zzm=2I+bV$J<)|2>q~oJmORJ1OSTCeypP}u%)XvlP6;CGeaJH~m4nJ2Tm=y0u_>hFf zQtBZkDwcEI^t93;q$v?Ogfx-l9LfLvS*Mi6-B7k|D|}&}tU;}n&nuszrW%74hxzg& zd~V~kwrPfL;-yVI-L%4$s2Y{7)$MVuZjXz*t=cS?B5$}YAK@+}XK~jgY9GbO81X2< zP>fuV38Nw=u@y2&qoh;BDBNO(c8lMlnB+dnDLJjQslwVrCz$;|+}+K}kY_dl17-u8 zgutss5Q}51EXARQZa(&7cV68yO)UKXQAUPTIIDG9EBCQlZ-^hViCA1Q*gOn57-()n zoyKiZW+YJP?>Y2a{s-U;Nfs_w^MUzC$VXMN2a$D878lf<62FhSo))f3Te2fo3D)Sg z;Vn=h>$64rA}gFU!XgVbnJp@^a$jmKJ~z_zf!PG3zci#e?%y|?tedrLzS|khJP z5iVIE9L*>h6{ALdF{5!y7_D1^$d`i1Cq12N(}mS>-<-LnSbxAh0DIa^;E2_*)Nc1?u7D#MAG|gY({#9yi- z?jGjY4~+C~MWJIsW3ggvY;||z-C5lnkI}a{adH02)rHG_#x@2!5ICHH=Ei2t-~M3X zldn;Z@!S)b9Mi{c&^l!bnv9lVjNPSp6}uCu*k2+LJS^PjBFC?eF5JF9e|0e4&PK8d zZ22n;GyJW-iC*{{z^3(*NJ3WI3)>|x&g~`E zKHI&pm)wO6&YJ|wvKMT72?mU>rUb$HS17QtO9sZ-aebPdKXI#zP^6w*RI<_MO_S;i zC%E>%US3qv;5txL&F(^1~8icQCTwV>+iV8Udl`;-Tl6C-LYrUi>X zFg+O?FuuV3TlX<OkpWPd^p%=`v?@xj|j-jIJQ4EBL2w%Rohc zNkAQ9BM}J;HpKY>LW2+SX_y zkR=UC2c*2xbiMA8G;j6EvR0_7`6EY#?_%6*#iIf~RH=&TVjX;_gvBY;LzM{it86mX zfR|;&kc~m$3nmb2!r;VU#(-DOS}+I|N7#*e{1?Lz`g!~aaLv=>n&>41UwWWyt@>pGU1lgb zGi1nLl2B?fa-S$eFD?Ay!V=d*EMwW>oNS38A-KU3+aNcn>w!ykP_W9Gh9(@$ z1xKtnm`kuS<6y3}gv`^>@|4h^C?n;|088v?Q&bpQDv0xwjaGsEV2N$aO9bu;8}~nk Cl$EXk delta 1281 zcmZuwUrbw77(eIs-!0HyT1pu~`j3`!jZLGdOBVMBC}YWhO=!EiwUpY{TE?Gx3lfTv z24@1AWiBT%EMnqbCNJugJuH#AElW%j6LXqANZ5nK#BTbs*76|B9z5svlAv;v`+eW} z&hLJ|-}%mWzd!o1Tlk|-lP-9OoTBsllBE0PSRgsHK3bUHYmnTPF!g_7Z@KQMmT<4)sW-czU4tHc|YTGVE?Y zkjrz=o8#|?vB!ta{sMOnv*&h&Rsuyg)kb7cb?X8WS3u$ltS3|_AoP$5dFfL^PCx5dUDg4GZ#27X1%*<@i-<6`bM49`6LRTMB!WKYdU05j<%Z3=pD^( z&C+Ek28A9{TsTfl#wHTJr(K0hsF`~~oj1Ms7hp6)5S`*W57VHe1oZ~m);$FteAX*U z@L|@so31Bi7Tw(de%CxOTnx`Q0ZQ%YvGGC)83?M~#Mw00ZFFk#tz^O*pGb{I zrsHB#7(xqd2lE3!51UQM*|=(uu0}p643UpA)owg$oK;>T%k%{lGxj*D!@YM4|DFRS zfh~5mbhV;ijgHU&SzQ9#wU(@BQ{R_8y@E1(XJ!io$q&zBe)mQ8@+FlQ-1>kdf-;EIZ30wTsnF@Y*( z>HPvU?J!#CgP$ZSfO=ZSToO}d+rBbR=oiaSPcftn3D3Z?7m6rb0k%=H5L|ImvXF?f dQ?k&WAbSBib{HLDS?Q|)>S?9+vX~N&`wv5_j7tCj diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/sql_execution.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/__pycache__/sql_execution.cpython-312.pyc index c327e76325e4275df3503a93da151ba736291b67..3edc2fc858e5c8b96879f421f9d545e0844e066a 100644 GIT binary patch delta 1189 zcmZ{iO>7%Q6vt=b+Ogx0+Kq9X+D>Ae5Ri&WX;RTBDpV;&Rr&#KCFEo_X)J%F zyX!)!qgYLa9I2wVEQk*|IEX{40tvSwBBb0ZxOjyG%bqNxl$1*x841)AGmeQ+C7!hJ z&HVmvX5PM;KlmSPwjZrl9$=f;8cGCACENGBg-o$E)1{vW-n7in$c%U-tUv^jh`1FR zM{6rG$kvJ-D;%;T2hQwVVXm;qDRIapanlgF@4_plTb}5l@^R|s8wQ+{Gsu9dq^MaJ zKH~RJ*0(=j+}*tQ^t;N=*IxvQ9ECC|$beEhn=(vDnvQ3asw`kuUZ;-F`0-%k{Mq34 z{X0)S-Pm6LcITVb-Oa-G{q?8$rQOY?C})T$uEv#2R-Tg1AcIkEBn?iD%QKQ{2zYWq zO3fwXs$__hS!FgYDayHcN;0^)xExO@vK=2FJId$j6ALUJF5<7rQvi$u3M_+JFi#^Y zN8JRnIY%MNhvgh5!#E=PfYWWxv^YHAu+3qMvj?1QbGF5~eZGJX;M#(T2stW&3whq~ z{a7B-`*fbkF)~Ev95YL$DFo(W4kX&zf7d0*uRUjo&(S&frSOp17Z$Gp1a9NWXY?}j zG0TDpa17joUojt0QSn^6PdL@EN*_v7Sv5YHlqPN@WhZ7bxn9{#RKC?$NtI+p?j%&i z?xVr-6Z)lhXv30FGU@lpg|)JyjKPq5;--?bQd-3?CZniP)_{tXoR+<0KRB5|xAu1; z`zz#6g2bM^SS~T+3#4JnW9)Xo-+55)a1@{}_$n7Pp+^t(t=Y8DvBFp}pou|UuouUc zM)Yw1ntOE|!){IN(FJd1OcR3ok>2XOcH~uzU(m$v|J}k_R5hVX?}=2euLf}Pb-yMC z>JIm^x8$w#S5N=sh!wbB`v!~smD8Fdv~je+>2BZh)zZ~p+!4(k(Zv(G=dkYdHB7+M z+XT?V{{^6(Zvbc^&dxtmNZan5dVQ3kwuY%u3T}$^+2E9>^i$O#eDF z9w=Gt?t;4D&5!AwvHW=5?yW}#AEh<_+qyrzaZPiM>fL=Cy^nfpubg^3U6XEWo}3;Y zsEu6Ix-RLF!P?1pHUE1!r}o+<&2xFrYC6O>?7$PQUaYxddtGk9#pTa74!c;s8g2j_ z){g#3f;>?E4aPz-QqBNzq&mYqoXVhVQaULQ;VF5`%24@bHsA|WeDQJ<;Lv0M9oVDs HsI~4N9hF5x delta 677 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 diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/ai_training.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/ai_training.py new file mode 100644 index 0000000..96dd9b6 --- /dev/null +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/ai_training.py @@ -0,0 +1,68 @@ +""" +AI 补全训练工具 + +含 generate_table_by_description 的轮询配套 get_ai_training_detail。 +训练状态 trainingStatus: 0 待训练 / 1 训练中 / 2 已完成 / 3 失败 +""" + +from ._base import register_tool, ToolDef + + +@register_tool("list_ai_trainings") +class ListAiTrainingsTool(ToolDef): + name = "list_ai_trainings" + description = "获取 AI 补全训练任务列表" + input_schema = { + "type": "object", + "properties": { + "datasourceId": {"type": "string", "description": "数据源 ID(可选过滤)"}, + "pageNum": {"type": "integer", "default": 1, "description": "页码"}, + "pageSize": {"type": "integer", "default": 20, "description": "每页数量"}, + }, + "required": [], + } + + async def execute(self, args: dict) -> dict: + params = {k: v for k, v in args.items() if v is not None} + return await self.client.get("/ai/training/list", params=params) + + +@register_tool("create_ai_training_by_selected") +class CreateAiTrainingBySelectedTool(ToolDef): + name = "create_ai_training_by_selected" + description = "按选中的表创建 AI 补全训练任务" + input_schema = { + "type": "object", + "properties": { + "datasourceId": {"type": "string", "description": "数据源 ID"}, + "tableIds": { + "type": "array", + "description": "要训练的表 ID 数组", + "items": {"type": "string"}, + }, + }, + "required": ["tableIds"], + } + + async def execute(self, args: dict) -> dict: + return await self.client.post("/ai/training/createBySelected", json_data=args) + + +@register_tool("get_ai_training_detail") +class GetAiTrainingDetailTool(ToolDef): + name = "get_ai_training_detail" + description = ( + "查询 AI 训练任务详情(轮询用)。" + "trainingStatus: 0 待训练 / 1 训练中 / 2 已完成 / 3 失败。" + "generate_table_by_description 返回 taskId 后,用本工具轮询直到 status=2 取结果" + ) + input_schema = { + "type": "object", + "properties": { + "taskId": {"type": "string", "description": "训练任务 ID(generate_table 返回的 taskId)"}, + }, + "required": ["taskId"], + } + + async def execute(self, args: dict) -> dict: + return await self.client.get(f"/ai/training/{args['taskId']}") diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/api_keys.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/api_keys.py index 16b29c5..31eb772 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/api_keys.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/api_keys.py @@ -1,5 +1,5 @@ """ -API 密钥管理工具 (工具 18-23) +API 密钥管理工具(含创建、状态切换、删除、权限查询/授予/撤销) """ from ._base import register_tool, ToolDef @@ -119,3 +119,34 @@ class GrantApiKeyPermissionsTool(ToolDef): async def execute(self, args: dict) -> dict: return await self.client.post("/datasource/api_key/permission/grant_batch", json_data=args) + + +@register_tool("revoke_api_key_permissions") +class RevokeApiKeyPermissionsTool(ToolDef): + name = "revoke_api_key_permissions" + description = "撤销/删除 API 密钥已授予的权限(按权限记录 ID)" + input_schema = { + "type": "object", + "properties": { + "permissionIds": { + "type": "array", + "items": {"type": "string"}, + "description": ( + "权限记录 ID 列表。" + "先从 get_api_key_permissions 获取," + "取 connectionPermissions / databasePermissions / tablePermissions 中每项的 id 字段" + ), + }, + }, + "required": ["permissionIds"], + } + + async def execute(self, args: dict) -> dict: + args = dict(args) + permission_ids = args.pop("permissionIds", None) or [] + # 过滤掉空字符串/None,防止拼接出类似 "1,,2" 的非法 ID + permission_ids = [pid for pid in permission_ids if pid is not None and str(pid).strip()] + if not permission_ids: + raise ValueError("permissionIds 不能为空") + ids = ",".join(str(pid).strip() for pid in permission_ids) + return await self.client.delete(f"/datasource/api_key/permission/{ids}") diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/connection_config.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/connection_config.py new file mode 100644 index 0000000..1331d0f --- /dev/null +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/connection_config.py @@ -0,0 +1,104 @@ +""" +库表关联配置工具(外置/内置通用) + +对应文档 §2.2 / §4.2: +- postConnectionConfig 建库表关联配置(外置源建完连接后选库选表的最后一步) +- putConnectionConfig 改库表关联配置 +- deleteConnectionConfig 删配置(同时也是「删除库」的实现) +""" + +from ._base import register_tool, ToolDef + + +@register_tool("create_connection_config") +class CreateConnectionConfigTool(ToolDef): + name = "create_connection_config" + description = ( + "创建「库表关联」配置:外置数据源建完连接后,选择要纳管的库与表的最后一步。" + "完成后数据源才能用于智能问数" + ) + input_schema = { + "type": "object", + "properties": { + "connectionId": {"type": "string", "description": "数据源(连接)ID"}, + "syncTables": {"type": "boolean", "default": True, "description": "是否同步表结构,默认 true"}, + "databases": { + "type": "array", + "description": "要纳管的库及其表", + "items": { + "type": "object", + "properties": { + "databaseName": {"type": "string", "description": "库名"}, + "tableNames": { + "type": "array", + "description": "选中的表名数组", + "items": {"type": "string"}, + }, + }, + "required": ["databaseName", "tableNames"], + }, + }, + }, + "required": ["connectionId", "databases"], + } + + async def execute(self, args: dict) -> dict: + args = dict(args) + args.setdefault("syncTables", True) + return await self.client.post("/datasource/config", json_data=args) + + +@register_tool("update_connection_config") +class UpdateConnectionConfigTool(ToolDef): + name = "update_connection_config" + description = "更新「库表关联」配置(编辑已纳管的库表范围)" + input_schema = { + "type": "object", + "properties": { + "id": {"type": "string", "description": "配置 ID(编辑时必传)"}, + "connectionId": {"type": "string", "description": "数据源(连接)ID"}, + "syncTables": {"type": "boolean", "default": True, "description": "是否同步表结构,默认 true"}, + "databases": { + "type": "array", + "description": "要纳管的库及其表", + "items": { + "type": "object", + "properties": { + "databaseName": {"type": "string", "description": "库名"}, + "tableNames": { + "type": "array", + "description": "选中的表名数组", + "items": {"type": "string"}, + }, + }, + "required": ["databaseName", "tableNames"], + }, + }, + }, + "required": ["id", "connectionId", "databases"], + } + + async def execute(self, args: dict) -> dict: + args = dict(args) + args.setdefault("syncTables", True) + return await self.client.put("/datasource/config", json_data=args) + + +@register_tool("delete_connection_config") +class DeleteConnectionConfigTool(ToolDef): + name = "delete_connection_config" + description = "删除库表关联配置(批量)。这也是「删除内置库」的实现:传入对应库的配置 ID" + input_schema = { + "type": "object", + "properties": { + "ids": { + "type": "array", + "description": "配置 ID 数组", + "items": {"type": "string"}, + }, + }, + "required": ["ids"], + } + + async def execute(self, args: dict) -> dict: + return await self.client.post("/datasource/config/deletes", json_data={"ids": args["ids"]}) diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/data_import.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/data_import.py index 26c2478..7ea63f3 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/data_import.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/data_import.py @@ -2,8 +2,10 @@ 数据导入工具 (工具 30-31) """ -import base64 import io +import mimetypes +import os +from urllib.parse import urlparse, unquote from ._base import register_tool, ToolDef @@ -11,62 +13,186 @@ from ._base import register_tool, ToolDef @register_tool("preview_import_data") class PreviewImportDataTool(ToolDef): name = "preview_import_data" - description = "上传 Excel 文件,AI 智能识别并预览表结构/数据" + description = "从 URL 下载 Excel 文件,AI 智能识别并预览表结构/数据" input_schema = { "type": "object", "properties": { "connectionId": {"type": "string", "description": "数据源 ID"}, "target": {"type": "string", "enum": ["prod", "test"], "default": "test", "description": "环境,默认 test"}, - "file_base64": {"type": "string", "description": "Excel 文件 base64 编码(.xlsx/.xls, <500KB)"}, - "file_name": {"type": "string", "description": "文件名(如 data.xlsx)"}, + "file_url": {"type": "string", "description": "Excel 文件下载地址(.xlsx/.xls, <500KB)"}, }, - "required": ["connectionId", "file_base64"], + "required": ["connectionId", "file_url"], } async def execute(self, args: dict) -> dict: args = dict(args) connection_id = args.pop("connectionId") target = args.pop("target", "test") - file_base64 = args.pop("file_base64") - file_name = args.pop("file_name", "import.xlsx") - - # 解码 base64 文件 - file_content = base64.b64decode(file_base64) - - # 构建文件上传 + file_url = args.pop("file_url") + + # 0. 基础 URL 校验 + parsed_url = urlparse(file_url) + if parsed_url.scheme not in ("http", "https"): + raise ValueError("仅支持 http/https 协议的下载地址") + + # 1. 下载文件 + download_resp = await self.client.client.get(file_url, follow_redirects=True, timeout=30.0) + download_resp.raise_for_status() + + # 1.1 预先根据 Content-Length 拦截超大文件,避免无意义下载 + max_size = 500 * 1024 + content_length = download_resp.headers.get("content-length") + if content_length: + try: + if int(content_length) > max_size: + raise ValueError( + f"文件 Content-Length {content_length} bytes 超过平台限制 {max_size} bytes (500KB)" + ) + except ValueError as e: + if "超过平台限制" in str(e): + raise + # 非数字时忽略 + + file_content = download_resp.content + + # 2. 文件大小校验(平台限制 500KB) + if len(file_content) > max_size: + raise ValueError( + f"文件大小 {len(file_content)} bytes 超过平台限制 {max_size} bytes (500KB)," + "请先压缩或拆分后重试" + ) + + # 3. 解析文件名并校验扩展名 + file_name = self._extract_file_name(download_resp, file_url) + allowed_exts = (".xlsx", ".xls") + if not file_name.lower().endswith(allowed_exts): + raise ValueError( + f"不支持的文件类型: {file_name},仅支持 {', '.join(allowed_exts)}" + ) + + # 4. 推断 MIME 类型 + content_type, _ = mimetypes.guess_type(file_name) + if not content_type: + content_type = ( + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" + if file_name.lower().endswith(".xlsx") + else "application/vnd.ms-excel" + ) + + # 5. 构建文件上传 files = { - "file": (file_name, io.BytesIO(file_content), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"), + "file": (file_name, io.BytesIO(file_content), content_type), } - + return await self.client.upload( f"/datasource/connection/{connection_id}/import_document/preview", files=files, params={"target": target}, ) + @staticmethod + def _extract_file_name(response, file_url: str) -> str: + """从响应头或 URL 中提取文件名。""" + # 优先从 Content-Disposition 解析 + content_disposition = response.headers.get("content-disposition") + if content_disposition: + # 简单解析 filename="xxx" 或 filename*=UTF-8''xxx + # 注意:filename* 也包含 filename= 前缀,必须先检查 filename* + for part in content_disposition.split(";"): + part = part.strip() + if part.lower().startswith("filename*="): + encoded = part.split("=", 1)[1] + # 形如 UTF-8''xxx + if "''" in encoded: + _, _, file_name = encoded.partition("''") + return os.path.basename(unquote(file_name, encoding="utf-8")) + return os.path.basename(unquote(encoded, encoding="utf-8")) + if part.lower().startswith("filename="): + file_name = part.split("=", 1)[1].strip('"') + return os.path.basename(unquote(file_name)) + + # fallback 从 URL 路径获取 + parsed = urlparse(file_url) + path = unquote(parsed.path) + file_name = os.path.basename(path) if path else "" + if file_name and "." in file_name: + return file_name + + return "import.xlsx" + @register_tool("confirm_import_data") class ConfirmImportDataTool(ToolDef): name = "confirm_import_data" - description = "确认导入 AI 识别后的数据" + description = ( + "确认导入 AI 识别后的数据(建表+插数据)。" + "传入 preview_import_data 返回的 data 原文 + databaseName 即可," + "工具内部会自动组装成后端要求的 {tableStructure(含databaseName), allData} 结构" + ) input_schema = { "type": "object", "properties": { - "connectionId": {"type": "string", "description": "数据源 ID"}, - "target": {"type": "string", "enum": ["prod", "test"], "description": "环境"}, - "data": {"type": "object", "description": "导入数据(含 tableStructure + allData)"}, + "connectionId": {"type": "string", "description": "数据源连接 ID"}, + "databaseName": {"type": "string", "description": "落库的数据库名(导入目标库)"}, + "target": {"type": "string", "enum": ["prod", "test"], "default": "test", "description": "环境,默认 test"}, + "data": {"type": "object", "description": "preview_import_data 返回的 data(含 tableStructure/allData),或已组装好的最终结构"}, }, "required": ["connectionId", "data"], } + @staticmethod + def _build_body(data: dict, database_name) -> dict: + """把 preview 返回的 data 组装成 confirm 要求的 body。 + + 后端真实结构(已真机探测确认): + { "tableStructure": <单表对象,含 columns 且需带 databaseName>, "allData": [...] } + preview 返回的 data.tableStructure 是 {success,message,data:{tables:[...]}} 的包装, + 需取出 data.tables[0] 作为单表对象。 + """ + if not isinstance(data, dict): + return data + + # 若传入的是 preview 工具的完整返回信封 {code, msg, data:{...}},先剥一层 + if "tableStructure" not in data and isinstance(data.get("data"), dict): + inner_env = data["data"] + if "tableStructure" in inner_env or "allData" in inner_env: + data = inner_env + + ts = data.get("tableStructure") + single_table = None + if isinstance(ts, dict): + if "columns" in ts: + # 已是单表对象(调用方自行组装过) + single_table = dict(ts) + else: + # preview 包装:tableStructure.data.tables[0] + inner = ts.get("data") if isinstance(ts.get("data"), dict) else {} + tables = inner.get("tables") if isinstance(inner, dict) else None + if isinstance(tables, list) and tables: + single_table = dict(tables[0]) + + if single_table is None: + # 无法识别结构,原样透传(兼容调用方已构造好完整 body 的情况) + return data + + if database_name and not single_table.get("databaseName"): + single_table["databaseName"] = database_name + + all_data = data.get("allData") + if all_data is None: + all_data = data.get("data") or [] + return {"tableStructure": single_table, "allData": all_data} + async def execute(self, args: dict) -> dict: args = dict(args) connection_id = args.pop("connectionId") target = args.pop("target", "test") + database_name = args.pop("databaseName", None) data = args.pop("data") - + + body = self._build_body(data, database_name) return await self.client.post( f"/datasource/connection/{connection_id}/import_document/confirm", - json_data=data, + json_data=body, params={"target": target}, ) diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/database_tables.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/database_tables.py index e524b44..bb96651 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/database_tables.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/database_tables.py @@ -45,6 +45,28 @@ class ListTablesTool(ToolDef): return await self.client.get("/datasource/table/list", params=params) +@register_tool("list_tables_with_ai") +class ListTablesWithAiTool(ToolDef): + name = "list_tables_with_ai" + description = ( + "获取表元数据列表(含 AI 训练描述),内置库管理的主列表。" + "注意:datasourceId 实为「配置/库」ID(即 create_connection_config 落库后的 config id)" + ) + input_schema = { + "type": "object", + "properties": { + "datasourceId": {"type": "string", "description": "配置/库 ID(非数据源连接 ID)"}, + "pageNum": {"type": "integer", "default": 1, "description": "页码"}, + "pageSize": {"type": "integer", "default": 20, "description": "每页数量"}, + }, + "required": ["datasourceId"], + } + + async def execute(self, args: dict) -> dict: + params = {k: v for k, v in args.items() if v is not None} + return await self.client.get("/datasource/table/ailist", params=params) + + @register_tool("get_table_detail") class GetTableDetailTool(ToolDef): name = "get_table_detail" @@ -117,8 +139,8 @@ class AlterTableTool(ToolDef): "items": { "type": "object", "properties": { - "operation": {"type": "string", "enum": ["ADD_COLUMN", "DROP_COLUMN", "RENAME_COLUMN", "ALTER_COLUMN_TYPE", "SET_NOT_NULL", "DROP_NOT_NULL", "SET_DEFAULT", "DROP_DEFAULT"], "description": "变更类型"}, - "column": {"type": "object", "description": "列定义(根据 operation 不同包含不同字段)"}, + "operation": {"type": "string", "enum": ["ADD_COLUMN", "MODIFY_COLUMN", "DROP_COLUMN"], "description": "变更类型:新增/修改/删除字段(后端实测仅支持这三种)"}, + "column": {"type": "object", "description": "列定义。ADD/MODIFY 需 columnName+columnType(+columnLength/columnComment 等);DROP 仅需 columnName"}, }, "required": ["operation", "column"], }, @@ -137,7 +159,7 @@ class AlterTableTool(ToolDef): @register_tool("generate_table_by_description") class GenerateTableByDescriptionTool(ToolDef): name = "generate_table_by_description" - description = "通过自然语言描述让 AI 生成表结构(异步任务)" + description = "通过自然语言描述让 AI 生成表结构(异步任务,返回 taskId)。需配合 get_ai_training_detail 轮询 taskId 获取生成结果" input_schema = { "type": "object", "properties": { @@ -149,3 +171,116 @@ class GenerateTableByDescriptionTool(ToolDef): async def execute(self, args: dict) -> dict: return await self.client.post("/datasource/connection/generate_table", json_data=args) + + +@register_tool("create_database") +class CreateDatabaseTool(ToolDef): + name = "create_database" + description = "在内置数据源下创建一个数据库(建表前置步骤)" + input_schema = { + "type": "object", + "properties": { + "connectionId": {"type": "string", "description": "数据源连接 ID"}, + "databaseName": {"type": "string", "description": "数据库名(仅字母数字下划线)"}, + }, + "required": ["connectionId", "databaseName"], + } + + async def execute(self, args: dict) -> dict: + args = dict(args) + connection_id = args.pop("connectionId") + return await self.client.post(f"/datasource/connection/{connection_id}/create_database", json_data=args) + + +@register_tool("create_database_table") +class CreateDatabaseTableTool(ToolDef): + name = "create_database_table" + description = ( + "一次性创建数据库 + 表(合并接口,免去先建库再建表)。" + "支持两种用法:①单表便捷参数 tableName/tableComment/columns;" + "②批量传 tables 数组(一次建多张表)。二者任选其一" + ) + # 单字段(columnName/columnType/...)的 schema,单表和批量两种用法共用 + _COLUMN_ITEMS = { + "type": "object", + "properties": { + "columnName": {"type": "string", "description": "字段名"}, + "columnType": {"type": "string", "description": "字段类型(VARCHAR/INTEGER/SERIAL等)"}, + "columnLength": {"type": "integer", "description": "字段长度"}, + "isPrimaryKey": {"type": "boolean", "description": "是否主键"}, + "isNullable": {"type": "boolean", "description": "是否可空"}, + "isAutoIncrement": {"type": "boolean", "description": "是否自增"}, + "columnComment": {"type": "string", "description": "字段注释"}, + "defaultValue": {"type": "string", "description": "默认值"}, + }, + "required": ["columnName", "columnType"], + } + input_schema = { + "type": "object", + "properties": { + "connectionId": {"type": "string", "description": "数据源连接 ID"}, + "databaseName": {"type": "string", "description": "数据库名(仅字母数字下划线)"}, + # —— 用法①:单表便捷参数 —— + "tableName": {"type": "string", "description": "表名(用法①单表,小写字母+数字+下划线)"}, + "tableComment": {"type": "string", "description": "表注释(用法①单表)"}, + "columns": { + "type": "array", + "description": "字段定义数组(用法①单表,结构同 create_table)", + "items": _COLUMN_ITEMS, + }, + # —— 用法②:批量 tables 数组 —— + "tables": { + "type": "array", + "description": "表定义数组(用法②批量建多表),每项含 tableName/tableComment/columns", + "items": { + "type": "object", + "properties": { + "tableName": {"type": "string", "description": "表名"}, + "tableComment": {"type": "string", "description": "表注释"}, + "columns": {"type": "array", "description": "字段定义数组", "items": _COLUMN_ITEMS}, + }, + "required": ["tableName", "columns"], + }, + }, + }, + "required": ["connectionId", "databaseName"], + } + + async def execute(self, args: dict) -> dict: + args = dict(args) + connection_id = args.pop("connectionId") + # 后端真实 body 结构:{databaseName, tables:[{tableName,tableComment,columns}]}(已真机探测确认) + if not args.get("tables"): + table = {"tableName": args.pop("tableName", None), "columns": args.pop("columns", [])} + if args.get("tableComment") is not None: + table["tableComment"] = args.pop("tableComment") + args["tables"] = [table] + else: + # 批量用法下,清掉可能并存的单表字段,避免歧义 + args.pop("tableName", None) + args.pop("tableComment", None) + args.pop("columns", None) + return await self.client.post(f"/datasource/connection/{connection_id}/create_database_table", json_data=args) + + +@register_tool("alter_database") +class AlterDatabaseTool(ToolDef): + name = "alter_database" + description = "修改数据库(如改名)" + input_schema = { + "type": "object", + "properties": { + "connectionId": {"type": "string", "description": "数据源连接 ID"}, + "databaseName": {"type": "string", "description": "当前数据库名"}, + "newName": {"type": "string", "description": "新数据库名"}, + }, + "required": ["connectionId", "databaseName", "newName"], + } + + async def execute(self, args: dict) -> dict: + args = dict(args) + connection_id = args.pop("connectionId") + # 后端改名字段名为 newName(已真机探测确认);兼容历史传参 newDatabaseName + if "newName" not in args and "newDatabaseName" in args: + args["newName"] = args.pop("newDatabaseName") + return await self.client.put(f"/datasource/connection/{connection_id}/alter_database", json_data=args) diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/datasources.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/datasources.py index c38ea17..134668c 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/datasources.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/datasources.py @@ -71,7 +71,7 @@ class CreateDatasourceTool(ToolDef): "type": "object", "properties": { "datasourceName": {"type": "string", "description": "数据源名称(3-20字)"}, - "datasourceType": {"type": "string", "enum": ["mysql", "postgresql", "oracle", "sqlserver", "dameng"], "description": "数据库类型"}, + "datasourceType": {"type": "string", "enum": ["mysql", "postgresql", "oracle", "sqlserver", "dameng", "kingbase", "sqlite", "mariadb"], "description": "数据库类型"}, "host": {"type": "string", "description": "数据库地址"}, "port": {"type": "integer", "description": "端口号"}, "databaseName": {"type": "string", "description": "要连接的数据库名"}, @@ -88,7 +88,7 @@ class CreateDatasourceTool(ToolDef): args = dict(args) test_first = args.pop("test_first", True) - # 如果需要先测试连接 + # 如果需要先测试连接(测试失败时 client 会直接抛异常,由上层统一捕获) if test_first: test_data = { "datasourceName": args.get("datasourceName"), @@ -100,10 +100,8 @@ class CreateDatasourceTool(ToolDef): "password": args.get("password"), "connectionType": args.get("connectionType", "user_password"), } - test_result = await self.client.post("/datasource/connection/test", json_data=test_data) - if test_result.get("code") != 200: - return {"success": False, "error": f"连接测试失败: {test_result.get('msg', '未知错误')}"} - + await self.client.post("/datasource/connection/test", json_data=test_data) + # 创建数据源 return await self.client.post("/datasource/connection", json_data=args) @@ -117,11 +115,13 @@ class UpdateDatasourceTool(ToolDef): "properties": { "id": {"type": "string", "description": "数据源 ID"}, "datasourceName": {"type": "string", "description": "更新名称"}, + "datasourceType": {"type": "string", "enum": ["mysql", "postgresql", "oracle", "sqlserver", "dameng", "kingbase", "sqlite", "mariadb"], "description": "数据库类型"}, "host": {"type": "string", "description": "更新地址"}, "port": {"type": "integer", "description": "更新端口"}, "databaseName": {"type": "string", "description": "更新数据库名"}, "username": {"type": "string", "description": "更新用户名"}, "password": {"type": "string", "description": "新密码(不传则不变)"}, + "connectionType": {"type": "string", "enum": ["user_password", "ssl"], "description": "连接类型"}, "remark": {"type": "string", "description": "更新描述"}, }, "required": ["id"], @@ -168,6 +168,82 @@ class DeleteDatasourceTool(ToolDef): except Exception as e: # 记录日志但继续删除 logger.debug(f"停用数据源失败(可能已停用): {e}") - + # 删除数据源 return await self.client.delete(f"/datasource/connection/{ds_id}") + + +@register_tool("test_connection") +class TestConnectionTool(ToolDef): + name = "test_connection" + description = "测试外部数据库连接是否可用(不创建数据源)" + input_schema = { + "type": "object", + "properties": { + "datasourceType": {"type": "string", "enum": ["mysql", "postgresql", "oracle", "sqlserver", "dameng", "kingbase", "sqlite", "mariadb"], "description": "数据库类型"}, + "host": {"type": "string", "description": "数据库地址"}, + "port": {"type": "integer", "description": "端口号"}, + "databaseName": {"type": "string", "description": "要连接的数据库名"}, + "username": {"type": "string", "description": "数据库用户名"}, + "password": {"type": "string", "description": "密码"}, + "connectionType": {"type": "string", "enum": ["user_password", "ssl"], "description": "连接类型,默认 user_password"}, + }, + "required": ["datasourceType", "host", "port", "databaseName", "username"], + } + + async def execute(self, args: dict) -> dict: + args = dict(args) + args.setdefault("connectionType", "user_password") + return await self.client.post("/datasource/connection/test", json_data=args) + + +@register_tool("get_realtime_structure") +class GetRealtimeStructureTool(ToolDef): + name = "get_realtime_structure" + description = "拉取数据源真实的库表结构(实时探测远端数据库)" + input_schema = { + "type": "object", + "properties": { + "datasourceId": {"type": "string", "description": "数据源 ID"}, + }, + "required": ["datasourceId"], + } + + async def execute(self, args: dict) -> dict: + ds_id = args["datasourceId"] + return await self.client.get(f"/datasource/connection/realtime/structure/{ds_id}") + + +@register_tool("create_builtin_datasource") +class CreateBuiltinDatasourceTool(ToolDef): + name = "create_builtin_datasource" + description = "创建内置 PostgreSQL 数据源连接,返回 connectionId(内置源建库建表链路第一步)" + input_schema = { + "type": "object", + "properties": { + "datasourceName": {"type": "string", "description": "数据源名称(3-20字)"}, + "remark": {"type": "string", "description": "数据源描述"}, + }, + "required": ["datasourceName"], + } + + async def execute(self, args: dict) -> dict: + return await self.client.post("/datasource/connection/create_builtin_postgresql", json_data=args) + + +@register_tool("update_builtin_datasource") +class UpdateBuiltinDatasourceTool(ToolDef): + name = "update_builtin_datasource" + description = "修改内置 PostgreSQL 数据源连接信息" + input_schema = { + "type": "object", + "properties": { + "id": {"type": "string", "description": "数据源 ID"}, + "datasourceName": {"type": "string", "description": "更新名称"}, + "remark": {"type": "string", "description": "更新描述"}, + }, + "required": ["id"], + } + + async def execute(self, args: dict) -> dict: + return await self.client.put("/datasource/connection/update_builtin_database", json_data=args) diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/mqtt_sync.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/mqtt_sync.py new file mode 100644 index 0000000..4786bb1 --- /dev/null +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/mqtt_sync.py @@ -0,0 +1,151 @@ +""" +MQTT 字段关联同步工具(内置源专属,文档 §8) + +接口前缀为 /system/mqtt(注意与 /datasource 不同)。 + +关于 sourceTable / targetTable 的方向(已真机验证): +直接调后端 API 时按字面透传即可——create 传什么,detail 回显就是什么, +字段自洽、后端不做调换。例:create 传 sourceTable=sys_user/targetTable=users, +detail 读回仍是 sourceTable=sys_user/targetTable=users。 +文档 §8 提到的「前端提交时调换」是前端 Vue 组件为 UI 展示所做的转换, +与后端 API 契约无关,本工具(直连 API)无需调换。 +""" + +from ._base import register_tool, ToolDef + + +@register_tool("list_mqtt_configs") +class ListMqttConfigsTool(ToolDef): + name = "list_mqtt_configs" + description = "获取 MQTT 字段关联同步配置列表" + input_schema = { + "type": "object", + "properties": { + "pageNum": {"type": "integer", "default": 1, "description": "页码"}, + "pageSize": {"type": "integer", "default": 20, "description": "每页数量"}, + }, + "required": [], + } + + async def execute(self, args: dict) -> dict: + params = {k: v for k, v in args.items() if v is not None} + return await self.client.get("/system/mqtt/config/list", params=params) + + +@register_tool("get_mqtt_config_detail") +class GetMqttConfigDetailTool(ToolDef): + name = "get_mqtt_config_detail" + description = "获取 MQTT 同步配置详情" + input_schema = { + "type": "object", + "properties": { + "configId": {"type": "string", "description": "配置 ID"}, + }, + "required": ["configId"], + } + + async def execute(self, args: dict) -> dict: + return await self.client.get(f"/system/mqtt/config/{args['configId']}") + + +@register_tool("list_mqtt_target_tables") +class ListMqttTargetTablesTool(ToolDef): + name = "list_mqtt_target_tables" + description = "获取 MQTT 可同步的目标表列表" + input_schema = {"type": "object", "properties": {}, "required": []} + + async def execute(self, args: dict) -> dict: + return await self.client.get("/system/mqtt/config/tableList") + + +@register_tool("list_mqtt_target_table_columns") +class ListMqttTargetTableColumnsTool(ToolDef): + name = "list_mqtt_target_table_columns" + description = "获取 MQTT 目标表的字段列表" + input_schema = { + "type": "object", + "properties": { + "tableName": {"type": "string", "description": "目标表名"}, + }, + "required": ["tableName"], + } + + async def execute(self, args: dict) -> dict: + return await self.client.get(f"/system/mqtt/config/tableColumns/{args['tableName']}") + + +@register_tool("create_mqtt_config") +class CreateMqttConfigTool(ToolDef): + name = "create_mqtt_config" + description = ( + "新增 MQTT 字段关联同步配置。" + "sourceTable/targetTable 按字面透传即可(实测确认 create 存入与 detail 回显一致," + "无需调换;文档§8 的调换是前端 UI 层行为,与本 API 无关)" + ) + input_schema = { + "type": "object", + "properties": { + "sourceTable": {"type": "string", "description": "源表名"}, + "targetTable": {"type": "string", "description": "目标表名"}, + "config": {"type": "object", "description": "完整配置体(字段映射等),按后端结构透传"}, + }, + "required": [], + } + + async def execute(self, args: dict) -> dict: + # config 若存在则以其为主体,否则直接用 args(去掉 config 包裹键) + body = args.get("config") if isinstance(args.get("config"), dict) else dict(args) + return await self.client.post("/system/mqtt/config", json_data=body) + + +@register_tool("update_mqtt_config") +class UpdateMqttConfigTool(ToolDef): + name = "update_mqtt_config" + description = ( + "修改 MQTT 字段关联同步配置。" + "sourceTable/targetTable 按字面透传即可(实测确认无需调换,详见 create_mqtt_config)" + ) + input_schema = { + "type": "object", + "properties": { + "id": {"type": "string", "description": "配置 ID"}, + "sourceTable": {"type": "string", "description": "源表名"}, + "targetTable": {"type": "string", "description": "目标表名"}, + "config": {"type": "object", "description": "完整配置体,按后端结构透传"}, + }, + "required": ["id"], + } + + async def execute(self, args: dict) -> dict: + if isinstance(args.get("config"), dict): + body = dict(args["config"]) + body.setdefault("id", args.get("id")) + else: + body = dict(args) + return await self.client.put("/system/mqtt/config", json_data=body) + + +@register_tool("delete_mqtt_config") +class DeleteMqttConfigTool(ToolDef): + name = "delete_mqtt_config" + description = "删除 MQTT 同步配置(支持多个 id,逗号拼接)" + input_schema = { + "type": "object", + "properties": { + "ids": {"type": "string", "description": "配置 ID,多个用逗号拼接"}, + }, + "required": ["ids"], + } + + async def execute(self, args: dict) -> dict: + return await self.client.delete(f"/system/mqtt/config/{args['ids']}") + + +@register_tool("refresh_mqtt_config_cache") +class RefreshMqttConfigCacheTool(ToolDef): + name = "refresh_mqtt_config_cache" + description = "刷新 MQTT 同步配置缓存" + input_schema = {"type": "object", "properties": {}, "required": []} + + async def execute(self, args: dict) -> dict: + return await self.client.get("/system/mqtt/config/refreshCache") diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/skills.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/skills.py index 1a3af12..590d7eb 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/skills.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/skills.py @@ -119,14 +119,17 @@ class DeleteSkillToolTool(ToolDef): @register_tool("update_skill_config") class UpdateSkillConfigTool(ToolDef): name = "update_skill_config" - description = "更新技能配置(如 MCP Server 配置模板)" + description = "更新技能(名称/描述/MCP 配置模板等)。对应后端 skill/updateOrGet" input_schema = { "type": "object", "properties": { "datasourceId": {"type": "string", "description": "数据源 ID"}, - "configTemplate": {"type": "string", "description": "配置模板 JSON 字符串"}, + "skillId": {"type": "string", "description": "技能 ID(可选)"}, + "name": {"type": "string", "description": "技能名称(可选)"}, + "description": {"type": "string", "description": "技能描述(可选)"}, + "configTemplate": {"type": "string", "description": "配置模板 JSON 字符串(可选)"}, }, - "required": ["datasourceId", "configTemplate"], + "required": ["datasourceId"], } async def execute(self, args: dict) -> dict: @@ -135,3 +138,40 @@ class UpdateSkillConfigTool(ToolDef): if "configTemplate" in args and isinstance(args["configTemplate"], dict): args["configTemplate"] = json.dumps(args["configTemplate"]) return await self.client.post("/datasource/skill/updateOrGet", json_data=args) + + +@register_tool("update_skill_tool") +class UpdateSkillToolTool(ToolDef): + name = "update_skill_tool" + description = "修改技能下某个工具的名称/描述/SQL等(对应后端 tskilltool/updateOrGet,upsert 语义)" + # 真实工具实体字段(已真机探测确认):主键 id、展示名 uniqueName、描述 description、 + # SQL 模板 sqlTemplate、结果类型 resultType。后端不认 skillToolId/businessDescription/businessScenario。 + input_schema = { + "type": "object", + "properties": { + "id": {"type": "string", "description": "技能工具 ID(get_skill_tools 返回的 id)"}, + "uniqueName": {"type": "string", "description": "工具展示名(可选)"}, + "description": {"type": "string", "description": "工具描述(可选)"}, + "sqlTemplate": {"type": "string", "description": "SQL 模板(可选)"}, + "resultType": {"type": "string", "enum": ["single", "list"], "description": "结果类型(可选)"}, + }, + "required": ["id"], + } + + # 旧参数名 -> 真实字段名(向后兼容此前错误实现的调用方) + _LEGACY_MAP = { + "skillToolId": "id", + "name": "uniqueName", + "businessDescription": "description", + } + + async def execute(self, args: dict) -> dict: + args = dict(args) + for old, new in self._LEGACY_MAP.items(): + if old in args and new not in args: + args[new] = args.pop(old) + else: + args.pop(old, None) + # businessScenario 后端实体无此字段,丢弃避免干扰 + args.pop("businessScenario", None) + return await self.client.post("/datasource/skill/tskilltool/updateOrGet", json_data=args) diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/sql_execution.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/sql_execution.py index 07ddf92..4f53352 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/sql_execution.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/sql_execution.py @@ -35,4 +35,11 @@ class ExecuteSqlTool(ToolDef): body["businessName"] = args["businessName"] if "params" in args: body["parameters"] = args["params"] - return await self.client.post("/datasource/sqlExecutionLog/testSqlWithSchema", json_data=body) + # target 通过 query 参数下发(prod/test 双环境),默认 prod + target = args.get("target", "prod") + params = {"target": target} if target else None + return await self.client.post( + "/datasource/sqlExecutionLog/testSqlWithSchema", + json_data=body, + params=params, + ) diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/subscriptions.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/subscriptions.py index 6080cf0..11799bc 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/subscriptions.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/subscriptions.py @@ -8,22 +8,24 @@ from ._base import register_tool, ToolDef @register_tool("toggle_table_subscription") class ToggleTableSubscriptionTool(ToolDef): name = "toggle_table_subscription" - description = "切换表的订阅状态" + description = "切换表的订阅状态(订阅依赖该表已配置 MQTT 字段关联,否则后端会报操作失败)" input_schema = { "type": "object", "properties": { - "tableId": {"type": "string", "description": "表 ID"}, - "datasourceId": {"type": "string", "description": "数据源 ID"}, + "configId": {"type": "string", "description": "库/配置 ID(即 list_databases 返回的 config id)"}, + "tableName": {"type": "string", "description": "表名(注意:后端按表名而非 tableId 识别)"}, "subscribe": {"type": "boolean", "description": "true=订阅, false=取消订阅"}, }, - "required": ["tableId", "datasourceId", "subscribe"], + "required": ["configId", "tableName", "subscribe"], } async def execute(self, args: dict) -> dict: - # 映射参数名为后端 API 期望的格式 + # 后端真实字段(已真机探测确认):configId + tableName + isSubscribe(bool) + # 兼容旧参数名 datasourceId->configId + config_id = args.get("configId") or args.get("datasourceId") body = { - "tableId": args["tableId"], - "datasourceId": args["datasourceId"], - "subscribe": args["subscribe"], + "configId": config_id, + "tableName": args.get("tableName"), + "isSubscribe": args.get("subscribe"), } return await self.client.post("/datasource/subscription/toggle", json_data=body) diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/table_data.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/table_data.py index 67bf8c0..2d5889c 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/table_data.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/tools/table_data.py @@ -10,12 +10,12 @@ from ._base import register_tool, ToolDef @register_tool("query_table_data") class QueryTableDataTool(ToolDef): name = "query_table_data" - description = "查询内置表数据(分页)" + description = "查询内置表数据(分页)。target 默认 test(调试环境);查询线上数据须显式传 target=prod" input_schema = { "type": "object", "properties": { "tableId": {"type": "string", "description": "表 ID"}, - "target": {"type": "string", "enum": ["prod", "test"], "default": "prod", "description": "环境,默认 prod"}, + "target": {"type": "string", "enum": ["prod", "test"], "default": "test", "description": "环境,默认 test(调试);线上数据传 prod"}, "pageNum": {"type": "integer", "default": 1, "description": "页码"}, "pageSize": {"type": "integer", "default": 10, "description": "每页数量"}, }, @@ -25,6 +25,7 @@ class QueryTableDataTool(ToolDef): async def execute(self, args: dict) -> dict: args = dict(args) table_id = args.pop("tableId") + args.setdefault("target", "test") params = {k: v for k, v in args.items() if v is not None} return await self.client.get(f"/datasource/connection/builtin/table/{table_id}", params=params) @@ -32,12 +33,12 @@ class QueryTableDataTool(ToolDef): @register_tool("insert_table_row") class InsertTableRowTool(ToolDef): name = "insert_table_row" - description = "向内置表插入一行数据" + description = "向内置表插入一行数据。⚠️ 写操作 target 默认 test(调试环境);写入线上库须显式传 target=prod" input_schema = { "type": "object", "properties": { "tableId": {"type": "string", "description": "表 ID"}, - "target": {"type": "string", "enum": ["prod", "test"], "default": "prod", "description": "环境,默认 prod"}, + "target": {"type": "string", "enum": ["prod", "test"], "default": "test", "description": "⚠️ 环境,默认 test(调试);写入线上库必须显式传 prod"}, "data": {"type": "object", "description": "行数据(键值对,键为字段名)"}, }, "required": ["tableId", "data"], @@ -46,21 +47,22 @@ class InsertTableRowTool(ToolDef): async def execute(self, args: dict) -> dict: args = dict(args) table_id = args.pop("tableId") - target = args.pop("target", "prod") + target = args.pop("target", "test") data = args.pop("data", {}) params = {"target": target} if target else {} - return await self.client.post(f"/datasource/connection/builtin/table/{table_id}/rows", json_data=data, params=params) + body = {"data": data} + return await self.client.post(f"/datasource/connection/builtin/table/{table_id}/rows", json_data=body, params=params) @register_tool("update_table_row") class UpdateTableRowTool(ToolDef): name = "update_table_row" - description = "更新内置表的指定行" + description = "更新内置表的指定行。⚠️ 写操作 target 默认 test(调试环境);修改线上库须显式传 target=prod" input_schema = { "type": "object", "properties": { "tableId": {"type": "string", "description": "表 ID"}, - "target": {"type": "string", "enum": ["prod", "test"], "default": "prod", "description": "环境,默认 prod"}, + "target": {"type": "string", "enum": ["prod", "test"], "default": "test", "description": "⚠️ 环境,默认 test(调试);修改线上库必须显式传 prod"}, "primaryKey": {"type": "object", "description": "主键值(如 {\"id\": 1})"}, "data": {"type": "object", "description": "要更新的字段值"}, }, @@ -70,7 +72,7 @@ class UpdateTableRowTool(ToolDef): async def execute(self, args: dict) -> dict: args = dict(args) table_id = args.pop("tableId") - target = args.pop("target", "prod") + target = args.pop("target", "test") primary_key = args.pop("primaryKey") data = args.pop("data", {}) params = {"target": target} if target else {} @@ -81,12 +83,12 @@ class UpdateTableRowTool(ToolDef): @register_tool("delete_table_rows") class DeleteTableRowsTool(ToolDef): name = "delete_table_rows" - description = "删除内置表的指定行(根据主键批量删除)" + description = "删除内置表的指定行(根据主键批量删除)。⚠️ 写操作 target 默认 test(调试环境);删除线上库数据须显式传 target=prod" input_schema = { "type": "object", "properties": { "tableId": {"type": "string", "description": "表 ID"}, - "target": {"type": "string", "enum": ["prod", "test"], "default": "prod", "description": "环境,默认 prod"}, + "target": {"type": "string", "enum": ["prod", "test"], "default": "test", "description": "⚠️ 环境,默认 test(调试);删除线上库数据必须显式传 prod"}, "primaryKeys": { "type": "array", "description": "主键数组(如 [{\"id\": 1}, {\"id\": 2}])", @@ -99,7 +101,7 @@ class DeleteTableRowsTool(ToolDef): async def execute(self, args: dict) -> dict: args = dict(args) table_id = args.pop("tableId") - target = args.pop("target", "prod") + target = args.pop("target", "test") primary_keys = args.pop("primaryKeys") params = {"target": target} if target else {} body = {"primaryKeys": primary_keys} @@ -109,12 +111,12 @@ class DeleteTableRowsTool(ToolDef): @register_tool("export_table_excel") class ExportTableExcelTool(ToolDef): name = "export_table_excel" - description = "导出表数据为 Excel 文件(返回 base64 编码)" + description = "导出表数据为 Excel 文件(返回 base64 编码)。target 默认 test(调试环境);导出线上数据须显式传 target=prod" input_schema = { "type": "object", "properties": { "tableId": {"type": "string", "description": "表 ID"}, - "target": {"type": "string", "enum": ["prod", "test"], "default": "prod", "description": "环境,默认 prod"}, + "target": {"type": "string", "enum": ["prod", "test"], "default": "test", "description": "环境,默认 test(调试);线上数据传 prod"}, }, "required": ["tableId"], } @@ -122,7 +124,7 @@ class ExportTableExcelTool(ToolDef): async def execute(self, args: dict) -> dict: args = dict(args) table_id = args.pop("tableId") - target = args.pop("target", "prod") + target = args.pop("target", "test") params = {"target": target} if target else {} result = await self.client.get(f"/datasource/connection/builtin/table/{table_id}/export/excel", params=params) diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/__pycache__/__init__.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/__pycache__/__init__.cpython-312.pyc index af8ee54dda0ffe524fbbee1cdd6aa936b61daea0..94343c0ef5e9a91945833a1706b7cd996b82a6d9 100644 GIT binary patch delta 34 pcmbQta)O!nG%qg~0}%Y0sh?G{kvD;nQFZc8MpedJlkYQ{005?J3OE1& delta 109 zcmX@XJeh^}G%qg~0}xD`sF{_%kvD$DsE#0kM9JS)MvyCk~3&PIQ-9Pshcf+!FhRzzT`$v?{uI+TD`<)ve;$vrb?@Ye) zo$q|-`_B2EC%;@j;@130t&XJNWAw8c&RVZ%{wYN^%rJX2b*}nto+kHV7w1{SHsWuX zIDC%D`{ZxTH6)o`gx{AxkSXol-llqdT2Y!Y6GXI8qcTdRJ6?RGm{*!_m@Gk4u3*aT zsty(|7YdhOH?8>OCq<2J+d}PU?i@ZA zdbjiT>z6~nI2by9`p&Dz@4R~SZugP9-ABh&th87{Ck}-^I~O|q+0E{b(BX5p-#KJy zarw4dZU&Bp0v|mr5w_jB^kL}3L$}XTm0fl8C%9nt5sNm$m%17)aehrEVY-;q0@k!=eBbP43PibSm}o@n45*`#9)GQN z$!!vrm=r&&Nh~H7ueGmUe&@|I-(J4F(Xy<%dbQ;xNv_3v0!+5VhK5z1CT=I|ak{vA zulFTpoMFDjrp1k#_+n`T*W5I$T~W2F(&4FZc6-WLwwWE)uW9m<*~2s)>+(X(ZfRzn zoX_Rk$>EEdS(;&*^RdH>d*}8R&L+bn8nb3t=Jxnp-bRjG+=8Xrh4Ko(xHSl`&=wg+ zBbkT_G-NQHDmht#7q&aT)8P-aaZE>%pv}R*)yB2*=9yjb!Td5Izl@)`q^E8mVL-_z zRbSVwxe;sbh!~8`=5^U4hPd|fQ3a)n4l2!p(%ez-l``W-Qf8<0V*T}`StqNzrN4{3 z8rd_OUt4>#EEla~e@mBIK3yxCKM`SE}++Ibr&NBMuAb94SLr1ms1EYOi0IjbVsxYAue79*0}Rl$Y{e4&oG5X&8||j{&@WKC(Ipy} z>7P-bm#|jQ&XxhF#BKT_d{tkfEFq)}0vs3_OlToaG8nCeKp0j%@7b}_!}-JrViy6) zCSzj=YbF6@c!MDYmEiq`1XT+VxPJlomU@6Y3^@yvQr@pUQ~SR2jI*;UkRF_0F3c|< zoWGJ^yWzBRFll2jZe#nhAwyiykR=$hI^(+v1`Tt0)!b2~eb{)tiXy1=8N67=q72K<_O;1TQRbNa$->)>1Xyr;Y`@FU?q5Lid$0fcHyi z;2e%1iQ#m+e6D&ah@JQ*onj0-g*rv~sRmM>@bZMq#5K%AuE8f_rhJ1dlG_l2d80Fm z*(cvGpJwqt$8Iu-mS&fMEOt2oD+nkjpaNIMSsNS#O(b9?0SgJJBp{mr;sbUS0gC{f zS3G3;=LnTZXLAS;-74-`4O5O3rHS^$lGtO{;jiP2s{Ld!0lG~G`#fcGnC;QWtHflRsj|GT2tG}Br|%ur3h8UU3~ zamq^IpGS%xt?nC zx^bJQ{m8xmBA;xmU6W;HJO0V4knLmq^eZ#)<)qoUZpJV5Gk$2B7iAY1kN_Wqw&bDE zruNC2G9dI7_++vHsiC39TQ15kge%w+n1NMGx-M=>RmVcPDuG`-G)G-nIz=_;u{|vY zcceA;)3G+PZXh6<0I_bG0UMUH;aW*rWuwREVIL2pnx`kX?cwAW^IFXC|1PkdN5+D`TnLhI;gb@TI+r2cdF?9P}E5PLs6dxMMJ;XM)hW*#a3x=RtDhL zG-z?A^qMw?;OPi>u2~Vmfd`A6 zJXysjx~u{m5@|1@dd4eG6e-a4qy45~7Dc-fiE?T%v=qYR}=A5vxhz^P#8f$U;*5zUug z(iBg>5foUeRlJf0Fu0QVTBxE(kvWel&r@tN&^clRi`aRGBb`nc9L>WzoiCXlJMh%v zAILr>0P)mAXo5iEzFkqN|}>0nQ4x;;hvF=7dnRKlMJ)`K@^ z&UQu+y?eYqIFs>-XA;-`2;#XU0O2D+MQJ$F@LFR~VdNFYA#F6g)gnye28&KcZ=*!% zDOoaNU&MdOT!|Lp^sJ>b#40F0G1q}0ww3_mV786`4*^~Rnh4m6&txT{!}vE@6|!Kw zO^CN)nXR~0!DOB0MkyFNxG^$}MyE2-oiUe_&nJ&kfClQtp~pQ?z^|?vDC%t*BjkI_ zkcwG>PQxl0JBzv;0YjiZ5Pzjo$SDmI2Yh_>I{t+XeD#Je_m7Eu_Y&1)7ic77=bqMp zG*H!(7O1(Z5uRBZrt&qLd6$RZ;^ntB@mrb%SF=#l5?&gmsC~#Tfnl+vj0{U9E5frC zl6z#WTrws~zLzZOfzye4ws!dfr9FngvMc+A8B501taI|4Tiv{8E8no4_iPt7Hwo*S z$JbtN1>tsyg9u+DSxyE!44}i0R!r(Jz#TdaqZAoCAJsvK{Q5e+{zZQ4Hhy~xzqLiE z-yy7L!~7tz6_vIU$qvatTK`KsD4n}o8BVLI>K&NuDgxm|qIF2TEdOk}=qkusM1D#S#O$s|k+8;@-{ zZz^|__#o*4K{Ak&%IpPn5Z}$oLM)EYt%_+TOJZNP_YHhP|ATk)s4i&T3gDCQnT;OL$=^3whdC=U1V delta 3260 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 diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/__pycache__/env_config.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/__pycache__/env_config.cpython-312.pyc index 0a4b06100b7e0bc9203449ef637ed868db7e4b2f..8b1c8c7e1eba70f2b1f027bb01c9f911743944da 100644 GIT binary patch delta 411 zcmaDR&??A#nwOW00SNeojIy#f^5!z~UjXvB6oBAG-}a~d(m?Vs_oyzNEzD?9{vzr^Mpa(4w5lmskQ+wN|)a z<~F&&Vp1dkbVD)_!vPDB#SFxsBPQ=!OPDXxliIs(cg~4QB7AGM=xUEi( z!LIS4K|Yh`u>?c_ExOEYeu2fjNC4=LWFUqEW*`fMKkEUB=?o=|Fqss_)lhZ`NFEGU zL+KQzIZVL}n#_|6SW{#ygg@ diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/__pycache__/logger_config.cpython-312.pyc b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/__pycache__/logger_config.cpython-312.pyc index 6c581fde0576b17395c69d27397b969184836176..dc2d07848db18dddd62909ba7181b79feb67f1bc 100644 GIT binary patch delta 74 zcmcbj-J;EVnwOW00SJE0)X&vg!_;1R#h eqk54?bwT=79=#9D3=*54^T)6<-kR(pIspJPiWfit delta 150 zcmZqCzM{>0nwOW00SF4_XlA)?^lM8f`oW%@VANT#WlCTk*TeToBj$ p#K6d@-{F3PNBlaE>O~&a1?g9L^gb{%a&Df^AH&M{Yw{P72>=l3G str: - """构建完整 URL,自动去掉路径中多余的 /api 前缀""" + """构建完整 URL + + 约定:base_url 已包含完整地址(如含 /api 前缀则配在环境变量里), + 各工具传入的 path 不带 /api 前缀,此处直接拼接。 + """ if path.startswith('http://') or path.startswith('https://'): return path - # 去掉 /api 前缀,因为 base_url 已经包含完整地址 - clean_path = path - if clean_path.startswith('/api'): - clean_path = clean_path[4:] - return f"{self.base_url}{clean_path}" + return f"{self.base_url}{path}" def _handle_response(self, response: httpx.Response, url: str) -> Dict[str, Any]: """统一处理 API 响应""" logger.info(f"[API响应] HTTP {response.status_code}") - + if response.status_code == 204: return {"success": True, "data": None} - - response.raise_for_status() - + + # 先尝试解析 body,再判断状态码。 + # 平台会用非 2xx 状态码 + body 里的 {code, msg} 返回业务错误, + # 若先 raise_for_status() 会在解析 body 前抛异常,导致真正的 msg 全部丢失。 try: data = response.json() - except json.JSONDecodeError: - # 非 JSON 响应(如文件下载) + except (json.JSONDecodeError, UnicodeDecodeError): + # 非 JSON 响应(如 Excel/文件下载,二进制内容 .json() 会抛 UnicodeDecodeError) + response.raise_for_status() return {"success": True, "data": response.content, "raw": True} - + # 检查平台 API 的 {code, msg} 格式 + # 平台约定:code 为 200 或 0 均表示成功(见数据库模块文档 §1.1) if isinstance(data, dict) and 'code' in data: - if data['code'] != 200: + if data['code'] not in (0, 200): error_msg = data.get('msg', '未知错误') - logger.error(f"[API错误] {error_msg}") + logger.error(f"[API错误] HTTP {response.status_code}, {error_msg}") raise Exception(error_msg) - + # code 合法即视为业务成功,不再用 HTTP 状态码二次否决 + return data + + # 无 {code} 信封的响应:回落到 HTTP 状态码判断, + # 非 2xx 时把 body 文本带进异常,避免错误细节丢失。 + if response.status_code >= 400: + detail = data if isinstance(data, str) else json.dumps(data, ensure_ascii=False) + logger.error(f"[API错误] HTTP {response.status_code}, {detail}") + raise Exception(f"HTTP {response.status_code}: {detail}") + return data async def get(self, path: str, params: Optional[Dict[str, Any]] = None) -> Dict[str, Any]: @@ -147,9 +159,13 @@ class AgileDBAPIClient: try: logger.info(f"[API请求] DELETE {url}") headers = self._get_headers() + # 注意:httpx 的 client.delete() 便捷方法不接受 json 参数(仅 post/put/patch 有)。 + # 需要带 body 的 DELETE 必须走通用 request(),否则会抛 TypeError。 if json_data is not None: headers['Content-Type'] = 'application/json' - response = await self.client.delete(url, headers=headers, params=params, json=json_data) + response = await self.client.request("DELETE", url, headers=headers, params=params, json=json_data) + else: + response = await self.client.delete(url, headers=headers, params=params) return self._handle_response(response, url) except httpx.TimeoutException: raise Exception(f"API 请求超时: {url}") diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/env_config.py b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/env_config.py index 6e19b1d..87364db 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/env_config.py +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/utils/env_config.py @@ -44,7 +44,7 @@ def get_env_config() -> dict: dict: 包含所有配置的字典 """ return { - "api_key": get_api_key(""), + "api_key": os.environ.get("API_KEY", ""), "base_url": get_base_url(), } diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/数据库模块-功能与业务链路说明.md b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/数据库模块-功能与业务链路说明.md new file mode 100644 index 0000000..d26e609 --- /dev/null +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/数据库模块-功能与业务链路说明.md @@ -0,0 +1,454 @@ +# 数据库模块 —— 功能、接口与业务链路说明 + +> 适用范围:`src/components/databasePage/` 全部组件 + `src/server/database.ts` API 层 +> 数据源分两类:**外置数据源(external)** 与 **内置数据源(builtin / 内置 PostgreSQL)** +> 所有接口前缀均为 `/api/datasource`(MQTT 同步相关为 `/api/system/mqtt`) +> 大部分接口超时设置为 `300000ms`(5 分钟,因含 AI 处理) + +--- + +## 0. 名词与基础概念 + +| 名词 | 说明 | +| --- | --- | +| 连接 / 数据源(connection) | 一条数据库连接记录,`sourceType` 为 `external` 或 `builtin` | +| 配置(config) | 数据源下「数据库 + 选中表」的关联配置,一条 config 对应一个库 | +| 表元数据(table metadata) | 平台侧记录的表结构(字段、注释、AI 训练描述等) | +| 技能(skill) | 绑定到某数据源的「智能问数技能」 | +| 工具(tool) | 技能下的一条可复用 SQL 查询能力(沉淀为 MCP 工具) | +| 环境(target) | 内置数据源数据分 `prod`(线上)/ `test`(调试)两套 | +| status | 数据源状态:`0` 运行中,`1` 已停止 | + +### 两类数据源核心差异 + +| 维度 | 外置数据源 external | 内置数据源 builtin | +| --- | --- | --- | +| 来源 | 连接用户已有的远程数据库 | 平台内置 PostgreSQL,平台直接建库建表 | +| 默认数字员工 | `1001`(SQL处理助手) | `1002`(SQL处理助手) | +| 建表能力 | ❌ 只读连接,不能建表 | ✅ AI 智能建表 / Excel 导入建表 / 手动建表 | +| 数据增删改 | ❌ 不提供行级 CRUD | ✅ 行级增删改查 + Excel 导入导出 | +| 环境切换 | ❌ 无 | ✅ prod / test 双环境 | +| 表订阅同步 | ❌ | ✅ MQTT 数据变更订阅 | +| 创建入口 | `CreateDataSource.vue` | `CreateBuiltinDataSource.vue` | + +--- + +## 1. 数据源(连接)的增删改查 —— 内外置通用 + +入口:[DataSourcePageMain.vue](../src/components/databasePage/DataSourcePageMain.vue) → [DataSourceList.vue](../src/components/databasePage/DataSourceList.vue) + +### 1.1 查询(列表 / 详情) + +| 功能 | 组件方法 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | --- | +| 数据源列表(分页/搜索/状态筛选) | `fetchDataSources()` | `getConnectionList(params)` | GET | `/api/datasource/connection/list` | +| 数据源详情 | `fetchDataSourceDetail()` | `getConnectionDetail(id)` | GET | `/api/datasource/connection/{id}` | +| 连接实例详情(含库表结构) | — | `getConnectionInstanceDetail(id)` | GET | `/api/datasource/connection/{id}` | +| 查看数据源实时库表结构 | `loadDatabaseList()` | `getConnectionRealtimeStructure(id)` | GET | `/api/datasource/connection/realtime/structure/{id}` | + +- 列表查询参数:`{ datasourceName?, status?, pageNum, pageSize }`,前端用手动 `IntersectionObserver` 做无限滚动。 +- 响应判定统一:`code === 200 || code === 0` 视为成功,列表数据在 `response.rows`,总数在 `response.total`。 + +### 1.2 启用 / 停用 + +| 功能 | 组件方法 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | --- | +| 切换运行状态 | `handleChangeStatus()` | `putConnectionChangeStatus({ id, status })` | PUT | `/api/datasource/connection/changeStatus` | + +- `status` 切换:`1->0` 启用,`0->1` 停用。 + +### 1.3 删除 + +| 功能 | 组件方法 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | --- | +| 删除数据源 | `handleDelete()` | `deleteConnection(id)` | DELETE | `/api/datasource/connection/{id}` | + +**业务链路(删除)**: +``` +用户点删除 → Modal 二次确认 + → 若 status===0(运行中):先 putConnectionChangeStatus({id, status:1}) 停用 + → 等待 500ms 确保状态更新 + → deleteConnection(id) + → 成功后 fetchDataSources() 刷新列表 +``` + +--- + +## 2. 外置数据源(external)的创建与编辑 + +入口组件:[CreateDataSource.vue](../src/components/databasePage/CreateDataSource.vue)(4 步向导) + +### 2.1 步骤与接口 + +``` +步骤0 选择数据库类型(mysql/postgresql/oracle/sqlserver/dameng/kingbase/sqlite/mariadb) + ↓ +步骤1 配置连接信息(host/port/库名/用户名/密码/认证方式) + → 点「下一步」自动触发 testConnection() 测试连接 + → 测试通过 → postConnectionDetail() / putConnectionDetail() 创建/更新数据源 + → emit('refresh') 通知列表刷新 + → getConnectionRealtimeStructure() 拉取真实库表结构 + ↓ +步骤2 选择数据库和数据表(大数据量:shallowRef + 分批渲染 + 防抖搜索) + ↓ +步骤3 确认信息 + → postConnectionConfig() / putConnectionConfig() 落库「库表关联」配置 + → emit('success') +``` + +### 2.2 接口清单 + +| 功能 | 接口函数 | 方法 | 路径 | 关键入参 | +| --- | --- | --- | --- | --- | +| 测试连接 | `testConnection(data)` | POST | `/api/datasource/connection/test` | host/port/databaseName/datasourceType/username/password/connectionType | +| 创建数据源 | `postConnectionDetail(data)` | POST | `/api/datasource/connection` | 同上 + datasourceName/remark | +| 更新数据源 | `putConnectionDetail(data)` | PUT | `/api/datasource/connection` | 同上 + id(编辑时密码可空表示不改) | +| 拉取实时库表结构 | `getConnectionRealtimeStructure(id)` | GET | `/api/datasource/connection/realtime/structure/{id}` | 数据源 id | +| 创建库表关联配置 | `postConnectionConfig(data)` | POST | `/api/datasource/config` | connectionId / syncTables / databases[] | +| 更新库表关联配置 | `putConnectionConfig(data)` | PUT | `/api/datasource/config` | id + 同上 | +| 删除配置 | `deleteConnectionConfig(ids[])` | POST | `/api/datasource/config/deletes` | `{ ids: [] }` | + +- `postConnectionConfig` 请求体结构: + ```json + { + "id": "配置ID(编辑传)", + "connectionId": "数据源ID", + "syncTables": true, + "databases": [ + { "databaseName": "库名", "tableNames": ["表1", "表2"] } + ] + } + ``` +- 编辑模式不回显密码;密码留空 = 不修改密码。 + +--- + +## 3. 内置数据源(builtin / 内置 PostgreSQL)的创建与编辑 + +入口组件:[CreateBuiltinDataSource.vue](../src/components/databasePage/CreateBuiltinDataSource.vue) +支持三种模式:`create`(新建数据源)/ `edit`(编辑数据源)/ `addTable`(为已有库新增表)。 + +### 3.1 步骤与接口(create 模式) + +``` +步骤0 填写数据源信息(datasourceName / remark) + → postCreateBuiltinPostgreSQLConnection() 创建内置 PG 连接,返回 connectionId + ↓ +步骤1 填写业务场景描述 + 数据库名(仅字母数字下划线,自动加 _数据源id 后缀) + → AI 生成表结构:postGenerateTable() 返回 taskId + → 轮询 getAiTrainingDetail(taskId)(trainingStatus: 0待训/1训练中/2完成/3失败,最多 60 次 × 2s) + → 解析 createTableData.data.tables 填入表列表 + → postCreateDatabase(connectionId, { databaseName }) 创建数据库 + ↓ +步骤2 预览 / 编辑表结构(TableDetailEditor) + → handleSubmit() 遍历表逐张 postCreateTable(connectionId, requestData) + → emit('refresh') + emit('success') +``` + +### 3.2 接口清单 + +| 功能 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | +| 创建内置 PG 连接 | `postCreateBuiltinPostgreSQLConnection(data)` | POST | `/api/datasource/connection/create_builtin_postgresql` | +| 修改内置 PG 连接 | `putUpdateBuiltinDatabase(data)` | PUT | `/api/datasource/connection/update_builtin_database` | +| AI 生成表结构 | `postGenerateTable(data)` | POST | `/api/datasource/connection/generate_table` | +| 查询 AI 训练任务详情(轮询) | `getAiTrainingDetail(taskId)` | GET | `/api/ai/training/{taskId}` | +| 创建数据库 | `postCreateDatabase(connectionId, data)` | POST | `/api/datasource/connection/{connectionId}/create_database` | +| 创建数据表 | `postCreateTable(connectionId, data)` | POST | `/api/datasource/connection/{connectionId}/create_table` | +| 创建库+表(合并) | `postCreateDatabaseTable(connectionId, data)` | POST | `/api/datasource/connection/{connectionId}/create_database_table` | + +- `addTable` 模式不直接调建表接口,而是 `emit('submitTables', tables)` 交回父组件(如 DatabaseDetail)提交。 +- AI 业务描述润色走 `getAgentGeneric` + `AGENT_GENERIC_CODES.SQL_SCENARIO_DESCRIPTION`(`server/employee`)。 + +--- + +## 4. 数据库 / 表结构的增删改查(主要面向内置源) + +入口组件:[DatabaseDetail.vue](../src/components/databasePage/DatabaseDetail.vue)(左侧表列表 + 右侧四视图) + +### 4.1 表 / 字段的查询 + +| 功能 | 组件方法 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | --- | +| 表元数据列表(分页/无限滚动) | `getTablesList()` | `getTableAiList(params)` | GET | `/api/datasource/table/ailist` | +| 表详情(字段列表) | `executeSelectTable()` | `getTableDetail(id)` | GET | `/api/datasource/table/{id}/detail` | +| 表列表(基础) | — | `getTableList(data)` | GET | `/api/datasource/table/list` | + +- `getTableAiList` 参数:`{ datasourceId, pageNum, pageSize }`(这里 `datasourceId` 实为「配置/库」id)。 +- 切表有 Race Condition 防护:对比 `currentTableId` 拦截过期的详情请求。 + +### 4.2 库 / 表的增删改 + +| 功能 | 组件方法 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | --- | +| 修改数据库(改名) | `handleDatabaseSettingsConfirm()` | `putAlterDatabase(connectionId, data)` | PUT | `/api/datasource/connection/{connectionId}/alter_database` | +| 删除库(配置) | `handleDeleteDatabase()` | `deleteConnectionConfig(ids[])` | POST | `/api/datasource/config/deletes` | +| AI 智能建表(入口) | `createNewTable()` | 仅打开弹窗(内嵌 `CreateBuiltinDataSource` 的 addTable 模式) | — | — | +| 批量建表(提交) | `handleSubmitTables(tables)` | 循环 `postCreateTable(connectionId, data)` | POST | `/api/datasource/connection/{connectionId}/create_table` | +| 修改表结构 | `handleSaveTable()` | `putAlterTable(connectionId, data)` | PUT | `/api/datasource/connection/{connectionId}/alter_table` | + +- 修改库后会重新 `getConnectionDetail(id)` 并 `emit('refresh', updatedDataSource)` 同步父级。 +- 改表用增量 operation 标记字段:`ADD_COLUMN` / `MODIFY_COLUMN` / `DROP_COLUMN`(来自 TableDetailEditor)。 + +### 4.3 智能导入建表(Excel) + +入口组件:[TableRecognition.vue](../src/components/databasePage/TableRecognition.vue)(两步向导) + +``` +步骤0 上传 Excel(≤500KB)+ 选环境 + → postImportDocumentPreview(connectionId, file, target) AI 识别前10条 → 表结构预览 + ↓ +步骤1 编辑确认表结构与数据 + → postImportDocumentConfirm(connectionId, data, {target}) 建表 + 插入数据 + → emit('complete') +``` + +| 功能 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | +| 文档导入预览(AI识别) | `postImportDocumentPreview(connectionId, file, target)` | POST | `/api/datasource/connection/{connectionId}/import_document/preview` | +| 文档导入确认(建表+插数据) | `postImportDocumentConfirm(connectionId, data, params)` | POST | `/api/datasource/connection/{connectionId}/import_document/confirm` | + +--- + +## 5. 内置表「数据行」的增删改查(builtin 专属,prod/test 双环境) + +入口组件:[CustomizeDbTable.vue](../src/components/databasePage/CustomizeDbTable.vue)(包裹通用 `CommonDbTable`) +所有接口都带 `target` 参数区分线上 / 调试环境。 + +| 功能 | 组件回调 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | --- | +| 查(分页拉数据) | `onFetch` | `getBuiltinTableData(tableId, {pageNum,pageSize,target})` | GET | `/api/datasource/connection/builtin/table/{tableId}` | +| 增(新增行) | `onAdd` | `postBuiltinTableRows(tableId, data, {target})` | POST | `/api/datasource/connection/builtin/table/{tableId}/rows` | +| 改(更新行) | `onEdit` | `putBuiltinTableRows(tableId, data, {target})` | PUT | `/api/datasource/connection/builtin/table/{tableId}/rows` | +| 删(删除行) | `onDelete` | `deleteBuiltinTableRows(tableId, {primaryKeys}, {target})` | DELETE | `/api/datasource/connection/builtin/table/{tableId}/rows` | +| 导出 Excel | `onExport` | `getBuiltinTableExportExcel(tableId, {target})` | GET | `/api/datasource/connection/builtin/table/{tableId}/export/excel` | +| 导入数据 | `onImport` → `handleImportComplete` | `postImportDocumentConfirm(...)` | POST | 见上 | + +- `onFetch` 把后端二维数组 `content` 按列名映射成对象数组。 +- `onEdit/onDelete` 用动态主键(`rowKey`,默认 `id`)拼装 `primaryKey` / `primaryKeys`。 +- 删除入参结构:`{ primaryKeys: [ { 主键字段: 值 }, ... ] }`。 +- 导出接口为 `responseType: 'blob'`,含完整错误兜底(blob 是 JSON 时解析出 msg)。 + +--- + +## 6. 智能问数:技能(skill)与工具(tool)的增删改查 + +入口组件:[ChatDebugging.vue](../src/components/databasePage/ChatDebugging.vue) + [SqlControllerMsg.vue](../src/components/databasePage/SqlControllerMsg.vue) + +### 6.1 接口清单 + +| 功能 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | +| 查询数据源配置(含 skillBool) | `getConnectionConfig(id)` | GET | `/api/datasource/config/{id}` | +| 按数据源查技能 | `getSkillByDatasource(id)` | GET | `/api/datasource/skill/getByDatasource/{id}` | +| 按技能 ID 查工具列表 | `getSkillBySkillId(id)` | GET | `/api/datasource/skill/getBySkillId/{id}` | +| 创建技能 | `postSkillCreateOrGet(data)` | POST | `/api/datasource/skill/createOrGet` | +| 修改技能 | `putSkillUpdateOrGet(data)` | POST | `/api/datasource/skill/updateOrGet` | +| 确认/创建技能工具 | `postSqlSkillConfirmTools(data)` | POST | `/api/datasource/skill/confirmTools` | +| 修改工具名/描述 | `postSkillToolUpdateOrGet(data)` | POST | `/api/datasource/skill/tskilltool/updateOrGet` | +| 删除技能工具 | `postDeleteSkillTool(skillToolId)` | DELETE | `/api/datasource/skill/tskilltool/{skillToolId}` | + +> 说明:`executeSql`(POST `/api/datasource/sqlExecutionLog/testSqlWithSchema`)虽在 `server/database.ts` 中定义,但在 databasePage 模块内**未被任何组件调用**——它仅在工作流编辑器 [workflowPage/EditorMain.vue](../src/components/workflowPage/EditorMain.vue) 里使用。智能问数场景下,SQL 由后端 AI 通过 SSE 流执行并直接返回结果,前端不再单独调用执行接口。 + +### 6.2 「把查询沉淀为工具」业务链路(SqlControllerMsg 核心) + +``` +AI 返回 msgType=5 的 SQL 结果 → SqlControllerMsg 解析多视图 +用户点「添加到工具」 + → 校验环境(test 禁止)、是否选库、重复检测 + → 分两条路径: + ┌ skillBool=true(技能已存在) + │ → postSqlSkillConfirmTools() 直接确认工具 + └ skillBool=false(技能不存在) + → postSkillCreateOrGet() 创建技能 + → putSkillUpdateOrGet() 写入 MCP 配置模板 lzwcai-mcp-sqlexecutor + → postSqlSkillConfirmTools() 确认工具 + → eventBus.emit(RELOAD_SKILL_DATA, datasourceId) + → ChatDebugging 监听到事件 → loadSkillData() 刷新左侧技能/工具列表 +``` + +- 重复检测链路:`getConnectionConfig → getSkillByDatasource → getSkillBySkillId`,比对 `sqlTemplate`。 + +--- + +## 7. AI 补全训练 + +入口:[DatabaseDetail.vue](../src/components/databasePage/DatabaseDetail.vue)「AI补全管理」视图 + +| 功能 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | +| 训练任务列表 | `getAiTrainingList(data)` | GET | `/api/ai/training/list` | +| 按选中表创建训练 | `postAiTrainingCreateBySelected(data)` | POST | `/api/ai/training/createBySelected` | +| 训练任务详情 | `getAiTrainingDetail(id)` | GET | `/api/ai/training/{id}` | + +- 训练状态:`0` 待训练 / `1` 训练中 / `2` 已完成 / `3` 失败。 + +--- + +## 8. 字段关联同步(MQTT,builtin 专属) + +入口:[DatabaseDetail.vue](../src/components/databasePage/DatabaseDetail.vue)「字段关联管理」视图 + +| 功能 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | +| 同步配置列表 | `getMqttConfigList(params)` | GET | `/api/system/mqtt/config/list` | +| 配置详情 | `getMqttConfigDetail(configId)` | GET | `/api/system/mqtt/config/{configId}` | +| 目标表列表 | `getMqttConfigTableList()` | GET | `/api/system/mqtt/config/tableList` | +| 目标表字段列表 | `getMqttConfigTableColumns(tableName)` | GET | `/api/system/mqtt/config/tableColumns/{tableName}` | +| 新增配置 | `postMqttConfig(data)` | POST | `/api/system/mqtt/config` | +| 修改配置 | `putMqttConfig(data)` | PUT | `/api/system/mqtt/config` | +| 删除配置 | `deleteMqttConfig(ids)` | DELETE | `/api/system/mqtt/config/{ids}` | +| 刷新缓存 | `getMqttConfigRefreshCache()` | GET | `/api/system/mqtt/config/refreshCache` | +| 切换表订阅同步 | `postDatasourceSubscriptionToggle(data)` | POST | `/api/datasource/subscription/toggle` | + +> ⚠️ 注意:提交配置时前端故意调换 `sourceTable` / `targetTable`,回显时再换回来(见 DatabaseDetail 的 `applyRelationConfigByTargetTable` 与 `loadRelationConfigByTableId`)。 + +--- + +## 9. API 密钥与权限的增删改查 + +入口组件:[DataSourceKeys.vue](../src/components/databasePage/DataSourceKeys.vue) + [DataSourceKeySetting.vue](../src/components/databasePage/DataSourceKeySetting.vue) + +### 9.1 密钥 CRUD + +| 功能 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | +| 密钥列表 | `getApiKeyList(data)` | GET | `/api/datasource/api_key/list` | +| 新增密钥 | `postApiKey(data)` | POST | `/api/datasource/api_key` | +| 修改密钥(含启停) | `putApiKey(data)` | PUT | `/api/datasource/api_key` | +| 删除密钥 | `deleteApiKey(ids)` | DELETE | `/api/datasource/api_key/{ids}` | + +### 9.2 权限配置 + +| 功能 | 接口函数 | 方法 | 路径 | +| --- | --- | --- | --- | +| 查询密钥权限 | `getApiKeyPermission(apiKeyId)` | GET | `/api/datasource/api_key/permission/{apiKeyId}` | +| 批量授予权限 | `postApiKeyPermissionGrantBatch(data)` | POST | `/api/datasource/api_key/permission/grant_batch` | + +权限配置走 `DataSourceKeySetting` 四步向导(数据源 → 数据库 → 数据表),分三级权限(connection / database / table)。其中加载列表复用: + +| 步骤 | 接口函数 | 路径 | +| --- | --- | --- | +| 选数据源 | `getConnectionList` | `/api/datasource/connection/list` | +| 选数据库 | `getConnectionConfigList` | `/api/datasource/config/list` | +| 选数据表 | `getTableList` | `/api/datasource/table/list` | + +`postApiKeyPermissionGrantBatch` 请求体(batchDatas)每项: +```json +{ + "apiKeyId": "密钥ID", + "batchDatas": [ + { + "connectionId": "数据源ID", + "permissionLevel": "connection|database|table", + "permissionType": "read,write(逗号拼接)", + "databaseName": "库名(database/table 级)", + "tableName": "表名(table 级)" + } + ] +} +``` + +--- + +## 10. 端到端业务链路总览 + +### 链路 A:外置数据源「从创建到智能问数」 +``` +DataSourcePageMain → 添加远程数据源 + → CreateDataSource 4步: + testConnection → postConnectionDetail → getConnectionRealtimeStructure → postConnectionConfig + → 列表出现卡片 → 点「业务执行」 + → ChatDebugging(员工1001)三栏 → DataSourcePlugIn 选库 → ChatBusiness 提问 + → 后端 AI 经 SSE 流执行 SQL 并返回结果 (msgType=5) → SqlControllerMsg 多视图渲染 + → 可「添加到工具」沉淀为技能 +``` + +### 链路 B:内置数据源「从建库建表到数据管理」 +``` +DataSourcePageMain → 添加内置数据源 + → CreateBuiltinDataSource: + postCreateBuiltinPostgreSQLConnection + → postGenerateTable + 轮询 getAiTrainingDetail(AI 建表结构) + → postCreateDatabase → postCreateTable + → DatabaseDetail 管理: + getTableAiList(表列表)→ getTableDetail(字段) + → CustomizeDbTable 行级 CRUD(prod/test) + → 智能导入 TableRecognition(preview→confirm) + → 字段关联 MQTT / AI 补全训练 / 订阅 + → 业务执行(员工1002)智能问数同链路 A +``` + +### 链路 C:对外开放(API 密钥) +``` +DataSourceKeys → postApiKey 建密钥 + → DataSourceKeySetting 配权限(连接→库→表三级) + → postApiKeyPermissionGrantBatch 批量授权 + → ApiCallDocument 查看调用文档(/API_DOCUMENTATION.md) + → 外部系统凭密钥调用数据查询 +``` + +--- + +## 附录:完整接口索引(按 server/database.ts 顺序) + +| # | 函数 | 方法 | 路径 | 用途 | +| --- | --- | --- | --- | --- | +| 1 | `getTableDetail` | GET | `/api/datasource/table/{id}/detail` | 表详情 | +| 2 | `getConnectionList` | GET | `/api/datasource/connection/list` | 连接列表 | +| 3 | `getConnectionDetail` | GET | `/api/datasource/connection/{id}` | 连接详情 | +| 4 | `getConnectionInstanceDetail` | GET | `/api/datasource/connection/{id}` | 连接实例详情 | +| 5 | `getTableList` | GET | `/api/datasource/table/list` | 表列表 | +| 6 | `getMqttConfigList` | GET | `/api/system/mqtt/config/list` | MQTT配置列表 | +| 7 | `getMqttConfigDetail` | GET | `/api/system/mqtt/config/{configId}` | MQTT配置详情 | +| 8 | `getMqttConfigTableList` | GET | `/api/system/mqtt/config/tableList` | MQTT目标表 | +| 9 | `getMqttConfigTableColumns` | GET | `/api/system/mqtt/config/tableColumns/{tableName}` | MQTT表字段 | +| 10 | `postMqttConfig` | POST | `/api/system/mqtt/config` | 新增MQTT配置 | +| 11 | `putMqttConfig` | PUT | `/api/system/mqtt/config` | 改MQTT配置 | +| 12 | `deleteMqttConfig` | DELETE | `/api/system/mqtt/config/{ids}` | 删MQTT配置 | +| 13 | `getMqttConfigRefreshCache` | GET | `/api/system/mqtt/config/refreshCache` | 刷新缓存 | +| 14 | `getTableAiList` | GET | `/api/datasource/table/ailist` | 表元数据列表 | +| 15 | `testConnection` | POST | `/api/datasource/connection/test` | 测试连接 | +| 16 | `postConnectionDetail` | POST | `/api/datasource/connection` | 创建连接 | +| 17 | `postCreateBuiltinPostgreSQLConnection` | POST | `/api/datasource/connection/create_builtin_postgresql` | 创建内置PG | +| 18 | `postCreateDatabaseTable` | POST | `/api/datasource/connection/{id}/create_database_table` | 创建库+表 | +| 19 | `postCreateTable` | POST | `/api/datasource/connection/{id}/create_table` | 创建表 | +| 20 | `postCreateDatabase` | POST | `/api/datasource/connection/{id}/create_database` | 创建库 | +| 21 | `putAlterDatabase` | PUT | `/api/datasource/connection/{id}/alter_database` | 改库 | +| 22 | `putAlterTable` | PUT | `/api/datasource/connection/{id}/alter_table` | 改表 | +| 23 | `postGenerateTable` | POST | `/api/datasource/connection/generate_table` | AI生成表结构 | +| 24 | `putUpdateBuiltinDatabase` | PUT | `/api/datasource/connection/update_builtin_database` | 改内置PG | +| 25 | `putConnectionDetail` | PUT | `/api/datasource/connection` | 更新连接 | +| 26 | `deleteConnection` | DELETE | `/api/datasource/connection/{id}` | 删连接 | +| 27 | `deleteConnectionConfig` | POST | `/api/datasource/config/deletes` | 删配置 | +| 28 | `putConnectionConfig` | PUT | `/api/datasource/config` | 改库表配置 | +| 29 | `postConnectionConfig` | POST | `/api/datasource/config` | 建库表配置 | +| 30 | `getConnectionRealtimeStructure` | GET | `/api/datasource/connection/realtime/structure/{id}` | 实时库表结构 | +| 31 | `getSkillByDatasource` | GET | `/api/datasource/skill/getByDatasource/{id}` | 按源查技能 | +| 32 | `getSkillBySkillId` | GET | `/api/datasource/skill/getBySkillId/{id}` | 查工具列表 | +| 33 | `postSkillCreateOrGet` | POST | `/api/datasource/skill/createOrGet` | 建技能 | +| 34 | `putSkillUpdateOrGet` | POST | `/api/datasource/skill/updateOrGet` | 改技能 | +| 35 | `postDeleteSkillTool` | DELETE | `/api/datasource/skill/tskilltool/{id}` | 删工具 | +| 36 | `postSkillToolUpdateOrGet` | POST | `/api/datasource/skill/tskilltool/updateOrGet` | 改工具 | +| 37 | `getAiTrainingList` | GET | `/api/ai/training/list` | 训练列表 | +| 38 | `postAiTrainingCreateBySelected` | POST | `/api/ai/training/createBySelected` | 建训练 | +| 39 | `getAiTrainingDetail` | GET | `/api/ai/training/{id}` | 训练详情 | +| 40 | `putConnectionChangeStatus` | PUT | `/api/datasource/connection/changeStatus` | 启停连接 | +| 41 | `getConnectionConfig` | GET | `/api/datasource/config/{id}` | 查源配置 | +| 42 | `getConnectionConfigList` | GET | `/api/datasource/config/list` | 配置列表 | +| 43 | `postSqlSkillConfirmTools` | POST | `/api/datasource/skill/confirmTools` | 确认工具 | +| 44 | `getApiKeyList` | GET | `/api/datasource/api_key/list` | 密钥列表 | +| 45 | `postApiKey` | POST | `/api/datasource/api_key` | 建密钥 | +| 46 | `putApiKey` | PUT | `/api/datasource/api_key` | 改密钥 | +| 47 | `deleteApiKey` | DELETE | `/api/datasource/api_key/{ids}` | 删密钥 | +| 48 | `getApiKeyPermission` | GET | `/api/datasource/api_key/permission/{apiKeyId}` | 查权限 | +| 49 | `postApiKeyPermissionGrantBatch` | POST | `/api/datasource/api_key/permission/grant_batch` | 批量授权 | +| 50 | `postDatasourceSubscriptionToggle` | POST | `/api/datasource/subscription/toggle` | 订阅开关 | +| 51 | `getBuiltinTableData` | GET | `/api/datasource/connection/builtin/table/{tableId}` | 查内置表数据 | +| 52 | `postBuiltinTableRows` | POST | `/api/datasource/connection/builtin/table/{tableId}/rows` | 增行 | +| 53 | `putBuiltinTableRows` | PUT | `/api/datasource/connection/builtin/table/{tableId}/rows` | 改行 | +| 54 | `deleteBuiltinTableRows` | DELETE | `/api/datasource/connection/builtin/table/{tableId}/rows` | 删行 | +| 55 | `getBuiltinTableExportExcel` | GET | `/api/datasource/connection/builtin/table/{tableId}/export/excel` | 导出Excel | +| 56 | `postImportDocumentPreview` | POST | `/api/datasource/connection/{id}/import_document/preview` | 导入预览 | +| 57 | `postImportDocumentConfirm` | POST | `/api/datasource/connection/{id}/import_document/confirm` | 导入确认 | +| 58 | `executeSql` | POST | `/api/datasource/sqlExecutionLog/testSqlWithSchema` | 执行SQL | diff --git a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/数据库管理平台-MCP工具设计方案.md b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/数据库管理平台-MCP工具设计方案.md index 33cec1a..70deb5e 100644 --- a/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/数据库管理平台-MCP工具设计方案.md +++ b/lzwcai_mcp_agile_db/lzwcai_mcp_agile_db/数据库管理平台-MCP工具设计方案.md @@ -174,7 +174,7 @@ | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| -| datasourceId | string | 是 | 数据源 ID | +| connectionId | string | 是 | 数据源连接 ID(路径参数) | | databaseName | string | 是 | 目标数据库名 | | tableName | string | 是 | 表名(小写字母+数字+下划线) | | tableComment | string | 否 | 表注释 | @@ -198,33 +198,29 @@ | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| -| tableId | string | 是 | 表 ID | -| columns | array | 是 | 字段变更数组 | -| columns[].operation | string | 是 | ADD_COLUMN / MODIFY_COLUMN / DROP_COLUMN | -| columns[].columnName | string | 是 | 字段名 | -| columns[].columnType | string | 否 | 字段类型(ADD/MODIFY) | -| columns[].columnLength | int | 否 | 字段长度 | -| columns[].isPrimaryKey | bool | 否 | 是否主键 | -| columns[].isNullable | bool | 否 | 是否可空 | -| columns[].columnComment | string | 否 | 字段注释 | -| columns[].defaultValue | string | 否 | 默认值 | -| newTableName | string | 否 | 新表名(重命名) | -| newTableComment | string | 否 | 新表注释 | +| connectionId | string | 是 | 数据源连接 ID(路径参数) | +| databaseName | string | 是 | 数据库名 | +| tableName | string | 是 | 表名 | +| operations | array | 是 | 表结构变更操作数组 | +| operations[].operation | string | 是 | ADD_COLUMN / DROP_COLUMN / RENAME_COLUMN / ALTER_COLUMN_TYPE / SET_NOT_NULL / DROP_NOT_NULL / SET_DEFAULT / DROP_DEFAULT | +| operations[].column | object | 是 | 列定义(根据 operation 不同包含不同字段,如 columnName/columnType/newColumnName 等) | +| tableComment | string | 否 | 新表注释 | **返回**:修改结果 --- #### 12. `generate_table_by_description` -- **用途**:通过自然语言描述让 AI 生成表结构 +- **用途**:通过自然语言描述让 AI 生成表结构(异步任务) - **对应前端**:CreateBuiltinDataSource.vue AI 生成表结构 - **对应 API**:`postGenerateTable(data)` ✅ 已实现 — `POST /api/datasource/connection/generate_table` | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| -| description | string | 是 | 业务场景描述(至少6个字符) | +| requirement | string | 是 | 业务需求描述 | +| databaseId | int | 否 | 关联的数据库 ID | -**返回**:AI 生成的表结构(表名、表注释、字段列表含类型/主键/注释等) +**返回**:异步任务信息(taskId、status),需轮询任务状态获取最终生成的表结构 > **场景示例**:用户说"我需要一个商城系统,管理商品、分类和用户评价",AI 返回完整的表结构设计。 @@ -389,6 +385,18 @@ --- +#### 23.5 `revoke_api_key_permissions` +- **用途**:撤销/删除 API 密钥已授予的权限(按权限记录 ID) +- **对应 API**:按现有 delete 风格推测为 `DELETE /api/datasource/api_key/permission/{ids}`,需后端真机验证 + +| 参数 | 类型 | 必填 | 说明 | +|------|------|------|------| +| permissionIds | array[string] | 是 | 权限记录 ID 列表。先从 `get_api_key_permissions` 获取,取 `connectionPermissions` / `databasePermissions` / `tablePermissions` 中每项的 `id` | + +**返回**:撤销结果 + +--- + ### 🤖 技能与工具管理 (内置数据源 AI 能力) #### 24. `get_skill_by_datasource` @@ -437,12 +445,14 @@ | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | skillId | string | 是 | 技能 ID | -| name | string | 是 | 工具名称 | -| businessDescription | string | 是 | 业务描述 | -| sqlTemplate | string | 是 | SQL 模板(支持 #{param} 参数占位) | -| sqlParams | string | 否 | 参数 JSON Schema(默认空对象) | -| resultType | string | 否 | single/list,默认 list | -| businessScenario | string | 否 | 业务场景描述 | +| tableIds | array | 否 | 关联的表 ID 数组 | +| suggestions | array | 是 | SQL 工具建议数组(支持批量) | +| suggestions[].name | string | 是 | 工具名称 | +| suggestions[].businessDescription | string | 是 | 业务描述 | +| suggestions[].sqlTemplate | string | 是 | SQL 模板(支持 #{param} 参数占位) | +| suggestions[].sqlParams | string/object | 否 | 参数 JSON Schema(对象会自动序列化为字符串) | +| suggestions[].resultType | string | 否 | single/list,默认 list | +| suggestions[].businessScenario | string | 否 | 业务场景描述 | **返回**:工具创建结果 diff --git a/lzwcai_mcp_agile_db/main.py b/lzwcai_mcp_agile_db/main.py index 4fea9dd..d86d2da 100644 --- a/lzwcai_mcp_agile_db/main.py +++ b/lzwcai_mcp_agile_db/main.py @@ -7,6 +7,6 @@ from lzwcai_mcp_agile_db.server import main import os if __name__ == "__main__": - os.environ["API_KEY"] = "Bearer eyJhbGciOiJIUzUxMiJ9.eyJ0b2tlbl90eXBlIjoiTE9HSU4iLCJsb2dpbl91c2VyX2tleSI6IjJiMDY0YzMzLTBiZWYtNDU0NC04NWY1LTRmNTFiOGMxMmI5NSJ9.Uv599TvlQvlTlwrnZGo3Tl2eLAvM0ldE9vpMI5jHxbTf4_tVSRA60rUNIV4LBiw6pt1r_xIi7aFcTRE2PeN5sg" - os.environ["backendBaseUrl"] = "https://dempdemo.lzwcai.com" + os.environ["API_KEY"] = "Bearer eyJhbGciOiJIUzUxMiJ9.eyJ0b2tlbl90eXBlIjoiTE9HSU4iLCJsb2dpbl91c2VyX2tleSI6ImNlMDAwYjA4LWU0YTYtNGM2MS1hNzJiLWI3NTlmNmY1N2Q4NCJ9.jiNmGQZfL4-nSIFrLuaCt7mT5zj0FOojAVkLeHwPOroI5jBxodrCe1PSwGO1OHq5Ztb0tLEVZw2FFVj0OlTceQ" + os.environ["backendBaseUrl"] = "http://192.168.2.236:8088" main() diff --git a/lzwcai_mcp_agile_db/pyproject.toml b/lzwcai_mcp_agile_db/pyproject.toml index a740844..8509d38 100644 --- a/lzwcai_mcp_agile_db/pyproject.toml +++ b/lzwcai_mcp_agile_db/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "lzwcai-mcp-agile-db" -version = "0.1.3" +version = "0.1.7" description = "MCP server for database management platform with 33 tools for datasource, table, data, API key, and skill management" readme = "README.md" requires-python = ">=3.10" diff --git a/lzwcai_mcp_agile_db_third/.python-version b/lzwcai_mcp_agile_db_third/.python-version new file mode 100644 index 0000000..e4fba21 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/.python-version @@ -0,0 +1 @@ +3.12 diff --git a/lzwcai_mcp_agile_db_third/README.md b/lzwcai_mcp_agile_db_third/README.md new file mode 100644 index 0000000..b3db6d5 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/README.md @@ -0,0 +1,75 @@ +# lzwcai-mcp-agile-db-third + +AgileDB 数据源管理 MCP Server,基于 `API_DOCUMENTATION.md` 将后端数据源/连接/DDL/DML/API 接口封装为 34 个 MCP 工具。 + +## 功能概述 + +本服务将后端 `datasource` 模块的 API 接口代理为标准 MCP 工具,分为两大类: + +### 1. 数据源配置管理 + +- `list_datasource_configs`:查询数据源配置列表 +- `get_datasource_config`:获取数据源配置详情 +- `batch_create_datasource_configs`:批量创建数据源配置 +- `replace_datasource_configs`:全量替换数据源配置 +- `batch_update_datasource_configs`:批量修改数据源配置 +- `delete_datasource_configs`:批量删除数据源配置 +- `test_connection_config`:测试数据库连接 +- `change_datasource_status`:修改数据源状态 +- `export_datasource_configs`:导出数据源配置为 Excel + +### 2. 数据库连接实例管理 + +- `list_connections` / `get_connection` / `create_connection` / `update_connection` / `delete_connection`:连接实例 CRUD +- `test_connection` / `change_connection_status`:连接测试与状态切换 +- `realtime_structure` / `realtime_databases` / `realtime_tables`:实时查询库表结构 +- `create_builtin_postgresql` / `update_builtin_database`:内置 PostgreSQL 连接管理 +- `execute_sql`:执行原生 SQL +- `create_database` / `create_table` / `create_database_table` / `alter_database` / `alter_table`:DDL 操作 +- `generate_table`:AI 生成表结构 +- `import_document_preview` / `import_document_confirm`:Excel/CSV 文档导入 +- `builtin_table_data` / `builtin_table_insert` / `builtin_table_update` / `builtin_table_delete`:表数据 CRUD + +## 环境配置 + +| 环境变量 | 说明 | 默认值 | +|----------|------|--------| +| `backendBaseUrl` | 后端 API 基础地址 | `http://lzwcai-demp-corp-manager:8086` | +| `datasourceApiKey` | 默认 `X-Datasource-API-Key`,可选 | 空 | +| `LOG_LEVEL` | 日志级别 | `INFO` | + +## 安装与运行 + +使用 uv: + +```bash +uv sync +uv run python -m lzwcai_mcp_agile_db_third.main +``` + +或使用 pip: + +```bash +python -m venv .venv +.venv\Scripts\python -m pip install mcp httpx +.venv\Scripts\python -m lzwcai_mcp_agile_db_third.main +``` + +安装为命令后: + +```bash +lzwcai-mcp-agile-db-third +``` + +## 使用 mcp CLI + +```bash +mcp dev lzwcai_mcp_agile_db_third/main.py +``` + +## 注意事项 + +- 所有写操作(创建/修改/删除)会先落到 `prod` 环境;带 `target` 参数的工具可切换为 `test` +- `import_document_preview` 通过本地文件路径上传 Excel/CSV +- 执行删除类工具前,调用方应遵循安全确认原则,向用户展示影响范围并二次确认 +- 日志文件中会对 `password`、`apiKey`、`token`、`secret` 等敏感字段进行脱敏 diff --git a/lzwcai_mcp_agile_db_third/__pycache__/main.cpython-312.pyc b/lzwcai_mcp_agile_db_third/__pycache__/main.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e370a662904ac0ae8f5812a8d2a300b13d7745d1 GIT binary patch literal 826 zcmbVK&ubGw6n?Wi`9W-@cuNnGqtRy59}r^@q17~{LX`%g*1#~`nKqkjvg_=o?Jf!m ziXOc8=Dqaq@YG9{g1G2OFW#!Td2(jEu@yWyFmK-b=DqKmH#3Lh<2jJy&AW2v5CMEu z!DwiSGn|&r9xzx3hL~ofb;R@+u&!~P;qDaxk=1}}2T3}DKnt{DD!iUs<*wsdz9WK? z?U>Xq*mTf0+gubj9Z|5u9g|w6p6Qmn$2Q;P=0K(zx$lZ-#Z2hp1xu^TIeaV49{4e+ zOlNe+KZwLq=Yqsl2R}%1(f`!TR?q5LiluG6ho1rh4W7Wc)}feLi7swXv&;KzfqMLb zu)}=Y_uX2#Jac2#n5k5aSz~stQmal^tI-6bKJ}b|F!{V|-Q_`eEm*j>6tr(Q-TLml zQ@6R*Yi_nTRzq*G(!68cf5;k*9cO2)QEGODYH1%uxJRviF%@Z!7iD;V+Y(Mc%6Z&p ze3K4rKe~K+*+gD8p<9;C3ELok+Y-!Br6MDFL|Ph8{sJicTC3MuLAyk)mMfeNH~m)f zT3#4zjr{oKxY*{Rjtt4Q+$*EasEBdA5C68 znra;5rO$t(Q%A<5W8C_J=RV==%f+FrgeXghA||AWqYNR;F$ochIo46zecI!M?1LCr z=vZ8Iv*)mZ&2NcIGE@zF@)yI2ju85xX$TLqfO0?6DRkjv0`S=D@PnR@MNf3VlQGk8 D5faH~ literal 0 HcmV?d00001 diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/.gitignore b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/.gitignore new file mode 100644 index 0000000..3e2c027 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/.gitignore @@ -0,0 +1,21 @@ +# Python +__pycache__/ +*.py[cod] +*.egg-info/ +*.egg + +# Virtual environments +.venv/ +venv/ + +# Logs +logs/ +*.log + +# IDE +.vscode/ +.idea/ + +# OS +.DS_Store +Thumbs.db diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/API_DOCUMENTATION.md b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/API_DOCUMENTATION.md new file mode 100644 index 0000000..2e031fb --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/API_DOCUMENTATION.md @@ -0,0 +1,1620 @@ +# 数据源管理接口文档 + +## 目录 +- [1. 数据源配置管理 (DatasourceConfigController)](#1-数据源配置管理) +- [2. 数据库连接实例管理 (DatasourceConnectionController)](#2-数据库连接实例管理) + +--- + +## 1. 数据源配置管理 + +**Base URL**: `/datasource/config` + +### 1.1 查询数据源配置列表 + +**接口**: `GET /datasource/config/list` + +**描述**: 查询数据源配置列表,支持分页和多条件筛选 + +**请求参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| datasourceName | String | 否 | 数据源名称(模糊查询) | +| datasourceId | Long | 否 | 连接ID | +| datasourceType | String | 否 | 数据库类型 | +| status | Integer | 否 | 状态 | +| showTable | Boolean | 否 | 是否显示表数量 | +| pageNum | Integer | 否 | 页码(默认1) | +| pageSize | Integer | 否 | 每页数量(默认10) | + +**响应示例**: +```json +{ + "code": 200, + "msg": "查询成功", + "total": 10, + "rows": [ + { + "id": 1, + "datasourceName": "测试数据库", + "connectionId": 1, + "databaseName": "test_db", + "datasourceType": "PostgreSQL", + "status": 0, + "skillBool": true, + "tableNum": 5, + "createTime": "2025-01-01 10:00:00" + } + ] +} +``` + +### 1.2 获取数据源配置详情 + +**接口**: `GET /datasource/config/{id}` + +**描述**: 获取指定数据源配置的详细信息 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| id | Long | 是 | 数据源配置ID | + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": { + "id": 1, + "datasourceName": "测试数据库", + "connectionId": 1, + "databaseName": "test_db", + "datasourceType": "PostgreSQL", + "status": 0, + "skillBool": true, + "tableNum": 5 + } +} +``` + +### 1.3 批量新增数据源配置 + +**接口**: `POST /datasource/config` + +**描述**: 批量创建数据源配置并同步表结构 + +**请求体**: +```json +{ + "connectionId": 1, + "datasourceNamePrefix": "业务", + "enterpriseId": 1, + "status": 0, + "remark": "备注信息", + "syncTables": true, + "databases": [ + { + "databaseName": "db1", + "tableNames": ["table1", "table2"] + }, + { + "databaseName": "db2", + "tableNames": ["table3"] + } + ] +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "成功创建2个数据源配置,正在后台异步同步3张表,请稍后刷新查看", + "data": { + "successCount": 2, + "totalSyncTableCount": 3, + "results": [ + { + "databaseName": "db1", + "datasourceConfig": { "id": 1, "datasourceName": "业务-db1" }, + "syncTableCount": 2 + } + ] + } +} +``` + +### 1.4 全量替换数据源配置 + +**接口**: `PUT /datasource/config` + +**描述**: 全量替换指定连接下的数据源配置(未传入的配置将被删除) + +**⚠️ 警告**: 会删除未传入的所有数据库配置及其相关表元数据,请谨慎操作! + +**请求体**: 同1.3 + +**响应示例**: +```json +{ + "code": 200, + "msg": "全量替换成功:创建1个,更新0个,删除1个,正在后台异步同步2张表", + "data": { + "createdCount": 1, + "updatedCount": 0, + "deletedCount": 1, + "totalSyncTableCount": 2, + "results": [...] + } +} +``` + +### 1.5 批量修改数据源配置 + +**接口**: `PUT /datasource/config/batch` + +**描述**: 批量修改数据源配置并重新同步表结构 + +**请求体**: +```json +{ + "status": 0, + "remark": "批量更新", + "syncTables": true, + "datasources": [ + { + "id": 1, + "datasourceName": "新名称", + "tableNames": ["table1", "table2"] + } + ] +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "成功修改1个数据源配置,正在后台异步同步2张表", + "data": { + "successCount": 1, + "totalSyncTableCount": 2, + "results": [...] + } +} +``` + +### 1.6 删除数据源配置 + +**接口**: `POST /datasource/config/deletes` + +**描述**: 批量删除数据源配置 + +**请求体**: +```json +{ + "ids": [1, 2, 3] +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功" +} +``` + +### 1.7 测试数据库连接 + +**接口**: `POST /datasource/config/testConnectionConfig` + +**描述**: 测试数据库连接是否正常 + +**请求体**: +```json +{ + "host": "localhost", + "port": 5432, + "username": "postgres", + "password": "password", + "datasourceType": "PostgreSQL" +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "连接成功" +} +``` + +### 1.8 修改数据源状态 + +**接口**: `PUT /datasource/config/changeStatus` + +**描述**: 修改数据源配置的启用/禁用状态 + +**请求体**: +```json +{ + "id": 1, + "status": 1 +} +``` + +### 1.9 导出数据源配置 + +**接口**: `POST /datasource/config/export` + +**描述**: 导出数据源配置列表为Excel文件 + +--- + +## 2. 数据库连接实例管理 + +**Base URL**: `/datasource/connection` + +### 2.1 查询连接实例列表 + +**接口**: `GET /datasource/connection/list` + +**描述**: 查询数据库连接实例列表,支持分页和筛选(已优化N+1查询问题) + +**请求参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| datasourceName | String | 否 | 数据源名称(模糊查询) | +| status | Integer | 否 | 状态 | +| testStatus | Integer | 否 | 测试状态(0未测试/1成功/2失败) | +| sourceType | String | 否 | 连接来源(builtin/external) | +| pageNum | Integer | 否 | 页码 | +| pageSize | Integer | 否 | 每页数量 | + +**响应示例**: +```json +{ + "code": 200, + "msg": "查询成功", + "total": 5, + "rows": [ + { + "id": 1, + "datasourceName": "内置PostgreSQL", + "datasourceType": "PostgreSQL", + "host": "localhost", + "port": 5432, + "status": 0, + "testStatus": 1, + "sourceType": "builtin", + "databaseNum": 3, + "tableNum": 15, + "datasourceConfig": [...] + } + ] +} +``` + +### 2.2 获取连接实例详情 + +**接口**: `GET /datasource/connection/{id}` + +**描述**: 获取指定连接实例的详细信息 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| id | Long | 是 | 连接实例ID | + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": { + "id": 1, + "datasourceName": "内置PostgreSQL", + "host": "localhost", + "port": 5432, + "username": "postgres", + "databaseNum": 3, + "tableNum": 15, + "datasourceConfig": [ + { + "id": 1, + "databaseName": "db1", + "tables": [ + {"tableName": "table1", "tableId": 1} + ], + "skillBool": true + } + ] + } +} +``` + +### 2.3 新增连接实例 + +**接口**: `POST /datasource/connection` + +**描述**: 创建新的数据库连接实例 + +**请求体**: +```json +{ + "datasourceName": "测试连接", + "datasourceType": "PostgreSQL", + "connectionType": "user_password", + "host": "localhost", + "port": 5432, + "username": "postgres", + "password": "password", + "status": 0, + "remark": "备注信息" +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "创建成功", + "data": { + "id": 1, + "datasourceName": "测试连接" + } +} +``` + +### 2.4 修改连接实例 + +**接口**: `PUT /datasource/connection` + +**描述**: 修改数据库连接实例信息 + +**请求体**: +```json +{ + "id": 1, + "datasourceName": "新名称", + "host": "localhost", + "port": 5432, + "username": "postgres", + "password": "new_password", + "remark": "更新备注" +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "更新成功" +} +``` + +### 2.5 删除连接实例 + +**接口**: `DELETE /datasource/connection/{id}` + +**描述**: 删除指定的连接实例 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| id | Long | 是 | 连接实例ID | + +**响应示例**: +```json +{ + "code": 200, + "msg": "删除数据库实例成功" +} +``` + +### 2.6 测试连接 + +**接口**: `POST /datasource/connection/test` + +**描述**: 测试数据库连接是否可用 + +**请求体**: +```json +{ + "id": 1, + "host": "localhost", + "port": 5432, + "username": "postgres", + "password": "password", + "datasourceType": "PostgreSQL" +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "连接成功" +} +``` + +### 2.7 修改连接状态 + +**接口**: `PUT /datasource/connection/changeStatus` + +**描述**: 修改连接实例的启用/禁用状态 + +**请求体**: +```json +{ + "id": 1, + "status": 1 +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "状态修改成功" +} +``` + +### 2.8 实时查询数据库结构 + +**接口**: `GET /datasource/connection/realtime/structure/{id}` + +**描述**: 实时查询连接下的所有数据库和表结构(直接连接数据库服务器查询) + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| id | Long | 是 | 连接实例ID | + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": [ + { + "databaseName": "db1", + "tables": ["table1", "table2"], + "tableCount": 2 + } + ] +} +``` + +### 2.9 实时查询数据库列表 + +**接口**: `GET /datasource/connection/realtime/databases/{id}` + +**描述**: 实时查询连接下的所有数据库名称 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| id | Long | 是 | 连接实例ID | + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": ["db1", "db2", "db3"] +} +``` + +### 2.10 实时查询表列表 + +**接口**: `GET /datasource/connection/realtime/tables/{id}` + +**描述**: 实时查询指定数据库下的所有表 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| id | Long | 是 | 连接实例ID | + +**查询参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| databaseName | String | 是 | 数据库名称 | + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": ["table1", "table2", "table3"] +} +``` + +### 2.11 创建内置PostgreSQL连接 + +**接口**: `POST /datasource/connection/create_builtin_postgresql` + +**描述**: 创建内置PostgreSQL数据库连接(使用配置文件中的连接信息) + +**请求体**: +```json +{ + "datasourceName": "内置PostgreSQL数据库", + "remark": "系统内置数据库" +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "✅测试通过,连接通过", + "data": { + "id": 1, + "datasourceName": "内置PostgreSQL数据库" + } +} +``` + +### 2.12 修改内置数据库连接 + +**接口**: `PUT /datasource/connection/update_builtin_database` + +**描述**: 修改内置PostgreSQL连接信息 + +**请求体**: +```json +{ + "connectionId": 1, + "datasourceName": "新名称", + "remark": "更新备注" +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "✅保存成功" +} +``` + +### 2.13 执行SQL语句 + +**接口**: `POST /datasource/connection/{datasourceId}/execute_sql` + +**描述**: 在指定数据源上执行SQL语句,支持参数化查询和环境切换 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| datasourceId | Long | 是 | 数据源配置ID | + +**请求头**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| X-Datasource-API-Key | String | 否 | API密钥(用于权限验证) | + +**查询参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| target | String | 否 | 目标环境(prod/test,默认prod) | + +**请求体**: +```json +{ + "sql": "SELECT * FROM users WHERE age > ?", + "params": [18], + "databaseName": "test_db" +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": { + "success": true, + "affectedRows": 10, + "duration": 25, + "target": "prod", + "databaseName": "test_db", + "msg": "执行成功,此次操作影响10行数据", + "rows": [ + {"id": 1, "name": "张三", "age": 25} + ], + "affectedRowsDetail": { + "operationType": "SELECT", + "tables": ["users"], + "count": 10 + } + } +} +``` + +**说明**: +- 支持参数化查询,使用 `?` 占位符 +- 自动识别SQL类型(SELECT/INSERT/UPDATE/DELETE等) +- 支持DDL操作(CREATE/ALTER/DROP) +- 内置连接支持自动同步到测试库 + +### 2.14 创建数据库 + +**接口**: `POST /datasource/connection/{connectionId}/create_database` + +**描述**: 在指定连接上创建新数据库(目前仅支持PostgreSQL) + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| connectionId | Long | 是 | 连接实例ID | + +**请求头**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| X-Datasource-API-Key | String | 否 | API密钥 | + +**请求体**: +```json +{ + "databaseName": "new_database", + "encoding": "UTF8", + "owner": "postgres" +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "创建数据库成功" +} +``` + +**说明**: +- 需要连接级别的 CREATE_DATABASE 权限 +- 内置连接会自动创建对应的测试库(_test后缀) +- 创建成功后会自动创建数据源配置 + +### 2.15 创建表 + +**接口**: `POST /datasource/connection/{connectionId}/create_table` + +**描述**: 在指定数据库中创建新表 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| connectionId | Long | 是 | 连接实例ID | + +**请求头**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| X-Datasource-API-Key | String | 否 | API密钥 | + +**请求体**: +```json +{ + "databaseName": "test_db", + "tableName": "users", + "tableComment": "用户表", + "columns": [ + { + "columnName": "id", + "columnType": "BIGINT", + "isPrimaryKey": true, + "isNullable": false, + "columnComment": "主键ID" + }, + { + "columnName": "name", + "columnType": "VARCHAR", + "columnLength": 100, + "isNullable": false, + "columnComment": "用户名" + }, + { + "columnName": "age", + "columnType": "INTEGER", + "isNullable": true, + "columnComment": "年龄" + } + ] +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "创建表成功" +} +``` + +**说明**: +- 需要数据库级别的 CREATE 权限 +- 内置连接会自动在测试库中创建相同表结构 +- 创建成功后会自动同步表元数据 + +### 2.16 创建数据库和表 + +**接口**: `POST /datasource/connection/{connectionId}/create_database_table` + +**描述**: 同时创建数据库和表(一次性操作) + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| connectionId | Long | 是 | 连接实例ID | + +**请求头**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| X-Datasource-API-Key | String | 否 | API密钥 | + +**请求体**: +```json +{ + "databaseName": "new_db", + "encoding": "UTF8", + "owner": "postgres", + "tables": [ + { + "tableName": "users", + "tableComment": "用户表", + "columns": [ + { + "columnName": "id", + "columnType": "BIGINT", + "isPrimaryKey": true, + "isNullable": false, + "columnComment": "主键ID" + } + ] + }, + { + "tableName": "orders", + "tableComment": "订单表", + "columns": [...] + } + ] +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "创建成功" +} +``` + +**说明**: +- 需要连接级别的 CREATE_DATABASE 权限和数据库级别的 CREATE 权限 +- 支持一次创建多个表 +- 内置连接会自动创建测试库和测试表 + +### 2.17 修改数据库 + +**接口**: `PUT /datasource/connection/{connectionId}/alter_database` + +**描述**: 修改数据库属性(重命名、更改所有者、更改编码) + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| connectionId | Long | 是 | 连接实例ID | + +**请求头**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| X-Datasource-API-Key | String | 否 | API密钥 | + +**请求体**: +```json +{ + "databaseName": "old_db", + "newName": "new_db", + "newOwner": "postgres", + "newEncoding": "UTF8" +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "修改数据库成功" +} +``` + +**说明**: +- 需要数据库级别的 ALTER 权限 +- 至少需要指定一个修改项(newName/newOwner/newEncoding) +- 内置连接会同步修改测试库 + +### 2.18 修改表 + +**接口**: `PUT /datasource/connection/{connectionId}/alter_table` + +**描述**: 修改表结构(添加列、删除列、重命名列、修改列类型等) + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| connectionId | Long | 是 | 连接实例ID | + +**请求头**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| X-Datasource-API-Key | String | 否 | API密钥 | + +**请求体**: +```json +{ + "databaseName": "test_db", + "tableName": "users", + "tableComment": "更新的表注释", + "operations": [ + { + "operation": "ADD_COLUMN", + "column": { + "columnName": "email", + "columnType": "VARCHAR", + "columnLength": 255, + "isNullable": true, + "columnComment": "邮箱" + } + }, + { + "operation": "DROP_COLUMN", + "column": { + "columnName": "old_field" + } + }, + { + "operation": "RENAME_COLUMN", + "column": { + "columnName": "old_name", + "newColumnName": "new_name" + } + }, + { + "operation": "ALTER_COLUMN_TYPE", + "column": { + "columnName": "age", + "columnType": "BIGINT" + } + } + ] +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "修改表成功" +} +``` + +**支持的操作类型**: +- `ADD_COLUMN`: 添加列 +- `DROP_COLUMN`: 删除列 +- `RENAME_COLUMN`: 重命名列 +- `ALTER_COLUMN_TYPE`: 修改列类型 +- `SET_NOT_NULL`: 设置列为非空 +- `DROP_NOT_NULL`: 设置列为可空 +- `SET_DEFAULT`: 设置默认值 +- `DROP_DEFAULT`: 删除默认值 + +**说明**: +- 需要表级别的 ALTER 权限 +- 支持批量操作 +- 内置连接会同步修改测试表 +- 如果列有 columnId,系统会自动检测并插入重命名操作 + +### 2.19 生成表结构 + +**接口**: `POST /datasource/connection/generate_table` + +**描述**: 使用AI根据需求描述生成表结构(异步任务) + +**请求体**: +```json +{ + "requirement": "创建一个用户管理系统,需要用户表、角色表和权限表,用户表包含用户名、密码、邮箱、手机号等字段", + "databaseId": 1 +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": { + "taskId": 123, + "status": "PENDING", + "message": "任务已提交,等待AI生成表结构" + } +} +``` + +**说明**: +- 异步任务,需要轮询任务状态 +- AI会根据需求描述自动生成表结构 +- 可以指定关联的数据库ID + +### 2.20 文档导入预览 + +**接口**: `POST /datasource/connection/{connectionId}/import_document/preview` + +**描述**: 上传Excel/CSV文件,AI识别表结构并预览前10条数据 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| connectionId | Long | 是 | 连接实例ID | + +**查询参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| target | String | 否 | 目标环境(prod/test,默认prod) | + +**请求参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| file | MultipartFile | 是 | Excel或CSV文件 | + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": { + "tableStructure": { + "databaseName": "test_db", + "tableName": "users", + "tableComment": "用户表", + "columns": [ + { + "columnName": "name", + "columnType": "VARCHAR", + "columnLength": 100, + "columnComment": "姓名" + } + ] + }, + "previewData": [ + ["name", "age", "gender"], + ["张三", "25", "male"], + ["李四", "30", "female"] + ], + "allData": [...], + "fileName": "users.xlsx", + "target": "prod" + } +} +``` + +**说明**: +- 支持 Excel (.xlsx, .xls) 和 CSV 文件 +- AI自动识别列名、类型和注释 +- 返回前10条数据用于预览 +- 完整数据保存在 allData 中,用于确认导入 + +### 2.21 文档导入确认 + +**接口**: `POST /datasource/connection/{connectionId}/import_document/confirm` + +**描述**: 确认导入,创建表并插入数据 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| connectionId | Long | 是 | 连接实例ID | + +**请求头**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| X-Datasource-API-Key | String | 否 | API密钥 | + +**查询参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| target | String | 否 | 目标环境(prod/test,默认prod) | + +**请求体**: +```json +{ + "tableStructure": { + "databaseName": "test_db", + "tableName": "users", + "tableComment": "用户表", + "columns": [ + { + "columnName": "name", + "columnType": "VARCHAR", + "columnLength": 100, + "columnComment": "姓名" + } + ] + }, + "allData": [ + ["name", "age", "gender"], + ["张三", "25", "male"], + ["李四", "30", "female"] + ] +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "文档导入成功", + "data": { + "tableName": "users", + "databaseName": "test_db", + "target": "prod", + "insertedRows": 100 + } +} +``` + +**说明**: +- 需要数据库级别的 CREATE 权限 +- 如果表已存在,只插入数据 +- 支持批量插入(每批1000条) +- 自动类型转换和数据验证 +- 内置连接会同步到测试库 + +### 2.22 查询表结构和数据 + +**接口**: `GET /datasource/connection/builtin/table/{tableId}` + +**描述**: 根据表ID查询表结构和数据(分页) + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| tableId | Long | 是 | 表ID | + +**查询参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| pageNum | Integer | 否 | 页码(默认1) | +| pageSize | Integer | 否 | 每页数量(默认100) | +| target | String | 否 | 目标环境(prod/test,默认prod) | + +**响应示例**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": { + "tables": { + "tableName": "users", + "tableComment": "用户表", + "columns": [ + { + "columnName": "id", + "columnType": "BIGINT", + "columnComment": "主键", + "columnLength": null, + "isPrimaryKey": true, + "isNullable": false + }, + { + "columnName": "name", + "columnType": "VARCHAR", + "columnComment": "姓名", + "columnLength": 100, + "isPrimaryKey": false, + "isNullable": false + } + ] + }, + "content": [ + [1, "张三", 25], + [2, "李四", 30] + ], + "pageNum": 1, + "pageSize": 100, + "total": 2, + "target": "prod", + "databaseName": "test_db" + } +} +``` + +**说明**: +- 返回表结构和数据(二维数组格式) +- 列按 ordinalPosition 排序 +- 支持分页查询 +- 可切换正式库和测试库 + +### 2.23 新增表数据 + +**接口**: `POST /datasource/connection/builtin/table/{tableId}/rows` + +**描述**: 向指定表插入一条数据 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| tableId | Long | 是 | 表ID | + +**查询参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| target | String | 否 | 目标环境(prod/test,默认prod) | + +**请求体**: +```json +{ + "data": { + "name": "张三", + "age": 25, + "email": "zhangsan@example.com", + "created_at": "2025-01-01 10:00:00" + } +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "插入成功" +} +``` + +**说明**: +- 只能插入表中存在的列 +- 自动进行类型转换 +- 支持环境切换(正式库/测试库) + +### 2.24 更新表数据 + +**接口**: `PUT /datasource/connection/builtin/table/{tableId}/rows` + +**描述**: 根据主键更新表数据 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| tableId | Long | 是 | 表ID | + +**查询参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| target | String | 否 | 目标环境(prod/test,默认prod) | + +**请求体**: +```json +{ + "data": { + "name": "李四", + "age": 30, + "email": "lisi@example.com" + }, + "primaryKey": { + "id": 1 + } +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "更新成功" +} +``` + +**说明**: +- 必须提供完整的主键条件 +- 只更新 data 中指定的字段 +- 支持复合主键 +- 自动进行类型转换 + +### 2.25 删除表数据 + +**接口**: `DELETE /datasource/connection/builtin/table/{tableId}/rows` + +**描述**: 根据主键批量删除表数据 + +**路径参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| tableId | Long | 是 | 表ID | + +**查询参数**: +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| target | String | 否 | 目标环境(prod/test,默认prod) | + +**请求体**: +```json +{ + "primaryKeys": [ + {"id": 1}, + {"id": 2}, + {"id": 3} + ] +} +``` + +**响应示例**: +```json +{ + "code": 200, + "msg": "删除成功" +} +``` + +**说明**: +- 支持批量删除 +- 必须提供完整的主键条件 +- 支持复合主键 +- 自动进行类型转换 + +--- + +## 3. 通用说明 + +### 3.1 权限验证 + +部分接口需要在请求头中携带 `X-Datasource-API-Key` 进行权限验证。 + +**三层权限模型**: +1. **连接级别权限**: CREATE_DATABASE, DROP_DATABASE +2. **数据库级别权限**: CREATE, ALTER, DROP +3. **表级别权限**: SELECT, INSERT, UPDATE, DELETE, ALTER + +**权限验证规则**: +- 创建/删除数据库:需要连接级别权限 +- 创建/修改/删除表:需要数据库级别权限 +- 数据操作(增删改查):需要表级别权限 +- 修改表结构:需要表级别的 ALTER 权限 + +### 3.2 环境切换 + +支持 `target` 参数切换正式环境(prod)和测试环境(test)。 + +**内置连接特性**: +- 自动创建测试库(数据库名_test) +- DDL操作自动同步到测试库 +- 可独立操作测试库数据 + +**使用场景**: +- `target=prod`: 操作正式库(默认) +- `target=test`: 操作测试库(仅内置连接支持) + +### 3.3 响应格式 + +所有接口统一返回格式: + +**成功响应**: +```json +{ + "code": 200, + "msg": "操作成功", + "data": {} +} +``` + +**失败响应**: +```json +{ + "code": 500, + "msg": "错误信息" +} +``` + +**分页响应**: +```json +{ + "code": 200, + "msg": "查询成功", + "total": 100, + "rows": [...] +} +``` + +### 3.4 数据类型支持 + +**PostgreSQL类型映射**: +- 整数类型: SMALLINT, INTEGER, BIGINT, SERIAL, BIGSERIAL +- 小数类型: DECIMAL, NUMERIC, REAL, DOUBLE PRECISION, MONEY +- 布尔类型: BOOLEAN +- 字符类型: VARCHAR, CHAR, TEXT +- 日期时间: DATE, TIME, TIMESTAMP +- JSON类型: JSON, JSONB +- 数组类型: ARRAY +- UUID类型: UUID + +**类型转换规则**: +- 字符串 → 数字:自动转换 +- 字符串 → 布尔:true/false/1/0 +- 字符串 → 日期:ISO格式自动解析 +- null/空字符串:根据列定义处理 + +### 3.5 异步任务 + +部分操作为异步执行: +- 表结构同步(syncTables) +- AI生成表结构(generate_table) + +**异步任务特点**: +- 立即返回任务ID +- 后台执行,不阻塞主线程 +- 需要轮询任务状态或查看日志 + +### 3.6 批量操作 + +支持批量操作的接口: +- 批量创建数据源配置 +- 批量修改数据源配置 +- 批量删除数据源配置 +- 批量删除表数据 +- 批量插入数据(文档导入) + +**批量操作限制**: +- 单次批量插入最多1000条 +- 批量操作失败会返回详细错误信息 + +### 3.7 错误码说明 + +| 错误码 | 说明 | +|--------|------| +| 200 | 操作成功 | +| 500 | 服务器内部错误 | +| 400 | 参数错误 | +| 401 | 未授权(API Key无效) | +| 403 | 权限不足 | +| 404 | 资源不存在 | + +### 3.8 最佳实践 + +**1. 连接管理**: +- 创建连接后先测试连接 +- 使用内置连接时启用测试库功能 +- 定期检查连接状态 + +**2. 数据源配置**: +- 使用有意义的数据源名称前缀 +- 合理使用异步同步功能 +- 定期清理无用配置 + +**3. SQL执行**: +- 使用参数化查询防止SQL注入 +- 大批量操作建议分批执行 +- 先在测试库验证再操作正式库 + +**4. 权限管理**: +- 遵循最小权限原则 +- 定期审计API Key权限 +- 敏感操作使用独立API Key + +**5. 文档导入**: +- 先预览再确认导入 +- 检查AI识别的表结构是否正确 +- 大文件建议分批导入 + +**6. 表结构修改**: +- 重要操作前备份数据 +- 使用测试库验证修改操作 +- 注意列重命名的自动检测机制 + +### 3.9 注意事项 + +1. **内置连接特性**: + - 仅内置PostgreSQL连接支持测试库功能 + - 测试库名称为:原数据库名_test + - DDL操作会自动同步到测试库 + +2. **权限验证**: + - 当前权限验证已临时禁用(代码中 `if (true) return null;`) + - 生产环境需启用权限验证 + +3. **数据类型**: + - 目前仅完整支持PostgreSQL + - 其他数据库类型支持有限 + +4. **异步操作**: + - 表结构同步为异步操作 + - 需要等待同步完成后才能看到表元数据 + +5. **文件上传**: + - 支持Excel (.xlsx, .xls) 和CSV格式 + - 文件大小建议不超过10MB + - 超大文件建议分批导入 + +--- + +## 4. 使用示例 + +### 4.1 完整流程示例:创建数据库并导入数据 + +**步骤1:创建连接实例** +```bash +POST /datasource/connection +{ + "datasourceName": "测试连接", + "datasourceType": "PostgreSQL", + "host": "localhost", + "port": 5432, + "username": "postgres", + "password": "password" +} +``` + +**步骤2:测试连接** +```bash +POST /datasource/connection/test +{ + "id": 1, + "host": "localhost", + "port": 5432, + "username": "postgres", + "password": "password", + "datasourceType": "PostgreSQL" +} +``` + +**步骤3:创建数据库和表** +```bash +POST /datasource/connection/1/create_database_table +{ + "databaseName": "my_app", + "encoding": "UTF8", + "tables": [ + { + "tableName": "users", + "tableComment": "用户表", + "columns": [ + { + "columnName": "id", + "columnType": "BIGINT", + "isPrimaryKey": true, + "isNullable": false, + "columnComment": "用户ID" + }, + { + "columnName": "username", + "columnType": "VARCHAR", + "columnLength": 50, + "isNullable": false, + "columnComment": "用户名" + } + ] + } + ] +} +``` + +**步骤4:查询数据源配置** +```bash +GET /datasource/config/list?datasourceName=my_app +``` + +**步骤5:插入数据** +```bash +POST /datasource/connection/builtin/table/1/rows +{ + "data": { + "id": 1, + "username": "admin" + } +} +``` + +### 4.2 文档导入示例 + +**步骤1:上传文件预览** +```bash +POST /datasource/connection/1/import_document/preview +Content-Type: multipart/form-data + +file: users.xlsx +target: test +``` + +**步骤2:确认导入** +```bash +POST /datasource/connection/1/import_document/confirm?target=test +{ + "tableStructure": { + "databaseName": "my_app", + "tableName": "imported_users", + "columns": [...] + }, + "allData": [...] +} +``` + +### 4.3 SQL执行示例 + +**查询数据** +```bash +POST /datasource/connection/1/execute_sql?target=prod +{ + "sql": "SELECT * FROM users WHERE age > ? AND status = ?", + "params": [18, "active"], + "databaseName": "my_app" +} +``` + +**更新数据** +```bash +POST /datasource/connection/1/execute_sql?target=test +{ + "sql": "UPDATE users SET status = ? WHERE id = ?", + "params": ["inactive", 1], + "databaseName": "my_app" +} +``` + +--- + +## 5. 附录 + +### 5.1 数据库类型枚举 + +| 枚举值 | 显示名称 | 默认端口 | 默认测试库 | +|--------|----------|----------|------------| +| POSTGRESQL | PostgreSQL | 5432 | postgres | +| MYSQL | MySQL | 3306 | mysql | +| ORACLE | Oracle | 1521 | - | +| SQLSERVER | SQL Server | 1433 | master | + +### 5.2 状态码枚举 + +| 状态码 | 说明 | +|--------|------| +| 0 | 正常 | +| 1 | 停用 | + +### 5.3 测试状态枚举 + +| 状态码 | 说明 | +|--------|------| +| 0 | 未测试 | +| 1 | 连接成功 | +| 2 | 连接失败 | + +### 5.4 连接来源枚举 + +| 来源类型 | 说明 | +|----------|------| +| builtin | 内置连接(支持测试库) | +| external | 外部连接 | + +--- + +## 6. 更新日志 + +### v1.0.0 (2025-12-26) +- 初始版本 +- 支持数据源配置管理 +- 支持数据库连接实例管理 +- 支持SQL执行 +- 支持DDL操作(创建/修改数据库和表) +- 支持文档导入(Excel/CSV) +- 支持AI生成表结构 +- 支持内置PostgreSQL测试库功能 +- 支持三层权限模型 +- 优化N+1查询问题 + +--- + +**文档维护**: 技术团队 +**最后更新**: 2025-12-26 +**版本**: v1.0.0 diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/README.md b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/README.md new file mode 100644 index 0000000..b3db6d5 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/README.md @@ -0,0 +1,75 @@ +# lzwcai-mcp-agile-db-third + +AgileDB 数据源管理 MCP Server,基于 `API_DOCUMENTATION.md` 将后端数据源/连接/DDL/DML/API 接口封装为 34 个 MCP 工具。 + +## 功能概述 + +本服务将后端 `datasource` 模块的 API 接口代理为标准 MCP 工具,分为两大类: + +### 1. 数据源配置管理 + +- `list_datasource_configs`:查询数据源配置列表 +- `get_datasource_config`:获取数据源配置详情 +- `batch_create_datasource_configs`:批量创建数据源配置 +- `replace_datasource_configs`:全量替换数据源配置 +- `batch_update_datasource_configs`:批量修改数据源配置 +- `delete_datasource_configs`:批量删除数据源配置 +- `test_connection_config`:测试数据库连接 +- `change_datasource_status`:修改数据源状态 +- `export_datasource_configs`:导出数据源配置为 Excel + +### 2. 数据库连接实例管理 + +- `list_connections` / `get_connection` / `create_connection` / `update_connection` / `delete_connection`:连接实例 CRUD +- `test_connection` / `change_connection_status`:连接测试与状态切换 +- `realtime_structure` / `realtime_databases` / `realtime_tables`:实时查询库表结构 +- `create_builtin_postgresql` / `update_builtin_database`:内置 PostgreSQL 连接管理 +- `execute_sql`:执行原生 SQL +- `create_database` / `create_table` / `create_database_table` / `alter_database` / `alter_table`:DDL 操作 +- `generate_table`:AI 生成表结构 +- `import_document_preview` / `import_document_confirm`:Excel/CSV 文档导入 +- `builtin_table_data` / `builtin_table_insert` / `builtin_table_update` / `builtin_table_delete`:表数据 CRUD + +## 环境配置 + +| 环境变量 | 说明 | 默认值 | +|----------|------|--------| +| `backendBaseUrl` | 后端 API 基础地址 | `http://lzwcai-demp-corp-manager:8086` | +| `datasourceApiKey` | 默认 `X-Datasource-API-Key`,可选 | 空 | +| `LOG_LEVEL` | 日志级别 | `INFO` | + +## 安装与运行 + +使用 uv: + +```bash +uv sync +uv run python -m lzwcai_mcp_agile_db_third.main +``` + +或使用 pip: + +```bash +python -m venv .venv +.venv\Scripts\python -m pip install mcp httpx +.venv\Scripts\python -m lzwcai_mcp_agile_db_third.main +``` + +安装为命令后: + +```bash +lzwcai-mcp-agile-db-third +``` + +## 使用 mcp CLI + +```bash +mcp dev lzwcai_mcp_agile_db_third/main.py +``` + +## 注意事项 + +- 所有写操作(创建/修改/删除)会先落到 `prod` 环境;带 `target` 参数的工具可切换为 `test` +- `import_document_preview` 通过本地文件路径上传 Excel/CSV +- 执行删除类工具前,调用方应遵循安全确认原则,向用户展示影响范围并二次确认 +- 日志文件中会对 `password`、`apiKey`、`token`、`secret` 等敏感字段进行脱敏 diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/__init__.py b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/__init__.py new file mode 100644 index 0000000..96053c9 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/__init__.py @@ -0,0 +1 @@ +"""lzwcai_mcp_agile_db_third package.""" diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/main.py b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/main.py new file mode 100644 index 0000000..c31b1e0 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/main.py @@ -0,0 +1,216 @@ +"""MCP server entrypoint for Agile DB third-party datasource APIs.""" + +import asyncio +import json +import logging +from typing import Any, Dict, List, Optional + +try: + from .tools import list_tools, get_tool + from .utils import DataSourceAPIClient, get_env_config, get_api_key + from .utils.logger_config import logger_config +except ImportError: + from tools import list_tools, get_tool + from utils import DataSourceAPIClient, get_env_config, get_api_key + from utils.logger_config import logger_config + +from mcp.server import NotificationOptions, Server +from mcp.server.models import InitializationOptions +import mcp.types as types + +mcp_logger = logger_config.setup_mcp_logging() + + +def _text_response(payload: Dict[str, Any]) -> List[types.TextContent]: + """Build a JSON text response.""" + return [ + types.TextContent( + type="text", + text=json.dumps(payload, ensure_ascii=False, indent=2), + ) + ] + + +def _build_tool(tool_def: Dict[str, Any]) -> types.Tool: + """Build an MCP Tool from a tool definition.""" + return types.Tool( + name=tool_def["name"], + description=tool_def["description"], + inputSchema=tool_def["inputSchema"], + ) + + +server = Server("lzwcai-mcp-agile-db-third") +_api_client: Optional[DataSourceAPIClient] = None + + +def _get_api_client() -> DataSourceAPIClient: + """Get or create the default API client.""" + global _api_client + if _api_client is None: + env = get_env_config() + _api_client = DataSourceAPIClient(base_url=env.get("backend_base_url")) + return _api_client + + +@server.list_tools() +async def handle_list_tools() -> List[types.Tool]: + """List all available MCP tools.""" + try: + mcp_logger.info("收到列出工具请求") + tools = [_build_tool(tool_def) for tool_def in list_tools()] + mcp_logger.info(f"成功生成 {len(tools)} 个 MCP 工具") + return tools + except Exception as e: + mcp_logger.error(f"列出工具失败: {e}", exc_info=True) + raise + + +@server.call_tool() +async def handle_call_tool( + name: str, + arguments: Optional[Dict[str, Any]], +) -> List[types.TextContent]: + """Handle MCP tool invocation by proxying to the backend API.""" + try: + mcp_logger.info(f"收到工具调用请求: {name}") + mcp_logger.debug(f"工具参数: {arguments}") + + tool_def = get_tool(name) + if tool_def is None: + error_msg = f"未找到工具: {name}" + mcp_logger.warning(error_msg) + return _text_response({"error": error_msg}) + + # Validate required parameters + args = arguments or {} + schema = tool_def["inputSchema"] + required = schema.get("required", []) + missing = [key for key in required if key not in args or args[key] is None] + if missing: + error_msg = f"工具 {name} 缺少必填参数: {', '.join(missing)}" + mcp_logger.warning(error_msg) + return _text_response({"error": error_msg, "missing": missing}) + + # Categorize parameters + path_params: Dict[str, Any] = {} + query_params: Dict[str, Any] = {} + body_params: Dict[str, Any] = {} + file_path: Optional[str] = None + api_key: Optional[str] = None + + categories = tool_def["paramCategories"] + for key, value in args.items(): + if value is None: + continue + category = categories.get(key) + if category == "path": + path_params[key] = value + elif category == "query": + query_params[key] = value + elif category == "body": + body_params[key] = value + elif category == "file": + file_path = value + elif category == "header": + api_key = value + + # Apply schema-defined defaults for parameters the caller omitted, + # so "有默认值的参数不填就用默认值"(如 datasourceType、target、分页)。 + properties = schema.get("properties", {}) + for key, prop in properties.items(): + if "default" not in prop: + continue + if args.get(key) is not None: + continue + default_value = prop["default"] + category = categories.get(key) + if category == "path": + path_params[key] = default_value + elif category == "query": + query_params[key] = default_value + elif category == "body": + body_params[key] = default_value + elif category == "header" and not api_key: + api_key = default_value + + # Fall back to the environment-configured API key when the tool call + # doesn't carry an explicit header value. + if not api_key: + api_key = get_api_key() or None + if api_key: + mcp_logger.info("工具调用未带 API Key,已回退到环境变量 datasourceApiKey") + + client = _get_api_client() + result = client.request( + method=tool_def["method"], + path_template=tool_def["path"], + path_params=path_params, + query_params=query_params, + body=body_params if body_params else None, + file_path=file_path, + api_key=api_key, + ) + + return _text_response(result) + except Exception as e: + error_msg = f"工具调用失败: {name}, 错误: {e}" + mcp_logger.error(error_msg, exc_info=True) + return _text_response({"error": error_msg}) + + +async def async_main(): + """Async entry for the MCP server.""" + try: + mcp_logger.info("=" * 60) + mcp_logger.info("正在启动 MCP 服务: lzwcai-mcp-agile-db-third") + mcp_logger.info("版本: 0.1.0") + mcp_logger.info("=" * 60) + + env = get_env_config() + mcp_logger.info(f"环境配置 - Backend Base URL: {env.get('backend_base_url')}") + mcp_logger.info(f"环境配置 - API Key: {'已设置' if env.get('api_key') else '未设置'}") + mcp_logger.info("=" * 60) + + from mcp.server.stdio import stdio_server + + async with stdio_server() as (read_stream, write_stream): + mcp_logger.info("MCP 服务已启动,等待客户端连接...") + await server.run( + read_stream, + write_stream, + InitializationOptions( + server_name="lzwcai-mcp-agile-db-third", + server_version="0.1.2", + capabilities=server.get_capabilities( + notification_options=NotificationOptions(), + experimental_capabilities={}, + ), + ), + ) + + mcp_logger.info("MCP 服务已关闭") + except Exception as e: + mcp_logger.error(f"MCP 服务运行失败: {e}", exc_info=True) + raise + + +def main(): + """Console entrypoint.""" + try: + logger_config.setup_logging( + app_name="lzwcai_mcp_agile_db_third", + log_level=logging.INFO, + console_output=False, + ) + mcp_logger.info("开始运行 MCP Agile DB Third 服务") + asyncio.run(async_main()) + except KeyboardInterrupt: + mcp_logger.info("收到中断信号,正在关闭服务...") + except Exception as e: + mcp_logger.error(f"程序运行失败: {e}", exc_info=True) + raise + + +if __name__ == "__main__": + main() diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/mock_db.py b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/mock_db.py new file mode 100644 index 0000000..474132d --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/mock_db.py @@ -0,0 +1,137 @@ +"""Docker-based PostgreSQL mock for local self-testing. + +Provides a throwaway Postgres container that the backend can connect to during +external-connection tests. The container is bound to 0.0.0.0:5432 on the Docker +host, so the host IP must be reachable from the backend server. +""" + +import socket +import subprocess +import sys +import time +from typing import Optional + +DEFAULT_IMAGE = "postgres:16-alpine" +DEFAULT_CONTAINER = "lzwcai_mcp_agile_db_third_mock_pg" +DEFAULT_PORT = 5432 +DEFAULT_DATABASE = "postgres" +DEFAULT_USERNAME = "postgres" +DEFAULT_PASSWORD = "postgres" + + +def _run(args: list, check: bool = False, capture: bool = True) -> subprocess.CompletedProcess: + """Run a shell command and return the result.""" + return subprocess.run( + args, + check=check, + capture_output=capture, + text=True, + shell=False, + ) + + +def host_ip(prefer_prefixes: Optional[list] = None) -> str: + """Return a non-loopback IPv4 address of this machine. + + Prefers addresses starting with the given prefixes so users can steer the + result toward the network segment that the backend can reach. + """ + prefer_prefixes = prefer_prefixes or ["192.168.", "10.", "172."] + hostname = socket.gethostname() + _, _, ips = socket.gethostbyname_ex(hostname) + # Prefer addresses matching a requested prefix, then any non-loopback. + for prefix in prefer_prefixes: + for ip in ips: + if ip.startswith(prefix) and not ip.startswith("127."): + return ip + for ip in ips: + if not ip.startswith("127."): + return ip + raise RuntimeError("Could not find a non-loopback IPv4 address on this host") + + +def is_running(container: str = DEFAULT_CONTAINER) -> bool: + """Check whether the mock container is currently running.""" + result = _run(["docker", "ps", "--filter", f"name={container}", "--format", "{{.Names}}"]) + return container in result.stdout + + +def start( + container: str = DEFAULT_CONTAINER, + port: int = DEFAULT_PORT, + username: str = DEFAULT_USERNAME, + password: str = DEFAULT_PASSWORD, + database: str = DEFAULT_DATABASE, + image: str = DEFAULT_IMAGE, +) -> str: + """Start the Postgres mock container if not already running. + + Returns the host IP that should be supplied to backend connection tests. + """ + if is_running(container): + print(f"Mock DB container '{container}' is already running.") + return host_ip() + + # Remove any stale container with the same name. + _run(["docker", "rm", "-f", container], check=False) + + print(f"Starting mock Postgres container '{container}' (image={image})...") + _run( + [ + "docker", "run", "-d", + "--name", container, + "-p", f"{port}:{port}", + "-e", f"POSTGRES_USER={username}", + "-e", f"POSTGRES_PASSWORD={password}", + "-e", f"POSTGRES_DB={database}", + image, + ], + check=True, + ) + + print("Waiting for Postgres to become ready...") + deadline = time.time() + 30 + while time.time() < deadline: + result = _run( + ["docker", "exec", container, "pg_isready", "-U", username], + check=False, + ) + if result.returncode == 0: + break + time.sleep(0.5) + else: + stop(container) + raise RuntimeError("Postgres mock failed to become ready within 30s") + + ip = host_ip() + print(f"Mock Postgres is ready at {ip}:{port} (user={username}, password={password}, db={database})") + return ip + + +def stop(container: str = DEFAULT_CONTAINER) -> None: + """Stop and remove the mock Postgres container.""" + print(f"Stopping mock DB container '{container}'...") + _run(["docker", "stop", "-t", "5", container], check=False) + _run(["docker", "rm", "-f", container], check=False) + + +def main(): + if len(sys.argv) < 2: + print("Usage: python -m lzwcai_mcp_agile_db_third.mock_db [start|stop|ip]") + sys.exit(1) + cmd = sys.argv[1].lower() + if cmd == "start": + start() + elif cmd == "stop": + stop() + elif cmd in ("ip", "host"): + print(host_ip()) + elif cmd == "status": + print("running" if is_running() else "stopped") + else: + print(f"Unknown command: {cmd}") + sys.exit(1) + + +if __name__ == "__main__": + main() diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/pyproject.toml b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/pyproject.toml new file mode 100644 index 0000000..db1688a --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/pyproject.toml @@ -0,0 +1,41 @@ +[build-system] +requires = ["hatchling"] +build-backend = "hatchling.build" + +[project] +name = "lzwcai-mcp-agile-db-third" +version = "0.1.3" +description = "MCP server for Agile DB third-party datasource APIs" +readme = "README.md" +requires-python = ">=3.12" +license = {text = "MIT"} +authors = [ + {name = "lzwcai", email = "your-email@example.com"}, +] +keywords = ["mcp", "datasource", "database", "agile-db"] +classifiers = [ + "Development Status :: 3 - Alpha", + "Intended Audience :: Developers", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.12", +] +dependencies = [ + "httpx>=0.28.1", + "mcp[cli]>=1.10.1", +] + +[project.scripts] +lzwcai-mcp-agile-db-third = "lzwcai_mcp_agile_db_third.main:main" + +[tool.hatch.build.targets.wheel] +packages = ["lzwcai_mcp_agile_db_third"] + +[tool.hatch.build.targets.wheel.force-include] + +[tool.hatch.build] +exclude = [ + "lzwcai_mcp_agile_db_third/logs/**", + "**/.__pycache__/**", + "lzwcai_mcp_agile_db_third/.gitignore", + ".venv/**", +] diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/tools.py b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/tools.py new file mode 100644 index 0000000..5b6c464 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/tools.py @@ -0,0 +1,870 @@ +"""MCP tool definitions for datasource API.""" + +from typing import Any, Dict, List + + +def _tool( + name: str, + description: str, + method: str, + path: str, + properties: Dict[str, Any], + required: List[str], + param_categories: Dict[str, str], +) -> Dict[str, Any]: + """Build a tool definition dictionary.""" + return { + "name": name, + "description": description, + "method": method, + "path": path, + "inputSchema": { + "type": "object", + "properties": properties, + "required": required, + }, + "paramCategories": param_categories, + } + + +# 公共参数 schema 片段 +_API_KEY_PROP = { + "apiKey": { + "type": "string", + "description": "可选的 X-Datasource-API-Key 权限密钥", + } +} + +_TARGET_PROP = { + "target": { + "type": "string", + "description": "目标环境(prod/test,默认 prod)", + "default": "prod", + } +} + +_PAGE_PROPS = { + "pageNum": {"type": "integer", "description": "页码(默认1)", "default": 1}, + "pageSize": {"type": "integer", "description": "每页数量(默认10)", "default": 10}, +} + +# ============================================================================= +# 1. 数据源配置管理 +# ============================================================================= + +LIST_DATASOURCE_CONFIGS = _tool( + name="list_datasource_configs", + description="查询数据源配置列表,支持分页和多条件筛选", + method="GET", + path="/datasource/config/list", + properties={ + "datasourceName": {"type": "string", "description": "数据源名称(模糊查询)"}, + "datasourceId": {"type": "integer", "description": "连接ID"}, + "datasourceType": {"type": "string", "description": "数据库类型"}, + "status": {"type": "integer", "description": "状态"}, + "showTable": {"type": "boolean", "description": "是否显示表数量"}, + **_PAGE_PROPS, + }, + required=[], + param_categories={ + "datasourceName": "query", + "datasourceId": "query", + "datasourceType": "query", + "status": "query", + "showTable": "query", + "pageNum": "query", + "pageSize": "query", + }, +) + +GET_DATASOURCE_CONFIG = _tool( + name="get_datasource_config", + description="获取指定数据源配置的详细信息", + method="GET", + path="/datasource/config/{id}", + properties={ + "id": {"type": "integer", "description": "数据源配置ID"}, + }, + required=["id"], + param_categories={"id": "path"}, +) + +BATCH_CREATE_DATASOURCE_CONFIGS = _tool( + name="batch_create_datasource_configs", + description="批量创建数据源配置并同步表结构", + method="POST", + path="/datasource/config", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "datasourceNamePrefix": {"type": "string", "description": "数据源名称前缀"}, + "enterpriseId": {"type": "integer", "description": "企业ID"}, + "status": {"type": "integer", "description": "状态"}, + "remark": {"type": "string", "description": "备注信息"}, + "syncTables": {"type": "boolean", "description": "是否同步表结构"}, + "databases": { + "type": "array", + "description": "数据库与表列表", + "items": { + "type": "object", + "properties": { + "databaseName": {"type": "string"}, + "tableNames": {"type": "array", "items": {"type": "string"}}, + }, + }, + }, + }, + required=["connectionId", "databases"], + param_categories={ + "connectionId": "body", + "datasourceNamePrefix": "body", + "enterpriseId": "body", + "status": "body", + "remark": "body", + "syncTables": "body", + "databases": "body", + }, +) + +REPLACE_DATASOURCE_CONFIGS = _tool( + name="replace_datasource_configs", + description="全量替换指定连接下的数据源配置(未传入的配置将被删除),请谨慎操作", + method="PUT", + path="/datasource/config", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "datasourceNamePrefix": {"type": "string", "description": "数据源名称前缀"}, + "enterpriseId": {"type": "integer", "description": "企业ID"}, + "status": {"type": "integer", "description": "状态"}, + "remark": {"type": "string", "description": "备注信息"}, + "syncTables": {"type": "boolean", "description": "是否同步表结构"}, + "databases": { + "type": "array", + "description": "数据库与表列表", + "items": { + "type": "object", + "properties": { + "databaseName": {"type": "string"}, + "tableNames": {"type": "array", "items": {"type": "string"}}, + }, + }, + }, + }, + required=["connectionId", "databases"], + param_categories={ + "connectionId": "body", + "datasourceNamePrefix": "body", + "enterpriseId": "body", + "status": "body", + "remark": "body", + "syncTables": "body", + "databases": "body", + }, +) + +BATCH_UPDATE_DATASOURCE_CONFIGS = _tool( + name="batch_update_datasource_configs", + description="批量修改数据源配置并重新同步表结构", + method="PUT", + path="/datasource/config/batch", + properties={ + "status": {"type": "integer", "description": "状态"}, + "remark": {"type": "string", "description": "批量更新备注"}, + "syncTables": {"type": "boolean", "description": "是否同步表结构"}, + "datasources": { + "type": "array", + "description": "要更新的数据源配置列表", + "items": { + "type": "object", + "properties": { + "id": {"type": "integer"}, + "datasourceName": {"type": "string"}, + "tableNames": {"type": "array", "items": {"type": "string"}}, + }, + }, + }, + }, + required=["datasources"], + param_categories={ + "status": "body", + "remark": "body", + "syncTables": "body", + "datasources": "body", + }, +) + +DELETE_DATASOURCE_CONFIGS = _tool( + name="delete_datasource_configs", + description="批量删除数据源配置", + method="POST", + path="/datasource/config/deletes", + properties={ + "ids": { + "type": "array", + "description": "要删除的数据源配置ID列表", + "items": {"type": "integer"}, + }, + }, + required=["ids"], + param_categories={"ids": "body"}, +) + +TEST_CONNECTION_CONFIG = _tool( + name="test_connection_config", + description="测试数据库连接是否正常", + method="POST", + path="/datasource/config/testConnectionConfig", + properties={ + "host": {"type": "string", "description": "主机地址"}, + "port": {"type": "integer", "description": "端口"}, + "username": {"type": "string", "description": "用户名"}, + "password": {"type": "string", "description": "密码"}, + "datasourceType": {"type": "string", "description": "数据库类型,例如 PostgreSQL(默认 PostgreSQL)", "default": "PostgreSQL"}, + }, + required=["host", "port", "username", "password"], + param_categories={ + "host": "body", + "port": "body", + "username": "body", + "password": "body", + "datasourceType": "body", + }, +) + +CHANGE_DATASOURCE_STATUS = _tool( + name="change_datasource_status", + description="修改数据源配置的启用/禁用状态", + method="PUT", + path="/datasource/config/changeStatus", + properties={ + "id": {"type": "integer", "description": "数据源配置ID"}, + "status": {"type": "integer", "description": "状态(0正常/1停用)"}, + }, + required=["id", "status"], + param_categories={"id": "body", "status": "body"}, +) + +EXPORT_DATASOURCE_CONFIGS = _tool( + name="export_datasource_configs", + description="导出数据源配置列表为Excel文件", + method="POST", + path="/datasource/config/export", + properties={ + "datasourceName": {"type": "string", "description": "数据源名称(模糊查询)"}, + "datasourceId": {"type": "integer", "description": "连接ID"}, + "datasourceType": {"type": "string", "description": "数据库类型"}, + "status": {"type": "integer", "description": "状态"}, + }, + required=[], + param_categories={ + "datasourceName": "query", + "datasourceId": "query", + "datasourceType": "query", + "status": "query", + }, +) + +# ============================================================================= +# 2. 数据库连接实例管理 +# ============================================================================= + +LIST_CONNECTIONS = _tool( + name="list_connections", + description="查询数据库连接实例列表,支持分页和筛选", + method="GET", + path="/datasource/connection/list", + properties={ + "datasourceName": {"type": "string", "description": "数据源名称(模糊查询)"}, + "status": {"type": "integer", "description": "状态"}, + "testStatus": {"type": "integer", "description": "测试状态(0未测试/1成功/2失败)"}, + "sourceType": {"type": "string", "description": "连接来源(builtin/external)"}, + **_PAGE_PROPS, + }, + required=[], + param_categories={ + "datasourceName": "query", + "status": "query", + "testStatus": "query", + "sourceType": "query", + "pageNum": "query", + "pageSize": "query", + }, +) + +GET_CONNECTION = _tool( + name="get_connection", + description="获取指定连接实例的详细信息", + method="GET", + path="/datasource/connection/{id}", + properties={ + "id": {"type": "integer", "description": "连接实例ID"}, + }, + required=["id"], + param_categories={"id": "path"}, +) + +CREATE_CONNECTION = _tool( + name="create_connection", + description="创建新的数据库连接实例", + method="POST", + path="/datasource/connection", + properties={ + "datasourceName": {"type": "string", "description": "连接名称"}, + "datasourceType": {"type": "string", "description": "数据库类型,例如 PostgreSQL(默认 PostgreSQL)", "default": "PostgreSQL"}, + "connectionType": {"type": "string", "description": "连接方式,例如 user_password(默认 user_password)", "default": "user_password"}, + "host": {"type": "string", "description": "主机地址"}, + "port": {"type": "integer", "description": "端口"}, + "username": {"type": "string", "description": "用户名"}, + "password": {"type": "string", "description": "密码"}, + "status": {"type": "integer", "description": "状态"}, + "remark": {"type": "string", "description": "备注信息"}, + }, + required=["datasourceName", "host", "port", "username", "password"], + param_categories={ + "datasourceName": "body", + "datasourceType": "body", + "connectionType": "body", + "host": "body", + "port": "body", + "username": "body", + "password": "body", + "status": "body", + "remark": "body", + }, +) + +UPDATE_CONNECTION = _tool( + name="update_connection", + description="修改数据库连接实例信息", + method="PUT", + path="/datasource/connection", + properties={ + "id": {"type": "integer", "description": "连接实例ID"}, + "datasourceName": {"type": "string", "description": "连接名称"}, + "host": {"type": "string", "description": "主机地址"}, + "port": {"type": "integer", "description": "端口"}, + "username": {"type": "string", "description": "用户名"}, + "password": {"type": "string", "description": "密码"}, + "remark": {"type": "string", "description": "更新备注"}, + }, + required=["id"], + param_categories={ + "id": "body", + "datasourceName": "body", + "host": "body", + "port": "body", + "username": "body", + "password": "body", + "remark": "body", + }, +) + +DELETE_CONNECTION = _tool( + name="delete_connection", + description="删除指定的连接实例", + method="DELETE", + path="/datasource/connection/{id}", + properties={ + "id": {"type": "integer", "description": "连接实例ID"}, + }, + required=["id"], + param_categories={"id": "path"}, +) + +TEST_CONNECTION = _tool( + name="test_connection", + description="测试数据库连接是否可用", + method="POST", + path="/datasource/connection/test", + properties={ + "id": {"type": "integer", "description": "连接实例ID"}, + "host": {"type": "string", "description": "主机地址"}, + "port": {"type": "integer", "description": "端口"}, + "username": {"type": "string", "description": "用户名"}, + "password": {"type": "string", "description": "密码"}, + "datasourceType": {"type": "string", "description": "数据库类型,例如 PostgreSQL(默认 PostgreSQL)", "default": "PostgreSQL"}, + }, + required=["host", "port", "username", "password"], + param_categories={ + "id": "body", + "host": "body", + "port": "body", + "username": "body", + "password": "body", + "datasourceType": "body", + }, +) + +CHANGE_CONNECTION_STATUS = _tool( + name="change_connection_status", + description="修改连接实例的启用/禁用状态", + method="PUT", + path="/datasource/connection/changeStatus", + properties={ + "id": {"type": "integer", "description": "连接实例ID"}, + "status": {"type": "integer", "description": "状态(0正常/1停用)"}, + }, + required=["id", "status"], + param_categories={"id": "body", "status": "body"}, +) + +REALTIME_STRUCTURE = _tool( + name="realtime_structure", + description="实时查询连接下的所有数据库和表结构(直接连接数据库服务器查询)", + method="GET", + path="/datasource/connection/realtime/structure/{id}", + properties={ + "id": {"type": "integer", "description": "连接实例ID"}, + }, + required=["id"], + param_categories={"id": "path"}, +) + +REALTIME_DATABASES = _tool( + name="realtime_databases", + description="实时查询连接下的所有数据库名称", + method="GET", + path="/datasource/connection/realtime/databases/{id}", + properties={ + "id": {"type": "integer", "description": "连接实例ID"}, + }, + required=["id"], + param_categories={"id": "path"}, +) + +REALTIME_TABLES = _tool( + name="realtime_tables", + description="实时查询指定数据库下的所有表", + method="GET", + path="/datasource/connection/realtime/tables/{id}", + properties={ + "id": {"type": "integer", "description": "连接实例ID"}, + "databaseName": {"type": "string", "description": "数据库名称"}, + }, + required=["id", "databaseName"], + param_categories={"id": "path", "databaseName": "query"}, +) + +CREATE_BUILTIN_POSTGRESQL = _tool( + name="create_builtin_postgresql", + description="创建内置 PostgreSQL 数据库连接(使用配置文件中的连接信息)", + method="POST", + path="/datasource/connection/create_builtin_postgresql", + properties={ + "datasourceName": {"type": "string", "description": "连接名称"}, + "remark": {"type": "string", "description": "备注"}, + }, + required=["datasourceName"], + param_categories={"datasourceName": "body", "remark": "body"}, +) + +UPDATE_BUILTIN_DATABASE = _tool( + name="update_builtin_database", + description="修改内置 PostgreSQL 连接信息", + method="PUT", + path="/datasource/connection/update_builtin_database", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "datasourceName": {"type": "string", "description": "新名称"}, + "remark": {"type": "string", "description": "更新备注"}, + }, + required=["connectionId"], + param_categories={"connectionId": "body", "datasourceName": "body", "remark": "body"}, +) + +EXECUTE_SQL = _tool( + name="execute_sql", + description="在指定数据源上执行 SQL 语句,支持参数化查询和环境切换", + method="POST", + path="/datasource/connection/{datasourceId}/execute_sql", + properties={ + "datasourceId": {"type": "integer", "description": "数据源配置ID"}, + "target": { + "type": "string", + "description": "目标环境(prod/test,默认 prod)", + "default": "prod", + }, + "sql": {"type": "string", "description": "SQL 语句,使用 ? 占位符"}, + "params": { + "type": "array", + "description": "SQL 参数列表", + "items": {}, + }, + "databaseName": {"type": "string", "description": "数据库名称"}, + **_API_KEY_PROP, + }, + required=["datasourceId", "sql"], + param_categories={ + "datasourceId": "path", + "target": "query", + "sql": "body", + "params": "body", + "databaseName": "body", + "apiKey": "header", + }, +) + +CREATE_DATABASE = _tool( + name="create_database", + description="在指定连接上创建新数据库(目前仅支持 PostgreSQL)", + method="POST", + path="/datasource/connection/{connectionId}/create_database", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "databaseName": {"type": "string", "description": "数据库名称"}, + "encoding": {"type": "string", "description": "字符编码,例如 UTF8"}, + "owner": {"type": "string", "description": "所有者"}, + **_API_KEY_PROP, + }, + required=["connectionId", "databaseName"], + param_categories={ + "connectionId": "path", + "databaseName": "body", + "encoding": "body", + "owner": "body", + "apiKey": "header", + }, +) + +CREATE_TABLE = _tool( + name="create_table", + description="在指定数据库中创建新表", + method="POST", + path="/datasource/connection/{connectionId}/create_table", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "databaseName": {"type": "string", "description": "数据库名称"}, + "tableName": {"type": "string", "description": "表名"}, + "tableComment": {"type": "string", "description": "表注释"}, + "columns": { + "type": "array", + "description": "列定义列表", + "items": { + "type": "object", + "properties": { + "columnName": {"type": "string"}, + "columnType": {"type": "string"}, + "columnLength": {"type": "integer"}, + "isPrimaryKey": {"type": "boolean"}, + "isNullable": {"type": "boolean"}, + "columnComment": {"type": "string"}, + }, + }, + }, + **_API_KEY_PROP, + }, + required=["connectionId", "databaseName", "tableName", "columns"], + param_categories={ + "connectionId": "path", + "databaseName": "body", + "tableName": "body", + "tableComment": "body", + "columns": "body", + "apiKey": "header", + }, +) + +CREATE_DATABASE_TABLE = _tool( + name="create_database_table", + description="同时创建数据库和表(一次性操作)", + method="POST", + path="/datasource/connection/{connectionId}/create_database_table", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "databaseName": {"type": "string", "description": "数据库名称"}, + "encoding": {"type": "string", "description": "字符编码"}, + "owner": {"type": "string", "description": "所有者"}, + "tables": { + "type": "array", + "description": "要创建的表列表", + "items": { + "type": "object", + "properties": { + "tableName": {"type": "string"}, + "tableComment": {"type": "string"}, + "columns": {"type": "array"}, + }, + }, + }, + **_API_KEY_PROP, + }, + required=["connectionId", "databaseName", "tables"], + param_categories={ + "connectionId": "path", + "databaseName": "body", + "encoding": "body", + "owner": "body", + "tables": "body", + "apiKey": "header", + }, +) + +ALTER_DATABASE = _tool( + name="alter_database", + description="修改数据库属性(重命名、更改所有者、更改编码)", + method="PUT", + path="/datasource/connection/{connectionId}/alter_database", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "databaseName": {"type": "string", "description": "原数据库名称"}, + "newName": {"type": "string", "description": "新数据库名称"}, + "newOwner": {"type": "string", "description": "新所有者"}, + "newEncoding": {"type": "string", "description": "新字符编码"}, + **_API_KEY_PROP, + }, + required=["connectionId", "databaseName"], + param_categories={ + "connectionId": "path", + "databaseName": "body", + "newName": "body", + "newOwner": "body", + "newEncoding": "body", + "apiKey": "header", + }, +) + +ALTER_TABLE = _tool( + name="alter_table", + description="修改表结构(添加列、删除列、重命名列、修改列类型等)", + method="PUT", + path="/datasource/connection/{connectionId}/alter_table", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "databaseName": {"type": "string", "description": "数据库名称"}, + "tableName": {"type": "string", "description": "表名"}, + "tableComment": {"type": "string", "description": "表注释"}, + "operations": { + "type": "array", + "description": "操作列表", + "items": { + "type": "object", + "properties": { + "operation": {"type": "string"}, + "column": {"type": "object"}, + }, + }, + }, + **_API_KEY_PROP, + }, + required=["connectionId", "databaseName", "tableName", "operations"], + param_categories={ + "connectionId": "path", + "databaseName": "body", + "tableName": "body", + "tableComment": "body", + "operations": "body", + "apiKey": "header", + }, +) + +GENERATE_TABLE = _tool( + name="generate_table", + description="使用 AI 根据需求描述生成表结构(异步任务)", + method="POST", + path="/datasource/connection/generate_table", + properties={ + "requirement": {"type": "string", "description": "需求描述"}, + "databaseId": {"type": "integer", "description": "关联的数据库ID"}, + }, + required=["requirement"], + param_categories={"requirement": "body", "databaseId": "body"}, +) + +IMPORT_DOCUMENT_PREVIEW = _tool( + name="import_document_preview", + description="上传 Excel/CSV 文件,AI 识别表结构并预览前 10 条数据", + method="POST", + path="/datasource/connection/{connectionId}/import_document/preview", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "target": { + "type": "string", + "description": "目标环境(prod/test,默认 prod)", + "default": "prod", + }, + "filePath": {"type": "string", "description": "本地 Excel/CSV 文件路径"}, + }, + required=["connectionId", "filePath"], + param_categories={ + "connectionId": "path", + "target": "query", + "filePath": "file", + }, +) + +IMPORT_DOCUMENT_CONFIRM = _tool( + name="import_document_confirm", + description="确认导入,创建表并插入数据", + method="POST", + path="/datasource/connection/{connectionId}/import_document/confirm", + properties={ + "connectionId": {"type": "integer", "description": "连接实例ID"}, + "target": { + "type": "string", + "description": "目标环境(prod/test,默认 prod)", + "default": "prod", + }, + "tableStructure": { + "type": "object", + "description": "表结构定义", + }, + "allData": { + "type": "array", + "description": "完整导入数据", + }, + **_API_KEY_PROP, + }, + required=["connectionId", "tableStructure", "allData"], + param_categories={ + "connectionId": "path", + "target": "query", + "tableStructure": "body", + "allData": "body", + "apiKey": "header", + }, +) + +BUILTIN_TABLE_DATA = _tool( + name="builtin_table_data", + description="根据表ID查询表结构和数据(分页)", + method="GET", + path="/datasource/connection/builtin/table/{tableId}", + properties={ + "tableId": {"type": "integer", "description": "表ID"}, + "pageNum": {"type": "integer", "description": "页码(默认1)"}, + "pageSize": {"type": "integer", "description": "每页数量(默认100)"}, + "target": { + "type": "string", + "description": "目标环境(prod/test,默认 prod)", + "default": "prod", + }, + }, + required=["tableId"], + param_categories={ + "tableId": "path", + "pageNum": "query", + "pageSize": "query", + "target": "query", + }, +) + +BUILTIN_TABLE_INSERT = _tool( + name="builtin_table_insert", + description="向指定表插入一条数据", + method="POST", + path="/datasource/connection/builtin/table/{tableId}/rows", + properties={ + "tableId": {"type": "integer", "description": "表ID"}, + "target": { + "type": "string", + "description": "目标环境(prod/test,默认 prod)", + "default": "prod", + }, + "data": {"type": "object", "description": "要插入的数据"}, + }, + required=["tableId", "data"], + param_categories={ + "tableId": "path", + "target": "query", + "data": "body", + }, +) + +BUILTIN_TABLE_UPDATE = _tool( + name="builtin_table_update", + description="根据主键更新表数据", + method="PUT", + path="/datasource/connection/builtin/table/{tableId}/rows", + properties={ + "tableId": {"type": "integer", "description": "表ID"}, + "target": { + "type": "string", + "description": "目标环境(prod/test,默认 prod)", + "default": "prod", + }, + "data": {"type": "object", "description": "要更新的数据"}, + "primaryKey": {"type": "object", "description": "主键条件"}, + }, + required=["tableId", "data", "primaryKey"], + param_categories={ + "tableId": "path", + "target": "query", + "data": "body", + "primaryKey": "body", + }, +) + +BUILTIN_TABLE_DELETE = _tool( + name="builtin_table_delete", + description="根据主键批量删除表数据", + method="DELETE", + path="/datasource/connection/builtin/table/{tableId}/rows", + properties={ + "tableId": {"type": "integer", "description": "表ID"}, + "target": { + "type": "string", + "description": "目标环境(prod/test,默认 prod)", + "default": "prod", + }, + "primaryKeys": { + "type": "array", + "description": "主键条件列表", + "items": {"type": "object"}, + }, + }, + required=["tableId", "primaryKeys"], + param_categories={ + "tableId": "path", + "target": "query", + "primaryKeys": "body", + }, +) + +ALL_TOOLS = [ + LIST_DATASOURCE_CONFIGS, + GET_DATASOURCE_CONFIG, + BATCH_CREATE_DATASOURCE_CONFIGS, + REPLACE_DATASOURCE_CONFIGS, + BATCH_UPDATE_DATASOURCE_CONFIGS, + DELETE_DATASOURCE_CONFIGS, + TEST_CONNECTION_CONFIG, + CHANGE_DATASOURCE_STATUS, + EXPORT_DATASOURCE_CONFIGS, + LIST_CONNECTIONS, + GET_CONNECTION, + CREATE_CONNECTION, + UPDATE_CONNECTION, + DELETE_CONNECTION, + TEST_CONNECTION, + CHANGE_CONNECTION_STATUS, + REALTIME_STRUCTURE, + REALTIME_DATABASES, + REALTIME_TABLES, + CREATE_BUILTIN_POSTGRESQL, + UPDATE_BUILTIN_DATABASE, + EXECUTE_SQL, + CREATE_DATABASE, + CREATE_TABLE, + CREATE_DATABASE_TABLE, + ALTER_DATABASE, + ALTER_TABLE, + GENERATE_TABLE, + IMPORT_DOCUMENT_PREVIEW, + IMPORT_DOCUMENT_CONFIRM, + BUILTIN_TABLE_DATA, + BUILTIN_TABLE_INSERT, + BUILTIN_TABLE_UPDATE, + BUILTIN_TABLE_DELETE, +] + + +TOOL_MAP = {tool["name"]: tool for tool in ALL_TOOLS} + + +def list_tools() -> List[Dict[str, Any]]: + """Return all tool definitions.""" + return ALL_TOOLS + + +def get_tool(name: str) -> Dict[str, Any]: + """Return a tool definition by name.""" + return TOOL_MAP.get(name) diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/__init__.py b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/__init__.py new file mode 100644 index 0000000..5643e8a --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/__init__.py @@ -0,0 +1,14 @@ +"""Utils package for lzwcai_mcp_agile_db_third.""" + +from .env_config import get_backend_base_url, get_api_key, get_env_config +from .api_client import DataSourceAPIClient, api_request +from .logger_config import logger_config + +__all__ = [ + "get_backend_base_url", + "get_api_key", + "get_env_config", + "DataSourceAPIClient", + "api_request", + "logger_config", +] diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/api_client.py b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/api_client.py new file mode 100644 index 0000000..e685891 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/api_client.py @@ -0,0 +1,223 @@ +"""Backend API client for datasource APIs.""" + +import base64 +import logging +import mimetypes +import os +from typing import Any, Dict, Optional +from urllib.parse import urlencode + +import httpx + +try: + from .env_config import get_backend_base_url +except ImportError: + from env_config import get_backend_base_url + +logger = logging.getLogger(__name__) + +DEFAULT_TOKEN = ( + "" +) + +_SENSITIVE_FIELDS = {"password", "apiKey", "token", "secret"} + + +def _mask_secret(value: Optional[str]) -> str: + """Mask a secret for logging, keeping only a few leading/trailing chars.""" + if not value: + return "<空>" + if len(value) <= 8: + return "***" + return f"{value[:4]}...{value[-4:]} (len={len(value)})" + + +class DataSourceAPIClient: + """HTTP client for backend datasource APIs.""" + + def __init__( + self, + base_url: Optional[str] = None, + token: Optional[str] = None, + ): + self.base_url = (base_url or get_backend_base_url()).rstrip("/") + # Prefer explicit token, then API_KEY env var, then built-in default. + resolved = token or os.environ.get("API_KEY") or DEFAULT_TOKEN + self.token = resolved.removeprefix("Bearer ").strip() + self.client = httpx.Client(timeout=120.0) + + def close(self) -> None: + """Close the underlying HTTP client.""" + self.client.close() + + def _get_headers(self, api_key: Optional[str] = None) -> Dict[str, str]: + headers = { + "Authorization": f"Bearer {self.token}", + "Accept": "application/json", + } + if api_key: + headers["X-Datasource-API-Key"] = api_key + return headers + + @staticmethod + def _sanitize_value(value: Any) -> Any: + """Redact sensitive nested values for logging.""" + if isinstance(value, dict): + return { + k: "***" if k in _SENSITIVE_FIELDS else DataSourceAPIClient._sanitize_value(v) + for k, v in value.items() + } + if isinstance(value, list): + return [DataSourceAPIClient._sanitize_value(item) for item in value] + return value + + @staticmethod + def _file_tuple(file_path: str) -> tuple: + """Build a multipart file tuple with filename and content type.""" + filename = os.path.basename(file_path) + content_type, _ = mimetypes.guess_type(filename) + if content_type is None: + content_type = "application/octet-stream" + return (filename, open(file_path, "rb"), content_type) + + def request( + self, + method: str, + path_template: str, + path_params: Optional[Dict[str, Any]] = None, + query_params: Optional[Dict[str, Any]] = None, + body: Optional[Dict[str, Any]] = None, + file_path: Optional[str] = None, + api_key: Optional[str] = None, + ) -> Dict[str, Any]: + """Send a request and return JSON response.""" + path_params = path_params or {} + query_params = query_params or {} + + try: + url = self._build_url(path_template, path_params, query_params) + headers = self._get_headers(api_key) + + safe_body = self._sanitize_value(body) if body else body + logger.info(f"调用后端 API: {method} {url}") + logger.info( + f"请求密钥 - X-Datasource-API-Key: {_mask_secret(api_key)}, " + f"Authorization token: {_mask_secret(self.token)}" + ) + logger.debug( + f"path_params={path_params}, query_params={query_params}, " + f"body={safe_body}, file_path={file_path}" + ) + + method = method.upper() + if method == "GET": + response = self.client.get(url, headers=headers) + elif method == "DELETE": + if body is not None: + headers["Content-Type"] = "application/json" + response = self.client.request(method, url, headers=headers, json=body) + else: + response = self.client.delete(url, headers=headers) + elif file_path: + # Multipart upload + headers.pop("Content-Type", None) + file_tuple = self._file_tuple(file_path) + files = {"file": file_tuple} + try: + response = self.client.request( + method, url, headers=headers, data=body, files=files + ) + finally: + file_tuple[1].close() + elif body is not None: + headers["Content-Type"] = "application/json" + response = self.client.request(method, url, headers=headers, json=body) + else: + response = self.client.request(method, url, headers=headers) + + response.raise_for_status() + content_type = response.headers.get("content-type", "") + if "application/json" in content_type: + data = response.json() + else: + # Non-JSON response (e.g., Excel export), encode as base64 + data = { + "success": True, + "contentType": content_type, + "fileBase64": base64.b64encode(response.content).decode("ascii"), + "message": "后端返回非 JSON 内容,已使用 base64 编码", + } + logger.info(f"后端 API 调用成功: {method} {url}") + logger.debug(f"响应: {data}") + return data + + except httpx.TimeoutException as e: + error_msg = f"API 请求超时: {method} {path_template}" + logger.error(error_msg) + raise Exception(error_msg) from e + except httpx.HTTPStatusError as e: + error_msg = f"API 请求失败 (HTTP {e.response.status_code}): {e.response.text}" + logger.error(error_msg) + raise Exception(error_msg) from e + except httpx.RequestError as e: + error_msg = f"API 请求异常: {method} {path_template}, 错误: {e}" + logger.error(error_msg) + raise Exception(error_msg) from e + except Exception as e: + error_msg = f"处理 API 响应时出错: {e}" + logger.error(error_msg, exc_info=True) + raise Exception(error_msg) from e + + def _build_url( + self, + path_template: str, + path_params: Dict[str, Any], + query_params: Dict[str, Any], + ) -> str: + path = path_template + for key, value in path_params.items(): + path = path.replace(f"{{{key}}}", str(value)) + + url = f"{self.base_url}{path}" + + if query_params: + filtered = {k: v for k, v in query_params.items() if v is not None} + if filtered: + url = f"{url}?{urlencode(filtered)}" + + return url + + +def api_request( + method: str, + path_template: str, + path_params: Optional[Dict[str, Any]] = None, + query_params: Optional[Dict[str, Any]] = None, + body: Optional[Dict[str, Any]] = None, + file_path: Optional[str] = None, + api_key: Optional[str] = None, + base_url: Optional[str] = None, + token: Optional[str] = None, +) -> Dict[str, Any]: + """Convenience wrapper for one-off API requests.""" + client = DataSourceAPIClient(base_url=base_url, token=token) + try: + return client.request( + method=method, + path_template=path_template, + path_params=path_params, + query_params=query_params, + body=body, + file_path=file_path, + api_key=api_key, + ) + finally: + client.close() + + +# Module-level default client +_default_client = DataSourceAPIClient() + + +def get_default_client() -> DataSourceAPIClient: + return _default_client diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/env_config.py b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/env_config.py new file mode 100644 index 0000000..d575de6 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/env_config.py @@ -0,0 +1,31 @@ +"""环境变量配置模块""" + +import os + + +def get_backend_base_url(default: str = "http://lzwcai-demp-corp-manager:8086") -> str: + """ + 获取后端 API 基础 URL。 + + Environment Variables: + backendBaseUrl: 后端 API 基础 URL + """ + return os.environ.get("backendBaseUrl", default) + + +def get_api_key(default: str = "") -> str: + """ + 获取默认 API 密钥(X-Datasource-API-Key)。 + + Environment Variables: + datasourceApiKey: 默认 API 密钥 + """ + return os.environ.get("datasourceApiKey", default) + + +def get_env_config() -> dict: + """获取所有环境配置。""" + return { + "backend_base_url": get_backend_base_url(), + "api_key": get_api_key(), + } diff --git a/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/logger_config.py b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/logger_config.py new file mode 100644 index 0000000..518c000 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/lzwcai_mcp_agile_db_third/utils/logger_config.py @@ -0,0 +1,85 @@ +"""统一日志配置模块""" + +import logging +import os +import sys +from pathlib import Path + + +class LoggerConfig: + """日志配置管理类""" + + def __init__(self, logs_dir: str = None): + if logs_dir: + self.logs_dir = Path(logs_dir) + else: + project_root = Path(__file__).parent.parent + self.logs_dir = project_root / "logs" + self.logs_dir.mkdir(parents=True, exist_ok=True) + self.log_format = "%(asctime)s - %(name)s - %(levelname)s - [%(filename)s:%(lineno)d] - %(message)s" + self.date_format = "%Y-%m-%d %H:%M:%S" + self._initialized = False + + def setup_logging( + self, + app_name: str = "lzwcai_mcp_agile_db_third", + log_level: int = logging.INFO, + console_output: bool = False, + ) -> logging.Logger: + """设置系统日志配置。""" + if self._initialized: + return logging.getLogger() + + root_logger = logging.getLogger() + root_logger.setLevel(log_level) + + for handler in root_logger.handlers[:]: + root_logger.removeHandler(handler) + + formatter = logging.Formatter(self.log_format, self.date_format) + + # 主日志文件 + main_log_file = self.logs_dir / f"{app_name}.log" + file_handler = logging.FileHandler(main_log_file, encoding="utf-8") + file_handler.setLevel(log_level) + file_handler.setFormatter(formatter) + root_logger.addHandler(file_handler) + + # 错误日志文件 + error_log_file = self.logs_dir / f"{app_name}_error.log" + error_handler = logging.FileHandler(error_log_file, encoding="utf-8") + error_handler.setLevel(logging.ERROR) + error_handler.setFormatter(formatter) + root_logger.addHandler(error_handler) + + # MCP 使用 stdio 时,控制台日志必须输出到 stderr + if console_output: + console_handler = logging.StreamHandler(sys.stderr) + console_handler.setLevel(log_level) + console_handler.setFormatter(formatter) + root_logger.addHandler(console_handler) + + self._initialized = True + root_logger.info(f"日志系统初始化完成 - 日志目录: {self.logs_dir}") + return root_logger + + def setup_mcp_logging(self) -> logging.Logger: + """设置 MCP 专用日志。""" + return self.create_component_logger("mcp_services", "mcp_services.log", logging.DEBUG) + + def create_component_logger( + self, component_name: str, log_file: str = None, log_level: int = None + ) -> logging.Logger: + """为特定组件创建独立日志器。""" + logger = logging.getLogger(component_name) + if log_file: + component_log_file = self.logs_dir / log_file + handler = logging.FileHandler(component_log_file, encoding="utf-8") + handler.setFormatter(logging.Formatter(self.log_format, self.date_format)) + if log_level is not None: + handler.setLevel(log_level) + logger.addHandler(handler) + return logger + + +logger_config = LoggerConfig() diff --git a/lzwcai_mcp_agile_db_third/main.py b/lzwcai_mcp_agile_db_third/main.py new file mode 100644 index 0000000..0abd25e --- /dev/null +++ b/lzwcai_mcp_agile_db_third/main.py @@ -0,0 +1,17 @@ +""" +Repository-local launcher for lzwcai-mcp-sqlexecutor. +""" + +import os + + +def main(): + # Keep local developer defaults without overriding explicit environment settings. + os.environ.setdefault("backendBaseUrl", "http://192.168.2.236:8088") + os.environ.setdefault("datasourceApiKey", "yBOHyhCSpExAoEleimSfhbRzsF6SDiPYdGGwowXG-Sk") + from lzwcai_mcp_agile_db_third.main import main + main() + + +if __name__ == "__main__": + main() diff --git a/lzwcai_mcp_agile_db_third/pyproject.toml b/lzwcai_mcp_agile_db_third/pyproject.toml new file mode 100644 index 0000000..4c9dc91 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/pyproject.toml @@ -0,0 +1,41 @@ +[build-system] +requires = ["hatchling"] +build-backend = "hatchling.build" + +[project] +name = "lzwcai-mcp-agile-db-third" +version = "0.1.5" +description = "MCP server for Agile DB third-party datasource APIs" +readme = "README.md" +requires-python = ">=3.12" +license = {text = "MIT"} +authors = [ + {name = "lzwcai", email = "your-email@example.com"}, +] +keywords = ["mcp", "datasource", "database", "agile-db"] +classifiers = [ + "Development Status :: 3 - Alpha", + "Intended Audience :: Developers", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.12", +] +dependencies = [ + "httpx>=0.28.1", + "mcp[cli]>=1.10.1", +] + +[project.scripts] +lzwcai-mcp-agile-db-third = "lzwcai_mcp_agile_db_third.main:main" + +[tool.hatch.build.targets.wheel] +packages = ["lzwcai_mcp_agile_db_third"] + +[tool.hatch.build.targets.wheel.force-include] + +[tool.hatch.build] +exclude = [ + "lzwcai_mcp_agile_db_third/logs/**", + "**/.__pycache__/**", + "lzwcai_mcp_agile_db_third/.gitignore", + ".venv/**", +] diff --git a/lzwcai_mcp_agile_db_third/selftest_tools.py b/lzwcai_mcp_agile_db_third/selftest_tools.py new file mode 100644 index 0000000..18fabd3 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/selftest_tools.py @@ -0,0 +1,418 @@ +"""End-to-end self-test for all lzwcai_mcp_agile_db_third MCP tools. + +Runs every tool through the real MCP handler (handle_call_tool) against the +backend configured below. Uses selftest_-prefixed throwaway resources and +cleans them up at the end. The destructive full-replace tool is skipped. +""" + +import asyncio +import csv +import json +import os +import sys +import tempfile +import uuid + +os.environ.setdefault("backendBaseUrl", "http://192.168.2.236:8088") +# Login token (Authorization Bearer) shared with the first-party AgileDB MCP server. +os.environ.setdefault( + "API_KEY", + "Bearer eyJhbGciOiJIUzUxMiJ9.eyJ0b2tlbl90eXBlIjoiTE9HSU4iLCJsb2dpbl91c2VyX2tleSI6" + "ImNlMDAwYjA4LWU0YTYtNGM2MS1hNzJiLWI3NTlmNmY1N2Q4NCJ9.jiNmGQZfL4-nSIFrLuaCt7mT" + "5zj0FOojAVkLeHwPOroI5jBxodrCe1PSwGO1OHq5Ztb0tLEVZw2FFVj0OlTceQ", +) +# Optional X-Datasource-API-Key for datasource-level permission checks (if enforced). +os.environ.setdefault("datasourceApiKey", "Mggkz34Yk8cbjUvCvQ-qeooNRg62WhSwwtxUUV6e0Pg") + +HERE = os.path.dirname(os.path.abspath(__file__)) +sys.path.insert(0, HERE) + +from lzwcai_mcp_agile_db_third.main import handle_call_tool # noqa: E402 +from lzwcai_mcp_agile_db_third.mock_db import start as start_mock_db, stop as stop_mock_db # noqa: E402 +from lzwcai_mcp_agile_db_third.tools import ALL_TOOLS # noqa: E402 + +RESULTS = [] # (name, status, detail) +TESTED = set() + + +async def call(name, args=None): + """Invoke a tool through the MCP handler and return parsed JSON.""" + TESTED.add(name) + try: + resp = await handle_call_tool(name, args or {}) + return json.loads(resp[0].text) + except Exception as e: # noqa: BLE001 + return {"_exception": repr(e)} + + +def summarize(data): + """Extract a short (ok, detail) from a backend response.""" + if not isinstance(data, dict): + return False, str(data)[:200] + if "_exception" in data: + return False, data["_exception"][:200] + if "error" in data: + return False, str(data["error"])[:200] + code = data.get("code") + msg = data.get("msg", "") + if code == 200: + return True, f"code=200 msg={msg}" + if code is not None: + return False, f"code={code} msg={msg}" + # list/paginated or already-unwrapped payloads + return True, json.dumps(data, ensure_ascii=False)[:160] + + +def record(name, data, mode="ok"): + """Record a tool result. + + mode="ok" -> PASS only when backend code==200 + mode="roundtrip" -> PASS when the call round-trips (no exception and the + backend returned a structured response), regardless of + business code. Used for ops whose success depends on a + real reachable DB we can't guarantee in self-test. + """ + ok, detail = summarize(data) + if mode == "roundtrip": + exception = isinstance(data, dict) and "_exception" in data + passed = not exception + else: + passed = ok + status = "PASS" if passed else "FAIL" + RESULTS.append((name, status, detail)) + print(f"[{status}] {name}: {detail}") + return data + + +def dig(data, *keys, default=None): + """Safely walk nested dict keys.""" + cur = data + for k in keys: + if not isinstance(cur, dict): + return default + cur = cur.get(k) + return cur if cur is not None else default + + +async def main(): + PREFIX = f"selftest_{uuid.uuid4().hex[:8]}_" + state = {} + + # ---- 1. read-only: connections & configs ---------------------------- + print("\n=== 只读查询 ===") + conns = record("list_connections", await call("list_connections", {"pageSize": 5})) + # pick a builtin connection to exercise builtin/realtime tools + rows = conns.get("rows") or dig(conns, "data", "rows", default=[]) or [] + builtin_id = None + any_conn_id = None + for r in rows: + cid = r.get("id") + if any_conn_id is None: + any_conn_id = cid + if r.get("sourceType") == "builtin" and builtin_id is None: + builtin_id = cid + state["builtin_id"] = builtin_id + state["any_conn_id"] = any_conn_id + print(f" -> builtin_id={builtin_id}, any_conn_id={any_conn_id}") + + record("list_datasource_configs", await call("list_datasource_configs", {"pageSize": 5})) + + if any_conn_id: + record("get_connection", await call("get_connection", {"id": any_conn_id})) + record("realtime_databases", await call("realtime_databases", {"id": any_conn_id})) + record("realtime_structure", await call("realtime_structure", {"id": any_conn_id})) + else: + for n in ("get_connection", "realtime_databases", "realtime_structure"): + RESULTS.append((n, "SKIP", "no connection available")) + + # ---- 2. create a builtin PostgreSQL connection ---------------------- + print("\n=== 创建内置连接 ===") + created = record( + "create_builtin_postgresql", + await call("create_builtin_postgresql", { + "datasourceName": PREFIX + "conn", + "remark": "self-test connection", + }), + ) + conn_id = dig(created, "data", "id") + if conn_id is None and builtin_id: + conn_id = builtin_id # fall back to an existing builtin for downstream tools + state["conn_id"] = conn_id + print(f" -> conn_id={conn_id}") + + if conn_id: + record("update_builtin_database", await call("update_builtin_database", { + "connectionId": conn_id, + "datasourceName": PREFIX + "conn_renamed", + "remark": "renamed by self-test", + })) + record("get_connection", await call("get_connection", {"id": conn_id})) + + # ---- 3. external connection: test/create/update/status/delete ------- + print("\n=== 外部连接测试(依赖真实可达的库,可能失败属正常)===") + # Try to spin up a local Docker Postgres mock. If Docker is unavailable or + # the backend cannot reach the host IP, fall back to 127.0.0.1 and keep the + # round-trip assertion (we still verify the tool round-trips). + mock_host = "127.0.0.1" + try: + mock_host = start_mock_db() + print(f" -> mock DB available at {mock_host}:5432") + except Exception as e: # noqa: BLE001 + print(f" -> could not start mock DB, using 127.0.0.1:5432 ({e})") + + # test_connection_config / test_connection rely on datasourceType default now + record( + "test_connection_config", + await call("test_connection_config", { + "host": mock_host, "port": 5432, + "username": "postgres", "password": "postgres", + }), + mode="roundtrip", # may still fail if backend cannot reach mock_host + ) + + # create_connection (external) — exercises datasourceType/connectionType defaults + ext = record( + "create_connection", + await call("create_connection", { + "datasourceName": PREFIX + "ext", + "host": mock_host, "port": 5432, + "username": "postgres", "password": "postgres", + "remark": "self-test external", + }), + mode="roundtrip", + ) + ext_id = dig(ext, "data", "id") + state["ext_id"] = ext_id + print(f" -> ext_id={ext_id}") + + if ext_id: + record("update_connection", await call("update_connection", { + "id": ext_id, "datasourceName": PREFIX + "ext_renamed", + "remark": "renamed", + }), mode="roundtrip") + record("test_connection", await call("test_connection", { + "id": ext_id, "host": mock_host, "port": 5432, + "username": "postgres", "password": "postgres", + }), mode="roundtrip") + record("change_connection_status", await call("change_connection_status", { + "id": ext_id, "status": 1, + }), mode="roundtrip") + else: + for n in ("update_connection", "test_connection", "change_connection_status"): + RESULTS.append((n, "SKIP", "no external connection id returned")) + + # ---- 4. DDL on the builtin connection ------------------------------ + print("\n=== DDL:库/表 ===") + ddl_conn = conn_id or builtin_id + db_name = PREFIX + "db" + tbl_name = PREFIX + "users" + cols = [ + {"columnName": "id", "columnType": "BIGINT", "isPrimaryKey": True, + "isNullable": False, "columnComment": "主键"}, + {"columnName": "name", "columnType": "VARCHAR", "columnLength": 100, + "isNullable": False, "columnComment": "姓名"}, + {"columnName": "age", "columnType": "INTEGER", "isNullable": True, + "columnComment": "年龄"}, + ] + if ddl_conn: + record("create_database", await call("create_database", { + "connectionId": ddl_conn, "databaseName": db_name, + "encoding": "UTF8", + }), mode="roundtrip") + record("create_table", await call("create_table", { + "connectionId": ddl_conn, "databaseName": db_name, + "tableName": tbl_name, "tableComment": "self-test 用户表", + "columns": cols, + }), mode="roundtrip") + record("realtime_tables", await call("realtime_tables", { + "id": ddl_conn, "databaseName": db_name, + }), mode="roundtrip") + record("create_database_table", await call("create_database_table", { + "connectionId": ddl_conn, "databaseName": PREFIX + "db2", + "encoding": "UTF8", + "tables": [{"tableName": PREFIX + "t2", "tableComment": "二号表", + "columns": cols}], + }), mode="roundtrip") + record("alter_table", await call("alter_table", { + "connectionId": ddl_conn, "databaseName": db_name, + "tableName": tbl_name, + "operations": [{"operation": "ADD_COLUMN", "column": { + "columnName": "email", "columnType": "VARCHAR", + "columnLength": 255, "isNullable": True, "columnComment": "邮箱"}}], + }), mode="roundtrip") + record("alter_database", await call("alter_database", { + "connectionId": ddl_conn, "databaseName": PREFIX + "db2", + "newName": PREFIX + "db2_renamed", + }), mode="roundtrip") + else: + for n in ("create_database", "create_table", "create_database_table", + "alter_table", "alter_database"): + RESULTS.append((n, "SKIP", "no builtin connection for DDL")) + + # ---- 5. find the table id, exercise execute_sql + builtin CRUD ------ + print("\n=== SQL 执行 + 内置表数据 CRUD ===") + # locate a datasource config id + table id for our table + cfgs = await call("list_datasource_configs", {"datasourceName": PREFIX, "pageSize": 20}) + cfg_rows = cfgs.get("rows") or dig(cfgs, "data", "rows", default=[]) or [] + datasource_id = cfg_rows[0].get("id") if cfg_rows else None + state["datasource_id"] = datasource_id + + table_id = None + if ddl_conn: + detail = await call("get_connection", {"id": ddl_conn}) + for ds in dig(detail, "data", "datasourceConfig", default=[]) or []: + for t in ds.get("tables", []) or []: + if str(t.get("tableName", "")).startswith(PREFIX): + table_id = t.get("tableId") or t.get("id") + break + if table_id: + break + state["table_id"] = table_id + print(f" -> datasource_id={datasource_id}, table_id={table_id}") + + if datasource_id: + record("execute_sql", await call("execute_sql", { + "datasourceId": datasource_id, + "sql": "SELECT 1", + "databaseName": db_name, + }), mode="roundtrip") + else: + RESULTS.append(("execute_sql", "SKIP", "no datasource config id")) + + if table_id: + record("builtin_table_insert", await call("builtin_table_insert", { + "tableId": table_id, "data": {"id": 1, "name": "张三", "age": 25}, + }), mode="roundtrip") + record("builtin_table_data", await call("builtin_table_data", { + "tableId": table_id, + }), mode="roundtrip") + record("builtin_table_update", await call("builtin_table_update", { + "tableId": table_id, "data": {"name": "李四", "age": 30}, + "primaryKey": {"id": 1}, + }), mode="roundtrip") + record("builtin_table_delete", await call("builtin_table_delete", { + "tableId": table_id, "primaryKeys": [{"id": 1}], + }), mode="roundtrip") + else: + for n in ("builtin_table_insert", "builtin_table_data", + "builtin_table_update", "builtin_table_delete"): + RESULTS.append((n, "SKIP", "no table id found")) + + # ---- 6. AI generate + document import (preview/confirm) ------------- + print("\n=== AI 生成 + 文档导入 ===") + record("generate_table", await call("generate_table", { + "requirement": "一个简单的待办事项表,含标题、状态、创建时间", + "databaseId": datasource_id, + }), mode="roundtrip") + + # build a tiny CSV for import preview + csv_path = os.path.join(tempfile.gettempdir(), "selftest_import.csv") + with open(csv_path, "w", newline="", encoding="utf-8") as f: + w = csv.writer(f) + w.writerow(["name", "age", "gender"]) + w.writerow(["张三", "25", "male"]) + w.writerow(["李四", "30", "female"]) + + preview = None + if ddl_conn: + preview = record("import_document_preview", await call("import_document_preview", { + "connectionId": ddl_conn, "filePath": csv_path, + }), mode="roundtrip") + ts = dig(preview, "data", "tableStructure") + all_data = dig(preview, "data", "allData") + if ts and all_data: + record("import_document_confirm", await call("import_document_confirm", { + "connectionId": ddl_conn, "tableStructure": ts, "allData": all_data, + }), mode="roundtrip") + else: + RESULTS.append(("import_document_confirm", "SKIP", + "preview returned no tableStructure/allData")) + else: + for n in ("import_document_preview", "import_document_confirm"): + RESULTS.append((n, "SKIP", "no builtin connection")) + + # ---- 7. datasource config batch ops -------------------------------- + print("\n=== 数据源配置批量操作 ===") + if ddl_conn: + record("batch_create_datasource_configs", await call( + "batch_create_datasource_configs", { + "connectionId": ddl_conn, + "datasourceNamePrefix": PREFIX + "cfg", + "syncTables": False, + "databases": [{"databaseName": db_name, "tableNames": []}], + }), mode="roundtrip") + else: + RESULTS.append(("batch_create_datasource_configs", "SKIP", "no connection")) + + if datasource_id: + record("get_datasource_config", await call("get_datasource_config", { + "id": datasource_id}), mode="roundtrip") + record("change_datasource_status", await call("change_datasource_status", { + "id": datasource_id, "status": 1}), mode="roundtrip") + record("batch_update_datasource_configs", await call( + "batch_update_datasource_configs", { + "syncTables": False, + "datasources": [{"id": datasource_id, "tableNames": []}], + }), mode="roundtrip") + else: + for n in ("get_datasource_config", "change_datasource_status", + "batch_update_datasource_configs"): + RESULTS.append((n, "SKIP", "no datasource config id")) + + record("export_datasource_configs", await call("export_datasource_configs", { + "datasourceName": PREFIX}), mode="roundtrip") + + # replace_datasource_configs intentionally skipped (destructive) + RESULTS.append(("replace_datasource_configs", "SKIP", + "destructive full-replace, skipped by design")) + + # ---- 8. cleanup ----------------------------------------------------- + print("\n=== 清理 selftest_ 资源 ===") + # delete selftest datasource configs + cfgs2 = await call("list_datasource_configs", {"datasourceName": PREFIX, "pageSize": 50}) + cfg_rows2 = cfgs2.get("rows") or dig(cfgs2, "data", "rows", default=[]) or [] + del_ids = [r.get("id") for r in cfg_rows2 if r.get("id") is not None] + if del_ids: + record("delete_datasource_configs", await call("delete_datasource_configs", { + "ids": del_ids}), mode="roundtrip") + else: + RESULTS.append(("delete_datasource_configs", "SKIP", "nothing to delete")) + + # delete selftest connections + deleted_conn = False + for cid in (state.get("ext_id"), conn_id): + if cid: + record("delete_connection", await call("delete_connection", {"id": cid}), + mode="roundtrip") + deleted_conn = True + if not deleted_conn: + RESULTS.append(("delete_connection", "SKIP", "no selftest connection to delete")) + + try: + os.remove(csv_path) + except OSError: + pass + + try: + stop_mock_db() + except Exception as e: # noqa: BLE001 + print(f" -> failed to stop mock DB: {e}") + + # ---- summary -------------------------------------------------------- + print("\n" + "=" * 60) + print("自测结果汇总") + print("=" * 60) + all_names = {t["name"] for t in ALL_TOOLS} + counts = {"PASS": 0, "FAIL": 0, "SKIP": 0} + for name, status, detail in RESULTS: + counts[status] = counts.get(status, 0) + 1 + for name, status, detail in RESULTS: + print(f" [{status}] {name}: {detail}") + untested = all_names - TESTED + print("-" * 60) + print(f"工具总数: {len(all_names)} 覆盖: {len(TESTED)} 未触达: {sorted(untested)}") + print(f"PASS={counts['PASS']} FAIL={counts['FAIL']} SKIP={counts['SKIP']}") + + +if __name__ == "__main__": + asyncio.run(main()) diff --git a/lzwcai_mcp_agile_db_third/uv.toml b/lzwcai_mcp_agile_db_third/uv.toml new file mode 100644 index 0000000..719a3e2 --- /dev/null +++ b/lzwcai_mcp_agile_db_third/uv.toml @@ -0,0 +1,4 @@ +[[index]] +name = "pypi" +url = "https://pypi.org/simple/" +default = true diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter.log b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter.log index 46fc2d7..adc5e4c 100644 --- a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter.log +++ b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter.log @@ -94,3 +94,11 @@ 2026-03-18 18:16:52 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:220] - 文件输出: True 2026-03-18 18:16:52 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:221] - 文件轮转: 最大10MB, 保留5个备份 2026-03-18 18:16:52 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:222] - ================================================================================ +2026-06-16 10:55:20 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:215] - ================================================================================ +2026-06-16 10:55:20 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:216] - 日志系统初始化完成 - 2026-06-16 10:55:20 +2026-06-16 10:55:20 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:217] - 日志级别: INFO +2026-06-16 10:55:20 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:218] - 日志文件: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcp_api_converter\lzwcai_mcp_api_converter.log +2026-06-16 10:55:20 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:219] - 控制台输出: False +2026-06-16 10:55:20 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:220] - 文件输出: True +2026-06-16 10:55:20 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:221] - 文件轮转: 最大10MB, 保留5个备份 +2026-06-16 10:55:20 - lzwcai_mcp_api_converter.src.util.logger_config - INFO - [logger_config.py:222] - ================================================================================ diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/__pycache__/__init__.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/__pycache__/__init__.cpython-312.pyc index 1d712163423cec82d83d0a763e15c8a4c04868eb..ef8a8fcbbebd4f01daf20c881858b8f633adf0cc 100644 GIT binary patch delta 25 fcmcc0c$JaoG%qg~0}%Y0sh>5GXF21oiCYu_V&n)} delta 25 fcmcc0c$JaoG%qg~0}u$WHO-jFvz+nQ#4U;dS(XQ? diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/__pycache__/__init__.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/__pycache__/__init__.cpython-312.pyc index 748969bd0ee2e79f83b9e25eaaad4c96daaeb722..24df722d428f7dca85eb51abf8ceeb76c029b42a 100644 GIT binary patch delta 63 zcmey&c$1OmG%qg~0}%Y0sh>5G$B40FqP^|JY1T@&IBatBQ%ZAE?TT1|(u_b{3}Sp_ LW@Kb6Vg|ARKpqbb delta 33 ocmcb~_?eOCG%qg~0}u$WHO-jFW5hUVqP^|Jq)^6R6L%;A0GyQyLjV8( diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/business/__pycache__/__init__.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/business/__pycache__/__init__.cpython-312.pyc index 7f75b3b542e0cd2aed210d4ea1dc21b95661486c..f457cb6835b4a8750ed0d6a3464ec274fe116265 100644 GIT binary patch delta 33 ocmeyv_=u6`G%qg~0}%Y0sh>5G$B40UqP^|JX)cVnCf-&A0IyFAIRF3v delta 33 ocmaFF_=l0_G%qg~0}u$WHO-jFW5hUnqP^|Jq&UW36Avl^0H28pZ~y=R diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/business/__pycache__/business_util.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/business/__pycache__/business_util.cpython-312.pyc index a6a7be83a289b615357f797c61c3e11f990bb4fd..98c7801aa29c8c690dd2fb56c426ffef251138d5 100644 GIT binary patch delta 557 zcmaEPm~r}HMxN8Wyj%=G@N1@i)<&MqGK?;h56JlQe-vVnQTxoyEY5aQT6KczWEoi* z_8C?mm>F0_CfmzqGGCK1n7l#Ol$k-+aPtdU2Nr=HKr~n6sy+&z*?*Q={Q=Rd9PS^%YMIm|co?%M zOB+csUlTE%Y-^;;%phvEIoD_*3-dJ45#+!xQj-@(icJ=^lLH%Q zZRg8;O)X&Z1iLgT2K7M34?+x_qSra3FLFrFaJtGN|3MyPz+^sqCFW~lMw2bYDZI<>v#=`L)91verfc7X)<_S;%+hZAE#e7X8 zXmU+J5GR9XFyjYKpt+l`2PiW$E}Z;3Sc&#tfogBq&>6<+a%1c!Ni@!=>M|({n=FjKmeGI~=d_*nMYa;Iq8IYXS5ti_~{E Tp!yFCK;qYT35fV)-^4ip^SG%x delta 654 zcmXw$TS!zv7{}*0JL}AP&e>e{esOPJQrNPMHM2U~N~Uh+E*iuJf>BCBktn?j5v@;2 z^U#KY1{Hz?#Ubz^K@bAzrEL?>Lk|Y^&`XTdWkCs=qckx5=HoZ>ALg4!>(cjiNq(;= zHXw#NGC1*C)`LDxQW1T|kwy2C zT#lw*-6%)XYpzY)y8}(9|7`Ng;)tB|zPvr$#xW>G3_F*H0L>}B`TfL#=U}~ImESv17#d2b#LM@3!6K+7Q+>H zk^_husVChD1@)nHN1e1lXR|$c+Zo~jq2siijY2{FclMn{+M{oCgJl09GU}G7lJ6pw z!$TZkBC2eDh?omTgw&ts<4}4*H-=-_s1I;p6&L*&J_!Z&wo9Ez{N1%e&q0`5G>|SA zTFJJ*l>-M6)mGsdF&B&oso%Zwu*S8EPv5$I{m#uXZR(BqJxR>zu--Ou8ODDRq}mv; zl4fQDs@?F#O3nq}W8dPj`Cu_yRfM1mqw(%fN+$ynNv~uK*;PFEpntZ1ZoG7LX>294 cDQi_I)V^n7(f6v=%rirGtKR>H?u|bA2cqA@6#xJL diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/business/__pycache__/get_business_api.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/business/__pycache__/get_business_api.cpython-312.pyc index eb2aa08f68b16f98d62ed8b2fa0b2b279ae72e3a..454f833153d04d9031fe14f8906bb5cab970e050 100644 GIT binary patch delta 50 zcmbQ~G{uSMG%qg~0}%Y0sh_oxM?iwnXtJzCBJ*v2smW~;ddv(0(wnzSOkrodHQ7hu FEC5@k4srkh delta 55 zcmbQ@G}DRaG%qg~0}z-d`(;T>JtMKtIgy_2|Z>Yy?K+w6n4g6 Jlid~00swvO4*CE9 diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/core/__pycache__/__init__.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/core/__pycache__/__init__.cpython-312.pyc index c6c70a9b7559e2ab6872cea94fab5d1cf5a176a2..56e29c9bd70985532c9c3b6c08f0c807d0119697 100644 GIT binary patch delta 33 ocmeytc#o0iG%qg~0}%Y0sh>5G$B40ZqP^|JX%39HCSF$r0ImNEB>(^b delta 33 ocmcb|_=Az>G%qg~0}u$WHO-jFW5hUpqP^|Jq$tK;6Za|t0G>GtTmS$7 diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/core/__pycache__/api_auth_service.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/core/__pycache__/api_auth_service.cpython-312.pyc index 9237dde2e991552ce7205827975fac7ad8672a10..0b38a7ee13357b8153e10151ae218eae7e847f0f 100644 GIT binary patch delta 220 zcmbPvj_Kc7CZ5y0yj%=G@N1@i)E}2=F_m{yDI2)BJqZj#&Vs7I?MDXCu=B*Fen=W4G{8X{J_Q_BJrIa#N0ehBie$| zYVxOq2ckE1Z7xd&uZ&;ddVuvr=p~1sS*k1IH$O`Z(q)`9*|J}Y`I?-~X^wHeC9G5dZ?NNlE|! delta 247 zcmex&mTBfWCZ5y0yj%=GpwYf6b0d!vFXO|>{=EL24@BfXF>rFaF-~5{o6Z7aZ06=W zA)`z$$sl0! zK?2PFE)EpmJV7OonQ`Of|LV39R|LI2Ffj2NoJhQ(q_JFQq0VBxPYjHL29v!s6or8F zcV?jE2Q~%~iSO({*5-PRXbVQm$+r_8h}_V%xh5IB!1Vy@iO@?9L9b8_%%~MYa`E6KE_*K z)%cZ}Sb##GH~R|y5o7#0*-ImY`I?B<5JiFVGC<^REIL)xhvUj+N7a@s6PA z1u?A^&O6kv3OXG~ydxkoopU1R43+CrdKabiHZUGwJ&|}-AmBSQgOD@h6CR;{pH80( zl5SUd+`qGegf0j=ZT7dY5@Kwc+~sA)d__!a@(C|}W(INX&A+_3v{j;FQ>G;-AU^^w+HLX8`s~P?G=v delta 237 zcmeycfw5sDBhP7GUM>b8(73OkxshinALFmdoA_)vJ~6P!ay<|bnf!xKoAo0zkh58h zUzv&JfrRpx&Ax(v#2Eig_R*&Y0wRs2&qfd1(Ue+B@N`bW$F diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/core/__pycache__/core_server.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/core/__pycache__/core_server.cpython-312.pyc index 8af1df126bdd4541ef9480af29a5c2dab2018438..0a969513706f122fd4de464a451ba2b11fa3a43d 100644 GIT binary patch delta 584 zcmdmbn(6W>CZ5y0yj%=G@N1@i)<&KXK1Qv{iF|uxt_qs(FuWrmGM#fG=M2pSfg3^( z7+w`{{m#rFWHH%+Ux^J!Ul26koWp;BiSgECT_G0*S)eIDUNHPS92{cBQ&P*Ee0sOoho zt&37x*Q9hnqRb4^x|`MYXR=6qU|<&JdMK_nf%yY71FygZ;gBmlAveXfCf_j5W4R)( z^?9?Gi4K!w0MHu^3?C#I_{BSzZ%6@6)4nLBeN9St@)R>eplN!WPng+oGWJYnbx>t~ zEGoa*$ia`1nL$ipbF-tkIAiVR*%6zVnC9hA4vE%gVvyh57`=|0F<`Pmx(L&>*va1M zra-mIo14?uvq}~)LamaN?%;hOrG8yX_o9?8&{LBGbETLc%P3AR$z9CMAgeT4IEh+|9-vZH&AqDkh)lbc2h01nJqV Q+BH*>@z&=3i@z}f0BK9Q8UO$Q delta 664 zcmZvZO=uHQ6oucNnYNiE(*gIg+F}=S-2>;vzx|=q=;g0$%zRj9 z?CXMHMaFwtc%6E0k9Wc_Np^nZ%dX=!1i}Q6UPlktgqXu`HKFCxq+^YN9pdjAS7f8V z@f$T3&==oiF`0Meuf0@qWAElPIacybl5E#kc5SdsuZX#JaFd1ofIND&Z{FQp%xD+Ok#aQl86w=sUXOrPEH+u$%MW_!ggmT_CR(G>8b#>JaLer10KnzZZd rEx%D41tgz=Mr{n5G5zr%3*tVN*Q6c(aet(^(XVHWiT@+8Emdl+s46oYqP$- G1tS2l=MUfj delta 56 zcmaEq@H~O%G%qg~0}xmw`(yyBBN)H0ZX^yXr5G$B40ZqP^|JX%39HCSF$r0ImNEB>(^b delta 33 ocmcb|_=Az>G%qg~0}u$WHO-jFW5hUpqP^|Jq$tK;6Za|t0G>GtTmS$7 diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/util/__pycache__/api_helper.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/util/__pycache__/api_helper.cpython-312.pyc index abe44b08cf345b5fc85433a638e7babd50f97f7b..b239eb8d458e1cc4df90c5770d5873f8f0981aa8 100644 GIT binary patch delta 21 bcmdm7wYiGtG%qg~0}%Y0sh_oxN8J_xP(B8u delta 21 bcmdm7wYiGtG%qg~0}xD(^2^-FqizcTOacZQ diff --git a/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/util/__pycache__/logger_config.cpython-312.pyc b/lzwcai_mcp_api_converter/lzwcai_mcp_api_converter/src/util/__pycache__/logger_config.cpython-312.pyc index 3c1dd2394ca45eafeb49e2fd277c178257294952..d6f06e01aa591009f3137ac5ec7a57a15c3cd31b 100644 GIT binary patch delta 120 zcmV-;0Ehqem;v;d0SwCx4GI7N008=#FKV$2#2Nw7lhGQh7t48%004jh@E`yb7?(MbIj~l@T(MlVUep~#v0kZEs8O&1pb?-0 apfR9PphKE!uwK%$_bLt`0ot<$OK$-!A}pBz delta 121 zcmV-<0EYkcm;v>e0SwCx4GI7N002l!3~8|p#2NwClhGQh9MBgr@&Ew|GKfdm3>w!A zDA5cks29}?G4KNc3A2+MG7l|M0001h0Pr9H6d0E|kvXtdw_LGYvtHL7M5$D$QLq7^ b5ugL0F`!YPLz-&Sv-T-ZKIPa1^MRjn_T<0(wv!bEsu;63&la#} stdio 模式下 stdout 被 MCP 协议占用,所有日志写入 `logs/` 目录与 stderr。 + +## 数据契约(QuoteData) + +```json +{ + "project_title": "大米罐装线", + "contact_person": "张经理", + "contact_phone": "138-0000-0000", + "requirements": ["要求1", "要求2"], + "layout_image": "", + "layout_title": "整线布局尺寸图", + "equipments": [ + { + "index": "四", + "name": "自动理瓶机", + "images": [""], + "features": [{"title": "特点", "lines": ["说明"]}], + "params": [{"k": "材料", "v": "不锈钢"}] + } + ], + "quote_items": [ + {"name": "设备名", "qty": "一套", "image": "", "desc": "说明", "price": "面议"} + ] +} +``` + +图片字段约定:路径/URL → 真实图;`""` → 默认占位图;`None` → 不显示。 + +## 目录结构 + +``` +lzwcai_mcpskills_generate_reports/ +├── pyproject.toml +├── README.md +├── templates/ # 用户模板(示例,不在包内) +│ └── standard/ +│ ├── template.docx +│ └── meta.json +├── samples/ # 示例数据(不在包内) +│ └── sample_data.json +└── lzwcai_mcpskills_generate_reports/ # Python 包 + ├── __init__.py # 公共 API 入口 + ├── cli.py # 命令行 + ├── pipeline.py # 总入口 + ├── schema.py # 数据契约 + 校验器 + ├── render_quote.py # 渲染引擎 + ├── style_transfer.py # 样式迁移 + └── template_scanner.py # 模板占位符扫描 +``` + +## 模板约定 + +- 使用 [Jinja2](https://jinja.palletsprojects.com/) 语法写占位符,如 `{{ project_title }}`、`{% for eq in equipments %}`。 +- 模板文件旁的 `meta.json`(可选)声明图片字段宽度,例如: + +```json +{ + "image_fields": { + "layout_image": {"width_mm": 160}, + "equipments[].images[]": {"width_mm": 120}, + "quote_items[].image": {"width_mm": 30} + } +} +``` + +- BUSINESS 逻辑(内置模板维护、模板市场等)交给包外的上层系统处理。 diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/.python-version b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/.python-version new file mode 100644 index 0000000..e4fba21 --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/.python-version @@ -0,0 +1 @@ +3.12 diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__init__.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__init__.py new file mode 100644 index 0000000..84f9022 --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__init__.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +""" +lzwcai-mcpskills-generate-reports + +纯渲染引擎,不内置模板。 +对外暴露的公共 API: + - generate: 数据 + 模板路径 -> docx(核心入口) + - scan_template: 模板路径 -> 占位符 JSON + - validate: 校验数据契约 + - normalize: 归一化数据 + - transplant_style: 将用户模板样式迁移到结果文档 +""" + +__version__ = "0.1.0" + +from .pipeline import generate +from .template_scanner import scan_template +from .schema import validate, normalize, DEFAULTS +from .style_transfer import transplant_style + +__all__ = [ + "generate", + "scan_template", + "validate", + "normalize", + "transplant_style", + "DEFAULTS", + "__version__", +] diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/pipeline.cpython-312.pyc b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/pipeline.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0fee5cb57e8a5e1b8ad3aecbccce5957ff8ba133 GIT binary patch literal 4112 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 H%ewvx;Qfe= literal 0 HcmV?d00001 diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/render_quote.cpython-312.pyc b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/render_quote.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6c9bfae306e6edab1d7cb8911e423a8a15507788 GIT binary patch literal 7520 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 literal 0 HcmV?d00001 diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/schema.cpython-312.pyc b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/schema.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d257a11e25325baa278697a882ce43a6c62e1a7f GIT binary patch literal 5816 zcmb7IYg7|g9-qmZB!u@vp&F^ESV2*2Eg}^aEA@$Bx9clSGb02;f-@6E&SW>fPKk|& z(4~TkHFUMcS`~J?Eh4-0d;Jhh;N;BdhdoCU;FGkv=j?vl|D9yQprMa@PHyhwKmW(? zzJB-qkesZ>Abs)S>ZaCo410LZ`^M=sqD z-|Czk`tqssOvKwa{gpd>#Rui^KR=xqbcWrRpE}Q~)e)C7((8)&`Xbjy!WRZ6yL@4f z8};*_J{xvN{x$-QdWvkZQ4C$CpS*frUsttz->zzX_+EG9{y!!k{U!4Gd8BL_MYPAB z1$pGNZzhLE!h`3+1I}>&Q24=M_}ahfizJ-ZVmxiLGX}=YSV&GoH`-1aqD@7ab_5C7 zj{Xn1V|5q*AHH@i*4`DZU$__RKNqXtjn*GtkJc}pu`57d_|h4qQYeB}p*ZLgib%K6 zI@Bc;!(c&Z9Xux#!x!!f#R)Kl1SW>uU}YM4Z^9uHQW6wU<8zN3jc^0zzzKXCc4QBR zIV3FBB$kbR!%FVPS{+hWdZv&OW(meh8JVE?t|VHbarbgo+N2cPXaDcUiiG6&3Je3e zjV#`T{CO!6QdV*eyB@cSWA1%2EU|BdtN{}&J7glyWDGyck!qoz&X~uZT!;_HJh=5s zCRuQZl?grDpyx<8h8>0|9dd_4WJ$s31o^n7?0GCHSot-KP+pe`dLg!AR*?vGLM6!1 zS-+?)Nvuuedt$BXS-b@OF#6tDWJ-rh6qzbPWD9=L7Y(cA;}aq3Ud^f!#-|nR)49Jv zXYzHC&UrNI1dWtl97RIwaoJbr35B~|zrmvvu}AJNWZ17_pPCSRa~%65k=IGT8~e0` z*e4~7K0S_9I-6J`BQAlv_x~aqQM;LQ&^RuG_2Rxd@2bt3MZ%#LMXi2yH0E8k*@A~S z#^QBi^wmNS%zp6c^G8*ZPxGqh>id39>! z<7dMz{utFmiu~0XxpAvpjmjt$>%$`#!hLtA`@RhioQ)oq<@y%N)}HB=CanxDQjA(#_(pyB!nw(ByyeK&bl)R5%k@@cGbxfi zfk=VD%#h9WuL~a|jf|Zl6G`$Xwm$r+TW>L2NwGIAM#`8_`Eg$SB=1a-j7y#qJExl) zJC_`RDLq3qg9e8bb#pqhr{n zne97dPXpN_B9R9Vrv~~s8N$(y&Zi^#NwC%5$s^0D1dQ4=M@oe9Ax_TYV@KyxTs}&2 zu$sseha0+8f3uz@dnZ-;qToP%u zH~7DM*U4Q8Xt%W+p8JCp~Gja8mLF&EaNFLZ0C8CQgO`;_wzu z&QCy2VrFP9xXLe(SoR+)G*p)#KHXSsG#`%5k;9g@QzoOim~K1W5HA}oBz??ou@uuJ zb<%7i4>vXw#lY^SyY5eR-H5b%A{TE>Jo+wj`C+85{cr#`0G8 zZ~d-jpyuy8zh4_Ds}5F?t+T1=DDvBI^&Q{hby zsFymo{;0|Fn0m{C8huEm>qvGb`?J@MtJY0qE$X4WkGiVctJiz*}&8S>G~WZvWaq!JFf`Z*|JR(^BN=lAHCxoRxF66b)7l zuJc#!^%v|5X4dka=62gV?LBo}ZN9VzS$DF0^u2`%zu5ymk7e%rS%WRuFtY^9UOKY| zOHS+9;o9Lj;@uL^E_YU=@gaNbgPMZ)_^b=6%4X6rZMt*!ixez-agTjGt8l)N()wzB zTm7py`xjLOQ@4mm>a+Mr@iIP#f6=C~)XEtRmc497$E$x1^KkAJ0$nfoE5v2UyD=ty zWoU|B0nishVzIlzv?wNMaZv zJ&&=HZJ2P`5OlL}&8Yyf*@M3cZLu#U;VU2xDKX+8b;wvLi=V{d!lGeiEY3=i9(NiL zz6{~>c_I^CP6R(d^WHcmQ2_N%gh-s~0*%OJ<%FUQ3^AF4HB@sbStXMrv@p3sNw9Mq z4jW24+s-OM3tWlNwqjK?Xlv#Zs}#Oq6@;9RtQL`xgnlV!X&b}={y0=X#nB=7QX*7D zk}y(m#mSymqX;3;2)A?x!X%MKHIdYSi*)7y{_*(d@mHi>h|-b7Ce1}MimpTbO1p-~ zS;MMl?abmS=z9fc^*lJoNh!=kEy9`A{4TwkdGu-oPe5-nuNM(Xo&7wRh(D`DpI+cK z2B;tKhRNPDVdpTsyNKxwP$-%yu7uMTI?PsrY~?8i(3$RUr#}8Fe9<@6cPmaTCk8J~ zjNFfOJq%yC74A42=cbX%{bARGNblE35*?-#x`%VPdd@2ZdNo)FKmMI*Cx*i|!tzVb zfzNIyY0#_mZ^;YIkKBAh~_53e_pk~JLON~668tQEl@msEky+13`S zvMt|gqnhDdZ6ix6EH;zTLRXf=dkr8=qo<)M?7vRTUsyh1>QB3A@-4Z2Y{2wC8hLp( zD+i|#I{>zTFquZX8HJW2G&CCaF!Pd-oXjZr@&4UC&7^q?J<}w(c=(t9iEuWD!i9nkE^7JZ7|8fGSaFeQ`Lj zBN%@Q-T*NQ?POE|%3eo(QZvy?!6OaEsmK!slg(}g$`xa4L@SpfiopP)uh6I1FvPK^ zc7Uz}@S|@7eopL#8cRw>Ov6J2RC&&-83m@%b`-h_J-UE;F)$Kkn&b8Nd;*2#f&B7zyuD;pwcv#UOIy&b>(q^>>RmEuEDdS2o~n!Gp^Qu*Eyj!6 zX5?7f60nw@*He09{gw6Jd><9aTRWb%&Ls!=wV{->j+3sFo`y?*4y9*!jGcwOt4Gs| z+P8*E%Z8=H?>$O+Qu=Q1N^hO7wC@j378XCQ^Vin@@Im{Q_EQ&kB0g0HbSfpagLILe z-QKn1x@GN>kV?&m*3d(ZsS0MKSjzGll_0dsTQIIGoE2*Hrh8>$szM~T?1c(T&G3|V zukT#nlkcSh87l)RZ#Z|riQW6oXzEH|?PzL=vnG_i=;q?l>^1$RquFK7y`hTg#~F_g z{;>E-#Rt7@zM_8Po#H2pHw2Fw{U03<9JM&B{EEC$S$=3sZScSc!9SV;2Z$$I2oPO8 zST(wG)04%O!KP-v)e&g=lOX$Vjn=t?dIJWmNXaP;2Et}C7^t_QPHjTjW|UQ;3{h2n zbnjrie01bh70ounZXqkFozRb#4E+{lGg2JKf0D^?*>g39YXOz4RiTWWpX5@l#HspO cE7eJyY5+7N)0y(K;%z+rc`LpQPv#Z>ANU&?>Hq)$ literal 0 HcmV?d00001 diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/style_transfer.cpython-312.pyc b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/__pycache__/style_transfer.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5fd70bef93fb3385fd7914c41ccb116c683cf047 GIT binary patch literal 8814 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 literal 0 HcmV?d00001 diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/cli.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/cli.py new file mode 100644 index 0000000..ba20c2c --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/cli.py @@ -0,0 +1,122 @@ +# -*- coding: utf-8 -*- +""" +cli.py:公共入口。 + +程序调用(推荐): + from lzwcai_mcpskills_generate_reports.cli import generate_report, scan_report + + generate_report( + template="./模板.docx", + data={"project_name": "x", ...}, + out="_out/a.docx", + ) + scan_report(template="./模板.docx") + +命令行: + generate-report generate --template ./模板.docx --data data.json --out _out/a.docx + generate-report scan --template ./模板.docx +""" +import argparse +import json +import os +import sys + +try: + sys.stdout.reconfigure(encoding="utf-8") +except (AttributeError, OSError): + pass + +from lzwcai_mcpskills_generate_reports import generate, scan_template + + +def _load_data(data): + """把 data 归一化为 dict:支持 dict 或 JSON 文件路径字符串。""" + if isinstance(data, str): + if not os.path.isfile(data): + raise FileNotFoundError(f"数据文件不存在: {data}") + with open(data, "r", encoding="utf-8") as f: + data = json.load(f) + + if not isinstance(data, dict): + raise TypeError(f"data 必须是 dict 或 JSON 文件路径字符串,实际类型: {type(data).__name__}") + return data + + +def generate_report(template, data, out, style_ref=None): + """生成 docx 报告。 + + 参数: + template: 模板 docx 文件路径 + data: dict 数据 或 JSON 文件路径字符串 + out: 输出 docx 文件路径 + style_ref: 用户样式参考 docx 路径(可选) + + 返回: + dict: {"output": 输出文件绝对路径} + """ + data = _load_data(data) + out = generate(data=data, template=template, out_path=out, style_ref=style_ref) + return {"output": out} + + +def scan_report(template): + """扫描模板占位符。 + + 参数: + template: 模板 docx 文件路径 + + 返回: + dict: 占位符扫描结果 + """ + return scan_template(template) + + +def _build_arg_parser(): + parser = argparse.ArgumentParser( + description="docx 模板渲染与占位符扫描", + formatter_class=argparse.RawDescriptionHelpFormatter, + epilog=""" +示例: + generate-report generate --template ./模板.docx --data data.json --out _out/a.docx + generate-report generate --template ./模板.docx --data data.json --style-ref 用户样式.docx --out _out/b.docx + generate-report scan --template ./模板.docx + """, + ) + sub = parser.add_subparsers(dest="command", required=True) + + gen_parser = sub.add_parser("generate", help="渲染生成 docx") + gen_parser.add_argument("--template", required=True, help="模板 docx 文件路径") + gen_parser.add_argument("--data", required=True, help="数据 JSON 文件路径") + gen_parser.add_argument("--out", required=True, help="输出 docx 文件路径") + gen_parser.add_argument("--style-ref", default=None, help="用户上传的样式参考 docx(可选)") + + scan_parser = sub.add_parser("scan", help="扫描模板占位符") + scan_parser.add_argument("--template", required=True, help="模板 docx 文件路径") + + return parser + + +def main(): + """命令行入口(console_scripts 调用)。""" + parser = _build_arg_parser() + args = parser.parse_args() + + try: + if args.command == "generate": + result = generate_report( + template=args.template, + data=args.data, + out=args.out, + style_ref=args.style_ref, + ) + print(f"生成成功: {result['output']}") + elif args.command == "scan": + result = scan_report(template=args.template) + print(json.dumps(result, ensure_ascii=False, indent=2)) + except Exception as e: + print(f"错误: {e}", file=sys.stderr) + sys.exit(1) + + +if __name__ == "__main__": + main() diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/logs/lzwcai_mcpskills_generate_reports.log b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/logs/lzwcai_mcpskills_generate_reports.log new file mode 100644 index 0000000..8ae8aa3 --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/logs/lzwcai_mcpskills_generate_reports.log @@ -0,0 +1,37 @@ +2026-06-16 16:27:35 - root - INFO - [logger_config.py:95] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcpskills_generate_reports\lzwcai_mcpskills_generate_reports\logs +2026-06-16 16:27:35 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'lzwcai_mcpskills_generate_reports' +2026-06-16 16:27:35 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest +2026-06-16 16:27:35 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest +2026-06-16 16:27:35 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor +2026-06-16 16:27:35 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:129] - 收到 ListTools 请求,返回 3 个工具 +2026-06-16 16:27:35 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:169] - 收到 CallTool 请求: name=validate_report_data, arguments={"data": "samples\\sample_data.json"} +2026-06-16 16:27:35 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:183] - 工具执行成功: validate_report_data +2026-06-16 16:27:35 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:169] - 收到 CallTool 请求: name=scan_template, arguments={"template": "templates\\standard\\template.docx"} +2026-06-16 16:27:35 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:183] - 工具执行成功: scan_template +2026-06-16 16:28:01 - root - INFO - [logger_config.py:95] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcpskills_generate_reports\lzwcai_mcpskills_generate_reports\logs +2026-06-16 16:28:01 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'lzwcai_mcpskills_generate_reports' +2026-06-16 16:28:01 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest +2026-06-16 16:28:01 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest +2026-06-16 16:28:01 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor +2026-06-16 16:28:01 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:129] - 收到 ListTools 请求,返回 3 个工具 +2026-06-16 16:28:01 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:169] - 收到 CallTool 请求: name=validate_report_data, arguments={"data": "samples\\sample_data.json"} +2026-06-16 16:28:01 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:183] - 工具执行成功: validate_report_data +2026-06-16 16:28:01 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:169] - 收到 CallTool 请求: name=scan_template, arguments={"template": "templates\\standard\\template.docx"} +2026-06-16 16:28:01 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:183] - 工具执行成功: scan_template +2026-06-16 16:28:01 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:169] - 收到 CallTool 请求: name=generate_report, arguments={"template": "templates\\standard\\template.docx", "data": "samples\\sample_data.json", "out": "_out\\mcp_test.docx"} +2026-06-16 16:28:20 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:183] - 工具执行成功: generate_report +2026-06-17 10:11:02 - root - INFO - [logger_config.py:95] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_mcpskills_generate_reports\lzwcai_mcpskills_generate_reports\logs +2026-06-17 10:11:02 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'lzwcai_mcpskills_generate_reports' +2026-06-17 10:11:02 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest +2026-06-17 10:11:02 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest +2026-06-17 10:11:02 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:215] - ================================================== +2026-06-17 10:11:02 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:216] - lzwcai-mcpskills-generate-reports MCP Server 启动 +2026-06-17 10:11:02 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:217] - ================================================== +2026-06-17 10:11:02 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:218] - 开始运行 MCP Server (stdio 模式) +2026-06-17 10:11:02 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor +2026-06-17 10:11:02 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') +2026-06-17 10:11:03 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: +2026-06-17 10:11:03 - mcp.server.lowlevel.server - INFO - [server.py:720] - Processing request of type ListToolsRequest +2026-06-17 10:11:03 - mcp.server.lowlevel.server - DEBUG - [server.py:723] - Dispatching request of type ListToolsRequest +2026-06-17 10:11:03 - lzwcai_mcpskills_generate_reports.server - INFO - [server.py:129] - 收到 ListTools 请求,返回 3 个工具 +2026-06-17 10:11:03 - mcp.server.lowlevel.server - DEBUG - [server.py:790] - Response sent diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/logs/lzwcai_mcpskills_generate_reports_error.log b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/logs/lzwcai_mcpskills_generate_reports_error.log new file mode 100644 index 0000000..e69de29 diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/pipeline.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/pipeline.py new file mode 100644 index 0000000..891aeb5 --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/pipeline.py @@ -0,0 +1,79 @@ +# -*- coding: utf-8 -*- +""" +pipeline.py:总入口 — 串起 数据校验 -> 渲染 -> (可选)样式迁移。 + +注意:本包不维护内置模板。调用方需要自己准备 .docx 模板文件, +并通过 template 参数传入路径。 +""" +import os +import json + +from .schema import validate, normalize +from .render_quote import render +from .style_transfer import transplant_style + + +def _load_data(data): + """把 data 归一化为 dict:支持 dict 或 JSON 文件路径。""" + if isinstance(data, str): + if not os.path.isfile(data): + raise FileNotFoundError(f"数据文件不存在: {data}") + with open(data, "r", encoding="utf-8") as f: + data = json.load(f) + + if not isinstance(data, dict): + raise TypeError(f"data 必须是 dict 或 JSON 文件路径,实际类型: {type(data).__name__}") + return data + + +def _load_meta_for_template(template_path): + """如果模板同目录下存在 meta.json,则读取;否则返回空 dict。""" + meta_file = os.path.join(os.path.dirname(template_path), "meta.json") + if os.path.isfile(meta_file): + with open(meta_file, "r", encoding="utf-8") as f: + return json.load(f) + return {} + + +def generate(data, template, out_path, style_ref=None): + """生成报价文档。 + + 参数: + data: QuoteData dict(或 JSON 文件路径字符串) + template: 模板 docx 文件路径 + out_path: 输出 docx 路径 + style_ref: 用户上传的样式参考 docx 路径(可选) + + 返回: + 生成的 docx 绝对路径 + """ + data = _load_data(data) + + if not isinstance(template, str): + raise TypeError(f"template 必须是文件路径字符串,实际类型: {type(template).__name__}") + if not os.path.isfile(template): + raise FileNotFoundError(f"模板文件不存在: {template}") + template_path = os.path.abspath(template) + + # 归一化 + 校验 + data = normalize(data) + errs = validate(data) + if errs: + raise ValueError("数据校验失败:\n" + "\n".join(errs)) + + # 确保输出目录存在 + out_dir = os.path.dirname(os.path.abspath(out_path)) + if out_dir: + os.makedirs(out_dir, exist_ok=True) + + # 渲染(优先读取同目录 meta.json 作为图片配置) + meta = _load_meta_for_template(template_path) + render(data, out_path, template_path, meta=meta) + + # 可选样式迁移 + if style_ref: + if not os.path.isfile(style_ref): + raise FileNotFoundError(f"样式参考文件不存在: {style_ref}") + transplant_style(out_path, style_ref, out_path) + + return os.path.abspath(out_path) diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/render_quote.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/render_quote.py new file mode 100644 index 0000000..691240e --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/render_quote.py @@ -0,0 +1,161 @@ +# -*- coding: utf-8 -*- +""" +render_quote.py:渲染引擎 — data + 模板路径 -> docx。 + +从 reports4 移植,做了两处通用化改造: +1. 模板路径参数化: render(data, out_path, template_path) +2. 图片字段配置驱动: 读 meta.json 的 image_fields 声明,不再写死字段名 +""" +import copy +import os +import ssl +import sys +import tempfile +import urllib.request +import json + +try: + sys.stdout.reconfigure(encoding="utf-8") +except (AttributeError, OSError): + pass + +from docxtpl import DocxTemplate, InlineImage +from docx.shared import Mm + + +def _resolve_image_path(src, tmp_files): + """把图片字段值解析为本地文件路径。 + + 下载成功的临时文件会记录到 tmp_files,由调用方在渲染结束后统一清理。 + """ + def _download(url): + try: + ctx = ssl.create_default_context() + ctx.check_hostname = False + ctx.verify_mode = ssl.CERT_NONE + req = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"}) + data = urllib.request.urlopen(req, context=ctx, timeout=30).read() + ext = os.path.splitext(url.split("?")[0])[1] or ".png" + fd, path = tempfile.mkstemp(suffix=ext) + os.write(fd, data) + os.close(fd) + tmp_files.append(path) + return path + except Exception as e: + print(f"[warn] 下载图片失败({url}): {e}") + return None + + if src is None: + return "" + if src == "": + return "" + if isinstance(src, str) and src.lower().startswith(("http://", "https://")): + return _download(src) or "" + if os.path.exists(src): + return src + print(f"[warn] 找不到图片({src}),跳过") + return "" + + +def _make_inline_image(tpl, src, width_mm, tmp_files): + """创建 InlineImage;src 为 "" 或 None 时不创建(返回 None)。""" + resolved = _resolve_image_path(src, tmp_files) + if resolved == "": + return None + return InlineImage(tpl, resolved, width=Mm(width_mm)) + + +def _resolve_field_path(data, path): + """根据字段路径提取所有目标值。 + + 支持: "root_field" / "list[].field" / "list[].field[]" + """ + results = [] + parts = path.split(".") + + if len(parts) == 1: + key = parts[0] + if key in data: + results.append((data, key)) + return results + + # 嵌套列表: "list[].field[]" —— 必须先于单层判断,否则会被 parts[0] 分支误捕获 + if len(parts) == 2 and "[]" in parts[1]: + list_name = parts[0].replace("[]", "") + field = parts[1].replace("[]", "") + for item in data.get(list_name, []): + lst = item.get(field, []) + if isinstance(lst, list): + for idx in range(len(lst)): + results.append((lst, idx)) + return results + + if len(parts) == 2 and "[]" in parts[0]: + list_name = parts[0].replace("[]", "") + field = parts[1] + for item in data.get(list_name, []): + if field in item: + results.append((item, field)) + return results + + if len(parts) == 2: + list_name = parts[0] + field = parts[1] + for item in data.get(list_name, []): + if field in item: + results.append((item, field)) + return results + + return results + + +def _fill_images_from_meta(tpl, data, meta, tmp_files): + """根据 meta.json 中的 image_fields 声明填充所有图片字段。""" + image_fields = meta.get("image_fields", {}) + for path, width_meta in image_fields.items(): + width_mm = width_meta.get("width_mm", 50) + refs = _resolve_field_path(data, path) + for container, key in refs: + val = container[key] + if val is None: + container[key] = "" + elif isinstance(val, list): + container[key] = [ + _make_inline_image(tpl, x, width_mm, tmp_files) if x is not None else None + for x in val + ] + container[key] = [img for img in container[key] if img is not None] + else: + img = _make_inline_image(tpl, val, width_mm, tmp_files) + container[key] = img if img else "" + return data + + +def render(data, out_path, template_path, meta=None): + """渲染报价文档。""" + if meta is None: + meta_dir = os.path.dirname(template_path) + meta_file = os.path.join(meta_dir, "meta.json") + if os.path.isfile(meta_file): + with open(meta_file, "r", encoding="utf-8") as f: + meta = json.load(f) + else: + meta = {} + + # 深拷贝:避免修改调用方传入的数据,同时把字符串字段替换成 InlineImage + data = copy.deepcopy(dict(data)) + tpl = DocxTemplate(template_path) + + tmp_files = [] + try: + data = _fill_images_from_meta(tpl, data, meta, tmp_files) + tpl.render(data) + tpl.save(out_path) + finally: + for p in tmp_files: + try: + os.remove(p) + except OSError: + pass + + return out_path diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/schema.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/schema.py new file mode 100644 index 0000000..ebc97da --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/schema.py @@ -0,0 +1,123 @@ +# -*- coding: utf-8 -*- +""" +schema.py:QuoteData 数据契约、校验器、归一化。 + +所有模板共用同一契约,沿用 reports4 的 SAMPLE 字段结构。 +""" +import copy + +# ── 缺省值表 ────────────────────────────────────────────── +DEFAULTS = { + "layout_title": "整线布局尺寸图", + "show_layout": True, +} + +# 中文数字扩展(用于缺 index 时自动补) +_CN_DIGITS = [ + "一", "二", "三", "四", "五", "六", "七", "八", "九", "十", + "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九", "二十", +] + +# 设备之前的固定章节数:一 公司简介、二 客户要求及分析、三 布局图 +_SECTION_OFFSET = 3 + + +def validate(data): + """校验 QuoteData 结构,返回错误信息列表(空=通过)。 + + 检查: + - 必填顶层字段: project_title, contact_person, contact_phone, requirements + - equipments 元素: 必须有 name + - quote_items 元素: 必须有 name + - features 元素: 必须有 title 和 lines + - params 元素: 必须有 k 和 v + """ + errors = [] + + for field in ("project_title", "contact_person", "contact_phone", "requirements"): + val = data.get(field) + if val is None or (isinstance(val, str) and val.strip() == ""): + errors.append(f"必填字段缺失或为空: {field}") + + # equipments + eqs = data.get("equipments", []) + if not isinstance(eqs, list): + errors.append("equipments 必须为列表") + else: + for i, eq in enumerate(eqs): + if not isinstance(eq, dict): + errors.append(f"equipments[{i}] 必须为对象") + continue + if not eq.get("name"): + errors.append(f"equipments[{i}] 缺少 name") + # features 子元素 + for j, feat in enumerate(eq.get("features", [])): + if not isinstance(feat, dict): + errors.append(f"equipments[{i}].features[{j}] 必须为对象") + continue + if not feat.get("title"): + errors.append(f"equipments[{i}].features[{j}] 缺少 title") + if not feat.get("lines") or not isinstance(feat.get("lines"), list): + errors.append(f"equipments[{i}].features[{j}] 缺少 lines 或类型错误") + # params 子元素 + for j, p in enumerate(eq.get("params", [])): + if not isinstance(p, dict): + errors.append(f"equipments[{i}].params[{j}] 必须为对象") + continue + if not p.get("k") or not p.get("v"): + errors.append(f"equipments[{i}].params[{j}] 缺少 k 或 v") + + # quote_items + items = data.get("quote_items", []) + if not isinstance(items, list): + errors.append("quote_items 必须为列表") + else: + for i, it in enumerate(items): + if not isinstance(it, dict): + errors.append(f"quote_items[{i}] 必须为对象") + continue + if not it.get("name"): + errors.append(f"quote_items[{i}] 缺少 name") + + return errors + + +def normalize(data): + """归一化数据:填缺省值、requirements list->str、index 缺失时自动补。 + + 不修改入参,返回新副本。 + """ + d = copy.deepcopy(data) + + # requirements: list -> str + req = d.get("requirements") + if isinstance(req, (list, tuple)): + d["requirements"] = "\n".join(str(x) for x in req) + + # 缺省值 + for k, v in DEFAULTS.items(): + if k not in d: + d[k] = v + + # equipment index 自动补(从"四"开始,前面三节是公司简介/客户要求/布局图) + for i, eq in enumerate(d.get("equipments", [])): + if not eq.get("index"): + idx = i + 1 + _SECTION_OFFSET + eq["index"] = _CN_DIGITS[idx - 1] if idx <= len(_CN_DIGITS) else str(idx) + + # quote_items 缺 image 给空串 + for it in d.get("quote_items", []): + it.setdefault("image", "") + + # equipments 缺 images 给 [""] + for eq in d.get("equipments", []): + eq.setdefault("images", [""]) + + # 计算后续章节的动态序号:报价表 & 售后服务 + eq_count = len(d.get("equipments", [])) + quote_idx = eq_count + _SECTION_OFFSET + 1 + after_sales_idx = eq_count + _SECTION_OFFSET + 2 + d["section_quote_table"] = _CN_DIGITS[quote_idx - 1] if quote_idx <= len(_CN_DIGITS) else str(quote_idx) + d["section_after_sales"] = _CN_DIGITS[after_sales_idx - 1] if after_sales_idx <= len(_CN_DIGITS) else str(after_sales_idx) + + return d diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/server.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/server.py new file mode 100644 index 0000000..0368f42 --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/server.py @@ -0,0 +1,223 @@ +#!/usr/bin/env python3 +""" +lzwcai-mcpskills-generate-reports MCP Server + +把 docx 模板渲染引擎封装成 MCP 工具,提供三个工具: +- generate_report: 数据 + 模板路径 -> 渲染输出 docx +- scan_template: 扫描模板占位符 / for / if 块 +- validate_report_data: 校验数据契约(不渲染) + +stdio 模式运行;所有日志走 stderr,stdout 留给 MCP 协议。 +""" +import os +import json +import logging + +import anyio + +import mcp.types as types +from mcp.server import NotificationOptions, Server +from mcp.server.models import InitializationOptions +from mcp.server.stdio import stdio_server + +try: + from .utils.logger_config import setup_system_logging, get_logger + from . import generate, scan_template, validate, normalize +except ImportError: + from lzwcai_mcpskills_generate_reports.utils.logger_config import ( + setup_system_logging, get_logger, + ) + from lzwcai_mcpskills_generate_reports import ( + generate, scan_template, validate, normalize, + ) + +# 初始化日志系统 +setup_system_logging(app_name="lzwcai_mcpskills_generate_reports", log_level=logging.DEBUG) +logger = get_logger(__name__) + +# 初始化 MCP Server +server = Server("lzwcai_mcpskills_generate_reports") + + +def _load_data(data): + """把 data 归一化为 dict:支持 dict 或 JSON 文件路径字符串。""" + if isinstance(data, str): + if not os.path.isfile(data): + raise FileNotFoundError(f"数据文件不存在: {data}") + with open(data, "r", encoding="utf-8") as f: + data = json.load(f) + if not isinstance(data, dict): + raise TypeError( + f"data 必须是对象或 JSON 文件路径字符串,实际类型: {type(data).__name__}" + ) + return data + + +# ── 工具定义 ────────────────────────────────────────────── +_DATA_DESC = "报价数据:可以是 JSON 对象,或指向 JSON 文件的路径字符串" + +TOOL_DEFS = [ + types.Tool( + name="generate_report", + description=( + "用 docx 模板 + 结构化数据渲染生成报价文档 docx,返回输出文件绝对路径。" + "模板由调用方提供,本工具不内置模板。" + ), + inputSchema={ + "type": "object", + "properties": { + "template": { + "type": "string", + "description": "模板 docx 文件路径(必填)", + }, + "data": { + "type": ["object", "string"], + "description": _DATA_DESC + "(必填)", + }, + "out": { + "type": "string", + "description": "输出 docx 文件路径(必填)", + }, + "style_ref": { + "type": "string", + "description": "用户上传的样式参考 docx 路径(可选),会把其 theme/字体套到结果文档", + }, + }, + "required": ["template", "data", "out"], + }, + ), + types.Tool( + name="scan_template", + description=( + "扫描 docx 模板中的 Jinja2 占位符,返回需要外部提供的顶层变量列表和 for/if 块结构。" + "用于在渲染前了解模板需要哪些数据字段。" + ), + inputSchema={ + "type": "object", + "properties": { + "template": { + "type": "string", + "description": "模板 docx 文件路径(必填)", + }, + }, + "required": ["template"], + }, + ), + types.Tool( + name="validate_report_data", + description=( + "校验报价数据是否符合契约(必填字段、equipments/quote_items/features/params 结构)," + "不渲染文档。返回校验结果和错误列表。" + ), + inputSchema={ + "type": "object", + "properties": { + "data": { + "type": ["object", "string"], + "description": _DATA_DESC + "(必填)", + }, + }, + "required": ["data"], + }, + ), +] + + +@server.list_tools() +async def handle_list_tools() -> list[types.Tool]: + """列出所有可用工具""" + logger.info(f"收到 ListTools 请求,返回 {len(TOOL_DEFS)} 个工具") + return TOOL_DEFS + + +# ── 工具实现(同步函数,放线程池执行)────────────────────── +def _do_generate_report(arguments: dict) -> dict: + template = arguments["template"] + data = arguments["data"] + out = arguments["out"] + style_ref = arguments.get("style_ref") + + data = _load_data(data) + out_path = generate(data=data, template=template, out_path=out, style_ref=style_ref) + return {"output": out_path} + + +def _do_scan_template(arguments: dict) -> dict: + return scan_template(arguments["template"]) + + +def _do_validate(arguments: dict) -> dict: + data = _load_data(arguments["data"]) + norm = normalize(data) + errors = validate(norm) + return {"valid": not errors, "errors": errors} + + +_HANDLERS = { + "generate_report": _do_generate_report, + "scan_template": _do_scan_template, + "validate_report_data": _do_validate, +} + + +@server.call_tool() +async def handle_call_tool( + name: str, + arguments: dict | None, +) -> list[types.TextContent | types.ImageContent | types.EmbeddedResource]: + """调用工具""" + logger.info( + f"收到 CallTool 请求: name={name}, " + f"arguments={json.dumps(arguments, ensure_ascii=False) if arguments else 'None'}" + ) + + handler = _HANDLERS.get(name) + if handler is None: + logger.error(f"未找到工具: {name}") + raise ValueError(f"未知工具: {name}") + + args = arguments or {} + try: + # 渲染/扫描是同步阻塞的 CPU/IO 任务,放线程池避免霸占 event loop + result = await anyio.to_thread.run_sync(handler, args) + logger.info(f"工具执行成功: {name}") + except Exception as e: + logger.error(f"工具执行失败: {name}: {e}", exc_info=True) + result = {"error": str(e), "tool_name": name} + + return [ + types.TextContent( + type="text", + text=json.dumps(result, ensure_ascii=False, indent=2), + ) + ] + + +async def run_server(): + """运行 MCP Server (stdio 模式)""" + async with stdio_server() as streams: + await server.run( + streams[0], + streams[1], + InitializationOptions( + server_name="lzwcai_mcpskills_generate_reports", + server_version="0.1.0", + capabilities=server.get_capabilities( + notification_options=NotificationOptions(), + experimental_capabilities={}, + ), + ), + ) + + +def main(): + """主入口""" + logger.info("=" * 50) + logger.info("lzwcai-mcpskills-generate-reports MCP Server 启动") + logger.info("=" * 50) + logger.info("开始运行 MCP Server (stdio 模式)") + anyio.run(run_server) + + +if __name__ == "__main__": + main() diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/style_transfer.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/style_transfer.py new file mode 100644 index 0000000..81e1534 --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/style_transfer.py @@ -0,0 +1,183 @@ +# -*- coding: utf-8 -*- +""" +style_transfer.py:从用户上传的 docx 抽取视觉样式(theme1.xml + styles.xml 的默认字体引用), +套到内置骨架渲染结果上,产出"风格接近用户模板"的文档。 + +Level 1 (MVP):整体替换 theme + 默认字体引用,不整体覆盖 styles(避免版式崩)。 +""" +import os +import zipfile +import tempfile +import shutil +import xml.etree.ElementTree as ET + +# Word OOXML 命名空间 +_NS = { + "a": "http://schemas.openxmlformats.org/drawingml/2006/main", + "r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships", + "w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", +} + +# 主题字体引用中 major/minor 属性的前缀 +_THEME_PREFIXES = ("majorHAnsi", "minorHAnsi", "majorEastAsia", "minorEastAsia", + "majorCs", "minorCs", "major", "minor") + + +def _unzip_docx(docx_path, target_dir): + """解压 docx(zip)到目标目录。""" + with zipfile.ZipFile(docx_path, "r") as z: + z.extractall(target_dir) + + +def _zip_docx(source_dir, docx_path): + """将目录内容打包为 docx(zip)。""" + with zipfile.ZipFile(docx_path, "w", zipfile.ZIP_DEFLATED) as z: + for root, _dirs, files in os.walk(source_dir): + for fname in files: + full = os.path.join(root, fname) + arcname = os.path.relpath(full, source_dir) + z.write(full, arcname) + + +def _safe_xml_read(xml_path): + """安全读取 XML 文件,返回 ElementTree 和根元素。失败返回 (None, None)。""" + try: + tree = ET.parse(xml_path) + return tree, tree.getroot() + except Exception: + return None, None + + +def _copy_theme(src_dir, dst_dir): + """将 src 的 word/theme/theme1.xml 复制到 dst。""" + src_theme = os.path.join(src_dir, "word", "theme", "theme1.xml") + dst_theme = os.path.join(dst_dir, "word", "theme", "theme1.xml") + if os.path.isfile(src_theme): + os.makedirs(os.path.dirname(dst_theme), exist_ok=True) + shutil.copy2(src_theme, dst_theme) + return True + return False + + +def _copy_font_table(src_dir, dst_dir): + """将 src 的 word/fontTable.xml 复制到 dst。""" + src_ft = os.path.join(src_dir, "word", "fontTable.xml") + dst_ft = os.path.join(dst_dir, "word", "fontTable.xml") + if os.path.isfile(src_ft): + shutil.copy2(src_ft, dst_ft) + return True + return False + + +def _merge_default_fonts(src_styles_path, dst_styles_path): + """合并默认字体引用(docDefaults 中的 rFonts)从 src 到 dst。 + + 不整体覆盖 styles.xml,只替换 docDefaults 里的字体引用。 + """ + if not os.path.isfile(src_styles_path) or not os.path.isfile(dst_styles_path): + return False + + _, src_root = _safe_xml_read(src_styles_path) + dst_tree, dst_root = _safe_xml_read(dst_styles_path) + if src_root is None or dst_root is None: + return False + + w_ns = _NS["w"] + + # 找 src 的 docDefaults + src_doc_defaults = src_root.find(f".//{{{w_ns}}}docDefaults") + if src_doc_defaults is None: + return False + + src_rpr = src_doc_defaults.find(f"{{{w_ns}}}rPrDefault/{{{w_ns}}}rFonts") + if src_rpr is None: + return False + + # 找 dst 的 docDefaults + dst_doc_defaults = dst_root.find(f".//{{{w_ns}}}docDefaults") + if dst_doc_defaults is None: + return False + + dst_rpr = dst_doc_defaults.find(f"{{{w_ns}}}rPrDefault/{{{w_ns}}}rFonts") + if dst_rpr is None: + # 如果 dst 没有 rFonts,创建并追加 + rpr_default = dst_doc_defaults.find(f"{{{w_ns}}}rPrDefault") + if rpr_default is None: + rpr_default = ET.SubElement(dst_doc_defaults, f"{{{w_ns}}}rPrDefault") + rpr_default.append(src_rpr) + else: + # 替换 rFonts 的属性(主题字体引用) + for attr_name, attr_val in src_rpr.attrib.items(): + if any(attr_name.endswith(prefix) for prefix in _THEME_PREFIXES): + dst_rpr.set(attr_name, attr_val) + + # 保存 + dst_tree.write(dst_styles_path, xml_declaration=True, encoding="UTF-8", standalone="yes") + return True + + +def transplant_style(result_path, user_template_path, out_path): + """将用户模板的视觉样式移植到结果文档上。 + + 参数: + result_path: 内置骨架渲染出的 docx 路径 + user_template_path: 用户上传的样式参考 docx + out_path: 输出路径(可与 result_path 相同,原地覆盖) + """ + # 校验用户模板可打开 + try: + from docx import Document + Document(user_template_path) + except Exception as e: + print(f"[warn] 用户上传模板无法打开,跳过样式迁移: {e}") + if out_path != result_path: + shutil.copy2(result_path, out_path) + return out_path + + # 在打包覆盖前先记录原文档段落数(out_path 可能 == result_path,原地覆盖后就读不到原值了) + src_count = None + try: + from docx import Document + src_count = len(Document(result_path).paragraphs) + except Exception as e: + print(f"[warn] 读取原文档段落数失败,迁移后将跳过段落数校验: {e}") + + # 创建临时工作目录 + with tempfile.TemporaryDirectory() as tmpdir: + src_dir = os.path.join(tmpdir, "src") # 用户上传模板 + dst_dir = os.path.join(tmpdir, "dst") # 渲染结果 + os.makedirs(src_dir) + os.makedirs(dst_dir) + + # 解压 + _unzip_docx(user_template_path, src_dir) + _unzip_docx(result_path, dst_dir) + + # 1) 替换 theme1.xml + _copy_theme(src_dir, dst_dir) + + # 2) 替换 fontTable.xml + _copy_font_table(src_dir, dst_dir) + + # 3) 合并默认字体引用 + src_styles = os.path.join(src_dir, "word", "styles.xml") + dst_styles = os.path.join(dst_dir, "word", "styles.xml") + _merge_default_fonts(src_styles, dst_styles) + + # 重新打包 + _zip_docx(dst_dir, out_path) + + # 校验:能正常打开且段落数与迁移前一致 + try: + from docx import Document + dst_count = len(Document(out_path).paragraphs) + if src_count is None: + print(f"[ok] 样式迁移完成(无原始段落数可比对),输出段落数: {dst_count}") + elif dst_count == 0 or dst_count != src_count: + print(f"[warn] 样式迁移后段落数不一致 (src={src_count}, dst={dst_count}),可能损坏") + else: + print(f"[ok] 样式迁移完成,段落数一致: {src_count}") + except Exception as e: + print(f"[error] 样式迁移后文档无法打开: {e}") + + return out_path diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/template_scanner.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/template_scanner.py new file mode 100644 index 0000000..fd854b4 --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/template_scanner.py @@ -0,0 +1,133 @@ +# -*- coding: utf-8 -*- +""" +template_scanner.py:扫描 docx 模板中的 Jinja2 占位符。 + +只读模板,不渲染;返回模板里要求外部提供的数据字段清单。 +""" +import re +import zipfile +import xml.etree.ElementTree as ET + +from jinja2 import Environment, meta +from jinja2 import nodes as jinja_nodes + + +def _iter_docx_text(docx_path): + """遍历 docx 中所有 XML 文本节点,产出原始字符串片段。""" + with zipfile.ZipFile(docx_path, "r") as z: + for name in z.namelist(): + # 只关心 word 主文档、页眉、页脚 + if not (name.startswith("word/document") or name.startswith("word/header") or name.startswith("word/footer")): + continue + data = z.read(name) + try: + root = ET.fromstring(data) + except ET.ParseError: + continue + # w:t 节点存放文本 + for elem in root.iter(): + if elem.tag.endswith("}t"): + if elem.text: + yield elem.text + + +def _extract_source(docx_path): + """把 docx 所有文本片段拼成一段连续的源文本,便于 Jinja2 解析。""" + return "\n".join(_iter_docx_text(docx_path)) + + +def _normalize_docxtpl_tags(source): + """把 docxtpl 段落/行/单元格级标签 {%p ... %} {%tr ... %} {%tc ... %} 还原为 {% ... %}。 + + docxtpl 用 {%p、{%tr、{%tc 控制块作用于段落、表格行、表格单元格; + 扫描占位符时不需要这些粒度信息,统一成标准 Jinja2 标签即可解析。 + """ + return re.sub(r"{%\s*(?:p|tr|tc)\s+", "{% ", source) + + +def _walk_blocks(node, result=None): + """遍历 Jinja2 AST,收集 For / If 块信息。""" + if result is None: + result = [] + if node is None: + return result + + if isinstance(node, jinja_nodes.For): + iter_name = _expression_name(node.iter) + target_name = _expression_name(node.target) + result.append({ + "type": "for", + "iterator": target_name, + "variable": iter_name, + }) + for child in node.body: + _walk_blocks(child, result) + for child in node.else_ or []: + _walk_blocks(child, result) + return result + + if isinstance(node, jinja_nodes.If): + test_name = _expression_name(node.test) + result.append({ + "type": "if", + "condition": test_name, + }) + for child in node.body: + _walk_blocks(child, result) + for child in node.else_ or []: + _walk_blocks(child, result) + return result + + if hasattr(node, "body"): + for child in node.body: + _walk_blocks(child, result) + + if hasattr(node, "else_") and node.else_: + for child in node.else_: + _walk_blocks(child, result) + + return result + + +def _expression_name(expr): + """把 Jinja2 表达式尽量还原为可读的字符串。""" + if expr is None: + return None + if isinstance(expr, jinja_nodes.Name): + return expr.name + if isinstance(expr, jinja_nodes.Const): + return str(expr.value) + if isinstance(expr, jinja_nodes.Getattr): + return f"{_expression_name(expr.node)}.{expr.attr}" + if isinstance(expr, jinja_nodes.Getitem): + return f"{_expression_name(expr.node)}[{_expression_name(expr.arg)}]" + return str(expr) + + +def scan_template(template_path): + """扫描 docx 模板,返回占位符信息 JSON。 + + 返回: + { + "placeholders": ["project_title", "equipments", ...], # 需要外部提供的最顶层变量 + "blocks": [ + {"type": "for", "iterator": "eq", "variable": "equipments"}, + {"type": "if", "condition": "show_layout"}, + ... + ] + } + """ + source = _normalize_docxtpl_tags(_extract_source(template_path)) + if not source.strip(): + return {"placeholders": [], "blocks": []} + + env = Environment() + ast = env.parse(source) + + variables = sorted(meta.find_undeclared_variables(ast)) + blocks = _walk_blocks(ast) + + return { + "placeholders": variables, + "blocks": blocks, + } diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/utils/__init__.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/utils/__init__.py new file mode 100644 index 0000000..d7805be --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/utils/__init__.py @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +"""Utils package for lzwcai_mcpskills_generate_reports""" + +from .logger_config import setup_system_logging, get_logger + +__all__ = ["setup_system_logging", "get_logger"] diff --git a/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/utils/logger_config.py b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/utils/logger_config.py new file mode 100644 index 0000000..f70c1a6 --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/lzwcai_mcpskills_generate_reports/utils/logger_config.py @@ -0,0 +1,112 @@ +# -*- coding: utf-8 -*- +""" +统一日志配置模块 +提供系统级别的日志配置和管理 + +注意:MCP 协议使用 stdio 通信时,stdout 被协议占用, +所有日志必须输出到 stderr 或文件,绝不能写 stdout。 +""" + +import os +import sys +import logging +from logging.handlers import RotatingFileHandler, TimedRotatingFileHandler +from pathlib import Path + + +class LoggerConfig: + """日志配置管理类""" + + def __init__(self, logs_dir: str = None): + if logs_dir: + self.logs_dir = Path(logs_dir) + else: + project_root = Path(__file__).parent.parent + self.logs_dir = project_root / "logs" + + self.logs_dir.mkdir(exist_ok=True) + + self.log_format = '%(asctime)s - %(name)s - %(levelname)s - [%(filename)s:%(lineno)d] - %(message)s' + self.date_format = '%Y-%m-%d %H:%M:%S' + self.log_level = self._get_log_level_from_env() + self._initialized = False + + def _get_log_level_from_env(self) -> int: + log_level_str = os.getenv('LOG_LEVEL', 'INFO').upper() + level_mapping = { + 'DEBUG': logging.DEBUG, + 'INFO': logging.INFO, + 'WARNING': logging.WARNING, + 'WARN': logging.WARNING, + 'ERROR': logging.ERROR, + 'CRITICAL': logging.CRITICAL, + 'FATAL': logging.CRITICAL, + } + return level_mapping.get(log_level_str, logging.INFO) + + def setup_logging(self, + app_name: str = "lzwcai_mcpskills_generate_reports", + log_level: int = logging.INFO, + max_file_size: int = 10 * 1024 * 1024, + backup_count: int = 5, + console_output: bool = True) -> logging.Logger: + if self._initialized: + return logging.getLogger() + + root_logger = logging.getLogger() + root_logger.setLevel(log_level) + + for handler in root_logger.handlers[:]: + root_logger.removeHandler(handler) + + formatter = logging.Formatter(self.log_format, self.date_format) + + # 1. 主日志文件 - 按大小滚动 + main_log_file = self.logs_dir / f"{app_name}.log" + file_handler = RotatingFileHandler( + main_log_file, maxBytes=max_file_size, + backupCount=backup_count, encoding='utf-8', + ) + file_handler.setLevel(log_level) + file_handler.setFormatter(formatter) + root_logger.addHandler(file_handler) + + # 2. 错误日志文件 + error_log_file = self.logs_dir / f"{app_name}_error.log" + error_handler = RotatingFileHandler( + error_log_file, maxBytes=max_file_size, + backupCount=backup_count, encoding='utf-8', + ) + error_handler.setLevel(logging.ERROR) + error_handler.setFormatter(formatter) + root_logger.addHandler(error_handler) + + # 3. 控制台输出到 stderr(stdio 模式下 stdout 被 MCP 协议占用) + if console_output: + console_handler = logging.StreamHandler(sys.stderr) + console_handler.setLevel(log_level) + console_handler.setFormatter(logging.Formatter( + '%(asctime)s - %(name)s - %(levelname)s - %(message)s', + self.date_format, + )) + root_logger.addHandler(console_handler) + + self._initialized = True + root_logger.info(f"日志系统初始化完成 - 日志目录: {self.logs_dir}") + return root_logger + + def get_module_logger(self, module_name: str) -> logging.Logger: + return logging.getLogger(module_name) + + +# 全局日志配置实例 +logger_config = LoggerConfig() + + +def setup_system_logging(app_name: str = "lzwcai_mcpskills_generate_reports", + log_level: int = logging.INFO) -> logging.Logger: + return logger_config.setup_logging(app_name, log_level) + + +def get_logger(name: str) -> logging.Logger: + return logger_config.get_module_logger(name) diff --git a/lzwcai_mcpskills_generate_reports/main.py b/lzwcai_mcpskills_generate_reports/main.py new file mode 100644 index 0000000..7946a46 --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/main.py @@ -0,0 +1,10 @@ +""" +Entry point for lzwcai-mcpskills-generate-reports + +Runs the MCP server (stdio mode) for docx report generation. +""" + +from lzwcai_mcpskills_generate_reports.server import main + +if __name__ == "__main__": + main() diff --git a/lzwcai_mcpskills_generate_reports/pyproject.toml b/lzwcai_mcpskills_generate_reports/pyproject.toml new file mode 100644 index 0000000..f63b8aa --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/pyproject.toml @@ -0,0 +1,40 @@ +[build-system] +requires = ["setuptools>=61.0", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "lzwcai-mcpskills-generate-reports" +version = "0.1.0" +description = "Render styled quotation documents from user-supplied docx templates and structured data" +readme = "README.md" +requires-python = ">=3.12" +keywords = ["docx", "quotation", "report", "template", "jinja2"] +authors = [ + { name = "LzwCai", email = "lzwcai@example.com" }, +] +classifiers = [ + "Development Status :: 3 - Alpha", + "Intended Audience :: Developers", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.12", +] +dependencies = [ + "docxtpl>=0.16.0", + "python-docx>=1.1.0", + "Jinja2>=3.1.0", + "mcp>=1.0.0", + "anyio>=4.0.0", +] + +[project.scripts] +generate-report = "lzwcai_mcpskills_generate_reports.cli:main" +lzwcai-mcpskills-generate-reports = "lzwcai_mcpskills_generate_reports.server:main" + +[project.urls] +Homepage = "https://github.com/lzwcai/lzwcai-mcpskills-generate-reports" +Repository = "https://github.com/lzwcai/lzwcai-mcpskills-generate-reports" + +[tool.setuptools.packages.find] +where = ["."] +include = ["lzwcai_mcpskills_generate_reports*"] +exclude = ["tests*", "_out*", "templates*", "samples*"] diff --git a/lzwcai_mcpskills_generate_reports/samples/sample_data.json b/lzwcai_mcpskills_generate_reports/samples/sample_data.json new file mode 100644 index 0000000..3c49eda --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/samples/sample_data.json @@ -0,0 +1,412 @@ +{ + "project_title": "大米圆形纸罐全自动灌装包装整线项目", + "contact_person": "张卫国经理", + "contact_phone": "138-1568-9632", + "contact_company": "XX粮油食品有限公司", + "requirements": [ + "包装物料:成品精制大米,流动性颗粒物料;单罐净重规格:250g、500g、1000g三档快速切换。", + "罐体参数:圆形食品级纸罐,配套易拉预封口+外旋螺纹盖双重密封;纸罐固定外径100mm(10cm),高度分3档:60mm(6cm)/120mm(12cm)/220mm(22cm),同线兼容三规格自动换型无需更换夹具。", + "额定包装速度:以500g标准罐计,稳定产能≥20罐/分钟,连续24h不间断运行无卡罐、漏装。", + "整线标配:大米定量称重灌装机、罐身输送线、自动上盖机、四轮旋盖机、成品出料输送机;", + "客户选配完整模组:在线金属检测机(带自动剔除机构)+重量复检机(不合格自动分流剔除)+后端自动开箱机+折盖封箱一体机+机器人码垛单元;", + "全线材质要求:物料接触部位304不锈钢,符合食品QS/SC生产卫生规范,支持水洗清洁。" + ], + "layout_image": "https://dscache.tencent-cloud.cn/upload/nodir/rice-can-line-layout-202605.png", + "layout_title": "大米纸罐灌装整线平面布局尺寸总图", + "equipments": [ + { + "name": "Z型大米颗粒上料提升机", + "images": [ + "https://dscache.tencent-cloud.cn/upload/nodir/z-conveyor-01.png", + "https://dscache.tencent-cloud.cn/upload/nodir/z-conveyor-detail.png" + ], + "features": [ + { + "title": "粮食专用密封提升", + "lines": [ + "封闭式料斗输送,无大米撒料、扬尘,车间粉尘达标;适配大米、杂粮等颗粒原料连续上料。", + "料斗加厚304不锈钢,耐磨抗冲击,不易积粮霉变,便于高压水枪冲洗。" + ] + }, + { + "title": "变频调速稳定可控", + "lines": [ + "独立变频电机调速,上料流量与灌装主机信号联动匹配,不会断料或溢料。", + "低噪音链条传动,连续运行故障率低,维护简单,可长期满负荷生产。" + ] + } + ], + "params": [ + { + "k": "有效提升高度", + "v": "3.6m(支持现场按需加长定制)" + }, + { + "k": "输送速度可调范围", + "v": "0~16m/min" + }, + { + "k": "最大输送产能", + "v": "7.2m³/h,满足25罐/分钟灌装余量" + }, + { + "k": "驱动总功率", + "v": "0.55kW" + }, + { + "k": "供电制式", + "v": "380V三相 50Hz" + }, + { + "k": "整机净重", + "v": "385kg" + }, + { + "k": "物料接触材质", + "v": "304食品级不锈钢" + } + ] + }, + { + "name": "多头称重式大米灌装机", + "images": [ + "https://dscache.tencent-cloud.cn/upload/nodir/rice-filling-machine.png" + ], + "features": [ + { + "title": "高精度称重灌装", + "lines": [ + "二级快慢加料,250g/500g/1000g重量参数触摸屏一键调用,单罐称重误差≤±0.8g。", + "独立称重料斗,不受物料料位高低影响,长时间灌装重量一致性稳定。" + ] + }, + { + "title": "食品级卫生设计", + "lines": [ + "料仓、下料口快拆结构,无需工具即可拆卸清洗,无死角存粮。", + "整机带防尘外封板,避免蚊虫、杂物混入大米成品。" + ] + } + ], + "params": [ + { + "k": "灌装量程", + "v": "100~1200g可调" + }, + { + "k": "额定产能", + "v": "22~28罐/分钟(500g规格)" + }, + { + "k": "允许罐型外径", + "v": "60~120mm" + }, + { + "k": "整机功率", + "v": "1.2kW" + }, + { + "k": "外形长宽高", + "v": "1450×920×1850mm" + }, + { + "k": "整机重量", + "v": "420kg" + }, + { + "k": "操作界面", + "v": "7寸触摸屏+PLC全自动控制" + } + ] + }, + { + "name": "自动纸罐理罐机", + "images": [ + "https://dscache.tencent-cloud.cn/upload/nodir/can-sorter.png" + ], + "features": [ + { + "title": "圆形纸罐定向排序", + "lines": [ + "自动散乱上罐、扶正定位、有序输送,杜绝倒罐、卡罐,适配本次100mm外径纸罐三高度规格。", + "定位挡板手摇快速调节,换型时间≤3分钟。" + ] + }, + { + "title": "整机耐用易维护", + "lines": [ + "机架304不锈钢,输送带独立无极变频调速,可和灌装主机速度同步联动。", + "机械结构简洁,易损件少,车间操作工可独立日常检修。" + ] + } + ], + "params": [ + { + "k": "主体材质", + "v": "304不锈钢机架+食品级PU输送带" + }, + { + "k": "整机外形尺寸", + "v": "1020×810×1220mm" + }, + { + "k": "最大处理产能", + "v": "30~50罐/分钟" + }, + { + "k": "理罐转盘直径", + "v": "800mm" + }, + { + "k": "适配罐体外径", + "v": "60~200mm" + }, + { + "k": "工作电压", + "v": "单相220V,50Hz" + }, + { + "k": "整机重量", + "v": "145kg" + } + ] + }, + { + "name": "自动上盖机+单头四轮旋盖一体机", + "images": [ + "https://dscache.tencent-cloud.cn/upload/nodir/capping-twist-machine.png" + ], + "features": [ + { + "title": "自动送盖+定位旋盖一体化", + "lines": [ + "料仓自动整理螺纹外盖,分盖、落盖精准套入罐口,四轮橡胶轮柔性夹紧旋紧,不会压扁纸质罐口。", + "旋盖扭矩数字可调,杜绝滑盖、拧过紧纸罐变形,适配易拉内封+外旋盖双层封口工艺。" + ] + }, + { + "title": "速度同步联动", + "lines": [ + "变频调速跟随灌装线主线速度,无空罐漏旋,缺盖自动停机报警提示补料。" + ] + } + ], + "params": [ + { + "k": "供电规格", + "v": "220V 50Hz" + }, + { + "k": "整机装机功率", + "v": "1.0kW" + }, + { + "k": "适配罐口直径", + "v": "35~130mm" + }, + { + "k": "稳定旋盖速度", + "v": "25~32罐/分钟" + }, + { + "k": "设备外形尺寸", + "v": "2020×660×1510mm" + }, + { + "k": "整机重量", + "v": "295kg" + }, + { + "k": "扭矩调节方式", + "v": "数字扭矩电控调节" + } + ] + }, + { + "name": "在线金属检测机(带剔除)", + "images": [ + "https://dscache.tencent-cloud.cn/upload/nodir/metal-detector-reject.png" + ], + "features": [ + { + "title": "高精度金属异物检测", + "lines": [ + "可检出铁、不锈钢、铜、铝等混入大米内金属碎屑、螺钉刀片,不合格罐气动自动剔除分流,不混入合格品。", + "检测灵敏度数字可调,产品记忆存储,多规格一键切换。" + ] + } + ], + "params": [ + { + "k": "检测通道尺寸", + "v": "宽140mm×高280mm" + }, + { + "k": "检测灵敏度", + "v": "Feφ1.0mm、SUSφ2.2mm" + }, + { + "k": "剔除方式", + "v": "气动推杆自动剔除" + }, + { + "k": "适配线速", + "v": "0~30m/min" + }, + { + "k": "功率", + "v": "0.37kW" + } + ] + }, + { + "name": "成品重量复检机", + "images": [ + "https://dscache.tencent-cloud.cn/upload/nodir/checkweigher.png" + ], + "features": [ + { + "title": "缺料超重自动分选", + "lines": [ + "在线动态称重,低于下限、高于上限罐体自动剔除,杜绝少装、多装次品流入装箱工序。" + ] + } + ], + "params": [ + { + "k": "称重量程", + "v": "0~2000g" + }, + { + "k": "称重精度", + "v": "±0.3g" + }, + { + "k": "剔除方式", + "v": "气动拨杆剔除" + } + ] + }, + { + "name": "后端自动开箱+折盖封箱一体机", + "images": [ + "https://dscache.tencent-cloud.cn/upload/nodir/case-sealer.png" + ], + "features": [ + { + "title": "纸箱成型封底+上盖折平封箱一次完成", + "lines": [ + "整垛纸箱自动吸取撑开、底部胶带封牢,成品罐装箱后自动折左右上盖,上下工字封箱,适配整线连续自动化装箱。" + ] + } + ], + "params": [ + { + "k": "适用纸箱尺寸范围", + "v": "长250~450×宽180~320×高150~400mm" + }, + { + "k": "封箱速度", + "v": "6~12箱/分钟" + }, + { + "k": "总功率", + "v": "1.8kW" + } + ] + }, + { + "name": "机械臂码垛机", + "images": [ + "https://dscache.tencent-cloud.cn/upload/nodir/robot-palletizer.png" + ], + "features": [ + { + "title": "纸箱自动堆叠码垛", + "lines": [ + "伺服抓手抓取成品整箱,按预设垛型整齐码放在托盘上,码垛高度、层数程序可调,替代人工堆垛。" + ] + } + ], + "params": [ + { + "k": "最大负载", + "v": "25kg/箱" + }, + { + "k": "码垛高度上限", + "v": "1800mm" + }, + { + "k": "工作节拍", + "v": "8~12箱/分钟" + } + ] + } + ], + "quote_items": [ + { + "name": "Z型大米上料提升机", + "qty": "1套", + "image": "https://dscache.tencent-cloud.cn/upload/nodir/z-conveyor-01.png", + "desc": "304不锈钢封闭式粮食提升,变频调速,配套灌装主机联动上料", + "price": "面议" + }, + { + "name": "多头称重大米灌装机", + "qty": "1套", + "image": "https://dscache.tencent-cloud.cn/upload/nodir/rice-filling-machine.png", + "desc": "三规格重量一键切换,高精度称重下料,食品级快拆清洗结构", + "price": "面议" + }, + { + "name": "自动纸罐理罐机", + "qty": "1套", + "image": "https://dscache.tencent-cloud.cn/upload/nodir/can-sorter.png", + "desc": "圆形纸罐自动排序扶正,适配Φ100mm三高度纸罐快速换型", + "price": "面议" + }, + { + "name": "自动上盖+四轮旋盖一体机", + "qty": "1套", + "image": "https://dscache.tencent-cloud.cn/upload/nodir/capping-twist-machine.png", + "desc": "自动分盖上盖,数字扭矩旋紧,适配纸罐易拉盖+外旋盖双层封口", + "price": "面议" + }, + { + "name": "金属检测机(带剔除)", + "qty": "1套", + "image": "https://dscache.tencent-cloud.cn/upload/nodir/metal-detector-reject.png", + "desc": "在线金属异物检测,不合格罐体自动剔除分流,食品生产合规必备", + "price": "面议" + }, + { + "name": "重量复检剔除机", + "qty": "1套", + "image": "https://dscache.tencent-cloud.cn/upload/nodir/checkweigher.png", + "desc": "动态在线称重,超重欠重次品自动剔除,保证净含量达标", + "price": "面议" + }, + { + "name": "自动开箱折盖封箱一体机", + "qty": "1套", + "image": "https://dscache.tencent-cloud.cn/upload/nodir/case-sealer.png", + "desc": "纸箱自动成型封底、装箱后折盖封箱,后端自动化装箱配套", + "price": "面议" + }, + { + "name": "机器人码垛单元", + "qty": "1套", + "image": "https://dscache.tencent-cloud.cn/upload/nodir/robot-palletizer.png", + "desc": "抓取成品纸箱自动码垛堆托,解放后端人工搬运堆叠", + "price": "面议" + }, + { + "name": "全线不锈钢输送过渡机架+电控总控制柜", + "qty": "1套", + "image": "https://dscache.tencent-cloud.cn/upload/nodir/line-conveyor-total.png", + "desc": "各设备接驳输送线、整机联动PLC总控制系统、急停、报警、联动互锁整套电气配套", + "price": "面议" + } + ] +} diff --git a/lzwcai_mcpskills_generate_reports/templates/standard/meta.json b/lzwcai_mcpskills_generate_reports/templates/standard/meta.json new file mode 100644 index 0000000..8e8706a --- /dev/null +++ b/lzwcai_mcpskills_generate_reports/templates/standard/meta.json @@ -0,0 +1,11 @@ +{ + "name": "标准罐装线模板", + "description": "默认模板,适用于大多数罐装线报价方案", + "image_fields": { + "layout_image": {"width_mm": 160, "scope": "root"}, + "equipments[].images[]": {"width_mm": 120, "scope": "list"}, + "quote_items[].image": {"width_mm": 30, "scope": "list"} + }, + "required": ["project_title", "contact_person", "contact_phone", "requirements"], + "optional_sections": ["show_layout"] +} diff --git a/lzwcai_mcpskills_generate_reports/templates/standard/template.docx b/lzwcai_mcpskills_generate_reports/templates/standard/template.docx new file mode 100644 index 0000000000000000000000000000000000000000..2e7ba92509ed013aa3f34d83650245fd9cdc1647 GIT binary patch literal 1918410 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 z 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

ex6ytooaa3mD= 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

u;`1}(%X6!CbHHP1!9@dH(+|Z< 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

E9K-2n0?K>~Ln91he|KzhQLkMEFkTU=CXFlEP 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

K-9C`}*>NXfn6u=G1;E|fLGp>~`+&$01);9dWh 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%0A3}u6Fvjg6N?; zPyMEomgE~7(!EnFwf@P%FL53p@{mA`h?jda+^leKjd|$BpU;l{I7mmN@Z;KF1wLO=D)_%hc?Pd`o5&yBKIaZXv?+LRk&!1NwbxTC3M$CLW#YamXUrr5cSr5=By z!(;32)xF5o3xMfGPiYNTJ{+1oG^Sh#1QCAQYTw(QZbvOF11T9X4Sf&dLy+39j;$jR zAM9oZPpD%iiey(CpqKyn?g(nvx0k<$&WG-4!VV^IbW4wqe#-*-p(_w_mLz zmxeE;fh?1sKx|nhrl#9dwy4}z&B#E8rOacibb|eN+ZgDpd#Tb7zgbL^ZpK~B_pF)P z6U;vW{ms-y^QJ@-xi%YmC#x*ysVtArkZ?9#zN*r#k?D(OK4g^E=i;F6hZ6e>@Aw|( z<}hS2h2-tu`)CvrzaTkIZl{Ke4200NCYb#IEmJ{#!T>wQ8c$7wjI^H@8=tk}J*Q~s zYE?G2wS%w4vJ%e>?lj$EACjMgpl?PV+x-6C-BeSp3KF7D9n9dGX|-LC^M@6BQP&+& zF7b@Wcy7ii3)i2;%dy{f76}{}6DG@-bIs^16S8PK_Ij&N{`5{!;Yx-LU_uc=04E3R zq3w-BO$_oz9e&c%7uiMo+%6Kb;PJm@PD8wT=*l=(4t+t6P;_=tz6p|iIWz+3mz|D-vxfUK$H660FMeYP%9PqHQT zoUI3WUp!?6cLLBp@2I)fzG56@>BOIYHJ}X_2a@{(!?`^Jf{aD_i!T7OO`J6PW7k%x z2=+geLKT1n!)K@3kyG#%XxSIjKl)TWY%-LfPbA_O7X`1GE>wr#;CgIFqGZ>jtteb% zRd{4&xNLA4CCC2`T;yx9CR1Exn}&nj_pwHe|D}f;U4ZhNJxbxvb$#0veVjYKP4gT} zki~VNdu*rp`gS@|nOHP04m4kGOumob*0Rjp^COydm5?&hHPn?~Bd5Rq9JHA4I^eS* zA9_;bqZ?YPEe1~&h~W$_AN3MXUO?5yc-+-3DFXGCMO|_zBDhZv4+hYf&Q_=nYu4m5 zVPF^HH$9URq}JXQQ?tH`>VOZ%kGlDKjxiC=V~`T2Mp-MtyFIGd7{K5Qu)x2QB;L`A zUI>)i)%N=VbI?)feLu7})&5dAW*GTY*wqyqK4K-~nQzY~c!SLq(^q zbPhq!1XOG9CF2j0UjTrPIq)&|*XeZ5@(Ui|{o(Q3DSW;hljuRMv%h!wQNfYnGgm3& zvg!IFgw)9nL$lw!wdvR0tETKXo9b-6K7iR=tIix@Iiuom(F3m&BR{tLt3&tolxDxR z$0GdB-WM0SW%QCsL-w4Ga%C*mQrl_XR3JS?Bd0xuxD1bM95R0sr*I>mF%{txDWcv- z6n!j-mwg9vWS|KgHyYJwE7m{1{Tcm28r=X^Fzp1>I(eJ6&%}u9QEn)L5?F!n1j6~0 z@%KtSt6_b&Q^12!VGbW>M8kjSL3euhpnI;mzybVw% zQlv`;UDi0t;t@1vB|IC2EbRy-fg06+$Ft!5@ZN4A;e$wxyZjapK_i1|{7<5l?t5K0 z;r%b~B$q{pYo8t2vY2U_q}Y=P1LaR}QBavs42RaSlD@5oMe^&Ot_G!dS6Q z*ZgJ_T`oA}xWYu=t?8A~2h!q~{lsLK;u+@m>c3&c1}m&d1uYZe=`Yp6kNy}_vW|z{ zeQJ9XCd6+2wxX31JMi|cf=lNm4(@{$c2ap!$-awZ%VG$)=7T#DDtzo@(7i%Eb-ev>bob%s zSCF1`U;}g+j6iB1wy+Ti&VCx@iR1iyMyrXv_Bk>dA$~W;J9v{K7wY75GgtWb{g(y; z{YW2zMR6^rHnItO+B6-*Aey5UDVon~?zoP&E+X0Q16Esw39R^m{|P~Ev~_2!T0$SK zFB_5U<`M1QntPsVG)&LwHL)^C+6zEAfrn{U5Tm)q8Wf{=J(z7YVe0+$D@kVyDXL*3 zAg3Tch5u(BkG0h>ClFjEf-p@Z$>z@$UZZ-<$!0x3R^{72-xi2a7QKQs+pz)akTlQ{ z20(fG2Y?^_|M6MTGgz?utCyMd&0Yysf_a}a{my2~rX+gt@?BU@v=zOz1?QGk>2rrM zkhQ)%b4NYnO~~kLYGPSbg>}f9)vxD&}@p z_iJO6Tyc;={f{S9^2Q32x3lUt1ie@X0eT$$$z5n^2g253i5hz%3B~a9pX)k13HBO~ zg$bO(FCMZ7w6=Rq1&Q|;1GkvsNn z@UjAXD%bdM#%0zv2K{5Y>`@6rg>=fan|#IL^h?3$5AUb~Jzx9Uj)`k;q}xW3{|BnP z4A`!Th4^Nwm1@X^T=&|3M}2%kUiw9fB2W-*TZpoc`9ho^(fz5HN&m+SM_Q~O&!M8D zqz<;k_DIC(zrL3T+d`?gmaNHU3AbtXk|vi0>5e3iLdV9pgc+aLZ}1ti$XTy%XluQT z#-~8{uy*&d;FEk_!#N1?Mj%*99t}Czx!}fQH^0|ilruVD2}{2UAv8~ z?DY^bJ4xFFRwZk-GmAD9;H! z9-U}(pyI6vAqDa^<_Cn2yY6QAqgXtF?NCW5xa>#oDw_vfaitO39QI)DKSSIG-$>9r zF7&^5(w}rGScDdR$JEZ$i>&mButr0u{~kpu2%VFslp8TMnX-p4m%3#5vJbDZjDB*E zO}U-X%A;8*j_aHwdBCMoPK@UQuxLqYYb?f*`Df1XIf2U40=1^#IVAB8G(K(T_^1B* zNHQM~N}32q7Sv*Bpb3zH(P5YB|3I{QXEa%V;2Zye7NeVi*8tbp5r*}=z^adlWX1Ig zVg%bzqF}Jz(g6L4ASqurszeD2CdiL>qK3MdPKC+0=~%H$8mOn!2SnJN#k5NhY(w>Y zJ7bZe){WsCQa?WpWa6_^wS6B4VLGdTD>4~^F6m*qMe}j}0k+-P9v_wOx2F$bN1GLA zr6o+I8nlD+JF62d=Y2G`hjP9Q4%<(?Upgu~8FAN#`@Xl1K04j20=aY$$uok3zmWWB z{Hp2?=7^~+!6c1I_vSqN4}_R~uuTt9z0xK2*4GEmH1P{hh1Twzmrnygu8=st3$E>P z*F~{v))Er)Ys#p3wSBp3{!~7(@g`E7RJ z=!=xTBXG^&2OP^q#WlZu3+B>GG3D2YZJAr>8D!A`tGrG69#?Jk-|eznWQqoTKNv^wFGE8Y~+p zUU<0dmi3Kgwhp0pwDolAZ8LudaH4%71*}^M4*-T>J>=&>_g#~n`;eLvSa6H426#)J1P8hV?Vs*t`}!kEVQ|AP zfo%)E3cxI|emKb{J6=m&sCDuN8CLbVJf8PRdbi$3#g1Bhg$p(P`r7A3_-JLW)OE!? z3`PAJeACWy#{}a&VacAgQ|sdFIjIo+UK5e>FxP)_qOsbSyiX=$#`#Bd5-l9bDP3HR( zO!P7yDn{`jGBIhqOSqw)62d#l{TM)+)pe^_=zd}}jYndC#3V(x>MsPnZAjlV$hef8 z8hC4eA3Bq!@}a99`mf|R<&kNpT)YG<|Fsa)2xTmdyRnVw+vl)EUuDp?wcHVo5Udi=XgiuD^;Wu;EZ^PInX`85>#qjLU-N7l&OqmXEH`^k`81) z@yJ$+tcr$tM=Pa%C;hgDMk4r`6sdp`mA?8~Sq1C3P`iZ^mCk z30SZE4%rN_+<&cBTsAnRo$L))=c$A;50)@(wJb3& zFRX}MRH|fz*LOGG9}*C)Fo3Yk7k4oWi+)4Oo4LXs+{r*V&vRsb^uX{EZde(!tZ=0Par4etN8mRgo=n4515a9^S z!cTs=g#lu>$Orf@UAoJ32RCvcotcw{iKocIY|dp^*{n$4#?k9aooSp7hs$i&mtEFi z=~cTx4E=5YN!pwYP9|ce5>U_T^es)(^B`_Ni6zLt8BqpV9=Ok>=;`NQU_OZ84#Wy( zF5CXHI1NcXHd-6z|61i{0g0=5hW8a~a-pf@o}!jour8gRBB;*@!iRbGK#oYZ=7@|} ze0(+}FMO3v5VoOAHPd@#E2co9%X>_XeQcJ5>#@r-k^aB8QMGk_!h&8e-EuCD*R8%g zU*u;@U=yJ)XXmu}83%*05cOY!<6imEZJUX%=anW@k0s<)he1vreyp?QW-ZEsojXIu zZ)E`h?q5PyIvy({-bMMsQ2*C#>+0>qM`t1l#qNem1Snze!m4BDrl<9G`)Gja{8|I9coND==Ko~?dqU0I z%MM-A%{*S7s~I<>KuuJlz|JC9F(l*THs6!cHBI4{v|%I=rZ7Gi&{(RS)jif59xr1C zlJu+moVx$gaOX_QhSY2QV%yM6a$H}2_3oKo7mr!3MiO4y62W6vXInqom>((X8F#l< zLBL^Sy(oZp!U|-eZofwvy$4-l#@>{BI7qN{SmD4i&v(H47y9HEOS4*@6J_Y)rC+hbsec#@pmoy^kF$O=6hhwLie{s&r9>R#cR!WL#dSMiZw)FY9jC#-Nm1uumMs(zN55RCF>1}_$TU!mB^TF$ec9y zZuckM<~qNY>Ee|SO_nJ(sN5ba1xkFmvkI2BTL*-cR9CI95=YAmf0p_X*mW#bU(=~} z2$w<49c?*sz+5datFveZmIG8lUWy(0j(8b{e zO(Lg$R&R~;Yepi_-OO_j4?)HLG+y!P9l%hdcly*MT>q`%6JB%pqHM)CE$SegjAxz| zywkwlnBpA9acrk6>!+resgniso{3C!aAs#YG8;yl^1MJ?e}0E9DMPUw#1Iv`^=04NoI2DFekyJjQznCSrZnDW$_3s`s}5>b|A;FQ zg_J%2vlSpVW|&WU@m>_7=MUl}zpBBPEe3D6rWSn6?MS!Sc{x%t;8pA=0D``ZmTHs& zts)rdB>HY9!7)#Pn2>60zhZV+ND!Em8ECIDh4UCiIegznG#;K@Q}5bF-h^3kp^0ZU zllr5oB=UycRa9mHuy2-U1J&GF22@prVnTJ)re-XIjI8-Oeh<6X6PxOE@$#$%E!5GS z>nTgFVn4}w%q>K(M(jzWu@DP@I#dTSwzr@&CY3C$j_Ff|EZlD8dxZriJfDA%pTm=bxZ`*1a|a11Dv6n` zMTuGj>uJS4?KVe#-iX1ocAtHvuEYdsTR7$aDh&CDy4cD0noxCZ_E{~ONLRb{3oZDj z6kIS?QOJL`)4B|^H2I&L<|5L8vMWiOX~o7e z*1QU?lTV`>M2WRQm*l$_mR#zxLZhLac+S8x{QF?OMbyL7R#{~9_|+}J?LCHNY<_@> zS6u4pKRIy(INxU{L??^T8ZomBq;6?0Gs-g>HtdbLl{5AxP}}}AH;o|NJEDHR%FT>1 zAVz1})*dAo`65%5XTw|@O`kBxIEXvf$v#VZjdK&HE0cG;93}FFgQ0xrhUOvU>*YN; zfM50nyX92+!5$>#?!u8rrsh>V{k!Eem0giLL}dwgTANL!Z+brwT4=CVbc6Q}mNn)PxAm@0)eO9@%q_$l-|U+Y3c{XQnu zJl_6rdCCq`uVG7da+M5CxnhgNKjg(zu9^wa*Oulgre+7&X|BI4k@uk&6}(wJF2UVR zO}&Cge;tJ{HmWUA%DLc`eYJnS5dtO;x$wYrOYJK;E);tYU8}$lPfhc7l+$Y{U%-JT z^DKWuWI)9l>(B^!z4x7VOnW##>e?(>`k)?d^Acr=KC5)WoSUZ1^6=hRFHXno3sa!o zDt6n~M-5YYyfr=t$LkWKqbf5~C2Q4;sq{^fAqwdn4KF{7fl(Dq3EkIG|McHyozP5c zqaNoyu!cdGKUpi5^IS4&tM>g-$Vs^9kx?h6;dhWZraB5T5H zlbkk$Dg5rWR(x^u+mjrr8E9hp_VrSRg1rZxV?+vF88GZoX>Y#(VmRVRvupTY(Rp#1 z{1~Jc^#b36P4ms~RcLeF&$c{*t>NXWtjm%c4h16AP=3;CP&C=J+*29XuVH2=E-x9l zF`rwDvY6Rmwd!6&g61ZQIB%YvA!ZlaTisa#9~4=fe4<9EK`7YW(4QEbN{1U-EHrm8P$SLxo6_c1nM3meO zp57O>ui#wpx9YtEq|NW6?h9Lg!sCiGFgN!B=;EQjLIY3GP(@Wtl`-HgVrJ?B_5~}r zo_EF)=_0m208#URozTVadREc6nvU>svz?nBMcCaZfQ1Aw&L|ZQ>ba~PHJ*nkbROF9Y3EBQZf2(`*lfwqF+DRtcS~Nj8!d zuI{PD^ybD@Ggn?i`_+ni4uD9OH=sI^u+Utp3zISJ482Sy@KLQd_bw!zbZj9;t>Cwl zZPrz=8EGbLU0*Z>?foC@HC;>%}%2t|7#ZS_MUx+Pz=H$Lb6 z9#8F@X7# z^Tehmq0eSRl~VpA)k)8%v*g1S(Xk>=&E@e5y%hunC&XyH!@q`Zm5RksSUc@a8g`!u zCDrggVt4MtsX!WBUiZ-QPE3x*ciyHrsxeA!TB3draYpwnu`*3S?7yxdX%9y5df|i+ z5=jna3V>9Za{|Z`ZQb>Xm)3re+DxR9b(*lg*-x{@0ZJfTVQAvTp218Ra+PQ|Eog3^ z>bJC`|4UICRxsMyPX1N@ zCvp&Mk9I#$V7r|o-kd2~8k2GX9G|UhjRbA}>LPwF0UC^eo%bT`aYhPHXH|9EUkYR; zbfST?G;pAMwtxVdyY#ggucLjvN__^C>b1ss3E%sb;j_xjdvdfL)Eja@M=~u&vcYYdP)!+?uu+Wg|5>R1bjyWyB zsaJ$=<@&h>D}ecU?$TfazSbXeX`i6qRAURqu%w!j)29;mrdrS?>Tr73|HWNI(#oxL zv|pHNj|-f)|9$xs$svae?+XH+bi3zmKY#?1_jDmG>u!Ui8#<%wMzP*h=OJUqLNvAi?BYu2~uiR{MJo((HL@CxjQoV%qfs$Y=V4X0GwJbV*ZF%^xjED z>1Sew((8`H?cz;w$gx`i|6YxYA{o|SbV*8#YLh{n6YE&URF`H8_-qPX9PUBCp1-tP zhw35dF-9TD0|nBvy-4FQ$LumQTm8$}LN0+akQ~t$vJ1oXnz;3TBmzc05V7nJSAy|7 z_oqdeBLSS!HO?aQWzJV9T(zdwyRgY$WoD1zSbNpF z%GQ9t+?Ji)^7R^4kJgwtZW|p6VuRXeF}HQX3d>!P#qSthH`H5Rgf2G#%gWzi2|c0R zPY?J4xkW6c^I6PIgs;VDkTfKTrz?bDN#T%$#$8xZgp5ea@N(+JzorO)Vr>Slt&^=4>iiy=_X@7hD$UZa#?sLo`G-P@sE|~ew`BmbX%sS zH*{a63ljqU#t_i!VekCeu9K%rIvgo;c_EK{cPl@3;Zd9%X>ed@tVK-?s39c{-TAsn z{U&iS4mQXP^Ywqtt0>VIQOEawL2XPT#sqrYppA7v_RwggTrS@`-$=740*#-o^{jXg zC-rnEq(JC^M=glE7>{SMiofyBu!O&JaI>U8`)ET*E`nTWUWy;D{^d>cT^o1tBO$S- zEc7U@!uoU&-osG}o@P%=X^eoQ*#jHJsi-Qub{2o!LAhoI;=dOQM=Mwc#Ex*SNCcBHg!&cZrPTjcG=#Z>ijeE z#~4A3wT}$&H^jx%nu;+7I!&4s>v*f)m>N{p?x2)2D^J}wHVj2Kmxj(7T0wjns2c55 z&v^|`q```;iX1#KvX) zHy)_(Lwue>OGDp1L+M^}W$hGmB5B-|R(p8aYh}{BU`ZcBrwamLJ(KqIy73Eg{Z=v`;j35mMN2=+5e~Oj zaud1Mc@pMkHw+YfPMdgU0H6}<7ZgQ zfhf((!dzR9oG{aOec5ICRpI>9(j>h(Q|qw90mr`AktDt0@(G7wGrHF48}U zeiU~$19;+SQf+Fb=p!VrxgB+{gcPp&g~mwCSNLA|f1tz8T2=0G6dHWb;iguNc(vIs zP4vFjnoH=mih@H8KZLKVp7mkPR>rfz}H z2_DHH=EMS&7r;<$1>KDRR5w$R@CmZJGAY=d7>O*V=GtNP1ALyp8+ThQ4m0^_=LhUw z=YcJt`YHf3NoD=D#~uh@_~*}x_rQaR_*4YgiW27P&-1NGIeT|x{^1N_X|~PV*Hs5O zJ!AAhg)8SbQ$=R>S28+%UHK0*q<(FB**c}=+EfD03v)-BXT7gh*_-ct42#$;fZ zdVh8^`UNSWwe7<2C||`qOYLJI{DQOZ4DT$yqKXj=&6VCDv@K&iO3q}`wTsJg?a(;| zu@;U}mb2=hf-f<-q+=~`#Nr1st`sJwMBl`NTqOrB{%c$_6i#9Z|)nUky{J*Qb>*X_)0N`MDtHWqd^KtQ)pw zw$h}5QhsQ$rSZ-T-w(2I)W(GQrv&SrAM%OT%9wQXvgJ?3C(4Afc2rL9A)|3Hc?rd>SH zF(-6sX&n;J)@r==Ca-usX@{(zzNA2o^rsJgyaS{;!NSMSy=l?o#=5&){B>HhESovs znA-jSWj``;C&=Xv=6wZ z0}7SlK2EM1YwR@>uh<2nu>^kR>}0(?brQym+A_U*TY;&c7$CHmVyWuR|W;j z@*RghAukRqv>~Xne>VE^ujm=E?dr+)b5EoFPtJ4$i%<=L^X5Y1 zP)iW@LN(F#-vHQUvAlAEzD<3^>G8wkd`OMZpSWkHRBuZ*kB_No#q6%jE4uU^%@m!U z-h96a)v9mM_}S8MOzqGwPy0~v81<4X$bH8qBpzefN0Wj5$bIDno%Y`Wii>**Aa$cJ zE%qP$vA{4)drCl{y}ha7LxAGjNxp#OURl4SanI`>s^lNDq`Lc}U#fhwoJ%Y2(RYO> zM+TvP<1i^DFBb6oFp`(QP=arcB^hioznXOGXjhfri^)!uVDGZ(UytxT)`Kx}JjMefIcmjB^3KJgXr=X^ z_0Eb2!WdX;R&Oo;qEE!+Mr!65B)>!vDRLGrk3g-FDz2N&qF*4vWS+@as)w>9`;h6d0(m;m?6Zc)@d-e-HPL$? z4V5{>i-40){fxN7sFI&7%jCXigpce5#_%w%!@6iqp$;(QR5wkzSR#>3^Oyz#7icf?uG742JzxGhZ zi#;5m+xY7W-25Vinu~+H;*Iou_R20U6f4NCkL~neK{TK+wAELbw){h~r3`_@#Ko%# z)))5S?b_lhktO`J_b^XrV0lbT!dP$Mbfmu^0a$ZQOa%v9wR{qB$vSYo`Rv4r?mh+3 z=J6TWhFNxw1)mYK7|lm{|-XWf8XM`TW)Ur6&s>c8eRKFWcAnfM}QMF&MybFmiEDQm=kC#$0~ zrhHIRUoC1VhrYev>GFq9ezF~4*-N{u0H3c9{Rf%^=z#tLdv>F(KGSC3$;-kzN^|*u z`@XDvM#aZoC3m##3#`c&TR@|0(ZK^$^ygqQM-sXFJC?ML%RLyH@Mybn$php(L;YdPr{YOa%}+A%U7~?R7H7!N*O{U)A6u! zawT_GuC2KY>A`;3GbezG?s9ReJ}YpP>gCf(4iWjLU@^(9V`_IeJQaWAs9T8=@i2$rt8zR70epwE*14pC4+UT!6Cn)Fj&rXviC5u|}WO-)Ltd zS;zLrx=}T4vVocbM8{4Uu3*L98{hofKg-5d@y?8}ZFs%{G6Gdv%Ck4{wm1lHt78EA zV6%9dQIzlLw=#dk8M(?gP{+v&yD_azG%uXz&`q~Zow=uR%vBtJ^Y?9U!zu|H+JvfX zp30e`50L4~g|GpXcM9v%zlG`RY`rIT0KRh4yvUo^grgVj$L z(RWty{)Ez4uI8}LW2)}?L{5d$4^$wN`8yM$~NUrSfE^g0Zx zkt|JVTdN7G^x5irN|_l1TP-FVv`SJ+ER$>1DI=D|oF2sfW{+&s!Oz`#aQvbQ+RF!1 zjJKaMzwF$-IJ{TQ1RBz}_fWDZ_>89`_-@A=T0H)$=fJWldHI5H{H@e0LUwM-y*)Vy zVeZ6}Q6s;aNiyY*a6o4TBJV`>*uDJ^R60@n;ZC*;orZvgOM;<(9J0{sG6jr=Zt(bQ zx|sI;%sBXln4K|yt{(kIHM3cPT)L|bG9mt{nwH%oR!S=2+ZRV)k+RZAXBmdXwE0Ap zD06Q-upEEaZ~aUyT>yx$@xLgBl6RTzB2SEjrMN=sxOEG*gWwqdRI zYu<O{l`3ppI9B#pSN7XDE%UB-(##z>ng4CtOlNAYal0T zzl8HqZ#_dJio+2^PQ$dRapb*B>+J*+kR=Pgl40SxI=&ZbZO8|vOrJvF**J>m2A>U` zFWc(uT>)eZXTRk4@Ti&+LFAy*G2m+zysBA2@wKnhXSf9l-aThqJ&p6{z3PJ=wyG@9 z<_hVCq6q~Ecb{c7iwEuhPD;J~bK)xQ8Ms`T`o;J!m3rB{Xsls}I8m9V9aiX4BlwhA zeA;7d2bQWpjWvoJ{)#)p@uaAlqg(5WTY>L8Od^G~K)xX2UT)nU*bdr))u%Z&TgK_b zUlXR6@6bklmW(O{$;IlpcaWFao>Pn=p1eOx`Z;|fcOTDo$6dhPCtmBcI$uA&nQjSw zm!Sb8&Y}F5KXzwN{%h4tJ2XatHt38S&VCO6feM}CmyRUieRoGN<1_r8G)r;|bT`Yl zq11SM;+iF?m0;J8<49vk?zHqT{}n~OOGe=0OX+CkjI5lp{A$e***-cA*%E!ZwqZGV zl?s%>_G@2+0*Ud3ReNfAVQy4)<*Az2ixt3mmz4x4Mx*f1T4@Jn7`=o$f=e!R-~) zs9wGaaR;GO2EjB+qs=3ji|^qtTu*_Ztfq1^JI!E%xTYby8%iMjI~>G@|2s&E7{A+* zPyR96BMuPx?kZul$<*vJ$$5oHh0KliP+C0l<`br%JgfWTl?3Ca)jevJ9Htr}`VAow zdS0fAKR@;GNOLL?Zut>Uxi;U>T4@~fF2ucpMDzCdNYF?aa83ZG_WN`Z7+ocqO@el> zY7uqG?S#%V0y~^QaVtF_6tn#()=B|ozJ1*bF|`5KzskNJn|JkR+@dU^jm_tZPN4y@`o7A2)ilV56`!KCY$y8If)B;Z>xO*?;Z$vcn{RjUy~gE z2f7y!&iI(|ABg0#aG_BJ7{SmThwD?JQ#7P0hVv;pC2r z1IghmW3WQn@?kjgyuHG^g!RW|nDD)=zxcYp@V`umm|epMNuLbqCxD}B*RPiAj=cmu z5zqX~8*9p)*Iep2Z&EdndP2@5k3jHNJJNtI8Nqh8U3cXXuvy#KB=cUx$ zckL*&V$?^M2yi}&BdHBAJ2o5r3ts?#B#!JP2oS(=iqsPUSNm5 z?V52XdwStoqqkj_LuTW}PM(1u39X>WW4`$BnHuK<1@glJ?^>%s#L^X;wnqZ@xqHTx zdnw8fMTp`qf^9GDtsmaA^AXpt_SETrX99aJUC{pmU!O*cl$Ggh48hx=WhRyxY0tWf zcJe*ty4CE(4Sg>O5W66Z+wpy4A=AXgK`56%R86FJN*HkWDhkPTev3Zbu;U2M`Yz5# z;Gd`S_Ph71uB_=O=Qa}5%eZx}S2sCswmEiJVO`RVFm?rpeF)%b8}DRXe82w6CeS~a zE@(^(@VBHwNcN1+gOU=^d1^Nzf?Gr*YF#Bnz&IFd1Hc9+ocg7F)#%Ki2a_vE? z<*O-rU#mdZ7+QQ_cGpdbWn)Xcm=6Fj?;~Zg{)vd7KwKcVT8tV$NbIFuqd~%I(0lhM zAdvrma7addqytB}tAv2vj>7voYU>f=aZT}8B|6qlE9nRQ94(yzAIo0}kA9r}!W!bL z9q~^PQtf`|VBgSJQER?WhkM$Jwn@=bQ!IAIN_!V{BOtbCqOYI%1(l`!XDUnSrBJNF zkMTi@3_)Hw18td8`A4VuNVxYdU`){mpO%VKj_}LiENmEKIGbp}a+5U>aHX~TpaV#( zj*XS+nkinHK9d|}%4UyY7{q03lMNS8&2TUM4@5C%Ba~J{Du_)|kIeH!%*|PbFQ+luijt(WpMFA|n#vG{ zt3Jxt-#<~vm_c-YWMJ8A`?6*Bkn8L05!TU=y~%B5Z8P#=|44sb?z`0JyuI8*EA(c{ zY~A?#e8{3t74%?l533??c>vnkz?{n4&p#1K^Ldla2+ocQBSC+9xdwD{RIs6QBDLFk za_8Uue#$^*b%ZPXthkRJW~AbEUG9XTvU14lLp-U#Q1-S2{Mpm*pR%nXks$4LSvp0{aOOsKs-_gC0U8*jdG$u+WisV81-_>eiFz!a4< z>%{5o((|=vy&1oS>pu|w*^@_c-#b-K((#H$E7s*LGti`(O2ZBoinpI0jT%+xW<6WP zKvtje?AXWVp3gzcytzUo!Fz4w({z}B$7gb$kuuC*76adnf?WCz6w1&NleNoQfT1h% zcwfZ9uBZ9?V(_Pb&b*@N-vOCK?PqLry?7)=z}D0EOxtihxJmL2D(|Hh^lPRL!vDR# zy|hA2#yvJ{-LUE#cp`aZVa`T7m}8qSD0qOC#xJQh`-Ww(%a377;KvC|veHIR?q_Zx z!DBYN5}YBw=e2)PRg3wPogpk<&xn~9dna#qPAjtc3?7HBJ%!4ksuOl> zGv*N(YyFl{OqndBHf4om`%|X!Lc~m?)R9&iBrK*@aC- zKlK(2D(w(J&Ubj)+ois$w|>I=26JGU2^p+06t%NdRT4IjVvVJFLOjg`$G;RVGkko= zJY1^u*+5wA%6_P1mN66mP?mjd;fqX-_to+3oqETv*tC+x@-suq4xVTtp)Efl{D(h!LWZeDro4=Z zNiU(W(@;-(G0zzn7S2bxz_ei?JRvRHQ3et*7mi)EzxmMD8CU;F<7I6=q0 z^5_}tyM7qO)=PK#7XFy6{{RVGcs=zCnEX8&i;uIDD+1>+?p`@3zANXFn6E_mH}d$N z{Ce3D{{W8z{U{OH&#ibG&Spt1KxH^!V`I@P=B3p`m9SO?BtK) zHH|f(1d&SRSoI>d@R$rP zmVkS)HRVqj6$x4deJk+)0LC)-#?JcUNEQ)p=ztFS41c9|LcEjUV`EFzmmHa6IQj$r zHS0o{h3j5F;|w;FWPiJLaz9o701EZ&7Gcg8HRC=zxHh^?zsOj9y5w=&?*9OdCN;Uk zUrZxYTHX-1vWcX-)FfDe=X0I{*C%&)vq_v0_*7?Bz1|PnvOlq?kV6vXbYWL4=I&6|BlW=A9=Olg=9E_{P-SKX=d`sdBi{X)Or^~lf+A+}n zJ%1X(F^Z}+Kz>z-oO{wXsgAIbpIWr6Ly|1{LbP-Q)7Mo?olbb;wSj>lkKS(FdR8IS z`u^nc*PfLGm$Aq&@B{TUTHzTa&!fH;>+x#dBGlj*+>w@uuR|8)1M$sz#eCoUJv43O zT}xzpf8t)<{{ZQtSJD*?Sa-g{AG&^(%OAa6OMTPyu2`OGBs6h<5mz?)aVH-;^Y{wj zTyet!KDE~TV#9cL(L(^uF~H6V;B>DOc%{ZvzH|NR)}O*>JDIC>m;NdZOON1> z`Byo%sF(ZWB|uC(to>fyd^glw5#EE!LHy7m?LR<9`@LK2H+fANSE4`HGfLiC#6ai_ALA zcLN||TS)u;1#?1i=}~GjZnefS^DpzE#vyrJ_3sVq-ahdLnr|(yw1!o7OigElmB*p? ztG*raXNqn-Y&0Ee9WWxqW@opFm59y;GRM6i2V@VS>JYIXyShDi>Y&iZC_XZ@jOeH| z&%9Uw512dBloDD5WbS$k{l?(^)84%Q0LS|7q2d1k2w3VGZ0!u<>5!EJl`GSqrFJvx zI&4w5nWl`YZ74~!lyL;nCD zS@w98{{Tv{AI8rVpaIs&$NN^?{{TAVB)6H|kb@q)QX3hY0fGR1O&q>Mx!p(c&s$PF z%PR&R(J=nCVSYQ`1{?HSNe6sL>TA#9)8)f_(Q?`66#>#DXFI2iWb^`#Pa$(2q`w{4 z8J9rgJyL)16>1-j8fC+zO`~2bIS2@qNEzb1faz)g{qqs&x4k@AM{lxZc4tGp2EZI1 zDC8e8^p>x!+W3FNAKI6qMz@0PcL>H$AdZ#JNAYvQQxF>B?mzdSIQ=WnbuS-kUL^4R znoaCBvDwQivxrddBpxtH{*}s$3vB1g<2+=ORVed2qGIf|Q&mRC zY;+&aw^Fg2jn84zJX4|BU0g{nrvj@;gb;Jvn&kXxtZACBiFGThE2Wwl@DbD;6Soz_ z5CY;bLs_URw|;iHlbEjWaS>#Hm!9_NMndQIVu1kFSS|Ld_!S52z#c6&XJ)-|#QxLpL#d z=lKc%b1^W^J7oU=I(xV8lb)ff9Q?Nf>-?x=^Fn^V%9sl=-38iuqyGRZ@Qa8feQI{{ z*st2NkUdhp(>ZIA>Ob~c@O?n+)~-Htk2*hW61^*z5%Djd=8l?Q!+xvsWnUseZZ}3j z7U((ldX&KaXKdgG;!a%wH>`U4rBX8nvm+xPWj~m6S8g>1y19qU$L=OYQmc=YuNn2AH7kge#7CVN z{{Tc~>U%M%5NAtwz8=67yY0? z6s*wBcK2P?th^=Sdo!ueB>G*nokeuH@6QSq?by! zI6v#*Xv-rXUfK5**4=n+((2`oqokN z;wneZ0Kg5$KZYr^E10t0UFzwpYL^=Bqo>1bcJ{W=S!Zf(1LlwbOJw@=t2cL-dZo{W zt>M=0k~`RCX=kp!&|+(m6R)Rg*>j`bzig=}s{ znjyKnv;NLjNIuUX2Mho?BpmdhE?2Vg1=g9O>)&p{{Z1!Z;CE%{5V?T(c!imBZ4SV0Scg;^}#%2wOG-7Z)16DZnv@su3d^T z2tsE(eKIOAbmJAwp5w&SihQi=m!4nn9+a&hRLM0S>Oyn)8tyP1xXH=jdV10v44STW z3p6A(+yIWoQT{a(>Nae6yny=&1u!O+$0o8bBv2TWQrzD`j4i}pUE;AXuHtO|`46yR zOqO$c``oaQ#pUDQC6DwUt#VecAD-r1GL^&Rk;k?_t#9jhHwA=i@|Ncd$j7^Xg>m;1 z$g;dd;g2~ZpTqO4syi9To63%9LL(~UsbP*P-Oh^*tf*tS7ZWsrLND#K)af6&>cdUuOa{JocLceQ_?TscY9H?>g4n{kSQ0IjU<^~#J zFaa>Q{{VqhzYQiyJ|o@;_)oJssQMB96sgV0gyNDaY6BOu`$)s}tm#O`D@RpqYIket zGyecHSkp=KR-H*JPJ_)gP~1kXj4=ba6#I#cjuJjuuq$OO64u=n!8sYo8PDiyDpchz z5WcL&ibHWK#SBu(BOC=)$u(;GPrR{6p61=vB0<1llcDtU+GzUci4)nmsE4tHU=k;54t%B0f#uKwQFcBu1rurn1dOAUMqaX zZ56G&q9XlCL{ds%^UY#vNG7>f$wX%3aOg6BN|;rYo~J*(b#v7I2Qrk_Hk_$-Bin&q zyPTYM?_N3ZHwh-Ns&c1m56>0sL94Pm8V}AZ$NX}D=)jTFQk{P>pXpw@4&$EH{ z0FWKW`#P(BsMIl|$*%2yVnC_}Gn&@AZI}C zjm;RI835V~GT@vO)C#$Ga~PUcwuxs#*(&_)E6{>^jwvoAc&_A>M&D|O3oIG=N3K1q zn^tpbLM$SWP+4$ffFT&hH~ng!xdd_EmwuURJIe`w$AE|Lohh?tzAD$eNy5GBDe^~*h=0hd6)9rkbE5_L>4htTpq!!kyxHjro z9PZp|+aq~P9}IJhD*}H?fFUG|6OOf35iD`Tu*f4pj?8imG@`x%RXOZ&PcgTYxmLl+ zJX2X5pSW@KrXlMjuywv5auP{dxe2k4&0# zbqYY>0ZLLLg~^xLZ5;lz)@X+;(le8j(-aJ=C8-gYfR#JP8T23hdaw>qbIcIizLFkh8Z2fom00J+3UN$SM@RDpqwh+))Z zdeWJgqNrr)oZ0_*h_wnos-b&-hdZ>9-PcM{}OF=sH)!%N=*ac6!dCuBDQgKh>fJ+Nw`noaFLx ziit}?;}>(xq{vjs2O~UosPkU4cksu9jOmW_Fwox`~P`aKTU?Y8he@QHWl%^RP- zNdA>+uf7?pI9n)K05+Yn{Kvo2w=BFh;7f@mjqKPuPSFS-%q{@H-~-7g-k)Wn_#x~} z(CG;)h@N8$#>IgEox8VV7!}JbGP`{8`^{qX*?v6?7-jfjG>i;!qOLGo%>}-L)}Zj# zt!TQ`{{Yzf4U9#RzDK!qV1V~-K|MQHQo2`xqp>Xpkdy3*O9Kf6XBj1l$8*xGe`$D5 z*$J`Gfwx&yO5Re&RYBkmxjYX+T2iK|y=333CUI?PZM!nQo2|`zd3#}V3c-65Z;BGw z4H+3+H#zhsxs7AS8n4)6p4!&V-WNc{USTYRF(7e)kGg$(SA0BCq6re|ba^HDN{N|K zWgf~pW3F;)wA%KPw}>au^B9bX%BmR@RvaO0@Z;^=QCw#3=z{{TU(Q{r7#;?m~k zIG}-)Gj3HZcq@U=13SM;&yU4g%pD!)*gS2C0W6!!|iua)FyjjrMejwP2OoI1F1Y#l)A5on%Wzwt{oUY_ylEBo<|^mT8Z^NdT3Hf z?<9?jgAUgThUtBAcwR`;TRY*~hl!3@lV4+Y zsBCE%{v;%6i-V8ekK}8TG8}cTo5lA6+eSw!Sb54gKE}9z?FgKV?_XlS{d&0UM4qMn z^v9T!wK+e^s+*W!1I{Bowm0}zhxTRi9gAf-$D$wRX^3U4o?M}&Vn?-Twe$@h0mV~I zCsK3Ggz7%2{{Y2P&WWfM`7I^SxljHomV;L;+up$#`JWXmT7(h8p_~Fb)fMpWsCh9i zPpgVqJTt32QU#7Z#Yi8#9dSjF?#wge>pRtzW3!!hF;G~Jed>|%EMN2QA^NZt6_>+L z5&yTn^r~EV`UF^2rdik0=jt0psagC*jTGF=KUZ32oh58P0tw zS$-eg%_~VQ-L~dD;4rE7wELR!NXQq+hy79}WAh17$4_4MBsX4UD`S8 zOMM{r- zhqwIy0Dt5!{=GUs2*;4kdglj`<$?Wc9%NrDFr|WMV-h;yPCM3asjEk%=~LfItm_h% z+Pz8aE55qWBD;u2)4Jg2APUXA@Fj)yoR+iP+<9^gHrxaJsv#$DdvUnyq4M6b;tfw( z)?RDb9ZZe2Vhnbo`T|ytT^!55z*T3+Bcy9!MWm_Eo0Mjv8pYW!< z7G`;Wv*rccaaFi*qv$h3l3~l-`SLAlce0I<#Bu_v*-%SuIR~De_& zC(W{JI;G{szuGk!r6|J%&=Na;TDPZPOq!jcRE4B7WSP#@51f3*&~@Nf(aZ4L!Rm6l z4W@lclTs&ud?*1^q1qo%Q>_b?Y=UYtcaph>VLzLv!6RJ5aOFUGqWg}+f=9M~W8>L;nDL3a(;#PmgsA;|<(_?TclJ z$T`T#s3X*sm@3;zlg9?VZ{p^cr9t95cp|b86KJdrz7&#KyB-PlIM1l>=TD+s#Vlqf zS;ORoUzPs=?}N|cGCk`=?ucr|{U%c-mg5^Q%zjtk)!ZrSgZ}!>M`fkzR@RcV){L>n zK`za=sq7CY6#Vf_EHvSILZ6;LrE_|lI_geUR1yX;$raJF4^C?m<}!6=n`zq+3`oZx zUuw>$!bJ8nL-|mKavEo1Fgl8T%gOtvaJ!@%l#Zuq#c5gFV^tTXA2v9{J1*0m+fNwd zzA7C@O}m3q)8W0hbdEO%3OQtE*=k&uPo7{EWB9||L$FC8mO8=!b48DWp%HNL+W zGV zP)|XVj%ycDx45(OJm_2mZM%mmPqFV_o2Yox!S_@ZKMf@rXyIS1 z4gD#@Q21jn@jyTAl%x7qQ=+Es*{o`$tz(orzMY(#sPXBO{uRgT`lp$zm$j2C7{a%$ zdiamwoWtds08gorf0(C@7vZGb`SyVO+>!jvC{R&%xJs&O);z;R)}Cmd-J{^9)6X3- z#Z%P-+07eBNr(_a_OD`#!(R`9{mtE?pZ0FY_|&p^H^FzR16;!6x9`-@s9D_?3bdn5 z#m86F=DrAAq`I!NwRWpO2p{k@{{R~HZP_^d>y_}=g)}_|>S?r@0eNHE>Z}MOAoluK zPQNIv(z3D0$xCe+>?_Iqagn3n=l+7<`y(IeUZ@UEPfo(TqvAAACXcA9Hr5)dK7Z|- ze~mUYd40z(j`V7}HTID#QQzCNEi`K?2L2=?Ad1hKr$;-8C+SOhs^8uizSVH^d1xa| z?VYMR0qsb#7ml9{-b9K*3<1dHr7g`6hoP<+?};P`)E{=P${0Udv=8A(al54!0yrXq%}QFs9141fkSITuN+om2 zcF&9_oXU#C?C?74xis$jm?hX8>n7tSW9?b|tf(OF$)zl{wEGZuYL@ zK+*1eK|5PTdu?qYP2gP1v&?VqgX>&OP?>I)G*VSCIj>F7bSojI9aCAkdu=rv%Zx@d zEz6FogWI{TycQi*ZOQ1qcYP7hiK^jc6|4M;SGo-PUC-I|TYHOl#yLH|ygM~w-rLDz zaU>G3VwfOM>rkrC!+H=`RYIriNLH+v)e&lVnPnW(|&{gV6ECa~htVVKE zX5SmLGu{u8UpZwQ!DB#=bEnw20~uK3Y30xLuRWu%;WS+bQP-!6 zJ4<<57m-ot5wj$DJ;?gzs$cjgRk!h68eQ@GJXd#KOjq|2l!^ZU+8OQb^sfH^!I#Ld zd#l`CU!)CvaU^#3&K4rE#$B10xabGID>~{{hsXC2d2?!(FzKx{vFdZ~FsrJT+Ik1c z3O&tBR~lw6v+&nd&~%^eIV2ZCIY9lyXJCsN-o*5+JuBhFmr11DTwkPi*LLl3a@)~b z4E@1^e~T;0jZe9_T0V*M{}gX<}`4(ndUe50pp)qtKv@&+~~jA zR`$_dPjP!|6ta&ig_XuaFRAwHU5|yV?&q`Aq_y%+sUEBIYV1B`UQDmg0ALgN)sGh) zQ^cMj(9V~yZ_xEe6TlgQHNMZh!?@^w9w@efeM%O;4N~In#@_zo`%hP}f=OJ&A9U_c zPy^E){p%CMz6YCIv)8WEbHQrH3n}H4M20}aC6AyV&b>zZ^33X2_m;O)$RTMGMU;}N z@I*lip4nx|9qSL_-IbN6gzW|LE!>*L+>^4a1`r6r+mX{f&-=oginv{z?yKONO&8(% zTwcAjy6I+glHT+ca9au$e~<9*S{Hu~bY;>s`)D<2Vby1piC#ivc4blKB7w$Lk2&?L zpAjzY-hT|~x@-s~xVl+Yo*=;hauj-UcN}_GVJxC+SebPZBSMGF4Qi43jQjSGdV})x z9e6$HOHjGx_nH@m;qe68W!pWdhe%ghmpFTp0m}}0gTNKNKZLw5ZQz-SmgR0`@{&u4 zZ6uY1%7uttI8)s87^pP;PVO%qc)_45AX_Ig9ifOQ0>{s8Nv@m37g~;;;ca4LJ<2t$ znh35%^0|^mz#zssUZ<@BIIo9Z9q{I|(amu#qj9KN=H}wnV9YyI{HjhqVtof%i^jTt zhAge_uUAj;4VIyHOIpWsY9WVr85r~ex-Wzyn2Mmv-UCUQ;+DD=p|?}{FXNV%d|>3$sX zpN6z)>=EzG44Q?@4az2wNm%_dE0Z1@xYK-m+C;Bw35x5?N4z^>c*a<6K7?^yyJ(uW zp=BO}CB?0U#KIz0OR{p2m*_T(cdll`TDlTelwEVK9#_WjtRQqI{u6lbZgH~6s8{{X^$eGDG7#5oAZVsee3~VIq?eRFFbXv%x2n6(NGGL_dp#-(uwR5+~nJ# z73ew@<-FQjTQbNcNTf}}r^vbfwZbYZFagx^IKk$+{{ReTU$g~McFi&a{`6$y{{S7V zbn0ra(V9_R+0UU!O2~pU0VEuf2^@YVr+cerTN{G`QykN%P5DNDf&o8e@eA~0s9`Bn;7R+Wk2vF2NZj~ioE;(0AKJ6lIk|i<=y?6V`s8l#>`58 ztj2TKHDzzDqt&Ekw^j2ch!t)^otfkL6IeQo1b=6y#sO@mQR|g@ws5-q@;?!5v}2!h zjMH4biIbZ9U-0JMovOsTk>pyfWBCzF&}caw8lco0?_jvpQ?gru8u!e5nXBG8g=5w@DQC_Uo_- z(@>Hu_5%`dDy8q)=8sCcj1wc<%CZywz)WJD*F;Y&y0c0v`J2V}k+UulBXuD_IpkCH z%|_|9T}d8nm}JCc0g;phnyn|4z9y34K??eOa&A7m$jwfI-q*z1qaw3FWw$>l&)$R+ zMbPnHh6rp z=k)$moY6{~{YiX9B$4TGG;%N^Sb@Pjg5VlY6Bmxo9gIdNiBGuSiabR;Qt6iC*)&)2 zC?eH($qg9)0LR51B?tR8!wMAc1!FqIEQfV>d z2?NAI&gI>oIi0`tPNTR2uxB*P?U1Z*Sm zIjg$fn=|PejN!qJ;Z{&bAY(YqMexKV`Yp&jI^L@h^^6SuYf)7?kZEcE01kw$2Cb=D z=I6sOUa{2fN?s^bb@_%d$m11eUle#n<0x*Bj{g87^IT_(Om^Nfy)wcjQgg8VD=6Pu ze-4Tx3!l5raw_){qJ_-jNRtHtpt*m^(ADfS`uG?m@* zv|zs8{{S|6*Re}sqS#x>JeHQxMH-f8E5HN2d54JnYZdWpeKy7jt?*Px@u_wm+55E? zNorJK&7wzpV=kVls99YIqF*(HsUrZctTU0HQPu>=e1#o!$E6iuR zd-+VaOk|MtW;rz&iw7Cw-j}qos>9!QdO`69ln4BNC**&^qCOgqU96a{BazLtua4Wx>)+ys5;|D&~m2IQjMRO>0-?$Bm!#JkuD;dg*M=4#8!o~x~ z))EmBHJ5U=Z9<;0k%tx;j(0*=zI!(+w zgGv|^??A_4NbAJ_E|1Kyu#_S04{` zUEB;OKkzYMImB@;;Cf{6Yv|vJ4oAbiU6+Okgdb0wSI+j&Jm8}_CD;s+)6~{e+_>y( z_-f86@2%pVR)r;y2a!;@QQHbRC)&OC$s%hDJ5TJnuVS>1%8B1bbpUrcat9}qUKMXF zmX92eyGJBsGC1Lsj)u2o@fFshyYIC-i5s|FclBPgJ;AbE|)%6?J`_XHj)t=^-c$D-ZCYjbAP%WV=u!9ZZa zwzfg&es*u5u3wqba~>PrmKu&A+vE3$0EF zj=mtY6f z_Z>K@I0e~9+_Zj>~;jSk-K z(Zd^nWGK?e#O1dSQN}&1KUDEfm3gk{_cpp3>DIb@izCAnyNiv%unFn(uSC?&fhEJ0 zeLWNGlE(_Fsofz?PaOyg!9C4X+iM)x7I#gj$cggl;tww|$F%M98@_lxyz@!L_Y1Da zKL^EMBU_UBbaQ*@3S=F$( z=rEuf^a!QX*&<6=tsdqkknD)WuE2uB1-Qt_9Qsu#HAoW1$tGKQ_A49M<`HBujiksR zbvuAPvbYpk_Z`<`nbp1}-fK&wNNr(?YYUg0jQo-u{DT9suN7u*iDGNLIi}KW<+QXS zUn!sFl2DsfiS!2~4|>_qn%?ig-@lU0Z?7I{8IH`N$iS11*j4H8S7o0_g>@OBlE|&f zMRRKEsuyA+MsN=!K4Cob!KRb$CeABG_=kU@z3WA3XDeS_o12p${{UE}Nb>XPo<&cn zc?(qA|Bd>2-NWs3IhacqVI8*DPO$@3GC7hp`| zrxdz^gjugVKQ5mnky=2lG>X1b+Yc~16>n0ir1j)_(Qhz3^4DI9)5CITt!$G=E&O+K z$X^?R3~a~e&1huz8K05Po*S+=Lc`&T}}-zQq$~J zA#FHGG)F5aJRAfW_9nSF=DkfDThw%ms}mTzoo}XS&?7^)2m=2Av`H!ld{EF8 z7vi^zS5b=UOXQIkC+yx>SeTG{2aeV32G5W;D5Trj=l3(Ut!iF@LY4*MJJgKq`q{h2ku!^0iXC2P|#eV z;Xf8j;VZeW63ATwgrst@2^^iI$FFMTbsLGVuco<~w@Wj$k{?zlCcU~nM^l$n)vumo zCZBJpn|sD^yA}xIIYXYskK${`8tK{PXq##?9isz*o(JVqC7{#Pqh^J#Az${zcfSnQ zJA;0bjFWMdK8$0Mxl38*6X$v1SdqtJTi*>XJh|@Fp0dQl{`qnJYEsn=y&0_xDJR2w zrsvF#z#sSu&OfbP)=>tDrraiX4QAgy*@utiS+=(Uz8~G7>U8^*KZMF^-lcY@!uF5Y zYIaP2@5vPGt@8avcYmMgTGwHQJxfGrz}qAjs>7(xNi|yT2;%Vr+Y+p@>6WK+4mcy4 zO?Koh{)TbDlJzm^k^cbKs=9^F?O9l!x-3IKMirz|y7e=ZpDXk=qJ}tpb$b!yjY0LE>&-p#-{IYJAMY%qh^umcGm(`DIT`lo773W z`DUtW)&VViIOWHb(A?V>?~n&Sm07!yPlUq1D;~8P0gi(w{Ao492ZnqzA#K@d&(M_r z0P9fW6#i@R1vxeM{sZ+(e=o!~QgOE9Mpq-$iHIZgr^jseel*lzkPWgMM_zj}HVrde zZMx2hAbrYow!!R2ng0OSskH~$ zfzft=Pv=)W8O?IDTw%Ksz=J_N{|3M{F$WUzaUe3e8_xAeBT1k zI<9gR^Yq$5ruePccrmUOa~iyEa6j4xw4{s7_*1I6!C5rrWe2u4pXo`cTj$|MsH{eQ z$c>J@3Yv~W)QUbaBmNN?E+b!%N{#dzfuqH$$HF%k2!)acc3XzI-wQdK)El_VErM5{(2i$OI<5Pq@o`G1a1CK3EiE@CK)}lXt`2QWE2fKA6UGnWe}+Vb^Xhz8_6?olUH5 z$FhO_E1vjms7rCFYE3%=+oL@(*w(h4Ha;AAFOW^B9QpyD>s*h++lEW+LP9h9#RU3p z+&`r-8{@cbVfc$Tog00b)+rrEbF`?>PsX#Pe-8w5u@c{E46E~J%I+(;*StMvuXuuc ziJoI3#}s&rrwS`Qya}bn{;=JlBO^GiQYPmv-`K`GVP*)t7hwIz(V#v<2Ur~r}JQ;T7adQ@^h%6^o+4l?!~TfJ{+c)QtC^}LY%@3`BN^>dC{x;)>$!iGIwr{HsOvz-?H-hc6rA8@ok2LH z0%O{al)2+HPyh~S83)_>QglAlvJVo5GL)^yiCREH`lh_szY<(yVzB+xki4Qfv*-+JIWrQ;=NL9(=0C=e9FM7uQb$S@-GaF z%ARxTD=LdiofIXln8ia+FY;j2kf#1cHfYG?iooj@MQN;FbUAoP5)V~95A>>OD>8yl zO24IC$8USKd>eU`#V7l$I{pU+sN2MFeKU$<)N__#2G2rwyD#d|TAqyJ<-6#!5 z!x8e6aO%0L7qA68mo=;QgfK#iS0PVBo-#=N4OW>Iqi>rgh9p#3p=)r?K6T)Mo@&pB zWfAz-M}bNCncV07(g*ddmy&oILv9qx1{65RKGi>k;?+OlU}<+3_NEcIr%Vo1j+Cjv z^WUL`T@{LcFP$RsMBZ>$K`HqN&vQ(QGcEELl$F|B9YTZBqw(Fl$>MA00PPZyp4Eq^ zYEoO@Cz^Mm9$6mUs_MbLQO7trY-;(xzh{lvc9V^x@}{yq$tm>W}5PHp_!Buv~}7$3U}BW0076- z){dPOvhJ1LRiq^2Bju~>X=vYZ)SqKjDwcLfR3V|x{f+lv2?aLp+}f32F^R@l9^Tc} zM`Hp>xp!a=r##mysY)fheWxl9Us`aRlN_UDcRvT^Kk%0jPyDfC`XBMHc`uKxeEaZ~ zw)oyL>jZ=JuX3LKE#i4xe2Kwq^*(~Sqp{B|%>e$j=N>eg)$i}@?k6xb#wSQQ?5d#y#o7Bv!^`oYBzdzi~j^JMmB3xP9yzLlYp=m$>as5&P4IM^b13 zPC%w-lZts$>p%m&00X5c9Ot2>E1DOj139mVhyE@0t`GMY{{TZ3;Tn2vQzH%l!20*E zc=7s{@FuFb&QV4`;6l7oD3&;cdBIWX_m5LqNorEqb`<{r83(>aC_5024ttMEjj*F} z_32N*IQg(Z&J6+rtF(UbXSg8JD~R%P7@h?&fenn}f-(Te9OPz@2v28iiE|U36Jv>=2k<<>(d?TG7owHdxTgLGNV0C zMMdPP189#OhDLuXl0;@~0gwg`DgsZ`&;ybM^8qNJXOaLk*%l^ml@KZIj+E&0^AVrB zieoD&0f8KM6ov-W;Qr+pdW;cDA(P1mdFH z%)ksP!FGr_KTP6!eeC-Bes)^INcmDwSb`C)nB^27Wo+61x3t6LNg=H!QB*#|u_O7>xE zqo&iO-Qg>^!T$i37i<3jkD;p4Nu|4) zkA>A$asL1w?%wz$W{zzK%c;Ao6q4soXKZbn>6bmu)xiB~h4hH`D5w2#(^V7b8z=cv zYIByp(%Wy!FB|3hsH*OFYu3w+%l27QpI~XJ{)D)GrlzFGHCd$x_x}Ls%zcz7$Lm@) zH$F#=nead4GQ&Ub0bI*mnYCMoevNGg2^|0<6?($>zP&BXgD?H4l4IX*{{UL4PTz?x z7yJu4BA{%-%y69nR2g2S1Y^u8y**zWOq=Gjb|t0^GLNz zMV+PamZ=H*zu6gI#xtMgM~1GIWLZh!t*2A;^IQCBnmns*;kC#ZlS^bj`0)O;oP(6m zTgGpPTAjWz<>^Bh9YIiOxA)S^@cUJW{nfLKE(c<&YK^?P@V=)TFxw`OiaF{`XCKO& zD=6@8qsaO6_*WkOP{;D7+7e9B)bAy_@HVRxjv}*+A^!kpYPBw*cK2Qi)uL{Z*&s{~ z#Z|wpWj)G|4eCg6eC;+OKE6=@018ob8^c7dmCWKE6=@01BGIsyu+{{Y1i z5DB;)KWRRgEGw7rP(N$bqac&^bvXY3c15XALanLkR(A_+sp@fVjb!s9VC;DSr*F!p zYnx^L>&PXWJsG}QSZc zC9*fChlJyID;|*qkX&6uH1`qXZ~`QiqyPUs|jyyjf{d_O-YV&pCy&uQ_0P-&<{d_O-YV&n9aoFXb#BF$F zZt*RE{{W_h{{Z8ry;{7l!kqY$&)Bj50LM*we(~#5JSP99b+%ZvaG}dE|4Hf~%nvJ>|RdB$L;+o%azLi2{T`*?B zNdEI5)~+u~tEK+{$UZ;E`PHMr&uSjxTMJD&A291qq$dMEtpGSSMJP1ICkHg~KwMm4 z`%p#>N991`mXHAHMJG?CEdUf^idtYGq;8bGK9mp$!Jq^OBc%q8oOYno0fwS;kEKZ5 zRC08tiDgNRQJJ_ka$c22ZiH5dhGgC`3!l!gFAhN+t9tA1n&)p$&BS!?R3kjL)3pA6 zwZ!T$h;=KAHqO?}u;NqopPMIT$90z3?XFdM_3g@+%-OY50 z7gnzelyx9~Dy`?dLt*XGu1Tp}$i=5*n>|4oH5JrRI97#=WM^-6K9x2tGBI;2slh*$ zDuz~NhEHpp!*5{xR!4fvAEm&vGTKe9@McfnI7t+FPh_P%Iv4M zc>Jp6qxo?B+>V6$8W@4JPs=4LW&!@J}^xe5O@mrK3HNSm~GFy!$<*<+&`XtWV-9l>QXZ z?wt9WWLWjV73B+V+kg#&>T6Eg9Z5&-H4B6ukxs+(2Cv&h!`MEI?I!qp;rZ0Bks>MV zkAeKFGUwqwizZB062<=j0S2*VlUBEgyt=LNQPefd@%q-Eg}hRNd7{3)nWEq)nU_$0 zy{J=*VJcI#?opfJIu;_{{5C(lq*V!i73yi9E_mDi2mb)puU$zM<5xxuj4~J;f+-8) zwB<%>q}Nl$Cir#Y7;~{VXZxgojbmJR55y5O7O<560J^0A03lyN?>Wi*sjVT;7z5Uq zA{(hEx#L~~vD9>(bi;9EV)ImwIit&`9S3kL+9a@DI^f6WNiNVfGw=pLCm-Wjn%1Bp zn#$8_W_dVn!*5ae=lRyRjdeKmtx^K$Nt)R(NBcSd02;~FQK`sMrso@=mUig9eQV49 zAU-wJImu|0*GT>=w^7P5{A-riXM9wY-7&VYjd~8%HK_fPWga(h>Y8@TmO7+;c_6 zVyj0W{uB6A)>6H^``H^5=8=6xF|HL4UV2lw9;fh4Py8i!?oLUvW1sjM*Sgn){1JWL zD82sxuOt5ep{0AZG;`GWggp&;oQT`=yC>4UH1w|^u-7a#Ngg{Zkt3kXF48uN+K*ES znjx~dJ!$c-4nh1X5T`t~Oqd6)Ze~x^5^zN(G52`(qz9Z+mz>fVGW5k~PuUpD9WDoC<&2 z513Dp8OL(O)l43PKT225PaSG*%CaXnYsoP-e+yK?jf^-viXA`!FgWY=qTym>E(y zA%Dh|!o-W zP!@le5`;e6IRed*j*0!9eVDZ}N1KCMxi=D-3>51^&<<_f>O?tg?DR~?Bl zl_V|z;I}xY@J2ICYl)l%W()^FRB=vOwy7^1Y{{Z4h`*OeO7|ws#{{ZXNzlXo_JZY*9Gbi*l zETnZBMvwOW8(4I3zhS(%47mI1(f7Y>yI%&W z7k(i@+ftM8%~0^uuqq0*m9t~F1;r+c6?M-LqYggV8T{j=V7bX@@K0%{2mUnj+{OLS5X$9wlw5gqQG#1hb&Uz9VO#pLg9Fyshz<^?F7+8`!EKQt# zRM^C`>CxInkKWi@J7>{jZ|Pk}haiUU!J1r-fu)Yof}Z1s6&`_S4flk!i-JFW4Wj@@ zei?9R0|po#Z7)qw5ASSY0G@{kbC1fSw}xqSjVMNg_x6!SrMeOs$MUX+!?y9>_)A2Q zkIw{6xASGiN8xKU)O;tRyo^=tC6SjM_PY#F22Ptd*?cvlD|DTj*@sd7v8uO(Y$F~k zzJ&eBBbq<>5FxRTrYoWF#htz9hhU20F#iB&yqTlPtxgC`b)`6kH~j8KZTbq?ml82Zz8vkgHNfFa$hqg>uS90o;0;+im9I3@SGjAd)(C zsN~v?e86RK&~_)@tw%spwuVlh9G`8s`B`w=cPRU#J-sXFfzVfmTd8ZcX&6QWC@Mdo zuX7)CRLNL;+{Z2B{{ZKnOhzA*WLhS^#NW9l+5c{nLFZb4-}x2R_DuG94&w(_shD{{T9; zMn(-)(}pzoN4NE>Vul?CjyN>xFgwy`Z(c0x7ZlU-{V7MiDWC*38OZumi7I`lJc?o%YP_wqk3;%Z zf-z7?0}K&Vgvzqj3A@$ldQ};Ctq}~zyUu!We@f@C`kLu4JK%k5o76kgB*K~YH&2)O zR#vTp9BtnuR-MCgMP=$-+7tcO29qv3oK^HPTC~j=CMhy_{suJo^!t0bmRo5|at>9H z;EL6eLF>q>V#Onoo*4=faz$j((w>E1Cs~O6rYTf+W#{y#eX~%A;#)*x>aUOIR@Pg% zn2(jmVmPJ#(2x)%w`KtIfDQ!~8f>Q8mEL|!DSr|OtxIi3&PDr9l`>=RNSGrZN`WqI zDHW+dR` zaqHKg(0+AYWn1+pCMlDnCk&>l>N7~TOvIk*{{UXO{ApaajQt(Nn!T=h%!0d(ZNGSH z&-^~b>lWASkL|a9&mxsJBt7v*tTU@f-;znd>xdBc)b?chC(M*{>Q=e0c?JW)> z6`84vONq+Q6jG=hZa~7im04QI<&`M6c5_VeDwdY&-Yj(t{Exz*x4+V^<7Z7$CIhb3 zKi0RB%R{=1BU;-{8*~GZN8o9aXucnS0S27}Sn07y#b344QhkoP97d^mV;#hH>#1B^ zOwubVG-?$_dgLhnb-Ux3Y;{|k7F|Xpc&+eNM*NeGIO)=zd!<>I-EXJH&IeyBck`<2 z;jLEURoiAz5s|wJE0(28&h|PXPnBc9wTr3*4lV0*4`XY}zfO z0%VN<^(XvloBmWxYCp7m-KXC9kSRP8qO42-myyl^{WD(Es%btOv(MXY?J|296^Z>T zCHz0(OVPdUk|rQvhjin&LyENujdOCl2eyUnbIKi48O2p~QhHaa$?*RGL%7e`@8whI zC072GPG5z4fiUV!M{J<~02+>KZeKEc9&C^yImJ2c)R3TXIj-^k8ER1y8_INwjX$}uH?Wd)2o>1p$X24|w z2hD1&?jIk_Ql$4_;jEmGXH#7fhE_bsk@ck(fc@yX_ae3DWZ1y_V}Ju%+%NsJCYp6f zVmo9kr`<@dj9Y=nPsWtNpF{Xl=O>is*Hg4(#l&Ok*r^5FC#0yu*@bJhlyBBFKkxxj zK9gl6WhAwUl=THgK5*qJ$1dG1k6;*L*#z>smd=n)6v~n;DS<0x)yX*9kAe4Oo^bcW>+(vy!{e zwV~$fShy_y**xNv%9lSacN2Uo*WitqEHZz(-77xh;qQo}ITl;E{uZg_W4X(Ggnj%U zLMg9~06F9Et$DmHtw2uwK3+XJs3p+#7|=6WO@KN1X>zgM8No^EkH&(eFEuOLTqh3% zi}h1XD9D7cAY^qEtQRAv$Bo$}jAQYp=hB`srA7vF37}&L`H$9z9P)YrO5C#$JM&E^ zngDXB0G7@&4;3F=lh&m#`=T+7HAlMx)_@vCKXxHi>~c*7(*r5^gGkugyK|0lngB&j zz?_evG#J<%WA&!--jAgq9x}LKI8Y5mQZXA-Iq6NnJ^uhY0Btz^#rm348OBD^J&h?F z6b4-2@(mUOI#HG6b)^M=x&Hul z%6T8HH#AX$ngFsFevrfdok$^aa)s1HjCjMbrMLTk?p3t zc@zd?=15f+rgtCGu{xh+S*MaN~v4Pve@S;cy$kH_>AOe$>2o#(DbEcnbXAc#p)Ax-4a{%WMZb zKw<#TewC-BCY`4IHoUqq-#ydCbvaO@%gJT~9rpC*gsvklY)SBXGE`t`%g4})x#Cvc z;axgkN$p$z03H>ern$cOM5uO*+L*K0VSvqQ`26YGM}#dRg5qn5KGAO;9zCE1Am{X; zW4uP&HO~&e{XUWTp{2TDo;1=i{8pDs`l+e4OEalz`U(l6gbTkje5d6ABN~Uq0u4XM zejR{aMLWq2!OTY>1AsI5gFu1|FOIIz4j)U1~_GtikT~ONUCFS?QOiaaC-4b(uiZs5&YQsow@v}_h17V#&F-#l3^i?Zvr^;!iu<(#DQUo z<~EtU*Jo3O?azAl;m}uzL=(@6B0_(7pt0aPERLrQHr^FMF4#)ohUn~5YywOd1 zU&Ilg4k!J5FY;>hCCJ4%>_qoEj|FqBvGj=l05M*JTnB+cI=#X4i~84pN?Vm3gBave z(osmD%@o!pPJ4Hy2X`RxKn@iksKq=`Ax}zSryi9b-EFrSNir5w-!MLQIjpa#;?;*jyzr2sVZNNL8JX^3M~E-GgS98^un z$nR8y%2J%<9<@ep^?r5FBdDy|=8bc?)qQetS|c`R-H(*lHK}lKQn7*(zI-D!$J0T{vJ@&NYVt-s7Zy&fCxV@^{Dk|)@yc&K-)P| zKhNT6T1y6vb9^E0aB{sb!bjkL>qj~MDND=}dv z-oApiyg3|G_|gQ4KuG5Y0OyWtobjfrv3S2!P^6JL?Mr!)vNHvQFnrOM_QM*n9p%I< zF*Lu6)-3w8uA~8h_5T10rf)7Ja572s02 zKND+q?h5J-qPl;OG3Kn>+ zF4TIKRzHqN{VQG{iV#SJE_9iqaxs|X4nJI1p0o*`Mh!E`!vYDRRAY3a^*v8R)-1G* z2T6TGV+u_R>}{m;zctWW_>)Vx1MJ$hyN^R4AI`WB7hAkO67bkuaT9j;HOB2MK4e0E zluA})s$9zF(9vHksg!u+9r1(ws(6Ww8D3e}+k;UoMM(`(iXxJDkwRPBkfWyK{d(1D9$7l7 zfmcnsoPjX^0D&o>TFbx%8|Z5W+cj1~=+UscXF25v{Y7q8eT))ADQ5s>ae-PDy)T5y zdx7a(nPZYS8tV^A@3p(dv$2JqZH10O0Atklt(iU?c$zVj zU>p6}0k5GVvVzA#(`}{Z zTX`KY<9DLZ%(wOL3i*e9b(=&K)N0XT}%R~PFY=&z-PXTyl<%=CA z0iW*Wf03h5BLHeiry*O#c9)OCEpcoXjeOzX)_04kNg}jCIGD5Azhc z2h4cHK#ekR27h>;$kO;uNbUSlX*}<;D2Zkxl5h_L-1M(%v-nG+TP%q+#l_5TgR(#d z2c7M<6?ul;DF$AafjcyL%M+1=XaG&1Z8qz=-n+jLN+RM?wkapzt=Q zExv^{uy+jw%Cso4?`9_@hB7$guWIb?z8giT1zGi5gBtQtBURjcoch&xejCH3yGf_s zGBd_wb)Aa>rv&upJPJ7jn&$=Mi6gv&O_mw*kSi~i!w#gj;#qrh+Pf$`Lj&4dE&S~h z%@iflD2t+i+-`2ci0@Ecd@$5C8;PfzQ-u~*$&MJ?2h%&MYflC1dOf4TAD4QYiz_U` zHpV{b$m!f3-juzcOK4X+zcuwZ!>CPZ@kO-@t)#Wf7aOyU!vhDuYV?S8h~d6eS)qHI zd1jqpjq@WhTrbP({Hu&_hW;aVN!n{j+Ad>ElY{leT)WaWi0oDqrrkB@!4pKI9%gb} zKVE+d951+|K3$oO@ZRc6Jxfxzbz?lp%rVrk&mWz39wfbz9|m7V5)}UciF7t-GC1ch zI6qqBtvos6Z7%%Zwwz;E1tjuYEQokw2d*>t)cUl-+k9GdB#FTi+rWowrg-O^A8c{z zX>xZOm9JxG;r-kP!d5npH~Cj<=B6{o?cF^%s{a5JH5Z%1Ht-Te)9P~E$&rJ!aKD9N zcyX^R5?wmx-s;vl&i0gL3BWi|K;tC-IK?N5H3BW$O?NXWA>#xWk~96rW7~pw&t48G za`hUPjd!u=)))47QQKZ_Nkld>JbCHnU@m_SYnbsp>JN#27>#zXk!Ki@$5wVMPJc?F z;f+zBM_4W9lGwn+O2RcIi!mTz^ce5l^}rR2;+@c)>$K2q*ly?XK6g{{c}Z_ zHmsGqp0}e#5*tF&NxM+Inn|{~8xeYA9r&&z;qB0CpAdO@F$<=2$;rk|Urli#NTl+% zS|MdiuRkmUk_&lw{BfVV&$V*C6u261iteo7xK_2B%-rN~z$qa6QE6S@<@bM>HybN2 zU%&j1Sn%(iXQk=(hf$s}J-pX)6n-LHvtSD0ei_~F&~IA=s!Z+)>PK49i(Q4|iY5D0 z8|_}&8=2L7tRI&xgO$lVXBEr%5_xQH@3e&S*tX6Ly)*A4K(>wbfB9Fwwke4j(jYg%ho^FtNAmGVn; zELzqD^4S(sf(ceUAHum00p32E*Scdy>{(PT02+nvZ>nIz{Gxuf5`qM@!w-s}3XH58S*YxkY^f~A5TJ5io( zB0G<@YSV?C@<1ii$>C;NG0;( zy_V&dXwC~~I6k$`_*(DJ_^*4dOq-O=bVIr5N{nQ7>(+$ZZ8f!l#Uz?~yZ&dTJ+^}* zDH^@RYz{{IaB08U8ceOb{t^^(=_FYGwI_!)t7!Cf`(mt)(lIROBn>V1qe7h;FIj$jfy5O8)>RuQ2;ed~n~DdRN50JTV{reJB2c)#U)3Q5}h% z=Xu}<66!aE0x=Tx`qzD4fAHr5;{D0~6(6auL8UFqj=~y1K^#-5rE+u7(kNU~1;NPt zsnoOp3V5jT>DHXBo(~7ofes@*X@qCx?mAQGU=099ry`)e;>Lga=HJSuKO}?D)H;V6 zeE$IM8e$)02(p9zxv%o6>MKG1hX?(0U*%I!Fan$pG=h|#B z1b?8X%EfeafaaFC$vj}}PnR2K*+BlLsy~S}36IK*2fGvg6!{o)BfMq{_lN`3nu+f1 z(0tP%{A zXC&NaSwA|KJr-u*Tbz2i$MdS?Lgr@8$BiNx@{xG>_Dlg(yy zqBbWK!&00YX#$Im#doLMXUxDjC#5-)B9a9nL5|fdq+XTCSlxyTC^esPasdj*06yxs za^R!`(lJ?=WMFVQ)b%vzcYh0i(sl2&6VgNa0DrAY9v$4VnV({{SlFXzE2(GAjP;y8i&War~y;yi>HIQ*%g z1(N}Yrs_>~A<={AdXyg&G}r$CkBbYqNgu(r!2EI#=~|Y)KJfhPpXr7({{T%RBD{af zZlQrRs2e#kgNo5skq-?6=$$iJ)3r%Rvbv6P22R7DPw^G2URm&{pSD~Axc$={=l!Lx zQ?AT4M>t*gX9gmgr#@5%rE*8EYpp#ikRgfouBe>saN>-LOnRDLeX5BL4IFw<53VV4 zJtzS(2WkNawJ#Kz%>V>aeKKij2_SmY0NQ;GI2?Zoq~Gpn-Oe-306%xN8K(0`6o7VH z{{Yr#+-aG|YFyI++lZv|5BEu=>qvgI0PyF!;*hcSrVvj(B$fY;Z+2w<+of z`q7_X(wqqCwEi>f9N0_4-&py;|UwQyGdm2r=^rOrK@My_D#XyFY=cO25T7KVJHi6oJ8G%Sg zwMbVYkf9^307iH{DGMm%t|{dYtu><~t6)$ALFeuoUJp3M9>XW_pav(Ck8D!`4gksN zP24*I-|o;Y({|@2&--1fP8WfJ^b}k~1tf9zwhwNaCzDbW>r6XOtrr2T zR4`op$EOt&GZF?k_NlSUzXt)rV!0Mu+Xi%K_ zOZD0_Rq1wYXig+s5j9GVxVcLek@MQ%|*4JxGjZwfwC00+nGvNx;oM zV6o5Kcwb4lkVw|MB*r&H#SiIO-|&HWc@%+QrH@u@vHfeYXhROP!w>*baaiL20O19( zOLvCW=Hk*b&e-vR^vKAp$vzcmURldb%-v)y&3ZSK4?{>|9omfpQ_kh^E$Fs3_PVTU zn>?`15iS!L+nn++YZ?9%vIcl{NrbF9U^?fh`d6)(@zRT2DNIf!}X@`gW{A@ZZGNW=U=DA>Sg9;YrH_)K|873G4b%e<2Pj`%gt+G-l5p1gI7iwl|Z#faKQ z?2L95^emQfxcQ?(ebiJBr$kr%S~s>aLyBX$qzgVnUdy3X(YJw9TpeJ0a-^) zxH!icBRy+BO7Seu;t8(q6=S!RF)x;x1;XPv_pe)sEQHmUI)Glyu;ydX;pH6Qg&>;dRj{%>YHvX97k=mI4B(%G@Nc9gUDV811q1R-u z{=;Uw5%A|th~nC5;9Qnf2XIn&Bxj~YWKHmQO1O4;ZmwOs64?DIIKGS%U5Zw>`bDhP z*9#&^GrH`J=E|l|CHCim{LOtJI#{^KOn4Cu` z=zWi;)|_@Cd!Ezq;c}Xb9(h6f8t%g2dsh+g)PJFBE!X#mKk?e`K?an!Dmx9Ll;CwW z3*5mO!%Y}In}%r=Ns2>|b5Q-d1HzYc{>mTc(t~!``EA_)0K7ub1(8n0Wy`4xahV?4 zEc6d0S31g^?z~VvBZ!>Su#MV6K;)cPJ0`A&Kk@S?)P*0VRF_o@arSh_{WNma`9*W4 zl6!E!JkgJ<3e3OMt&Nnhi3>Rx8&r^g8p4xSn0?oZG3batoo8L$+|Dp=WWn^}nuxA; z(CW5PTEee51V*5M3CAAQ1l}jpqB!18JxCwS*Ppeontpj*v)Gbqc=U&Fxo;~E_f0-f z<~q52X=l{L-9y(Q(+tO&NjtIwb#qg$j{rYA$ZJgVNyd4i;bN-kwu%1$EVKUc%}gPM z2N9?r?$ntc^nAZsKqh#k%{cy4!Vj$gG>q|4I29?V*i!gRY$!tKlwVfNdD0r`Qp4m6Dgvx_~S+{y*7a**VD*^rBDRQFJ+B|MO zR@zPr?LET`RiQFC%CIA`7299<3s1bsjy;TjyIi&Z0K?5f(=TkzkIJRMrB}IAITYwQ zokeBM2Cb)(lEzpMQJU58^}W`xXE3TPkYM?2al0V&KD<=8vqez^`Pmo!a}`E)ET4@& z?)S@+$XKL#V;fmO=zH^2B$H5(;UMzV^#__t47XM*OP$Auk(a_(q$wo9AQ&0zk^O54 zMnQk43fhuCLagqk)Zvt>#CpP8lzhffC1|dok{J}?mPH_ni)drP=BL`pZfWdd_A!Oi4jEVx$wS?5s)XA3u9>|y?`C- zh_%pUk#|LA=h3bhC;mDze>(Jk6DWNXN(7!42C*$449W;x4w$Y_tje0@iaI{7run4I zL8AF_=2`MbRE0thrg=Zgtiz|n8(>Deo2xg>N8)O0tEgah^CVE+eNW^o9XvvpF_|q< zuueaCG2hy-m1?tBY~D0!$7EjA)fE>9IOFM7{7<@X16fVoBnp2cShCFWqZd4oYj*7f z-wawpa#BD^KT%2x-DOGHqnwDj;a*M5`DG+T!vN>_mc2^6x8Y#L{q8Z1hoSdc^(yqRi}!yvd3ev_ z{E!}oxk9|xR(e+>z{%#jB5|?XezaiwQ%ibMj=uFm0y(4@rw}`XNw?B~50;I+^GmXf zdr$%oeza4lpkh*Rcp{e~j=kssI25@QyG0nFLS#~cJuyZ*(V74#+n&^JBefaNY5+x! zOpx1g+Z5us>q)zuVvWLqhs#C<8;49$xM!sT8dw9gH_S$H?Mt-!iZ^GjXc+1ZFc5?5 zK*-~6X>fgL%MRI~1?TBZ3sDaq;xru}FE-RVUjr*l9F$oHTgbC1%AHmKb41Rm!V z8r-8XSo0wt-5h>&0W~N-^$9aRFsg&TPE7(ckDbeYlmR0+QOg1N(>&=3At5InOZ=no z^`Iz0g#djhFV9K_BoxPpRgk-aY>SDmUk*XaZb{Op1)Zv7>f+13(U9 zhps87VDCmfdeMyW-hdMT(dDnDF2mC_n=$mD006zHqhZgrI7gne0M0s6_2QSyQPVWX zP&h0_00gM(M_!bnc;M3DPy>E$^m9(fH0`BTh0O-;vo z57wB73`aiHzF)OXicV+(Ar{`WY$v@)O*E6~Kn&Q_Y(A8w+omZpO#mTUHV)#Q&#e>y zm{HoA039<<pa~N@*B+v~LDIN&KRCheE4UphCR9!@;(e-J_)#Kq zK>JD%N3Pbd1JwLG8|7Rv&qe~ihw<`n@cd)`o)`Hwd8=70tA_xOr8w+Nw>e)A_?N_< z7_fT{HsJ&;z>_3f*l~aXtx3E=;(bCE5^J~0#B#A9QTdK*THnLhR|K>WtDrdC#0uB9 z@U_kWl4zINa%!xFc5g?je2Avhk`N8kNKSa~PHkFPi3%;_K7o2wbkO()YndC^3{>Mx zwoC%0@zZ(fK<+~(uQUDYr^lk;Rc5?tPXcLAq04@iuN)Tf@UTV*@3b19J%s^t5n#NK zrLJDr3a3*0HBg-z~Y)cMI3ja2V~GQ$)oY4#yijgmLPG8 z6p}N=7^4{JKnsF-6lWCW85zON1W*G@4wSrl(rrC^&{WU^O-96Y&sv*r9ExF&y#QBr z{6#{*=Yv*QDDcE_1@vE<$y#T82#1WJEQv#DCXO+jfqsqw#H9O<3 z2+bw{2RP|Kij5d7PD#nn6(5#AxGK-f*z@m9e1VcE83RNQf6I!mBny*(KN_&lRpo5Z z1q+)SX@L_$j6KCcr)c_hwaIu@VmaK{9eD5gRjD$1nyS%~cw^66E;|`_8byS+4<^t_ zK9tYwi%>sz8t3U+QbM4NbHzYgXEbvUl@n=}p?o>2WB8mP9lF#yaS&{VSdI?WQU_8F zPaQf6(bI;{2;9uahMzxxCaUT8vCTXAOsoNZ8-e6uIV!`U$G;sL*0aLBSh0)TM%Iz5 zSx%6XGpQyahEh3WjBtHTXzBXJfu7qJWS2020>AMzAa!q6AD`zPwS}>fOIUx)SlAQ| z+C(FuBmV%@eehW6mQh^W7_`ZOLlFe|hZ|ZVKZE^&`F>q;I3sJAz9Y3!uj=vR+?x{apM?@@|r zF(SG$%p-JC8-ceyYfjD-j^zm4tQciYLv1ytnJvA=^m#@ORYLQ}8T|hMm1tVr9aRnN zHtij_m`1GZGRLXo(xFCeUfLBYL21*}C zJ?bcYMPkw~pS}_fNh2flsUUs3%w#eaBvd#!t2A#J#$O9GT2co&99LmzrtjgdqZ0CC zLUHe0Y*L0C=OVj52w1q zl21YhuUeQR1~@-0D#A;r-{Ci~cX%2c>ct1fKQRo|Wg~`tlh+(sbrIKY9bZ1KztJu5wA5SjSE&3lKBc z+dXQh_N|Wak8-g{e}-R_{@|{qo!#&?r}y&I?@5*M_MsV2aXLGZ2j&i zun!;(^niiho3!_8a9j>pQvk~Q(h@1y295^+Py;Y2aqUk0DBIkM0A_u$MnM$pj>3(k zjN*VAJ%uO-+LviPGx$_;T*Vg!*UZNWoS)KwBpIdW)~Sn&sTG8F?5DFn06&LXbaCD| z{ru=XqF%p=qQWc_>cXQlMh?(RxA#zHg|>_~;tMyc9GaJqI-F244fDUS@0Y~ujNJ{l1IiqRpC;{QddQuaS>_r|LP_a@C@M3PnrMtE;~;%#0zr|+GfU5=DF#P#_|k?aiU2ZIb4E@& zVt~MLN>~#>4gUau;*LG2IL#(M$e;j)&UW)g1}MR!@Sp~er>Ld*c*j~e^rX%^aX=2o z(vaYF#WbFH%^gQt01q^n_x)({&#fCztpWlYJ!quC^`nvAfDq=B@TKS4kkA4Vp4g*q zM+TQBo46B<^GpDWOnXxGqw$~w#~mo!o@r0klkuPdQGCV72a#Q{>0C-@%wMf`!=*&Z ziOu-i{y=H}0A1Jl8uQ=>(!CGHYFk7=4nKas$kzqs5y>>;u@l_e(Fghw{{Vc}sNiu~ znm`L>#(wdwAUN+-0+WuWqGEegn?W3kX~5tPXaE=^lTJhPbmO%%8SnX1&~2azbBam_ zT3TQn(sD^Yl(bL-afRlp-H+TKtyz(64K_%Mq2m>xu?ejnxj>9J) z8i9a02;wfDaF zz1Ci9$J%aiI`WG~{)}%1MD<2tqugU*>nFr=1l`p{5odUKlfGQNy~nHOiZ@6RJ!4IR z4Q$)^ysuK{GvYXqH}b5qR8fN$GKgVo3W^D*RJ_D?>t+}~FR@7yR-X4+2T{_xnq9|e zs5raIQpE9F-k(OD4p5$aJy+R`pZ1@UeCaqz@Q?wicg zzFRjbMlRA=R9WWOf3pr?t3mWJ8fhe3LuuKmSn)#&&L<(QlI_8QxtaE7N;w?3=!h^| zPv>Id^z0^lG|@X72K6{X56{l-LG z2%L4vnsX7MyOA3fym7c~J7S)?Mp1D1YYcFOG>iy^Uhx3@QQ?)2qQa|ygExT)cX@>& zibT`=}SvK28pS`>7QB>zn}Gq@XfMFttPoU)tJl9YqGBf1i~o7bb83-IcaM2 zY#3_QB^ti}kkR+AXF7z?s2D_09w{Ys{8E*WM7n9`ewO5ldk2kfS>3O+5d)-i!EdQ{ zBOy&B7y|oT-VlCPkGrRduaoHlwaNzqNl%*7sNH9Yf+JSmk#MP_P~(JaZ|uAcN^?re z`gX@}Jk4B!axFuoH&L1WEsi^i!WAp>uRWtBF)9|O=NSXA%;B0^i{2HsIyA)2ldj2g zb0Qb%Hlz+0{Z&|I#S1eI31k}MHim7qQl9yc0iUM&JT zg5%inTs>QNcdhK!U%i!PA_*7fMP>Cl(w8f`H@sy}ujgBVkq?76R#u(|BBx?2*_MI_ z17RX)RcOfk+E>yZeTefw?8T)DkbKhwiWkYy$I#($ z*O7=Kc${YrIYQBlbLZL5zGWDj<0L?VKM?yEtj{SLU(C3usmzzRbdC$E<6l~d#c&@*w#ivZtyuu}g~jx)cq!5( zi6L((+?s1E-a`W@MENvT9=Cd4qR75n1-;bgHttzlx>l(% z28Vt!rEF(G^!RBW8w!%jLxaa;p!n9ql@Kq)cfFE*BZw|DC;a-;=bq)*QMk9BV1>UC zt{7xnwHrlL5${k#&WfiTim8we2)3DOo&sH9!})#32Qv}Z(`({o3FFo4Nw<~dR5H<> zav%@5w$g`hzXCcG!CJB*_`kqiig>xzjnl(4`;`zGk%_hxdb1I|2wUJr{E>=Z zi)9omYO=WkzL`Zkc_kiAT{bQ#17T=n4|mQemqiRXz!uFo+wv!)cZo(-FeViptQWD#dBCE>~W8V_nnB7r8NwaVqf(Nm;aFO%D$L8@PhBwBDwZJXn z9{I4bizzUIfE^iL+OCI;JORQ5Yw&^*xm1MP3~>IE{98)WiJk(6c?%)!MpH>va^#+R z$x|;42{HBUlB^iE!Yw6eQ>zuZL}Vm?wA>4 zM-sGJlM7Orl4+%x8f^?c|1GFe9&OS7^%*MbkV-9X(kM;->8}IB#_Ma6 zF+zI{|H0n$B31S;!a!QghE9hs@M%?8<&wJ$2+y-nK{IH|&7qxn^F6p>W$brMj&4La zZ!mjL3o$U~U5N2k6!Q3q=}->Dr*i9f5|N4DM;ql(9?f#QG8xni-HZ`4oK#*Ob#;Ea z^%9+^istwo9Q=AnyzqcdqO`V~@7D8&0k(EYf0q=*PKCOJNEzcN-~MZzkkqLGCL(Tyx!-4kVb4X2}H^B8ksAo$zGEJo00ug zuQkk$ubk+)`}LeLQJ49z)k@U0T&lgjSM9b`l7S2@-^D%NYtze84ErNG`0X5qRzV`XTvhV@+T-4u4_fmFZjUv))>$7o3&hQCybqUs0g|7GVP6Ng6 zZ*`iwFk|ViHTuhjqqBa8`tEiWI+&LyUds+S>KGTaNB=89YKxk%CHb)WR<>SLYTIAY z+WbvBMdVPceNr!a*@HF-<*PCh9#{(HRyQ_KO1{X*@e{5CF23}%_;@pY>E6-nAQq=U+ zH^h5;>O?Pqt^2z5)Vp9VBark(28QOe00G6(39wBVa<(N}iU?WVcmM$b;?6jj+8P@A z((%0&!~o;!^4}NZZ;&B_-SQ#Le1L(JoN!~IIv_xFWA&fp;XB~{(gSFb;?9*nQX?VywJcB1uhpAEI6NJP zO9ant{2GMDH#PK!#UVE@TtvO|F6YVb z$f~@t(L>ls@9Y#R#@Fi{ZOf7TAbrx`H#X56WR~T)1ieCQE|P@1Pv{C+0tj-J+<*i@ z*QZz62KE)nI+E0#rt!PG7~&)l&Q47^X?k+Q(sa>|e&Ezfk(QanGyTD+O%>6JpE66c zQjQKu(i-(w8XvDr!_C8?#c}u2a33*U89GH-1V5EtYOYM(ud2mH>Rs62tvh5D5X0gF?Z36K_uvPlK(1~7>)W!3+gpkopbtvqfUZlLK9I&)06fGp;CM+y z#4X^Il*rwML;lxEqxC362J9m~O}=<}T)-bi>F+NARt!Hrvi7g<)ZQAg;*uh0rUSQR zcq-lGI=5*f3l**w*JdI&j)xc@`(|GXnWA=2Pm`#83yT5`^M2hg}1 zpbo?kxaSh`RFn5Z8i_=Mgc^H;Nd#!NFq!l%mIglz%kuzP{r7)Y}9#CSkmx@RGe z-Q(V)YH9=G2hQH~zysKp-gx9h-2)1x8-IhbPP0erf%6~y5iqu!9;w)zwY5va`OoDD)v8o%!pE`~g+6_Nz~z3$UHQlKz(1TKFm&9VD-KqVv6 z|Lesd$i{z4JW@}V82!m8_+1mMsw+t9wh=gr1rS7USMl2UALwApvWQTJoY}!#>j#h_ zWb{AfzQO#Tp65gTO^v>YR2tzGI|u=-ZhdO?8O1HlM#(I)tsd*O=_5YX;kUyz3ssY1 zH2e+pqPu`Gfs~2?R^h)c;XvUevHe4(;5xB*j!bdFp7IewxGQu|Vx&40W~d>;D2)TgSNi{jb^$Pop(bHxaJ0B!x(%wd2E?Qd^7uY>mj zWjl2ctPsxA(t$ecSmr6L(;7He+`mNuCLRKhxjSKhP*g`H3(Vg@o7B-s1i?E82kMK5 zfh_FjqYog@=IgVM(bC`FS1Xr^Zra_w?&-G>&p^(SxKVf)>H&pl#+pw7!Qunxsmkdb z=&Hs>NTRuX6qXajYzHEcC5k&&(Xzl>;6Pe8d=wnRi9 z%dkDC0@(hqyQMe?m^koiNQtd8_Cv{cnXLZbuFDZ16#kz!@@u39v-ew~QBWK&{xicP z4N4=%TB+PnLI!PbodBM`9pL~20IxPbnd!uI2j#VxmLi%Q$bU*I za~B0{lp4G{`EN8xL)dRO^vN!0EfU==Oh4bXKf>d!#sAeK7G2=wS3I{H z!TTiOvr32=rVkdBkUks8JRo7Txq^K}8`APf72pxwE~FvlSU^T%ObqM)n*MmE z_HvJOlV2m@*PkwnPNZB5h#AJ!4$#68h-t*r8=#EMjkkZHBfi3n?|iDV?~LDVA1|At7AzGgLF&(L5m31gQB)ZpKW$3gC{(o67aKgMX2`b1li(rGb?A zQp+C!UZvQ5mAXX&IHZ`0(*xalSNVIJfRH*f)MswZu&OJ{H%7$c9DKXw`@VH$=|4wc zMU9D(RpD#3sQ0&+9JwVr_sw{QOz2DvlXvw+3!t^Yd zsBK8u3|tUdjO4uJK&pljxy(!m8sMJF!s#(+49>Bkx6XY2i$y` zcjsp&VzwnC%ZQdY4?XrBiRq)SvheVOKu&Y<#UK>-f&e~$q1o7Jzm@t-p8fs2tcvuL zhP&#YWM4y!qx;yaA^Q~Vdz2Ac)nk1gXg96I*PJ^HiXTP`&eYr7{i#rU@P#&TtoyyI z-W1a9=^dkJMK|z+iD)!eSd-V^GE()!8j!78*J3jM%QuYpIuH`2Z@<%L-Gwo+-PVez z@E?YGY)Yy@3O2Th{+UZBWGBYV^Gyz-OhF~KQMj;zjM zou<7hxB5#r?S~mmf(Y-29Sq0Y5@({tVp+YeODq3p!{vc+I?n%ZYNDIjerVdkMg>V> z-9<`vVw8g?nD}jw_95AX(%iPM={1{=9IDE1{je@`iOvt2>$0+N7zF}voFz(Zipfjnu$*%}2 zE!+hW8SE}nbk3VeRb1a9Q~6=O3o-~Sp9fK4Cmb#nV|NIxe*4Lo6!4Pn6Q&Znm%2Vy3dqZQ@2{LZpy-1}AhSgkR z|KyTm!z5tylYA3H2xgeWiIl$#zM^?q!pno$l0bvKR(rkr)dZ&NNP%$Am-rGe;HF+= z73nV^c4}oBNpbB@`*-5aS98lgi9%(GxI`GTR{SJP_{ z;pFO>2!S8tvk~i(!S}5L0~FMz`_G1F3!TZls`LxLhvksf+9>yQSppa#Q%R6Vve7F$ zEf#akvzhvilVa+;Te75nO}x#cwdmkNysaP|x?(_p+g#AXsyyfZ3SVXR>xKpv(k~p~ zyMCDb5^X7^HoY*cdQ}HlZ{aopbRIPl-Mw}Y489iRM=g~ne;$3F%t0Ye zcCko@*xfSMl_Om60qj3*aZC2Vtis{{*nj|p7vL2KQQH^#wEaV^YB-y(;gLqkT;!xQ z@yz(g_=ROBAKKk9TPjd>u~bgs@f8umiM8*mm@bE%3JOA z(@m}Na)NDb{LKJlaK7H(?zie_U9zQD4i3X(UrMh^k)FO8C5#OV`0ZA6eTsG87qk@v z>VIxW1Xuj>D}v0Gd@^e$%XhKKoit1YTdZXatbS)=UbX6(Y1)5ZbpgH_bI_=tVQ=|I z!2tnF2VrGoO>$|D_h-xq3E#SH`+IM6Y3?z0F9y!$wjob~9p%2Gbw;UOo219~`h89F zt6SFZ4et$r{lRa^Zx!+-)j^0)ZHZ^fWSR9Yw!MS$LH%<7<~)Q2w*Ox5L3k`QXpYK& zMNhbPw4}oBIlBjX#|bhQwOd%Pc1xf3&%SgqBoL}9=!@~;LAES}FodppdX(>}uFJSD zz*jIxbv$wXg(;f|iav2v0}n^<`ZszI_4DxAyi1yXRB^o1ej{97@T{SUbx;_q4qrj_Egyjgy@Ch|Y) zvd=w=FiKA^7xAb5r$0#nGK4*L7dB*OxL3B%H_<^x$6(rlVCDdU7Y+!Y+UZ&plS3&w zW(S>doML3l82(Wp$AI{yeaBrxH<40}*A@DRxpsB(D$DtE!J4oU6Du?wfin)wKxM_m z4;LK-@}6Y0g8EOO^2xWQkj&To={R(@Mc54K(B^T^Q^})7$z+L#*8$GvD}3($$fn8| z)=WRj`lK8wKVqn;@I!P8EM~Z63+PeXozsHarfp*0?9XqHzVzU=$nl8r`i{L49kr}P z?`<=5oq%O}sFziLuH$ZV9PSW;`=p--KVl5L6F1mT^xW=mki9+&x9&fu7D!l!y*hZ# zb4vDwf@mh5T`Fg`Lp#&ZtNTE4%Igwo=6j<#o-ca!olgx2QnBZT_8Y>! z-MQbfdBrDO+38HC(`U_VnCoIEgg#h!igK;qJZpjuMDYm{Ft4vA)5c`7U?8OG7!*&6 zUT|!74{sj5x?Gt~-NI*mg5SO}eE|AHwjj>i@td(J;#brb65&=GJgh3y>L22@B_7e4 z$%_aU6!bo#Kd6<%nGpVLGvaRE^D13uve?4w#7S-_+{F;J(3v(d)z?}+PZ9W_^k~)$ z6TU+98Yu$N$zC%uGFs4NWn~uc0kigSg(fh12OS8!80W{hY9+|m{6+n{5dHd)AW6-- zPUQ&Rn39}MmfD5|?X7jh7Y^s+@q7cI-+TjlAq%QiujXGrRXKpk>8$3BC2%z3)2C0? zbXmQ<3w_X+Edr*xrb#f4lF3zizF~CJ%m&)Rozg zSg*4vW@fZN;R*iQp6SgNXtM!qmh`n2+!Ttwf1X7Ig0p{6ea!2%rc~~Ln} zwJT)p*VQ8wNh)%RZ`Gkb8UuyH8?sEA+znXR!w; z?W3%)4PjTGgoAlY2*unM?}t4e^BJcXT=1Lu$!QgX^}g3aGA?-Ab3*GQ??>M#>U5zV zj#945MX`Rcl&#VHC-O%{88vwXM0>O{kW<5Ka3BE*)Hqkc2?I-v*&X`?o{w!EUD^g6 zdV3Cr_D!1!wwL4Y(hk)Xu$YP8fUxm{o1#vyN#c%}{C zv-%Gu<8toy?{09%;tls6Zhr1MGd{93YAKE@lFO83^92~EVm_{ECAbWxkIJOk=3M?J zv`A_-DF26({gH`1!_wL7i7PXcgy#bB;RC7lVR#4_62h0nHc9rhsdSI^dAH`P{ow^Y z`^gT}-Jp7wJ>jRJwFq{1@C2J`b->X;Wvg()Jv4d=kqVv<%)` z5z1+`0ayj>pTZ1b8QL$u)p5RyzsLsD+nOOBI(KYngpx2}0ey@_q251!)^C29V)oxDXr z_k^&Zy}&d7_T`N3RSiXn1?!ql7F2ymPludaw)zZq*W$T^9UI3S&w*UF@4?7N0XO(m z!O1}rVdyJT6BAGFa_4RAhL=y~`D;T8IvBdECR>Fwya|YT0S#Sc@9HD_u3z(u+Xtcj z_0%-ZHtkR@L%ie$_Id*4ZSz;B-E=#^i*tL4_lU^X5R81hu zxsg9Kf0o9)zemH-W@$oc<6ew61+bTu-bAbcSbyL`2BO8g9tWAI$zv+$yp%*p`F!|? zkc3cfBt!LK;;vuS$kk*a?a&+j_-)7Y{CgF6ooIV&hkfG=1lx%2@w4*qCtbf{-e@P~ zTx^3r{Md6eR_QRd7QpWQ`$!JS!+}h~V>b>{*UW)4?*SOv$AHyMZN(@lJm{blfxO39 zT-(zar%kufuFXX(yvT;iFH|e_f!&dmx2*A%-CAqCZ=&tNhhu`J2nEEJQ2bzcBrhL?UAAn-2b zF-lqg6Gz=QH%?Il$LU5L)$=KRkT;)xPUoG(t7)6~WPot~c)C+0ojCmlLd}BFj-?25 z$ELE!H(%W{`dZoIRfQD->N=3;w}T3FLbT|sW|gBJ8!CZcm;JCuY03is70b(Cc-iJP zNIcJ&E`_ge-#<u5fF?bAgrt9*hIAjfvs9j#xSC&vs1$u3F>x zTCcGmdD9bZKw!SG83fgyp19k5zUra1%(lKnwMk~oTW}CO`N<#R^Y#X+;1+a`fWMe5v2m8&yF|rQb(K-0qCEnWvcJMa`bRjs=Tc-+&P+7p8M`; zI6x&PH`s6LDod(4v@_JU{!&Dm*+SU}X+%O{x=qmA7avC^BS+(Sh2vE~s1=c@J_C-M z?`mh47)=S;x~)j+7mE)ZeRDz!ef4XF<#|0-z4>39>Q7JJLKM|i`UlThF5Qcpc&z1j zR=kZDj8ve};BQdI6N9(@7#k5M`h|)y`hgvYujRYt3oS$RE#wGyFuI0*tZ6v@sbe2o z*Ug9-=C}Hmj=$N~arwdAZd`Aq_|qd>sl|^4!{(aZQWRja)B=#rkRnmM>_)$7Bb;o< z_;{C(T81r=RgOwf^DVBU-86h9d5TSAhXL2Cg2_RT`_6f#)4IbI zMvPhIvL|(FKj!tGn-o#KID84O$99UTxvl6cg+NEJouIPc-u9A0gsn9Mi(JDh-*uqe z&Bn>l4BEUOo*~$)Pw&k#Z%8|YrhDPmX9}}nm?Le<-5#`1V}7K^a_KE9_<}opT-d+w zMeR^86edYl0{9Cw>1uRBxZOAdD-{Dnl-yY3km#*=aHol%i3%dR*S| zbN*^oh>+fDZ-_|6xsE2-dIUOL z-%MtHpgdB8kG5I){R(MaH&@n`xZbXH=P4X&=w5ekFx8mz7+mX$#Ox6L-&5`F|dEejPiT-Ec;ziU~`BEE* ztjR<-(1av{29Iq)3*P^Vs7uFBkbz|EnMqvQ)A0(HF?F2Xm;n3Yba+|=0js9XHsNdM z=`m%Km6cGo{_}hOOuPC7cI&n8M?Y7znRUku@T5bZJ382RQdIg1mFIX!auH<`*^Ysa)4i@Mw1AVm8m}?o+g_)b`u)OmtI(|9Xjhh)FfujZm1@AxGj>w;iT#2M*OPTjd;t<_4 zH^fIfi3&=oZAD%h>Cp&Y+^)De4L`-+mU1gCZ42Z#(H%o;uX2R89M!fZA$+I7 zP_2?28sR?GaP*KZbC;Pw(5Y@Gjcm^b1GG%DM(ieXw=zB&du72Z{bZ`%*Ns;|a$aSS zb<0xM3*ngcuG>cnE_Yn$V=8H67eb))U`E{f+DuU}E$`UIV}mXM0PwOMkcn?w)u0(426 zr!~ZXU00iLAmr$Nxk@~*fG|0ttL)bspC3gAg@S}T^iw9Uhk7@)>rL`?o$Ry0VuMl7 zm-*SNGVN{rrsrL#T;0}RR_goF!SOynQN??mfF z{tE~=E-r@RcM}S&(#9pY3^qe5FxNOR?K!ZP5VNq@%Ea0m?J0^24_BfA9dHdCeA0m; z%aEn-fDUX0Wig3#3?#TXeDdD4wAiCU#Ere4Jba@9i8ZZwtUnbq*eT+6lI*?f+fxhb zdUHTJ+ntUKp&v@OD`0p+uGV!^G^{DvLIoW4#YI9A z=u?o~2$-KXT#(m~U+%rJ=-1p&O(^Z8Ahr`5 z9;0{(o8JpjhW{(!OS6{N$T8!{CKWYDK$AfGC==OB`#S6uMCBDKDDi5mk3B2CDq!Kz z;32DSBvo`%Ump>16UnpP!7vL~TX> zov5G{+PpKF#4B;Vl$*Evf4+R(=!-^$SJL=t@U{*E<#pqwSOGzHK&z&psboqNvSU9m zM2%Rqec*SJPLRvr9otc0g0g$*`QfX1aOXJKCF|&WmE#pl z9$}c&%40Z*_r}1Qk5GIr51|PTK*AqvfUcjBDqqiMzZ0t?!~5ZBT!L52MZWVs|NZ?6 z3$wA9_y?G|r*3;|5W5Q*!{FQ;1OL+{U}i!pq=;Q0`Yzh+NrLi1)5KjP0Q(jx{L3*h z1EPNe#+?v`4B~v?u58#AuT5T&;Z>LlPORGB-!E@#Ydg2Dc@Gp-8sg>(#i*3$N>~Ja zOsrDPT{yLVUbien%v(FU`o+XM;5nWMGsDF)FdTMW9=jEhac0xxlxERS6)h0F-*5}q zrG@5dI&Ocle*0*x(HAh3jj`twbJ+ z(+`%*apLmxAM=_IPqPYExsC#=+XAIxgHSs3RdV-M%TGzQr994mtOe_qRp;#Chh5fC zX1SC8h@p%Ry+EwTaexPWvf4&y$n$j(?N8gCeCe>$={=2hRMJp}#!6lvlgHqK-Uq<| z+;bB!zM1ly_bvbDYWNBNZ2$O`kla)mZiOkye?`RJ*&IS@QcX6U5&WV+bDXcu#NS0) z{3s~LhoGRf?Xr_I?`l{PFtcZ19ozo_Fyl<)%W<~=BmdTHpCZ_YXh99|V9ar;nt#sy z`4vdj4l9OM3iK57zO;z|OC-P~LiX;t>%sgsXYk83_+@*mqA1Gva^vL4doQV^Xo|rU z^$Y`DKoOYSogbVrx~{4kb*umF)`BH;&J`9S z!zDijEMPn$6g!?)T$XdDfa&RC&(Mixz(SFyD)7-nwM}Px(D38n&v~Dh6tGwqEYieg zt37Huqxn`s)oMDQ`HAc!Zw$u4?%_Jp7mwhhWzr0z9EHuSs?O5w0xL5>$R+Yu_u#yF zc7Vgd(>F-6JU4D_<)=1c`of2%Xd*PnEzx8FxR{qX8#8YT50?S!*>!aSjKM*Pe0?@1 zR>+Fg0cH34yQlF?6zwUUjsv9FM<^b6|YHeiYONg?43T+JNl5}V9l6)jNe zPT>G-+qK<#tt%zAaSaZp(e^;E4e;Lu@>N}V10v5it=p$sU8Ovp6(p*vVdaNaoh=G%&hhj zh;G_nvL48jx*Te|5lUsaWwEwm*yw?nio%2o zx+OOQ!#q-vShJIlL>PGq4p%Js0Hh?d|74l{%CTnU)Q1ym({*xn(i`0ET9(lk2w0S7 za;VOgw;ER6(9K{@-5DIfcf?GyL|GM6N4w&J8R#M3eTJ|Hk0weNOR71IS0ao^z;eCDB z*^UHZ7g=19dRBXFc3n(lScT>cj-6IyM zNl4R*AeeK4Jk-!c4q5Rc#U%b%PM~n2AMH-W1okFVeYoz@&|)Ja496nsKlt)$To#)+ z+HvNkTQ+g@>^Y!lft2ynn7qy?%#*uaVjC^eQ3_%v-r;?Ju~j%&Sx*c?Ss@cM{_S5Y|LkAo}J z^!e(hhDF*uzS`&F+O~|LV`wpAlgVmEDWU_9h7nqFn9UR6*z*Z$E`Z;C411(EFg3*x zFemzIaiTw$2!^e8Xn+@yPEuFo+O3rPeM~w5nAwerNICd;@3i9|pumdR3R#hxXq#gr z`9YHPvyfCeEtWPNZ}wg4O}qA@t>a_I{KZcG`54RM92)~eicz;65S#dyRr33NL(1CR zK42Dn0Y=d7Y{u}&+?Je1?IilA`ZQ*4k&6cH31ij4L9nxX`-yyY*+{UoCz1fY>eui? z%mJeH)+ft#b8PxJQdRYJoHS(7jZgeTj%a`LC>kSBMUYf6v;3!!}{OPtM1unW$bYXxDkH5sII!hrnJkzQ(} z@Hw2XS2;YH+G*&F&d2@sO(Auw`~*A7!o!+*!0S)@f|1R{bEyqoCWL{!H2#ok3hgO} z#D~!S4>LI=AgCpJ?_DMFY4WD8PN-AaN1KCLM2kbf={U2=#0{AbaMnK&E2JN>rx`Md|-ll=Q)%bH@5_{p%NJi5PS$%z;h9%|3H4 zuJATF_{T?Hrh1io1@!%OS6AO^Pq7!3bYV2hH{w9}*g56Q7l7AK#XLVA_C*zg(P>=+ z+}li_SjLUZl=24Y`|N*SgE7SRpy|9UAaIc`qwzqzPN0)RCENarXicGKERTVo80Jb| zoo(&wb<*v^-rN@P{D;U`tTW~iV=7UXMkjR2oi_Zj5Zisp_GLn9-@Wwc_HLY0#$&n6 z_n#jU*S;8n{^Rg$gHsp6mqogzn>%6Hr-Z)1k9D``_Vnt=nml0x>)W5?=zRFx zP`i-CZe>wy144w=^mie@_vM#WhXeiir8du6le97{7D3tN2O}?+I?#)zOp~_5Ye+~Q zlKgpIQc37mR1uiXEjkilc@8ZaY3Q-W@3HajO0Bz+P+Q9+RMcpn>J=-9Sy0*)&)@29 z%&f1VCk7KCwZDACps|jGwK`CdOgW8~*Pp-B9A#CB8$W$EwQVnp;03sPbZ5sBf- zmi|f*(-fT@N-|+PbF5BBOz%fXZaO}`@V=!Jq={Slmh-CL=;*R5FE3BJdNz*n{A|V( zk}(zJpM=a++#CqD3(kGUpI__lz=8q9DMPl?!Zj{jOO0i^(BFp!p1Bm&_ZAS^Nj-(3wBYV}Zf&!t}f!`GI+p zA{w9dhWaCSH^MJEu#CwDM(7!C!y5-KHWWRk9oaHuxEEl@WIR+)jnPel-i2=HVA1SY zDQ3%(Xb|AAxAJpyQ;dAuQ4A}T?06I@;QCW^G+)E{Ce*LSy)?ran@ zu_A1@-HNqs>qub6p9Y8$iBiFO2?%ps<0CUgq13)?9u5GdQ(lUit}i_XZDuKDHW1vt zYs5Sg)=C@=X z;Z=zS0J6c*nHdz+uzmWh`pjYz7+cE$=r-TnX-$#DX@9pzf+W>g&K7#2e?y>NaC5D7 z>)tkGFi^C!4pfeRpCok@WFD)on1`dZOBL(P9eRo_D?}{mjQpOw4cS*|lj@nnyB5mZ zgKA73iYnKhZ~Ojr3tXU81Y+2yOTdAN0E`Ub&fuRa$B!{(%lbew#MOuA!pOQ;*aF?} zIh`ivES#7YFoP2aRt72p`iVge0IAjF<@*!hb@b2<$6D{tFQgcC>zXo`DN-zxr3ZJn zx3^>`2Xz*Q4l%7~j5Lw+pZm5_Qyj`uyC(+0i|eElmaVdYAjaYM4j%32d8k~YSX&oO zu$d(t{{=8HL0o)+Q;_ z1^Wp*CoxLXpD$VsqhD})lZjAue`DQCgxZ#TF~4M|9r{kn@h2~DA=^qW$egb5e%fST zHFWV;aWMsKWv0H;P3t;3E+SGg0t-?1S!#%&h5!+)T=+Hb5IC-XVhRs-E5JsTkzFqK zxYVE`wV9xtV`Tr4x-jhAg5e0;fy7tx13R72ocAjG@33!{^C>C@Hk&9vCm$3Z!!ot4 z?i;y3fY)YEKb82}E^dCbh)QTWny-(={+PJ|h%P|T+jr(pfS72JCA$PL9{v2yw{jv#&U>&ojnwzrKG6iv3=ClJs+8b-%csx@7QovI zC~f5Tn>-J|`ivk%Fc8R(7qZ%Rxu>!yo1I_)xWE;rNWL)%Lt+yCs>N!-kV=58Ecvsq zqIti}aOsr|0=qWM*uW`x4@$F*SAkaE>eaIoT5N>O$2hu(mv1U6Zb<6*vZzT-#*lm$ zpD!oNAl8T1uKZq{ZoERHCo#)Eb^R=tG{`NjB`pa9VGh$z@l?u_H zDG(^xpR@h)3TS69T%c&*xyf=ig5bK<_j~5So6V=(#;ZF`B58KuwKt>z&i~PJDGn?jp;_Q_GRq`@Rlj{Z3wqZ+CF}P> zwb-mHed5cE!=KST?1IG41n%!>u93gm^R`sw6*Q5IR+^Cz6K84Ikb@`*Q56nx9I>L} z6O-jT^*r59V0e+K%AJf{zgaFzB^`7)c-g@XM7*q?Zhdh&=v95H7H4llZ?q_=vq%E# zStcFJp@EEX`NF&fj&b}IWig=8L(DwfEk37Eq>V6cCD9q*ndlB;=9+ql6|arQojJA> zDj7@!q6+7Eb03AE3oI!79_^?{`2MxV6@n|@y}~#0@UA3Ac~N-meqPvvn9b_Ligts` z56`ji(~O=N!HpR*)Z|MoH(NilmLSHrePGo%>BS`sP8OOHMtr$s{ zPs2Ra#G|7;ouL~+S4cZNww`F%+t0iz1_ge1?XdH_;uJsv6<(HoLqnUSLJDV-{$qPI zn|BnjSQ8`mTwLe1!2qm0@T(>5SbzX2x&yFu2bLrP)-ioA!cLZUqY(eX*Hv+@@J^Dp z5AwbOKbsmd*uOcWISeDZBTpQ8cmtgxP&Mbn?zSSsYHSh>29}71hUxWd8KJL&h0pGj z)PJsKy%1skiMo{aqONLUU#X+R%8f>S7+AVY+rPiY+zRAptAK~_HagE-jJ&a|wR1~I z{;YQL0$xY*gQ({0&`|W=c}`YSu_H+oPygSl;G>$eWFEA732|dZ51l<>i5cE&x6s7I zR#v|c_YOuzt7#u)rY#Nz8Ft zFb-!o5tq?jo_unuWr9vBq~cxE641tB}U7u)DIi~rHD(O{Hu2$i}%C6N^+<8rA`|EmQT z@gFl4mCRMxg`}8l`+-v7o--EK zPO*(~>|_@x>xJRlIs$@-iwuVD>LLnMPNP|Nw;NiCmYl4&@tK+ozHDvc3EW*F8b*z^ ze|V0rzlfTyjC)`;mh%P!6KX>XCe$l!?vr?Cjdh~IycbeO?PuL=1B>8d9l(afU9k_8 z)N#yV!M!I(1HXo^&6}Bd!`gQWV$%=|?b$H0Y#)+q;BirR4%tMr#!Ydr24&?l?qDg&=8RzQUF_Mw^ zO3xtVzM=uq{uv_h^vo?SiV8CsihcfP!@WeJtyd|cUA`EquIx3?kZnWZe5nOQF!L{^ zn-0%i4Ep3CM9+(BF8x)hZX^5XY;dnKbjoh71K5Xf>tXw>#7UxTwf6hhW{dV|i@4s{ zolzh{g`K8Ysqy~xZ6j5;B2WVsVI_}@<#<)OowARlQOj_Bxj02}W^~Tp^5?Y()F@Uw z%NR%UC6URViP1Cg6lZL*x`XwzQX@?~j3HU^M&@Yn+N(?m;|Co|>8( z3HcqTKCzTi_xB-EGn+BoFZ|>od;Pf>Nv6+z2hEB56|W^#FAC=?uaeQZdQ}5K}RxX^^JP95K{zl@~0@2LPX$c%#Tw%zg!Dt_t zcn-h+g73h~F6!&hLdv?lSzrM6M(OuOIb%z)7)y3MQ$3I)oj%My>sFesn6LqYi1-hO znT04`%e zZK+Z8^xuS+Z&x|{)*2r)1}U7Mx8hgQYMSlf?(Qx@2L^Wt zmf-FVgS%UR;O+#6KyZS)yJhg;?gR<$k~`nJ>p$x}&6=0)Q`J?q_wFixZuv>~LiSIt zCrm)1pau{(i+9nh@jSbn9|~2??N0WmXn@Yyc)_1k?PfuslB-k*W^ew}(d-PebsW%T z1Q~8g`GbTamyi@{t*7+m^(OLvLH*vsRp%`Z7!1u)u$(VO2G=^(X6%1%yrPPqjQSb5 z2FRFD#;fwL#&*mauM2h)|IBk0S->5*K6L8p;TPH0RHVIz&U}UG7JjEa8cu(1lw36` zqv%rFr!nPd^zwzC#e`t}f!Sj!J|5olX>$#vKFj98A;Gy%q!B!($3_z>)U>qW4>Ss9 zn1IYW_N=W-#Wr6s@Nps{BI2KCwc3-Jv$zQzEh>NqqmPI7m5ysPHgGfW&a-(sQ?)n9 ze?H^eb`1qJFRWIn3l-kYT1)E)%%=yJxR*2`4cJ2K`#~)pd-n_DXnDI_lFpR|JB4O{KTdk{3IIj01 zzOZ{uL{JN;G0&Fz;bBN08p2@=^$+E2`||A1{Z5bh>MKjgetCOZc*^pNg}Mh1g~Q3MXsOdJu}9C2P(9f=4W3%*D6rY}bTc#*dQj`nM71#^!hwhTH6* zA%`^=>V3+AMt86hCh7Y$zf_0ytpMI z_9B3wiSI4@kq&ow6zFbDUWKo>_~JF$$1)XLZ>Oo;C4bu9K>3Vi?N8AfQNa^Za7!w@ zE^ohwnjlblrcX27*WUAl?VoRIXMg!NW~Q)wI^BO7*@h(K z*vW2}X5$MCxyjld`NZLE`>6`9DO|TGlhQ2kt@#Ng=Q$*0#@bcXUd}M;8G*3 zZE*@4b>ri>;dkw`o3mq*@Wvn3+L9DFl*A^60Y}TLtF=zcT~EH2S8z-lr$1%wx^K$d zXvSbZMFd9`^{)5Je%^ZAN( z!vgmxk%e`@A+l7{Br(cVO0cu1f#%9wba}D~{BKWg9BIz5SZ!4Kr3MU*qovIgUjjBS zaAuPzENOitZ%OiQ!=YB9v&hTyYQnfGVCoN0D3Hc+VIElD!skeqnYXtC<0Rd#1mzCj zC0bcoA)x1`4mdl}4)6lL#EThKoSdBCAVl2bm{)?gsXyFZcZ`g92G;)aR#H+**6ZKK zrCm>*c>6IcNNQmPbyw$m3eop-hxj=zO?JJP1&!I~UbLEUuX3i?YUoos45aGT;*gkAB-?*+6$fYJ(bLdVmge2e z4W?r^ZUM?7*!_LqMrxtVdY%O-cwx`ho!IPGK^Gu=diu2%kZFHMNlQAt9SKF8v}?DT zo;t@C{RqB}PFSIzIXO6poO!rQyLAb@f!G3~W(>?D<-4{ub0XA*O7}&86Y5=}0)cZs zk}q1CasxQ0s;h+MLZ9g*ntw37!vbxuo;$YfU58DAtZxqa&uo32qM)6MebHdIny+`% zgQCVp<2VyJKjfl_si}c9 zq0*)Oqa83fqDpqJg7x!da8bKc(o3LU88(nE>ojY{a`>TdQW)vM z>NKQo+`OyNuE$XzX)7m&?(hp98@ZH z(}udptFJ%*`#Q*u-y#mlofWpm&|XfO67Y@trUVjz6?_NjBJcYQz>rQeQ0WP#)KO`W z6Aq^TcgV=cQs_KYS!LY$Wj;gEnWHH5yTKD^RP{8^IYAzlM0!iv>sE$~%1R@!rJ~|b zrUnKXBrZF?wiCkb$jTmH2*3FD)pzl+d3DSZ-=H8u%8hU!ReFNO+U~s(8N5)n9YQeI<)eoUAp4<;WchKl0 zmXnP`z<7lhMhLpn3m;C*+z08U+en_dFN&lK0|QKdql-^mZjOt-GR&7M-IQo}*F@F5 zvw+UBD9770sYIVS3?>>(wSfW%!3SI65D0KV1!n(uWZ_~2fO1_BH|DVOntn6aZ8was zGuBF>*qsvN@mQLwhZNm((dHu`&!>4lBtG#h%^!mY!beQ;S?*4jPSmJz8yk$2E1ThR zE#CcQFxH9p=I=v*Lmfn*MI4dXx9Vm(TFzj1KyGo`GZA1CdS8TB>4qzDv{8R?xt%QM zRea_Nk@mA+d4ALs@t=n+#O*DlHt8G@--e~VD;Et74SYU_GgU*wYPf2wJN|@VRUUIE zg;p^$G9~M`(I0yGm1B@DcHHPM(7(>#Z(`+Y7#NhzL+p=c)mScpLs~*kpecODBg5vX>Hm9pPOuZ16wO9 zCL<0pVzN&C-U;;=>T2q_e%h9-nEpu&n;IdY*I;wk{x11A`bjLHn8p#=#G>D|J8%auY`MgJ z!*~JAtTRTgHAX7bnG+C`dmj5nRNAFRMGYt4M#>E;`u-VA@t&+<17BFtdq5UdfFU5ZG z123#bBK?rsSFH1RGenEalqmHL%R|wqa@_~gZvdBopCz&$ zPU?-QB;p?nwn7&c7U)ntx;4383N>}Yj(wmtKiBQkMz&JM067d5+<_4lh!Y#}U7ooR zt{{7NRL2gkoP&?swe+#BACi#E4J8egx&g_HzSuIOs0AT(_KytNpyan@d1y>lqPlA~^RER{LrviP88XO_^P zURm=j;;?$HU(0!#9q|w9o)52UDt(ce&EbuwcK@)=pFdaTISd|wmIvlAzz!et6D{{+ z{-iR-!_In-?{XYK$kj?aTt8Y^-~k{tl`J9C-gNf2ytI|%Ctv2u(dsRxqOb~$q&=gJX~2Xxf0Sp>YpitN0WjsY@v`q4%X##6wg{B{d{43T_@xn z_$X3!6`tiC9y0&+>8#PdcSz9$Nfm69JwjRmyKNI_Y>$s+E>1uZf zg?M^CGHg!?robE4ENMa&?g7{6R6S}s)O4-cAElnuP)r`g@mWmLJcmw}0EhZ^c*d$O2hX zH&jBRre+G?zGxerzjj9^toK+?=R2`JOx9FVf$PRXDNr-;4>5nv%2>8U z?~7I{1)}ybW1k@3qAZH+K=XN7M9NsXy`TW^wU)Sl31kiY-^q+FkW{lnpm{k=#xMro zS1?gta8UW}uKy8!QH``zZt5;7)L6e^jpE)eoJkxb1UGzrsNrP0wP~yS9f_t8_~;af z;zgObSFwn#4b>PPzB5bd2@M%?)pZId$axQ49Vc-3C|5UEp_{%B!9s}lLQI%OzksuR z?V0hPM~jMzroPt_>Xj}nEgF9$eM5r7oBI$&pmqD+T51~y^NxS#F?RZ?_z0Zqx%lec z;SRzJ^3GmT4DTVD@aR=caFnP)OWC2{9U@m-xJS zmaR}h#Kle5>Q~DAWV)(lyDw&9q{U+&yL*4&8T}R>!=SH6W1ED(5u_}5FoEWT(~Y|Y zwOd_J2$sjlglJS4Hw#Yd!*dlbY0)!Q{1kl*C6w!;jmSiaAo?MzzWk(UC#0{E#*_*( z2N1t@6c~zUYG+R)Iz`s2?F3w`zXF}aFH(%}Ey8hH>@-~sOkcadpDB&TeK36sVP2$) z+8rfJDB>yHOW_tjR6^f|v-*;@*0z|C^DL?W0MDSkh@OT9sI0!;HF2SX$B2JyVvKxe^*KA6;FOe1$AH~n zS()GC{2TnKuq5s*F>K)Ilq~&X-c>rDY~t%TQUCi_gP^6~zkkP}9N#Lz_V~Do<|_c* z4MT#$LtYJTKDL1$KdMs^mS`r{^iH23s-qh>+s@xF&iBZR z2xqCV`hBtTm-JxZVJok#G8#uU`D|7Cu>tWPk3#)isM?eFEFKo#NIjYw5*nUEAC<;HBdoHta$x)6VFu3SO|#r84<7h_@Rnja8AR0}-ksnSj3hm2@s zP^NBHY}c9Vn2?sGss1>$``_&1A|a`Xy1(Ty1ycoI;XD-!E35cA^v4GE!$O3B?-R9~I$Z?T}d$ZMU4j#$E0oJsg9TL`QL#pCE}h z_RKuj7tJ1amNne*yw=0U7&@Adt}@|NX72R=x&5Es62b7TQXXP%66j{vfrH@1je_v^ z&^!!9`V*np1*GEELMo*BA}7n@b48Aa(e$FA>cH3MjuQmwM+}hGiXd799;ttjner6Mu~`mequc4r=Rk&I|0c)sx)ezu+wIv%=PTv`HJ&H=@sFeLx(*g%)Dl7~0>dTkH%c?>tH9 z&L3J}QK}X5lwPA--CR*o;qIlR^x<^Xpn_mrcrT{b7g~Sa*)~rybX~qt;oOn!XJ$p$ z!-X*^jcncd1Qb{N?yoar4ic$JuJKn?B9no3a2E@e;5DtJ+5G@Wr*R!21GVJ^m+f)g zrp%Ty3in#P~0 zOqkemk0VtS$a%LJQTsOkY7~13!GK15xN5nBeevJ~tec2n_PU`uK*1W@)t?md# zXsqCc-vQ_|lrUq_7UG>av3Hx}xE83WHLySgh(ECa;&yciEIk7z?d$68$%%Mxr`4|v z8vEE}q>-6b82-G=H5 zEMbr3A%5nB;qcTeuzz{4sTl+S$u7%HFU2!msuu170=XJ#O;goh*L-xA3bq_=1=o*o z)rHDqu63%&|-qeXp3mal(Rj?vp!{W*v@B^+Gl%a+=x9SW;N+C zX1Rl>*ifFnh<#4Y_09rW`vzS!;-Kci%3w-4-5v!X^?yK?j%0I3nF1a<6CJY7*CYvp z>KJ5r4+)1jZLP8mwM>00@Gj0!R~M~WfRC!x8(8{&Ku(?hs~basW)Y;(>1j#d9$1*L zaO^GkOPA6k;g9gOrCPW*GSsU*pO=CJUtfZ;YY%`D+QbtCq@CBc%8j@st!g~%&`j?r_s;{*1E=`g$pdeZVNh2=WHqw1weT8LXKgT%KG`8!P$e+n93^ z9qdA}xZ2j%R+W=T2j-Zyp$Xf<#zxSwk+wTLS02T`%a7884<6Ajg5Ug4D>>|(j4m4I z-n*wJDk~A-T|1$jkv>HFwpxmeL&R;aUY6h_ibvhOn!tH?;g~l7V)0}CeF_VU3)u$q z@s##TZ0~+c$L`P#g?p}>l}Sg(`Ojk*cyEReR!~`;WL?t5$8}6e*S$cz@GOQ*ow9O& zKx&kr3^NnptYs3HKRnKFC9UZo?MZn(P*bcDZPQ<-SJ004lr%}Vkuz@b&FuJPaK?Y& z_zW~d1x6pf+ZML;Rj|PXAYz!#BrW3s_#Q}XR#UUNjppmw`a45$VFuqj$7zBEo&2Yl z)ZFtP|KKa*aoYg1y$~*^roIpM_zqQ*=rpkvs?8@L?cgA~^}WU|w_c1yC!8N2BLj4i zwmZ^2d4tq+eRHE2AwndvHeVy1G6Isb(Cws~R))BI+bjJLgXI{7m0e!%U}1jimc3EN zfpGDwq@{oLCG^&o{}gqM-|FQE5!*~fF56?WocjsPF1fOUA^%jUK+LSTm`&8p*9v<4 z^wlRDF>=#pv#s9x@q(3=B}Q*Xr8;I(zIQ(rIjBL#IgtoX&Mx6a4qa^h^B6VA8I5G5 z-F|IVJwM$gV*djt=QPbWedDMGYNIzdDD+AmY6X;BTcbcB^xp5{HWW^6sG0>aT%1BOPtAK?JShRu*_vjoe8U_ zwu?X3D0nrk=5B~BpRN%^+8T+>>UN>W@4OxR3;Y?!GAW&aU|7*7D$1?DfnlBBWyLOa zI9aE)<;~v8@%$i$_6uIT1&oV}Bsp~^d z1tIr+Bp@I#$;vBmr&YKT!#0tnXZaa72|*%$<>3wA=Iirm z+CmPh|M@de${sqTA=?WjSb-gEa+Z!<(An}+^vn7&x?cZ!(QB$>g0BKHc$1UF8{YHn z1)z@SjLUF;awYsvJ=)d0rS_{5O7RbF{nEKy;!bB+7jQeCH>Dnsot>AC1Rcb8PvY}a zI7+AEqs=PbK!h<|@kFatY&6d>cJQF17a0UGCH`B^@n2R~l>OB+H^Ypo!Xk;`(#%knEnwY1wt?0KQK~|UVwO!mw zb4qSmKl@my0F2ZWjNO0-*}lU#G)`mTmOIK>1?moj9leEBPfY7igazqhoCVn9UZJZC6xMrzynSax<8YoB z)%rVN^|!I7*OcIvWTpk(5{s4H zVJm7wH~{2vn58#Ji}p?0h~c8y(~XXL+XXbrrJ5j5n}XtOW6q)2N(B!yj<#y6=>zN_D*J7r}(0_?7~1p*|&Pr>LBy`6q<&yL^`&o=S`>dYJqkNg+O z>v{H{Um92Z!i!>FqJYx_#E|U^-qvSI&>A=bqM@d?10JybV=M`BC+!F-u=Orqno@Gx?jLMdZvdU{z)v$L+I`?cTL4YUuF zu4%DN=p`^dWE~8h5huA#5IHC_Sjiyp10e*;hyY-|&Hd9ziArsGxeMC2n{R+hMn{ZI z`{eDtq+eFs~Xdwf>plEY;x*^(9v=l-$WS6ArH z+P8Fi?J{`1Zfh2AfruGK|2|JKkZJ(u<7I$-fvFteSoVykk`59Qmy_%WOq-LeWOMhj zZXiEAZm;=Nll8lIUTeUHe@~i5KS4t~Z97rE0rwdlWgA;6fbaPtgRsE)qpURuhSkoV zRnk%!!j+nq0+5*JDT{rAr#WT;`x2rwaH?fjRMhqN+2Qbs{c*NmOKk}$BQ{PvvP5~7 z?Q+8z1l}kQ%;<29JXhLg&&&9PMTv2LGC;g6LWdW3YIcxzbUY^qP`bF4L?8m!%}=upSB2JN`fPG}%-T-vQp_XU(?!GF@gP?|r4 zd5l>}f&bJ`ZoYkCHoi517$RZ}*_g&0SS&7^;uct-|G>>;Yphqe{ceGJ_0Bz-);e+* zLI2(j3KRE2ynHy9JR^^36~wU~wu{x{A&VBR{iB=FmlRj?e#Sv8mN6kkP{NU%;)V+T zdl@MXL<&XRYiEb^Ip3i1P-(!ywXV)J{3z-M@ZtE536{@H=j9!RX~G8}cVX)3@9Pun zGSap|$Q6=T!>6F25-WlWZxm^ggWpFyX&EWb;7LF$_q?4gvGYCI$mt(1i|o&A23>7& z@S@Vvn4nQmqvZ%j)or|i?E4oPJ-vKXk+4rGi!MV{S1SOQ=*`(#YtNd`0=a0zBo9KC zhh9>bbnJeSenE<;aqP(y6m^m?7jY;O<#^?ru`SXJ{xZyNw#G~O{fcM z-)1$%kZjp4-Vr4+Og~(iCv;2zvgr+G@tX=6(%~6+b6aP^I}=%kx^gQ{^{wSc$T|lf z&r4}UHVFD!U>cV^+zw#Xm9vf5LjGipH!uw?7sP0000{R>4g)6LP&5ey>&k@RPKROw z2+G(Yk~J)s^%Eku@C=(P1VfE^a6YbU)O^aS=g0ePOZ1u)qBml>5T*mM__(MLqGUk_$ z<1W;XCRex>agqWzH$i}+127r-C^}zjbGL@zdV_5Q$+VBiwA{@G)>-(+eVU9q(FAK5*mT*Q@GkCwVm0$_WtQVG<8kM3 zxQR}r19W5&bv;Y+)zlA`%fC%nrfZ;MTIGJNzXwaJpbnA4K*we}Wk`n=9|~Q`A`Y$p zL32;S^K53I#qY$=RnHGiC2GS-2@VQEo^~SX1LeW#b~6z_^w15|+h*RQTTstbApKL~ z;ZJqXLZ)%SG3~M8#%Y&0OexW2z}1PG{CbH_UGN9(=G4*AF>uWIA*Q&8`&@vhcMzGJ^cW)>}DE}kXcOy=KGOmV!W~9Yg%NnJ3Bjz0|muAJOWwSjIlO_rbkI0d9nhG`5jsgtLZe|kUz^<>TbDu7&c zmTPwP%igWTZD%d`vX+$h91pjxRBuUGUBF1gCYx`1IDi+;l_2C-lsZ{4KKt_AuVFlr>|p}(VEwp_O>>C`n2zC^gP)mF1v7w*oqGK<#*>DL+HM;8 z=%L7XI>y}yV+t2a#S}{AJY~8Y{AXw)J3AH7vEl&121SxwuP$PcwP60M>8W{^hq>dT z)yJFY2x+0sd}T4WMV+73dQ2{Y%Ql%|(>#OCTfzw>#og6=)M zt(Z!BdU_3Q*^T_C00tPMBy6>%6@2lLOmF#&e+xw~L5Xa}h6#A?QWM2AXC};9jfEvM z;UGyJg-*60rYZOBZ=-}}JNWudAUI(}j8`WOK<_dT*+iw`p$3KKn{AchXCpR?ho9K0 zVi@)ihMe7?q6?r7L)s5j$WLa^ff7InPfsNwLAg!l9*-v*&Wyk)feD1`=qN(r6fu~P ztW+Qrg%eJQ@GJrHfrL^~kQ`V>{?Z4Evo8{>QD8WM?DJnYoz%n4J*{_2>A_u5Z;VERt#}T?eG{QCUI=Rj`(207U;o@b(Z#OOo zw!KBcuEmm%mIaam_%TPFn!^{Lx!u=DGCyMb94FHxqDwKdm65#s4FlpXvCaUG!wz5# zviaS_n&a`-dX?Y|D`h;uiQKj+z2!^Yh1K_>IieKKag+fCJsRh>dvC)BIpu~!1_W!U z=xCvWKgd?Dva6eg-oZofhH6^CtJSZnN)G+bFK@DFlLUfQ`&8k5 z0}(<$)B8Emb`MR7g^`g_Wez1+B9kRBB;)`AJRz85J&f}$U%`}s$DAK8e-}bN?5uD< zmuj^vVymfrX1B?L6r?nHPOa{5pkBU>z#1B*f*5x922!q0YOtN0Df-aXLhpabBLUS- zp~u2EyR&yjGzwUTsk2_OYHqcG1WQ3Soe=q*H~J`-ee$w+bEj)G1J$A7In?H1%>Bx+ zkQwM)2ON4Tlx<0cyy+w$t|p&$3LXyEP4vJ)KudkgeX-J)e+hAlf3aan{LoT|o)zPS zH?9_aonT!$hQZ-Z+epSrrwjw55}FR9GLq7Q=tCnx`S*!9DCtp`f*i{5uU&8Hg4h2Qf0%k~Eo*rCTpkzqym)rU z$@lTh=$n2Vjxx8gC#`S3hc$41R%zSh4rvW_!Feabt4<<`p0hLL3T=h9GwEMw8siwQKMiA2QD6N{Os@sThPMnMU@q zBrWX$kAKDQtfaJxx~d!;f_~12R05gE_SeYrOFVLb4cs`P&5MFZ=`cio{z}mLIW>?- z;=6$v?RY}XY2bG#uLX8ea$%E{c8@-umzr6s9vbJmDW%yaRU8y(uSaiqBnT!tKTD08 zpgr9$S6Tm5m-2()}v=S?||$@)kOE|fmF3T8GA zgmdXzUs+%LUGv`T@XYZ7`-w#Z^&vPVOvW6ku@66fa;CP5d)2@N{ZmEBNVmLz-7p=| zFn|+ye+q2dKY;V`R}nxkiT*@medD7s+rvxo3l}|%L>Q?|yZJNnDa;B0z0>6&P9Modl) zIoTc5h$gVI^2OBhO+&un7X7A+ovhF%9lo-s)7tEai4aPa0;y6L|~|JHu7bK_s0dDA@2?yJ?wRT^P5S-#X-`=bz8aC zvZjtb0M0kCN&cg^LP-%>`cnrHgr5Pf-O5@FXzo`D3|JEWs%I-Wi1QD^DP$?MLcsur zdS>p$q}xc0%{sBX4#qSz45bC6$Zy|`edXg4kYZAJU*CLxw}KGItVOjoLP5%RS5T&8 zc}d9wPO>fkNz`4)e8xg_Rtf0m4;%RTo>53yvQv&QajBjUqfJAZjdy0Z~{!VkB+ z%D+ijZq4)n9j&A7S-cq4ZFz-7O$B){v@+j;F8y+c=wUB@qoTn9B&$C*$Fx6Zk*=Wi zZ(a@Jc%t;TU0|gaeSina@QgZ$F&r4KezkabYN;OB9+PZ(w`Rl`b&PpAy{+SGM z6Luz}=tF$uCF1HD`>1@)MuU}!_jJe&%sN$l_HwM{-(c4nvVcCA(mZ;)^)cYV$~>S`5PDw@xe|6ci%+ikL*@c5alwi@ z_T`=^M zNKiGo*3>v*Y~pmBZG15^2RS_07mOPeXBH$uyCs=1^+#=Q_wXzn+qGViXWifRJDgKG z5S!Bg$83cA8>8+R2e=;``iOFiQd`Q)d-|-RF4~&h}rfFo-?5|l3a|aK~+@Sw3Vu1y0C??LpLay!xCa#_>AyTwoCx3EjMhB z|7iij2c3DETU%-TU&S0szSkTM!mq=kMT_;3bJGV6(;U~}D?1Lkbg9t3rf0z8oqKqC zVt9G(kk*zq!v&DxwC}ZY^Ky=-INMx3c?dt}oJiZ7Y%Ur(VqpnOM+H-`H@XSepl6f@-DTTbA6x`LL#FS}HI4@(%P1?-;C0y|{6&GsoqDObk}@v0y%S(OYnsTemVH>^^M zpjn2+E|#L4U0qG%hq+`;CTj7WDKUww~w$y#t7%{Fr1QvmfYWNz>tI4GU-J^)O((YsYT=Q;BOlo^8Kc1BLoFue7s6vwWT0 z6BKw?5u60ry0qW`#NT6ru_ACEo`XCtk%B4g`V7i=8}~1o9|KgfDBM|8b@bZP3SZ5O zsw?pNw+nt=J#9M7H1W}r=T$z*Ant9L8m zHg&mG^w&`ozKfY*YwPUh4UdZw%vx1Rh&@}u7_r9sgZ!I^3>4T(YoI17|0+R8oj|)S zz{m!Jx!5QamDL#@We86`2&>|A+9W>F^IoOx?e&*`mZu6zg@17QFtJD7kcN`Z@N$oZ z-~4Wz z#U;}gV5|HZIzLt_2FG80GPsu)(nivNM+XB#)LDU{NOhB+ezQzw-qkG}*6JMzye7vN zMnSvL)WksRK86nWVqx|y*|Gv@WwcADqMefiFSWe^I*W%nPJ5cjn=4cF!-i+4nl#(R zv2LmN_T?-w|E3sR#1xE!Nw~gYW`@Y2)TJ4QNQ`zwiJ@=*kw!G?2{4N`+mH14j})tE z|LG_k9Gjt|#jZx4APYMI2t(GTIytpBhBD$kkl-g+}@xMeyLB(G) zGlJ{VNEGC82rSr@_y}qlVL6Jry4vFvGIHnfT|eYhmixwByJKtX+6{~JL3HFc{>*gu zUOcsjhhGG{{FuD40Kbo7@0oWOThvYl7FQHoghDN$GwT9&2bK2onT&*p2I(ODzz>47 zETsNN>07}R=B}!;2YYukG(tB^jSp6_1Yi+gYT^!@d0Q9~2HL|f_2U@PgY#m3hIw<= zjr@Y6;6L@C_L-PnjjOhL{Mo_$^Bftv-wpWNBwz&STaAic7->UFD6DVs62micJk*8F z5X8Si#NH5(7xS9ik&*bSY~K3f1km~MrRnz!v{eQC4lOI15jbP0tpr-!`#yRb85xB( zisV;m9uoaDEMOe*vxsu7uQ_c&Yd0$*BhcafZF>U<7_xhbs^a8b5pT3bzRLAsr2=Dy zx}LKb{j+Wu^n}I;LOXY{!;#!kKyJQ6P`&A)CoTE=x`$E#o*qfKRO5GMl+ERfyf(pa z07{`2WFn3U%%#uZh)s*_8)x#q(@rTaZNSwc{Gz4veNKl!6VNdUR=k;7`EZM5K;U}k#gSz!bXu1@rH_4ue8;#RoS+}zS1dlLc*|kv~|Am zHMbhD979Kl_9{zjMM&nbsqneNv+im)@=mFrixC9DwpB~cQ`TGTWH~`0Cn-V?I=xB1 z37?`*OU_g;r@Ue&HxnHli7agYr0G*?)J7pj-z6@KGD1T zT;bT~c1&03_&1~iq;q>ik0237gnNAGEatC_$>SL?0@2>v#gb>{&?S|POe1Gi`UnD; zRa7C}!q_;ORbB|L&r&ykXBE)2AmccAL=ya0ym6uiUxVEVS2T=w}_z+gdMp@0D)N#x*|ibC=2ZRsVwuSfp7-+4tU6$yEstgQFjP$fT!*<`mX{qNV2m&s=5 zn=D2FUT19sr&raHef&{l8P5{v@3VG+fw2^UR;(-lc`YM0?r!%C*fU%YWt`~b&N|vV z&$8Wqh|Pxcc6KY~_JY$*y@>6Ln}%K7=h`F%x1=BM4oGNrRNjEsif*iDE_O8L5!~JnJIU3A|xUCSGO+n{#RA}f6SB6oEwlL@V28cz~^l@a7 z&o9QEa3gR?+*|w%Q2;PPFH}`a@XbLn(o1bEBPHe0U)0%-Jq$mC5x9=VCPky8KI>iE zcWkC#(^IidOkDq-OGylI;n({VUqCS93gv8Id z+DcU!rTQ4p7sh4FI!S4!6o3qOu`tWX=2=TV+hut>M^}?*@}0@qwEumP2s0nU4_B73 zr*=C-E~Fxaw%$*}TG0!E+5JM3r%Nv<&8wVfQ6>iR%c^Ep=-O%X#TT4yA>e4tA|>&ZpP!$6IkK^~u1mI2|y>mH5)!X}#hG-<%=wIy8o}Ln{H;e%5tTiSG3j=0;l?6$9 zn4F6cCaS$dF?RcNa#cyQU|j1I3ZRt_|394X!zX+*Lhwj}WVHR}*|13~B4!}fim8H9 zY>j+j#zvS?H-EKTw1uOa#ol$k!rThu=0i@DRgF00I2Q4$`7cHhCw=k-@Sm}OUrjgR z(@jPuCk{bI++??zrgBoVI*pWX&(~5TS0QsT^zKSL6vC@K8ZLd0e-~Yz`B*r|so(@_ z-3AeCoB~8_`H3am95V+N7MAr!cQ<9r@F}=sHo#43Q7{=w=#S57cjH*3Fi7C(_Ya{e z!RgmOAvpsPB92D>{+$b4?zcuTH93t1fO+$TC{%)Q$~byLHOmmV5X8y(i9(a;z!yrV z)q0D*6A|6C^F4$oR?34wX`K{{|B4*mLvpyaeO{ zrXCg-jFAb&;p?bF{Fd!KHuyPGf0o)lDUaPC%)|wkvl0CykL*>+hxx82CJ_n$eY=HEq22;LXVWx3DysOrDuW z;#ODN3{O7Z__^kKYNEHi-LsoBSuFBuaUoZwuNBe(1*g}Ya|{Ao%}etQ2kN9j zjGO#F4O@I%S2~n(=Cn>mY@F`?^|+3w90`oxIf4zX*{fK)4|eaO@-+8r3hN5uT~xXT;9*e(sfXIY)8aRaDzm(H#LIy zMx3Ciyc6sO?t>}g{33ezLShoN`Qf=}NMC~V;i9gA@D{c}w0!QzzE747J(|$m{lcm+ zmH4OP`iSCrif^n`Q)Fm=zNyNzX!W4s^6)-4#IM(U>r-5?EYzvz_}1!;uTJ4tDHDUx7r>`kN@ zYt8;@*fmm~b8+}r!R4g~^RDdN3fbWgqwP^~>Hxfxk_zlKFd0Okbs&B%ky+mV`$4h; z8Srvt33EIAe9v9*rVx-RqQ|E4a;zLiUA3@5@wa3k)+w3@=Uw>`>GUg!AbR! zOLuRXY!S9Pzny)Krl^CzNTY7P0A3x3)S8N*1v))odk7yO+a9f)`oozONGfS9%|Cw_fe zeeG=zW7Iyk-DG);k0M}(9TZUQxBi)u=$KIw%zCJGZD4q=3ggp}apK@81bkxU43fV% z`RpqgqxSKmA&R|1?qAc3zP0-Incu7R{Z+PDcsu&1cr>u8m;(%ufcj!;=Q5r7cWh+% zzq9-f$91a(6y?AH4rc8J#}$>zU-)sPbeN-4p1b`Pu}Q^X*)cAV@fyK^Rqd^*eXr70 zhhC8d#KIzuJW2Lpf=zr@@2@#YEwr@yELC51k>ILg+{_x4WC>L|75_4Pyz^rn?;I&O z%f>}IVQbUnJ4Y>qiVh{nAEutbd&mUzc?1p-LpF{ZbqiItwRk&&sT8A-(jw(v zV>M1=+n(5HY@<<=Chz?I@Ab^*x$Zf0&VBYdYwfl6W(!W!kD{%+;>NVv9!jaReR?I8 zbXEPHT+ZkTsgo~7hK1F!%@W=5A1#c&uLelB+GKa*g_E?F1-j2931RMvLSc6`BNlCG zX*vsc-cGwK+mw#|gmAAam5KX7+mwl-;H}6SorpQVFLi?BovNcOtN;LTRAebAhnckw*#&g{w9WUJkGFW1_vyR_?6Eh7lU|`@I z8&%pS)~q}>Tf|^PuIi5?5=R$Mzphz~z5M$SHd20r>{rD~euWu;Mo-QOvdit@Kk>Qv z*1NT}@nl_MyGN^u`omJ_L`0_BU_an;Dfh=ZYw(x~<3M-rFmBugINNUU`JJrR+f8QN zGUhTNJ!f!@x}qkkE;+6SgV%z6<+8zwzJl4kaEaS2b!=Z&9f7ZUusilBX~4@-k=lnWp|HaA&61av6tc&-IGsO=8`pe_O*@a-7cH7u1k_aw6cEsq+mh>{q`4vQo zNSKG^k~oL4T6v2O@RfF*1hrOaefl-kii%Plg7$Flks(>Re1(8yfWtr(j+uJtaj+jC z6MmF=|${W!+vCQ@f zTRAVxr$!x%z3&Xea!f4Kd~_6i+ZFOC5Jl8 zy#YFC2$Kb0ggwA>_}iUxB%r$~&&ws})yIuWRKqeEib-L*?_uQNLT%c0OWVbYDB;5vt)iIR1) z@HDri0Vy&n4l+S&vXCG$Qr##tvSUzGaN|EQe7x=@DF07i?$?y*I~TYv(-B*wQGFzG1h|=K^K_W{%HSS_8R#gy`7!+>pDC(T{<<64cr$(Cot?r{KfH zoX1vclSQ-ofdhVs5K=nIP3Be*2>R00gc}M8zJiu=V0XIgxWtysLi|~S*i_I=D3rk1 zVg6qtHMa}kKX?QA!-ti;cOnQ@EC>K;A(_{T71!s?=V$EZ`=)2H;ZHx!b>S1Kz1RzN zn`qXtkBQMxc;j_ZmEU0Z)0BC;GaE?2w>tSZI%`OMU!-ZQZoQ*vM_Zgj>!i%^za!`hb#LK^Z@u|# zPx~G4ufk+W(p1_w!VoFC}^NAGiDoG40_meFy9UO}hzz`25(y&{Yd z*M&!$bwl!rYH_Iiv>JlvJPgb{>+LnUJxfSH-9&WM{`wUcw}W`qJc`vF*W}FkuXj2> zvJDX-*ZUOtK?6Ed-Fc^oL%3n;>@#f;FGNzAttG2z+7$YI5k1s5zHXQFc#k_SWw*|t z+2GTzuPHT3u)s)&Zd!t8XwNGjm7SJqv>-j>la3I4?fQYl(TgE{!yd@69Zb-4bQVfb z-|t^_!Qq9~wD{6T02etYScHLbpBna#>$7Z`R? z^|y1i7D|f9kAd+`*mQKlS7u$#AB9`C!ujz9_IIx<`nL1GE=b~ATC^J}Ke#ThOyH!b zb#}}CZft1lzkdX7F5l>AQmUmW$9A~up1}9No$%j;mhaOakds z)BAwZF~3~IV8aadB`(@KRNl}3(U>GK?}AZGXC(E1t5wMx7vBTR^GJAlj&|@{912b% zt4kG2M3qNZ4k-`v74@PCo-pp;z@3?6;FsbaI*W-%7u{&A4n~q+y4D$0W^m_LS*+<{ z9=;)`r~DR`Xqiz(EG{|dopG2!2!)s4yM2*!kA_ev9&RC6h9l6!N=3q$%8ORP&W+O= zL?{nI(4rJs*G4sO+riV<;twaYvn;OsWDxWG=AXER&C5Ywe%9afhu3$CFJ51ZIPaoO zl)S>f{=1|gFDPo91^doic`-qL`8W+RgNB32T-EJjYfuQL zPpB8)5o!JCaz7bGvi&%o6#8iV;nfJ;g8|zGAqkg)cY*@vH5rBv1DqMdtw6**WVp>B z)q4Q~LpW2&tv$tLq>ZFbrKJjjm3vJ8=wsurhh^OqjmwX#7LFVA1D;^a>ZErzaGI%) z6@Ejehcm8R#`nGQ-2?Nw_*NGp=2LUtWDR-lnB4$h>=~ih1f5kqNqcQX5-ef$lf^EJ zcR?Udi*BqsC_3lt^bP&5CdUCmWL9NeIUWU9E0Hq&rb{cNOxP|!D7w)us$!4XZsY(j zN4332x0r8zVChu>JH-(4&%1AmOwoBK^@WNEI;OI%A^?*N66DwTSX4_HS%E5Efx`6szUhbMyiDUa5}r}pY*E7)Xk64&W&02gRg){ zibiiKumLIW@Xnu* z;JT%XOF1(HDN_#_8D!xBisQnk`%5>h(1>IX9gZ+eh} z_|S(q;Q&t8&0mEKaKfmL+nFr~sR1W?&JAfGFSEtd$6f*s>(ObdDQ4UmayQ4Vbo_XsG?LGSXR9qxfKS}3x(=z9Oa7dMbMOYWz7*x0j^Tpm{Owh-V zMCZM-NX3`Ke!Q+0Y-6a?<*J?O7(NPlJYu8lD!u~&#EGINcES22rdDYo=hCkEM#6ST z2q9b1`n`d2*hT7vJm>(wf;^T6;}>QRuIdlRXLB$cJ>y%KcAx`J1B!sjloQBykINnU zl)Ga>z;l1MT`MEJC&f2S^`TlEi3bCe!H%!e*g!>ykMF6otG1<7$5hO9&xU{C!o2Rpl_%D&JF0G`Fz0uKR*sW%qyWY>)w7nn;MJrGBf^LBf%5}-lp zb*_KDK)oM?jL>mdd`w@#M#92~Jh4V*afzg0e}!Z&x#Zwx?u4J$ zV`@*vUT-Hi$|948Y}FSF!vj`lS=kxm3&NI^roe6Ut5iV3tG-kb`Zt2vBc#Z1<_uLw z!kchw8PHKyG@S)*6~#lD15Y#q0BRI^XDM*M#bYuTNldQF$A4G@#X;iUzv$z`SQgis z+uED^%0hAyF16XK@{x2l5?kEZWH(eQ4T}1Fj)y~P9Bz>X9F$b^GwPpx2Q8DdcVWgf%Dck?B-ce@(P#U zqM^cH;z;bQtWr3Q=FQCpEh&RZ_A8i5A$DQ#?|XYfL)j9d9xV7R%vFg;+1u~6DS_wBHAHQNqtX8VT@u$OS=eD+y zQGmRz+8!0Mfk|k1LjOKK;CX|iFS!DFCdd7TIi7pR%+!cWMWt8aQ6M_<;V?&@<#K7F+kr|c*6(E%cH~86p(R}b@e%JB>Tz;DW zEH{IV*=2l-3Ew?0ia;_|uejjZIeh7)yQRgN2b`NJ_eEWY#>mUwr{KxtmjlxqeX>^M zagMa^UKc_;lyj@#)x}B%?3qAKZ7;JUZt3~w;Kc9jvDZ#$5W|#nEn_Xr zm;B4z%sa=mBp#sN0-l{*AS)bbSt|(FK?Gm1Jj)I~}8S-%V zHIvE_ZD=6%H0$lJQ4X{(rXx{xUjIaQmh=*pM;z$?UQx6r(K;S<(>IUqI5c1`*xn)o z%EuE-hpgQJ^#xFq3BdEDMkLJhjjH8#)H@Og72 z)ys}B44;Ztih9Fkzc8FLJ#=|u5uKM-y%2RyFtOdONv{W&xjQQTX5#Z9fR0ALBLzL& zI9#LIpMJ(AHpH%)ancrelo@Y-m2XP|N=o;#=oUA{TtSVNL~CM>Fa+`QudD(<{WJ1g z%n%JOoAr^5_{LoBbI{xp@!)G!*y{&&9;s&X>cI#vpn+L~|VWrbW7xgIIzP{8yiRv~_A$BD{*aSiVhfaa4J?2e&o% zl6UVh^SBet=~qet=A5uCb}59Vl581vdKlDeI0WdSJ%rzDU%>^_szW{$sE^~{sFI*#?ty^*$`lvTOb}pRH2snW5F0)mkxUG~bpdfxdHbR668LPX0TckNeT>#UW ze3656^2aR*Mr?y;?i;-gMUX>XG%g^cR-F@jxd<}|@&2A0CIx+AeydTatI+n!S21c1 zsfZm<-RD;2w7AZ%kl#DCQB&=8L+mXS3u+q1;3nMQvFXT<@f*yKWddYVf<3>(?B+Qb z9bk7sgVl^WJ=PWpQS+-&%MyF44%Y?jS#jW9zdp?fG1Dr&?2BmCK5Bp~=?e#Ilvff> zzF#eV&}U*rinwqcNDU;@(n4V;!s@M#ih*7#NAGdC3@B#@8*!cOja(^{K{zS-t?b|R z|Al1ghSbLwyQE@?i#aFpXE3pY4MMLWx9Au+dPM$9QWD6`SZaoY{=+08D3F~rx3u_d ziimyTy$!=M+p6ZGD{U(t}gZ+{Trxoc!ob5dG0B|!y+gSE+zM6K3fy7aXJF%A0W=QUpj zKftR=FlyH4*Q4)}!74t7Cp@HcLb$}9c<7zd$uNQzBmhN z=Xn$;`7?|s7|pl;Z>@^$w7EAF_Kj-H+> z&aOYwkO}h58Vq+#f^_^ax=_24R%i*h`yUL{$6|9dE~sRu;19`b?0-m>9|ndOVeoN6 zXB!_L@_h$z5BS?B^%lL(+eBSx7*aqHT`uAKT$^1%YoM*Yy8GGWd3=|g=JE0AS5PIA zqQvOvs(zNgxK*BRzF+T#sQ?0=I?U-xC&hzU|Qs2h&DlevXMABbD zh>bzSSr%4u<*5k3EDCf^Sz6D9-&(WJ&$1qLc_oQe=jT*eC;xmrI=lW>`t<%bG^|wh zuT!obdfQb8aj;uvTa7?R*m1H#CKcjA{r&uF*PUBuCZ`asK`LcL4Zkuhbgj>T)5F~W>>+IQ{U%oT*deOmL73GR}*%yoaGf{)-F{8sOF#`kHugk;?O3AwW zV*zdeS#Y+{B;vq6ni|ej`#n#N+|+euZo=N6eIl{$(IW8b-6P;q$3Zk^etesv#K@=hVQWumCVkr?c< zxNS2VcoiK+#==L8FFq8X(hFU##gJGo*P`|_KjIjdx zgJLAL&EwDWW>uM2fN%@Y z`B+oRZo3xry3GRLtYKjhwW(=JV!2Npisl|A=1#<$JMn$9ycIZWuVO|WRaxY41!T=8 zgw@B1xKhtc!~mEgxXf}XVM*q4_sQ+GWHB;77snSCImq^IN420ucBbdkvaFHI0wugd zmb$~8ld?Lp?@hoZc5gl7!(66T89e#Mge_?mFv3EN;%f69fzzTZHz~XQwmU?>)<%?N>&7%evh=DhV;*($vQx`Zt1{ zHHBUHlak_!&K3?q9k^~hBbE}7d331>!&_M%01HG*8y<_01 zbEY&#k#fdV71q|O$VOyB%>^%Hz3B~J`eTwGehCNEqb2~$-fxUW<3r1)Xw#PzqvneW{{kDoHAiCcmM zNJKq+rwe*wyXMxZzR(8{X}#hvItY4Rhp4_`2D3gDmb?QO(wr2v6<`43Li*04)b<=> zCg&Di|OsZmz$Bk%j96>q1Vf=T?j2-;yDITXNm-Mc9_ z@P`*dY%^%ix~k^dS}-!k?cuUyul07u7B)v!HA}C^84D$@KB7JhO4oh2V4T2ja1kGx zJ~`S3T8myjG?=?|kBUDy_W|^HUpV-N31M0ICvu0pRbXMjx_i&~em~$Jf$Y`;Y5ziriZm8-uQL5rd*; zns`;PlNGH7Kuv%^>A1MU2DR1ufKcIz3ZBC%$RoDpu4y3J`7JxXI)gnHH@sNYPlW0=C=l*#J z!S7G>>o}@vPcqZI{)tP+-*4!yBWv}T!fvvPniJ|tp7|YqO0)#?^VE8)n{~rm-5ZhI z0fRP!8yu`UH@{*mSEHd(kL+~v|NfTKH=EfOQBsl)!=#U)AdDxqLyGJ}IMzal*&&V> zNq_9Rb=&<(?Rvr?e;YibV?Qo96-R0{?FbR(`}|$j7zs_a<FEs_b9)N*7zKF)d!0K1v_U-`@%9QvJn7@$%8J}W zEWB6jZ*XCqffq4rRaG@%(rN_BecsO9Sw4o4l&UX+S)Ixd_|_(b$dZ7hVG+pXq-EFQ zi~(-IR|t3?UHkA~@vneO2%AJyzcB4(Q%lrvMv&V4D#O7ugVXjJE|$I43U zgqD3CYJgv3%eIGOJXV5AcKh|`D0@>yveSkS%{ga<4+dQO>u5}iIZaGQIg;1$R)Ccq z6eM?NR|`)wz6sG2Bm*CQE5m<)HxFbBkbg| z*}1G4PRST~87Jce;x*A$oO+dNXWhX!o7|k~XJD3&gT@40hP80{5^ydNqDDsFqFUSC z(eGQ$j~HVEf_c1KSgIL#MF*Ao%!Xbpt&NSbQK8$23B14B>o^U%avp|7otLBqBJUDO zXU8GUi1^l+T#1qs|CylL>TMJJ+hTT7OIwyYQ5zBTNgkB9Zlv0Rzz1t08d?xEEF!r1XKf7}{hBbC@i?qv)D#3g}d!Q|gc;bk4>3zKaU6TT+xS&9KUE~};7yd$tafGb} zvL|F0n#Ke7O61=nMaYA+iH+ZjulDN&LU_$T$fLi+N)4J8eHGYR-U%EGeO2{@k88<) z*D%k|NaA((80$qKT2^do08d7h|Ipt9Kr0Thk~>Y1Q*o3=&40I{-#4E;@LiX+L!cpx z$vy_F?QbQ0eWKf>j<1lC@7h*^NRas!8J>;9b!AxvmseLFTK4ou7)0{FVF5xJ0X1Mx z)R&tFhv1|@DP|*t!BQ#r2skIZ1WkAcV33vg3(#!f5DOR;Hue;hZ{|!EiUxe4hnhX3 zRiRdL<5J-wO&p_}!l2b<7Qn#KMj34~qrVROsq%Fmiw-65cR%O_)GNOUqpAP~ZV06c zh~1b7ZAuEy*Njw$?u;shnoQqakGJZlkE};PZp+M9UPk~$5I;i*BmmD5abL8H&UwH` z^t*rqwn+9#h{>qaR6=GB2NIGttr@3x*{+zhv<*slEzDjDM{yg>HPsh! z4m$Wc8%!+D#fJ?v(;lbJ`4&JP(%Kj?n`?~)&xSp)Z}B>541+GxH%8=RVDC0dwY zDJi8UlG;4~Jc&eOey*r%c_)@Qib5B*$z&UolY^bD1rTe89%$W5Pv11!YM_1OJChiI zK)WDStV^i+$?}H?IUP--MuG9_dcaGQJa;OyT-@9^-us%@+Mn8BW?N}DPI zDFDQtbb_IL>jWwF=nlrikmF-3ic`1BZ~pwIyG7~-G#N^Ls}=Q`Pyk3_vK9Fsb~8I2 zP0~Rk`ltU`BeD)6Y*{xsZ?#~7{UgK$S>9`hhZoO}q<+6{PY2=WQUOM4&g99eL7%p0 zw-J!0u1gCGjjRT|T=TL?IaDcqlKz*oB&}>cHbP!l5)D*mBJ#YIhDz6OeApk6ton z@u)HvUWGsjI<|g#!?ajY=7P3q7RDr`m}>$xCej3~5X1_nQtI!?(Q!62|Vov8G;rfU=pV)$l$N)Pp|76+TGsfT+#GaC#Y&R(#0C z&CPw<`NTrGq2tW{lUf=N|EWz;$zcSvyt3s7YrBycWpHT6@wqSNbQ5fLtPL{dWIulT zBx)k&NIfQce)Og~1c-5V5*u7}#|;$~G=~HL$Qgd+&I-V;VBT4==b`LB;5WyUuOvIO zK{MA8e^~N|ZPrk$o96AbvGfEvH0f{Tl#+XhA(u4l2sY1})ri zeRJ`FAMgw7pFmtT>LL~qI$eZGa`%=(P%7ER{g%rDQs2GMiHuhC}jjPis5P-Mhd8n)8TXMBM zbY9$MB32;6#`jD3}fMKyq;K)`z=56hXRfykd>v*jDDSX? zth=`z=h;&!EGH!2v0wS!Pv_RQuk#aWQ664Feq_KOW%nDd!Q-<1EPKvtZ1^g}1}-8r z)^rUWCkycH9X+Hitcn?%rJh^E$|SWh&uhnE#l(^SEb0)WFrF*YiE*?8g6q+g_Z>m! zbQV!QhvD>&VD_-i;JORzZsAMHL|m6W7ou_Z2za$YDw#~l!Pc`ZR}jj{KUSQl^fzYF z0=tAUJ2%T?>7q_cTeYp;$qc?CHn(_Bc-Bud5lF1E)dL+*X7Y$O2KPMgJ3SJyY>lZY z+q^NLX5$m84EPh}v){>^+?RY~@t?1+u3yy|F3)am63d?+zWrRedG7nQAVbfL`says zZIk35R?0iA)pfJ)mR{EFb&zTEDKiIU*pJdbdwW^VPw|GXGJraPre@NW5{vGWWVN_W zL}SK$kY|Vb^Q2!_IJshpoz$F0qV#zOZIYf0!NIXH7QkH`DFdl-WnTJRX63>y5%?py zCBVnX5Iw-#9aq?V3iPDR~kM& zrRsLPG6kIAa)rP80oH|pW~wE&U1_~|81vN{%ly1wlIIl=|L{&;}g*8u-R(t zlHICI7o0ltmBrd)s+0%|8cYO2=tU1PeFAyH;Ua--I!6Ug zch$|O;xns@v$jTQ7BNW43|x&-n1&@%)5VqomWV}v+QaM0VUk)L^cwBAGmw*8Y>e`7 z5lj9M_r{IssdOEmCysMnySy{*d z^=WSI$SBG;x^2f}0RQG)ll>p95fX3kI;xO45L}##sFYIpYjThQY*W!djf2|hoQo$k zwCY?{Cl2yEVchPnx#x67$a^$HVPP7FHPZ64w-5tf1t~iP{zNyM=Q6EoRubp{JzGWW z2V_*#8Dz+|tM$&u?;TdtTGXdh0Ky(e>n}CzK%`>~LkVI$lN){bG`YE+t8T(eBW=B# z2L<-CUMj-D=HSg+Ao-*|Oq85Km2JEGUgN^LbVzHo$HfQy z(9m_tN!VnR_tv8d=5(aE}W|s%W5r<~sO*)adb~%!tg|@$ZY(5~P zzSGrLS^ngUCR;h?lS)EfBM z8DsqGYzL=A$mwqY*zcP8FA|mHKU4}ch|&Q@Yt*CVKj&?9^>WZbPV9D0)WubZmdRl( z>8;|)1!?8iE4QQZJC6o#0v!s%$r~Pzv zcuvw{Q&m^B(`p9eYCk&Myjd3F{rxYBxY~WO@X@iRgn;8rUaGX&F-X9Z)N3N{Kvx*t z1ke?5yQG6jXWgTU@cP=%b@}IMM#hN4nzIbiF%!aM?e`^OT@t3Kheq(U#j6d&<%9s< z;g9M@h1|l`Yg^lOJzL;cN*T&K81@q-W|Kms`O~YT#>h_JK%~*sqwHDM;V&>H83^+S zV|35b=Eg*X{Ev|A+cWCdLx>FW1I)5I_ntIyv0cUUf&ek{B2{+N>u-wuFnOsRD=!E) zqJdfyJ+6o&K#i|Mw$>JDgCKG9yw?4v9jqqT;H2C8-wtkB#(WOWYT>cSumUQ4jJIEt z+9zI))I2FN&K})3($iXn+>+i6_QYe<8|%u;iJZUI%uZ?*(qAfg71npK@%7QnT2cobqjfW*9oI!LbyL~e_-cnpFjLBh0 z!IConT|u(nlS3>p1SZmLdv$)%O}pdj?DFhY989%~qkrEtq@!t90eEE+JSV5AW&(i? z{;~;&b_3GBgL_TX^A8lSu9OC&{eNjpz2nxHZ=pPIWYla0f~bquX z-b=9gLm%`L5YT9SGJ~SNYD|;K2GbrMtpq8WqD0+?e|6*8XegcDSl9LJ3Ao-_Tv!;* z_CgC1Wh#cVx?@)b&Y|6sQNK_u?#iNpuMr_oPVEUf^7pF=B3&onQF4+4p z9ala3Bie#YqDI|I8e3Xe2NcaT!c?VKwaRF`SV%1@4eEUn;|^c_Ea=XxtQ(5rDg=h4 z{)2E?hOGrK$xeSZ8StjXXj;Oi5xiHjO2jV=i!fh~T4Wym)(PTv#eL1`8`(J&h)CdP z&$CH5cIy|-h?)F+D!|8g@PSmYxixoNP9DH3hKKtH{vA)`E^lt?qy~G_Qbffef3zcrE95yRhPb3fcSTnw20<_!HKm+FE4gXP@iWlT zmOZ1P(V67El+2<_ox9KszF})gDHs@S5+VvS!{0y`LF^W&5Zr6@fD_)GC4)e92b5m4 z-8YAmn=P2i&v5ki5Q39KyVL*urxx)nBy;c_dUlpP%1^MDWMH zHwSiqL!mxiMHR9A2%;6`1b+01V4(Ad9XWto!1Mso4nIHbGRs*Hv=Q{igNh{VHq+y3 zOG>1&Ybc$e&%O@EdKCNoB34$TCc)j(ko`)b?fmMk-`ryckx@{T3)GAQQQrQ@M%gIO z1h4E>Q07Pa3k&~t*t_k6eCH7K&(2(@HX-ZpeCh6?H>5b`tSGO<(8|E7Hxz%QUoq|6XG}udB3o%0!&PQ7m9pv zU>H*?GXH@JKo*e#S$n+w|87-@z z6!`nstY$Bx4;OuB!u#mQLQz!ufROin)8B~4A5c+;ghL=8@<%QE>q>&oC16r#)W}6| z;ERNcnhY!)oHZ=m9ePmAQNo5eKn&9?Q{4Oaa{hBc69=>KiH(G`9{r@`bu09BI58l% z2{PxmDm9Ht2aX$zkh&vL1XRDfjcMD+zOO! zUkyNnf^$&%SphJdUqc&s@yi#{POUIenfut=t1MxtGdrd^fd?^{9vahPO*{y8`EDmO z(iev1N)&xb!?=jEWemV<3DzM0cI&vf?R}b{l+8{psm&@N9ZfK<_g=zB0SB))rF zRmqXojt7NrlDef3j0xX^rZX|&WH4=h&9X9QK_EmhK!n!#rk;?|*?(bZi zZ>21=Wid>X#7?j%Bcgi$9zdTtwO+2Yhnz3{Cj%gH5_GpRvKI$3xMM7V1BZ^9y;~2+ zcV)_|rprNijGgYbu9KajK}sCN@M1F^YX;uSxP!h#Vu-m+Cue!Y;x&98!XHrygljD` z9;O80gSe4&B!~J(GUwZAanw*i@30K4gz3zeJB@IpN>G!t(ZtqCG(}7b zdOT%=^~I^6*VP6gdace2qle~bRk*wK&$gQcF0xgf?#L`uqKU&AI8;(0P1`PP#PEH0 z>knj&VmwGTmSzbW=)8gc*#r#zMC@whKJ+stP0#zqK_}Ep}Z`y4smeh^^>G2jy~`j(Xv6C}ixRb95T+FB6*-Y6Dw-Nuo5%mn#f$PyRmb@vx?W-lh^;0jI&?)H*VY-))E207r+YlT)|plyHUbOu+F; zS!9H&)&g$0u)5{i&LW}h2Wf*Bi{krtV^vkp(kpd(Y((itPP${I#mo7y(eIOJP)B&~ zv(s{Z@6j&rtFfyUTl~`UatgZyKT4mFu9BaHu*RSyqrEw3PDZqaBrT>VU&jz^!_mub zQY-6wr5Jy)lNjl^Z)b;Y)qHzB!dcy{J%t!ibFJH=e1j1V&tc1FS$9XAJv#^2xac2B zZJweB5ZJ;5aUJ{kC_k*uUcux4D%Kq)_`)SC}g?GhiUC zq#nVafd~2}BnV!HqA$O`91k(Ca*>VnapEP_K&c1^GIDb!0 zQLY5fIXJErGo!o7JIe-T{iZEW7mBRypZoKE21zjEVxk(YBjl#y^24dr)#Tuy2K6qZ z>?QS|!tvO8_RdQ46fc_-&EceF=mM{vJDM0?nBMOgu8L&@Zh<1&sRzCI4Aw;i>lND^ zBdcsrd4|5jht~k@;I{Jr|D$2d_n^E>Ylj1T2)ixE`VxvCJQ3=n?9ZA;OQjQ*5GQ{7 zCRDG^w-8@HG$v&Uq;d~z8L1B^g{{}a49;ASn8jgiq~^vkwO4vtKy{_iOSzet3>@i3 zB5d6YA$9|N@#sqk150+|%H)|126Ph1-1##A=ZM;i0=92V|9kc6t5U+vuJdLU_b+6h z2Bo(RXwz}s`zNtHVkfNUQ=Tse_&px|A-`A1P-s&UUDhi-9NtrmBUV1y1{o)LEW!ss zyl_j1DMr&PTX@whkTP@74QF&`5R%Q|IywcQ+KJS}AhI2WWF1JkH!pnuZ;~a7Zb|*` zAYs9f27c14N_?)PZRp5CYw*6ISu;(3m_NTN#M=;OGIbH*A-|0O28%`KYqd3o-Uj7B z`gBvNZm|Mg2rcIgOI;Rg;a@d9VkmY!TdMy(_KVjnCWq{$*{gBx ztat<*oI+5CZbG@6bpf7lcF?06ZlwY9#Wv&rqv-g2X}|y?(PsQ!GgQHySvNa z?h@SHNs!lU=r=Z!PdYDW`^)nxFzWzY2?k%Ja047*7jj>(7kRe)yhzay+^HJgRtP zWPWIlKoPlc4Qx>pXa1z=Eue&GGcpl`@aoSCioG}hx~=Rcddn#9L(LJVa_ga{Uu}l zP5%)2=9vCMU6>MDrK=|Rq?5^Bc?XGb*XHV4n1OVh_QzIr4pW%Pw|Oz~C>g?k3j~`7 zE;C$LUPHSX5F82MQxso9r>k&dFiTh1Turidwjr79L9ZSKgRJ-cw**|r;a0MbF-%R0 zy|%GYut)V^qcY`UVNYU9u>`&F!|a5j@7~L-mHzL(Zs7X@jCKt^y`t)@!&glNv*f0v zvG63(yKw#J)LvnPi-zg5b=H2Em^*t){}ZM|Le~hsG8%}VXoNS1X(l}yncZu(J|LyH zs|NmAm)o%X!sBe?@&4o`8VteqI9ut-(}i7t=uxTp-wUXW>Jr@+YAtw-`^*H)qGq*# z=Z^yzRw<^lE>bdbrm|+7#El(Q>QHshEyC8Ki%%Swzzn?p07@{(DHSTIp&<8y14tUv zrNj(&JXKg$3^U4~NP{a{q9zpN?3reARMcg0e*6IPh2C_{^qKVVIo0E=yY==Dv@q!6A^ zx&+BrDt16VmWGNZId-%pO_e7zm2EzvA~>Ro!+U&eH;wVqqE_wDFm>VouS$Iolbx53 zudTkN#UnWKl+id*v`~vABbhy^X+W#R??)0-!Z4=B7wz?&9&^u(m0tyF=AaygT;hp| zs7mcO5Dw3O@fG4Xd~J$DjanUdQJEE}Z5W&eNpJ#!#~3kzshl$gB`Y&jInY-X11{}K zNhpB#wl5Jlik!lJ!TeJsU}rBak+EL0ZXiY2s9S!#y&#;qnV@Cqbjd$A{_L*%g!iJR z2lx()mj0XUe}Yu+1>0ruEi6V|-K(qxNT7&~H}Tu1h(kub zx%G8D(wy8ymoAdar+rf}q?<&J+Jl#eXP;2XH0$asGU}8Uo2EimRu-iD=>A+@6Mgdh zyu|I})u_s<67rGbR=0NbT?Dl4QOF~a$tt{){;3r=)UN4-n^y9Qy$Z$ieo92dxLHcDfhN08;gKTOhV$;GpDK*)J;Gx@JPlk4CMuDWo8 zC*~&pac|}6$g~|hN_pFS-9(yOUdGeYSDmK{{Ur<#5cY%3(15zc`fYYe1vHhzGYav= z6up%wo;?~fUi)_(Lx*?UrmYDA6YS*iUm_y*0LTgQj5ysJ-uI5I4>2_+EJ;#s&>_F2 z0St}`g-#HhrbEy}nCVB1{*DN22FJ|fbN~)>sR4O12M)~SBscO2!461O$oh2|#QFvJ zW%PxH%As~`;{<{hGx+AoW&({9Nbbtb9P0Cq%IJJGxFQ8mfI{^tMH?($uWJX7W5CY8 zjM;?7X05SU`_aE=nwJLRod@;`e0onW-nI4d4dc=<^N)LN-F>FM?qJNr1?%~nkF>4o zyu=Qu9(o{K*b1g03mQYXGDPywF-;g6-L}SgQp@-AI?RYb?8?B|3mP%M1_vSKBhUwiX4)TjiH#&7Ztm}HMEqQbZfh|s%QH?fWO^xo?qG*FeOny-lQehPkyg*8 z#;FO8Cjni-Ku+OQO!+1w&9Vh7$X)_h6t+zgR8QIMBLZrNi{taaDsdiB!=85y3cXVc zeON6tSo4>mI|P$hjz@ghJj_s96lvcSVNEUqc`tic_NH&5ft13eV|PAKH*&JF<6(_j zb`{HQKcd@KS63}dQo8_ont!1Y2VFu`pUf;6@+bD?&{q61c1Qk-lJg`#>FAj(nT;&) zPzl`Pv|+0->Wr)u{W?2_w(3LlUeEbtS-IZyG`wVQ8V8$CW@UEpL!BcrD078NUYFKC znnPF%Y9>6Vo|88A?hiu$AfK0<{5%>`=;wS3ytUjH{{qwFv9w zTbZ#zYk>Ntxg@YChK!qs2Nq#Bj%+zAJ5&G66d78{>Vtau8kI#q;q-cSy3+tQgcs`9 z?BYEqI;1;zaP9!7G`-LV+$66s z?d#g&#tV4dnKStU?rXPeUG!55e4jRSJK38WB@eezlMqq2CdbF+!tHH+S9^srG=ESX z<7GgbM!zB8vAl?Oyd^PmnQQW;U?9gNlQJ_YQA-m3H53fm-ME38u8*K7{-^G#% zU$nsiSUKt4m#u8No^jq;R_qIh>KOixc8R1`_JZ{ zW=ApZ#~+YI9;_|jSM#BuJHxd*{ylka=GWDgdDnrMv+tM`bATGSok_4Z|Iu7TsX+V&4qoLG zYgT+5x5k%Mn;zj>1)RI0w8)NDN6pDT930^pZjW$`odf$M;>p|%IA0mNSxgoyo7FNn zzgCQ>80BEG<7FL4kU$Rrf#Cuh_tbA3z3>78g-Vx~V%k52#XUs}B6}4+vt?|HLJ) zx05Eah>QV~@wAndoy}UaAl-v>d#`ld5AcT+KkrP3A)`PE<;B`FuPvPE=?REohRxyvy@?Ii`s0krfdpb@|EAX|HnNT~KP z`scG;Co$*SF&Q7EXr~b}C+HgEZ|8ol2HerCE&SCYRQCwVBstT^i>)_uvGxZ0V!qHU*NZ!9eC@syxD4UI6@#e7fqR1 zf@Ya^ZFgJ^5>mzN(~4-mht6Qi~w_SFkFH51)H zq-z5HzTDL*9WTE4`tXl)JK8w>W~u{h>r9-*|MepeY01@y(80X0M+!Ut`}bs2SFWP( z7zJXB7sAJtk8u)98Nk%NPJ&A4TRdBzZfj6a){8bHxkgd=Qw^Lj0RQ~pIxX}-9U)lZpbc5UO!Ur#(N)UvGX-s%wIxDS z$k*40q$U#Oo3J?akS++cIG6yq5VzJPv=aBj84*b!FVYeDh1grZp^&9HVV&jCnmX5n z`%qayH6g6WL6fWjbv#<4{>#)jD8ViNhd0`a_}my}HainJE-Mdr*I#Xyz6RP4R>{kSkQ?RPgp-6~0tTJNa?o7u^PF{OqvsQQau@f*D7$No62~9*`eAJ6e z<>AWW9Hz+(Qf?ju`wl-KKSZ`r`?$ajyEgz}@4!>%1XqseUjnmS>2)6+Q;vzh%VZq& zqeN~?$*nM99X8#nBVMbF0=0sHoECl=4|_Se^futRrA?wh0To%Zp4&z_fV!B9Af0DNeh6YK^=&ac9A5xXw3@?3<9n`MIR(gOSs4!xL5VnPClZXv*W_n;|&LM--;oat81U%NA|4~6v zHzkzei+BN#@I;^djEWf7b0X`oBk3yGyW7Ej=jeOG?^ep!=HH5dWeqDLPC~%PQ7XCP z5A94i7*D_`i6z8h3`-VKU_%#}37>>XQ?p<`V<` zIsje63R2t{ix@Y!5PGl)icAlHFErg_Z}_ENynu^AA^<%3d9q5tUpM6DRJ((uNxVv5 zEWGh~D*iV=@L8lH2My-Zo+!O}v|j3a2zadBmGFo)bj>w}##0UEi>?jylor)Y%Yu~_ zDYh2rOaqPZSWHW-QOmWWt)SywSkjy>lrOlMb zKd!!v_N}|OA#QIn6bo%z!CtE1z_r|@aasDJMrP+B5L+Ck+KJQElOxlwi!f<%(cj7N zGf_8{)FV4*4@G_fWf5%t^n)`1B#=8SZ)t$c!A{sva+#3T(0eHO(qx30M)$- zAfxz~%(XOy^~(e5n2#YW6(FxAT5)JqjeA?0!bFG3F6*D5g`jkK>I~dhw#nXyC-n@l z;v^CvA79eb({*j3{qrL0m`gMxFNeXV^P2%~XVT84d9al%M)of+Fe_y0tx+p~9_LIi zh!0ReD*V&*XBB+P(ai`AriR1Haj;Abjlv*4?U4-l9PGLrHrY>*ALmxt?A@W=i+3~9u%}<=@Zdf79{b*Sl>M#9y;#RzZK6WfuHVc{o=qIU}{<*!|4F5o_;Mkn|#N+h=7(sy|_9_ zKvU{efjRV!f9>R?r^nqrKdSm&#sjAEW(>{51af!je8>_+u8@!+I9z9iaq_NX7Z*?5 zP! zK46af?2N2xnm0U?I{Ui5T?D+mp^*b3|=);0k$>&qlo=%(m*_lr=8I zvnqi1_u*IV9tp=@YrLQ|6pAX0_QwZsTS{dvf?BD@gj(I!rDXM;2K1gdPVcl7`rnVZ zusvVuc@rPQ8s7EQb=NajR_1R`?wyYP(7V{Tgdq*u%1g~{C7F2k2M7M8PBBsMpSLmz zIp47o9cjST6VK4ru>PHCfsG5hL5b`#?}#$%3ud15tQACkIhhHZ(+qC!y2Rni!6#E^ z*SeYEO5}tU@nqQ_aOMFB2Ww)u(@n{WyNov-56@VO2$d#eq0Iq7%*`f2aQ1bcI<>v& z1Slw94!-HqJDomq+iMM12Bk^~2s&(Eh6Yh$NfTwVIgKf6FGGqtAh>y1xKtU%Cx|K| zhAzDS5PrSiPqhvx)xhdVJVN{mMAD@c_z(T{Fv5ir+WLuLpm!s;ad}!W3oEy)OYtv4 zL=S3T$4wko!BYbqt3B@b{uoIzon1TIc ziQCoy$wiW}T;pC2!mpvB&@s*7M8atRY8TStS z;6PtIBoG(3Es+3|umlX`2rgefa)9b>29_3Bsjmz_(Zt&rQ!tfHmBuuo9vf4h?4vlr z=H^%GH5-r^KfKXhrJu``qYR~*>fI`R(=0P#SjF2cMfy*`ko4#vM;>~)B}31v7X4<& zm|=tSP359hsL$8J-?RWL+JVAx-9$Zv-@f4W#*(vhFgkfIHU353)W?>8K;b_eY-aKuh#wkKac^z3njMoPKu;=lECbVl5 z%v-QAIhv1AQi%&&5WQIJmTAzEuJ4R{b`A6&2*7fKGw?*>C22h|ac;gN*eqNBZZ_aG z7bflX2|*W$un2o=btyG8nTk(wIxcj3VQuL_-IUhfB$w$)$a-9uI!Ml)FSOoC9>-t+ z_(fD`9#quN8|3Qh!T}w?BHf`AI8AR5!hFUEx(*k@^ab~v1M|@a9LIUXgJ}6X(C)#A z$tTp5ks~5X_;!+BVkf7ZA8V}Czb7s@BCPcDo*@43|yvPG@P{ed{>l zsZ+d}Z7LigjXfjW}z|uaWwUat1u?JU>J+9(P!(w*St2DcbABKa8i7Z{>j2W(*jw9 zT2a!XYr~njA>H|Z)55nabm>E&fGf(S; zYyA|og9YO&q(%nYY%>J9Qv=YPzo3P@TONiJhm5Jc_~pJ|Sje_R0&G0i$zgKcQ}ji1U&?I2hC~E_R~y_TbtR&y(Ujv$J32`o;)4 zk2hO4ywXdJ(;otWnFeaXZ8v0n9XdKX_qxnDE@C6uhD{XY1Qw$S=sPGQfq30U?qp6_ zz#irlb1;>yh0{uPb0gErhJ&Q19Qy{GWiF2{R-fkBPjZo3%F7)h`9nKR4NT=$&w@OQ zGTK5}>c%uhQt(p-Zs!+NLo&OOE^k~7gvqZF(m@c91^R^1DoaDBt^xy(NpJ|aF6DoG zC}J6yP7f#O{`_Sm4NgnZD28Zm?>+ps$thc-z1hsnO~A7R{}_sCS&oHFX3bHC+}5xx z#enT%)Ym(o0vkWg{~D;uLv9%|XuxMNYUWqUF+?XAW(8I7*1k+E@9II^Ovhs7usIqU zbIqd;wUxAzFB|MYdH8U^KTA$wGIIxbM}p~;U&j44madW82|%?Hcjy^~P~euug#TVpb6Tq=Gw+ac6f$mEpM92$)WWrW%!$cM`i#1a18Y8 zyG(vUAX@1aszn$O1oa5Fk3LS|w9kLY{j0<`8^Ae`Q`!977i+PFt9c3X%MZw7}yrZzV%*C=*; zp)W1HdAfeQ!+|^ zncX$37<3FlY1@VkDrVE6#!PL?y|HVNE-`!*b7ANp2q)%4jgw~yEed+ll-c7X<5pK} zlaI?wwU_X_VPL0xNHbDa77yw11*>iaSJ0}CSm7C%Zn5&Lf~fWOuAmD>xpueGVs=9c zzfT7>NPYp_@9zQeka_B}OfbmExUYc}VHsqi%R{fooKg^}JfCP;f$OT2=d` zx4Dkf_s8R6+4-TE%4VeJE zs4PU%c-hx)!a?I{TR7he{(h>14`vEx)N>M1JBD@p!DXMtvvHC&5ioVr6(~1HV}Cf2 zlj&+PCD(lcMq}OaSbB5tr3mJG=N-N1WopLUFJS8^XG;YXjf5H7?Vhc?S78~ov6iMC zDpjP@$rch^I`;46byWqhSlhpuj!!6|0Taya2(9z&tgWm@54>GV2;@yrHjfBAyt#nTCRj`WtAgzNs3Ea7s}$p)QoE-Pkve-)+ZsGcTU% zOezLhrRK9F>fA@fglJu7)3nfmtrgOsSpkn!s$Mo5n@BCVM`Bpy zO_k&U#Rg9^&EWf|g;MCAhIB4`(m{E<*h+m$JN>s}TU!d)FVUIH=}MWJ^1j?7-jkPW zavl<%_dMACQDtQ(q`ED3gIOXUH6bSpcJ(=s%rijBTyIy#7TyYv3_PHA%oF!^pCPo0Io|R->e`)F z4pL*m!M{DfO{V$KcVh85E&S>!We4Sl@1vxi7hi!Qyy(h9hIAf$?Kr>)u?-^)hy*}v zEyZ8MTGNm1^OHC+P-!WYPIChKf_XhxQb)^4_78<>*Mpp`;R>u!c8aXY5zS{}UB8kQ2 zNBpLiZsXRt8ntLQ<~2uxKNxgy=)d^a1lGx1+{7gtS1Xe4;ULZR=B31a(hzeHx67eE zJhb#Tu+c4a4RXBw4LP2M8-rqD_!*;qPi#T%se<>Mb@0|rc70}U<}xd0p84k&%7MSn zH+tvr4R!E{K)M%Op&WmSxM!x``I^m(=qElcwG;hLJ8wx>)nnox%c_Zy_k?Hj3Q(7k z>b^N^w-?EkYfn3AU#aJME|$4p_;_UCkZZM$f>MiBeLP1P;@H^P+~ik<5#E2llrBEb zWj~K*aT!OLNT@)thcuQsf+r2t=^wnJ)I?=S(T9(nOdh%=uK90A<{I$5+BWmF1Po(M zwMwR{e1s2PiAu)c&HPYEVT^^1W0`6pF^KSRl~p~?&g`B72siZ{w7`l($JIj{2~1=P z*Q2o+&z6%nn38f?4sfymVa1+j@(Q^X!dQT`;2&h7Up^$GTxz~PA_omV)VP_*> zTT2q@deX}V#?pASa38j9(4mfhRT8Ua zbkr|F9nC$;g-7^e{{_R1#z3xGonevU=Labyn+&yF77~?G+0R%{oY=*@gUfkp$0zxS zd`ea&9n<291HIuD2%O`DbT6uOB2$NxKeia>Z3k}+f1O1J^Q3<=5GR!H|I9y>;~tlm z2CU=NIJw0w*J&rZKn?J?dn*+hr^A_Z2Pg5UN&O`h_K)f2P$&$@+fGpudbp1@!Y}}6=O3| zu!cUgh*Xl&nQVQlN-M9BflLBB1hYvgLvd~0<#1n}3h@blkQT{1?{wpY3BOnh(Itp- zOy1qW1zisQMJa%yj~FZA(>sbx;N>APZk{eIHb!-|<*k%#Ctb*Nba!1CpH1TL^{AK! z#3ETOm&^2j5wRb6w>mkE?5pB_l} z@;S>&IwCB26q%aplKfbQDR7sGYD&&kUjY>%-*NPlL@lw&N?-G3eE<)Hn@OEh-ty^z&* zJe>LoRy(N8O@ab90s?{|NWY3jLqm&mdA1`qME+2P0bJ~tJxhw5*_jz9Q(fJ)bZ|>E zuZ;fnRryybP{MCNS`@!lYGill0vV`Re&f`HxnhgO=S|yr8xKwI1?vZQbNwu*WD|)# z=v^99`vGB4U2lso@fz5XBc%Lp16{LfSxf9oNF={;6YPuw4sqvxP28%|t?8*wy^i`6rib?1Gjoc40G#B8 z*0AEg)Ufo0t-)#v@rg{y@m< zK?w1QGK4FjY3supP=Dm3KX{9t`mE0~Y(uaiCT=e9j7w!hGgl*VD$-lk(!!%lni0_1 zc(n)cFKSp?8SY&soAm|+aIAxJ(Odz^vkOo`1s@FPH08R#>!A5bA&TEZX9G~MAPG>H zDNBfziuZsvC|DsUi8Q{YQ6@?g%b8|&vJ5qG$bUQ1QEfK5V3)qlzku7~FJ3*UMM6=H z;0&F=;niqeZDjENETH!i#Rf*6m@xcq!lIZfXc~v;L=@;z&)9-K<{1|QP7@gz1|HAd z->Zi;yHsd5H>Yr2O7nHDZMj`{`zl30S?AK3W>6NfzgJbs(hG@NADp43vl^Z_y^O^n z41yZNO@FGlLbEN65_swmWyJ20!2M1kg^pnzDr*UahT7^M!)S~Onp%!}()WaTT&WBEiGLjI)84-K zMFiyq#`7Y@qc>5Ri`euvls({di?KF`R7hC?yBt(kn~@j;;2`CgW>;?w_eI zm%RkAQ!LtZWL)_2cf%&yFS@<~qq$(ap&T|0MSm1aRrh~bfbQ_fQ_nZkzyiWQ<@$?6 z4>^aQ(U)k{tSjc`sbAdb`&px{jC_hA8`!Hn7)1(s_cTphrarZMaasF)e+Yhhlvr>hcf(Yu71oOu#}=D8NQv+D+=JA%Bu_+1 z`Y8#H>aX9v0t_QsJ>8hAY~(wHbc4Wy=PHr=H8MD9Y~2*$kcOya4y$HRa5z6pKiC$PMkNrr9{iT2(Sl-w5<4~(D8ypNtg!{~#J zi)3lxFX*v*JCXhF-kCd%l9f$xF~`Kf3JC~e$>cB}%k@AkY*0zSu>P)%6Hiuj^`+-x z7Tw7NkFKdVqQ0uk=L?4RIZkPYYS!*BVy9;OLEr)H{bPivry?69kPtiz01S~A&f<${koXiq7zIz zzi#%ZtHm&sNp0g2;^f5BWJQd)S)DWWQ0+GdI<)b94(b+Mzh|xsCje~OoyXf-L z`tl<^n}t@FHTb=P0pTEn7@+SqNF0iBXkJ}L990RZ?=UGf}P#( zN~AkD=)`)*&C%98+nR+li)62Cx}_QxJld6TXL>z+TwR|E6fOB`cu_m;j@m;q5%$cP z3&8dni-TB9+|(be`+#%&*NeIZq9v{~5=$ipL;(@NElZ(9Dj?HxEl_(rgt{9Q*T`@<l*35r zD&7>788|V~+TrZa&QT&+1CbKMe6^uU?pd!do6vG5#Xx0Or%#AL>HN=QLw2FbXHE^#UQ{tdLE8_-~X$0EP&L%gPSB&@NB`&lUHKv#tU_qZhtWxYng+`-q^3? zwOW4F+#;ET*K>Mu64ka)<6_y+$363?MUkad;+sXIvNfyZP6Sb0i%M05U?jMKiI|(t z6?+l5JUg4dC)9K}G^A)vurbn$i?CFz;~2oOFXzTp+De(3 zck?qZ@7fQ_&hM9st}Y=^;z-9ZeTC}ItqwFHo@oYc7;4I63)Cw)a@^GOUoTGZ( zM$5@5wvqkoaE4`=kSY{qG0Q`y<<8LP)l}N{&$Z~qx9}^97yk#qh*kwK5^|!u9_kTI z02E&`K`8O!KTJ8U*8k3?F}!W5n?;}r@cPa5R3C2KbRu&H3DmBQLrAU<%KU;dV+}Y> zl#PZe(5j8cJG}E)Jr8{V>k=<-SUToR@*lnlBHql>=(@1M+S(1~!kIv}$15VzpkQY0 z7C&oQ(>?u~S+pM;DUp6;Ir;|=xhr$nK3Gci7`7LK=!R!8lyw=Sq{y(p{m`w!BXjfB zdT}G!m_e4S<|6r9tqrC0TzWHe5NcS;IL{votDE<vKP?rrJ%;xULandwSw5OK{8^L5=ag{U zG_C{See(My4dRAXMg;gx1nkewn@i*ew^tMw?@{_%@`v;y0mk?yf*PHyZEY2N6XVQc z`gUL@ImIl|om?8v@oArxfzGju-L4^b2`agOV_G1P3=V%$ilYEyn^13{Kdo8A`!w+T zO5S~rzwN;E&J6yEq9P44((|);upOd9z+_{qc#;r^;pOCjy4>;R)h5@HV?z z`@ZOcbwizOg0^66s_l)qwd(z2c&ZWrut-y*F>G$Kzj!N%4nw(Pyq?W%3)NQeB~aP? zf;%Qh07~5QG+R=(iwN!CF{8t7XX|~XjkANk4S1V&?Zxsh#xx#ue84}1@qhyDsFuaj z&YUda9$_QjjRzBamSQmfqIyuC&4eTlu~;$>12_lhp}LA=E0(Hkfo*xKnKFZx7a^w@ zyAfN15ZEzTBCk@dt>dh>&|s^K75am&x1$WzsF9t4yi3Ceo2U`q&bfL^jF;n$)u#sT z1?&_^6dW0C6}I2UVlIO13L}K;S#2B*j~0k=TU)vp=di(bxk~&CX>sIkqFz>r43D}V zI-&p<57m%_!Z)t(eeeoKhtL^ydUH!Ub8)S>t>FH`)?j-JtTz+NpexFhm{J#$Y=02o zZ@1v)-YjA#nes$}@95jPTvDQQQvtkULgc67JGMy&Dg=R=yk1{X35#E#tlaK0#krQQ zNqQq<*4Do7Z;cgx`Fm_-n~CoO*K5hy5);Wa6ZR8L@NzTk4@gqq@c8)Q#nAH5kn?86 zVM}&D0bhzv0qpj*I$CTmxUs5VkZVpj8=19JgZ22X794-bAUU_7k+zAjY$@}>I&#Xj zLnIc_4vMN6S!flaS4GxHj?DQ}%qP*Ohh!id2p8!7B=Y>bQ#fNR+i$!^ToyLIN+Q%* zXxvq2o6ymvh{x%u7R{VgLQnCVxaA7yeE zs_<-Cn^1Ie_;{5+{CvlXTWTXONb=#KuDv_p<8t__KjZ@0o1hPA4dcM8hx;Pgv57k10=v;K>0dSs5HkTiXe*DTr&p6h*>+ zhwv(;Gp+;Acqui;dqAH>i+1iwip7t_L$swhnQi*5O0Ic_zl_d3``u(fh8uT|2Ei$_ zO{I43euvUt9F?wf8v(H0bv(40&o@s(j#vyn3cbY#VBgrvc677~_+Ox{u6^g_?};C<`*m7v zE(h_4WkcT)+|P7mv{e4TO(lu%%$*_PD14=16Nln;M z=Bx^~?FVnO?R0Y;c<_=54Kl3S$xXO@9*QHBAo?zV)lPuzHZ1_6~YChDetxu9FgTMvWQ>r$umW%JVef0~B@14VcHjT+vn?7EaDw)4mG+e1m0g zZ?6m3-rF1M+J$mx))gM1e)C2_1VR*HXMi{_$=Nr#gLwURE_c77cHxQ@&RC&Ojd>8U z=eg_#^sBs5+5Vy$zZfL5_LH9NBf|Iw9^g{CP_2SIsMBZmSB~CJ_Aja(l!(21eo$Uy z6tlB>i+Q;q>2kR0C^<_)zpO#yTs5T&pMLm7%w+9{=I==igHodkMtLK-GN?#83fWe`W&qtW;y z=e+`Whq^JRwXk$g0mQYO$Y^wIt_zd_9n(Qhn{6wh4+XE}v#d|S;&qYLm<(|wKB2{D z2Wro)w5=4jn3+iwUlf-OT^|v$FT1!NgOidAl1;S_7>@7@&q^~F>lP0>)m)euRR0!B zCM?QNFG!FO;}?pcru)u1`z$nT;i2Xj0%f8pwF|CE@oUUSzn?Ydcke@S&T!}4HKpU< z>tUP(fTTp5%gYs5#MK4yWHZP>G}sCPGNIg%5we1WAQIT-kOd0L(#`h*a6={EPLhk( zW@Z6!t`gIKx1y~%3mzAz`&*jaoe^269-m&k1YRnb&xWqq-PQ48=H0CTbWAQNV-1;JZZ5>sCHmI z<`JJSeSwpC^gQEg;IT20T_1?2I_mz`1(#-SwWhif_E|VMhmm*Vt_Ly8U{q_#aws9W z7C!W{4$RB}*8Ncj7-d=f`1zAl`IHACi8f2n+r??2Livku-jR&@?YkBgCf{c~`_z?*DCNGX6F|i%|g@D0)p(3&&JxWrPh)l%c_)OOQqYpI7 zPH7BOl$)sZ9k0|tAP+@1F=Ld@pJ0nciab6#=u`}^{MD2C)zp1!dn~a7YVElKL2Q&I z$Gl$*!T|^>Q-{RdXF?r)HMfA>>!EP{ z(zg`4O1$iGZqU)fVq@Z}mu6mwF*_Xsf$GFQaNr&d-B$B3`GujC&SWSdF*RNR$JBV0YI~l)#f{P*Acgox=nDDUW*V$ERA4?Q~p;B{6tfCghw7*e??fv zVyDHAmRQ_M{#y$ATeQZci=ueb99!%Kz-y%TB>l}?F3F^zd>W7A2M-&ui#%1A2eZTV z`Mdwq)H}9@Ai*|(HT>5GZQAXI(!EH0rbw%FBG$k45XyWy1PFufhSOANId4XvVEI$< zokK9#@r05JjqS-g@5JSnS1Em+$_<0{y>Fa=P}d0blxAG0bT4GzB?4m|v~E6->=Mzz zw;E`W$x|zuJx&!Sy97Vn*Ln7E6FbGS2Yuan%c5%DMbZVinsZrP0{msVHEzt)v4~+P zBBc`a?;vZ;eOT-!7?J11X4vvCX&Ljss%HM%Hc{kZEQCR}Sl7s7dH^9r&CA-*{`<#j z#%D7l25{ji2%MRN?BW{Qr2BGPQ$>J;+s~?cBB)MIKISs?H#N)ZD6D*Q zOkgz-jWkZ}+=4Bs)`iRfkin8E-z{e)mQD0v&1PWoGJ9g4N0-M2uNfJjIRoJW$i0L{ z4mc==C&=1)UChr=;<;qO;zFl@s$D<<04Pi-R%OK5DO4)QQJ)es>S2FspSB#tdLIY& z@tMD`Vp5G94EzCSSF&$HqH8^81Et_^hbOP`qL@IT?RGd-H3|s*h3tDFyaJb)T$Ko7 z=|TT)8I%H9t}c`4TDFbAS~{qNGGFw1@-2TB|e7B9nLV0vfqNhl%$ zU0p>3sLYDoVSAxd;d1SJ|dzEpjSqS)Zg_g z@Y4d-Ke@wa%WRg9t1tHJZ_Nompo?tX*rpNU5T%b>8N$G^(jI&a(cfFG&tM5%g+E9o zj{AJ*g%Fuao5A^i;#J&IR{Hs$@a(Q%N7jM+tLk4Nu2S&I$f9W_2*yNOW;qdDv=2UN z(oDD(&I&3qyX~J)TSVV* z8JzuajjG#$o3B<2tqYVc+86o0iJW+Tx!^9`;4e&7@ebnyJRaW0m5o|*+#KpDUdfef zcp2ETb_Vi*sz~9OO zN26A`cnUky--00Owq?DXxKJLvRc3?gV#t*I_65z5D*p*-yLMoH@f(*X_FU z+*`M*yQ@t9hSjfJ=GFWwBT>^Vpo`}v4Xn^7i7BBC#&_ESnf?lfi8sCu^zC5XE~m*- z8nGR~p!n`gNEJ&W&u}JhKF$Aqg)t?c?sonM0~LL*aU+81CokZ1i=Bel*+?J_a2qv* zYm&B!jPv%pba-tVHh6B!^7+Ms^PeO3z+|6(*xw7Q(x3X?2|Y`j_KqHG#5;q1Axw7nNBRKwznwNBwcW6lWLJvRu zCcRZCc&MAOR=p66Z>#Lj1#)!>gH~R?X8QzsnzEtV7cL<zOh)y2sJ>A4LFk$n6AGguV0jyO%dI*6 zkK{k$r8Yh|jT)U$!;JNn6Fg$o5Ff%~zwedq)~Kb2jE_RtULbiqqa2k^b9EJxeSopo zFqS)GeQK2Y2Nd=8X&R?dsH_(lpJgi%=O3&e7~V$r?rPMos;4BtL)5{5%o`kf2){HV zfF4O2>kjbR^1nzBm-Jh2zfoNElvLkSl;XLd?gLY23R8-&&6AIskOFyCe$%Dmml1y& z4hYgs%~)x_`Tn?;yUwxl|9UK{%_vaX%8b>aF6AcPi`C&N9{y)D3mgmUnX8q=KN3Wn zwP0@h$v&u1>tSbb?mV@p|BHJH!fse0<~ASR zHsC|xs_R1iO}?58kg@tdTqb_sJ7rB7cTs8@Oo*F>0LePsK%m{^;OU0x(yQ63!M^mN z4E72$6)#Td#;!ol@+k#m{tb2`Np845vRYK#e}XYoV6D?0a|7^2($LMKvK zBlg&~Ut-`|h|tE*%Ekz>=hO_Hj^C5i{tHliUA#VxhUt?aK|FXx%r>hKi8 z1OM3MuyWZ1^aH*On_pPFUEtlr1=u~#B5Th6S)drYq;FCfqBi z;`c|ikXmmEzqHGBnE&ugW_PzEMS0mZ@;N>xn_6FQ zg=Umqokx^VV)aGLfErb#>>U|3afOf!*Da z)ETG>D!|t_*l%a^R@eDj>Y&QlpgBNn6ZQt&?kb~mKo<2Q;T8Q!cEf-E8p=XO;S@NY z(fTnv+&9gCFja%w(+0nLC4)vc0g=$3(0a-|le3fbLm*N9sLWLu=I-C9rZC*T*m)Ch zpkBS)dTbeWnIlp{CrLxjIUXT2w+kh1D9honJ1f};rSSd15 zE4Jx>Nk!7GOo5Z%AaB}=1IJ+cxY9Fq#c8xzzV@v6{Q?`MO*q;sX`9eUZQOmx^*`i{ zBvz!2k~{P#;)L0RVF|mV>r+LnwVOYRy8S@Zd{0KWczg4V8MjP=D&F;W(Y2+^{3I;* z*BTU2oG-q*eKOr4ZA_Fs@_KVPVUy||W!3~Nr= ze<5IOcu2b{l*_ljK8J8B#$aDmf4@TCF(fF$2@Me!ubmd^y8k6&tZV`3r-ObP67~SRLo83uS1U+#f^)$@DX|nrK6C+^>aj zav8o6eQ~$RjOumbSN4BGD=M7~o6K0SY5NcDI2GQ{5hh*0_iO4Ly*AP=2i^4q+veZ( zW`w+$i5_4VL3A8j!M^NR3eFC(U%3jdEc(|iMgsO`?HE2Zxxxg(m9>c6`jAJ`x;Xs^ zNwNWx=n$qbIbH|nJypr+GB=F7&i-RkEcE(VFgdR5Ne6}J(TvPH*%%3)+3!J)ZSRiS z*@F$WT^2l_(`c|}#6s{lrGYo7Y=4g1+vi?@T4`gNPqm}b2X6y&TxhSM5z_oDymaq{%X%*k#@Xvj@KXnS2aC_R{b2 z8uoJ02M)F?mjCeoHU&n!o&sa{|LQ`x=BQinAplsj)sG?3ESMv!K738OUJ*HFhl79QfRNn z<>z0c{xC}dZq!vU!yLGg$WC35U0x}Y70M|0@ig;6q+H#(0g?IIHT`*#2fW@No)z zx8n5OKE(b)4X$AWw>FT}qY^p@C|K)$Ql7ooUs_Y8L!mIoUVj=C*vje>AJ@$P4_(5@ zQHE;#6a4^;e+yvWqRSuiIK1GeID`gF(ennZlM5vi%w~*KT2p_OrTe1o=syIAoYU1+ zYtoV&u6{1DQp5Zb1D_zZmKn}w2uT#{7E0)Oe5q&30r5Ib>Eh=77TG!M`=3S6%U6A^ zs9LIx6u;z-Q^{t)?T1lPxI7JialtIP>72O8+=iW#E z2d*OBVq!UsGvE}41AT6CcIMOLhz4{49uH$cwHlk0P@mqT)HHHHr`p+892lr+U zHyFIuobrET-PdN*-Ftuf`8ORn=<>P3K4*-s29biKR!Q!JDN`i~tL@-yf!iGX4)9{` z2z;^4zwRf=Mhui7|CwLGdWN$~S>73@JpOotZIgwZ$KP+d&~}Cia~W~hJJiV3^gEu6 zJUtGOTA;d=_hSE_?}z@36}W*%cdt45J~LJqT7T2cH#;9d%MIPoy$ey_n}ps3m8&N7 z=waLe;;_vinEW4W{46Q>%pbq{TvYA({w+pdM@M3;IIxDad#%Cc+7G9!>nF9BHaR~) zTvGLz*nBy_oD#%RmDAFYOO5!K)zJ9Z-}e%CB5E}}anF3UzNl=OfPKkd{r)M~T!@^v zm`6TaLehDU+zEFdwr`4t*`)pvvCw3>LGWFIepq%qa|sDTRe(MGjlPV)RKtO(k2x0b z$Pe3Low{E>+`_tCkQ(;a9wK|OsBL(bpl}CvYGRnIPRPp?cxUr4EjCE5FG-G@QjzfL zZz>R-3S*t})|s`4O>uM;KL6Q1f^sZuY`^oMy1ThI_mawdISioLrOi0YoVD2nvInI8 z0p!7LF5=u=818yOsmW|`pQ8Nd7NT)-EkkSId{re-K(;{6ugC{>Y&P_h`mt$JN{`r9 zs)m0JMr4q_Cvo_Cq;>jzUgYopVlW@(zKCzO5r0j-6CM6?oQOA3Y7F^L9t5}EVIX!@ z=d&>ycJi04>WU*^l*N@vb4BgqACCW&=}2K9$7KZa0$H+~3dUB$Y~~|4Q+ADuu;tCk z(i6Yr+at^QW57|x*s~r577qix68Z)chQXjn)PeOk_DwpupK=!VKaDNW zRj@MhU6fBA`A-txGn=b45O9g)!hSi1$VSwMgf~I}qd2XlF7@m1m`tdDEpeA7EDyla zh^&IvS%ln2r`aGmviUzmwo9a9t=pf3sIVu9ohAJ2^A*VP{e&$`wTX_73h@QM>oH(DxTeX9f)n;5 z!s{_Z-CT9zzqawXL1>{>2GaxhDtG|!At@>+QuS3o;JY*wG&cA*JRn4FTPRTd$Z<&l z8c+`Y;DSrt>>Q0h+n5+z7<{&{F)%aXV6wC~F#`bn-huB+@0$R0DKSYg00aaCU={oa zcwYg01Hi+=!okA8!@qVxeIZ6OfV+6A%%RQ8Lkxkuy*b5q;vM zW%$C(#>PfU!_Cjd!pFqQ#`5R@3AR(ZjAfcgPV4$JFwSB-#iVX+hp;K&`YS^VSj;3>Y=cH<~cUsAFfItCyh;(oxxC!nIH`9w>{#?HaX z#m)0gL{v;%LQ+aeSw&S%T|?8z*u>P#+``hy*~Qh(-NQ5RM^JD`XjpiBLSj;KN@`mA z&-{YIqT-U$vR`%e4UJ9BEv-Ghef|f&@dmFVKIdj;0zqF$XWd1 zvA@RU)pjFLuqs~S7&=ZP;!?70QC)PDmvtqaLS5TLnz%`e{;;(?y!h4aRdgYzJQ!pI*E>O6)rN)Ae^EpChw}r>O`(1 ze~psI+XEcotiJp>WeRzc(1GEIple-w{vs&M`lV=lh*gDf63Y7VkFG z$LJk!vKVdKi>WJ<-ArEbji(%Wn2dYUl0VgnVu?Kl>!_8;fqjMhMwpJ`yBu6KJ0Afk z!@&xrPfg*MbfiJBn2*%}pIW*0hDP7a*cipv+%Hg1s*Oq8(rtE#%Y)d};O)F%B1tS> zsBB;+Jbm-GQ3PfDO`9|JOc6O89j&+?UxdE}@`4Zr2bz&OaaT{|iR@VM6#4r+^oa+4 z6((imj{rB>=1F$$LvQ~GP(1ojiLgw#xnW!iv`@VQFxmxL`kLTKV$-iO_T#d!S#vUq znB@bGm`K=BXcVP(vT0v%R&{5G9=KlBibjk1pOFHgf$mQt%ARVGx8tUgisMXK`GA`1 z4&S5$+~v%8ci$V?(I+aToD?`g&BDzXbom1LlF+Lg=*i)1k5cD0IPO!m)>T!GN+n1FND zw(KxQNiRZx&?1>iYv$A*@B4uizR(;wONKhInW_^QFbXU;Z)isjRVuV-9fN0 zZPLK}fq_^mr%=!^>^_B`WmG#DL`xOEa7bxH*$R=}!F^CD?yyZS?W4%ZBXRJ7rO!m6 z#>o8D3bI!rdth!QA0_)_T&=Y^+D4aHQE1?pE0XM%P;yc#NM5n!mPz`GxA)4DlY@z= zZ=sh3?UT{ve(bCKpCK6h?i zuSBFqqUck&3uVrC$-5{{-R9t6$KKI@!{%f{sSObqX&7VX6PS6LcQujZV4Z?dxR^ZJ zY$~vkW&G{RsTVwnYx&ttWJT|b^P5#%^!38TlvXbV{Ekjp%OU-Eyu>@8!G-ubb(Cv> zu$pa+4b^N)@`|5(ibabN&7ur+lc#;tpt_`tuADo{CupsbIpV5)0#il zUT5{<6k3!tW>z$&M>ZaDj#CcI#FNVh<1*G`W`%T zb4KD^qQh5@{Dt}ALRX2pfnoa8$I?}_TZQ!!#Y|V;&Q;N>ypC=9GKw;d%x%CNe5te( zyT5ABGyRYXC3qb2IFAQne$-UoOA@_b8bV10?1I>L7tySzxg@)7Iye`Zi%$t$t{lZL zVttDe0$`|pFgtNxIY#h&>fk`BF;}HFAnHR-HHVe2DOKkPct7+ZPR8AF>KDSUB`*Aj zxcF&p&TT+u7A7cJB_Hg2-pqHu?VC+0dW%kN$L-kF@9}_68d*;+RIT|eiY%=@Hbx&c zV#FGC?-~=Cw!6NTCN)NT*B^iY4HG(}&`!8(U-(Ha^wIX@;}9gX_um0Hd|WA5LIbCK zObUaETohL&gZ-Vzi7247z;}R*_~T;WxQpp`I*&A?U@m@s3*-gs4RS7pt|wV0W!}0~ z@c|$rzKmCO6WX((;6No>IEa9PyB+LD-(IcuXQr$2Xi_V>z^gJYtU4{j;04RSY)<6{ zoIb=nYGxBs0&K6nJirxI!7m;zqF0pD(>3AQhdB%sAa*RY<5?jt$IGmr#bu%@IBf-o@^+8 z2W-^J$A9!7Iq|rn@4e>)n#D`*+O#!^_@~^!{v^fr<^qPFfZouqsxe=5O7U>31kX|n zIbGWv?$w?XvEMSkUh~&@D_$Pil-Um7VxV1>=sz}WWkgs-gpO~dKtK%taN!;VT3(If zGZy?7s`-^kBIUna=R7D;&uEY(iNv7sI!-b{uIR?U>aB6v0(eT%eh18c1hIu|F9vnL z12kN~jD|ce1{GBs5E-~``Rx*S?#S`XXHY}SKH|Is2vXoH2VK1~fw+83=PHFQa;(WA zF$Z$Ma1f4gPJ`U)I{=xwo!@1J`5nNJQC#*8h=S6qe+OjCK2<+X52HWCSlLBne?SJr zpLMQ*! z_$mx#aL?U`v;*mO-}lX$-T^&Rm*+fdU_0c1IvDh@y!rWpD6D>V8OP9o8PcU*Cu^V| z`8?}h-b$Tk=L2ML7|5*t&oh>u><&gKH}Sd*(0y9DbIcK?AqV zo-`{=4-+`1b2j&~5Z7snkLxZlMyK;Bub8^Zi}RJy4i#jv&CONZ|tFcQQc z=bpv;Ns+C1@@9Xw#3S4UeL$#TzJ+7oR6_oA@=!ajl{_jpU-?6{kF%xr`+XGR0I5Zd#S)_++d5-Q6~6l-rrxQT~@@J>swWnxm*%|m^$rN?-?Hf!{%uN}jQkGJJb1-&*c$g-=aqi3awsc-NY>Xd zCCTT1EC1H-3lnS}G?7B^XN~5yF4BCyUfNPVeQz9m{X56<9o2|Mnymf7>n z@Ri`#5UR~NSe|!4{_UI95Tjic+si_@GA*0gL+F01!tU|+r>O!9nyb&?MjO;E?OJl0 z(w2++b5NuSS>BrVxCY}UZ%QjcpWGeyB%{vVkCD|W?y8B~XQ^k4y&^;vJB&kSS5<9# z+DOkBxgeEI^5Jf_f2zCp73#`7G(AS;4&po7!oLGdzW^)6ZNS~mqO~e@%h2hx|C?2R zMT2sC1U>15!1Y0#iXEo9$%{(6b)g5va^6&oaM|^-*Vff}I8R2*%e~-0`Rc3WRHZUo zz=g#*`M>P!k7cQcEv1U}EtyJ~Y4kP}RwOTkgEf*nS>$X? zqTNt4;P$@RT_JsI8H!wWIKcx)o|`=T;;0edh9K4~UPaUjzT%T3aWGkZjKw?P$A-jR z4(Jgq)SQz0J3!R`o8U6X?KU6SAU8<~-Ufcqq@Kn@RAF%`fat&m)JTzXse_{4ok|jC zH2loccL2Bxua*ZASV$6bzX&6;IFSC8FhVA0w8hJUCuX6saWE2NA;tu=qau3qRctDe zg0z0C)%OHUrG_=&sa0ZfGekl00DSYj8ckGRS8qMzU0ij;DK1zYWGsQ`rgKiJMVV29z#5`(%g*6DZh3J)ZE&!msfaNu&oNluRM2qTNuRV zVTMtaCHV=?g-`>W-oc|uz{#w96dO2HGn{u`_=DKH>B9gvf8Z7plLv_u@0ro8C>p`~ zco4sN%}NoyY76arz9YLDh>KP|^f6%H$Fhx43H2W>#mUvFVeJ<*^j|Ooz5@^@qJalH zpf`dbU$R3}vk334ges%KyDEgb$OV%;!R00)sLaxxL-YGjy369_XvF5;rkgQUaCfCf zSJ82wpIfATm_h6ZS4jrJAp)nOS^-=IsFij}bYenE(L7U!{iy8569Z@jM{bzy4wVB+ zRbXwO%=d2dlCdb-^UJvGwaO?o^zBV&nh~M;si|1m6#pz2BZbRk6OS3hVail+$V{6W z-Ckp2DpImm&S^VZm8q?(x4XJ~b3?j5}fm zgGe-X%Xc>C`2Y;p(#3&vB_cGzf7n_~S{_&l+lX{f+s5M!gGTL?;*S(78@dHP%CO~s zPA;%{}SQV!{B6f!d|@WK{+VRsUnprMcF^r{8} z^H;+TPE;T-UHk@}0r>5gIOu|zmU+QG6in`ATu#Ep5)3oaN(!*=0)}5CpT+JL1u-Ur1s%KD6_MpxBh5y|}&uPRpnt$G2Qga0>*_R>1zC z4N&3U>&#*i4O31Y;O{CvRdet$xaWNbJnCd)5vwVX-d}(@0w+&F8(SFb?*Py%IMZQ_ z=Q^+YQo<2q+n{f;Fww2KMhJouuSKgMNq7e!_4bgi|Lr!Rzg3D>r;{v!m@wfF2u z)DEdOMv_{NwahRe1%+ee=xOTqqpf83f+;(DD8S<<5LC=nKIjAR2fy7r-~!xD5L_8; zy{HmZq1E<-)dRl@y`|y*JbkL}V@T87dsW=yhBb)j)8-wC;{-Sc65L8Xacl?&FDloO zyD}bp#(%)MOR*eLsI8zGqxd4qum)qIYqg-Nq}9ur_IqoD3@KY^l5Zht@YSnxra8+M zCqZwjz-}vE6wZy*ZMH))Z+dbYiPy_4E7>sYA)rWtq=Ap8zu>Z)PRK1V&A z1aK=THNiZZKQg=W(TjsS8DcmxyW;m8;(^6msU2wJ?MCu{zSU#palk7YFp+TJBhxp78?zk_py> z+gW)n|G;LOE4Fx_)%gPa--@BK)W?8T&>T2Vv%AiJQQUaz9H|-R$|Zoc1zLas*7T(C zRt(m`o_bn78$`n!c$l)WC*k6yun2s+Q7@R2pYh|tbK&*qrtOSw!TG$r{SL6Yu0Y}P zqkNt}4F_~ky)y6cw%lR|D*C+xysj&TTe=t)#v?4K5nIkNiJH8ib{+GE88_TL=kufEg`> zd(lfWN|2DnMam#uwg)!+FY|wXM!<~6oJs$uj|Rq0usU$l|JDmpZ6w`zEfs7y1A@!o z_tVX5wAVpP4PbqMp7LKzXF=(}4fe?y1^t#OppE7;cw_;#Q3JRW{A=xlDC~fPZ{VLN zG;cRT3zcYqzvmbEBX0}4^eQ2oyiZ*H?h-&xg`hw6f;Y3Erz+>jba!1C0N6FGm$S1C z-T{7d=|@dltv}8z%=^TOv7~r`zvy+BXXttDZ1NoeJ0^;-6S0>WZCHB@tJ-b3wq**^>n+h7}RTEA|zjV>AaaeIeR_ok6?-R zb0!I#DeHFfu-mfD=%lM93J_iGpvOeF=ciYle3RdiVAA**{s|8;;Bh=<49R3kj7HuenYt zz%%R(&k#x8V#pbB|BjD_d3UDL@Ki;>g)3>Z=G`4fs)@T>88NNB#$cd0=;+^z3&s9< z*)~=G=nc4xlK|UbAJ4)Sq(X%eq~Db!*dMo~QZP@Qy)OAp7$GX{Yb}khV5nIGhd)b5 zIHp@&6E8AiM)c|dyP1rnSezZL|AYaux&*8k-DgaxaqGC>((t2Z2H%ANS5Na^jNmlP zu(0g|X|u9WerE?RQVK(U8W~F{<=fT}JvCP)d~Uk6k-I>!=75dd@j4C*x}ibJ83+opNw|&%>srdH{(_-?!OU|#ap`UF&GqRl&WerR+ zM0)&q2k`V=Mmlwz=aPw-B9OQdxv_%-HiAh}=g$oWg;kL&GD8!G0EEFpjYks`;{Dpv zfzwS7bH{c!w#@iB)!#v-HtZX4shgMh`uR9iVO)hj`{;@S|T4StG7n0;{ z^>s;2*DPuyxbbIx3eioPu~glk6-zfU8{l~DEun$CEl&yyXI@moqWfi0_lpZTx;CH! z)n0rN_UFqt*_q+FvsEZ27J8QD^Gh}!m&h3+7>RtPDM$&@AoWfk$AJrz@iz9ZkliTz zzFeAIq6J%N!&3(}lg=%M1;UY4(ayD!0+=f6Z`6~kouo-Rs=+&ob4+~w(oG=;N^$>%9CM`W1Se5#&7U=u84JO3atIt2j>XQnc0{X6?(#Ni za6N}_O~qABfCmyULK>Vn6#hD8mWKOG&<;alnk*6&w^ef8na7Kf{%8{{c-!fQme1(K zOm3?i`cW(|&8MuHK&k0?T-SD!nR$^RNEn4{Qr(=9MhdHBzuGWZ_m`*2H>BQ_*0cJA zuBqIp*I!kGlsjykbBt44-XRue#y$*&pGG87p_%Ur0-ysXKu|@Pwg}7|-Pgv>_thdm zSj(P$^`y$xA{Nd~r$<%l1|zpT-Ch$nbc@1ohM+RTX$`e91yAT77$su_0ihh{@CcN{i^dkjXqoqUxH5on- zyGmv&fkuFbNa`P0xLrdB_Oxcc05#X!CYNczu`=e>8L`76?|6|zK^iv0fx$MnoEla9 zKq#(jU!t%_rCWI-F$+;*_!V6?a$e%Y_Yn}_a^t4d( zz&TKOP4eQ_6;*qu6Fzfxo5L(g`xN7Wdhj7NBj|vi>ui?o6vn7T6GzY;*hSlOKb89w zv!}Xyt+X5alM9Nj7w)>atZO)iMR4W^tT!j_g+1RdH~qMNQ}b&|U(yBQ=>p~E5PRJY z&4wxp2|x2)p^ekKqwlckTsj(Sf!J(soX7sBo?XH(%(H#O&X8chYE%RX$6(>~i zBn45-L}R<)-k|e1NeW}Gds@<;x@J!=)s!Xt?ls$R=I-Jn9=_{i6r6TC;(WeafLSSf zc|4V!v6H5S#E3MLh$HWr!Gyg}t4rl%gN8q-1`HyaS2`~{fMt!?jO@K^nWUo`9zOp~ zKh^IXE52)y_!U+WmKC|JM+}Y9@+7k*zx6+^iN0caps89_?o_m{`G?spF^bV|=Wwuj zTAz@kQd6#r`aC&%B0_B$@8qd^ZQO5S9&tSRJvMp{^TSbO#QYtvcG18kRF0F|9MOXb zuj+N21W^fttfF*XuCeYf1MSn*CXpFd4ZIma_U`P5ogY5$)GyTE#svg7(d0Ztd9Ja?VV{wB%iLr!0+OJCeD|#E7HuYRBKN>u;pSF@&LV!O}e-6%PFI?#+ z0-Oy}#S~eFIT$4OLwE0rlJBtq+puRdKKl)%5wyidJ1D0*0@4%^~o4yOEE7 zr>%qf;f1ij%pgrbrPXfM?Qt9Do~Jap~CN=d?J}gC$$&4FKJ8J>i?C8Gz+4OVovoIi?RP#yP|~CoD0qf9U6Zy zox*h_1&$~-s}EkkEBX|{2YScLh0o%>$Q?b zjl~z}j`xzQa0YW~8{G#>pOsHCpWpzcu~9ij2Pt8HqH%SSGQ=Dj`VMf-a;ntU(W;k6 z*3AuYlFvd=;Gzta|)*H8~!+P@qeL_{D~h zWKwocsHA?-f|ciEQ)aXK#Ogt%74kLor1oj+FaC=RY}D}H{e#Tsg+$+vjn{KLQh2Cx zV>3!ZN78vDRaA}5!S^)WC=FLfno~N%43^zDaT+PD^FjTQB|$$5OoYEJB#19qLkpXw z84XR~%fqIp!^x&pyEUVVkMRJ5Opj82_4_cu*}@|?%nFwrI({9d&a-U`X7zs)b$m#{ ztv$vaOAwhUbunlLsMtH*a=+28Ig`@Y&a8}`wl(e=@hQ7a?k^8jl75%qzR+A2@uXUd zm$z~L#gIlbW*s*vV_Gn0tuHO^{?#6B4UTQCf(kd1nCWHmSJ;Tn4qSS>?f1J1S?G{( z5yIN$xThN}Y9=1=O0nkjylKziEpw88?FBq#$nk@xju7kZJ_1a|NVOMyYszZH+@dLo z;v!X+BCPe+X`jQ{;2h-}giic9Pc$w^@>QDO&R5GE#e6Jp#3Z&7*psXSc9dI|m6Mi> z_ix8>p*M_7Y}4GOr(?dtJa=Xy6%A_5d>o=bO@uNlm>6 zzJv$`AAmXCmZ>+wyf(j$;WVPQjz;WR%?cUoz#<&i+IdoQ)4JX&BKP{MayiG=4Z5g2 ze|Di2-f&ieU{`+`k*%`n&eYUGL2OOnD186$5*jgoS>VJXgfv~%JR*)yIh{s$grDv= zjxoB-Y)PV7BM%Ir)s0Yg1yypVmeTf^&B;BLLRV8)j9Buo2Pad$MddzuU6hS5LW^?K z9(0eN$xJB{{4>!O*=5lSTGNw9O3`8Dx9J8`D64VWKY0&ln0KA6|580yQ3%E>0-CS& zI>un9CO|{2qCOTZ1pcTR-?4aW*iL02r#Vg5w>|NX?o6w?GYSQSIe!1trFhC!%|63k zDgM<%wxh-@1BEgMpXMli5jJ&{(`X_Itdd*u+5?HpTT2azf+jAHr+h`kSw*w%?MT;K0j$C7mtSqpE3W8#D z(mI#f=8S{rVm%YqdoF8S5euIXQQgZhnE~-#h^0(rv)rx<@s1A4whbtoMTmYZeI$Xe zR=OdAED2L-qq_1z6r)OmogG>Zbi&bSv+QXoa|XgIO*Meq`%;3#F92JCKRfk*1KgFBz!QdY=k2PJ`F9;j zky1pWIZ1j1dLB}{aY`9K&>|Xe+i8YdRlLSMTzoHCVvS5EZ1(1jKYFxL{j>IK-E!xq zx>Q{1$#F!dHL27m*Q5OPt@l}Bh7eiCi7kz|hIz7y zeGPn1Y_RT)KB`kBqpvYFY#L#0D_L4jH(UMb^2Y{hZBpw9Gr z!x%2dk23VK4r1vYP|r)+lN4-Gv!CePU3TA8tM`>MG;V^JFj(vy{;r(36gdnWuQAGD z^IQhW{W0zfa%asU%nOQ9>jCYv{%nbcexzcuWQF|zCi8J>S_dJdbXG~}Z~&{sr+#ce zO95Ou3N?2woN45Yf)Jub%uKeYvV5i@K6_YSG#$u_Y5a;6O+k~epAAyN*FcmxS~Dvg znrKRvk@^z^cTslztD<2l3Y$``bfX`>xTWi-egI2sy6=odn=B-uWV(maktFzpY`=tR z0ydymhHtLWNp?jDL(#N=Jfksoz$JIK@n$Ad&2GUD?@OnW^j$8bM_x2sa{=H3<3@TO z<*#F>j=~H>9Io_D;356Rg@mS#lxkChWAaW|G4WgCe0jn>y?X`Qol4pO1;A&Dr}iDd zm(FO<)KA=)0V$FyN<3Cgw&f&=3o4z`3eFU8Nwnv^J#h>A;V^cTb?yC{q#(@} z+szTay)S~<8k9@QHv<)4Rb0)~GrR-lKy1uE$FUV848H4drdYAYY>5dL%B!4rzkv73 zk+FvLO(f&H-spFdbvP&+pp52#a;5?J!nSz*feU5l9XG^>66TXeLjQr|4RGf#*TKDt zS1&eiuZ*fMlH6~(fNW`*HHdN0yL}-2G`vL^Gt($b?#8feK1n2xN$8=MLSij081%hu z`rOX-$;uKL8Na7g5ys^rfAX!AB+tp6I372Yj%mtiW4(sSf_Hu(t`g^n*jLHxDbZogFv{QO+ zLmf`&72%k#FSPmd4FZ2$9N90pxjj|X2vw%)EXee>Ji4Go-p zU24-PG!iKd98D&oTWbrkwb^m#02;L_dXht%!@-f3tEOs#1?6WVPI=0xnANQmGT?{8 z?=7Ys_33NHjcQC4P%`B;UeOJ{!)LbH(r7H)xXL~7*M++PeW;^!qT4C&)?<10^-qY#=fENHBF`l$Tk zC+dp{mbi_kT5WsGtgy>vlBy^1xr!~aNJhmSfhVd7p-U{jr-LJ#;M|@B;R?!}C%cfY zi+Vk@nK2U8Yi{wu%29Qj{I^V_wv8euNnv@;Ouhz_?GC4cke2BNyX3mBEi6P{`A?qg z2*H@B-OE9$)NnRmy)nF_V=Ifh43Cenw7X6&kcJm@Wyqlz5Z~tI)_#=%ri--!>T3LJA#HgI5>MEDfJRmVSPwY zz@rz&RLGo9JMXU*L7fd$xoj(XPV5L!?dVip^)K@HwpYsJ7tNvt`kU6$0D}U6zMVubzRa} zsB^t^#7AY};!?B^#uj732%>BojVr7pjOAlWujh$*vA60kG5gc07Hf!AWJiId9*sd~ z=SB16v)G}&)QA#oB71STt7@^!$p~B+X<`vpXfgyUyl#rl2l+$uM5aN4D0&iUADCVk zy-&3&P>wm@p61o_VV@;6b^uLKW8Kx}SEPZA4Ie;@v$orf5Dz2SwtWdFlW@1ybPLYI zjGxb?+ahaLh{C3#9WtkJjAe(&2oATljZ z6$i2Nf`N4rA zXcg58O=d^*H!t`JwSvzyS5>1gsQb=loSL4rQ5vjds|9{?TPrw0#YZ1BO;&p8C>zgL zl6LUb9-hAs3&T#8l>-fl#h4c4kP7r z&}h}U)|3;Nb3N|`;Q0ZW?)VnjcFotD6C1|2f7Q@N#`9d#&$Uz8+23nA)0PayHN=nB zs>sd8^V5$~CCb%F5IP~7!7b;7=*=-Ul(YM@V_-xXs04o{5Ms^Bs?APvh)5o=`4g|( zOMjeRVgD=fMJcjoH*@a$nvSr2LgF^jOO}Xv8jz%tbv5oYS*fMni^t2i~iC z)sIsy%}h)(u0zn9OxvrQL{~>M70a3@98F?t4WGz7u&-^g1KE?8IMK~7vbbhSvmn=H_zv@#m1_&zQ!SM`$H&NysEIQfcEeSs@(X?7EVNst77%?c zgL8J~esv`wFjnr4-@lOZ83#6c=0w34|a_ z6)Q(~r~VI^(qZ=HZA3{* zY%M1x#F8U;h1Inm+1m6ZM;!isKN9*y5aTL$HAlADvJEB>7{vEM!Vgeqw|l7zK}52Q?NYA(`#8r zbSKr~iec-u4q22LYGr-GMfmqAM>U2BR|-MP*qu%sU3CozddELIHKqApY6`#gK6^`3 ze9n51JX^@;aF`IBUYA4|fD||dsr+vX2&D%2Pr*fgH-{V{tV$;Mpt27U}9_Hi>SpW>!WWaNN?y(C!w*Wg~@t63qJ zxo~P6T_eaJyw>8cE!VOz^gEhD6^=z*8RPn=lyXWF>g-9KmJ4`rceOp0n5sc zsASFcW16Ox)4{kqs16$q%kLvgv2LsOb>rTK3MiDKU%hKEYoom&Eidam*H*9)+gD>Zerk1U%S z`znT-l`>t-V}vzCY4Jo4ZA<;)fB5# zzsq@D#m!z8%|sUzEpugfupy{>++Q&Z_JukM(uIQty7Q?AmJOZe`dqg=jQVu}8W5dR z`RauVDNRHSfp0nAv{j;iP7T?dE2LQT#R+_)eOBrD9>0`a5Uq&h!~W-ETVp(@pjQAY zzYr*CO3PhbvehQw9NQ6!N&U=W3H-Q^KvHR`h3a!s>o5{vbj%SVzIf_IjhAj>cSXuO zW60NpIAhgIc_K$ynP&B9^U=ioGR1>)Gk}EF5v}%?-QYK-IP->)y>aL@rvUtY)z@C_ zgj8dj#UUa6yBt; z?94h6TKR#|DB>nNPT%O5Wsg$}rj5 zZxGm%kIHU@co9uQyR>o*3!0C+tJHVR4G)Tr!nZr@ypJ=YyPC;(FNd6;kCZNO&a;6u zy}Y|z8#He(MdFt;*D5q;bdjump`xC|)qR9sLEKHfw7pCou$ADP&djt|KoaF7POKxO z*l9Rt3zW-(s|~(guPRFR=v6|RWGeF#IPL|l`+24~4m`Ku85pPv+fmRwI3l=79`U=| zj&mIo2ks&d^o zD+heV4`jj6t`vFs8AIIOlR3AY5LRxgzK$zDYj-Pt(7TkHU5a&B7Bu9N0bL%eJ%22- zH>X$z`4$(U6$)r+c~HMl=Oev&tzmDdPbUjL`rzG zI+UpQ;U}aI%w}$5S7@g%&Ned4Ip5By7rAEbvbDJjQ}I5$NTnS)hYM7wJa0gQse)So zkMg7*Zno&b&s;IGcwyELztUh=5K|%z$|y|u_lO4)8>#BGj{(;M-vN~>j15|CykWaB zrY5`@o)7ocJ_0C{uMOYsusbh92GG&gQsB6k(TKp09hKhXem9Hk-|^9te zZw&gs0RKP$zjc$Vcr!tY6vmrt8#%^R&-7}Y*lLmHP2yGl*OKv|m1B6qsw;Ho{{XF5 zSH-q%!H#wOjcLi@Z54_XMGi(vE3+QGxvKBr>nsh4H{&KhooT8ucIr{M@jatkzm_F0 zkCYSu6ZOqQr)!ol#HQj#5}se=&JA3D2HWpBmDNJz;j{fIqrq^s2`?j#85k?f+yz0&{Q6Z#@MI_(H`Si;?=$lWTI~mGnJ29e2TQimQ2}o-vaugZSqaF`L2?qp`cw6+-UH-5}t78n`$3 zGpm97twz;{`$)t2Ry4m2HFeZ~v&8mh=V@S!SpiYsBx18o_ceZK>UHy^4(OV`LA+ZS1qh=>e9ug!m@n)oDXwQL2E3r`IBx8-!V^5O68}~b&FH` z?KT-03I2M#L}`V~?DUlr9*8PDmUNO68%{E+9>j?Akg4wL0rp zOWH5RX?sDsT3G1U=H%oqdejoUw;wDZ`9t`-8t3kHYnz>cwyLjW<25PQCh}Gx5(QqE zCXZ+em5nWmtV<~@dXQ-(Dv_5v!0q!I%3WQ-`Jqxirl?mMKBCLr63Y+Z7>S?CgMHMncG@^hh zc`g0Z`BC{Cdma4C5Wo`#+FcK+>JB9od|0=JOfl^ekL z`?Yg4#u=stbWuEW<%bn_j8spi|2!taad-R~fKfO{=XaXN3e|nS21Nf?LXvHug z@>l!Rc`NHu;+jPOL}FiBJe57_O|)&G2#g9pikM*^-l>Q*gc<;^ox6l(QdxU+?=5YDE%j z4g5)BKLaoS09v$Uo;yf(Ll>DKA0#M7fBM7Tg{YY6C4)`0RSST;M;PkI)9X*utYi%L zS6}h*FW&zEWOh+WVW-N{3%k-D;}`&a*vFv%02af&|7nH192aO+Jc4A~7W! z7v7#}ywCtELeKqA<5UG-v;P27_|*v(XrhWk3axzGEG}5|5i$J@SrtoEV7g7?HcE&b zoE#szXam6qi6f6LC6T2J#|*<}-oq7I#{Tx;E7;gW`?lSX+eUqQkItmh{3~UxT8VAs zmOnV1vbzEo*Qcd)+Gm1f({0Q!-^Vy3IV;IN_^XYatdQl*mbNI`TWT_=oju$;iO-gj zF=hUhW>}`@Y~mnj$u`%fd0pRG~SKeTMFnRPtdsYMZ% zVs{@YTQ`UUmfV~le!Xfj;p?9h%M3C`&}nf4g)#*)KVnC5T^e18 z?3MA76FBHib9#5g3k#7e-NyEj#K03ECnxf)6)S0SB~tpCzAm%-4C!VOfr(pk~V zo--Oh+Kic89kCSzRJ}A3)toOJK(zT#VJ7BEwM9^w$#FUO*pc z{{U0CjGjkM2OQR;X$mgDDR9ll!w>T06+rVU=;rG@UU1AtT_1sEN0XiDWW zT|&-D;$(x*pJb~d+pG?zG{zVx11F&BYnaxH+Au+<-P?vB;gytyJ$mN4T{l|3(|p@m zQ&hTZh8dphuE@aXI*;;c_fx@tG;&|1jEsW-wCXTDF`6_&+^-Z+odq5p>aj#n2OyFU zzt*$#hPGRsMQ$zNmR+%!%*W+UPD!qUMv{VrX^txVLkA z2Gz-mBEWSd9>W+PomS-axoXlIWq`fRvD!25!A;v(agBiS>-ts8h&22AK<%mdt!lfZ zE`f;vWGkL=SemQd%^VUgnLJ2@N3nr8E7w0<@O#zo2I&`?t)%x;!zH>(tfeGfqa8Do ziXMYVivtOW*CCQ3qr~f2PZikla79- zv-K%etry5gPc}`{vBq1R0qh68S=2l?;whxJ5#Qwt=gM246sSG&dE-BoM|P5imH>>> zsa?^+3vR*5I39wUu(dgTQs3q>m1?`>=l8ugcO(zWhO8vbp9NgaWePlVh{Tf0cB}l% zcYWW-ui;Mdo|y5^9=+0s~r6pV;_!d8XX?>F5TtKawgdfL>6^l!o9*B zL1BgM?w&bNN6Rqa*C~6Y*y~ZpsK=?=qiiZvI0tAv=jt*!q=eGk;Uc%Xn%42On`_wP zl4M1Y#Kfoz&Q3ZLM3Cy%b4J?1kyj&Om<#}W3|F97SZT3CG}c1tEc#EAv+$eREo1KSnWcw+k3ba6h7V{>yD%3Mg{8Aqq<`qp->r+;T8r+(oo z=kDVe096R%iNYk7(um#xmQFI=j%aH^9*<|@M!M8RmEDKg%)CV;K(Ic?{A+K1*7BPn zhp4X|(Y1**biESaEzPpBf|)r?oChA_y(`1o<+i756ms0g_alXojy&ZZ!J_uuarcc` z)qcw^Hk_jl2eA zVETGyvwYd?(A(M0S>NYZX#v{3`cvc7Zzql$Pd-i4o!gvlI|sMciB#-eI)3f$ZO3_X zCo-kfOB8BlkvKU$yZ1bPH8rh-7urm>S6ZFAOsq|TH@Vdd=x7IIQnE$ zG@%4OBZ7O0=L>906=-$?SKmR^&uRORasSZj4x1gq};QcaIzZD;ayzxobpX&vB$nboVnx z%`4=WU@!)F$rVz@KMq}LlKGIzB|^_34ipdvZfd&gcD69HeSuu(Zg()_^R0b5S^Fil zmt({De1u6vXLIiAeweE0O5CM+b)ldaH#U-7+`A8yPq(S`2R-UdLQ5fbvCD3&3`nW7 z&o8$DbDVS4yZTn7QP|vFwDY81bVv8V#t9q(MseDqH+m(^e`-2ecDR+d5ZEku$@zVA zS}8-YtnO8h`#u2TJ7{9S$uYMl@nco2H7gg8TEX_8IoKBS3hlr?)Rz}JMTsBT`b$N< z$dIsX41c{@XIr%MHlHpS(ZMAYZa+dP%B)(ogsHpkX?T?Ux2OJ|iTzDQ;YGiDi-02% zMq6oSARe3nR4=X`>e^d^*^X)V1pesH^Y2?4R;zb+0g^{X5rc!Y9k?8G{cAdMwZ|x( zR)MF;bsh6tG8l$%!)eK`t>;S%TZ_p{qC|(5IUA2k!SI|nBSVUN(5B{Lxwp4I)OgbU zY&1wMz!{zQGUvBy%3k!1BceDvdkL=Znn2~ASqpZ<1#W)~3cIEFS~>LnR^eia!>$Si zT!07g`}0-)-WODyz|q36g@`O*fLYinJomNwzf*F9}>t6bXL2>#a26m0}Dh+ zj=c5fwNzh+I`px~(qGxa?f?rMcni*Yfm>5)8P8pghv4kD(rNmq_Kn1n+$@MN#2u@H zj1kv0>D9!1JMi8A0EcaFQ&7DZQcTE01|$q;rhc{DS2Wt@(9$~|f8*Ug=Klatw(>0} zodhHk8srX5a8r0gR(JCu({AEn&UWx?+pe_BOWD$C;x6bgK4Jj;jUmx&2&3Ub3y~pnq9?Uo+@u=>i zztT|}caC_QqsHNi{Xnb>ZARwMvYk-TRWJ8PPeQleBv{{UqL7wj~a%)5U&-f40? zWH3@QkF8sh-dS|TNR%_Oi~?(%gu66@dHMNn!1G;Y^|@~ijjBm1I0H0Yg^UZPhI9#Z z!WrXSETOP|nH_sqS>eAEcy{-~siF9aHn)=5Nw>a?Zt8P`j(gV}H0!DCRZXmdL^w>L z8@+``{g0@_2x%=Oj1KR`0F{qW@aM$n^no>%#FA=OaB&={xR5Vy4^dptioA1g;tTmF zx6(X`P>qw8!;$E~aBG`=Ci>D9xset)vyU(~Lg%^1K~ZZKvuV?+%&|z%7?EXx_oJ!r znrTHlgqzsg(>!4%u>Iw^VVp2l;QkdhrQ(e%P>d^D+{H5U9D@X@{{RZ7qxe$eRMWoM z75#)tNgiC&VaL=}E3GZ9XE3y}%0c_kg6sL>wB}}MBCG0OXuEl4Q@9MqK>l^7YpUAq z0$G_3IR-Ln7<@Z_F=vJrao2!qDYToI9ad;c7Cdep>MZvwLey8*wzt`a;Y?B-BgnJw9R0Svn=c4751>MJur7Mbk8PcZ)n1Q8G$)m01Qe z>s=+BsVLr(D*Eh{X1PeTNu^w@48zz{n?aH#-6gvq^(#f#?2YY4;(H0=xz6N}?PXz; z>~bqk-etLjG6{x9_j6o{&@Lp6SuLk{*z&;%0;c}WxwRiG_YmaZVVGu>*m9N!^J^q8aXUoAYbcMX{Hkp` zS@8y$ZXkv%rv$8)`RoNf0>@WJYg@X>RJ^vnwtS)Ou2~9;bM^yvXXom=J2cmcMZ? zny)KwNf}$Wek+$gAY!D=r!xNl+e)Ejt@$!aUfxy?-LyKj(8H@P1}RnuR$OZSpRxQ;RaR`SCW^`&U`3%=)~#o}#2 zzU!8${{Z1ByNXBzj}Q!4I5I9zLNQzq{3IH4kNEnK5B8un18X{Dx~;Msln@Bmw2Y-x zF*yEIa;7yYBiCc`eSuIU+^y}%s4u)rXK`fe2?K)1t_Ev`d!G)G`>l4%p2b)JRW9zd zwYsr_+f%iaT(OQ^y=&#}pDp?c@=~NyL)i|tA5Z-C>+ab4|C1A%R zY0tM>sGb$lZXEreTDRw>CtTM(tXrKH_Arh1g%hHH%rNIYIQ8jCC4B+8TT<1_LvME^ zK57#l5R7ynbNbXxEJwP2RY~KzF7G1BUD&e~8RVRrf>$xd%w4`wlaHvy&VMTDt$a7)6BKg5mh6OO zK)B=esGhw|V)=R=i+^_xooO}9lEPLs&J=QM3&U_d(VtbkRP!#*QDkgwPQw+%$8W0Y zH?rBKshUfCw2`BN7>+{5LJGW|L-pgx;N83M8xZULs zU-!K|D&B@%*JSrlMAP|xR7I5h;{feH-TweR{*_#5){;35YYG1VfQo@;DsaH#82J=Z zi-=PtA3mfWzSOPUFL5q(eJK!zwTE#&xcnR%N~Zw=aqeX>dvalp<^Y)yWSHb(ydFZZ+jstInQRLefq z9`tgc=X)a?{t={Ml(=#1R-YGxF0Q5#TFN9~GT$!>J{SccK422{{Tw+70bi+xMeB#j6)zA&z{~yMU{auk}z@B zx9#-RjI5WqGIdyU$o~L){5sS+%d=VlPDbEB9AJGrRNCWjQm&OWhgPzN6$u}lnFFhG zI@j7gtK$6=jdH~I^OO14+4Y=_VnuWR03Ofuu0jA?#afGC;ceku`{OwMYp}Tg0FQV2 zS1oP`*L6Zq7>oY^KounyuxV)Gjy-4rXvG;Gqw}M3{{Ve|IsjymD~@W6k+esgl=ZCw z=s%5rF->QPj2A*ZHwt1g?qFMlUBs)aWh5O``+r(3Z;Q+JYmg(k9FIu{s{a6mPjMPY z^CYNOxZPB)V20{FuaH5?usAAxLG3^q=xS=ghf#Y+Sg)JqCkt`d{{Xx@A9~eW$hVbe z1Ja?HD^h=xIN+VgC950KRG2i$dAW zE-H!CqU_E80DRL$>!sya8EO=dd^QHdO z7#}G7T8lB=8k~C22fbw-NDie3{0f?NG#|wu;`CXC(XaT@9A~X#{{U;o5BkWz@47>+ zL_g)EKljxZV!5zDq}n}eBl~h6`RNb+^-2A^2>$?SzxR9TMZsRP!dI34RW>+pZi zXumpZYw+X!bW~Y|%XdU7f<0-W`0H8H>#$EOa4fO5_NzG}sVfPyM$qne{3_-v5MPUC z+q@}mdUd5bu|M+H{{S7N&|KWxONzj4T>k*iNBkC;b%y@@zm*mXofau;oBr27-jh#=RdVitiPQf+Nai9IYQ@0NNb!rqkq$1&XDS@=`MfXqm(Xmd{K}q znL4X~c3;kr>WqJePtJ=4&Y!IYxqt0uAHgU6^-Vg-9b=RJ`l7*esUm*I#EG zTSyQ4)J?0hK+?Eq)O9S>SXVc0rAVM@Bw(n#mL~uT#YB@p=~eN_tQMSv-D zT<6>0`-lGer2f!}b0G?<5`lI_nzvr3!=&)Sq@+mSs zYnwOi{{TGC=S?^7{{TGy09q_AW2OF8qiO!6eQO@dPd3sgBL#rqR=uD4pT?USEYU?2 zh80UxUo%R)OcS~n9DAv&l~+(w+I7mP%NUps$kM&F1-al>Q{L!0R62Ze#SR^qm0;z8 zJ;>;5(KOkTTX7m+Hi+fyP7FrA%J59qY>cuI2;_4&0~2tOONd>Hu~n>NFc=_WJBr* z&1l6O+Wx5>#odG5`2a?qU!Wx9_UeC1(ZBHIaUi+5GbZi~O2lLE=xItWdd5XYYC1^? zEy8M6@F$UdZwy2;1&=Io)9+%jd|jZm#+?P#o$FmqGvLE3ENvR#^&6{2be%jZ?v0&# zfa}R0jY}4vr9~?`+2+4i7%{ z>=u^#UYBPSK_Z&zfHF-W-H&0|R&Iv@o0J*qi1 zyF{4F8_y()*Ug2;1QsUGI zpu{LuNn~Y_4&rh+>4A^Vt?98VPHmS`^CFWh$})@3s6FeMwRVEoDfy4_F+67+)QKJS z+pFpK5x^ol-Pyn-4#Osnd#j6<&cwbWxVF--{D>0h`D!F%3YOk8+M*U$x`m=%wY>1# z$O{Q)AppiY^);n=b!V*EA&TZPEMI?bay<=RvD6z;MQ@(Qg=!0X(}}$ zuF;ts*IIR*w079IA+xa$37+RT{XJ_)c%}_L?isEv-R?Rhk-|wH#Dml8Sq_uIB&hKz zZm6ttpT@1dwr|BdG@)U>uzFtv1!AHy=Kp;Rg@qGN^3zCp4W)F{oW0 zP?24glI}Pqdw7_uvZhoLLFE1w=w26zwOufoQtCKD`Cu~QHs?4UImi^VMQJUq=9g%& zpt%`Hp_CHO*Cc0*de***HC-`gi&J>s1dy}=2JNfdpYb&B*hwQUSamxMZSU@+HgU*M z7nE+?qqg7=>ed0U+apjMpyE zSvG-pZ!NXs>Nd(_F46GJbBt%GqVD0!k}Kb7AKE%n+(9svE=m(_NGz$l2PZt^sj03s zEjkYnSwLb|f;hq35j=8ppIXhZ(C#JCBQY!x$8#dZIv!bFN#qg!KD8dJplTL+lql2w z@l<~KBqM@-3C&%_XKNiEq2Z~lCs|;*n89$ZwIgB*`dq~<#V&tDOa&q1O02Aw8 zf#JJ5U$L}DHv}r~^GGMBLG7H=#OrBuGu+I!@r;u1k-UGheMK$Rn6ysko-UWEY1)i- zuXj9~n~@%O7VXVNa~=MdsKU~ja*m~4+aR3tkWMSS)V1porls6gLPUn`2$^y7`*h&f z7pWOx21LYinAy zn!{-$F^#xI5pK+Q;AiPtTJDy*Q28a^j=(Bz-LL>V_XLuE8q2h^p5h(NZtOP_7`E(z z=sQr;XfI|*rm|`}%G*q1f;p}b7|$64x$G;|wWzE#OL(qevbU4w35LRjL)C|4#d!_f zmaR3pm(Ke@A3TYTpmqYUY3YA;Y4%wro*=L0AaHO&81F@8A7-0lqTfD;w&{BPh1Qi7 z)Yn$(gE)2=U4x@!)eU}YZA#MKO)48J`HSQoyO$XC72$AdTBe_L*6T26ZQmjZor*pW z10BU{$>To~$uV;hfDq*%`9TM#%k5afTFq)|{wr*B8nxtKYmys{D#Tt!4)xkd3*E9Y z`E{%@s(5Pp8RbivtfYl@w2@k!sycer8?O}VTAiGUaRFs$&z8=)F^>2@<5`I-&!r1k zt&uk`??_H$1CgJlYs&d~jFh8$9Y{?i&uuJzDM9imgj_4B#xcP4IsIv4(DXOdQd6y@ z&mSdLJ<3OY#+~7R4%%xr@z3WZch)-$W>@NSk&K?znRlWlo8lct-K1}{P71V`Bfmj~ac? z_B!}_2P+2u06k3xp>zikmTac>ZSpX`p_|l7V8;V<=&*IHr`!h$7Da^Bu zTLAH%2Og&%t$FlT`d!wQGhXW~73B>fSb06_J?-GtN<`^0LkmhyB-`@w zQ$s(9;?izbc@pO25wYAOE;#l4YW6a1b6J}9cHS1Zjb0sfln>&T5P!zHn05Ut`#wa6 zSFtaE7DqY9{09~0Qs3UDmkg5GY4co}c1Vo^;e9$&^?UnEE0|ixK#pLjJj;UmNQG{mJuN%a$^R( z9vR;6#G?3#WPdk#L{iMd*i=VdM&7nPmfn2}PL&~pNkHAtGb@S(4G$e9FusnaM6;eMNXi_AtVY=i*aO@ZWJ^4AsbD99uwA~(iEmBFo({dT@ zJNYt?y{VJc0 z^y70R7cmkhfpRhFn)5#w_^)-0I(TE|zs)f3$3aDvhkZ;DRZFKq(SAN$!Hsv8kI9{T!S<2TKLX7ft!VJ))4kX?b@SWDO(?GKBRKpmE1d;7s zGW;-N*pAL$qmx>`5!WodKW8XJj#=e7Bp9V(L3<|18yRfl^{l;j#5Z%>T-o0l zqMWDtxpU9>)b`uQg<+CBZvYWgldz=K&erEe@bnsUS^cwo%1grK{_75$)d8w_IjvSh zX(X)33r5GLdX7zb_xAfO&)KffMEK50;QlpT&5<`QFQb9bhDj9eTp!^eXTEPw$BkCceH zE(h^@3dq(q7*d*@tTNO*>hz z*F?G&xoj*o05-j|j3fJ|Yr<~tu3^{ZQGZ{oLkAR}$S zk8HeuwOVS-+DC1z_;UXM!!nzzR%?p^{6p_Y>_>6$Rm9dB<*%0@RhW*1;5WE6#A;qA z*RSA(TUEJeV$aI0wU_ITwU2FocW*O@u3bqW_3Q6iMon%-j>6?6(`EZD(;q0DMK_`J zG{`k_vNg5H1dN4j{o!2o#=EH8L}H$B=-d#>IjsA8sbK{b!3z6^;gS#dR7-sej>m2G z=CeL}s~Ac7fE_DEZ{xU!1C(LMBDm;$O?MnE3&R7e3}om0X_|JwHIXC9Nf4aik}59B z(ClsXSJT{ENh2&WACsOl?^-k6rOmO1RV7cc;QH4ysCd#XOGsTlO)(Ky<^^A)di2dR zPw`w<_TnpxN06^Z3_rq^#_V-AI?Ew8b4i&Kp(mCVX6j_RhiN!)a;@lVjMVk}E4GGP zdwG&b+nnQ(_*R|2i1emK^M25cj(>NbKDiNWKw@aP0Hb8 zQDe550~n$p^HlC^Z4rK0BLFbYG2HW1bX&6{{h!Z`nRj4r8O2?_GA*>E?hCZ#vB2Z4 zXK=AE_EnpI%P+{)dz~iHFnqQEoN{R_?j@4VS&(kP$rQ`EU0`O}&{ItTFZKnA9VGlS zN<1;9ovg-OyM*Pi0KxY5sUx{>DNm^Nq4frg50@t(j{V0^&Z;&5e+THvkk`c<(6=9` zsHE@~pD9I6NFOu4(Sh}=t*d|lZ#hS|5?D?VLHcCo{^ zgteHD$#R3!=U{)8LqCUg^ATAj^CRd%nB(=Xw%>j$vYK>N`~Lu~IvEjEDL7}t9Qt~HpIS`<^Ek~u=fxUi zVIYF!B9pazo!IB;T{8SZ@#I$CU)f~ai~`n8$LU>0m|-_D?v^zfAA1%79^0=Rb0P*&oiNt24@U?;pu!uU%^M>Cs$I zKivh$SckCnrMU6jS27lTFoI7wmc3I_(L6f#u2V$Qfjt|`!Tg1Bw>}@yC1%E%Zm6dl zmm_iX9M!9k)|O`%apGw1ZlgbDk}Gu>WJd*w`qZEBk!j7rx4IvZt+{+3rAl&<$b|M; zcokOT!4?s#H`=Zgj@bvFN_vrGWZd|M*JNVZC00Luok76%=b95$(>4v$%fHmbYIpEr z{{Ri!?mnrSZ2ktihS*GRBMN#3Lz7dea-k&FH0Z5eqo2)_BM4(T{OYmP?Pid(&l>In z3Nmr^s3h>E@_dV(n5%k8_8e+q7+pz1npKFFlHW)b5ksT-*oU4YYE6$r>C; zPjcPrVGL2s{#fHU1o}{llhABXEMcXb_S}7IH&h#}jD!I0!2JhdS{D-K#Chk2U_1H> zt*S!Hro4(dzv5~Y$u7Bg* z{*}XOcLv^lUO)*W$s8Z{Yr44q08sw`O5rtx1|3nyd81#+MI=)&zqRE50G=#=;8fwO zN&f&mKk@3Tx7vWT>?@ZSRgjZXAfc5YC~CRC0H?@?@&AHGjLDy%R`V(09P z3}Uax9GJ?n_Z3~d&c0(-hA?U=qVA)QN-h>C zlKK1X`O+QP`|bJErA}$PPH4DTi)lZ^-<=*<^*^0UwvDEXfdPzCc`H^n6WWtu^rGQn zv57O%lgeN2im+0F8KUE{U&~)XNMc_~u+g`rG^0^*75uf&N<$jvr!loBl-Z?lA=tF0 zH6y1rF2m_Y(~gu46#^<;#NcumS5hA$xtSv%gWMY3NivFkK&F6g)(ngErg4f_%eeYc z<+eH+Kr@O?Dnk=`8c!*`4KNwS0~G%NDZLFiLVXPaA}ljYoQjjlZ%PCvfFh(dKa^>v zBboq$knvObMv%s60=YS+Fsa%+cBq*Nq%s3Zwx#muC`VdDA}Nu`q)7J=Pg<0Nifpna zv<2kOIsgVsA3;C^vOy7%&J=oer$uZDTm3|AjX91Z(S6UoNo8d6$hUWZd4rUTJRtS@ z)s|1TTq`imyeBHB{#rL<^dGGj70Le5G?5b=ZEn2-N(S%2f5xI!3cC;xxyi}NW9m1~?`Po-{I{{X4{YoF1H{?9?^PxG#Z)BQ;L(8@)MD58+UsOp*i$i2bm z$dms7K{a-(UySM3Ab>%M@(+Fu9YLQb+eviV$d++9P%w_lKqu2RM(0v5b1Y_AcW&hG z!1`BBeWl+^ITlf(g<{(yiH&5<;mtyJ1*CZA=XN2-<&KQ`|iMo4uT$?O)5~>c(YoAQ zxJPw;%5pQ2_0DU1Rl&LsUWW8J6#oEvtc>#ULv=evmSctMjs|;vHJW@wWF|42xWfW+GI+;YecE}l zx{^R=IUBLat|9atQ0nb5uy=u+<N|r=bU- z%MGrg(M0Veb4J2tXxnM|PCuV&u=ZBZGf6ZFBR3?l?^)VK@V&CPl^t2-QI-P$^v!Ks zTM6(*+$?{)oMZE>D`IKU(sHq_Iy0%PQBPDC64|6yaM=T$q)g&5kH@W7x3!Me)dchD zcF)f73mkqJ&1}7fmkq)_F_Ew#ll=}EXuI( zpNZ@FR-MMQn&s`Fk5n>AXh~%QX>pE(R=&4!Y}PW%Gzg#$S}4Zv)0*dWS?s5Gd#GB{ z0CJDzlQaAK4{C|wsWjA8lPWlhnqBN}+(=$aa$6x(?&mn^QA;Xr!e{>ZtEjeDP&e4@ zwFz_4f}#)2jabm^U`z8huWqqGilPmw!{y;oX%%~<8Nxrngc6PVaA z&f|{$qOlF)LbFWTd6o#d+*Gq4#MiS;cj0p?%9bhSuOO=Q{Ois9X(pv-ZzblRsLwPH zCO*wM#sTaIt#@Q6%8NQKr3$=L#iUOLQ*yrLEBTH)*F~x zt~W#Q&Z7Pv-y<)TeQM@EoRFoM{{RnemAm1O3~IVgl?+aS++>oHDI@R)HOGjrUX)zp z8`$ijMvU4`?pRl7m;5l+g7nTa?D zoM*l(&n42KxQQpdzSM5FHs^)qD-x!D=sozaOVjmrg3S`zLnXYhVj=y`IO|g8o3W~k zwamQ`PiN-lNaQm%>>_@3=U1tBH^kU3W3-*t-gGWRWQFA8K7-!6SoL2MX&PPa?aWg( z#3cD~GZ$7K*sBqEmTT=jH7!ER$`Zx3%x|=}JSiROp{}fn+V(`3h7o^xda_L%*Cl+w zBsfwrf(LGcKaE8`qkpSeGC^|;Z5*d2NWlaOsj11QOMMlU#-k;@)Yy2?ChfzeTCmZg zw6(d2>I*4;p^&Kn`jMLE{?MVN-JhAi)T-{5gvLu%v0E#kuLzJz6$Ux)&!MO_JvHxG zUfNlS94J7hWnKUyj^NgIp{8pAv1w?xDS?kBbjke4t?OjFgHMFXZzNLV=8XKsf5Nto zCY-e9GIT0O?3i%)e&bNL&DLxka=RJ#=N&qBH1GIFW=n4>Elt0O{E4@&axOxVzLLqo|rh|o8s**eM0)#QDfWXobM;G&p-(^ z%uC_HDptM-mWBGV#F^;?( zXEfTiK2*s~IbOyM+`2T$6}F85^Yi=ZBvJ~f=9bdk?;^Qoo*1MPfC2eQ#ygW;%sN$_ zj-5T61}9=ql`(*BV7 znGK4MTw953>?66lET-jDha-dSRD25@7W%VX>eEC+DGBB=CqAPi6|LjBG}Y5=t~AGl z&Gv=BM^btoz}AV`*vfbAGSUk~wz#)fhDK0vh{~Lf;Ety}Q#7llhRmCb7!D3LyB-JE z6=~qI(e$eeyUV$d-67nm7<>`~5$o2LdyCm)xU{wr-COKd3L?W`jE)brT!l0#(++j;#X>zscoyZyHWfCF#*ldc;x74*ACGJuv)+qe!7~VX9 zNavcp_W37{E%5Jf*>5R;1bYn9bLEZBg?reR9~1_Ha~7P*HpUAgAvt^~2|z`~vntuKe|ukS9Vk~^qOaS*||$r z(ruVJh8r8G_4KVBF8fcKb!as0tb-*UQdNhgJKsQR+J}liv@N`-ucVGcES_X+ykSW= z2R-Yz_HhOmfEF>2rx)dp4HZPFJFtpnl$2h zUP*3aPbwh9d291={(WglJ%pM%uNUfY{gQiWq$Q+*rN?vGYtC23H@13vT3EbLgg^w4 z{IYKMJ?hq}cXfX^+JwvINfVQjK~&FArDa>_52}dTD~mYT3}$PDk3WGqKb2~ry`GO! zRZC3nt@Z6{U4+c+e4OyXvVNkfTwUrm_VdpajvnIVB&tw<5G+`Faz9$9FNC!ccEO2z zVj1F-^v-Gr@ZP%sJB{Rg@IKDOerv^N6w$P%n!Ss++Kd;oJlFSEM)@J~m0mDaRQvU) zw0%ZU&wiPBY_~?rTN{Qt)-14UkzP16gE#|sm>F_E;8jLDsi2PacaR!J%BkSeoMmkV zO~*@~%kYBrFCo@SNh9J&$q(B*x>u)HlKc-0)_Tm|L53+Lh$egEc6$A5*6TJio$&*0 zxrmL~+1UHnm1=$o(=T-!n~T{l1Iqh^ir{Vb1EqKW01|F)wBHY%M$yzvj1X^Jj2iNN zH^sWXs_$<&gMpl?;;K5U65XB7ir?Yhl#v1Uo02izg=pJ&R>MrgTTMJ~(7Lt@53O_1 zc*{~cj5caxz-_Ja_N_^LO7XaBn2EPN9wC+lb=*BZl}QtOlic`sO_p+8NF*aW)%NG| z;Bl6C+V5s{Jk z(A#6OIIU7CuI?TfY>N-zmvJP2jYFqLtii-gs>|~H>GK-&hla)*Gix2hi3&FH`>c@P zT-P~#W4B9*Y_6VW3L0gV05~VAka*^WAvl;<=TW|ih4tD=-dajw4l=_)no{^)2Zh&7|1K@RxfO|Ss2F-n{g$Y zC{P4UTOH3zn~#*wwzadrL>IIE{S+%@ansOttj%9dwzrfmv+qV+o-xgJI%kBhbvsZe zj_Tf6&e6I87=h5_;)~w|Yqs<3TUjonD0axI0s0Jmn=**sEiQe3d-@D&E5G?q8fvLZ2Pi225G?^;E>8Oa(q7ZyhY>~`>h*hl?pnTpk) z0u|my?V>Z1J%@U)9s`34!&6ARM z4W}!dd;M!RTy#A;9Vfug6Sc*)!~kGq5^?YES}}M}z*465yq9Si95+9WdBj?+`amFf zqLBja%c;&P-j{cOYZ*m|N}0$6pO&J`yQ9$J@GpYrAtSzJY-ee6&%I0k01DH>?7)pj zj=)KZ;+Sf8eq7L5v~GtxgAlXpyvWAdyk3H6IpGQ1O*cYLRek7}OdP}Mx5*74klREAJ7$?gv{d%D2v2eh*7!j6|wUIjf~R4;@wKx@u6pz$|E@;xIdK_ zkXadn;U=JN_@4+mv0igg$?(rqRXCbV5Jn0fez-N$FO4pdCUY;(<(;ISGewugE2-dC zE{wo@!-`j9y^MvlY~cfZ!-+6$QtH{6=Hi_e~;$kPMC2@~-s!K)6eo(a}hA zjkwKT9yZ)QYh@$eGezHFa-+lF2B@NGHG5bGeseXbHv+|44AJ_gU0r= z2NGGtN}PS(wKMp;Nl*(}L=WLjNv*?_^7eliMgcY@hx?1q>s226#IWCerd=(Z?AQ~^ zBz<`AUcfc|0zvaxss8|U16bO|r={FnMfNDfVL{!T3Z*NHmdBh+;%!_4CD4E#q8D1v zi^P*a@)`8zZOxSjaM(D=>Fr*FCDeXf9Pk0E@JNzmk_h)S*sO6);q;Vjg^Q`Izd2V!L~o?b~Q*qip)1HC{^#28?dBwN)91qI0(@4{9FE;&(4Xf7(D$(%1ir;$82dM;#cMek?=foOF zg$1?iv%9LC#=~IldRFvT{uz}){{V!J6u{aLs{k?e6-wK|`Yp*U(8!?j0FxY4*B%4V zRu*wJ+MbFP!O83?SautAe`2@xmbQA`w6V@ln<(fbYe#*JdE0g}f@eBl*;GdqRDZwZ5G{%d>mdBOU zRO5^iXt-_10|rN-`n42*kM9J6ZHfQ1(+lb&Neexy>Jb5)Na zr(j6I-5>t|T8pr;)Fz{w&5ek{;IVQ?A46K2zr+N!wM{$2au$|RwrhnMc0b)vItudm zV4CuI51Zx2Ig(i)0DXI(rF0s7nYXlgEMjDdj?;AHZ;*eoKZI1fveQVhYhdPc_L672 zW0Mx_g+J|{=i0HnMv_`9()g{s zvN*!7WH>TE%*6ZlsP$G7X_6jz#aa6!Om|1RMIA;kNBGlqM1*Mb1kUgVfBjV0k}&jz z-KQDFZ7-9MFdH1V2ZIq$GPWGC>a4LU>o4f$68 z05rV%&;|h0WY64h%A^`}zuaouqXvL6zq4dNz-d3S<^JidtQu(tG=^gxCQnb+llv}I zZOB5Ot!x@;8K4a8NgDq23W1VH?mpFQ*^{H8=^*SrzJ|3O0UU~@HMvZ(bL~aM%U1U> z+@|=+1aQcDsq{53ddAzC1FNz){v|kSyJvgmIf7z5-l#ypk$t`WMF3wGsOz4D(hCvm zQ^bBjQh}O7MPIP5ujx+~DUQFTTnoiJXcPfZSSPRPOZ}f1?rPW+Qv#8(kJQojDE;c? zEdWq!D2J^x>~W7;zTgu~*fT&BO{`vqnr&kAKb>AEDGXWZKoow>522vjL+F1xwqYWe z(HwN727LChZ6q)2Q6!j9J640I%0ULQISj+NHAqa;vQ>~VBcoN}6nOi!OG^YsYI`6uwG-bW_4puqYWAia+iOaE?Fj3V0skmx^FB%TMkKO^N-%Pb5-gQURV? ze{fQHY5mbs;8GDl5foqUij9$fx+=jG(zL*=$hiBWp=4j~kIJqT`hImA$4P-mg&_Q+ zJ-Diu1NWKst5Zo7UwT9zRuz*q>ARhxvcnbOS+L%6Ns5&RWCFB*vEgbp!cOn ze#^4z<$UXgArVJFPht6IKGk9iNNi$hq;Hsyo<}*!{{TIOTe7ixnZ@PG6#x~6HtGTD z$K3vcsF5SHp6uq}g@-@t(4Ky$y=yE%RA3GUI#a^po&luBh{i`@`BBfO=~8Vpn8D_i zhBRmViZsUH?*si|$t?NJaAB|T)EYU?2h7|?Qe$6Qu&coNH zaZ}ZM&-n76{<*jEpbs#f>hR+?8hlthY$!Ilpl3EbnRUX zI*y;KiD0z4ir}dE);9O7eOksuxds^bIp+ZO`qb2moNv_Hg-F6)_QoaU)y<{yNn>#( zxn#oxatZc0>s=?qdu!ci#YW=h=1JDlGcgiL^6xwhS?OV3GUY-4sY?nH8GP@>8 zlx2bXinnV8rJB0hSzACDVTvXR`qaV>JC|0pC9*JnCRtnQ_m;ES%^WW@xOkC>VsrC1 zraM+9opx_pTWf>4BXSkDVE#3y;tekMT9Pv=q#jZf134sQoby=r-W0jAW*^#(wYshb zbL*PvROHvXjt^@dr%2CoY@KX`3o?O&BH$mX6`87OPpRA4%XrLXh>}DO6ldEY=B;>i zTj*D-CDr`XDPgTF!Z{wVN*iJk84j`?!GFDHT8g-**-l+)PF(e*nmA4&4=t*v8@ zH9s@SmQs3UfyH3ymbNLZM|-DEaO^|D9J|z$+|{}Dts7UnlHX57y0(3(A_&M(IppTG zEVLLjNW_-biv(9AdX#P(k4nO}7By2{&1uze)SmT8^7uFpo|T;x?vUQPN|HK8ULPvrhEJh2xfmrVhbGoYCSzVYKc&$vz4&A8PX5+A~3K$PzLDNqCPP*8?Yf(+D zj+4P!)VijMms7g=#Jp}t1B1sON}A%}o0*a)jIfs=^~OePjlJ;P_u74o$#&LC@3`AM zXQ{x!0Q**@mY03ux$Z5R+?5go=b$@LvCxcg1u7YQsaBO(yWgQzF^Z)%P3h)zi=>$q zP41%w5|go2kH|ecoYjA{#kUrplR@mLNm@?cWf!-fPPVtVP*tN~969H2{{XI` zpHqrF?wLXK%~RCpw@dQT-^XyWB8*{y1QJhQt#mdX91Eul#M7X@kS^mCastQLas_Ga z=L%|4hOeUNW9*|TH5q7(D}6*t?}=BZUezr6V``DC6WvC(q=v+741|xZXj+{QRhDQz z#dl?K7vGJ6UB90OpgMM$qD?K_cd|-Y08!NBb6CeQqs*Y)rRYDZRI`%R345p6Po&ye zMR9h5+lb^@03+LqlS{joMz)R>x|ViR_vUQp>sS)s3nAph8I@U%PpKr;SJkAIzUav9 zo|Wld`?Hs4q1*oeZrxq8tdfQ&sK#l!eD>2#D&1Q~Kx|}<#QWe3isv-zn;W9=UrNx# zS1jU9q@PX&Zd&S#XFN9Wje<}@l>@LRB;a-wMWxU+WgS;ljvaO#BHv4RW0U1elB7kS za7S!Zc3M^M*~B}9h8JKz(l%_#_C5Od6~86RI6LGm>yyP-H!&dqx{t(E^2YaxeA2a> zIelkE@fs8sGRJWr@hP00gWR6AehnJN`pWT4wqC(ju|G28+LO{H2zYRYArCSaKP0Vh9NlJ88@bp%M|Q*g`B zAjvXyl3`xA;(Jnwv(}^!r=sr`0X( zFD7ILHo6J|uSw55x}be`qI-;Ex?xmEfOTaa{go?t3lIj#gL& ztPN`fQv9m6>%q^zK~?P~k}~pKN)|o1!9T_8`B#tHm{-Ip6jHpF=tHjAK^gj-WLHV! zJw`(Xh=ylVA{IVdU^nGSwDm!$++FG$;$*XAX~@FvI8Zy2?Of)WrQAmq=)H~@{N{F7 z69bI&;<=9u$$O{V&3Ivw5iZb%R3tF(*1KDl)ntj~)jS@O*x(eqRVWx7bHS;U6qcjk zLl#{-P7$hV8nj1mK@SJ=70@BD(e(AahfTJ5Rg^2dVb4AJs)=FYxuJ?_^qY%#-<5bS zbC1A^ZPuY_b!~A4w(}e=m}VFxRV88HLE5Ihb*QOXUK5v@XQRBpz~mS7E4V`h~rf#?3Nb5ajGFkIJ=tBc^H}*>)Et8X+1G*2y}BlReo^ z2sK{PF^MpQxfsBy(tvADP)M66hIyp!Ak)Ag(_@1fUa%c|77CYb`? z&vg~`;=G8c0F!VS{{VYAuRN2*x~;v<+%n5;H<2SEm$y<#9=unf33Aw4@~h1%=I2+u z7MAx@ERwblmO##V{3_FI$*Uf_@PAmi)#BDAxbpIi5CSoQ(W}$z&3+O1e)B@K)c)BT z#%E}mR6gtg8?V1L>2;L;Eeeh8spsDnbvq>R%(`^5s@=)9NaHF-|0@heDuQufmqHZY>ZaxOmcT5#l<}PKA1Y@}( zy<+=G)FQElTOCNi*6{q>BF~r=c^}~Qt2|reo^RaNO-?mi%poa+1yBoO1UKnBh(D%^sg(^yj|i8?-;>#ad_Xp zlgc^ykOSBbl_|8!vOCRfrID^9)2*&9L^1Aik>GUg&nB@vH)3^-Qe8gl%!wvN-mE@g z0}j>M!!-62Tr%cD>_INPAHY`wtN4#tw(*g*e2j)HVgH*wu!u}4^ z<+58z3z!vlg(|##4m$hQeLGE`NbwYQkX}hOk$|?z&gNd&2mEV0!@f4V*EFamdq%f? zo24NM$@b%lp?iO*MdEpGL|UJasG&TB$@L?Vik(38l~L3HKMGyE)q7jDp3*6bn2V@w zl5oR5wIf_0=)j+1Ds>ql0+`OAfOF3SimN5!=OxiV>y`qmok|syqe#1Po%#8GndzDb zV@!|+Nv>(YS71X8D@cz06E@H z2*>M91++X8GJMqso<|0|dwA^Qx@eH38ET*?&}u6p2B>u6EL zyX0vc4y9W-{3|o;F%4ecA2Cb?h~6`dVE$B+8)R4ap)JJLvzg=0?W@DbpL(J-tJRcD zs(0g(e~f#I>14ChmKhRKV4Q*z3%OtDM^XH$9Y;d@Ja!K*S}8|J*XC32?MlF4rnzv8 z;Mh)U=7vD8z~3zsivDZ&VF3|D6$Kkq4A8c-XUwK-re}f zQSzVgt5f)hyi!RN@fjFoWCNPuKFJ{%*bm@oR@UWtNFVS+MS|yX9<>&sWrs23j56R1 z8Z_S!!)bKZ&uwhMfFQc(Bz3M6?AMXxtTL%5Ckko_g~((w2{(hsJkn?`dX4V0Xv^oF zI@z`<`BY;*^&~o;nDHx{1lq&+WFz`ln%i7z5V&<&iN*#-MIuS4Mlb~6dJ#p2dL(!H zIl6d-w9$VN*)JT?e=d~Js|UGNM$3HQ;A89SUU%ne3n-L%xyC;2B)8Yjg&CU%)o2Y4 z{gT)|S5UZ6M*);#vhGdVPVHrIl9SXr*D9L5>`S+JKTv3oTDy)`W3jh;ns=~R+q${d zglw;C9uFIo4nJCKdakVuYNtuu0LI|0&*W<&U3%ry8xV8rRwMB}!hx8EaoL3{ipA5f z-+AGmO_N|;6aj}mxut&-xx&e5JVUwMPCqeJA@NMHyR*dn_XHYA{7Ph1F0ZtYU@ zdKmgqaoFCs@qU`0^6_$?_R5hwU1u%RnXe>B)BRHzSm)mYu%^^>C)mGcw_KiE7^ye- zak()>ebvaNa5`4;eT;BCiK(oPppb?ZQpfS9+xU{rqglVTtkP#tU0jes^!f_qV}nDO zvwZ5Opjl{_PSOqpH!|)$w}bi7aUE>FCX4MU65ZO$Tp!*ngKCd_(ypej(rZ@t6R-H! z9CQmOUzbrTI-IU*xzM9xe5?3~>{&5R;i=k3tgMLsN~`TS$YIS^xz&s)(_AKhFTi!K zCgV^0I|25%9Qr9dRY4SuFOwSyU(rcC(gVDU#JX%cb6(3LOCUcaAo1)?P?GZVSdnMF z`4PX>z=I6K>HH(!x&1aZO&Qt<(o2CjB(i7A&2muFT@(20#u9+^(wz0;Ms-hzNs5l%~J+1@&uQ7b?ARcR}vziF>*sWm)8v`@8 zGRM-HnQKZ*Wj=M-%8$6Db^I%s@sz^jTQaI`4G;l+E2y-BTd6igGmfXyxvv*m`C7a% zqlp=!A9to`W4?xs&?e7KWl~Ss*8mRmC7K51%c}nX4{ye+Tp5nKro<#oRh|xRzXn$WejZ)<&tV+TK{r6lo^%F}af;t#900!6YU* zWAk&}xF3N302;v5bUS6YmRKZY+NHMj2NXMkDCrVI4yR-UCTB9IFVJ#3SJ<`j#*-AM zQ?ej+nLn7XvFj-s#ERqnLsuPPFPUd~)8xICc>0>`=Klax)#iHcp!!aUG>|`*@2E+g zqtwzxGjx6w;a+&2B-AA7c2Cn4Al9`f>2}0@YKgh%8TO!cuRLvERKX(ZPy6bq%dcw6 zarTG&Skeogr$^ylO4{bG*&=2?iKtsz)y{u>-k*eX8ese z`%hP4{^^iS zgDMZJ3S-S~IrHNDTvw3p)z3+%KZP-ySN{N>)BYS#7d=MeOGlMfIh4xX0({y01w$lm zBP}Jo;3qq_?Z>`*S0CV&zW)G(q7!iPvh02w@zT9GTcqR8mn;+=sh$V;(8f^H?`CTu zB-ZnsF;#tlZ(hf(TU}NVKh;T}a-;gwm3HWmGVn-VYXn|f+}}@c_hv>T2l$7z3O5s# zjo3kBSbnANLpj`~LvzRx3aSGy62p%zu?vDLm%c*5e=Z%zbx%g*5AH{pdgO z>gV4>nEwC|KU$3FGalcq9H=>ti0g~Y@udFUTz&h0%>Mw5WDgHF`xK|cr2hbNj#b<_pJP}1dOq^okI(#R z4!aru0G9B6U;TQ@J{$o^GxG00I91*P!e1f6vq(kpBQ0#s2_= zbZ76SA@J%C`DmY&K2#jc*lm8_z16?uKgO84m7}ik(6B$nw}blDL+A;#lOpl$RpAkf zFtIpj@<9IpJ&hcwS7%8cqvYfxDud}AIO`|8xcVTdbjvlnwlWepVmbN>v~-Bi@sG-r ziXSr}{@h;kx8x~5w<8^Akp4sZREI~1^?%Zj?0CPve<~DEb22aOxXJ$jTQBGT0M?}b z+C%>UEoJ?G!lwSlhx^~9IB3vgujx;f1=&~oaWVe3U-S4=f45iudQ16L&+K?W#^d=@ z8%T%L{#0_HyDA?Lp#K1tvi|_zG@tO1#s2_3X8!=bYG%>k^*@zF+C8`(O&q9KWM{;% z{{YWf{{RJ`c!nk!5?q>J?0bJxPhBG1deO>a@mhCJNq#w`qfLj zb&gg=7y#4}!k<#)Kb1z>`A({TDzNsE9>%M^ga@jcEQ0KW_?sW{ z$^QTvXZvsT|HfuE&Z zipL;l@)UBQ=49htnT`Yp^Q$R;aO;8s@Y>sM9DNaBHQs<{!qQNYOII6j4%8RZIB%{XXU(`!~ePyVD@^R;re&%$iN( zCU=M&u03{~Qfb>ktUJuqZ-9q+TyCDQpa)h|~zYNz&FNQBnlT8Hg8IbNMa8!O3)!W~t>|w2ANQ0gX zuZ;WP15j#{_=eISGQz^%=|@~K4WCe_sIJIjWj}=^VJa#HAhCz+F-v=TAXt|SOho7D zR-mxcRYQHUSu@WH2j`m1)#tgp(3$6irQD0VCkOMc z)SFtIlF^$|jWiA+X?>nfzmTY+HldG|rNBMeNyp}DlIoV}A^SbMO5=^^prtck-VhcU zTRoLY6xG(mw4Ug*d?UG!V?%F|&?I12Gkc}3{mEefZ&HG~yFD9Hl0eUED*Lw;qBKd# z+WSX68G)*eM;#dxrOmPCPh+V?mbUU@Bc=!V3edRLb>_9PfwZ_??ZHNIE;obRd)Ih; zI};P;JTZ~n98->ir-+C*63F0x0`MyRq#ovK6(h0b6Auu}A^SF+1Za6JJiY$_3f<7+ zy@uVFP-qOS;DHZ7D@Ojt;7uY%?5GX_+s$FmqsY<*Yq_{R0L4;-e#suzclVC7PJ>F- zufED)nmKIQWiDjlj|UwobsbP?`kmTK8mwFQ%X2%3<6MD&JGbFnciAV7>iMI4;pP@9 z#NZt9_2ad2U)xM>CfqKiBOn>%ETE3zKs?dOF2?b#3!2*PjP?-AdKx*QmGc`zFv|Y` zz;U>b!m>^M!dfwL{;&eOjy7ZY)%#x=LMFGF%#C$yLc_fQ2iK4BtsN@!OrOM!HoGmS zlF`V;Cl~>bPBDs9;b(cq<<6zjQFa+*nqS#cNu#)yLP2JQyv66Y%0HcSM%v=q+^wFV z&_~W^|9GqgbynCmZ#hBCOHcWRCV^Q;T>si#M zn-aaZFs)-~b%eZDk)G=jw(c>GE^I-mYlI_Qc4y7d~W#H!F@aisUc+ zNqcv7wo92+OXCW0-xcIyGRHdcte(fCLmsKobnUrU#CIg=6S6S`N(bsre@f8QJR3KM z^o>6L>i9cfZ3?P|T}fP=$AFaPyy-^gF$W=U2WUNq?{Dx?CDvl(0=? z+k#2exBzYK`q!wD!kx|wNYwAHFHO8J05HBtnB+Jev0dX`4Y10Ea^pO9J?qY)@aDZ^ zsR^!h%aJRc(aM~KZ&F7U)ZWb}k!KV6W_1Keu{dlTb>rTbK{H=azb$RGWXL~zZDiZY zDUe~C9)_%Fntj#5@|FvU$5P%|B>q*Ar|Etv{{V!7J2~|0+hsDd7McS3N{P?%y56|rxoX|D&JG&2_%`9p2V_p8gIt(CI8%yI`;P`UgoBU--}(V>O#q~M(U zQg_`Ht<m*@U;CcAMO6^`K`;NfEdE0vQ{3Z;vTcc58Z%_6WxaB+eh zX9wDdropt0iFFH`h23#9vXFnjn$Dk8f&fF>o_m~{sjR|uOPJ%5c7HK<0-tn!X^DR< zY8Xol$;a^n{{Yva#Vtg&Wy?)Y8MjEPu^?<51IfXzYU@s0ySuBs98YmLc1(a+v21B+B5)9&=+U?r1Gw0U^O^ugVnXQ|?!bK*&?ZT|pt@L9*%VTcdqQ+uFsYeSRKJRjm! z(%E9uni&aPJ;4$54KG>^}YEfzB_3N9$IH zhp!m~kTtd5JFKFfyMm3CjB6ba!`fBKPOp1;I&!D(E`F5#PSZ-&Y@BGvBFJC=^d>RFjeEJ*<;cW$GBnrqA&>{7nbGe=4+jO_Kfr=*|y=r8-tVDTa#IcM8K!c~YXlVjW%Brpr z5zuW`UFrv6oPSEu((ViraT_pZB%B-%tu(IeXF0g5qJZ$>i6JIgFrWj4BR{P_P?J=% zw8oipaT^1|Aw2#Dx~Q*aknLMieKz!~iww_#(W;+L^BxiIM5yIPc<}89ma+jVdv9!My@x?2gkgkIO zusFs~HPhNO(_2L=%QOzlxT6qupX*ZM+tAjW)FF9wD9hkoF_ENyHggarBw_#ncK55X zTHDzo$8W@ae)djJH7sp-w*|h~?h5S+Q~*8tRU2;*U3ha7Wq#N!1o}GEymRY@gp?-M^v_v1?{X>@SA`?)wV``Ju8-YIL3!6 zTBW(y3}cmkXQC{NiKM$zD+eTOB#uh@W~$g-sETsrC`p_EPhe<3&be75FW2vi_ zRFFK1Pngcc9tLZhFO7K4UefkDG4i0{7f#nYS#{VVkcjffx$RtM+BKUy*#Nw2HJ!_X z(y{~G0x`{9u+ga_;;(X=OAG$}TNUvo+ z=aFlhUkq;UF6{4&_epS6$I6k%2Rsk+#dr0IplH_GLd>v4$Yk5Qb7wftKbft*)emx! z=N}PuT`Nu0tp=f@i|1%bS0v#^PZi4PUN6z4yH&FA^^^pYm)(*x?N)v?+DUP&>CCrH z3X5V08RzCT=axD&R(CPnJnqE~a=67(LT9tft1YFxVhuXgUQ48d?wnzPIsFB7R>JD) z(m8(98i!xHBgh`r=XZ07G%G8Tz-_ySb9!Jf{#Z5C{64-ndIXm2?8eUF;ZoVjUI@uQ zQ%RI!>s}z2Nw=5Gg4p6;C@FvtPrYa9J|Mfilgs|kvQ4KYqJeg=rA6@$<~v)=^uFS&D{789C|2H1!611p1xo$ttYsHXL9mt~U3_x}BE0 zacwK7ks5FLP;MY&Kc+==QZRX>EO1B!^Tu#9UOD5t>7wx!+;OUmF4ccPK+pJ9NJ#Zf z2gQ1xwQ6rwEB&IDx$(#TH^JG+$(}Vn9N`qI`3zb--D`gNTILmH6pmW-d0sJF-U}o3c zz0%|e<1MtVbLm@_^Y~tO7FHH=0dX5_XLiaE2?P`Lq~eSe6xuz2?bO} zM>+0Dt?hPb?8TvbS*G0=0zThUT?U<^UPgewA=yy}8!AbJ9Po9sp__GT#oOnlfoMh~t( zTJ_uSANXd@;q529e=#^Jkg**5fmm0*Dbc07mT2^-E*3e037a|KfO+-F;CfJ`4kw!5 z>E1ZLjTYxmbU?#s2#7;{b6p+Prl&TSqrI<^ZeefUEY1KU7&Yos>3VneYcy8K1EFOk zWaky;lB1@JY%Z>n-F)CXJN+|UAskrQL^225T!=rTQYLhHL9jbo}*Jq2d z(@nVmk=JPS_o|N-+bRD5K$LOam;7nmn;el0SAgG{rfi$j^C$c(rF#pe2mKY7>g!dT zOuQ@rj1GIS_NoJ)G0V<&{%8Ct7CB1r(U1G<{3~$j7liaqpWgof>r_jkU9$4Z2eCil zK#W-t_MhIVKET#Rz<;zSAhv6-Z31#W_!XNzhT+sR4dz9`=cXx%nX!rS)kon@D>gY{ zTC3sd4l^PAKMG&?M`XeI+w-6ikRz0jzCS8M45vAeepReA83O(0{OPAeb?R9DC)$wA zX0>t;?-%l@&5PEPJWDr;%5=b0-}tdIlp{D#hO&|zbIgJQ>~JS6f|Q1S3#lL&n<)(IanYH6iF^eKEtW1 zAah6}T2C8dA`A2K``1x`3p)<^!qW7`D&lcSJ$-?E(0e2090$r{6L07BvL43X$*j8 z+=E`JH~OZpE%8K<+FGsbjH*?g6t_Z49=PWekxb@|ghTGe6#G;UX(}9{HAr}p7Javl z(SNrF8Gpo7kE?0hcm1y6m(_8K1WaybfMQt59-vf4cqczA4Eh>{wS6hLGTfhDMM-0* zX_DVT3|?;La0cZEKUxK3Jyk<;D^k+kS}(W{K9$d2Yu6TEmQSP?hV9eQFuJS#p~|6Sh_Tut}*)Z>ULWac0o|?7U9x{O7`l}y9E)c@5t#>_^s|Q8%KqvX#D9~MupcHUzBag z{(a~}7?&{3XfA`4i1%@~6@_`LtFtApNCW+0>G)Br$sn+TIrfOM?x`91XnEATH24kKktf&-)q3| z=l=K?KY_$DW(zWTyVYDPg!LA zsQXs7dd)B8M<_WRb3#2T87=YJxoo!m}iXo(epPI9R;0C^i6%+8{{W_xa*asd+m5ujALQ3E)>j1o0Iiq){?vb9 zx+kvbZ~N@jFQ?!4xo`XI(O|jSGOwuo>Lx`!$LCyG({A(4(|_Malxepkt;zh&I|a_b z#4((Y&Y8ln$r$>I;@&Ai+vYbO^dvtp+{}L(EG}be@NT$&uM}F_G}3HB2dfi`j@H^+ zla)AC{v*TBpRct6xuZ3_FxqWKQrYB!Ijg#37L;?3+~f7Gd}+Qz2@ILXYTwd6 zX*zU^`qW6cnp$bint*e)*-6GZ40BYjB#d3k8Gs?W6IvF86kra1b6n23VdrY{%jRv~ z6yxxr12vXthglQ;`V^*UzvrTUb;>@Rp3Xyk4KxBc{Juw3*LJRRjv&YR{yf90xw-&Mg!XEcWjWIp*d zr)#C{A*GR<*b|B@E1ebI!wK5T$Jo|-TLx}OA5%+$8D^+P;&7Rll8Aj zwEqB7KDC_7fo6&*s5BC*UySMZKJhp5HD;i@8MByY8Acza9YLM|72;1NuC7Eu_k~qd z!OvXtMw53ApQ}qevm={?D(us5Z1&)1(yz&Ha+7KvLn9Ss!ny{?$0M4l1XnY`<|Wg_ zI$$VVA4=KbBGXB4y^K|PMW=nclIjrY*#m5wj$l5U3#ZIU>5_s@>T~Zy%UP zm_BvfGCrB&yv6SvEYnQ$s#{^%q<_9T5V-GJnpE1ZyCh7?ro}#JrcSsWkG*2>aZyPf z5yZ*ev(TlqvU{Jj%=Z(@Kp4*+-;Fhz$Tmiwzy7+n{{UX9i@=V{@BJx~U4huv>O88( zPF&9H*@omP{ne$sewbRH?e{q0!twkg70*7T5N=bBD<&GJNg^ zc8|u5K+?a~KeK#1ZsG_o9z}^hT>QlU0Q%|6HQmjzl52@bE1W6XD#B=%m-Y(<+%n3m zAa!653_I~tu9v8_-OOW7X)VD~3pAl}q;hb1>qW+3**SABnCE`;j(XJ6LmZs415;|+ zdw6ykF7H5SUPH1d4qTJi1Bz~!acQgC%W+`RIz-!CN`)CtGmn45non{huevfXG{u!j zS6~lnhD^<3*`)%HZbqp*xc;YNRxy5Ab4Fpmv+$8&?8A4FwC?ZT`@><7jta`+p4Ac|U~grRjt1j2f(bD`9Rj_NBegHJWjIGcIYx z-J?3s#2QuG0~PdY{!vnr{Ehn8pS+AN7=>-2+jOfLkS||K^qG7)rAos#ig0Ul!unm7 zo%WcmphQ^+X8>m=o22)+;aW14ta$yeh_w*=j;%DoPCT%LXWq8#{8Oqxf-C49<2YgF z{H>2~YV^%Y+R6z8k=j5cC+~>I73ID!)ote2pK{2c4XosRryiA?PA5ZU?PE|kep5ou zs8Hoe?^k>=9;K(h_NBBoGQ?Dkmq#Gu9fw0)#r6Ha_F^@($u0&6R_7nms%g5Oln6=f zuHBez+Op>#LsK1Ipu3*Ickx?PveH>#@Z?Ey7!A?L3|Q`Q!K__d;x@B)l>0!AJa8ib zR}n3ap>c5))}N(Z+Sn^^XTOrXH#b}3h6rMb_#g`9 zVi%Ves6Kxs2;oP{Kcx$q?mapkoz2v6CAe1FzG{wshM>KIT}n;yPZ}usaOC6g;;{8e zE@QHc&l4~DW+MLpZFU}ioo{J2w$o`)$#tnuWb!%r8XN{A-=5z}a%nw5Y$dmcg!Y#* z+(-nG@{1dW-YXK;>0xFPG}?54;diTme=6*cgP+ot>qwgU zt?e!*g5NC0M3MZ(Dm^pnO}M>+H#0Op5Nhz;v~lV(TrS+IEV&(h`f*)0v#wmk>WJhP zT<#ziu7AV21Xfz@%zkn(Si=_R7oOCfGniXzQNtTCK^VdHr4`g}T?*4`Gu$~6%J20x zoq2usXr0SrZztGPO*S1{HJ_6||Mf@i$u+qQ0%2wJW zs0R6Vf!Qkl+e;+#zfO(!PJBT5lFDRr2O zk#7?@{``k%{{R||bp&N&I|9Y9k;a|JUV46bt}$=l1cT3f)K_|((OIYxZ7ijOaly%< zNukP|XQ8`z+I8K;bETr0!?LHAM)LUR-u1hu#X4!Q3zRD;Pn}Oted~kp9A{A0LAaYN z9LmnwJBY7Pm&pg^8_&N3@~t4-)aI=itpu@+Byx7{$6DvLF^xv#D)f+yS5XYD8UO$T z&<-n{*94~INofkZXEFl72J8O-)~l3c*20A09;Z8XWtlP)D0=Q4DbQO-0&PVDJe+i@ z(`sHJiKGpq$0S+fY@C7h?^?bb({;}gTm@Yn?P1T&Jnj`o)4BXB2D_aRY3mkC6N7Cc zo}o>1v0g3SqL!+!CS)6c8RMR&y{}LBZ>QSAWxu#--)|rtiT?oCtV^qX6x{y+W>^@( zOp>^EvtI-tXkLW8&MJ>sTdmZ<}w$$c2-NvTu^GhUW zCUYR;cR)bfUXxy3@OM=@oI1;SdlEN@FTO)}{43OJmRp;xj}`dcESC5Be5)B`FzqBa zL%8;?CrQwCd+Rm2o=Xc0X?czBWh%@)LZ~GERqG!W3al1vioS9j<(D{8YlXgsJwsKN zTjnf?RBViuWl#qI=cnOU6`?HDfcbtMHtx|}tT)#AAY~spACa#^@Z6B4gGU@uLh9c) zmH^%EYn8c8ICx^v*jpr6yti2p5_f##*XnD$i%qn*mPsPEMKTZ=j^I*dEsk5qw${&U z1?!@gk8*~<$S0;f>&JAffOUxBxEs)1FD$v|HSGRBwDWv3E1(M`KRYPkk<&HIX_lH? zIxU>S2u@Ho_5hvVS`gmGh`zO3$%BAS@(yucW${Jr-&D3}5qXE40qSehacwAKBaMmV z@HwWvt(<@fEg+KvjnM;&Z&4m;;Bjoaea!Pg6GX2DQ72b$}3 z8yhxcjcw933&@Rj1Nl~C=#~E*J31;5O=BavCsyAKlF zg;m^_nFWSH&-13j_b=$$k>2}k;I~NI4Bl4!0x^?NX`1Akrn_ft6@)C@DRqwpMsoP) zu*Y9oz}CERs%duerJOK3GcupuE;0^!cjL7)!v6pewK;C#j`qbo*=JNnhA|%1Vl$D9 z^HFk<=vqa`i2newAWJLTHUctXwjh}bgO2=Db%-zSEL3W#0GN-KSl4SQ^fk?1c!ul4 zmX@+wyEpG7jzq^yIRlU~D&$@vlTx_*EcbFSb;ym#IU~MB7Ymrz9v{&qTUhO{uSL^? zCCAJT)99d)-mTc%_%}h*$<`Y7;`V=;iHVNZ$v-Lj9<^p2R(NfMdVFi=M9i|8K3?ai ztt`GE)}f4q7Psy`YiLk+K6Zbl zBUvjRNzb(_g|2brY6O4BijSWhf&Ty+$JAiBS)&fo?lLAY z4m)+KOqPX?)%ZJxa6Nsg-)3%d%b%hD02;KGvyb^`gXpLHX~NP{P9;(Q00930>(OzP zR@9aI%lUux>5XTT_s3D&=~so6*gw7lp2mk`;4T z;y~IDgwq)ctGv>RBbFcJvw?; zv5Fjh!TD57AprcJr2{gI@ni7xsLb*6kL6k<#6O4s03E0#k{}Nsr2;vt(dJ$@-r!=o z4K5?)#R_gBB-nA#`tj?U$+~F8`H=7ejD2fX&K*xmvWjSJlIkOt4y5IQIs2#P{U`wN z;aKmrT%H6?_50$rp4(VmDJ8R5k-My{12F#pXEmAOi;cIsl&pd$SYB6h4oA#5$Kzd2 zk!d~nNoABO$&uzta85bt)X+1}H4BYFFT|IT`FA03rI2*>9jm0#@6M$PDUw+pBm!1o zKpgthyjyP+I@m&Y`ElSLgB8$dkw%&gx0MpK|YD4+g#2Bk~hgZLik(& z%nJ^Cjw_JyTX|ZNNF&(0h(p-m*P{4#(GAt>x^9qPLfGkyCm+tae~8h%FK9$+s?5Nt z0~z{IH?aV5E{|ul@`Qtrs5K;DzJq>1$!*{P-;7lqCP^jJf~pJ!5)gW0p{*+&CRr?C zGu+6rKR#S%Zb3c!(?Vw6kK#K`3s;&upucA};o}jhW-Q@LD952%<)Vb#-0GJx!roX% zP|R_F7p6UHZYwK&KT)!1(N;EDBO~92{)UrHh{@s0nGadK=lb=bBo9;1bg%gT0JA=l zr}Gu{)qInrkM!$5`s$y|*I5S93{q$?srvCs`)#QFO zJ593_g%U~s0HGR`TR20cMg7`n(c{S>NYA0IKet&%xsu>7)EZN)X-mi2lRrcL6?~-J z&WA#2ZX=0VaO?(Lbo@s(V@$9RYgWPS*kVzKQ@MY{epR8TYSt6#R?$T`XLkWW2b0Yv znXFk$ty|ly*_6wS0o+osT+Y3*hJ8lq(_E^U%KjYGw<4%=}ExLq?(jwW^n zNH+-8QFv~9n(6NKs~tWIZ8!lX#G6n+7;i<}!yjQ;5nbKr9v-&)J4BaKsfu06oE&6~ z4)v|5TiYjRu8ug+T3$-O#Kitw*B7MSE$@x4 z#8S@@F_+$$83T-0S!Hb_*xk(6GvuU$%g@TZbpn`)^!!KR`*Hrz{c~P>tiW4Yylte9 zH1^`VSF_HO1fOcTOoUyk_#bzzdA_f$HLkCB50x{B-6 zp$Adq1KOHxGI$lu{{X^4s)8`E1DH&qs0@D zKKD7Sxi6YfUYcMmaxIQ!TQ8bQ*SGS4%XAdY@j@GJriQ&)FkC zz$p71fAh_MDl7#T108Ax#yX1BHc|fo&n5h-17?GF?w9hS!ZTTsSLR{))GZ=^cz$&w z!db}2egLMui|xxU2di;a$`>Q^6Z^ySrunfBvM1+IOB895_m7~gyO;v5P=KK1ulRaY z@`cW`!_tASL$u@&%bN77KlKCaURU9E#;0mY?s?C(dYzy8kH)i^qzg1rMP_IMtKFTp zbDnsOzUay6=~e|rGX#c4Zh=WZN*3U7cKSw__5*zqYBzGsM(BcUZ2RYd`PL2Qv!H2u z>>7Rkhd3`8mG{fL)Hbl($P zSi@~B7EYm7-d4|+bA#8P&b?Pg@P)ROIhxfa3|9q15~6;&om87zP^4!k9<|&jgkaRP;B_5cu2qhF!L~8@ z3c~Rpg6w0lAJ~_6&2pVmV(q`%a0e8d1de*gQMbBBHzMee*j2Ye#lK3>Z8q$&HaZ2w z%zMu+#RJ!qSNtcc-gs9{iq~G!E%vmB4{1M`$~xqz&mWF`sXRgPF4)f@()ES4v=|7h zV8&8$&n`y)SV*A zgmLOKUP%wcrVvXV)yAQBDLIdJ03+WOjC^OR-AGzEV}jhuuiW33$lVn1?P2e@e7LT9*IJeCu0GXk_K4n7B#f9%huC!OUFMx} z;l09B^?GbXL8Mh>k8vv#0E6|xTP zyqe~Zg(GJzs9ZG6PD+%({cF%z4Dc#88-^J}4{@5MH+@yi8So_)9pk0h?hC6>Fm^y&?lDQ=Od@(S61%zPyuZmjo%NqC-SRxVER}o zLUB)-+{f|$pt^5|T2C*3?-T@HKM&Hl4HLz>bLvRfgxU;n(sI9;e65nl>s-J5E3N6vqW&D#u}$iXrBNqlh&3%n+D{nB@Z3i#I;YI62$GUrU7|n^cr}@&_-5ZkcDN1|wiV=c_NZj>UY88wGc3RFn1~xkVo~IZ_GzYtn4IPo+koX3=Ad{kTXZ zetiD5=XyVjmq+`0>iT{7TbZ|sBa3pJ4Y)s$HDLI&!OwE@TU*~GfesO(J3;zpv$A`d zU7a4Y;~Pk?W{%rSnNdI~b3O=s`T%Q{)OG8fMN3GLVFoe=PvAXkWj-C9Pe5CVH7lE2 z>4}sB$|yYnUf+dzAqG|gz< zL{bcSt_UCkew5D|-WhesS)*v=Hu1Be1Z*U7D^tS@c(z9M(|YV}xFLW56Os7W0ds$I ze{&?)GQ6^}<=FMA>0)Hd63*?wIHr>vibSN7_5T10fpfF3zJh6xB& zk_dx*$NS7q6nmOaLT`3(Km<@ETV)Ad!hf-@^8mRgTu>*krUUQNFkz;Z`gmLwk)Js{^Y2uq*sOIdBbHQ}EdKC;o`iyPgZT>PwL5@rr5tC> zY@X+nTe@87aV#htWIi#T!1b<2RB`tCo2Ffl>sqwB5ZmfUB*ZI~132JRaLFlh(jE$d zx6svdCRhbIC(@?~-~h*9{{U;Ra_N)risyt|k3;pQJ*nk|H72$u zRO2V9+oq`tjk``ybvdgLX|hZ=?PXl>Nb6pE7?wGel(LXVAmY272KH$lRFJk6L5=*( zmd{*+(y7*xS|U~!64cp;O|iF6I^d@rS-=2P7hW^9vOZmkdD0Fyx5|V1n&9>AYUWG% zqiI>TF#s{hA3<16aKx5(KD}u-+@)yfk=JV;EYx*8rN!ekfAh*SwMY2VJU!w|e-F)d zeQ>PlrhB z-d5VXK~?A9y=6(^4P=oda>874QTeXc>KI~*);J^C9CInh04S|wfn1Zj@U4BC>R{{5 z{3fr#cy&vAU0yv(I8zN5m*oI5F!`@lt}nnysJG#LQ$P6icDb%Pnn|O+lWqyK&weJL zYZYOQz%DcOHRXOIzI`)WTaY(IReZ(vAXl{bw#P-dnmP4mMKQ;Wyo{p+p3C^xDXaeg z!VLlee%21#0bentB#zwTh_c!+w5!CMM!1n*bPGMaf&B-VE7-(=hU7U`83c49yxI** z!~X!-7b8v5?HsDzf)a4fv=59Q)e7;TRcmYLJMSf$28umjrJ!Tt*Pw7&>i-u2^WoyU#1NIk;{8rW0VGgKz#%DM*E~%&w=KA5lFl;Q=8tE{0P06k z%{@THZ7))|u(6y&Ad(qXWF$5>1A=e{YCFH(_>S>OT&=<}9s2rJ`21(8o4cDyuKc;t zipEX|Vc7kD#OMF-j%MQ<$PLUJ>o(xdR! zy=eO4zmqT99xo^oqaS-Y>&6sfx=mu@!c7wf=Hl(wCQBn5FkELO5->4> zM{OJJcJf3UKm(xXnvNY+qQAMg2##_vtOhw5tlLd?{_jOci^DfBYvpW550J_RGn|9l z(xSP(duz*wO9r@LSNBVja7Wj*G$wQw-XplU6WvMW`LL_Pzb+S`AY;91={N4z8_d6F zf_q@i8gQk-#z5_y*9~W^7qPgM={{MG=qo}LmN`?&8TPJ&NW3>Tut@RwJCT)y`~>@kIG zbjZa_HAhnSnY>M`JPzy=v{1CG(X|H)1fNw6CYsCy*GeV-ccl4DND& zD!cuoWhyF(e7TtLjtFncriRsCWLKP(Y;XYQy(@<+Fbe8eKf1Rc@FHp<7NSQY+;i{# zHPh#Msv(&ySbooy#4{yxv)7^iSZi7aL-{{SC7{{Xlt$4-}z^oIWcz6Z5* z8Wx(a@8`;87{~-;`Bw1K?Ee7gh@{x;dGXWVJkH1d0xA~M*yI_X@)hXENwPg*6pN%- zuSgg1qnIptjGAhNC8d`iTB_C&U}jg&KfPVwiL~ogIv6D|iNHR;u`&G^BHj&3BK6U`9$vL4hSg~(u zY+@X9{`Fd0D`p%3Pu87hWp2?a=aK7L_O>>`)Ri5&ns)-U8ZtTq?g2MVAZEKC z3EN2}nYg)mIecWCwogo+)sLzLj`acol~bN8qVR0U`aG*UDt`EUta|hM&;xus3^Mqe zQAbs0l^ifW>^S{vu&}U2x`GK1p!2}sa(+`>{+YOZNYs`+fw10NGM>3#{4jZJa9?tSicl>G}AP_Ih8qSUp(ZV2Y&U__&WaQP!pR)TR0uJ zd6Itd-=5t7tiOuTtXeLd*B3VvBV4xj;IJ6&+KoomhbN@2-3Atl31yZ`SyKpvjO1gU zm9=#DfZ9cCrpmiwKuy3X4hLLyseB!GY&7c#SAD&tvb0F^5YL?R&|p^2jOVwsxq>J! zOGwM}7krv7E?o=-(`CB4x06%4MUErC%8YT(Uv~Db3q2AmSSIppTqw7bY_c7^6+IO5 zRiwHP3M4Y^nWHPbpa6Rf*w5=%yg#bTe-ukHG>`UoN0(z9;ZJ-8{IgAhUC$}g6B>o6 z^qGJ3D*DF0RMS`fCUAe(asL3JSJibB=oI>q&HkmnmE`^~cw&)7#F9o9Nj~Hy^Yath zy<&0umikwc`0FXCfW4b`KB9<~Ba`#Ao3s(B4*vl3*AXB5da6y~*ylT z(XH-cS>{mNhe9(`9R|!V?!(3J8<9<-IgWov&}FsOZRLySksELfMmip(RXaE$()D<+ z3ETyRTT^C+6-ODZcj%5IalLI3F9k}D5t?e@Q#@5{1 zTM1Vnx6RHEa!qj>eDK@5tU#=6+>BzkAdyna?&Powk1a^`J%38d?7Je)vukgAquEVu za`6|tXLBS)w>N(MDRtP4ULi7D3tu@Ad638${Fog99A~8@uMqI2lEH@8neb26q46}W zABtxJPn05H4##M#=CT#8b7>oC8j!x!n%-EuECA^gk|tF?g7I3JB#@Y6#D-Q@F0 z<)g=#;%S2%{siOktlO)rPZHe?u|Jt)#0huhT=dT0P;<}HmfJ}UBcy7plZhR=0ZGck zNj=Ta3_#KNlHjs1#ks-92Pf9MjW$5`I)DSBNrUti$?0+Ziq2_bc#c_7KX?;?$@z~N ztzQmmHn&mVLboontTQvf;Qj`w2$NKkQMJ>cmIDN~f+&kb=WBzvsBWKu^shD4 zOtb2l|%7~0<~s3cdD z2M4;4I*M~hBe=16jyWMStT7mX&hW<=^`<@j=A~lu$EUJc{{YWo4hhdu?Ok=Bhahb_ zHA^T`IaOq6)M0W)eQMUN_Ly|@50e5T#$z8T7yxGgXC0~(I+t_L0k~h_L;2H%)zb8d z59e1(`(x6gCPC67--xZOXL1j>-VTsQ`qBNTeh>V6#rad(Nry{g{{VdoX}Opm`1B|K z1SwcV_S(hho11uf82hzl^{dDvM^Lb^{v_h5MS95KwVQGN(5Ky9LnIlN(ZXl=Wag;} zo7S4W_05vW<||~JmKi3R+J>M{%47ckz6EAk>IOSBNG$&Vb~B90&svxJPUw&L^Iyg3 z47hIfCjS7IiT?n63TeF67o*00s49`vuRrJ3Kl|v@KeX>j{{W9j{{Zi!K#QjT09MHV z091MY?L{V~t0_E1jQ;?3s~uAGFdt)&uc@f!)^B5xl-WhW$5TKPomW)uB0umNhHXnw zSi##6B=y@+KC^OAlW7hH_L<34LgCFFD~a_B#|Sr<7$D5)6=Y4*5(-< zvirtIr!^xgX_9$%@P^znS-CXpdzq!YiCGXX;h$Pp8P;H&bB=n~IeN2=MsTtax#%mT zBP4Yd%IfzQQ0lWROCH`jij*=yE;j!Ft!j# zxoG=!E43qu0uX(`HJRc|b(ZGc*aL(k^{q=#46PtJX2B!-ryu=uSw1SBSWT&ns)87D zK9rE;W}?X$!W?}CNxtLz=CR*Wy90-h@)cF}tK>M$XYi{a=uEdGq^6;3i{94<@~(BY z+vC-vAB9(wTfQd?Cmy>+FgEYCElL;}mgKGwo`bDZk6G1D);Fz!2Vqt1ZYH~d*5HW_ z2+0)?A29=p2XHfE1J->j~E`6Nd?Vl@HyKh>hHkW+E z<+gMARJMU8Nuau>p=?G05@YkPRkHs8QTW%CSn1c1U0Xb`NQ#n%Cytq~RMX{2Ew@H@ zE>AU#nrPA+mnfo&%+v)|zT5U2g4rwOw(Y%0$7-`xbp|V^T`=k)az7(N1ID!-Zt6Wl zPl`9cYeM^7jGQuKfG`FzMZbwJtuF2a7CuTV1WTn>c90YJ{{WF#{{Zlk&2tJmt*WF< zL0Me%9+~f1I){k08<0eLq;~O+0!5RL%D1v2=c7%oN~+I2%+q=d>>rzAu(b~sT3g#o zG|Oh&NC7~qZ`|GQ_rXH=dXZ5SvZM537KVr6s6DQ2Un>{^Aq?lVv zo{gaRtu;+XJvM7#lSrmW+98ArKDDv0O>twTPbHazTqyY(VU^B*op2gPfd+@DLv?ws z+SpIDpjf94{M4G2{{V(c+)Hzi&0+er8kK6S>2=5=8={*0isc` z=hqw>&D7`9ubm}lC4Pr+G~G{EwAL>zq|@~O0J5q^(U8(_FYZs$t39bLjAP!kgl>$g zRONaU*vD;s5E97ox)2CZPt%%MJiDph&DLSO=jLp(k>41q_X=8Y*5#%0{{Xoef7Z1k z)3tcQY6D5SUp)#WuaGi98TRk_R&8scq+4q2EbebDZsMBC@wru5RnAK&&m8uy{{Tht zP1c^_8kb?73(3;_u8 zK?e`rKxJ=q{rNa z5A!Cwmx5G$l*j|`FCwe7hs&$W+27+QX&NzgReQ^}gqC0vcWfEXPyk&Y`) z+fTBwY+Kq}#z%FGXY;5Q;ZOqZ2R^ios39aquOZJHMr#*VQr()WP+KEHSx6kQ$JVo_ zyCJZn@y$mu)NV!+0TQ0_Ha||a5zy`?1JAw2e}*BC)Y2}-OjjlKnZ9m9gOOb|jID4Z z5A$)s0;}6-HWqT3k~Vot{LLd|k=nHtK!xH}3IGR+xXmLe!cs(rUn)JmcV4{afjHU; zP{XEbn;;HydK#Z2U{Tk2uAX$QW^yW0ce*WO`=w|g9_Phf?QIp&@sC+_oIY3Ok^ zt1I;F%{Ux(6*RW;L;;pIUEK+&4_<_QX^0uf=xQ_N$bWenlj;TyDeFiVy(=r+9=qyS zlFkP?R%G@gBC5+}Fy=6>KiNF~Rj05K%>@*9&048aJ2M$jr!CRT-NP`>VL9|_<#lZ; zdz_OTV0$k$>FnHKfWy#=uPwE-qy0cr>MK==m8~RV@QG^{c#Y48ZV;D5!1bce!(D~H z(H>$wI*-=9f?XClIYv@_7*%J|ZXyS4X9N4aDaLfAqGFe|g4kaNrOW9D?bvyITAvlg?0nf)r}*>+N$42 zZ9bpp7E+)gDtdM9D?V|5cWR9e_#`e>$tRSXoz^kx=N0Mx4)Fb@ z){&*^QOzQU&z%_ivkdpID1$)D2f1dIkFPcCz7y6g{{XPR&IzYCPy5LeClxL#+M3;-EvtF#;$o7tKz;Tc zDo)re3Qv__GsI?A#dehLu&Rm<3_tt1S+i&8+@=cUP^4B4TZqRBNd+^e8ZPa zv(xXb^^`UazCr{5*a_78UeBny?0?2Pxw1E0>j zHPtLNB_3X{6JX_Hg@kISw;fGwMue)p2%S|)d&u)&4BkXm?p;RuXf_-qDhoR|A{=PAbH`qmW7VQX-*LXrXix< zWAD4Oo;9o1e&Vt=8qdujst_~xg>GqxVvy}2fa4;$cGj=85wsMFB0gB-7z6xkZ$i9< zZX~kvhuWh}?->LgymOxYYliXrCvBvcy}8HgZXZ;+KC&O@R3?keksCM|BlD%coVD!4 z4z6g5DP`o4i|YJTv_pE5N3{?r=s2y<4~7jR5r9Wp$W%lea(zu`Y10K~!RH;TNN!_O zSlH0kZlXk3QKa*;kWsJ))~Us>U&5hFD}nvt$^2=zR`X9cnyOeHDyv3!bNJSBsHG;8 z)f-Wz%LMJY>^}-MDK#5?OuS)QHi%>%x!qolE6ctOuFHK~WBB6!PhO>1OLL`cdH(>! zT(nId)+R`mM;s5Cx}KHin*RWYWYulqVW?@==gB~R(Q&nh;mvyQi9AiD=(kpuy0jsvOBY%E~PrVMIv zx7w?lL2{!DPVr@(^a&vhgz&(QLG-R4;`En#oxYK4r>io{HsZlg1a!}(ddX{LOsG&j zmXO@r<0W(H^43amZp(7@K6ABu`$uRlZRTcEf>jud{c%>Vu5Mn&aRr^ryCDE9OnQ%{ zdv>LJ7Uc-1Y5T)(2B9~ofCPt+Kr3WRK5>sk*K_h|m%sPr{{X_eJMB96Ptn#y)9#h< zyI6)L$?6K@<*!1v)u%o^)hy+i{>&|7mN?k(ta_1IUN_Yn`vT%?JFnkF!<24Unu$#( zX2z+uu93r8UR_#C6qEUp$`}(F;~vCUdt<1qc5>X>OqP+}?v=qVPBVr%3D6!o_pGlA zv+7m|*N!JI)ty1bZ`{QltjLhV7T7^WLJk#Jf<_0a=Bt(U61A?3RnDoR-kp}WYG>#+Ta?NAgz9i_G*;ajiXtj!`>%&+9d8;z=RSLPWN(_2jUZd69mg^wq29ZBg; zjwUsZojs0|4TN84F-IQ2+hgQ<{p!Y^)Qx6!S23&L0#_tpdJ69CR%U?wfl>?>$9Xj-+QZ)TINq7qg#^N!8$8k8T zvd4VWyoOoWJFk=;JQeImy;ha3$y7FtHs>H)&fhBzM(#eDr+o?PY-#$XqiKc)vMV$G z_%|OQ^vzaXWma#nExLoa=1vJCui;IE+)7OI*+T=Ej^MAIxb4=cM8$PPQ)XLpaVFO9 z@6wjVTEN!4mJGUNUNEKB<8_%F8@%+8%C8%8MZgr@ngUe{kWBb_Vvm@1FX%}*p z8-T|Zj4zT?Bx^mn+BY(le1X#^+wrS5ejJDqb1$0MJAhEZFn+w#BbqEC}qIsMuC8 zqSP*#d4k-3+gASo;%dTQ-0tBmy8i%q&-ABUURv9aGDzoD9sIs2Vz-M|w~pc$DIQKT zyqah{jSV+kp4rJM2ci4_0O4An@RLkO-GqO@U;HbbO%RR4?LGehxIe~^>~aVEe0Kim zqd>DapTySye5Mck_Vr!7QFsaYq5lBCNBnD^ip6AYuPZOPRpivoqr;wOZ_s~AS_PRd zt*u<&s)v>_vz5eM{{T9{lIGxyn}9vUYySYnR;%dt_&J@wPw=RYk7yS@aXfmDe`gyida>ndj-}ATpn#nl6QAWL#V% zxj1dal1@)Gn<|#+$NlwN^4;mNIY)I?9YI15H3XM>aRVIZxQw6aO|}*|tGLhGInN94 z{cEJ~3~|G0Gs}(bDck%^N6=PQs$!Q>9#Y{-o}(4gd^|s6vbr-y%f3^NIX~8dQYzT9 zzr<}xl$DXhq!KzD3~^mno%Xl6cb@0x&Iyfnllb+l3q3yn0R9u}yT!DaLgHPrJY*@# z@yYkC%UexSI9^MHSR)7LcFE`P#Ya-oIlqZ)44Oz?$B715l21tp5OsdV##qtVR#Za!=jIQCIEtEjAp1aT1K@01;T8Gr5aa z((U51aU_X0=3L_g9`uIZmMLkOlf$}1JGPN`Ba@Fx=njmok-XP3$W8|zF9iEnIiswx z!DnvqkkOeAI`Vo~TLtRO>2Dl!yofSF#Cvnp;+ZMC7Oix0+^R4SGBIfr^j_pwqBu&9x`N8^sjbQ3l*E%k+_G#s^TpjFicm;b>PUE(R zmg$TC022#;`tCpUD*B?nT(Cp^r2xlEf&T!ZSJZViItrN_-|AoKUPJK$Lb}V00t!ci z=y6`XKM+6CysKQX{@&EQ$CSei*9?guP1r;MbB;QiAXJV@FBRL`M3(PwE3)uNBNY|T zifoA??JmQAu{PS()jl8C*}FWtyyc1D3v7Sv)y~b~n?)Pu)b26rAsqg+qzKT^HJe+l zby6?3ukNNel0ZlLw)C!cJzPQyIk=GLr<;LWdOnw?X?OnsYg^l?NR8v$<)|Mrl_#&h zYB;No1$$bk?3%}U^n4++T@zdY+KE+d2v8S)7zsM#qxs z+QyxAb8&B^$+<_&H*w~Fdtv>3@_j1Z{mhzwhBW9LyF8%JC#VPR=DWoBPvP4bq_{{f zlgsK$0!}M_+rc_T^{BeNvh(D4f(_0_)a(GGl@FNUgCxEY@at^KmUaOBYZKyx(m}7c zlQzj`*$`32atAf(x0(i<4XwSDP!zYZhje3iLR+OnAB1dtN31>l?W8W;Z1Xdf0AsPH z(zS(i3sLa>oO%_!v0J2b#~ed)FDK;y=O5>q=hP$Y1|#z1?fw(*Ua_h8c)pb+3o@wK z7v&ko2*+Qga|gll+(8AqUn-x0cXM*5*AV>Z^>(AwHsJTR8>%)2%WbKb3Z za?TKSBoQKyDpmPZ1B@EngTaq>VAN9g$ZeZ8d3hN8>IYuHU&(3Kqrj# z_n~YpOifPSHEk(OYWr-Wz$y-S+x=_IQ5q`^M%*xzMRF&OLD2Rf`*B{eufk!ov%d4p z0vmYHKF#ZqoNRlevHT^xbd678i3_%>H6Xwvnn6&|~qdei*Zh zNV|&MKbl!2Ag{So(=?RRb{wG6xywDQpJ}~#ikF13j4>P*A##83qg`~CkWX>uNQA!t zoz2){xGT+dZ6>)$t(B3dEhv$T7QyL{LO?%-by`-mZtaBk!rt0OJRp}R9;ec_jf|w9 zQjV&R9<NYL7IbONRtQ}3w$BQJDC02)W;|*OLNEUm*Sp$8Q za!dB!dr;lRk<(~ffwi`b<}WF5yz#|u>o$s-9pt1(xg%ynj)xV`cv?_(LYuM`6mip~ zb-LgO!`Gv?l;6s-yS<7_L&U}H_6P4j@!Dy-zd!QSenOxJY zwJ~%XVy-2)kz__HRipzLu8mBcgY6fmt-v3ErWr2}{JvxIsHDD-TLjE9MC~=m-^%ZKGBnz8rehhDdy~i-@z2TvJyQH!PBM zvWZ%6D1dS|4mqiI{{VXIpZFbTK+3j}0XlFyayrs)QhAwi{_O%Zytwhr*Zx0Iv~c78 zKM4N-wv|PiBi3*HcB;tmjQ;?nk&pIs{V2E^5=9Z|sN>kZS1^`vt9RzJZ~%PPYfQ4p zv82L6c)&~_32~$hD0QscF9(iVJ-q08br-=dE8{={BQ0fv7 zv*fuP^#ZKuEE*ZMoQ=b%pk#Wwr`nLal{-5hdWy@*7m$^ZmfgUoYpknt4&uY)J-zCc zhwtwrbTe&68?v}s1bQd6aK0q7OPy{|CXpX#I6`Z<4aebJ*0*y68i5iP3{-R!hI4lM zM2i0azPf#$nLO6KQCq~jLlcisYP0G#*vh=E^jd+nA&-_joOOZASmW4#w>d!6!MBkH}Xs@eU&!s)1--r>$e^8R!0=q{PRE-bhraZSh4v!4_+#FK(fDX^xY?kCHEtW zn&<&LeJBDyv_%7=Ng}IB_XB?s_NQCxwu^e;&llMcATokU-o%W4l~&V3z11(H)-30N zA%CK;PKLvm5Na}BfXjw+YGxn>J32hNg>@N zj_1^z)=iGFWjswBvUyXO!^DK(A6|WGYirB9Wm9!x^CatqlNbn3vFrKK<~tgeTwcTh zAQk}qGhL7NJ+64&`PU_BWpbBrZh}B}1|+Ei^RDTe1dmG2MMS6ljcfkj{q zX$BM}!zekyZVh_5V-Qtyk-Gt^P}yQVDO@ag)~oQ7NV>T)TtzGl$^cl72NbrS3A`}S z7;a|210TaDU#}JE+SukVp{zU|-FT;VO^#(g5qN&dqn5>QpQ+2fNAjp{ejV6I@c_zTq+%flsbZy}~BE^HaC%sX-@b#s;5R%Ei8RXII z;n+R3PUcauwsW1#bLhgHEMU(Yv)>FV?wzM4+{P`$U}rsRLA*GFEGA#YKl=20IES^H zTbUxo8~fw&tI%8vWZN7FG5lD`HKA#y!)nZDkT}N}1Y)aP_ATfm&S5 zt$C=k+q+2-J3e4BT-s{7Y?2vY?c~Zc%qMS7#~mwn!g z_VLFR#^qHQ481733mD@608IWAylml+oEJfPdE`N-s3>0SR=#{{YiEu`*u5h2Girfyv^FSCUYOAO(owdzyD) zVi9qtG2~nis#S!J!ax~ax%D`uksT!4Eu$*qA%=SXG{vxKwvxpIoB(+vjM2=&qU3sQ zyq|D6`Y<%Dro|RmiH17!S>Iz3oRcrsx*aCQ(rYJD%w%DMlgJdFs=$|14tqNp#@S(+ z$GX;hng){Okp;s01I2301TwOVwp<)wlTmq%jIG&kp{Ew(q(vyHd`Q5X!g@Q5c~>LU z1_G>Fd_K|cqY^UC064=vYb>(20#1Di6}6}C`!Fx}vsLXRx{&EZvChHp=Rl3O`7#zC z?bW#c9_W%1F(}7v)zO2+PjA(}lzT~c1xgE{%G`JtLAF7>NSnCbzME&^Z6?;`C$*iD zMEj)3D|cO%G>Q=+Zb`-kVHbe%3v=y9w2<96y=-fpA{lUg`SlJesPNX%>2Gs+3NsdD zickhkSB52#zjYxEk6x7Hbu4PCmjq+J?zEib%d!FC7(pgUZ)DG1^X96*f%MeNvfTdw z-(s#Vt$7&7pONkbO1kXW!>n#Q{It24a-*NR@J5MsY|u*ATUmiPVV)~Fz8ZLJ@J;Xi z{1w>$0Bc&4m$P5MntJLwTXnXPefrY8h02aXFNb~`hoAJr^>I~a_-Em(m)$hC?7frB z!2VU}2>M*=SrmW|QlwK_2pT{k8?)(4nU9p^Ej$pMYj6n7g2Pb?}Kya(Zl+vkE) z?f@UHbu9x1Diq`%)X{A({PTbN=BZ9gW+xQ)IMMLW!ou+`mG72B>HFN(hxmWt$NSHB z{{VegQe$z|PJWc#htiXjp5sc}9NoWxd_8L-vQ2rle}{J%t5JAM!|>`&eum&&Jbqg? z?xX4WR@Tp9`BM3Q!i6RlIX3ux;f?J6W!~mF1h)d7do zZie51yg8@%cG~GQ=b4gigqa(5ahwo;8tbbcK`t$tITz+YqdvWBVuF^(CF6e%!{RGz zSY#z+jmt*mu&RCQM@+GkOwv&SOqybe<5u-ne6GEp5sk|)ny_XJlBzr-V!STf&R`2{Bun$0QB~bCUEQqM*^RO9DKD@*)su| z&IduXQkyqtR%zQS(*Ra#5l-lLWnESc;Q}V+2apG9guvWkFmZub+Q2m4X_fbW6$4nH zo6YlN-|NL{ni0iIqh2?}S?>j-wWO9w8I%q;4%Ju1o)((xLA`@dvdzqx+NefY{&m|J z1Tr(MkCy6lP`1S-gGspcBdsSGw{}vTlCi+}Tf-W)g@j3UXkvBADqTq*t#mquiFGXQ z&>|f2-#D#f9{6U&?GXx2_B;=BQ_Tc_W_&wjrc9fTI(5gTS29GXwqfad75%#08Ddpe zV8HJOJXR*8Q8nFC+0V}LMsNmuV!G8VU_i37s875Y;PKYH+r{%sZ{vF}D&UooV_6wa z1CMc8C@Z(z)zp=e>^A#+-W}7D-aj?sL%CG)J62YlE^V4}%22Z|)ID42^!~MW!buuC zh|I)!N99lkK*_AX5zBFBY|dC7!u(G~uZDv^r&SQ@w)3t8h zYN>Ij+$KKq5sLGF3F@<7++E8euRu1rBn*0EwQg#9^tQI`Zw;v5DjYa$h5RvEa_Mq; z`WLh*Rv2!a982UVUj4|eT^X;P;nzMrtcv9`4&x`$5v?hBa2@t`)Jt;{ax_tWuS?xHd;*l7Fq= z!jJv>JjE@Qu$O{DPxZlC7q*h5H!z;ua2L?tTUr&15pGt-`B*FXVQ+zLCR?LI_v;sGL%`?bJb}%kzJyN%?>E=>EujoZZNO53N_fntMBAFZPz< zxmB=>z$XW#RvN0Z61tl(1oEm#>yPfzQEYtH+?)F_GnF>0&19DsSv0VS_x_`ifPE zK{RbV>;_TyDErFCudXY(OKTFTh)>KoB~3~xoD*mj-VrVzDYn zCwa~}tw~!<{w+pB&;0c@SX=4$Eh5D2Is`0tF+7j0R92#v#QJ`hX4c`#^%?8MUjEIo z#|Sv}V_BBBw(%mvBxS9OeA{!8_|^DZPci3XpTv>}G};nrmg3TFijA-j)~5c*i~fE8 z03d6u(Itj$E)xtH3Ngq4)}I*V0Q{;hQRm;;k(UZB@=4%rJl3QZ7FtRfB#kAz?0|5U z&|KZCIfmP3nmVx{1*Y08Fz?(WEYI^ZFv;SW9%HF#7Smtc+~3RdyJeMR$d3c2d+|$Z zmRFGC&Eu6}7&z-%I+{W*uT-o@F8vr9%<%oZ7CKwH#>L<7lH7g+0e2}#Cji?( zB)>V_%tIgL`Bp9P5NHy@pelx7qw%EOg=EW~5_i10StQ03ZqIz@rFL*$+QD$DBoA;E z$&3zjkESb?@I*p831&FukwNu1HQ3!>*^3)gY2gy8up=XICpZSHsW)7wP2qckbK$!M zF_l)g1z4~-6^-KfLhDvixI0-&F2S6hdex5v-7owj+AwAte#7hNK&ZTLa~-{{wd91A zg5ZYQyN(aFLccLrRy@PQIx=dyl!VS=5Y4*^ySIGR^euQ-hhE0U>N%}-2A!^D#H-~p zd3kJ(qP^CMF+`!O!*g+_O%>v)s`U$l*Lz!_E148NjXreM$tqTUnsFoDR?x2Pck%b6sbN^>6r@ z+rlAdft|A^K2{^JuQ}Jsj}}{OVZ@1&r;oi#c5F)N9R|MynqX9p!umHLx9@f^{{Y8L zVp?kYt-JiP+rS*)8BpUj+I(5mB#Lb)+RV|hSvPrY)MR7%RF~flwJW=LbO8SVI^#99i6UasBD$Tt zjB`xVBYWlYp`9dk3(y0OYE{PUcDBAG@h!yHtA653XsyhQkf0^ovW#StOozt$$caV8 z>9xX--ANYG2jy2`(OXKEYd<-fS9B^_a7IAm^EF=UPt&cI?r$ZfP{1oogT{H{v{7U^ zBsLEb$*5ai&W3U#P`+cx3c2(H0%|c{mPYbXoVn$R=}N=7TgI_P4vihOY8BpLi~@dD&-FFI!+AZkVoPM44uuH> zegs!>;(cbz?K4|SV-Ab3?_#W(mgUxMWz(RU zuHm(kIKnh-Fvugm4l6@OkuNRm^%&VD9&nAMMc@K(Mn@Hgr>BQ6?!~nB){S!`VKV%a z@0#jX(CE5Ov!_Rhe|DD;Y~vX?Khmbdz4SQ^D@5~bwHu4wIb*(p<;-S9=NQWULFTU7 zw)Nc5gkW%26`co&W43$96IEGWW@djk1(f3$AK}`P!&9+W5GC@+|+zV-}$dN2!(Qv#By(!h-AMxs+nW~tiB8!1=>k{LOSpNVLY6Gb6 zkvz+2!tTi+o&`S6%1i0YQQ#1yl6?hNOJgXwA<;}gFx{V1p zZrVV<*d{_b7U1XbrcI4RAjYTKx&3wnCD?tuZR?8MiL(+P_C+nsOD(q`6Pgy|XPxR1 zOB!y7Ww#D7TN-t&vuTL)XCxjEYP~&*w3x;@>xy;msiJ815yI0*SVg!1tl9j2pwlI4 za{7&!@|nF!ZU&G2(SnZup1K83rx0RWTVJpt`qqiZo=#S_}veXcnRp;;J3khmG=--_k@J*?@LiY_Icu^g>036e4h z{H3<^wumM5v<}=`MZNvq zyVa$1OLjN(q`wzRZuM(Cb&fd8ZpL%TJx^-yT>QtsHRT^=xR+f^#JbEVnDRjU{{YXm zdMfL>WV6Q#U9XuVZB^QGPo+%b%3N0IK|J0sKXz$98RA{xzR=&4dtlR<@ma zZ+iif+EtMQ6(xN~QCT*NrZM6!QM*0GUN(RUnWuq!6DEut@J7#*85iY6D3GO^#n z;FIinRz|O6Ce$Om^BfqE{GE+xEsoIO{npw#`czt<@qf8YOwZ8A`ecXwiroGh#nA>X zq(AI`TH15L$4)5=pLXE})dLK@T3@;;0vOV$RypZT5-9_ov^e=2-jn#( z=}yH2gTYgY$0ZCpjEaxuQo& zs@q$b)x4WOl5}J$g-6dF`bzdA7iL%M)i~5^xXUgIj(c z$M$GGuHVj|LVA*o9?9i9pk6&HIW6P1Zz?6i4%MX_4>kF!7bi2d2vQ-d7Q=_AaaJwI z%HLXILvFOV^#xBdM_s)(nyP#=2mJS!^sDWtTH8pl%`&8q%7fmcxYu;MXW2FEO5HF` zE0to7m1fagT%=Ag1~SWtI^?8YlX(^Rpwdxp5WiXu)xX2wM`U6Ev4 zQim$QkVkRF0At$tcxnpnCNb?e=z0BW>|PR-a<_x>HKC!O^l1;Pn%a!<#W1nTT=;H# zYiF3<0uW~$(V^+F-K^$PNnQp`Y-_i$#iz{?l?0_g2u~*_v$PA_duVP<^Q3&|3~|7q z2xYQsB4K6>dgN5rL;WFf*b_zF)K`+3ppZOG_gHrn{XAyl@T3+fTzG#_lImGwG5qdW ze)re#q+J(XkM2y$Jp{tH+g8)#LnB^95l+%~bUyVodZmPluD5X%JcixDqT{iE(Cb!X z%($71eFq@(RxIU`?%`5W7yx<+R26|8{p1bV=l#;A|k{o=;&#yny46i#3xJjAx7$ zY<V%3y5xYBN|JVSv<|o z$KJI(FAc_tq}(lyjrkKwTPnV1KA>l%R+iAp(r?~nQ>kly6OnKAQF(i0{{Xw091;~y zIr+HFdJV1YH}(--TFSE8%$uWdI4ku2mB{MpscTwH+H|l?#^DKOXvh%(>JLnubo4Zq z7k3^WO&dpIBYrS($#sLK1Mp%Nft1&2;)S7Z-ZgogTL~ZSJ=s`D1G-BZ}J8 ztRk?I>sXMa&n)b>7VClXbPT`k57wsfEOzPPoj+5v+xwSERg`0l)ZMKLQBP9kji-kE zAts{V*|(RzPzGJ>gmaI&Gf`^#&4>2EwzRNoZM?eR4cXuk+mGh`{n2-Vt9A_BqU1x}IbbC!U>S^8v=rDjYb?82{EkyJ@{oB)#>+4+Y<<-nV{L}w)59I+9czgbLeu_wP%rBzl~d@mox?$=X0N2eHjPhZS;;g>iRzs7nKcjzx&9 zZe$oaA1M6&Dof802<`P4j8_J2J}|QEUHgtX+6TR5f5NZUFLk>;T76F5BMgeh+BQ6@ zo-ln)YU_R*V1=MQiV*`h7%xAxFi9{ z=D95|#o9Ki%^X@w$Au&rSyUW$&1&mX9WTKbFk0KJvRlLR&J#ar0To#XMdE#FW zUD-XlSS&IrX{1sK_QpEaZ$#TGmh!SaD$_@f`t~^Guv>WNBlnTW30!l>71n8*G*-G) zmeI2?S!Bk2$^QTv!tj=u(P(zo{{Y%aEY@wae$JpAjDzi4vBi5E$rO65VVIZl{DsKL z`t+p=iL0h5L8oSN7M2sO{oK;rGsLKY6DQ^59y7&yEcYpGXp%|OuiC*Z z!5D=DfO`J`Duc$F#M)ku5;!*rGi+rDFaY(drwLS&jCW$GIKn*A*%$mCgAVpvSZ zN8GBUe83!cu0H2m7MBkk`d~&XSyYwIIp&v5)@=2dtp48{+CvuQLmo~@BcAvb2DcWT z`h$j4~q~bMY0Q{T+G1v5}z9hJsO(N)9KFy#K z-;HvX+Qf$NKry{7){1iM^7wPMx_hd-q{z3 z7cjH3u*Q4V#pao-4&rbC0Bx7oKjcX9{E#i655)6z$`f*x59Ju>e zhc2#7yihc)mRQ)HM+dEPx{brV&C#Cj*LyP+c5xUv>5xwbx*rW~i^9^Xx-e3CM+`Hb z#8h=HSi5f<+)A-R3%hg!y*E||MYr>HAM|+SQmV{HCa?H^e12ux6b`>4`JL;U@t(JB za3oztrgR5y?zZD6u*v#Uu`WhE&xlPr7g94Y;Z=H5vLQJ=jJ*$Eu+x$#B$<{i z`<#)`f#@pT{=1@TWI+@S=7-$Z3O@e;wmSa+`l`jxhqQogt!_8k$r#$t6l}%Mt5I{O zY2F*XKV_DArU*9=B!P~isc7zk&8stKL7vjn!}@!O;%nh#<>F}yVfTW+pfw%miSDoT zD76clNi3&J##cg44l&5%IK@_nSG%6x8HJ1lOhTY@gV!ATRiQqya?V*S5fJrxS%La- z%}xF5qSE(uFm!!4P`kMMM1Cttq*+9bY>YtzcR`-Kdsn|#ky@MKdk!Mf+vgnbbYbg` z4SMxNhKQ~Y`aAtAG9o{C%rl-j`c{R|{{TjM%Zfz}BIM)|{He!cWO+x$tGQvHNmyht zsVt-~85yoS#2R!mc#Rg_?IDaLequDC3wn?}>!tXyC!c+$h2$$R$KzD)7QvfPdx)cJ zh}BB743IW)P`)Ch{oA6pyP?=mso6td0w5$z8t0z8V<-7nv_-4hS?D&f$d^j7A};rZ zi0O{M*1Ug4iqhlzO6pirNo~YNCOnnS?v?C%h%$IWATUXZIPF%*i`4R~xQ*4s=`iym zS%Yl{)Zk>-MF)lA@W5SHQItVxZ76cEGfd1_<8C&NGm7FP*L1hk{>vT4XL(gZ;fKr{ zp4IJl7pj&slY{b*p!Cmbn5*hkpF_<&LE{)~d}VINNhNUEnhn1w;BDvEAJVHse)q`n zHc@7jZ4J+S<2AKwai`ckS6Y_B9(hcRW6nq=K>7d$bCFvZb(Cv4W|j!$^B8OZra{Mk zm^E6Hq26inq_?h&zbsK6-FT(dthDVD!mw(B(5=}B9KxlTZakf%uUhAR-x<|XKeR}z z8gC#m!&Wbe{7EI|hGw@fZ8F5%#KaZ>lmpkVG&R%?qr*Bbm8~VP)nIL@3p{(tLJ5%d z_r@z){{X`_dv0xX$%JMl5~k+JcK+|uxjzG6$$B9dGQ5ni9l_X~o!ocyuSC+ki3Qce z#EcqDC?lX0ST11b+JrOOU2KV=^4}X61}r%y`gul%_*%}n`fOHK1}%K^5$zg4}umV3P_O=>%PSDy*;6HnBmxsGdjj^uE}Ztuqc*H7ZxC|kpGUI0YV+wE2iN6W#- z=qt&-)v7tNOMOJTLkN{NtL!VDq_OK>spC7*Y2X`~+%tg!gsaZp@DM zu#(v%w>+HH=&kI_s90?Sa7VRfG>LJf{h=_ht7MTU%n2uh#|N+FQrc;d21!Nru}MK) z=5LffH*C(|y@EeFB-&a8Y~H5D#f-7KnB64HV1;kGGgZcu4yUhc7X?AMvw>t#dV;vm zLs}`L+}Ye|?Ih3z-m$bmlFm;)okx1T;b_r3eXdEpUQMJG&me9X82l+D4V`YCqepb5 z-U!?ueW$iRN}t49b-thBT}DqS6+|SkUQRJuT4_6Si?nwJsQ9B%u#-u;)8x5BEP+wu z2b>dwPWqCMnY=*H4a5=KGOQ*b%eaoGk_LNL{{V;d1-Q15U)s$yfO)BNZo!oXKI<<8 z{u!-r5%?wvUe5PRmFI~*N#c}%0a(LU`|@5+X&pL2L}?+O7D{P!}R5wU${H z*+IB2Fjx_ehu?4JYa7G5-G-9)GG7N}nk|SUK>YLWD=Ej7jxU()uCyHjI3y`&2q8`n zn19BqL#AjC9BS5ZZXjgu?rJDJLE-&c!gww1#Bw4tW>^C8k6hIqLtoJBEUfKjw=ZxO zISWS^#^27faw$cf6}E}t*VHFNYiw0vMgX^c%n$UZ>)IcOVDQb{@LO7}>lrA>-!L`I z={`2_?S`pwEY|bL9vH%>kfeeMJ=@-{TzKC@)O1VjHs4OW`&_F2QCnp{#h%9_0))rP za{e848k=r?pv2tctz?Li7##kmA5m4R z)K@Lt+itUu%aNW%C6$=x@TTb#Zn?SnO19P9r?IYTeM;xT>akpvxQ=1wM95ADJq=a0 zy4Q8hWp4E8QqmPFWCZ-Ad-0NMOE(^3E}OC3U(XT%v$Co(k-VOVfIm}R1*=E@00^jW zF*0ny`@=tUR}dwabZ$*PvFO{6Eb!Cb$M^$jz1o}YdsMv(c7ENQraI*K&v z2Tw5)d2b7&2EhkB5NhmpHWzwzk+`>pVzQ09fIZD}DSe{BrP|3n4!dDOa}(s`aofFH zj{8jh$AKf$W{&P>*$|T5x}5W#hXCfBmV#Hf-yBI}_SkO(a9dfxUfw(?UCc3)k?+9z zR+f<{V`k~|1GgBif8zMEvCy>rI@eE;HYk5TVFTYetv?GsbnP|R;FL}(BO5~HH)mtF ziYI~9LvD|5P7hK^CYi1%Z5m=hI{Bc1jogOc zkaL_KYrC}Zal80-)4rW>0z%MkjAcGkw>!A}tH5;`ZmtA3QZ$YNs+MD(mFc=xvos$J zZf!ud5to++OMox6d- z>HQ5C_mSJ^=G|_-&nw^|Bc5BI(z5(9d7{|E7oR@%Bs&F+mqr=D1o77d_B}D)yWMYC z@Xel|eWmL*@Z4VlHZkOsz$4~Sl=@KNX$?E0m4?!NGsRXKYu!D>Ni1h`5<>&XI5p@N zR(@pncSPbjrfAd;_Dy-hYB1k;k{v|cOg1t&gUjJS<8Dt-IK_IMk_6DKRlo*kk&aF| zCpAel4c!#~0C@v#h02yVI2jc#orv|VJg|JreUrRnpDgtD;-7bJwmxKDb17vFv5#L& zRdq+U)pRo>0_}JhkM8ALgZ_Kcscu6`Df3vjsn|s>qjxBUT4lM7mAj08`s=LltbSIR zDwvFI_J=Gz^H|SxkZKpow%&7ZQbFy&uAfMdNoH6?Bg>qDSX$9Gt2Zh9jVdUjq=2a8 zIF0^>q^j5X8hy#nA|@m9Gy#{UF_Pl-S+^CG0g>%m@iTd2a&11DuP)NHJx&MnBE7Vi zb1vf`ecOAC4*vDiMdMombZuJU3&x&f@J0v!0I#(|sUGEWv#1xA#F6KrA-12Gb@ZpL z#3bNIr1ZvX!!LYi2AwmRH!q(lpKcE%p2mT#$$5M(mPdtyU==)!cl4qaBQ1w0N;{sz ztuQGc2fcH}h;E&#D-BkCP7?2Sw+Iz>l~6eyXlMEOJ&jy-Msm@b6Km322rb}XyHIW{ zxf%M`L#E!X^^#1i81!PjGhQ>S_?$(rT zf%PPEeujrNZGtef-1J!`Sfgih0;tI+wPmKaY;F`ryP$ECI6PN1cjHxwWr}-Q0%LCW z84OQhir{r08eUl4q&BeI{gr*VS87)BB<|sG~*9;CY zG2azVc6KEztDTzacFduJ91)Sl7Miu4?6O4!yPiM1Fh(oIyhr0bLeEftB6y&L6TMpl z<^KR@)YhMed__IQz09^j%(AMgw5hZbPaS%FX+myF_8jBN?Q_*1SGN}vTae-6#z`C; zjPY3*%V*T)xa~_@xqD=`fqa|Sb1TOr>Rof+B=S1+uEjD@bJqhuTDZx!(GpfklJ}`5 z*X?wxMl-C9vyu=3f1O9)@UJQHuBCBj;`@`AHtQT^%lxQ=o^k;s{uK2Rw^P_3#FidO zc%<_r+O6e|56o~qyVEYNqPvBqiGwEGX1u2RQcXt6+TIOnC_<{c$k8}5{J8SS1Asd2 z;<_&nYF1V{3R%7Vyq5!WFjpj!PJ7iT`?qFto9E?AL#EU3ZS3WDxRqm88$l<%Yc2hx z$mTnUoG&f4!N9L2@om%>c6RW|bdV#t%QrY5PW0~w!)K>ycNVwTP!zZfo@8@yqp?1j zs&QPmMDxp^mf9YVaj)COG=xhDjW(Uk*vgU4J$c1G%f@;&_1D?0?n}vzK2imFzPBZw zp<^tO>h@+US6{QJJ4iUgZgcmufq*M7NY!oh{{S^%wA#C{CeGHCdmfan6$`z>^X6%6 zdrju499GKwjmMnyQR-=C)$HLdy5>FVo3@t0#%sx2;?-kj+kBDh$q{{aY zG=UceNaO{WpF!ML4Rhi-Z{YhIM2!l*<=O}%9s1T}_OM@4b7y6&N-Lmr=~-ZEMA z2r-3EN@Ti>lSdSH0w;)_(SqEO>M_qse9K`dz0Xjy)Gl=!b3MbXhjs%mOk*{2X`0&1 z&Zh<>b_W^h(y+WNf8tp#1_I1L$Iw>BqaaNx;FHqb&OZulm8&SHh^M-+g6Ll)f=nq` zfCoRt+Oa%MtzFwi0J54@4EbUZHqqaXrnrk;Uwl%@BbZ=>ZY)MeKHjw@?xIJP`{z^< zJgmTTv~$w4a*oNHMiRQZ(Cs`ab!7yajOK0AT*#(Zapji4#!B`*sh6HG)O5K_77x5B z2X4?usjebjQC7i8m^c-BOY2a!C8{$Mfz#d+wtk*}mNql2`dQn=cEb5V5k zHM2_RPjz{78@j7V(Xwx83CRtR20y~RBSzIfw5+#%pv)s72P5ShM-}6$_ugC!AS@yP zNtO&>9@+YSRn_PoC$`b;CW=c}1j*)Oa<2qq7$jz#ZnR-8R<4fl_^RJayKOpoOau+= z;N*aPu}MF~i+Hq^F}7bNM9m<}W4_+C=Q_r%Hm9k*)FbS%Fc@zubf*Kq1Y_~29(!5B zM?7#`Oh(=Am?Zu+GN_}uP^RQ`-|&>Ct*s*hU7IXO!BqpcbM>qr73(o2%y2c)jO{!I z``pr7J*-z_&kk8e;E=?*h+_mDt&%+%0H27cQ^d=fsg4_>>*fm+i2s#RgFL+obl^YYLlg(hP7*n z2?&OqsT7vKz%Ks;2(%&9$eGUoA<-NO?#t`(%(pdNqv)S8nsYDxoqq7lY>=D1I` zs>cINlfx`>2HN9kKdnivc##@UJj*;yDAai^XSLaBG%*ZtZ0Q?T;d& z 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 z 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%0Al?8dqF{~SoZ(JqWI|t3L%r!$3ZN?hY`T9U zrYd1XFoL)I@-TU1PAktxbjBqWZNJ-LjLZbh6!nD~-^kAF`5*;0lJ>wM%0EU#(4 zDDq;n$1`fY)wXDRj*}go>p7=@LW#{s3QQ8tvaf+<_wr=zhu@DezT)4oP-#=;^3=SZ!F0R!U0TBU=I(N$kIRz6@-gix zX7IcMr;f;f&;BoxM{Tf;pmaS%)wxZ3U_b~^9;{TC())cd zlwkISe?XkB``rs)AZs@h`IiDZuT(4U4O5UhWmhfOt&bVagOZlURB5Qh8+}7b(ArFI zkY|pi)UcTo|Lghxo4Rqi^};%g_z@EA`D#X9K=h*1V|NB*r- zmHs*z8RagX^jW`LJtnQRC0!uazC`6L6tPK6?3RE;AwmM&=>7A)maA>cf?gS`F_x$% z$GDd6YW%oWJMV7VA9cJ|qmFe_6mBe!`>hPYx5oLA70)=i#F-J~X}gXqPTjkf`|`!i z(1E?mbe5F8y;%kq-}|k6Kp6h>tYsIB7FsN=)4|%qThwk*60W>vFQB6hu8KrplAh{s z?))|yPg|Z_J#rrbQd)nb=owVI1`26w(K>6@a+2eVz+O=$PjK{?1P9RO0k|>e?uXsL ze>No4B-_wRB=ThQ)mjF4)T-fjZG{V^1kDklxM#{=zEk`_sc(H*2FT`DGp-BArco?a zwZTnief1FjvH!7{0OSa;X4?ZzL`vkjQZ#nKl=g%*j8`?PdM4fO?n;f84K@+b!>Grm z3yWh`uTz$RWa#aF2MHI-e-bk4(IsN9-z%$AsqPNyE|zZsg&ef!?jN%PxwAXD2wWjB z;$tG@@@y9R55o4~*I5=Splqgm1>qF<&tO2Epi|TV30JZmw>MzWf9)qwhN0@;XBa52 zU<|biJ`9L$Ft>nof=U6iMfnJUNGY)|Hqe%(slRmUVQyL;TqhV97_t5LcK#2&Uhw7T zY-qMO|H6+XPQArNT=T{RF-ZIRG-Vl3qvn5Fa=>pHzMLsnTPnnBG+VsU;Rl7)eZUoA z9NoJFWwJ^vHeH+nV445# zHK)0QLyyWy)I;59y|E3-z`s$0Du5cS(Z=d+S>jCHnQUP3F@a$UxPBy8kcgB-Vl4AN zr{*^KEe93Pbd5=K^^mycR-0>FY!>NnBHe()h;9)g zvds=$7enN!Jqq<*8E@)-D8CksK4Coi&Ci{Gwp4uOW4cDX!V>8ADoC^vs;iq~=44PV zjOLt%dJWQ4(WJ%A{?^#fRsW<@8^fAzkt?^k{lCbWj$g`$%}C{1>-Sa$-UoB&>5B_| zk@&Qwmxy>kqyDqV0sU!=V4DEMWX0jM*}%n%$UX}DmWkWh(iAVkRYi6B(AE2z%`PlC zlX(6$Z`t4M-T#~>CT^9d`J*XK3hCxe+HQQ!E&0}SUM$-!HLhBIjF_yFSm58yK#lQ? zrgZ&Nv08Yu+~}<99?&Xvqr=55!d9<{Fl_j5%V7MshbxtdVNAqU@~i2z$ZhV4OV3uE z2?S?!+OsUVRWTCbq@8gC_ReplB%gZrt04xahxzIp&2nQif}oN;sbYxNNlw})3_Rbr z7=z`BzdfYDa~UVBo~rIiFH0w>{|%(wDmL|X`DN4zA^0J_F0MO}p%0&IZ5=J8T^l?y z8UHG#q?k-Z@prWL4RQ}b+{%^R#q83X5h|n-paCM_w0*+vHaJ}coH*@`IwLf0I$JsT z*#<))-v8?3c^Uk2@_znn)A1*N!yx~)vGv$FtAEojv7hTMFMbeoQpUXHi zPx1-LvU89BX0Fn6*?>NbR4t8TCsk_mepl;Vti8k@67G|GT>cF~YXBeR_~SZrWzt*mvxS%?VO);<(!!Vh{cq-|HC-HB)MW9>Uil}+xOR9byp2e*IUA{4FPcc4h`z(dGoS+Yu0WA`H^^x==|1-yUVOT{4wDy8bXY594uzLf4 zdiN?fY@_3+KqW9KAaW_Av{v#QsKj@Q`0P}<2~z4I)1Y%)I}lz*iC@h`&RV0nc$n34 z6=`N+X9gxM{CXYl7z1LW05EJ>t)Gs=05v2SElxjXQ^ zT_T)RZiabwlhm`b-h;PaINrl!v>%Awqj$*gY3h;F0b{PD;E z%v+KcWQ-W{Ctd7+(M{fY(vi=0_o^Op+G{WwrA{abV4oay6LQyXu{ajxx$C-ES36h* zCL5qOoh6t83F6a5sFZ=g)1zv_c*~6`$u#90V)~_adHe4e4X)&DfXa-^_P^+WB!G<+ zZfC2pzcymqQ9HbIG_k-OqIv!-fab}ssqF$&TeCq>Tg@d9!Jk17 zYqGym*oSP*LngCYuR;s8L^lV(4jQ~)d##+L_<%OBApG7Rcc7`G7h18S>r5`AjB|H% zJVFPXl<~sSs2u!J00j{IA|=y{4|OK^YMKR3EvYnmbh{0SB#YfA>)-dt4f{!VRh<8B z!=$D)6`7_txfs-aK<}Tb^VPBcbk>|BllcQ$<${7h!M|_oEa8cEA zCj;FB(FCLjjqU+U{v1J&kR*Jb{`ICBP+0sTVI*>XF^|4e?8zpG4o7VPBj^wW`kC{c z#{dxt;2y1ob>8-9U8FZkT_Cpsct!|d93`7Y04%cvz1_OA&L8VpqMi6SWa8c!6<|+U zMquRPMTn=7A`Y(*P0^y3m2I0S*!<~uw_|(-KH_bCd*yUb4LvbA2 z(A~Z|$jV5u%Yv*@g}-jv{p_f(E6itESP)+fS$UWy{Kg8kAf`C;3Mprp6{-l#d^mAU zA*l~pVuo+$whF<`d(~mQ#Koe4xQD`j4Uq(fjA_7nN?gWW6>ouL8HTG0%RH0`*T;0X z3!w8~Lqvfg!3H6#KuNHUV(cOVcrhXD=^9X~j0v8p+_5H+q(@$er}3PvJC*m9)aF#V ziN#A*PBz+Fm7ZI_rF=cM=`sT2W`2EOzu~aYtEt3&(_w|qaAdifwxChVEv-!frMF{T zT2b43z~SyQc-A`t;6x?^&jnRF8UVK|gY7zuxpR9Kn8fEg_(tGnn`2&=y@OeU-lQ>fvB>3ev>mm41}C|?eY*@VCPjNS$`98=wIHL``UOR*F% zwwdzI({C7WL7nq}m7-OAru{B3(*e0cW(cqacfTFJdnPV8vg>CYr7rAo$q!Iz>RQ9( zXOsjE0rl72n< zKF>S70a)2$_-01*b&Uk`TUV?oCJ_WdLDVFNxUDNaxt6MNlr(n6zj*vXJFBJj&qsuE zOPxi$Ko)RdQx~Iq1kP~rxXGS*Hhf(Te69UVC+T6Y~o{%fSQ+KZxa8tu?EA$v8 z7e!`?95w_ZAry^>TBpjb&|hjTouD+9p6U&md-1~ik6bKFA#*b!c%@y*1dX|2U2#3? zl8UT9Xq$oMkdC>YO|P3y#2_wPW;3Vq+mx&6AydkLDk&+xh%Ob41ZpV0|)5C@^SkIECQqW;`~$#gGcQn!q~qEbP`z> zmpSRz%(Av8s|xFomO0S44)Tq63VcPz@b@ zAs@xb7-^mc!4LGnVm1B}q`GGrBR0YSjmY%W)a_2G$8+z_U;-6KM{jUtpPs7( z4wj|Y+Gm}jJlu?uM&(lcCGq`&VWTn3qCI7^*p=t`A_QEnd$!IuD(lhC)a}2%rX;8h z;+19UyP+>mg!yKCeQxBI1%QZ=Zzea4{-siRC_`>+7CtWMn!51a>{EZ5nt&d1$I#V#0m`ra11X=0 zeTiHI*vD`1Ho%%m^c>p&e6Vj*-JP^`jgQXg@Bm3Y2T1BMi8V|<4JyE918O0cC|<9z z?Ep%O^q15*f-Su3HA>CQ$MLA2l;{sr3i!wiD2%88fX~>jWNceR8SaV|!&u(_fuzDB zz^+G{rqp9t5q6+M*_c|+uex#^1Aq^IS%c~(%{;(M3{bpi5IGr?i4`)Vp<%{78+8Pp zM53$I^S0sX%E>ptP*2uuPzpm~!&9D8YIrjK5Dvm?D~7(1SX4l5LlOvk%@o%PN2FU_ zM8C)|dGt|a$vzm} z4OXArv48QLF*cZ_9PS7A9o=*n2Ni3*Wa}vxPQlC6c!(iNH zv^vrw!x$4qwm%G3g>zEHPb{(|Sl^aBsL@Rbs9?DhRvpIOWk03g?wZyRCtK(UOR8r> zmiLtqZTthtD^d6lq;w=lecCD0sy2Cja~bJ~V1V`~%$|cro(E*=JL~a!k_I+3nH&*Qj#i(i zGae~ddl)w`z1)zC1t3t`;%p#6yDx(tMlol_kBS7shAQhDYpa4tcXo@_U9j4zl-upvjOg`M^jQm=t!ZEnbPd}DQGa}P0F-%* zXd6wXsgY-}^H_GgR{yO2K4ctkY>+=ro}EiHS=HGV&_|x1A=;6JhI~=%h_j)4CMoT= zZ7=2S8Ow$~+0&xMP0wxx_Xug4H{JXroh^5uxHWCGAU=IV=GegGrF?sk@d~;k%Vj)*{6vnD{+~ zH#uez5M)@LcS^Xw;DymBynTQ4b!@gAV#2Un3I790 z?(}X%dveYO_nlW>DdUc|&oHi})TFV>H1?&j67Z(GAPZ!Xq-!!ppfFjW_0keE5@WGv z>S3<{fWj_GZj16x?Fn|fPFq9HnQXztwJP)Gu02Ixu|C@Zt}-yDcwi@^^Xh7DXs;C^ zx-++6-qpHi^w$p$Zl?LA=;S4YOw1MgCmS_O$lS8_W0y>ve*~lMsMO*V^?eTbj#0&B zxvTd1wNRv~fz0f#VU!Ock(&L_8xmFmj&o`GgF!8AKhNusL&#V4PbtQlmRAuEO$0*E zi@8{Yc>@MmvA!Xm&j1KD{d!j0?%7xgXnP(;Z2#9KlE&57DB028Q!dv&BRsfXf%A~3 zj2Xp6AS)b}AqsquibS{i4ELj&U_KPd+b`fx(`+=c>hj%#ON#m0GZlK|DIhGDq3E_~ zNTg`tPOo%$KW8FMW~YBpqO}R@KA*>znNrBM>00{g>}U0EHsnA#6&s_GC`Uljq1{_H zQWPG$I;8v*+6X~J>gVfQ9EZB~lzO)s43tb^nO}10Q0TxV(blK;lP5@@#l&(h&L!8R z^TTP;VkNPMBRJ41-d$C>7|t@QvhIKN{sXBNJi=No7a|%gqM{n1zhy?|rtvI)q*=1$ zMgKg%ax+r0dc^&E4g8$FND~3A;oQNPcDc-Ea29y;(MLaDu0vV5vM-*|gAHhd#8UQ& z*BS;^#a-?u_?>BX$h`XJ-TJzoA%kzfQPg^XwFxFi3WtX(?{?xQleE&OmZ(A9;VBz; z3R(xPJx1~0D1*7J&Mg;Ssz3^dpj(>rkvp*ja#ZJnY4EpEmvYnUmooK@D?`2L#f2?l zT#q-^Zckkt|j`}ptIY*oR@SI!hQaNgL6ddG4 zz{M=@?4I%Rp>mFX#>{|6MYpnSekyOi@!XSV50?GY=>llMwuH)ac>|5D(bt~4P7Za8 zJMRn9^LxOU_ASm?nb_JFYJRh@YcURdWQ|IOaZ-W0m|C*efumQ&A%ENWrh_ry z52P7A`LWRKhL9HBr~FuF)~G5))^0Z+@)`)AD$~z7vvUt$nG>Iv$tdDl<$1jpm^c z$0Ej>J)0TaH=8!je8J_4=tK2S-et&EO6HcXUD+CSsVdghgK zdau)Ge5hDsWk$RZ@bb|CMM3#?^JZ|a_T3x|oVY0+7VCV_!xiYT%-u}<~)5!WrBJ(&R*7sYu{Cm_(EoN=@eCNCljeUQsRflpXmAvojX>d1RiJ8jdT zg|?%5cA%qB>Fn;kwWNQ(II+$)8IGCK=W3UjGId|59Q_SEV?;(kaSotjdPvN}ZKy)W z4ULpg4G?Xf^~G!9Ex8-oCB4{g2k*5Ex~wy8Vu|f4(1CJlulrT@+kgNHV_=0!jjh3I2S`cFRuCQhF(3-#7P(dOv*z&zmlK0I_sE=r#CHjR9 z4aefy52EX&+mxT&l(^P6G4v&`S}B*rPbqto!KLYZ&h~}uiIjW9-)!!!;);J{9tc@p zr=%TNf#>?6A3;E$4*is6>M5@HTh>JEOcBLs2&XPfZ^ajbjdHziz!)zEedW43Z%LJ^ z*V=*iD#8i3;OBV+7TTMq%2+%Vp6g#B8(|Kpb9X7GzAtNP#qD$FJ!7NZ#Q1#}*aZit z++4s6IF2|UOkf@u^eao3=s!Mzh4HFh%E(8)-D52`O+&9sJ#8oo^q`CvTc$e6VJMW? zc(FF@1L)?xIg+VS181b8`z=1IY%2?6+34>(8K29wLnq}+JPUm$2VB+)Hajs&Siejb z%(*Shb6o?7+zL$==H&J1qBY_pi9xAx@DDOuRA3`rJ@U1n<&4p+TNsSP>ZL0la4BY) zIpnPMTjiXQ7l*marCk`3ybsI8pCa-eEM|OupuqI}CDO<48^CFFr68I5yhtSVC~e)O z5dRVO6P{|JX5w{XWc$;yF-&nMJLJVqDrWTe*h+h%Y{nz?iDuw0f|nG!)?rA@4yY&% zt8n~iDj{KXd&r6blZcJ|lC4BLWNztH>9yGzVc{1=DJON&zZ2^3+F$)^(uKf2DEYI(n)l(fky!rG( zuTx?~elkoa1!rIhvv%Syt|S+`GmtCynH7pAu!|C%zmzbShaK?gm?b5^Z;T()__``D ze4CAc>Fk)dC6@06vs`0rvz*<6)gIC-;d#;Hg=@S9w2+`g5s-G@)~c?Q35(mbKQ8JE zOxX$8O>B5$J2p5h27srj>W*ATnB;Z!^u<0w(D+26ORZYXU%hf^Y%yOeiZW*F#Z&DZ#?8-xVRum#KV#+V?#=HW32+0RH zb`ujds-IyW<-G#%>hAfEmRwj2uBOE6n_Q#z4x9-efo$?e9d~(4<6uI*cmDa?Ll1w3 zjd=V3JO%plggNo5>gW&_W9U{Nh7jY|Ks6N9yBcfOpub-&_dPcROu@!ZDpVLa+K&XOqj{B zJrFs37_8=V?at^Va0#&BbiN-_(%AH=TrBUVE}y|J{n^8DT8ZT-j7%ADcd4++ zY>k}CeEqFEE2`bO@q$X2NxkSshulRr4*_+`kkzmj(Y}HRn~dojr_Kdamc9nXqB1Iv zEuw?43N8kEK4KwgKD%xm*02+jyJ<>QBTf`knoI1`5VfJV%boQw;lZT=nb%~SUyG}G z^~U%CMCpA`(GW5-AvIG*`;0lCTo^{$jMgNb=c5fZqzAHZXp=^aIGXJx7u&N`WIsL? zG6y&YB`2l3v^@<2r8^_KqdtS|nzU27QJVQ!^u=&BNYgE&c8Ru%{rrue65{$|Ko+}26nF670dFwA>>wvuI1>#f)^ilOdllpx^ z;2R4Oz!U_lg>E#o@inr5Hq1)H!s3|$UAtN6QhOPUFw2CsV%l1o1a4wh6ro){Hp56K zU0=NN-kj+Evpvn5ci3|&>A7z|G5QH1l@7S}PrZDWSzHQ)qHqStTV7*iDHZWVWx3$Z zC2&!42HvD>e*bR6sEzqIV>gOSnK7LK{zqHZCyI5th9S-tYL2irN!?HE-6B7TMaqnqcimMa z54gLb-&Ql2g!0onLg+6_@1+i^<5Sd)AMlPCFw!Nr^=^+ej}4n3sx9n?!Vb>T&A67H zzO9sHj*`6#Q#>ihmNt{;nRq}3%IuDn_hL=;?Klpm3F&C*>gy09V%Jqsf0d?7r{9`Z zmgm?VwRJg%L?C$MR-t^{Q?^kM6|kpzE5Eae2v}UkdkGdK3xmtY_Ibo!ao&oGCN;)+ISCjc@&K0Hv_7yR01-nZ5Vh za?Vtpv`gPf;ZRqGqPil)QKKxc7G&5^C9_qGrU}a<`4E-uP(o9~1jLwWyhShgxSE%6 zTR7dO-bYD*l!st%?;1DWuD$%o|!yJ?!7f5+e(XyAj)a3@JGCBv8zk-E*s@9Pz)4!kXGHLT=Q3nB8 zaK=h^BTm{qpXv{u=GvYNCK*e(%Q;2LN5-}5CM3{gKbS`BYY;On(Rd6MGqSja2^H8VroRkL=NgcIBHBw84m77k*%M~ zuC1$S(lA#cZ^ogzapI+FSf*ThtrP*3S>qnkD(h)4dv^WP2ELL3;ZNXleXqMbG<&0J zH1nR(GUMtWp|z>DGNA zZFWMBPyI_ADKbOziY}`D)XyJk;-{!y^x|Q6 zHi5J6GhqS(S+8r%X)njF@ux!ZRU8FPxRB}IBaMoMec6=lWq80q;4tZR&mh(|<|BW~uscXv8xonTQ!InjqX_1iWlZw-`ULusCYhrB~Pn@!79^ zHnWEm52Cc3Nj~vuze%t47$~Vxj#fz2m93op`TWs)0vfEeXHG&AMjn-M=6LRgOtSl9 z_NO{;hL+G_)!cKQJ=H{MzGo z5%HefQzz3~jnKH}cc~o|@g-m)ozULb99Sw-F!h$^^u>oGwYc6GlcFSxH9<5uQFtlO zLV2cDbU^f^!PMDgIO@pAe;_e$h+GT<7WflIplLE3Ny!K(5h5zmyW9GiJTGxo#IqNGVDi?OFPn}BOHaFq}Y zs^SATp=covy)kA}Fc$6!rD7g1=PZP07*CU)yOQGUA&v7?1^Iq3wS28AnaizgXoLi~0HApgyrvdaOkQKt zl)<1-i%ed#^JHmV29zfv%A&ZWg$AebV2yvzhzTNkP>}^A@`4Ixuw+D z=ORC+7oEId@5?62O@183cHjr1U2x(coP+kOrPIz0PoX2z=$f1sT+Lqmfh65pA2llx zB@nLaM*4u|dXCMk#F};)wsK%cO`P<=KX~6+o+@1tPJQAQI z%BQ-((;5N`99-!EL2fVU(&ddlldlM&lAr-WTg+vtPiM?Q({l#9zNLTl>Y`rzp`i zc)8&ZaqP}bJs}E$EPt6;G61=g?S^4wcoqiJIEZL_^>LoP7p_I;6s;SPihT$QD-*gX z6!GYx($U2kolm!6C8gw#7$j<&1bcXc_C1-O-jnmh9h9i zh;)|?;l9<9J5T}dK;`iWba|YR@~!#IrE3t{(@_9DiGuE2b8S*XI#1<4!G35 z))C#ndirLOw2kr(&8;}k>}u7B%gK(zV*%$W?r=yx+JYB_nt!fi98>>AbYVIzf5XTC zSC@$`t6YKjQR5t_aK~YVRp9{{(o+Go^Kq7olfw=+C;5j>LuGZ9q+(KU*NC|yO^_>Y zLeb6!Hd`M2Jl~DmijkUU&fyFd{n^H_r~zWZie(m7{?Wel0~!CtRD8!qmxz*{oR`^v zZV;KtWWEk&5AT!ozNIV>J4Irx?~#JUSmkB`iRrM&TBq=Rpv%YQD~NN>MWLt0pzv;H zD=)2I)2Mi^K8=6u=&Q?Bl1eV{=~x`n+I&OeK`SMLSMeSw*)10ZXZ*4tDfKm^>ij|6 zhD1ysKH-IL4(c=PF8qlPUsiGDP|Lk;Rd6rlKV36>kfWU!I+6|j*hRa(6&8YwT9*y# z(Jvl958I<@p-JmrJ)Ks=T<|mb14-Q(aljO;5>wCO_<@WSgN$I^ytbQ}|IOUSmrk`r zJ-?g-fu|70J=-G|+(%kC?vKCqUw#pb zxvo}ZXwHafNP<*bL1Kb$P0iJZlS?+apw*qnX?UBm@Nsu`$xm_l&E7Ll2>_)H_C(DVk}MhNw-8IXsiS@O&YmS43tQ6V+JkGD4>?X{+|4 zA>=jn)(g{P{x}U5+924ai&I{z*dFy8POyvr}ims-wlRx@X=q-%Ic0i&*Vk@oH4=2!?=E zcxz&%s%ezk8YoArL)Kw8Mizo~GRsYq_%Ls5$shgRI=vyF)E(WP0z3c`IHX|)`;N)i z`$L=`Ss`})rP}0xHc20E!&$gl0R2LC5G(RPp8siCk>Rd(_kLliLnaGEW*3)RfBMG} zi!I7tcu2Ov#Uh3VdFya0CHjtAu+x0+s3LP04T83gx;Biv^93?_aGS~E)q-STYonQW z!tlD9M(*xW?I#<)XjRd84oSWAjbmgs;#djIl9KHHrr^MF5b4Aqq^dczaR1+x_bv<`%2Pc!utubE!J)- z8C7hFjZf8j}K-Pf&pyB;G6FyxU^!Upz zpfglr4wNw?zn?ml?WsATCu~~s8WM}hRFSVMLl09z#rO|Z8ogBX@trTlZlma@S#^h8 zk)hg=tI~XQR_EGgE=UZIDx9D-%TfmjFt%WPrk<%5ksrtS|^psA*$@p7gDM&Vi!T^ z{|^8}LA$;_a_@@|eSY?@0*=p1mYaqjXt>{l$uoyo;Xy$AR zHnwm`#co~6>&fD^63Pg8SXb+cuJ+}|MikP;EYJ}gxiS0prKo6Hc#(z}3{@{Ftz-=o zU=G06taga#96sbd#Y`}z0X(+qy>^V5n~4Nhe(on_vG3_Bi%v?7ekfrnn> z(zjyJE+r#uE%n7~T6k&E#FGV6(Ek9n^`&%*QEcSa*q+qkVs~d|eX-WN)EUKDX!14@0c1R>^!BX?^c#Y3BR`FG>k39bL{-O33Xld=G?q!Pm-sL8E9aHIk4Myz*6o#67e+=0wox4QSMD(c7_Fe*kt9qXH$ zR(6c#$@ca3s@59Ek!1G7ljNV1o^~Femru%zFRRPm@*Ag zn&p{IH5MGlNiMn>e|LaIX3eV2BV@?mfv$QxfRhl+aO3qAD^9rRPCZRhi4H~ki}^Mj zxgU*IhftD4A&JPUlHDDr7$1dDj_(q3#FLt?QF9v)a>u=A>M}FhNH-o-(@f;mYlmlz zfG3)EC9=h>(!2^zNgy7y=C}i<&}$1#nWScn9#8;&wW7*#mLOAB7Ni=j)@A>V=5=}_u-Hmd`no-)Nqz-*t=v$XAA3ws1vVU)@;2;0}vn2nY!d0eezYqCn3 ze4D$BdQ+tF1jiy9KnG&&{uPydb$Ndoj#8+Hs71v-R>gE*(n}3BZVyFX{(`!V2VAm` zz)5Lwc?wPTmoFQ*2LzVsUU)6v0wW}zT8sYhT0U+7B{Mk-PT>i#@+(WelVP*EOo#%+Am!-LF~1En|#^&hB@2 z?^Lxtvuc+mvajYGH?4Hm_Q5rK7uW-BJmaqhx&2PY7qL{3C&6v#>u z!xjD(_4-!Mld3eAP{B9eW*cN)hwEJBy~md($pJAp3_U&TLr#p_>lW)9je=FkJupvE zK-xN`wu3 zgB&M;xN^tP4*vjJWNL|YU0mHj%ok{n@9yJa{n=#~rFffGJADKw{(Qza-t(IF&j507m70+q5w^~-WBuJ#$I`5I#;ZT2gpVGRR z!DndIn1C~sLf@7LTBEAz7uuzR+ec?`5c7hhZa?jN(rjhe*;^dvJ^g;3g097m=bFXQ zbiHcY$zr{LE2qk?WnY*Mndh!BKMK}cd57Pg*?o-T`ct?xSuUeFHJI^7J&cy}FUrM+ z2(1NF95vmy;90+rr3-GL;^6cB$WQg8z~nqPaQ0VMT1?zDB)mZPQhEH2KkusQ1b~e8 zti4j#MY6eFR_06K@$s0W13Y7qSFP`K*<)EFj^;&Sxlfp@$KWWq%L*};h?Q^Br;g#y zL!ihVM?+QC;?N!~2={x2{+OwL(`o?4y`Ftsm;PpuXk%;EFMVLC3nI)U4;d^50P1tw z)~s929MPls$m1Lkc>D*YUVFlch$FTH4mMhYkJ7UAe-moAe`raiG0P0QNQO0DD7YH% zv$hJPjz8E!f2CcGE*qt-$^QVhM1MNZI+gsNe&X@J?V@5!I%Kv>W* zT!DjaApZb;m4BJ40>)IiGM2Yp!;tf?deg*hjxFN+PxuPPbe1m>0#Yz!i=fUprFJxp z!rKN+@DHOF{#7dSPA81x(k3-sOy{eh9)V3ri8(*(fF8&{tu01OQ0M)7xIMFU2hVxI=&MU6~0f9v>WcsvO_R(z>03eZ`N3CgY z9-^T8Om92J2>sc^eQ0bfh$GT%gEWkQyPUE9l_=BgNBps0#-;P){`&rO#=W;rvZj8t zt~(DF&@V`oeiYY&6O6{W&PNo*)Gb`F6Q)#dJoFy5LM?vP_ejrxPsk5kdeGP!s|v3> zMo&|UaRbm+M7|@lMK~-^(y^|*S2C035TmwMl4wQm6?lr*!QB^ z=|2Ws)2>JEW;p)fA1OeAupa zz86VtJj~jU?xXVeY*Gsc{{RZ~#9h{LudS1>T9s9T`P@WQ^)anP5FcV6}3{zM}>TD2;M2v11?Y4$r=9ueAk}{ zqT1iP9gj-yK00n5E7C&sHfR3;LpA59ZV3CGs^hVow=N5K2!GwL12p!tw!?nxaf4Na zlZ^iC^0gqITz{)PjMF4^wh#@(E-*o>U)k3D{G+Hn1yq)KHoxxAK~u+dAprSjpzlD7 zKiSs#I7Q&&?ut>SLNW3V8xS;!tq%PJY zAooAxPy0~>gA@Ji^r<7c!Ca&DBkt1zA*Y?A5;rTJrkQbLCzjwjKPWlPSzDon1z({b zbke=TvbPQXtbYll7a@+$Y%lK!Rs`{Jk~n$*#G2kv zrwso9boy2{p%lv-{LFFzkGEsnFyvZs6Ia9zixYSf&#;^CiMRrIn_egNK z!V!wIh&K=b{{UGaANS2o$76|u?aL58Pf!nkU!_hO^L7j!&2~|=X4zOM$CRh_slkj* z_ec87ew18%rw$(LZcI4&NAV9@lswt{i}#Q5k4o&ao<{&@%RkPZ7BeBrE_}~V_G#QX zPBA>zRrxu>o)}cC6ukVJSyadMoof!GnW{{Rp0 z)G=DJ+DDZmE*cUMwu?MVLsk9f!3=%9C|{{Uy%n9uGLqmR~|!;s}=)7{vBi;TA> zv+lHl$TF+fpcUJ`pK4$ISsb2@!?&@jvT4@%$ZLh<9w&eCqT=PTla{{RUUgi(MU zw`U(iU2HmhYi>$A7Q2LnfJXkCsq+ccSC5$i9I#K3kUjYLL<{im_RG zF&x)sY%c-eDgOY0RS{)>9_0}e&h9Zul#V`aKJ_~7HAdpz?P6`nI(DwkYkQ#Cds!Rl zilcO{E#wVnD*UINyj0w?&zd4o`qrhMpFGHbAtUx0d22Ibfq1^vSE%Hv077$`&hAA;~ZEFzdkd9@Q?3XpF+) z)Fg2nM5O+0^)o-P>346|HNh+Ue3P zR!rim-uI%wb2eGeV61Jx+?fJF= zoK~FLjg69K=I#i6oxnepao3tv=CQAch4sa~lEasd7u&hB?agc0_%lhi0gbSg`j?oO zC-bS1Q74ne+ES9Xi*b1U0D>|{=TR?+b^FY%mX5G4alYm9e<548`hC0r2;xK@iZCkN zQLYaIuWChEvzh+Q@gAZ703Vvm#Gmud*+LJ`txs>@y**of!oAF$OHSqg0G)JiEHEzV zWR5ZF>;+|9__sr~Vy%B0uQ+fXY9@aM2s&RuO7Bs9EiaPS6`P4TO!)}G9mN=APlI#?IwaC7g z;#=T;*{;hPkbYZr3Hpj`eg(02R=j!cn{dgRR%$F9#;xCr^b1BR`jj#{?)hT*&*@n+ zcrt4j;!}n>+A9A5*y2FpQ9uDl0-k}ZIqMy3Ueq-d z6X~#8*_Ipf#h?EGtzL^<)RBY?asL17_{KT5li zV?adePRGF=1xUAYAp&K{^{R2-DPSA#1A|ul_!%?2f4h!oL1Nr;q{Aq~K8A;hWCwER z-=$D1xaK5fC%;Ob0dW>dlnnc3t5zmFB+vrUu_MsbgHlb(vMCLm9`zYb$1d#0+~fIE zNl0B706FRf77=l-5dQ$HjoaTCs9qc)9rj{b>cMm2zj?eFqeuXGqTg0y~~*^R9tmrbdy}#Efur(xf8ghDOvM ztw|lsk??c3)C!zU9KUx8YFwCDryNRLeW9Jbvw>Hmg4`}*Mf|y_qUa)NatCOI95NEN^Imkc+aIv zC8|ltQV;iqHaRD?Y)SLS*!9I#gjan#1LZ%35X{i9NtB#-HLD)U*D=0*MMo{FIKwVS zziMG}NF>V*p5vobNC}4W8_*G~w!El!!d$abd>w)Qm z(9>FrW4Q4Ck7=vf2a0fZ@N@T+`Vm{u_(}vL%$GkwUT>#rQ)#zracL<@2T(tVdK&b- zC&hNUg|RFOTp-Iu-20DO&R1I+N0shhgF>^npkP>=(pGvK9uEQFW7~Nb1myE-PIqD5VCZi{tzC+jV`}_TBxe4bx z3H(Jl&c+Hos;c;gP+49>hW;-@THh$I8m?4NGd1MZo@P6b&JGxQ z8m`xj-OuM(a$Fl}e9_8(7#^OrYwbu>GMs`qG}0Bz&3PzBP{)J0eT_>U+RF%i{{T^0 zFL9B(&1e39ET0;eQ2;;>Kfs3>-DVbi=zyyBAurM5C>3cku;K^aCkKZ`^Ocz zX=ei+yZ%&J4(zpWd~uBNQnk-tn?FkCp}LGtLhf;%Hm_RRNv4_JKv1uh?M< z6qk?yJClJ}(_TXkqYswGXvsUgzndSGbSt3fkv3<%hDRUmZ$H%4wEn`h00^a%-D5x2 zmDh3E_Ar06cX0)r(tDA%np0J|1V?QgVE1gcKc#esQM5t~8ga)^UBIEWdyEqmt-23f z7XJVWe9=K>ac=gU<^^H>0) zxjzu<$r*4D-53?nd_R}Y@YsL)Z2thxrmwnvh>3-;(^%j zZ7pu$O}CeJTzB(2(%xv+dV;BY*o4Y*B#07gf*AmmZOVG1^Zx+qt9Cc?!T$gr#e%8J zMBS-2E?&oV4fU3gQr_oOk>osOp(A&ub6Ym|OLBz7(z5$)Tvs0j-Ilijx4L3m7y*<5 zr`n)~d#wWP7U86p(>O;~Jbh^O5!@ZQ!$TqZ&5z_NwZhwDbLsYuM^8AG{${M%-Pr0- zE5!`tR};}3Uq zN2W;s01AoZmSKX|EuZg5f5ws-1FyYEN3B(mn>k&6*6tY+{u0aOoR!~^`Btu(b}y}C zo;E-jasd0MxUCtZStDd&ki!`Du0l3#16MII{{TgpNG?wdLom z&VHB`l?3_0-T4~RicQPboq(@@r^R(^Bur#Ghw(meeQ{jJhvXLTKACWUybMZY^-AnX z$mG`};wTM{p$4lEAOp5QJBm+0Iv9jm1VtD=yG3b3CKu(v`U=Fiom~}_j%n!=ns}y#qdbP{A4@vC|)wWNJ(!*DN1Dd0A^xFj$O{R5i##$zw6+WZ)m6;YOMYtwii(ZB&b5fW1hGl$k!Oxc;vTlTFTR}ntASKEym!gJ%|4Q zuAd;ek48QwKsbn>si>dC%zo@Zel^Gaqz*IElkFm!fO8#N_?l$|?NU7rQa&V-d)a1% zzES(NJ-F-o=D7`5QDnFBqd&ZJfl}Jaut1T6!i;t6Pmv3monhDSG5);%6&%{l%N^c( zV2bAr;)B!=#-pE5NYf>U0*+KJV`6U*&1*6rF`dE6rh1;jqD$FG%ScNTmO1KAQ(UdB z!(81p%$eha7_Be0IQ|zW=}(k7jgxra-l*o(%0$JO0HZm@W3|iw0CB$(1!7)a&3SY7 zXt98KAkoSk$3bnXTwS!FF%dQcpHcnVxYtJ+C#_*X&jdjgR000iS{ivhR8p{9*OvDK z?|o~Z)wP|9(Ierp$@CRdQq*4EFeF{)paZ3I4D(-Hh=DjK=02vKfVmP}Yu9mELJyKj zTs7lZVaw`*tGHx^v~0N+vn0P$7odUp}7f4D#N z6sVKvQZ*X~k?B}>BWp?OQ2vZ7V2}s{(z36I&d2?i{)VKYjpF|RuN^;iaz8Z&k()PV zhflRzzJ9Udrnp_~=ljhs>m61&$#44hZ_^aX834jYr~Y})pRFXvb*q23U_V1rMlm#F z(rK6TsDa%a1J>2o^`H&iAZGgJPR|4f^lI6xeF*P>Kddni%Qdk`rLo|@9UE_p^iq4; zk^caXn&RPLK=&2ce0<}@8Y%w(r(@6j4A&0@yo4?!<2bD&v7EOrp$A|-n5m=227kJL zrBX{-hTor|BBe`fjy`_mQy{h#NFM2mngG69{{XvGMYYBk=Jg$FNNw(lfE(0O5ui~H zfm%R=&XiEr7%32k#oEZu5v&_ilbq?p3oi{{S)a-=d$nObD9EH{*1J<|FT# z!qzOu+3~rEX!!)@w_15T@4Cb1{^6`$T1R*XuF?S5M|u#^rQwJKwzm0WffD*2YpG2+ zazA+eSae_Tu1~_U71M2>1QM7d1oS@D*T-^qW3C+k015B-Q)Hq40AcwF`$PW#tItLC z`c&;?`-DKV)fVr*pLl-|^q>mnJHVW5=s%0!=}l2~Vm~VX03Sy8t0LkuxD2_+ z_lK~I30;<1$1L}T}7p!N5tn)qXtBd2=U%JK6K-RTZ6K4IIv36o}F8~FIo zABd{QP`C3AS$cYk=t?Q{?N!VXFkn#+J;3y)7G?|HTd?8R^A$?+NZQ(5GV+Iv^{#?# zKGnt=+7|l8D;oPo)BK4~*x(0g!OWcscJ~9iFdaY7}{)oc{m{e8#Y3 zfEyQ2;3pXTYpl{Ot*!0TVn(ELNErNT*pTJcXK;cG2||(v=No(acdF^6YC5IlzHE`A z1M@H$Ao^yl$#$|#tYi`H;yjV^FLpllsSdTK+QhKJ`@roQ=O&QuG7k-6+{GlXGG`@E zAC@a;PSEtFMKRgLvM*iB$f`@M+{!=EblKa{pXC(feRfIGUn<@p4@{CzwrUvB)WHfw zfCa}qV~U34fpUY;VAd09SGtA68FhQOqi#e>LgU*btzEU!V$svfj!7ggcQZ)ai8L+2 z>`5<(bj=q~WxcrDE5-^Usb*pLRO7~8ct2p$Z)ZK3*I@l>J3TflpAkLOiVGwG03)Y0 z(?tRzfT{rYp^iHo_|-g7b&o2_*42Goi;+Omb^F48*R9N|e})hf{{XLDI-molDk*gf zD_r^aa7XOU1uK zbK^)PIJMKSW<9c-L8DRVbO~z`4ipcdsRU{ba}BTS^AGfG8Dn4XO(rV4-FT+p;NDo< z5Bg@ii2ih}$8>eYG7lZSDY8i%SZO3k)G#@A1Gl|#Z=>qBDoxI}eILvtfVv;IF0%DMW+#gD=VhbYV9i_UC z)p|$-g8@pMXO8t#%kq!<-lHIAtuYHUXbL#{xf#b=y&OprWH3Kkp=^Qe_Y=-fT9F8K z87DaAnii$sJwd?9_8gi#*&N|UKD9*Iy0-YFJG)@>O4oM^+h;(;bZlY2KJ;@i|h5c;zF@Zck&yG2qK*1zXmDEB!70IN#}%Nj`XW>O9bn~ZEr(P z;vEg@I~9;@e@d|b05bH=RhAG&8GeSMR+BRt6j^+(HJ%Y5$>x?ThP69e=8yFin+5hT zvYZ~obTxQM8-Q{R8VQ<_T*o4YMg)3y6*Am9vb;pAsmLROD+!ds-ed<2=~Ka}2~Nhu za(W*B07?SJ)VhqjjIN|-2e_!-;aCtz#w!le-u_#l*04E+zW8oGD%^)d)n^$Hq-*`-lT9GGoY${s zCmApvSbuh|$93kQbiq^3YG=@`(~Uz^fqN9*zsO|NR`$9DtV**q(y%yGR3s11o`IBcG<{Ae*36iJD*yDc;tkO zh}R7sPXnm#D^e5Y#IhrR7;fsC-I`d zMQj5=yyNky3MuWARqU7m>PH~ez24kV22@}st0INrlpd9(wBw~`%G)(HB=A!otzO=^ zrGquu@)fNF4BM)xI9Gw}ugyBpF*7tgA^l z*&5MLn(XUnqKf4@f~wyVEG{rIe5Szl;MJ;z>;64v{{V5nl>mIF;#;wMsH}cWk+fM> zSv`HLDPjS0TAJ|Rtxf*(e>%^1nF^{hfKPP>x+AfZAE&@&ki3Y--G2K4)6?~?&d$!s zp@psDj27xta%xQ$FD}G?XUT6e72Pxrp+EpI0a$6v$N zp{}A#sdc5tBu+|h8?p4P=eN7DGJTx+v8v&e@Yp}jucoZgFOz#2Qd=TSa7AB~Lvb9^ z#=wJ&FyvAw$By#e^>Cy{=^oZo)YKRHTrLAR+C*Th4mtj{qkW`_S>$EJh@%d?5mdpr zvUc;M5~y4k#z+)gXFENNw!_RQ?cX49KDAqTa25VjkCd-!@6qiqVsjn_;GiizYb#Um z+DS7twj+_G+7}#j&*4RY=cjDP6~ivjepZnO-C^zMc&%GaZ!mqIP*F9z3~wCPTtZu0 zgKcyQ#W31Kc0HJWH3yR{GdjnB>PTq)XkxLy6HTMaF03UpS+U6g@+-8`b-Qg=6(N9- z_B?)mhP=ks_DgvWly;N%qHns@ZX1#Ik3P}7smI@mx*9@g^*3DP5nRWJ^Z|N?;sJ|< z+UMk9gc*dBC@reEpM$I2>G#< zKJ~c@H1QWz$Q2Chu}1b#54}~%wT@RpzI?Tf#}h@+pW+qM+eyz}E0ou*e5-}NwUJDz z$=lwq>Ds8ffn|+Pqb@$_^rH6Ar>WHpb*h?`qFz}^3u6us=TO6UBaCb{BRt2bADsY> zd&Bn(f?Ymii7k#7J=VGyoCX}%DXzygh4fmKY6m-H3*1({yU8*viz*Z&Ac36bk{d@v zjyC5tPgR93^!cGAe93|Js9_DanMwKzm7@g?U612Uh|18e{LM8L&+j5T8}O~Tr%*>+ zeJho=MYPv$ZQDB~8`I`LjcuaApSYy^(a;&Rmr5{lIQObL{rWzixd_~@7<}32Y4I3< z1R?|Lv{ZVdZ_;iNa5A~TtmLj-S#~Sdc-6uakU9ctL3bfMLn-0nKpSzNnzrTQHp#Aj&~Mdlg0NQV54apt5xWGE z`74ZaOLBec#$_Y;MNzbq5XZZNj%weSp?cLKO4rgnR&zO#cvIS-(on}@H#y6U^c-fZ z>r?*#q6mTJM+;NLLZXjBO$nF#^CNzAWjb$f`{>m_GbW zad0wo&1$1W6k!+gtZg`Xa0YL@=W(l|UrGSI=PHf>ABAP=*Nr@>YJ`&5-RvpX7eWYH zM&kpD&$SHlwZr}A>7Pmf*oDL~Dk$N2ryGM*nnT*6n&?Flc03AV9jNLC2)3#H<8T1& zQCP#|Mp=)}+_h%gGhJL8nR;jCtIa+ZkjsxTJy_K%%jLI>u{mS+MOL`JNTV#r09QA0 zbtUBGK{-87r6HtCHN=;fJ5{+S=3!g<9-I}SIOjE=r`d>#9CNr=U!>dcha3jS=xSRj z9bSP3#fOfPFY}B1E3dRWRDZg^`U?L5g>$-OdlcjNWY6SR{{V@tTb)YNO48o)`gDc} z&~9ctbpHVBR!p?6?2UV?n5`||=6M!4V^Yk`zyh%BHF$N)N4&PdfU}64e-Ou7^F3Qy zzVYqitBEaiB!7}D;iva+Z))#+GKm$0mhmW5M#8A<3e?^68d-9_=D+;5QU3r<2kRYG zAbA7+z2QHTVyuS5u^;y1KltetSn+N>t?~IiS%|s+07xJ8@_$iPpH;;QYqC(%SkJR7n-{fzzdEwlkLJO0&ne?+?5x zWw?)#xNzC3Ra1yQ%tSeG7uNf=|xU+}AO z>96IF-=0wa005*tM3--xIUjgd7PJ(=Fh^Duw>F<9LHj`CY5xFLD0P?n%z67l^R)fJO^PL? z0DwK1RGLA7}9!ll@|56V91 z?N#BlxEy)u!=K>)0PEDk*5hyb)ITrxPx#OT!4$vUA9(imqsvTv)#$yw=>@dmv*t(l zzq)-sw7x~g-@c!8c0Rva08VJTGQ`#%692mMET4Kj}>j&OH-t?ddpG~ni&7=pX{IeBa zO(Rb+^JNG9`xR-D_+uYu=sUGQ>8WhtZMu530CCLk9avm#+>^+OmGh|5hTMVjw{PM!fp0kZW9mPP+LQ~vK1Aq0ilm_y!V;_Z`+phrrwu+5M>2N)BkM@N zYao1y{{Ve^)Su~DA0qV~{pso&5r1bx$1l_S)Q3%k_io;mIQv)k7xVX{7hl|7-RbHk zkx=Q8_IDjUDifuzX`FI93em;a{PSMj>Ob_Je{?#EdWy)$lS`NQZrE}C&}%OL08GAH zc?w^Tx_D@ZKdp3fwaDoKJa!_nH5==Mf<^w$nf_CqrGLhyhKHESjs2e@jBm;39A`Ct z!qQ_AGu=xjS7}ke+q zV$KNA%@C49$=%K?rM9uRfkMX`DE1Z2!~MH(0S^oy@xo{M)`WUCp)mgdNYv)~Aq)Je zSfq3yM;hdnQSNHAy3Unt{h4yAFk?Ta3qUgC2+~T0<&J z;=Lpz2+Y%RPwwMCo@!eiU;9EMBO^o<;Y6$h5$jqvmbUkrf7yP|6lh1xLT7iet|w8_ z^s7;I9o?HlCzPYih-CtF01nkjB3oxed8lg^+P{~kEt$va3{hb`_>REB0&X%QF2@aKS z2mw+g1N)JRwzlXv-1zhdAIh&Kn~}~1NG!cbrE=6v;RGX}DM|GsH1YD_C;)m2ylhAJ z$odLYvWzInWBAh0e5}nRk=M0WxV^T8hn;l{e=$EZf!dE3*ugJ{XHuktkK#4Y>3$T` z7RCv_&I__`B$9hmvbD%}y^FH=henAAeMTJYTfiOq zf9OKKYLqJi7y=GDiXu5~X?O}Jo5j|m2SFy%2Jw;46%WK+79AhPBFP>pHd}{gjW&Ww zJ$>sINQ6>6kUPTTfYGrPRJ@X1vrQq9!iC=5X{D(>04NL;4m|}+C88cc!2ooo2E*l! z0IOlcgMu(|Ljtear;qLs!!*$_Su-qr^sPl4{xs7XF#&))PzHb5?Wg;{A;_kA7go#r zw%mkry+`F*Enypd-Z|;`R7T$74p8nCSa&POeYEYB3XfsO-9$U?JuY)?j@3(0j9oM#Q_X=GG>pl8%o3zUFoe8>;`Cnxl(vERMCh=Vglo}^&Y z5w0#Kwp=gIANNg772J0N%<&a~tZs+i-?Ig2(_nJZ5B#~1lmpsYBDyi?98bbg8fd7BFc0E?zjJ5_% zY1?0@a+dmiylgsogt4YT5_tD3Rm-8A!DuXUC}!|I+vEw?0A0h0bI4J;gpLQb^U%7YhAKXIO{VAap?%kugiO2(zD*piQ90CPk zYW^U$xwUAmQeF84S%%OmHSuM@Kq9h;9ALAOY4W$wE@|rM>!-@h*ud#hK^w^mm5sR> z;<>BMYf!$4qLxV27+|U(992x;O&Y{5E?zYlR1R;;ODxzor*kx6aY4$z&~2|ABIC75I|ph30yHgwd8l69ho%qs7EPieBUpgxy5?7 z!i6i~>@msvM4Z%AvyIVo?xm^S(M1)`bOl$vAXwZVNZ9_BVyfyKY1c>6CjS7?O#pnW zs-4=rhwJ?6v!G--85KS6I;6+&rn-%%>0K*h7H!_?%ctAuPiMLrX0-F=Wj}eha7|uI zi@WGn+VVK%3xXyi<^$W(u4+*aH%*6ww@id!_ReYP3L}sPFtwG+aRCxfY>`Te=*`NJ z#w$K;9pW-gVKGmbFO}x^dis5B=$RL#f zik|W~=d`+6QCKrzZW;doJ!rJ>hN^77*`-EINPc+poc}e(Cy( zWEzB)j;VT>jacFT0ELfEy}ugR`%#WT73@t6rSp~?8XnCg0hb(yJu(Q#r64k{tgY{D zN`(>u7pFp7xBmcIv2|?{R*%iM8=60n@%M-w4QxxN%Wa0XI{*rNw)>=>xb&rmP*UO> zv?%9r!Q*$(_oZQ@fNxeb8hgVUvQw_0t* ziiTLpKi|hr{U`ztw8cxOMAdgOZ2ZJ~_2gaq0^$O0dLLH_`JpYW82N8up2gn>U!doJV4|3#E#ek zi-n7!@#*>2ex)~?ELPx*6PBq=syPuq;?-FuieP0H%jPR>$#Qt2;w~(Tpkkfp4l1CP ziQ*{7*C+bZWw>aNu@J65>6j<=rUV*=$eL*33^tBP&sw@N^1g9Aqy3X1{{R|b$xFyb5kJ>ysuz*nTr!U-#6a>+0H$9_u|!~#D|7_(qS_%9 zv!NvJAfLj3CsJZe4XOvL3WiC*`_6)cx6o#@H4Ct<~8zqf%jGSjD=~XPP*=??w$t=nXAEOH1vQ6x~aBx3LMHAXWNeBI*{Hw6DgUh#b zkGjYI070x<8-LyB9RWYBXzN<-w}~HEi-Is@~t}bt6 z2nKd0GS0_#03T2*&hPK9yje3|>N$$aFwJdeyMgFi)Yeq*d8=PXsOoLLV;~X5{4osY z0Dd*qL2tg=N0@-68yOsQsD5Ubwurr^TNbx~r~yD3;}zHVeU~>o4p(yX_!{6WHJ7~8 zVq18~U%QUy9A>*u3#o=VQI9_>5m5dl#|@?EZxe!_SpNW-s2lxOKk1x{`qYic&!#^{ zrZzE;cNL+K$2__3lrT9r8e z0C?98qrUqaR={j2Q|*e;Y-cUW?c_)!D2aemrYhp!FFYPs)9Y3sKzy&0s3ZAQu*L{M zuyUB`L77#xSQBt}132tz+*kJChIeIGAM?$+kHWKcXaRt*OdJE!y$8cK^4;iBM~)&T zM$yhXih2&(9Kzif3{n}HcZLK){PXmwBA!Qbsc$iLVB~o(oDuY{+4Q@W2M;j%RxB3R zkob;t-*QXas{%9Gi2k(nB+Gf-0&aqJ!yd4|_)xcj2u6-j%m@I+;Ge@4)U~bCE*tFx zdyM}8I>ouurA>apw#|p!oR3jPfKq)zH5q;D`@N?zxA;)LAh35Rv#EB*I3uUwU0UeO z$_~f;s~2C=&9$^sh)>IKoRs7OamGHhhLy^YYL>!DK6Lq{&wom}4yA9kKX`+JKhG6w zW)AI#lBcJ&O&Wc{v-pUl25g#*v0wGk{lVA&0M%KVz2p-lin7K|@$2dIu8rd*2gp9* z9Qzv2)uAnKE&%APIH3W|_)NlFnHvTP*yJ8L73c}5+j)QMm+p?a{{RZ%JTj6+s$3=s zQ*ft&k<*c0lN@JY`A6M7z3H$-OMh>?e)d1V{VC%54ZrK7`-FA$HE1t6+CK0#BCdac zbZ*1ef!UBpc>n~o$Oi27tw`+WbXHW#k&s1Jc*92HXc-=!)zjI3$E08G3QgG+6?bDB z>@$P@sM39k;~(meO6X}vN}gi*4shB|5BjF-N-S;&{{U3oE1^9pMkwYELz$Y|Xi=Te zs*L2G)t&asbz_;(ay$E1VRkcY;~lG=bQ#D|)KgC6$ym*8LeLIwV(2^6FRECDIlP2p z{i@Po*X125ITI>I2Y$53Jom<$j1$^IEvJe}R&^`2z3YENyS$HRySRol+)E)jZbuj+ zrBLy_AMqtDIAJPd1KfI7Pozb<0_>xz^MG^4Dv7np#r3HJ_sQG6D80AG`sMB3tpwm; z4uiEQjAQOE*fr9I$LW9;Jefl z$wEB*gS2;1Q0n#~TOElKkKQTi?@s8QO9N4}Cm(8u{{9MdS1?S@BAPcVg27xIb*t9) z5ImneNzeNtsM%>S+xV+ibd3aZ!v-)rjr3g&#f^}t>PO})g7Kxhl@r6|&Wp*3oDaz6 zy+Uh9LU9`O^!Bc6Rky4;LbQ7v-NF5&^lbBfB;jBLhT`~!f%Z4l5vQRz03W^o-TJU25IcgmKDw?zJsQ(KK(0TFd^}L!Gd>q?1&U z23FjhjE|e&6+Dd7nHqt2-j%sZv1EX4;apY(8s#=AXrKnjnGrUfjOe06~^Vf=n?6o-b z(5rg!vLl=#fTOVO^sOzWjGNZ>H<)1b?t+)q>haqQ+e6mtTDV!;y~XrBQzl z+(^L5sNOgm&-&)++r1p9T+gx6vYpoW7(e}b>1&43w8YZHXc^s{f=isA*1MXSD;G`P z=P~gJh43D(PfsX+=t90`6RV$*)xCk|@~@{ne8D^qsxz=%+XD#f0qvaBR^N4xeAOaZVl~|+I3U#j0A-A}R1`b9 zsl`JZDo6{kP)-3gb}|^L2O}iXU`8UIJQZ-`o(RFES+<|vqbE;sR+N0dg)Bhj^V1-6 zKnWa(<0`=Q>CH;G+`RV{8MTFmc5OI3uN1ySs@X|5dp94g07&s9iUS}c9+g&2H3-aX zP}Jf{BH~Ecdx4sfWmm=srUq*z+#N@lznwt;0B4(rK^uD3>iPre(EVx|t)h?}=rfME zqzRZ!Z6sekyqF%};ZVKQig7f2dZ@?gTFs`BlMI;lHBNZsjACeVKfEX^`?VZMZ)0Xj3cF3EXvn^E0 zVjmKfepS|r?~g2SMyvKFPOrng~*jhojXRdu+QCSNJaCUdtm^KUTfr|Jer=Sv(Q zoJ$*#*or;S)RFGybIh3k0CZxa3+5b<(l@CD)#%`X#v@hF`$sh@#WW}7Y!9Uz>#$g) zAe(MPBm>;wRMA*@`*%#LeE_SWm53851ozEOw(3Uc@O{NDW)>?AF;}~j?rPK##Rm;+ zp#K1S6(YQ`3}8C?9CU2tULbzp0zYLf!Lz}u047; z(y}7IXpSc*Z}))dR+*Ae3a)d|&=xc$P)E-qFVl)@T?j|c#Gw8m+x%*R-95R)$_jK3 zjFI)L9%@Lx>(r^_ZKC00MmLT`447p-$2Aj!42D=p2fCBPfA#Afw^}<%ZMl&0@!;V5 z`&HW;!G5H|BTzVRHSx6j&Y0`lz5wz#mJw59t=16VP?iWzDTa_F} zt++q86xemEc7YmGC~`SPT4^>bn>PA`{{X0)0#VSP;vUsw&fEws#d7!hoxR)zA-9nv zA9c(0KS5JkY8s=&i3OsT#xf%$ntY60#;Cd$Qv{U$>PF!9Q(FlcWy>i5`te-r>3aU9 z5sKj$Mo1-C1sqk&e+Oz;kFsl)CmA_rZa+FXS5_ClK-Df+PL?_0l?s*uL=FkZt_5B` zB+}7AS66IvvLb(-Pi^q(BDj)Cn4Y^-Eo@nQJ+X~XnQOR?o7|dLf*qvJ15oh{Qrz!~ z-GZ+nnBzZ%Iv*3?NgAv+Xbw2eSb<)j4}vu4?mY2p3O3we46o%{c6vRfvNfrV2~(9| zpb`x(c&&%YBgXC@T-1~XhEf6CyCK_y^{G=p@g?eyJMAnFUp8((EZ4OCj?OMvFXKul zvRsAPk=qo#r;z=d?s)~jfOSbQ50<&~$*ovE7+ewzw>b3*mFVrMLm1!+t~JP-J;MO! z2bx^(p!p-zOrY(Lgq%6}YIoF5K!XmDK`L;lkmwRz$#kv_=)IO3@{h@InKoSrFj zNrx;^s~3fI8&E&dE&i+ltA0k4X@IaozwV`RT9&mdLNLS)!@s>TuP!AUu-~btuTZ*2 zXFk2B+HG6`xZq%7sowauD`*-;k2^+ruRqi-WozqHVn@t-b;U!i+!VCf@AudO4;)cp za~++>jOG@mRoH_Wu2WRk=G1h^=eRkQ!2q93*FCCgkgbctg-P3j2PD>1TAN;7+uDeq z%G?x@$K&*;Zou1TUv}Vlaywq^R&0A5;=6x_10EA2{+=ZMb>%kto9cSi{xjr+0zY7< z0=;YDxZB}!Kk4EB0G(960%7r;jTBK>n}t=>2pVnCJP#%F`5LuVH5Ct~-K!1^E)V_k zXanU*NRs+@2Oz%&l5l*M$6OjjK^*g{kCZvZNw;>@{_|qGmd88X?{%oQYdFC9Enq-@ z;3lId=a!Si7w{*E?%p%$H+d1yi{{V%0e}V#?2o=Zr!_vIEOpAE&pY^rs9t2W6JPFPkRwF-J8_*W! zmaF0IJ6DaC<^?QA-vgTSJI@AcmRGlb*?E@U6Sr*xh2 zy#h_SZH}e3mY&kP*)yW3i-LxMyP=tL00B^02|_ z{&}r=r2(EBsG1qDepeh5^{Q7^QOp~Fz-Mo_PKKB!VCuRQayv_Hge8dudUXIF*041T zStE6klLAgkcF+0dx~5B;N5T^#XZ>4s#((mH0aC_s%@n8vsgaLP zqOWP%q?YU#-;_K9{sy-7Jq{avDP|M5md}L)lb>&Dp`=<_UFtEzG;_Ks{ovR@9fnBv zqhL2}?vmm)JDGQO$2A50khOodS;|?IW>JyItQ6G*O3e+V2sdMvW7F}iOC4RMaI7Lm z?xl15>9S6jMAY=%O3jtm6DsFBy47i>Lm>#c`c*r&nnf*a<`$2rjTh!0fT9bByNqII z&NwrDZI#nwGmoeow?8hv653N~{ zuEQD(A?goS`ulrRxQ1I;!($1H`$cDD0m4NY+!4742e-Xhg60E&4DI<0)<&p}1KQt0 zNO*=aI^YsNm1x`D$1*FnK_l<4PsC6%;UN9kTzy=BK~$bdEbfFcS_00#VJzpbdeK+l z9^H<3HIu8KD(2ecV;R`T(=?j|UWR67$B_z;p+C&llw0`6mOhcF{*{pvnD(=tTkfbF z)|?VCP(rumkLOEq?mBz>l)4ZJSSHNjK2!OMd@Cf5H_Ib0t1&fB>=Au$BY}p>{p!05 zK0sL09^{&a%1EAjOhV1_^y7}T&tq_x=Es*H0|y;(n&@RR2;DcLf;wbYBvuzJjs$O$ zIBpj?Us_4A*wBelJN{Hi!(n#F1CiFGOL+zr!;E%gww7%=dEsP^1|_;2@%hzUn;6jG z#O!;%<5R54rv!pOm1rh|aTF{j5TGl8x%<;UvkYKncn7Ws{{R}GDO^lUP34m9j9_)B zEwHf=0nRz&y z?WRVh<(5_+ilkIxeHJm5)8>(h$=@bFl{CV|Si_LY4>-;$Ic4(VF3vcuCDklb{Z^3> z;~8lQs?FjM(rtrGu~c5=Gny_IGhvv^^UsF<>Fz4rP_u$imr@TnInFv_thb1-afDk~ zhx-t(ADvRW@kXTtY{O8MN$nX6{HVJN2|b3UV_QXc96fGo41S}{{Wp!DH|3se(Z7l zC;8QH7{nes0gUED+tgN_k^-3aKhCoJXK-M#v6X)JoB;fDSe0}JO!uq|6J`;*aG|1pfcarVdw#9-DGt{5qA6oPcBTkyc$u-Qo=93);6<4TH z{xtnBPPWq^5x|2jg6>Byag3i@xLc>;O-HK~rKO?{+#jVio3H!F^`v9^(+hP!jZp&_ z{J-!VRBmz@^vDL6_(0BSt^Ftw(0FsL(e>H=YkIJJHOzCL_kXQ#QY~zFpT?BEk6zPm zZK9QtZHQv3N}rhUYmd=vKeY5~okGSEl3U0Omdb^T`t1Xn^zVtjH=DxRt(CG{B=OA& zau@^rL{?9PJWpxjeMmG~Om>pSerZxdr2Ye~RqTw~O`K$UipKj4QifI_t04q?8nG6j zfT0n;1dq6X&uTU6dzk!BsD!%<{**|>e!u>@fE)D(7r^23{;#k3%~=d})Q0XO8phy| zK*}2QZwYJqPM@SlZ*Y?thy;Nd!60DQo-Eg)zI*ZrZhv$tSS7qNMpID7%s~Cv;)@Ar zdg<{-hDJma5$zpOeS1MVlHIMO<(49!aCFXprFq6K|k6z4Zu7g=A<8M z+`!-6oPd7lqQT71LLMs8)j=9<$0r!rDxR(43mr#HlGQZJkkSCa?Hpi({VR+D>p$`N zd~n{>_@bTNLAum2%I9$Z06nQ#Ihk|&N%y>B&f_W+k+Zk0S%&^_`8F2>EB9K+Yk8LR z=4;ZX5OQ2~`qh-Ske32W(a7s@jMK1-uX}J%AFy2V8~8<0zq_7D9DRy$x-~f<9CK2A zh>i=~F$_mHKmB@!YXlbA%z*htxwy|XBnDrGgTxonqcZ}C$1U})v&pei9%&*>mdSgZ57g6WmARz1S3mRRDaO;(RLOC0a6ZQ< z<%dyO0kopHTbo?q5CzyLIrPm*=jl+(hr6>FbJpksjCJcpin*|o%`Q;e$fT(5D{{{H zp|?ny7bQkBp0&uW_MI44H@2#qd))Dy`sS@BwWW@lm7(X4^pJn84lRvMCUu|MB=mv5 zIzHauf5*Fib;}KJOUL|#tvY|teE0g%{kf%o&_dU#{{WV>dned#s_u0L{zH-WcKqo3 ze1Lz)yMA@c{{U|3C;ngUv+2C`sNY}GS0LZO57nvrC)i%vJCDAZ{)1mLu0&1kbEzuK!eII_7q|wOwp>wCyui}|*<G05&$V#c#m&B{;pr}*NhgH5;!$s~3?6x|-W3Ff z`#VXvCn7xl8KJEKJxgnGIaSP-qk;bbEh)z0VbSfs@8`W&*b4J$Cqe%JEXS=ON8@d* zhyK}*TALQxG&_y-H%%qJ=u2%I`;m|9TPIeNvs?8)$M0BCAzjDpQgtWp3X>1o#!d50Tb(ZL<$BQYZ5?&qzI%8XC|}mSIE=mU4=>vl|4zTT4t%KNoIyE zI~iY;vwup_vz>0v%EoO@-MqmxV3CdzwgvvE+%@3?*+p?MYP!H>h}p)^+!Kt})EAno zugzx)pF-KFXxc2_S+1Q(lI~{uF(1mJxwaQ5M3c@&I(de(1p28QM*#fjEv*$eXa^tN zG^}4SbNe2|47_EAKZxhnsp_`S#bzRgF%lOC3NcJn*4P5mLH_`JQ*XY}9h!@m4<_-* z7~+L;CuNK*aGT*){jmqqw88yul$59zUy>;wG(I-Wy$i?W?kHRfq_x~0ASgy zc=DHpC-b7nT9>WwZLZomEu~pwTmr+UYpt#_C?c^z9BLIn2Lih~nUzne%=|!PUjk~z zOl%Ph=l$VdF=baTZvOx;bDL_Ob*FG8!5#R`M$kss zB?f&*27?{UWRbPU*ImvBctob5m1RRyf^ z=gO0C^lE}wk+`^kqk4fr%^9uMHt5;+7@;JVK7_LR8qbNYt&?rE{$xM%$@yQ(oOLum zEYP$k)j3i4P!=@4(5$#&w?5S1rG8{{_*O@r0Ln^|N9w&t)KrnNBQY^K>J;XHXw_Si zqxXxE>reAxlzgnYtkEo^0pemkK<1pSZz8c1#G6k$n+BMTAGFIK0kEl~(=~j8V!fn`H#cxfP$VW$F3TTJ}ptKWJR1W0AY^tXMSNOKCuo zq7$4m5Gu?XE4$)pl^fh=^`~Xj8KpJ#p4|PaGm-oNlUdSgscRr;UHq}tPXPTZK|DNw zWV5mSg<6A4v0N;c>aWPw0Ds7I}IsW?-No_8qvPjnOx`!O5%&7Mnt>)8} zK=QysIR$D+ZW=NY;E~uc>G;vig2qI4`pw`V%;0w$w*G>xTlh+LSC(1hQIV0?Cbs;Q zCwdSVj=8J$7mFOhWeSAxoMaj~!<24|@buqX8N)MR-~}K9T@|mxXjOrdG(NkVH3f#O z+EnI9B*LG*otysvuU6Z}Q@n;VF3kPYjD8g@%eh>!HsJ7PpKcdwMz|c|1zV3q(=Av# zGUa_ua#CyeEUk%Mw{-@quCM0~Tjw1?G__%(JJ$Zni{~p5C!bnDs#!#TcA$FTV~XG& z_FMvu$orz5ZKxZ--cxd?47uq?D<3i5jcOJy69BJVnug=M4-wQ4(!1)^7dM}Fa*smc0rQ()#g5AFD+h%k`u$0N|zea^NPMPSTM2+d#% z>o_&Vc&)CkY^02Wo>>Gx<5J#S+(~Ta+eX>};iqqZN~IBV8Zm2caUMVM&pUS9MYY@k56Zin1L348b>Vxmd5~R_;Pxd{feIPv>1!!kY;z0t{nfbt0BE1k*Q|In0pXim4yBLlUKS(O>{>03w~;8^6}VtI2kTyg;V+3gU7dx# znW;rJoTxAv*C5c=mKu7VphaV7Z0&cd20tR);YVTeioa>7+G;R~Z7yS(4|HtSZ-#zo zwFwC2uVnoI6)R!A&8ZF$pK7P15c+IvJLLYgaznKk`U=bN*gx2@G3w0C`I;BP58^U> zbE4Sl8c}JWQ#Rp;1Df%ft?w-NJ-dlx=wWWXM@sh}8NZXFw4{KDa@FKg5$BP|3wz<@1d zNW{OGxMF=2cdC|`S~Ev-Sy2#BN65oKT|D~ej~GrHS~-C2>hurSk}|8H5@KlsPy_hu%kWf0?Cw3dKmQwHtf2 ziW@ik5gAYy?*9P2o~Ez;g5ikT0nfM}*0dsy*8ajs8g+%i`DBT3RQ*MBmiLbW%cou! z`$TSbxzEnDMrr6h&51Nw?k$lV#xMwN(s5bV+B`OlV4GF5+zvnuxPkao49lG1zO_eC zUSqgX^Cwa2D((kWYYn0+FZP6FcM7MU&ZW4EPVz}5og?{%*!j(K*0UTduL?&~S}Qj7 zAy;ue)SlNJwXrR&#*=WONa4Mmo1CZ66JH}H|(eXazBt@Qh8fN{SI=3sjDH8fhI z5(8Spo`iWriqMx$5!*62jZ};k13CJWSa%YOdxec-kA>@s%AIFX*w+z-R8`FzjZ$ds z+(O=2BccJta|2b>CcQ%UPU<8ef-}daD_U!!E#v^GEIU^{r^p54p(pP%WLHW@5z$9= zE&~GK`h~?-)GpXhU?zyqMBA%G}23-zg8ytFu8gEb^E0(b_J z?REuBa@6i3tZZ2B#xqj@Y0*YO0AiBzK>`Kb0b`C$7ZFZEWt$2MgU5#?%jw*qUjRpW7wR+rOsXej$>a<`g z0&oDyB-FZm>vto0c_^3}$66Z;GeQ_kOOihE713Ko<=HUDNf7@4I?0JJ$bJ6+t!=^o z03MV70KgCG)hr8kxemkqtX5x(ZQk=t)8d3~kj|t4GEOsEkmJoi_0WGRzXExd@Y=~NcRGrz0_%u6jAb})T!uV*S6>q>Vmtr8}{{V@mm4zv}Zd~8W{{Wumo4=9xR9mt~u|N7185sxP`qLzPH%d*| z2kHH3jM%~d06l3l*Zu`a1(u`M=ti)<6-X0Ynl=FE1aVux9rAofrVig^Kl&N2 zTj9i>Pl`a#-b$zNnZJnZyi28_@h$Y5-G1bN52ruMs()i3X$PAp8(4Gn&-JYz9$rsn z;t;XGjOEDb@9*5LdK6ULyvck$9S08=7`RP=)B1=Uv-2VXe>Opnl7g4lhkNM&M0N0>)UCq_etV0py9ByCY zKD8`5HHyrK$RB+5C%CK>m&8njmgp6ZAs^#Yulyt=jLPE=+9lxjrKnkVHb#+PWL7rm z$`Q}CSWPm;Rk3WGsO?<)L$B^oXOw)zaH~?Kp1$kN-1yu6!2XoSW!&F=GRHsh?H}I< zrA0N3n1m0r#y&=0yYE>or)z9EySY6xi4=eAwOU;lRFxNf<<2t0{yqn%(u55zQ58dl&M(LPq2GPg2l$keU;FQ>yA+sPRY+gr;Y!~N{zipkZiw419{zO#s_ zh7hmibGYY*BOl%1`d4P23$*|ei;5h zRVqwucQ1TbW&MR}2i#7F_y?^o_6?Cd#+`rXn*RWWQp9O*)X(bCZvOzG&qH^iBxq!^ z2W`U=rURXuc>QWAFEkXjWHyV$5+VJ^@weSI(|=&u1s}Uk-}23W!jtzfo;$2?e-@$^(O9z%mDu54^7UMpZ=~j2v_SVq}q``DX zA1OKDdIMMG3LMh z`)^;R2UoM_=a>HdKlo5In<4)IEPa27`p|T%9)EB@Gf|K zYdc&;@~(N>1NH1HXGgKIYdDJt-Pu7c*LUMq%;L1>F2UkU1tE%z{{X%#N-q-G9)te? z9~3T`XS8Az>N^U#9-V4G<%)h(i%pGB5!s(l`|WCP_(-hwlk)yD3VP}G-}A*kDv;^+ z+fVM3@~O~wD@Ed4Qz1g3a5K2dfFIVY>bJ4o+N81V+q@1KALUxhr&}NSWWSYUYw;uz zMu@vtet#OM?nOs+u@$zrV_|&hb1Z1)H2}Pdzs|Md@ja7Dv988KG9(iw)9u!>Z8WQG zLh0nVg(M3afEZ^LyAF+K9BL8-80mr1rdDjYJ1vDiA+p<_HXr-`wDs`?o-!qX{{Y){ zqx&AyZakI7G1Ks+k4Ll%{;6qNCG&X-JVRy=`p9$t09}PA{3LdR2h4-F{I(vn;iFn- zK2r6d=+=af-7jih=w0?89w>m^2=+!}#(dvBcJ=8{TX=@m7FYAFpUie)`|*rsu8k7U zX#L7`QPQJb2Eh|*+n^Ze2faN5o%R#{5?fsV0Iap^{{TM&{3^A_iml>{d}i8K0AUvC zK|K5MR*r*ZxE~>UlhfLve-BtN+F(*XL64!$EeFlyMxH3QbXP5CgyfYsYmj|7roV|` zBOYa!-N*cXElA!P)5#gPUao2hJTa%0VfJ;-)f8wP{{Y=B8^yb|Hvq;*12M=Peqy`2 z^Sg*5)9fUMB?_U22jgCdI#QoOQ+I6UejtK;2de?zA^!lO3i*n3T(={pF<(!3{xy@p z+Nv^w3_xK20K6;aIbukp@}p-1t1j*-EsB=r#lD5Ac#A@w_)3x4={DO`$U2U=TH;hI zZQ~~yt!s;`*b->syOm*awUJH%9+g(fWBWpqK2W}t(iO(Qzi7FRB@BoF5jOtoT+9o5ZrN6q zKsd-d#Y+ySI{o1jk~$oz{cA<+SwSersigZfzEX#bI0!n7(O|ektHJ>DpprAVaz;l_ zQC98l?QSvU%#DTU4?Sx??2&K#jTy=1PAQM42^eA3`eSWHo+AgdOLedF?;hO@2w$Yw&U!N&(_=Di0)(ge1b`pIBE&fZF?JhtRH z`qv|)LL>~MgMdMxZIH7`GXU~2B;)6757x9J(Ju%af+j{mC+~edYSUS0BQzw*k~+IH&!y zKkE>Wa5$s}=IJ3Fe8u!8r4qwG2Zr=KRwvqJNP~&v^3P4qIi@C|Z82daffx?GLFcg) z0njYZ0T^w|{nJnTOcU|Kw{UBk{@IQe#BTDha7I5`OO0k3F|ytMrKzMNr%R`|8$sTl zhp46VSeaWk7;V6`DlHuj!105-(7c`$&wX~Wg zYp7?9jyFcYl={eznjII>G`awYP|1 ze9C$Jsf%-;u+(p4RzYrMApEZHjw<-Hzqxdj%WZA2GxE_&3kLOk)(5;eZk&VQgz|LgbllWAD)9-UEG#dt-R#PrSZ^994+# z;&_9X7-8JkDR<&6GDuj&E~aoYzb?_A&Z=4KS5AlQ+9k~3o!KgIKT57$H4bjaT@Ip= zZcW?*NCKg{)JfRNtU?k=#dH4v@l@R1M?J2JB4q?9W#H%6Cap=Kc;irnq^3Ayae|<# z@%Rc{sRh}vZZBm}QWn7(=~;<1%QW!GJW&|%TYG`ln7DZG zcV_EVO#3cR>rdSlre>?CS;rcasly`&8CZ_&55lU?t>~$oOK~gG&BDc+JJ#)XtDx z%2ov>ifseFO?xN7rMR{=oLnN#>gBHGsR_NMA^*4G}iKOf>(*U zZbrp!S$Mxtw`@)p$@zQTZfE#1Hm6kn+1;fblLRzOxj)K)~*2ISmL+zKOAcw9EGj# ztiIU>^35b?=gI3_1)q&(UN3FLfaB**2*D%Zezbt~O*_Z_ zAJ#3LCE~$0)0n6E4sp|(*6_=2@b#N|#tnG2&YNv=gUpC-*bYYrIW;wgsp1b005sh} zq=8Aq6LK&;Ds82Mt#4ND0hP4UzHAKDAd#jwjT!G6qG4M#1hvl0RB@u6Jrp*S!`RWS7ZzJW>RE zX!qcZh6Ii)OK2{oxZ2)zQNUsW!R!8bsAbcXF=+VuRfe?_Mm*7mQF` zvmT2csc8|qv}N2tKRS-}130!o%43~=hqYF^uwfSXPD*^NJw!?^+VW1mGhLk`CsiI&G1K+3wj}a8O-1 zC-BV|DJ$r78YhX2VapW`%Y)XX@fX>(7=_KVyWK^C7%v?41pZZ-rubgwF&yStV~PIZ zWjQ10aDPhdbo~jX556aO@waoIDG0~EB-T98+|o2A`W%cdWwwQiu`Uh*jPedES`7mF zXiH3~XA^Xi1(qKs>yoL?fEgS<3LHFy&6b};VHm**eY_d(AqFD}D zpQ*{A)qM>khl+mtGc->H>CoF5^(*-dYSK9n!kM}m!xc4Rz-=1cSgf^9;EcF zooiauujEKP*wD9JcKmA1pM~etR!_IOByYELEAwt0M<%)JN!>Y0#`F{u_f^d(HQgo% zjLUE5NIJO8js7C3T=>pQjl$k7i|R#LMvq6+=6Eb6Um^}#McNpQV08D#;qP2!yNNL| zh!&9N8R}1^P97ZB=0=#TO|8kJG%od9tH_uMoWEsGDx?U-vmj#Q?*e(Nt8C>N*e2{8 z4Dc!oDAmG+Dq)17?c{{S#%P(D-FlTPfDO_F%x+`$*qjO6-NP^@Kk`S<%{0<@J-A(m-# zAO{~lcKs@hLKm1ZWnqJ!b4uc|G%z%Pu$6`nO!TU=BDCN;mchVm^I8%cMTv_40IcXX zp$GG-!CZyg1C|Fl+kk$w?iL^s+p6W;aqKhJpi#_?w1wys85MR`bsscrCT;;e6nYAh zC?;qOenDkhP6du!If&8&=R{TNh@B){FQ|} zcWT|zzzp~p`Fal3kuyfCcmrXS0s#6}zL0ldGbwhDBo5qE?#o*qn-4n}3B(yZ0~n{{Scd01Bp0$v3(;@{+6;%u;{6-_A;4S}Zx|p+C-y z_4d#6s8zUc^Vn0Fxnt-X`HDbGA^Cp>Klt@1`{(N8^r+?KNcNC^Sf}H3=iW?yYd{fh z$~UgnH1^|h^psNuJfEyN{Ea?S#Jf0=3zEcx4_V(f;;+%zmGE*PiG%0v{0ANt^*7 z2iR7d#L8b0?j9|PTK7wspgW^<>F%bm;Eh7Xz~(YKdIA15tK&0qHj$-GX3_5w6(x_V z{{Z!?kww;<%RXcvZeTb+=d}rFM3$#SimUJ!?Y|H+z z=LF}|-ldNFQ=G~F03NHi9Fk6RPn8Rp-MaAvmX?oj_D9QJxN)Afb*^tWHrqBM<^b;N zTt)7oEV?Dy&2a*@2-u+He!cvdeg?mO~v?OM7+ zUY#b;+Id(u(U$Ww=rR3k8(*JXI#tSxNES00+44}(>AUQpN?^U$9Ww{fZ zjY4C#MpXfT;2))9Exw&&uh;g8W1#a5W%!p#{?E{^ZfquyTqqkiw&9$Lvj(4KCEV(< zvag=1Ho0Ej#+%|OA=9)w#*9ecC_7}3wt4rdDXk7t!L{bJjpw+BdjL)oii2H};8?(J zSz1#3m8fjBO>%1}W{w+X47-BvIUe7IL#uq0KD4uSg5Y97)Cl$&^;z!dpIZ<@ku2t0uXs~g`bhh3pSs_+^ zGVK8a_(%BCdzBm5ur<9|BRjOv`RRwj?fyTdQ`P))CWmirCDxZAGe}ctka3RnVLVY} z5qDc$sUsj5{+<5-8svO^soLsM>5@RM(fP;kDN~&E=8{OOvwc1#M1J;{IQlsM01A|R zO0fX6nswrZ9E_bs1zJF#v&))bm%!nLP44 z_`W7-5=4@Hmh>xt!1-YD`PGH^gQF0;lJP@u34ombwdYn(X$6hCO&!+dj48w{K{y>a zt8i;tN=FHb?5jr2_m|(NN@2^quYnfNZp$2@P6)v`;DcG&7j|48Dbd&u z^yo**-A+6E)4#X$nF%X@ZgaQ(S}*w3SMcqFMa{bZ0IDOWt8-9K;e9=szi&i0M;4gQdGUuOB-nfwfjq zmJtjOeZszMHvUvW-zGWimL1ikZ@S_ zq=B0c?-fpu4-&bmm+8@17JvbYbsalXc-w58Q(D zX_nE+la`4JAI)o?w(xb0#-XW2Z-09VKOaaFpw zwstYT&v6$qI}CIP{{Ya`GTmJ!L*V}aytqH5Yc$qR!Q%!@+rgZ3H%D<+k^VjN2$bkk|tB_&*|2!$8l*X`DR@DF~R(eFe{6c zUL;nG{{XZqLRHhKAl1fzG-m`5YOTeLOVM_d-A*V2KTC`zt9Zj8EwrQnc+S(>vwS?P z!HW6-6+!C0R-T;$$3CMme4wsIhjTJp1qyt&E1t)ZSXzyU&gVj{*^p+s$s%O~YiHQjRpf>; z#nD07z;0ZR(wYOAf;pqOUm@9_`^Zo0S6UmH90{c>lgW^r3X?>QW}VfC8*^KR$+qG* z$Unm4B7igE(4=^Q`$TNN>6)%}l(QQJ)Gdwz?+5a#5cqbQpucYQ4XR z^;`JE#TCiiFhwAB9e%(9n;-9v!ykN8QgmpRH&ni{X2G zg|>v?{{VM2&IuYh99(KK2+lTvxZwBcOnGdee>O|0UyKz*82a-?m|Y!u>KZku^5caR z0gPY@jQEbu-NMHRRU-ofisa_J({>3LdzHfvpBenBwcfL&&ux;CZXANr5<&cEok8X64{%vvbyoiQ+gyyEIJy$cw9Zid&|es=tB(}lNk5nl zINO5c)8!S;{(Um~Mpl~c+TRDOOPtkfiyIYEZ#BzRQ^(3hdA-i5e{$;k@KpZ*3Yw=o z-p&AKl#Jv6F+)rfN2avC54H-IT9mUMyHQy5s_^R`3cbI#v$waM<&sevv&J!#^)==a zT3oT*%H;Z!R&*%MuZlFrbO8OKF`j$UX_Tyb2a7y4cX4=Z;kHy*ls5;386W}m&2?W5 z;Fii8m~JH9F2urtj3~(dd9A%_5&gXkflBH}UuEOWyQ@y%sVq3TwdaS4$JK5PxVf8)IVb?vLC!S;K| z{G}?9Du70D&{k{sV#VjS*%5@idzi#Z)+%;2Xz~Gdb$Jt8$#l5uiC7Hd-n4CeQ>a@d zyb}oKhTcVVTwt!=fH1Ds@4^dp60m6HW^$v|u_hnf*=0Kr($=W`5oK7;E{vyRH=PPMi3mRUUAq`F{{=%=se zSu^PuFo7Qo$&f+$PkzR!GTd8m$nh{d5;l?aH5|7t=SOwnm>PSL1nn7#LE7Uzy=w~V zM!dBuWPqK>T}ph}9AxqJsV)3Ne{8a&x0)nfkLGp9*0%KT7F+$IH@r_RQ8wfZ=OknK zRPwY^XvVPDbt?~+E0%NsVI=v7wQkz@$_YMOxD02IT0TZkw_29o4Ifi&HauH4cd-88Xe6g zyS==e{K#-RR~s&ocMjQBHf3z#qd7c&wQAd3)U20pnq&jCoc{pz=~xblrqpcYB52m; zFi*~$9Ar?st)%-vlVpI5q@OAMYJ@&3fsguJEfLQwzcBTwCVe|qgtAEtykr$1Fyr&2 z20o@w_LG7zaCohM4e?{Ex2!6^t!3*G7_}wICv+&;KT6Zl9U##)S)?Q?n86@txvP5% zsUhS6@BKx4*M>e%0l-MkU}KDZYr%uVGem9XjzCB}9!DdnuYb@#ci?+-jzzA2N`aYv zA@Giss`zmk?UFlyi?&$C2qwJ4#vTa2@V425i@P??Bm)e;TK4Oh_jr0W&mmCtu6yEY zv*-$n0o+If)Z&B(&u!&gD8U}%xT{)TmveYyjs)`x&$z1)FrbX}rr%kWkOxy7gQ4ha zcfj+%+y2bVufsRp!5ogYomXf!ZHJFNXvOzCYekX=+YPJ`%HMtDP+5O3@vck88ny18 z78q`vnVGkcKc#l_DEit~>dO7dzdf!#uboH4E{51HzE*vmo}Ms0=dz%BN;9(3qf zjPcs9+FhlU=H-o99Ar&_@}EKta@R0QAXeVbw}X}^Bi5iTEK!C`g>DLw+*f;w=y;ct zJwAET;yB$Qk=Xs>;{fKZTIw49pNF2qb)d)$#BD2%Fhz127PU011XI4y7!R8~iu7G= ziW!^tgdN?DJ>qnaC5NyXIi_2n6Sx9H&&`3-n8GaCAAWpJB2OJag#zDGj2>P2_iKN zcn2KRmZzpv=N;>yZvkq~QOqgJBXp79F4`oJgEqE z0DQ-h{(Ds4Xn|rU%?ATKWd8t4>tOJ;q!SmDQM1D-Bye%g1}XFCdOV7zT~v7__#A$9-6fBOAZAIm83QXGPs&ASTvry;kkJ&p*uD(4#~(l?V9Y`{k7>O zv9Pz9VmRI9+q3yAj$N=aeTPq4#=5f6Y~CwnhVCXA=5Q3b$DujRQbJ}5K&cp2Tmeh8 z1A*4Jg{_0j3`-$bev0R5Ja^A((A7LEWv1F&&kgciNh^@-2i+LX2enng$0U&jZOWrP zGx*hgTPtJ7X-7YeZashmjpyYw#?zr-H=rZ$b5tbk%v)&YK#{U3o zr_-8LgNYAgnzI5A-bO}2Qa|zGOhx5j;oBI>laI!xX31gdGy00J8sHJ1;QqBL9JYVi zAI^{xhRi438z1+}{{W3xjkgvDyC3}tzs9OBF-Pv7(Ek99TZbNK9;`o~{{UW?4~(6J z`+w}Bo=-Ao(Z7(Wp=`!}pZhIJ{{VgdhyMUUq$`rY-9K4B^bl%T`I$4`NYCb#5g9*M zVfn{Th@J8O0KEbH)|kl9W*|T5lm3RCCo#-@V?+AVAU`Nxq)0GowaK`UMGPfDnhazv z?wrwJI=>AO=ihe(#(zUy9diBXMqS^~NSo??7iQ4v8fCokT})C)!-iJI zL9TPes}7ke7QMbJbsUk9CpHt4sq1a&iqmfj6Q?n6c5oP}k3&m>=I7 ztu?NWP=%UV7^>iIW6gS8NoJO??1n$OysTc|N}~fUu#FfqzQ79v>&c-p@+)5FjLmNp zUMaB_XzpHYB92M*_pZZOwX}lT>2IJBT*$v8N;c=*S2?cCbpHSqEzCc=nk(np*ufcY z-<@}YS#?;h1iNRHCKNt6$mCTwp%9NWtd5UI0O+I!>fhK##bHsW}(d`bEDaE%ara|3>>Jg zcf~6h7V^0Zv0E$9;;s!UGCpgo#vQ{>)yVk5&gu(<7G_7vj0cdM52-YvR_{QaG^40k zOBmCva1YBXjDB^Sb8)*=)zz1+h*eR^B)K1-H6ELIV$)%Y;7RAC?98hZvBCNZ$kwjq zf_s~$hUPe~EzD8M(K3AD!vVn`<=O0>rn(M5;*~FqSm>83xVbZBPEkWy|F5ggdk=cpvs=r1)s-wHWO(Bl-a?!wBo4%y<|Odt)~NTBLo`gwl-uTj zH-0CI?X=t3qq6%w>f0=lBE}tVGn^>&shrey)NrRMZjD=i5KPw++uTH!W6K6PXK(>O z<4@FeEA>NhY4$mlR1y`5C)A8r8!hUm&3802P8%UXJAaj56JATDiLEEMjnzpp9Gv?K z!A;)g&YqSi+-o}3{+D*~PiZu48*;ByUqkO&x-G@k?}uz6(=fkt}{&q z{N@svt=n;v9mzc8`VMQZ@Gpm+7P*qyr?-a-x_kyn`t;|4&TDs}f{obNyfvts^_X3( zOr(;ae58(p6{&X~w)wVwQV82`0aNB->x$@xlJGJ+>P>^dUn~GmtyYu6F-fU4RcT0?O5*B19yR}lisx+|1DanNS0_%`WH_0n!1ES%$x)yLcEmewsR7~194ztyDc zl|G;YR-v9V<}tJKq;8@4-T3CBT5M?qncwMp+b@W(!}(%494V2T0YZ)s^Q@cAM#k&n z1>R>#VgAou#yL33wsD`ObCx$P95;wSRS}Y-92%QTyGSnv+hvu9LFK62KN`;MYRy~| z*wxZ*G^k!nn`@6INn2L zOlLob9qS-{x*K@VsS&Gf!yZ)k>(aUpx4FG%wQnGjNpu+|y1iOiE&L-D;Y5<_YO#@{ zR`1mNcC8~e*2GF2uEsu@ID&Bnjn&P?t1f3}P8bXfayjkCwrkmLZeV*j%FP)bNnke) za4X4lD@#3JN_NyXS`#6C&mdUPV?QW8I@WZzR(A#7&79jqnASjZyB!Zb1!mr*#WZ@K zhV@ga#WmAH@E^5>DEZF=t#bY<@zJ`xmqlB2jf<*0lQ9ZFImyR8tDEru0Ewm2Zmq@4 ztrfX%F}&8{hdki(ihiqmqdoNctoOEpTc#4MGPlfBagI6;0s2yMNnF~EA8RgF?1&(e z=T1pv({^9oOm_r;vlLF40F2{2)`j)m&E}P2_wlTE1<7h1xL* zTM~7t0eW9}sDJP27oaB{Q^Wcuav) z+Iar}PF0#qmq37gfCJB7gCEwG^TGy8>vJWncM)AmBWW^K#~ctd(u-e*_I6j$wf>r) zWt3t?X|iK%=OaAhiX6O*lp0!__S*K5JF-gA#z5V~=!ha*Z9_ zag1Ps8#!;zi;1-ByO*{$HsM}HSlL&QGJ2oNvHl`zS1Bf+r2`Ve>>bLW50TTFmYvf> z*$(m6lG+}T9jUncN1Vgv+6DkM&fbX=NuPRP6~H@j?bef7x@Oa&jpuj$@(eQ*f%wvD zhjyDYEXY@SuF!qOZkd}$MFgt0agu=iyc*-7F{YUml0vV(Mmfm`sr0U_JBtsL{GmG# zdsiZoJbER$i9E#I=Pej+{{Tv2NYPCeJyv}l+8J6Eo+F$bil?XQe`C1QHfd&ipR)~)uY#PD!q;a8udRj={{Uy*ERqIg^HF^Vek&)rp-rtk zOKlW((cgKDut)PgK5oaKT65iaw%K-sieeuFcYZ1vd`)`=*^cThjT5Re`Df+s2L#sk zmEuh@?&w5j21PFZTO%psw<41lQl6tMk7s1_s973h-UqIE#d^T$UQ4e?Hd!119_2_G z>CJk`=}LPdscy^<8({c1QwO1o`il9k=~T#}M`O~ylJU@H@Lr}98;nC4{{VPb&C{co z`P6j&AO8SdDC{}4a~ktz*wAD+Y@Rr!NSWg$S(j-C3fQYtLvQBpV#S650OJ*E)+hzE z_&ZMC0U0gy{Hv)_i;`A3om(dESg^di5XRB!S5biFbLM1m^{c~Oy+DE9&hI1sT0%E| zVzX^zvW_(mGR8*ZhCp$id;MverM0@lZ*>%>=R!9H;EeiG_EG1xgW9(p&XU&lOPO{Z zE)sFp8Q6ZD)z~~Y2Dc<~yccl*aLDYu{vy2V&Sg*BUuTrZEmBT z+A)JN5aj#%)>4BujN*EClQbG+(s}Q;-U7pSOeo{|R$qo^gIv+H?N0tX=D9-53>M^} z?bqp4uYMwEcYYeav`dmFlHHL5##E9=y)(mq6MQ$}{{ReF>32VCGuy?n_CQLL>}r&M zcYA6MSCM2M?j)26E+;D^{K%s_dh)`td|Bh& zH^kaZkXU)aRf9-mOaWY-uCu3DOycKucBoLJJv-NZEIldGT-qEp>s5rU1#{80J$f66 zp<8umw#*ALaCjcVvt_)F^URJF)mN!fOjUHl#HZmELZ~*bZ^{K7( zO)l2y#9F1L!V;xSQg!?eI#;5pVbwlM=+8cNaX!&hQPjB=xVnTBv;s)l!=+)}>Gske zngt9`@bQ|^(=R2BH4yEEl2>@gT!K4dq|)R+x>;1KA=<&l2>RDE%c)dLmD}+;KEG0% zca6>~QnZfU<5b*1QgFnab6506n`*}v!rM>E-&)wZwzbwYN4=SUe2fuUI3R6f{VE+Q z)+n}lTbY6##GGTFO5~PZQ9U;9b;lhBwcMG@t~~8MhzFAq4N=2&r(6bT?imW5t-KY% z^yapvj3OVO1a-;pR=ys=wY6_OV^JfZ0&ETadS|V0I&)nPxXur$hAmQLB^oJL@HG?Z ztGAe#dhIpaTIgC1p{?qw(Aox9K!OI^KnOQrFQM!7s>$Ko5k8}xO6uMyBvnk|zy(3) zKIW&D-o;+W7xpKF<|$o0x>7vX$S_E8jyDhRt;r#rO>!ZY8>nM&k;+EW!x=SB;x+)6 zvycpRLK=pxpkJw<05NIzmr}B#%>=QiAdJ2^0OKCDTf-8^6`L!_s7oFR$E9wKO4jed z*Lqrc=4(`%Vv;5h20Rgw*10_+L6cF4OSwXIE7hqD>~+QzbltQcaZ#Im9ILSXYP#u? zK^lnKMa4K9$h)kAw(0~u#L3tn(>0N(%oH8!%66XF?OJB>)PC{?2d5RCeQ=V+F(uENg|mSb_pl%j+Df`pZG`zJ*k1wCarxde36z=KINk-p5bX6F8P9hg7!6^6Es>crKR*X*sIHuj*A!BU^rvdx?ue(Uqzq_MPx_XdfZ9WhM^ z)tAKb$+yal(T7i)flPgOP`CpT;ep|XYDl#3e&wT|psgEy4)SaSu$29Hs?ZF!z16N4 zYv-Q)Q-pe)i?&Og4|lGr)4|%5;GePtAMF~~xA=cKP-K!dK7lh!nFX6T0jFFL0lOGI zixW(3Bq%wZJ@7i$sm1XA*;!1INZ&}PPyx8?EHZubSCc@~k$zo1E}hP3_J}zd<4dR70(n1# zbn$5bJPCgU{{ZV(vo48Zq~gL6{(hAI0PK5AU|K>cdqf`1o+{RZ_*QTG=BvqM`-UT$ zy~OD79AefQjr3Rx1NLY#4{=928iPD8TM2Rgs$a^XvC^fRU$WSYyJQc@^fm6yp~0W^ z5P#n_PJJdAU0Y;I*%%=)icUy5T4nuTciZg>#0Y4gbDrHXSh`)IgIu0jWGC$(br|Ge zcfqaANo8cWDJC{47{)^!V1BjCOJzN!jH*&r4409Mz9p=fk)h0Eeb!60<5BFfJf^2{$y%%tsC3-`Tiz3}lr*?iDANQ^P@vgVP;Qg0flhtEE_>o<+_)chiM^n-*O!nNWKkuXd6(bB?+b^ZC zKltrMkaYX@{`JCv{{W94>r=SKqQm}q+W!FTqPdOC=%d`WiP@#iI#eHJV~)2!(9`X+ z=U5CA^ApF`v?0-NuI&&cSZ_U~A&x#;1dI#2XeKiWBS!|~A20_an$MrZc5{Nr8Y0r* zZ8;eFS5|b3n;^#a!dZ9AnD!mtiN{L6b7f&^Z4tP&cv;D1+S&QB-hi>?7v2pwEEqg) zNgxt7o<5b%-gr9l46?@{1$S^ajC%3SdV-u3I3OM8r56eWK;xgYt`F6z^T`FYvEx@d zRPjr?D4RItcYN9X4KmhSyFEfVkOh%OKYTC<^ya;aOGqvzZ#EQv-nZUd^h(6J@b!$~ zZ9;^F>B#5WnyK7YvByKNgjmv83WVH#M&RextBac%T;${AWgC~dInT9p7rqf(ZjIEO z6Y~sr_N-g44P8XJNS`B(!0rdPLCqfP9qcymMuDGfOvyT|gVclV!KV#g_~y}-NShHI$_WTZ8OHcCDCk+np`FArqY5r*XB{|Yk-Et%yAsVFwZ-GpQTt?wM!raA2~no zs+$b<`#*|$CH|WYmHN%6+yaC5qbPCTaNrNEUHFfxTg~D4=d!p-fZWL>L^_fOsN%dW zHG6qLj^-kV__)ZaQ5BWG#dOiB>Ztz!Df)^4TkE+lU(A)aA6y#S@G(}_okt`mU#TDA zT*T8{MmEZxU>(!1PvKo& z((2~_0LlABqM}OfoRkbZkHWg?XIYspN=PA*zEa3Xf79`gG!lJPm9<abV?(m$;1<9C&46Jo2+ho7nT0V_Hk3-dz=rD{F@X?-YfP^sA5I z%~d19SWko0x66;riUU&u=H6K)QX*AW?iAqFJE@JVi*BVFNBhB0e1o~IyYoB{tSM?< zR3$>I0$1zF;;`k@Z>@xqeU4|7?+{ewkEJa@^pA#CBHKs1xhsd1a>uFq*A3$92yV4e zE0*00w!)_!YqqnSQMB-Vlr{?1^W8qzC35ku2{`xTuWI7;Xrn@_3keq)E*o~^-=AF5 zR~y*EyT3>#w=%{h!aAru&MF8lCNfBT*TV%Wxypf#)a#3HGFaV#$`V)csN2j{{o0KB zWBOGJ`WAlEDSw#fCnl^c<-k+)tm|*JG^9%ySk!RCxvdD3=jYa}g49yv44(CN-f|c) z?~m5AP+$ym$^KPp*O-Cp_fAD1G~i0f6Lqct5C>+e!wxt*%qCUu65oQwn%jF%bn69JLKmr&P{X`i{ZnaIS=~^ zKb>t>Z*xVl;eQ=&(e-URO_f`0mdzrtJOL?(sA}4E&Y`hl zjv~AIFyxcZOmkjid#C8BsoR(?Y}ZXy0h4*$-nrc|bipKy1f$_9@l6mKvbT+oO zGYMp}Do_G$_$MrT$?f7O>c=YxpNYuzVP+lo2Xu2dC3L*V|(K}SsNt!b*R3kyth|2MVE+QOSQ88$F)-e zh4WhMeAxB^nR(%jYW>lqTNsriWd8tINy+b;&(%D0e)^2jX;Rv(Pyk!Z2P9{%PZ*{{ z@iyhRnXN67H3V?`n4ZVzYV1lnNVK04c@}Yfw@g;H+p&T{{RkY_LtW$Ey6Rp#=AS!sb@_TeD}-~w`3{RcJASa{|MHK&FKSrLvGdu$(>70FFa zyPY+8Ic;;cp7E`mysV259Fo9dxZfOI*y`RKxB~4ZYjPz~8|UT#;2*%6gT;Ozu+%N? zG{|ICHo{PLW?p4044rVL2XxqqVx4XINV4LY|vbJl6K; z%$%-hNqcbwg~XUqpd9IVF*;5#4bh2G}Q|b{w%65>m1})nJdeh`U=4okGSDJ0s=~f`K0vbD) zSu(vz#(ygGTWkBcwAGdkE@ZPvi4G=>6990;ez-N|+8w@^WqxLtQ2S8a%E&XgHV!{r zQ|Gzy1=g=Es@cx=61n}@i#hpEZ$Z=2t;M~Jqcs(2Jx+x@ORe0l*|nJwgo>aD0)kKL z>(Yn2y3^))q`#gcD;3xgp9CIBQOWw&Hjp(b#wUUpzGXgD(t)2$EnXTu-NxZP^@Xg` zIorLmK=uoo%+}`B_OjOUTU*-C71hzflgUDaE56}cJQdPdPZS|TbmS51Szp?dM5-PYF2^jm+q4tij|BI{ zX#MYpL}dpUKYLksHFV2e2TX#)P)(CeSpA~hIAWlV>T0))?sQwdJ}>N>l>1SWGo-UJ zENist+JJF~hAzKeE1AlqWoEQH zZBB8zdYpZM+S5NkEU~7Ro}y_-Ah2R z)mh`Wh8ta?-bP^jvoP(~k@;0^Bf^&&jB-T!V2()OAtssl1au_U+B2J#oif~LlC_c4 z?k(Ug0*G84s@UvLPtK}%gH`b7*~PkE>8T>PC+_E`P6ct=g{94$Enz&MsyCS#4V5f9 zs5ODBxi??&?Id_b1QGYW{pd@$J2$4(%KC|!UQu)h1@e3n`z^k^T~|T`2PSx zS)^uQS@#jwKi0di82QuNTMas7f%mRi*CS}^KPn@A%c%L4k3R85#-pZNM|o_c_i`4Q zgXbUJI0m}CC&T)FzoXk~I>cg2sSr9CeQrZ2pA9<`S=k)l!R zT-7`a;%~6Y9f`A*oNeB+VBqo4`&Krk;C*h)9kKoXT8)G z3GI+ZVwezf?oSo5srbi9uw=NOR)DtS8muFE9R_&M9`$cj@q8KsT=}Td?wfJ$G5$46 zP4RDsd|7sES4#qS2bm#O7#y6D(~5SoyEAp6De|YUVQy^Wo-s6q8Kq@y#~3_jq0{UZ z-tsBojYBHPbGJDJ)Y|M`5rx(p*hpYWK1;CKf;!{VHG4_XG^?vPZ#2v6#4N zSnRbQCG8lJ0*^8>q?759LX%3uloXxLCsFX++GL_j<{m_yB^ek#n5XztMuWs!1heU6{&}OKlFa^WjdFXQj&K@uoJ>W*E2O{zJ~RoV_z)`;djLEyWcK*ZKwS=b0*TN$i5 z`~j$lN7>?cn{G~7RewC!uZts+RzQBEpXW_$Ns&tsIPMANf^2w{dQIh}tnGPj@XCOV zk}C%3!3UukKDAqP3vU!^%(qHnYT;0kFGx))o_r`qA8j@54t(v{cG3e@UDw;84ak$coDV@a##Ktvp3U6 zXqHjNg9@@-D!zTeJ!;!cB#{a-PWLeMND|W5REZ#gl2|;syyq+B0!JYF{{W3;Md5=p zD2`DsNEnJmVn?v*Ypc?}Ebq<;*f6A1kXP16>?8{{U##l2+D(xj?L3s}u73^IW-$Rnu<- zZf#pHqllbSMv|pX>e16!$!lxlIWH}BG}I%N93LX?DCFM9C-3zb z8P9yzM{Z)ix764!s}mBkMzfH@MBrrY`XAD~#@|l3vyMsPid;wvnI?&V10aA72Rs_J zV->_2-L1^4G$1CHbhr>knh z&Lwn;OcRW{75uAJJXc|(w4+T(?pEyLV9kOE=tv|}d}Td`rQu6U)QSNta{$W|sW?1y zip$zURkd0gssI3h|9^7iR%Rd)$!R=rTTJV43P?g@2zk#w_~NeU9v@(q;BILoR$aUB z+kx~P)cWqXr)n2s^4i?nfdGwRPNj#_`PT1->`ZpLMx`XkOp+A{y+9!K{EcPIxg_oA zYsr39a*u~}o1I5p)NF2VB#Jw91$TgX?m4YHj|*Qzr@?g3Ybwm)aKOe_CmAQEDhpU{ zY;`N0R^>}sG|t3dHw|kQhNQ0|iJB!4he8f=bBy~}q3Z_LHoLZt2ZlJjxTD&* zQ;+HMx8+stJP`NR&k9|tG|Dh!PMi-$I$CI0}PzpVlhBb4@E&ZmwEOAnQQ zI+iFG{(7IzuET1DhwqQ(DWMRpqm|`Xr>$Pl?3wqF2VV7IEmLRuzHZzkZ;I*{dKj+y00N*09 zwTS~;NUCFj2i`0P^fgOTSyj!=%G%GE)gsFfT#fl1>oZTcYm1pL?{+lBLaGMbv5fPN ztxu+dKB6PJlsqWExJ`utZ|lWd`v{8m`cQD5T7^;2bDY&J83jqK(rseZ*K&cJg*XT6 zT_%RRES)+9m4#rpg}9!_%&|i)#mJ5b+DRR-sESD@yWa(AI*qQK zs4dln%q=a{I9H5kM~f;$W2q)H8>+uGqy-MoRf{A$$JH_fPBy4uQBq1uOUQ^j;c zM2E@=_M5)B++{iXW|Zi#mviUbg8jV1$I`Ggxy|XiP3Y9L^EIT48XugI)0*!RHH8R` zc=Q#K9*GJ{jwiY$dl^m-*0m=h&;ENFVDW8~ zu`5fb%oT|M0<3uUtH;AOSF?+ok1)%e@Yo$G`sL{gN0vk59?3^`jP(tp;Wg7Vla9IP=7kC4oZ)4{{W#Hk(FhRIiey&SNTWY z8U7Zmxpa$hH<=D%bvXr30|(Ny$^FSc?2r8e{{XL0N^o28{&WGz&o#%}r!Oho%y%-3 z6ZuufiJQUKApz#`IuB~0CpVV_{{VWr4L9ZRl&##}w(NHA$FR*ifLvVPT1Z0`l{;syE4}bAisx6EV;fJFyNDh0 zUU4kayn&uEo`j0@e}^l#S-Wo7i~>HUvBW!5Z5>!8ddV|)Th{NaZ|<#Rxk<_lLS+CD zJvgncH{zw0!b=XbYbA`51Ya?Jc=+}1I@cHRHH3PM3^*)Uh84}*+{#xABFLa1k< zO&PaM1}+K}T1Rp5D*n?{*CV^Kxr*WjLAB#;!0;>0HTMnnWgUU)D^5`W3eOYU7S0GC zFB}|xIIKNUpL_+KU3uC^*0oPlnXL~^@OOgZ)HENqOLZ>bT@^qZMh67dEBisC>T}sm z8Zm&DGcQH}6VtVJKMwWXGTTKuW!2ka>bZ`p1Go1K>!UJ2F7?ft#60g2mB-#+Kg;=tZJ@E>N!0>N@t1e zq|h&JE%=+sVu6nt>CGt&p=GJHw2CG;MjtUj$Q8dG{+}$7GTu9*Hr`Zc9=_FwZ)mbu zK|7+7<2-s+VVdG6A{f&l$U9^7sO3x<=odFSd5IP$lgutT50Q>|h@ctYgRU zh)46NkHigE<_R*zo^cu|uR43k{L#K$z;xQA{{T8~+X0w9*;o#MfIqEQC|#ZOzBbjS z8>GIMBw#3Pe=4PU;w?edeEX>-m4*OkCj;r}TykDY511o41f8tiD^}1Jw~}$U&R{L~Y}iohJ6wX1Ka+>I=03}aXp z)Jjx+=40>ZE0(jiowfCtz93VTUsF&vwLLFbhW_(M(^A2Tkufr|oMARMU&j^2Y63eT zZNXpN=NUZpuR^z*W|y}-?XNl3tl_+!{KN$3uX<_N8|Y$rcv?bQq+9 zGq_a}$uIF{>al())wV%E)MoR zIuF2BMz0Q~b7Ljl_Mt4!yp<=8pjM86f?X=#3We3n?W+SB>M{0k4s1|E*Lv8ga9%zkF92Demv2%tp*ES@=0HIJs%0el}{yp4((<#U0CTm5|QeN{#xd2<|9+yD=VyaJ%^e%W4IQ?qW#C^5f zJ!Xx+F;ZGtz0z-3nbs*JCurzXzIKzi{~T~NtoVHH|@ z*~jv(MRl(sBzb3=H;r)$CE?z9~yWr+U1rpceXo}4nPm(k{E;2k)FTS zxQ`5YuKl$eJwD}PYdg5!AsQ$F0|KMBT+%Z>tk z_LesuTg9hLOjz4A%rVEH%{J^Lj(bkC@mvMk6q*@b0&Ws0J3tr}(dpW5r8c2&HmWD` zqXA{)F_RrSel^&~ZIlFo^a7?f(xhe7g&w%5=VRqC^}SLnT`GM(8#RL8%67|3gN}Iv zzcuA|8kQxE?7YGRVPsePr1a_Dw|sXtt2N<>$0Nc(iZ&6D9FxNP)*hamm zvM_OU!AT!b+|`No3u}ijaj#n3Ouz5;k#(ch_bUl2FFa~9mIWW zb4>8Oag!W+@0O0)FATpozeT~N>ODG{GHbUp+QSuxiDrpbRYqq`sT%j~Ptm+i+K-9_ znlIW!fi1F6ESbU2x#hnacCF#n({8Uc-7*{a-2e(f^}eJZzPfc-qznPv8{Vzyz5~^K zIiXzZmxkWUQMbAhiRPOs(KpIemCicwYN^!Zy^N~TRejd9-|jlCPvOOd?Ze(nd2tMl z_nUaY1AsZKiM|;@1DWkLMRErtAfKqLtDhTPZAkp6WNo<$*BMDi_s1Cnj`eRz@jMb) z#{ONrw=Be{iclGk_d#GYQ+Yn7&M|t}=)$YsI;S2RV*NjvIF$rf41 ztHr3z6|u4wcqSy1srvDnhA)SA5QlQM5z257D>EoL(Ze*S1!O`= zU%+5hEl=V-%$5;8ivIva$`#=Pra=ojUdkgzCxV5~2mgZ9J95W5aIXtQ8exo%?7S;}$ zA^y*3?of~Ubs5Hed(u@E^&5qjnwnbvy#}+YKn2acs_okxFh*QwKYJq>HPdLi{Q4f0 znrwQ1+Td3)$2XWT2|TIiJaTJ^)+Vz_tv=k>5ndd6~e;CxCE85^Hh7H{5d#Y8yndwY%8_OiYZ^Zpmzs*b$HAS+Op-E~2=7UGG*R z5AKTCZ1!f9}!ANwLQq4pMrkI!Ec3tbH)H~K zo^Vch_NJ7Y)R{>|l;iOH$#(M0@~Dt`VID!1UqxR1t2*mT*KOmuwuaRj(S{>wj^{=7 zD}$5tu7-Q-wS!KAX(WtXp)fQ9DmVuWYL�$2?1@Y7*JUE>-R#AxI;pX-aN3fa%kO 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

w-1Ha;^MvAs>G3?Gc%D*>j2azdA$kO; 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