From 402a5d634fbe1162e82ef303033c1384acbf2caf Mon Sep 17 00:00:00 2001 From: lianlonggang Date: Wed, 3 Jun 2026 09:48:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CLAUDE.md | 21 ++ export_qh_dat_watch.xlsx | Bin 0 -> 17618 bytes mysql表名.txt | 80 ++++++ rkutil.iml | 11 + xc_boot.sql | 507 ++++++++++++++++++++++++++++++++++++ 体检相关表说明20260520.xlsx | Bin 0 -> 50242 bytes 6 files changed, 619 insertions(+) create mode 100644 CLAUDE.md create mode 100644 export_qh_dat_watch.xlsx create mode 100644 mysql表名.txt create mode 100644 rkutil.iml create mode 100644 xc_boot.sql create mode 100644 体检相关表说明20260520.xlsx diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..3a84187 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,21 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## 项目概述 + +`rkutil` 是一个 Python 工具库项目,使用 Python 3.13,通过 PyCharm 管理,虚拟环境位于 `.venv/`。 + +## 环境配置 + +激活虚拟环境: +```bash +.venv/Scripts/activate +``` + +安装依赖(待 `pyproject.toml` 或 `requirements.txt` 创建后): +```bash +pip install -e . +# 或 +pip install -r requirements.txt +``` diff --git a/export_qh_dat_watch.xlsx b/export_qh_dat_watch.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..d16ed38b9d41330ae10edbca9760c516b78d68c3 GIT binary patch literal 17618 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

fhYx8 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 + + + + + + + + + + \ No newline at end of file diff --git a/xc_boot.sql b/xc_boot.sql new file mode 100644 index 0000000..6188466 --- /dev/null +++ b/xc_boot.sql @@ -0,0 +1,507 @@ +-- 数据中心sql + +DROP TABLE "DC_WATCH_DATA_ECG_20251231"; +DROP TABLE "DC_WATCH_DATA_ECG_ITEM_20251231"; +DROP TABLE "ONL_AUTH_DATA"; +DROP TABLE "ONL_AUTH_PAGE"; +DROP TABLE "ONL_AUTH_RELATION"; +DROP TABLE "ONL_CGFORM_BUTTON"; +DROP TABLE "ONL_CGFORM_ENHANCE_JAVA"; +DROP TABLE "ONL_CGFORM_ENHANCE_JS"; +DROP TABLE "ONL_CGFORM_ENHANCE_SQL"; +DROP TABLE "ONL_CGFORM_FIELD"; +DROP TABLE "ONL_CGFORM_HEAD"; +DROP TABLE "ONL_CGFORM_INDEX"; +DROP TABLE "ONL_CGREPORT_HEAD"; +DROP TABLE "ONL_CGREPORT_ITEM"; +DROP TABLE "ONL_CGREPORT_PARAM"; +DROP TABLE "OSS_FILE"; +DROP TABLE "SYS_CHECK_RULE"; +DROP TABLE "SYS_COMMENT"; +DROP TABLE "SYS_DATA_SOURCE"; +DROP TABLE "SYS_FILES"; +DROP TABLE "SYS_FORM_FILE"; +DROP TABLE "SYS_PERMISSION_COPY1"; +DROP TABLE "SYS_QUARTZ_JOB"; +DROP TABLE "SYS_TABLE_WHITE_LIST"; +DROP TABLE "SYS_TENANT"; +DROP TABLE "SYS_TENANT_PACK"; +DROP TABLE "SYS_TENANT_PACK_PERMS"; +DROP TABLE "SYS_TENANT_PACK_USER"; +DROP TABLE "SYS_THIRD_ACCOUNT"; +DROP TABLE "SYS_THIRD_APP_CONFIG"; +DROP TABLE "SYS_USER_AGENT"; +DROP TABLE "SYS_USER_TENANT"; +DROP TABLE "QRTZ_BLOB_TRIGGERS"; +DROP TABLE "QRTZ_CALENDARS"; +DROP TABLE "QRTZ_CRON_TRIGGERS"; +DROP TABLE "QRTZ_FIRED_TRIGGERS"; +DROP TABLE "QRTZ_JOB_DETAILS"; +DROP TABLE "QRTZ_LOCKS"; +DROP TABLE "QRTZ_PAUSED_TRIGGER_GRPS"; +DROP TABLE "QRTZ_SCHEDULER_STATE"; +DROP TABLE "QRTZ_SIMPLE_TRIGGERS"; +DROP TABLE "QRTZ_SIMPROP_TRIGGERS"; +DROP TABLE "QRTZ_TRIGGERS"; +ALTER TABLE "DC_WATCH_DATA_COMMON" RENAME TO "QH_DAT_WATCH_SPO2"; +ALTER TABLE "DC_WATCH_DATA_ECG" RENAME TO "QH_DAT_WATCH_ECG"; +ALTER TABLE "DC_WATCH_DATA_ECG_ITEM" RENAME TO "QH_DAT_WATCH_ECG_ITEM"; +ALTER TABLE "DC_WATCH_DATA_EXERCISE" RENAME TO "QH_DAT_WATCH_EXERCISE"; +ALTER TABLE "DC_WATCH_DATA_GPS" RENAME TO "QH_DAT_WATCH_GPS"; +ALTER TABLE "DC_WATCH_DATA_HEART_RATE" RENAME TO "QH_DAT_WATCH_HEART_RATE"; +ALTER TABLE "DC_WATCH_DATA_LOG" RENAME TO "QH_DAT_WATCH_LOG"; +ALTER TABLE "DC_WATCH_DATA_MONITOR" RENAME TO "QH_DAT_WATCH_MONITOR"; +ALTER TABLE "DC_WATCH_DATA_MONITOR_HEART_RATE" RENAME TO "QH_DAT_WATCH_MONITOR_HR"; +ALTER TABLE "DC_WATCH_DATA_MONITOR_SPO2" RENAME TO "QH_DAT_WATCH_MONITOR_SPO2"; +ALTER TABLE "DC_WATCH_DATA_MONITOR_STRESS" RENAME TO "QH_DAT_WATCH_MONITOR_STRE"; +ALTER TABLE "DC_WATCH_DATA_MONITOR_TEMPERATURE" RENAME TO "QH_DAT_WATCH_MONITOR_TEMP"; +ALTER TABLE "DC_WATCH_DATA_SDC" RENAME TO "QH_DAT_WATCH_SDC"; +ALTER TABLE "DC_WATCH_DATA_SDC_ITEM" RENAME TO "QH_DAT_WATCH_SDC_ITEM"; +ALTER TABLE "DC_WATCH_DATA_SDC_JSON" RENAME TO "QH_DAT_WATCH_SDC_JSON"; +ALTER TABLE "DC_WATCH_DATA_SLEEP" RENAME TO "QH_DAT_WATCH_SLEEP"; +ALTER TABLE "DC_WATCH_DATA_SLEEP_NEW" RENAME TO "QH_DAT_WATCH_SLEEP_NEW"; +ALTER TABLE "DC_WATCH_DATA_SLEEP_NEW_DAY" RENAME TO "QH_DAT_WATCH_SLEEP_NEWDAY"; +ALTER TABLE "DC_WATCH_DATA_SLEEP_NEW_ERR" RENAME TO "QH_DAT_WATCH_SLEEP_NEWERR"; +ALTER TABLE "DC_WATCH_DATA_SLEEP_NEW_MINUTE" RENAME TO "QH_DAT_WATCH_SLEEP_NEWMIN"; +ALTER TABLE "DC_WATCH_DATA_SLEEP_WATCH5" RENAME TO "QH_DAT_WATCH5_SLEEP"; +ALTER TABLE "DC_WATCH_DATA_SLEEP_WATCH5_DETAIL" RENAME TO "QH_DAT_WATCH5_SLEEP_DETA"; +ALTER TABLE "DC_WATCH_DATA_STEP" RENAME TO "QH_DAT_WATCH_STEP"; +ALTER TABLE "DC_WATCH_DATA_STEP_NEW" RENAME TO "QH_DAT_WATCH_STEP_NEW"; +ALTER TABLE "DC_WATCH_DATA_STRESS" RENAME TO "QH_DAT_WATCH_STRESS"; +ALTER TABLE "DC_WATCH_DATA_TASK" RENAME TO "QH_DAT_WATCH_TASK"; +ALTER TABLE "DC_WATCH_DATA_TEMPERATURE" RENAME TO "QH_DAT_WATCH_TEMPERATURE"; +ALTER TABLE "DC_WATCH_DATA_WORKOUT" RENAME TO "QH_DAT_WATCH_WORKOUT"; +ALTER TABLE "DC_WATCH_DATA_WORKOUT_TRACE" RENAME TO "QH_DAT_WATCH_WORKOUT_TRAC"; +ALTER TABLE "DC_WATCH_DEVICE" RENAME TO "QH_DAT_WATCH_DEVICE"; +ALTER TABLE "DC_WATCH_DEVICE_SWITCH" RENAME TO "QH_DAT_WATCH_DEVICE_SWIT"; +ALTER TABLE "DC_WATCH_DEVICE_VERSION_HIS" RENAME TO "QH_DAT_WATCH_VERSION_HIS"; +ALTER TABLE "DC_WATCH_EME_MOBILE" RENAME TO "QH_DAT_WATCH_EME_MOBILE"; +ALTER TABLE "DC_WATCH_ERROR_LOG" RENAME TO "QH_DAT_WATCH_ERROR_LOG"; +ALTER TABLE "DC_WATCH_MQTT_LOG" RENAME TO "QH_DAT_WATCH_MQTT_LOG"; +ALTER TABLE "DC_WATCH_NET_TYPE_LOG" RENAME TO "QH_DAT_WATCH_NET_TYPE_LOG"; +ALTER TABLE "DC_WATCH_NOTIFY" RENAME TO "QH_DAT_WATCH_NOTIFY"; +ALTER TABLE "DC_WATCH_NOTIFY_LOG" RENAME TO "QH_DAT_WATCH_NOTIFY_LOG"; +ALTER TABLE "DC_WATCH_PERIOD" RENAME TO "QH_DAT_WATCH_PERIOD"; +ALTER TABLE "DC_WATCH_PERIOD_PERSONAL" RENAME TO "QH_DAT_WATCH_PERIOD_PRI"; +ALTER TABLE "DC_WATCH_SET_INFO" RENAME TO "QH_DAT_WATCH_SET_INFO"; +ALTER TABLE "DC_WATCH_STAT_ALL" RENAME TO "QH_DAT_WATCH_STAT_ALL"; +ALTER TABLE "DC_WATCH_STAT_MAX_ID" RENAME TO "QH_DAT_WATCH_STAT_MAX_ID"; +ALTER TABLE "DC_WATCH_STAT_TODAY" RENAME TO "QH_DAT_WATCH_STAT_TODAY"; +ALTER TABLE "DC_WATCH_TASK" RENAME TO "QH_DAT_WATCH_TASKS"; +ALTER TABLE "DC_WATCH_TASK_CYCLE" RENAME TO "QH_DAT_WATCH_TASKS_CYCLE"; +ALTER TABLE "DC_WATCH_TASK_PERSONAL" RENAME TO "QH_DAT_WATCH_TASKS_PRI"; +ALTER TABLE "DC_WATCH_WARN_FLAG" RENAME TO "QH_DAT_WATCH_WARN_FLAG"; +ALTER TABLE "DC_WATCH_WARN_PERSONAL" RENAME TO "QH_DAT_WATCH_WARN_PRI"; +ALTER TABLE "SYS_ANNOUNCEMENT" RENAME TO "QH_SYW_ANNOUNCEMENT"; +ALTER TABLE "SYS_ANNOUNCEMENT_SEND" RENAME TO "QH_SYW_ANNOUNCEMENT_SEND"; +ALTER TABLE "SYS_CATEGORY" RENAME TO "QH_SYW_CATEGORY"; +ALTER TABLE "SYS_DATA_LOG" RENAME TO "QH_SYW_DATA_LOG"; +ALTER TABLE "SYS_DEPART" RENAME TO "QH_SYW_DEPART"; +ALTER TABLE "SYS_DEPART_PERMISSION" RENAME TO "QH_SYW_DEPART_PERMISSION"; +ALTER TABLE "SYS_DEPART_ROLE" RENAME TO "QH_SYW_DEPART_ROLE"; +ALTER TABLE "SYS_DEPART_ROLE_PERMISSION" RENAME TO "QH_SYW_DEPART_ROLE_PERM"; +ALTER TABLE "SYS_DEPART_ROLE_USER" RENAME TO "QH_SYW_DEPART_ROLE_USER"; +ALTER TABLE "SYS_DICT" RENAME TO "QH_SYW_DICT"; +ALTER TABLE "SYS_DICT_ITEM" RENAME TO "QH_SYW_DICT_ITEM"; +ALTER TABLE "SYS_FILL_RULE" RENAME TO "QH_SYW_FILL_RULE"; +ALTER TABLE "SYS_GATEWAY_ROUTE" RENAME TO "QH_SYW_GATEWAY_ROUTE"; +ALTER TABLE "SYS_LOG" RENAME TO "QH_SYW_LOG"; +ALTER TABLE "SYS_PERMISSION" RENAME TO "QH_SYW_PERMISSION"; +ALTER TABLE "SYS_PERMISSION_DATA_RULE" RENAME TO "QH_SYW_PERMISSION_DRULE"; +ALTER TABLE "SYS_POSITION" RENAME TO "QH_SYW_POSITION"; +ALTER TABLE "SYS_ROLE" RENAME TO "QH_SYW_ROLE"; +ALTER TABLE "SYS_ROLE_INDEX" RENAME TO "QH_SYW_ROLE_INDEX"; +ALTER TABLE "SYS_ROLE_PERMISSION" RENAME TO "QH_SYW_ROLE_PERMISSION"; +ALTER TABLE "SYS_SMS" RENAME TO "QH_SYW_SMS"; +ALTER TABLE "SYS_SMS_TEMPLATE" RENAME TO "QH_SYW_SMS_TEMPLATE"; +ALTER TABLE "SYS_USER" RENAME TO "QH_SYW_USER"; +ALTER TABLE "SYS_USER_DEPART" RENAME TO "QH_SYW_USER_DEPART"; +ALTER TABLE "SYS_USER_POSITION" RENAME TO "QH_SYW_USER_POSITION"; +ALTER TABLE "SYS_USER_ROLE" RENAME TO "QH_SYW_USER_ROLE"; + +-- 处理索引信息 +DROP INDEX "SYS_CATEGORY_IDX_SC_CODE"; +CREATE INDEX "IDX_SYW_CATEGORY_CODE" ON "QH_SYW_CATEGORY"("CODE"); +-- 删除并重建索引:SYS_ → SYW_ + +-- SYS_DATA_LOG_IDX_SDL_DATA_TABLE_ID (2列) +DROP INDEX "SYS_DATA_LOG_IDX_SDL_DATA_TABLE_ID"; +CREATE INDEX "SYW_DATA_LOG_IDX_SDL_DATA_TABLE_ID" + ON "QH_SYW_DATA_LOG"("DATA_TABLE", "DATA_ID"); + +-- SYS_DEPART_IDX_SD_DEPART_ORDER +DROP INDEX "SYS_DEPART_IDX_SD_DEPART_ORDER"; +CREATE INDEX "SYW_DEPART_IDX_SD_DEPART_ORDER" + ON "QH_SYW_DEPART"("DEPART_ORDER"); + +-- SYS_DEPART_IDX_SD_ORG_CODE +DROP INDEX "SYS_DEPART_IDX_SD_ORG_CODE"; +CREATE INDEX "SYW_DEPART_IDX_SD_ORG_CODE" + ON "QH_SYW_DEPART"("ORG_CODE"); + +-- SYS_DEPART_IDX_SD_PARENT_ID +DROP INDEX "SYS_DEPART_IDX_SD_PARENT_ID"; +CREATE INDEX "SYW_DEPART_IDX_SD_PARENT_ID" + ON "QH_SYW_DEPART"("PARENT_ID"); + +-- SYS_DEPART_ROLE_PERMISSION_IDX_SDRP_PER_ID +DROP INDEX "SYS_DEPART_ROLE_PERMISSION_IDX_SDRP_PER_ID"; +CREATE INDEX "SYW_DEPART_ROLE_PERMISSION_IDX_SDRP_PER_ID" + ON "QH_SYW_DEPART_ROLE_PERM"("PERMISSION_ID"); + +-- SYS_DEPART_ROLE_PERMISSION_IDX_SDRP_ROLE_ID +DROP INDEX "SYS_DEPART_ROLE_PERMISSION_IDX_SDRP_ROLE_ID"; +CREATE INDEX "SYW_DEPART_ROLE_PERMISSION_IDX_SDRP_ROLE_ID" + ON "QH_SYW_DEPART_ROLE_PERM"("ROLE_ID"); + +-- SYS_DEPART_ROLE_PERMISSION_IDX_SDRP_ROLE_PER_ID (2列) +DROP INDEX "SYS_DEPART_ROLE_PERMISSION_IDX_SDRP_ROLE_PER_ID"; +CREATE INDEX "SYW_DEPART_ROLE_PERMISSION_IDX_SDRP_ROLE_PER_ID" + ON "QH_SYW_DEPART_ROLE_PERM"("ROLE_ID", "PERMISSION_ID"); + +-- SYS_DICT_ITEM_IDX_SDI_DICT_VAL (2列) +DROP INDEX "SYS_DICT_ITEM_IDX_SDI_DICT_VAL"; +CREATE INDEX "SYW_DICT_ITEM_IDX_SDI_DICT_VAL" + ON "QH_SYW_DICT_ITEM"("DICT_ID", "ITEM_VALUE"); + +-- SYS_DICT_ITEM_IDX_SDI_ROLE_DICT_ID +DROP INDEX "SYS_DICT_ITEM_IDX_SDI_ROLE_DICT_ID"; +CREATE INDEX "SYW_DICT_ITEM_IDX_SDI_ROLE_DICT_ID" + ON "QH_SYW_DICT_ITEM"("DICT_ID"); + +-- SYS_DICT_ITEM_IDX_SDI_ROLE_SORT_ORDER +DROP INDEX "SYS_DICT_ITEM_IDX_SDI_ROLE_SORT_ORDER"; +CREATE INDEX "SYW_DICT_ITEM_IDX_SDI_ROLE_SORT_ORDER" + ON "QH_SYW_DICT_ITEM"("SORT_ORDER"); + +-- SYS_DICT_ITEM_IDX_SDI_STATUS +DROP INDEX "SYS_DICT_ITEM_IDX_SDI_STATUS"; +CREATE INDEX "SYW_DICT_ITEM_IDX_SDI_STATUS" + ON "QH_SYW_DICT_ITEM"("STATUS"); + +-- SYS_LOG_IDX_SL_CREATE_TIME +DROP INDEX "SYS_LOG_IDX_SL_CREATE_TIME"; +CREATE INDEX "SYW_LOG_IDX_SL_CREATE_TIME" + ON "QH_SYW_LOG"("CREATE_TIME"); + +-- SYS_LOG_IDX_SL_LOG_TYPE +DROP INDEX "SYS_LOG_IDX_SL_LOG_TYPE"; +CREATE INDEX "SYW_LOG_IDX_SL_LOG_TYPE" + ON "QH_SYW_LOG"("LOG_TYPE"); + +-- SYS_LOG_IDX_SL_OPERATE_TYPE +DROP INDEX "SYS_LOG_IDX_SL_OPERATE_TYPE"; +CREATE INDEX "SYW_LOG_IDX_SL_OPERATE_TYPE" + ON "QH_SYW_LOG"("OPERATE_TYPE"); + +-- SYS_LOG_IDX_SL_USERID +DROP INDEX "SYS_LOG_IDX_SL_USERID"; +CREATE INDEX "SYW_LOG_IDX_SL_USERID" + ON "QH_SYW_LOG"("USERID"); + +-- SYS_PERMISSION_DATA_RULE_IDX_SPDR_PERMISSION_ID +DROP INDEX "SYS_PERMISSION_DATA_RULE_IDX_SPDR_PERMISSION_ID"; +CREATE INDEX "SYW_PERMISSION_DATA_RULE_IDX_SPDR_PERMISSION_ID" + ON "QH_SYW_PERMISSION_DRULE"("PERMISSION_ID"); + +-- SYS_PERMISSION_INDEX_MENU_HIDDEN +DROP INDEX "SYS_PERMISSION_INDEX_MENU_HIDDEN"; +CREATE INDEX "SYW_PERMISSION_INDEX_MENU_HIDDEN" + ON "QH_SYW_PERMISSION"("HIDDEN"); + +-- SYS_PERMISSION_INDEX_MENU_STATUS +DROP INDEX "SYS_PERMISSION_INDEX_MENU_STATUS"; +CREATE INDEX "SYW_PERMISSION_INDEX_MENU_STATUS" + ON "QH_SYW_PERMISSION"("STATUS"); + +-- SYS_PERMISSION_INDEX_MENU_TYPE +DROP INDEX "SYS_PERMISSION_INDEX_MENU_TYPE"; +CREATE INDEX "SYW_PERMISSION_INDEX_MENU_TYPE" + ON "QH_SYW_PERMISSION"("MENU_TYPE"); + +-- SYS_ROLE_IDX_SR_ROLE_CODE +DROP INDEX "SYS_ROLE_IDX_SR_ROLE_CODE"; +CREATE INDEX "SYW_ROLE_IDX_SR_ROLE_CODE" + ON "QH_SYW_ROLE"("ROLE_CODE"); + +-- SYS_ROLE_PERMISSION_IDX_SRP_PERMISSION_ID +DROP INDEX "SYS_ROLE_PERMISSION_IDX_SRP_PERMISSION_ID"; +CREATE INDEX "SYW_ROLE_PERMISSION_IDX_SRP_PERMISSION_ID" + ON "QH_SYW_ROLE_PERMISSION"("PERMISSION_ID"); + +-- SYS_ROLE_PERMISSION_IDX_SRP_ROLE_ID +DROP INDEX "SYS_ROLE_PERMISSION_IDX_SRP_ROLE_ID"; +CREATE INDEX "SYW_ROLE_PERMISSION_IDX_SRP_ROLE_ID" + ON "QH_SYW_ROLE_PERMISSION"("ROLE_ID"); + +-- SYS_ROLE_PERMISSION_IDX_SRP_ROLE_PER_ID (2列) +DROP INDEX "SYS_ROLE_PERMISSION_IDX_SRP_ROLE_PER_ID"; +CREATE INDEX "SYW_ROLE_PERMISSION_IDX_SRP_ROLE_PER_ID" + ON "QH_SYW_ROLE_PERMISSION"("ROLE_ID", "PERMISSION_ID"); + +-- SYS_SMS_IDX_SS_ES_RECEIVER +DROP INDEX "SYS_SMS_IDX_SS_ES_RECEIVER"; +CREATE INDEX "SYW_SMS_IDX_SS_ES_RECEIVER" + ON "QH_SYW_SMS"("ES_RECEIVER"); + +-- SYS_SMS_IDX_SS_ES_SEND_STATUS +DROP INDEX "SYS_SMS_IDX_SS_ES_SEND_STATUS"; +CREATE INDEX "SYW_SMS_IDX_SS_ES_SEND_STATUS" + ON "QH_SYW_SMS"("ES_SEND_STATUS"); + +-- SYS_SMS_IDX_SS_ES_SEND_TIME +DROP INDEX "SYS_SMS_IDX_SS_ES_SEND_TIME"; +CREATE INDEX "SYW_SMS_IDX_SS_ES_SEND_TIME" + ON "QH_SYW_SMS"("ES_SEND_TIME"); + +-- SYS_SMS_IDX_SS_ES_TYPE +DROP INDEX "SYS_SMS_IDX_SS_ES_TYPE"; +CREATE INDEX "SYW_SMS_IDX_SS_ES_TYPE" + ON "QH_SYW_SMS"("ES_TYPE"); + +-- SYS_USER_DEPART_IDX_SUD_DEP_ID +DROP INDEX "SYS_USER_DEPART_IDX_SUD_DEP_ID"; +CREATE INDEX "SYW_USER_DEPART_IDX_SUD_DEP_ID" + ON "QH_SYW_USER_DEPART"("DEP_ID"); + +-- SYS_USER_DEPART_IDX_SUD_USER_DEP_ID (2列) +DROP INDEX "SYS_USER_DEPART_IDX_SUD_USER_DEP_ID"; +CREATE INDEX "SYW_USER_DEPART_IDX_SUD_USER_DEP_ID" + ON "QH_SYW_USER_DEPART"("USER_ID", "DEP_ID"); + +-- SYS_USER_DEPART_IDX_SUD_USER_ID +DROP INDEX "SYS_USER_DEPART_IDX_SUD_USER_ID"; +CREATE INDEX "SYW_USER_DEPART_IDX_SUD_USER_ID" + ON "QH_SYW_USER_DEPART"("USER_ID"); + +-- SYS_USER_IDX_SU_DEL_FLAG +DROP INDEX "SYS_USER_IDX_SU_DEL_FLAG"; +CREATE INDEX "SYW_USER_IDX_SU_DEL_FLAG" + ON "QH_SYW_USER"("DEL_FLAG"); + +-- SYS_USER_IDX_SU_STATUS +DROP INDEX "SYS_USER_IDX_SU_STATUS"; +CREATE INDEX "SYW_USER_IDX_SU_STATUS" + ON "QH_SYW_USER"("STATUS"); + +-- SYS_USER_IDX_SU_USERNAME +DROP INDEX "SYS_USER_IDX_SU_USERNAME"; +CREATE INDEX "SYW_USER_IDX_SU_USERNAME" + ON "QH_SYW_USER"("USERNAME"); + +-- SYS_USER_POSITION_IDX_SUP_POSITION_ID +DROP INDEX "SYS_USER_POSITION_IDX_SUP_POSITION_ID"; +CREATE INDEX "SYW_USER_POSITION_IDX_SUP_POSITION_ID" + ON "QH_SYW_USER_POSITION"("POSITION_ID"); + +-- SYS_USER_POSITION_IDX_SUP_USER_ID +DROP INDEX "SYS_USER_POSITION_IDX_SUP_USER_ID"; +CREATE INDEX "SYW_USER_POSITION_IDX_SUP_USER_ID" + ON "QH_SYW_USER_POSITION"("USER_ID"); + +-- SYS_USER_POSITION_IDX_SUP_USER_POSITION_ID (2列) +DROP INDEX "SYS_USER_POSITION_IDX_SUP_USER_POSITION_ID"; +CREATE INDEX "SYW_USER_POSITION_IDX_SUP_USER_POSITION_ID" + ON "QH_SYW_USER_POSITION"("USER_ID", "POSITION_ID"); + +-- SYS_USER_ROLE_IDX_SUR_ROLE_ID +DROP INDEX "SYS_USER_ROLE_IDX_SUR_ROLE_ID"; +CREATE INDEX "SYW_USER_ROLE_IDX_SUR_ROLE_ID" + ON "QH_SYW_USER_ROLE"("ROLE_ID"); + +-- SYS_USER_ROLE_IDX_SUR_USER_ID +DROP INDEX "SYS_USER_ROLE_IDX_SUR_USER_ID"; +CREATE INDEX "SYW_USER_ROLE_IDX_SUR_USER_ID" + ON "QH_SYW_USER_ROLE"("USER_ID"); + +-- SYS_USER_ROLE_IDX_SUR_USER_ROLE_ID (2列) +DROP INDEX "SYS_USER_ROLE_IDX_SUR_USER_ROLE_ID"; +CREATE INDEX "SYW_USER_ROLE_IDX_SUR_USER_ROLE_ID" + ON "QH_SYW_USER_ROLE"("USER_ID", "ROLE_ID"); + + +-- 其他约束 +-- ========== 主键约束 (PRIMARY KEY) ========== + +-- QH_SYW_ANNOUNCEMENT +ALTER TABLE "QH_SYW_ANNOUNCEMENT" DROP CONSTRAINT "SYS_ANNOUNCEMENT_PRIMARY"; +ALTER TABLE "QH_SYW_ANNOUNCEMENT" ADD CONSTRAINT "SYW_ANNOUNCEMENT_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_CATEGORY +ALTER TABLE "QH_SYW_CATEGORY" DROP CONSTRAINT "SYS_CATEGORY_PRIMARY"; +ALTER TABLE "QH_SYW_CATEGORY" ADD CONSTRAINT "SYW_CATEGORY_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_DATA_LOG +ALTER TABLE "QH_SYW_DATA_LOG" DROP CONSTRAINT "SYS_DATA_LOG_PRIMARY"; +ALTER TABLE "QH_SYW_DATA_LOG" ADD CONSTRAINT "SYW_DATA_LOG_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_DEPART +ALTER TABLE "QH_SYW_DEPART" DROP CONSTRAINT "SYS_DEPART_PRIMARY"; +ALTER TABLE "QH_SYW_DEPART" ADD CONSTRAINT "SYW_DEPART_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_DEPART_PERMISSION +ALTER TABLE "QH_SYW_DEPART_PERMISSION" DROP CONSTRAINT "SYS_DEPART_PERMISSION_PRIMARY"; +ALTER TABLE "QH_SYW_DEPART_PERMISSION" ADD CONSTRAINT "SYW_DEPART_PERMISSION_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_DEPART_ROLE +ALTER TABLE "QH_SYW_DEPART_ROLE" DROP CONSTRAINT "SYS_DEPART_ROLE_PRIMARY"; +ALTER TABLE "QH_SYW_DEPART_ROLE" ADD CONSTRAINT "SYW_DEPART_ROLE_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_DEPART_ROLE_PERM +ALTER TABLE "QH_SYW_DEPART_ROLE_PERM" DROP CONSTRAINT "SYS_DEPART_ROLE_PERMISSION_PRIMARY"; +ALTER TABLE "QH_SYW_DEPART_ROLE_PERM" ADD CONSTRAINT "SYW_DEPART_ROLE_PERMISSION_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_DEPART_ROLE_USER +ALTER TABLE "QH_SYW_DEPART_ROLE_USER" DROP CONSTRAINT "SYS_DEPART_ROLE_USER_PRIMARY"; +ALTER TABLE "QH_SYW_DEPART_ROLE_USER" ADD CONSTRAINT "SYW_DEPART_ROLE_USER_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_DICT +ALTER TABLE "QH_SYW_DICT" DROP CONSTRAINT "SYS_DICT_PRIMARY"; +ALTER TABLE "QH_SYW_DICT" ADD CONSTRAINT "SYW_DICT_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_DICT_ITEM +ALTER TABLE "QH_SYW_DICT_ITEM" DROP CONSTRAINT "SYS_DICT_ITEM_PRIMARY"; +ALTER TABLE "QH_SYW_DICT_ITEM" ADD CONSTRAINT "SYW_DICT_ITEM_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_FILL_RULE +ALTER TABLE "QH_SYW_FILL_RULE" DROP CONSTRAINT "SYS_FILL_RULE_PRIMARY"; +ALTER TABLE "QH_SYW_FILL_RULE" ADD CONSTRAINT "SYW_FILL_RULE_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_GATEWAY_ROUTE +ALTER TABLE "QH_SYW_GATEWAY_ROUTE" DROP CONSTRAINT "SYS_GATEWAY_ROUTE_PRIMARY"; +ALTER TABLE "QH_SYW_GATEWAY_ROUTE" ADD CONSTRAINT "SYW_GATEWAY_ROUTE_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_LOG +ALTER TABLE "QH_SYW_LOG" DROP CONSTRAINT "SYS_LOG_PRIMARY"; +ALTER TABLE "QH_SYW_LOG" ADD CONSTRAINT "SYW_LOG_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_PERMISSION +ALTER TABLE "QH_SYW_PERMISSION" DROP CONSTRAINT "SYS_PERMISSION_PRIMARY"; +ALTER TABLE "QH_SYW_PERMISSION" ADD CONSTRAINT "SYW_PERMISSION_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_PERMISSION_DRULE +ALTER TABLE "QH_SYW_PERMISSION_DRULE" DROP CONSTRAINT "SYS_PERMISSION_DATA_RULE_PRIMARY"; +ALTER TABLE "QH_SYW_PERMISSION_DRULE" ADD CONSTRAINT "SYW_PERMISSION_DATA_RULE_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_POSITION +ALTER TABLE "QH_SYW_POSITION" DROP CONSTRAINT "SYS_POSITION_PRIMARY"; +ALTER TABLE "QH_SYW_POSITION" ADD CONSTRAINT "SYW_POSITION_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_ROLE +ALTER TABLE "QH_SYW_ROLE" DROP CONSTRAINT "SYS_ROLE_PRIMARY"; +ALTER TABLE "QH_SYW_ROLE" ADD CONSTRAINT "SYW_ROLE_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_ROLE_INDEX +ALTER TABLE "QH_SYW_ROLE_INDEX" DROP CONSTRAINT "SYS_ROLE_INDEX_PRIMARY"; +ALTER TABLE "QH_SYW_ROLE_INDEX" ADD CONSTRAINT "SYW_ROLE_INDEX_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_ROLE_PERMISSION +ALTER TABLE "QH_SYW_ROLE_PERMISSION" DROP CONSTRAINT "SYS_ROLE_PERMISSION_PRIMARY"; +ALTER TABLE "QH_SYW_ROLE_PERMISSION" ADD CONSTRAINT "SYW_ROLE_PERMISSION_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_SMS +ALTER TABLE "QH_SYW_SMS" DROP CONSTRAINT "SYS_SMS_PRIMARY"; +ALTER TABLE "QH_SYW_SMS" ADD CONSTRAINT "SYW_SMS_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_SMS_TEMPLATE +ALTER TABLE "QH_SYW_SMS_TEMPLATE" DROP CONSTRAINT "SYS_SMS_TEMPLATE_PRIMARY"; +ALTER TABLE "QH_SYW_SMS_TEMPLATE" ADD CONSTRAINT "SYW_SMS_TEMPLATE_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_USER +ALTER TABLE "QH_SYW_USER" DROP CONSTRAINT "SYS_USER_PRIMARY"; +ALTER TABLE "QH_SYW_USER" ADD CONSTRAINT "SYW_USER_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_USER_DEPART +ALTER TABLE "QH_SYW_USER_DEPART" DROP CONSTRAINT "SYS_USER_DEPART_PRIMARY"; +ALTER TABLE "QH_SYW_USER_DEPART" ADD CONSTRAINT "SYW_USER_DEPART_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_USER_POSITION +ALTER TABLE "QH_SYW_USER_POSITION" DROP CONSTRAINT "SYS_USER_POSITION_PRIMARY"; +ALTER TABLE "QH_SYW_USER_POSITION" ADD CONSTRAINT "SYW_USER_POSITION_PRIMARY" PRIMARY KEY ("ID"); + +-- QH_SYW_USER_ROLE +ALTER TABLE "QH_SYW_USER_ROLE" DROP CONSTRAINT "SYS_USER_ROLE_PRIMARY"; +ALTER TABLE "QH_SYW_USER_ROLE" ADD CONSTRAINT "SYW_USER_ROLE_PRIMARY" PRIMARY KEY ("ID"); + + +-- ========== 唯一约束 (UNIQUE) ========== + +-- QH_SYW_CATEGORY (CODE) +ALTER TABLE "QH_SYW_CATEGORY" DROP CONSTRAINT "SYS_CATEGORY_INDEX_CODE"; +ALTER TABLE "QH_SYW_CATEGORY" ADD CONSTRAINT "SYW_CATEGORY_INDEX_CODE" UNIQUE ("CODE"); + +-- QH_SYW_DEPART (ORG_CODE) +ALTER TABLE "QH_SYW_DEPART" DROP CONSTRAINT "SYS_DEPART_UNIQ_DEPART_ORG_CODE"; +ALTER TABLE "QH_SYW_DEPART" ADD CONSTRAINT "SYW_DEPART_UNIQ_DEPART_ORG_CODE" UNIQUE ("ORG_CODE"); + +-- QH_SYW_DICT (DICT_CODE) +ALTER TABLE "QH_SYW_DICT" DROP CONSTRAINT "SYS_DICT_UK_SD_DICT_CODE"; +ALTER TABLE "QH_SYW_DICT" ADD CONSTRAINT "SYW_DICT_UK_SD_DICT_CODE" UNIQUE ("DICT_CODE"); + +-- QH_SYW_FILL_RULE (RULE_CODE) +ALTER TABLE "QH_SYW_FILL_RULE" DROP CONSTRAINT "SYS_FILL_RULE_UK_SFR_RULE_CODE"; +ALTER TABLE "QH_SYW_FILL_RULE" ADD CONSTRAINT "SYW_FILL_RULE_UK_SFR_RULE_CODE" UNIQUE ("RULE_CODE"); + +-- QH_SYW_POSITION (CODE) +ALTER TABLE "QH_SYW_POSITION" DROP CONSTRAINT "SYS_POSITION_UNIQ_CODE"; +ALTER TABLE "QH_SYW_POSITION" ADD CONSTRAINT "SYW_POSITION_UNIQ_CODE" UNIQUE ("CODE"); + +-- QH_SYW_ROLE (ROLE_CODE) +ALTER TABLE "QH_SYW_ROLE" DROP CONSTRAINT "SYS_ROLE_UNIQ_SYS_ROLE_ROLE_CODE"; +ALTER TABLE "QH_SYW_ROLE" ADD CONSTRAINT "SYW_ROLE_UNIQ_SYS_ROLE_ROLE_CODE" UNIQUE ("ROLE_CODE"); + +-- QH_SYW_SMS_TEMPLATE (TEMPLATE_CODE) +ALTER TABLE "QH_SYW_SMS_TEMPLATE" DROP CONSTRAINT "SYS_SMS_TEMPLATE_UK_SST_TEMPLATE_CODE"; +ALTER TABLE "QH_SYW_SMS_TEMPLATE" ADD CONSTRAINT "SYW_SMS_TEMPLATE_UK_SST_TEMPLATE_CODE" UNIQUE ("TEMPLATE_CODE"); + +-- QH_SYW_USER (EMAIL) +ALTER TABLE "QH_SYW_USER" DROP CONSTRAINT "SYS_USER_UNIQ_SYS_USER_EMAIL"; +ALTER TABLE "QH_SYW_USER" ADD CONSTRAINT "SYW_USER_UNIQ_SYS_USER_EMAIL" UNIQUE ("EMAIL"); + +-- QH_SYW_USER (PHONE) +ALTER TABLE "QH_SYW_USER" DROP CONSTRAINT "SYS_USER_UNIQ_SYS_USER_PHONE"; +ALTER TABLE "QH_SYW_USER" ADD CONSTRAINT "SYW_USER_UNIQ_SYS_USER_PHONE" UNIQUE ("PHONE"); + +-- QH_SYW_USER (USERNAME) +ALTER TABLE "QH_SYW_USER" DROP CONSTRAINT "SYS_USER_UNIQ_SYS_USER_USERNAME"; +ALTER TABLE "QH_SYW_USER" ADD CONSTRAINT "SYW_USER_UNIQ_SYS_USER_USERNAME" UNIQUE ("USERNAME"); + +-- QH_SYW_USER (WORK_NO) +ALTER TABLE "QH_SYW_USER" DROP CONSTRAINT "SYS_USER_UNIQ_SYS_USER_WORK_NO"; +ALTER TABLE "QH_SYW_USER" ADD CONSTRAINT "SYW_USER_UNIQ_SYS_USER_WORK_NO" UNIQUE ("WORK_NO"); + + +update QH_SYW_PERMISSION set IS_LEAF = '0' where id = '1783054127343742978'; + +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2030887284245504002', '190c2b43bec6a5f7a4194a85db67d96a', '查询角色用户', NULL, NULL, 0, NULL, NULL, 2, 'system:user:queryUserRole', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-09 14:03:55', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); + +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2033422388611641346', '3f915b2769fc80648e92d04e84ca059d', '冻结', NULL, NULL, 0, NULL, NULL, 2, 'system:user:frozenBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-16 13:57:31', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); + +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2033751527180857345', '45c966826eeff4c99b8f8ebfe74511fc', '添加部门', NULL, NULL, 0, NULL, NULL, 2, 'system:depart:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-17 11:45:24', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); + +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2033785577039851521', '190c2b43bec6a5f7a4194a85db67d96a', '删除用户角色', NULL, NULL, 0, NULL, NULL, 2, 'system:user:deleteRole', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-17 14:00:42', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); + +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2033793328256249857', '45c966826eeff4c99b8f8ebfe74511fc', '删除部门', NULL, NULL, 0, NULL, NULL, 2, 'system:depart:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-17 14:31:30', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); + +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2033793432971243521', '45c966826eeff4c99b8f8ebfe74511fc', '修改部门', NULL, NULL, 0, NULL, NULL, 2, 'system:depart:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-17 14:31:55', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); + +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2033835702474895361', NULL, '测试', 'https://www.xjrmyy.com/#/index', 'https://www.xjrmyy.com/#/index', 1, '', NULL, 0, NULL, '0', 1, 0, 'ant-design:aim-outlined', 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-17 17:19:53', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, NULL, 0); + +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2034879007507951617', '1783054127343742978', '新增', NULL, NULL, 0, NULL, NULL, 2, 'watch:dc_watch_device_version_his:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-20 14:25:36', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2034879630936715265', '1783054127343742978', '编辑', NULL, NULL, 0, NULL, NULL, 2, 'watch:dc_watch_device_version_his:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-20 14:28:05', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2034879686771290114', '1783054127343742978', '删除', NULL, NULL, 0, NULL, NULL, 2, 'watch:dc_watch_device_version_his:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-20 14:28:18', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2034879767675219970', '1783054127343742978', '批量删除', NULL, NULL, 0, NULL, NULL, 2, 'watch:dc_watch_device_version_his:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-20 14:28:38', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2034879833274134529', '1783054127343742978', '导出', NULL, NULL, 0, NULL, NULL, 2, 'watch:dc_watch_device_version_his:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-20 14:28:53', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); +INSERT INTO "QH_SYW_PERMISSION" ("ID", "PARENT_ID", "NAME", "URL", "COMPONENT", "IS_ROUTE", "COMPONENT_NAME", "REDIRECT", "MENU_TYPE", "PERMS", "PERMS_TYPE", "SORT_NO", "ALWAYS_SHOW", "ICON", "IS_LEAF", "KEEP_ALIVE", "HIDDEN", "HIDE_TAB", "DESCRIPTION", "CREATE_BY", "CREATE_TIME", "UPDATE_BY", "UPDATE_TIME", "DEL_FLAG", "RULE_FLAG", "STATUS", "INTERNAL_OR_EXTERNAL") VALUES ('2034879903734247425', '1783054127343742978', '导入', NULL, NULL, 0, NULL, NULL, 2, 'watch:dc_watch_device_version_his:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', TO_TIMESTAMP('2026-03-20 14:29:10', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, 0, 0, '1', 0); + + + +CREATE TABLE `QH_WAT_VALID` ( + `id` varchar(36) COLLATE utf8mb4_general_ci NOT NULL, + `watch_no` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '工具编码', + `valid_flag` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '是否有效', + `create_time` datetime DEFAULT NULL COMMENT '创建日期', + PRIMARY KEY (`id`), + KEY `qwv_valid_flag` (`valid_flag`), + KEY `qwv_watch_no` (`watch_no`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; \ No newline at end of file diff --git a/体检相关表说明20260520.xlsx b/体检相关表说明20260520.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..0ecee19349a7d935e53cf8f47da35fd54cecb42d GIT binary patch literal 50242 zcmY)VV|XV`*EJ5uwrv}~*qPY2F|lpiwr$&**tV^i*!kx=@At#|eCX<YmD(ow?e-c>z}CZK47ZRWf`pWWw&l1iTNj6I0>;X@bZjp2OwOuTKI4 z0U`hYH^JD>(e!_9C`lNQ8)AYB)i<5!aoMm071d?T&j}44CPQkY`qyeMi$gAUy_4H) zjSppucldp8rd^SOSqb}s#~l{{_h-aF8#Cn2%9ZR6gs75K3;SNA9qp#efV{+v(?9Kk z3=xX_l(t?%Nji}UhE)J}U9@7k`hl<@2TTjN)qGwtn1pff4+;eCw{?1A23}!CMepr> zZ)SV5BCwtOW}3z8RJ+6iwTWy^iUKgXO93|H-DyG1zIH?J)E7;@UNLmw48iJEX15w* zTo=5RlwK`M@03*U;j@tk<-~=L^XFL~v`yLc&c~2DI)Lrtt?dN$|FukpPBtkL1Q1X* zB@htmk7eAg8J*2dZA|~KWd5IRuC=tCHaO9IZ|mmV&7N#v|F8$NHlsROxNbIQ1YgS$ zh9GOiSbLZx1pD=gvm;HW!e1xKc4qN{(Vf4~h>D+{aeCa}Fc_VMh9}>-8>};Ku5`6A z?(C_vkRb~(VVBkY?T0Cm(QDDN02<=-8AnAK+6s(WPL%OREaSy0!CFAqUZ>3zI(ME`PkUuH=RA_#%Bqz zWx~}U@|&?MJCf51-&YwN?zc1(P_r7HUy$$*9QR2E@05HhT11Cpf#>1Q(U@`dej2{c zi=NnU2H4>29sYCYY@J+)vd074Q|!te%z3cxD;9!oF0z<2S$o>3O(?C5QI=nP_SwD6 zGS7yI(UxDda@$^vjrdbD=MLZdPd;p@HsVj!ob#mx1?6Y0Rq;87xv<#br6&q{%dy}h z5s-$x>&nyuXsRCdn@cjzI)2x-kj`I?8?FfCuRkMTD;5jbsQ@v@oOo~qAdcaA83pe; zq1MQ~!Ndif_?21e76lxr%&~w+@j&8{t-8<0w65`DR?i$C?is6OKZ`2hvg@v_*`yDr zv!lGSq*Ynr8T)QJ=zs5|+J<42wmhhg+<0cf-m_0n2_@t#v$wA>mvX#jglehvy0f!K zxzUcKUE5C@K2P%Ewxp{S{Y@mR$zo)pd1LgQN64HllJG330#G@j>6Qw3AjQzksRf}g z&3~$q_fUP>dZEU4W5S=S>@xY(3p6A*f?trta1OGaPMqeg-yuuH=ATr%w~Ep<(1Fvi zb^(=abR#S7DgFOyvU%}QQKpk&A%sHH$S6=MxO`QpRwW$h}Ge`gqbh!dVYbwX0yTICE((NnBg{w5eHjz{UxX)i_NSVM5YzyH^OGe zacsc|XmzLvHqb)(Gw&|9(2V?{So!~OFl7N7msK@d1?o3oXavwn`r&Q*3 zp@Rn4XRh9mDBSeZafpZoBWKpIjbWgCFWnN_%fWMr8 z1qS?I2Lb=Fr#lQs>Yr|f+CVSh@A(am!K#cb_K&EE zzcj`t|p@sYcptH{YQtkXJSB~4;fUa2y&;SYQU`h2b4Cx&|4;2^vwP=O-KK5 zKJjp~)U?I6j@k{|hD3>L&>|hxtZHJ%v|&IMe^yoduD;ijuNhr#_Di#7EDsJ@4g(fN z!Z;bTRI2bETe>VdigXfyVjG$^)1b9z~JuFeq0>!nCDdgLHAd!@6-0-n{5)0giN-_2r{s< zCu*Z~g=iz)JwvW6o%0FFKNg z;obVWg|8nRj@`eG>I43N1IPr}tkOsW5Kv|u7!cO~1rRqoM=K|DQ&VRr#{W+LMUkr> z4?Dc^6vnr2&>Ocs)EzkM?%%AWERIE(`Pwo=zUj;-vd>%KhXL`bDdh7f>}1Eb+XLWK zk!X?;XcZXbQY0;{tvBqL^z;stfB7fano|4TXuHFswF(m*NLZqp>EqZ)tE5%`@nCzf zupGF_WpkdE>BAv>+aBp)#kzX0?{YBRH7TEpiHCJ|b&B1c4t^ON9S#)O`+q6n;oTsL zoePA`y2il4hY1lwJU+V^4%K(P1?>bV3w&FAYzx4Df0PBCiobh84*KETU~%p462j@f z0IqO94$R8tD&8=^x4fRV%s)g|XZ^U*vf%|_#lKC%LCyraa2#QJKKJ`2ZubO7?KM8u zE94d0Zac{S4BLEJ*}aT}|Lq9cmb110>vl!hNAq!&Jm87`6!NM_L6-mh>f_FRb!psa zuK(3T@uYI!2uJN(8}%((4ZJa+!-SGcaP@B26Eg24z;m2?K@~i*=e>I-fav>gvffo) zjgCoRjRWO-`yaSnw8iDeYr_1%7fz;Ld!L*CH^)n3EdsEi5m0~?lsA|m5L8nrlQO9U zypR%UHBR8JAEvrsb#JZ#;N?|546^SGD>jRjZU4_S8=5$wdTvX2p4?Wv?$dwY;B%*D^)o>CaFd_Hp)Gq;L=A&Q3*uHVpcy7Co|1-^x$| z+uBrH*%ZCLayi|EeEF*RW6I62clFof1hAbXf>?5U0lqDjvsLTz`RL;e|L&bY8NUpz zyil#K05h+#)@%}L99skIa37W!Z{}MZF$NXqJV2*>@;2c${xz(rn_#}-y?y1|OY0Q_ z5g6g3#JpzJyr%T}`o~^Bm5-gtc1wPges1(itI2i<(uYg*?-K-$(L%~ym6hETc1r16 z0@b`))jr?9LpRpWkN!Tn9~W`PnCGWw6PI^ckA$viR{cG=c&cB&yI49zH`DTTiv>rn zH)A&2QrZO25aQqvvax%Z$b5|0oqug^&OdG*r}4~xRk?qYi_ON3 zd0q-0TA7wQJ7vZ;o*784XhWG%d0w)6URI7`mOvNnXKaCMhUuCI%QA}dY^sbm?g;1S z3#t=}#`TEB^#J%7=K4&0o|1hS=zD4ydJ1}~CAr(n6#l(huRogp%}} zuUv3zFU0Kc#p>_Gv^1areMIJx$Edu#1O9@`JW&!b6QW8EwRk-}_U$R=s!uCY`ZZ#c z?-uPC#-rSgA=OXosSs5~+Bog0cBcK((CQG~j-BSUK@vSk6I_@enElf^7YCUtPDsI6 zYc3JG&b(DvNA?mKn4if`va|V9usoHU=Cv^rJ)A2Pw*mS3U%f)oy2c{~Llqz1zdVhR zTDzahyX`aXfS2(BtJ2QV;HVbrQ+GKz=C`E>3>&)qicX&*qgsLqw%|TmS{_8#okq~2 zIibrD_K=NTvR$|yG_-Xc!3QeRRDg7*X1vtY-DF!EDoE6DS=RJ=gSb*H+2bJSUrF9Y z-<<oP;lSAcWUK}t z6~U}2ZA&a}jaYi6F_xM^K$Nrr7ZhHMh*yrfj_YcA3`Grx_Ry=U0{EA@u+m&M?g>rM!G$Lt3QB>1@dBZVoog zT_5aBC_euDmE7ZuG53TtVy+sYO-kD81P|)`AmFpwu@c*p#0KXY)dF5kyqL|NK4Hc` z4doopz2s6!q11C6JUcCa8wSM!DNqNIbd-hJA^v>5G~_rl2-EBa#3jLSBQ}NOtkK$? z3let(WCGJsiS0M4n*CL`Hoz%&0*@_=wx>exd=@?y?lE?O144npTy)fKsm`7 z=b-0(5U5g!P;zNSeLAuvI)tI$C*${DL?wDtuorBgnm3C^I_0LJd=_(A`y}ETAy}!G z=beBiOpv#}9oSRQ^`vv)0yvCZ9>!&L3Yn^jOr2>JC$<=H8{ueaGoc{C39cGB(9zVG zRht9b^QonxLF3=phH096V`uDi6?Y5!5z8^EXj9gS;>xlFDNl9KH)+K!enQZDm(ajR zljedjqB7ChwAxP}aO!rd`iq#Rl|G6%u$#f&lH9PkV1b@NKoJ3M&d8v$?LfAi$mUrs&eyc9r(m``0fHSf`712kXF)Zp zu7xQi!)sEQ#@U2;W6wEpL338jjK?{+DJ|CvYq8ujBT~pJ*7&5A8bQnR&hR?Yi>!Mk z06tK?mN{+NMvE3yZEK-v!%PHWBrkn@%h4=`9B6#&wS`xWxVC!3IqadNtY(Y9OCo=D zhE#h=Wos=;4l*4hO)4^e!$g8fQ9bD8*BRV~4BWpu4fLw*h2Q$ID*=Km}c2(bzQ!6|1eK;5Rs>Dr- zOZYUd7$jEQJ|0m&rnRF@+MG}7n*VrQSaVvbp*>WR4N|I%E2~P=OYY4p_HKN*v3$6J zPh#;!;`6ATYutwW-Ml;y9hlldi^DH&^lKnuexqn%NY=Bdq#;V+N>02=dj9BS|HQQ_ zE(`X{&`s<~L~vcnGozvh;!J5@7Xl}W>(6!1ja#DojpY^J7I;-YMq zx&E7Gu^I_uC}1$dn<>7G-Nv^b$<Knt}(Eq{fEF^xW3Mg|>> zh_bnr8;l6N0GwRVcC{Kv05o4!R94ukjQbiGSxehz1C*kfC>}*CX++YX2^1NFQmEJg zWpw!c`cNBvy|~M@GRD`Sx}xoMF`7+6xYY@S?f5qw!C(2ai<(NCMs4kBTQ;#Ycu#FM zF-)i<{F5;*I$eii@I3T2M6*m#W zLVE^1_7C0WvO-8leoyo2qBu7o!e5(|IEZ1!=QdcQQWisS;6p`b7p!`h9TyiRn9C)Y z^B?H^4GzjmHnW_qJGl;5PuJM+YG$+Mds=(wPly5=X2zEK=&34Q zL&9^sXTtNFYf}7<_cJU4_qOq7-55I!8}Tlp#g(;rqWCO0JxXD^^B6-H?FBwZHUh&? zv#fBjHfo z%F^+oZR4C3Hz5W^=_}A!W+EWv zT_eL5#jeY;Hzw9Q(Ioga3lhk60#57XS(Y;{O&3#{AT)L2EK^2E2e_18O2LL+lBQ=x zdWpB`{Zco}$R7|Y;7sfPGXXlAzBwbh8Q8sSr6#FNv>=hZ@lm6*W-@ORAISNFt4#MU zf3IqSZ0LE3QF_0IvRRN6>k1Jx5i%t5o`F@8g{N%k&y&nOgCP6PZ7QU-`Um@NV+&_# z4+X?!o9oAcf$-Kj$n&f2)eWT945l=evEG{OI9CPP&;!W>Z;=R){)1aa~V}9od8|t>w^jM^COy;>#-kE9gk+A?NBGAy1t)dVczO#M{ zhdXbe$^n{f*TT(7dv+Xh2{5CXOY9}VR}Xl@S$N!Ng$sn6B^_@b zb`ibcF+P$RoobjNVikna6djtZc%&-^=TJHZ52H~kUkoghv_XgjqIbqBoF+JJ3zJPA zLE_9R%?)Fy;?~Iim8FI+(zS`)%9Cn1qAuve6;Ym}nJ`VEX*`e97P90O6693G3)%mK=JoMxZPWJm*GX0e)mK3T@p~&g~d5e8HM|$7-DzNJBzY z?+%wWgK@Iw3B}aNF5Wol+K}#Jxs<7kG44So50jhW6oF5a7Sivr=Axi5{F}kAnM(Lm z)1)){6kRb^bQ_&lCO(XBvL%}6FG!SQ7q3IWEa0N}R&BTeA&Jecu;IaM$u40$ zup|WqXpl)ra&9ctSA>?+_3@lpWMo=AxDi$%Tt~GGMQU@M2lT)g(QC zQ{&Z<2fLD7u*B#% z{!It@Fou$#N`jhLGATPg@9T%ZA$6$*LjYar2N5$&J@LIbiO_CSwtvyWt^nZqGUW*f zIG48hncKTJ7Zo`=JlWsdUeDb;Zq9d=&A-_KUIFMH964x5J!^6nMSg6G9bT)!#KzU;e7n?hgfBe))9O{pyLq*LVz{}5egPvS!4xu z{XBt7Wubcl8Y-dSS-`a{Em7DiFa+Wg|1ie!t|CQGBpJ=K)tesMbQ+;Y0W)9;5u5P@ zghewYhYzh6vLJ4`;lL5*bS*T&!RsMSB1qWxEjQiX$|< z-Yhu_RJ>CJ97wW`Fx6u)pe5Je^sfXld4NceXev;R|1|s%v+gQ!a0un*a0&s#l)w5c zaiEim@}cAi;vS4V%^{XZfGsG}JVeo7LyL7RQQ;yGCG7r8VL2&Ktl>e=kn_?I z=F-FQ!6j!Gogr{2p-m8!4b+#)($J(0Xm|`6soP)((SFM*9REwRz~;&cl(ABm?lsM- z>orXz=nE(jz#5_<<$vCNfo4=^iqnNd7!z zDl$kS4&@s$622^3LBQWAdy`~BW*lf=!d&d@l)N}`1M=L339KyXki+WZF4V`&{VUV> zjE@Ke*ezk@#4`4{fo&B$<=>B12Qy-@O(n}^Z@%l)695t(-5fE4r|{X=L1l^N&io9~ zD>PHQLou6K5}bNhjQPFCCJ6}OJ5916pkq2CSZ#Axo@G4a>=(r%`OCik23I1$zD+GzT*6nR-ylZKX_-HJA#qh+r$9<>Za2bNwRv!Pt7r zz{PF`CR9^#p&_iGr=}V70-^@=Fr{$2r{O5!Rva;GNfa1xn>@Z54u4V?^>%X zH)WTZOm$X~iuDC>r%gfz5s>_vVvA{$jBYBr$dNomvMyo2)%Rqz>nQ@)2-gRWMCyXM zw3H!s9OALe7 zI&?t9yYg#!AW!>gclOBDxwQMdo`q0FekV;7On*JET~E9ze<@h5;(TYqn3Q*+dIP?1 z8+c-@@Naf$>G=ePsymsU3O_qEHq*7i3)%~7E}by$u7X5F*R88 z)tJDZx(3F^IhMQ9ijGy8=Is#S7^(I8f9;oc| znp@xlg$+5uu#hxh^Gl^(f=Q#ZJyH1DUE6y!Jj7S$tmbd9RB1o)rgcrk`#IDLJ4z<* z>yBtbgVk~gM66inPuw57HkWyJ#hW%ivNA8u*-q*f8LK!D3$G_1C_VYCMec8p;y|ys z{qQEArKRsvD(s}|T+^p;?TXx<&q~f&X?iva6Ln9+k5 z-i1DV;eC+gT1VisjukXU1@~GZvRP1RZg?IB5MXrWC1@rd*`gr>a=cg-hjQ9x8(?S` z7!_sZYr!5aNHsJCwLpJEdtY26qk1%T21m!*OOz@k_mF-T&Fi7S1X6K~x=s@G1#8xP zT0`WF;Z}v2hbbmIhz^oFCK{UOf?yVCD%~6~_xMU_@^Xj@c0U`uB$M?yE~OZtURpEf zEWI{pxP>KNYf1DORz)Xz0|j&}UL&>Rjbs@uG@`IfmL< zS{QraBdjH!u}2>-EBPvYFt5N82Ns&I^3^r0xbM(!wjhHK++4ql!(D`&Pl?*+B(&4K z^!DHr@X_KbR~dEyqAE!=czHXhMii2m?>eQIkEcPurlu`Cp{>B*5+%OCo|Dpb_{A(# zhIAEjSK{o;(@k1yjwqa)C3c40oOb&H{XZ*mLxYydRPf_UQTcey-R+7UoRf0Q{p^t5 z>Y6qP>h;??vg|4Ig6KzAfv$6K(jeMe>$RdhjMZtF`XA+;PF;;p!v?%;Uk9Ya-|xm9 zCj;?h9jQ%#XJrogayh0|Knd5df^rCi5U6ChxN2}jko#)~L_Jr2acg5H)G}LqX}8#+ zDTMBdeGEMR;YjZQVZlO9%f*`R7e2$ZoTycc-`FSyl`4NL3)_ERlx1=SkaIwU!R|Ai zser?(C)fI*+ssa)gBTWr>+PNR3+JCq?AaAKLM$ZDy!cSX#RI`AC7YE>)B45ppveu@ zf78forq=Z2_4)`CTMQ<5CmTw^+o7~PnB>~%1vj&JQET}oO-x>wK&#xvqLvo}TlH-H zWR8BVgwN)u9Nm5ah8 zn-q~ww!6ca6aE1NVgRd+Fa_hq9cr;?aHA}a1zOV}T#rjfD$218p|mT^L@0P7EiHBV z38@bH#4*iN?=ZRjvV5`+e7Yd_L8p*n$8Qih@0a%tgr;t6hAHTcB!@>+JN39!;Se9UO zdpUD9v1V8l*K)a3qC_g^WDf{;AXig!EEM+J3%&&!*YAXv_byx*3;HnetAP&YENr>+ z;ba?*JM^N6o2*KgBSK#&H>v6>iNj(1+CRtBWKIqu?^tO3JC|!c{rLk1G9?uqz{{%J z7q(> z7yC-y*B{L9#@6FY!8$@TQg1@j9UWKqif}l(=S+L6Kxw!lL*Sr@(SftAb9mN@=91=p1!Lba$XWIOhF02 z7OF}LzoJ)D_Z4o@ju-$ZEr}BuBIg%2l6?H6Hick;NwxJbFF$J_RaAO2Q|PKJr2o4g zTAxqc(xiHL(Qhz~l2QdKX6i(_#8#G?I__|gr?QKJ!vP*sbtslBN@m1VY*!x+7Hw%2 zAV*6736j%b_oEvV0rRm+{KrO9IgXAXYED*ZIPr)O&|r)@+RQu4qKOT#Xx$^gVvr5V zLrgHmh;(g$qT)_!W}?IKAO%<#Zj|;*F!{u9JSZNKMHD#Fk8(}s8^RaBsKxH}6G1px zV@wBH8PeuWhHwcx7UU#77C@$kHdsIeNW;O9>&;Jw{2pL9>h33rRfQ^vC^E1RorI=# zatz1h9(KOgLDnvofHCyPUu3An3&1L&T8LKcq?wM%;JYHcINS3)$*O2U9jTb*HApVh zVHF!KU#$kU@`3-Ef~)aD{#*Ym7FLPSGzKz3Xy>|8P4WZlfaz?EuqbFwBm)rE;?q-) zLk$_m*10yHco_*L+*yfW6^iEZ7+^sspVSLMRC5 z$O%rZ(~fEijg3ZORWHyg8-GTr>A+~+1V|K65pvV751IJj+TgZVcTpAlO;HsCGDgD# zXQN@3i8+D0WdBk0J;Gmt!Z{$Y0&>Xc-XA11^-yy<<2oYbKk$?)fS0f?9LBaQ947iF zlWhr?`e7Y@fozXhc2=>TF%6@{IfDA91fZk?AESdF6ymu~_Z#yj;mC`nb68snj$`g5 zC7j8p;T8%*YtY9N^SGz68qKIQZy~^p(Fdh9gw#!mzo2Dy0kgds9yl3HG4D450kxi4ZnI zYe%DreDi3Hur?w-(i*-4I!G4=62s6{<2(O2DML2EL1?kJZXqXCu^-5UVc3u)U^r$O zT@_sBt%ITqAL2V+hI!y5;#UeX_Di-z^=`}@q>uE_%PB?4JSA2!W++)9q-nQijP)f! zn1Ngq6qBp%L;bIF)pV24pgEZ(GyI$OVX@)g4<)2q4;AILC))UveIygiQIm|xHkJZf zl-nWd@&mEjj$}v`8rSyP#gncu6PV~u}p=3#2yUUs1rEK$O^~R7pS7mh--E+;Jdh(9Kg{2 z9lr6&fp*tDF_-a;#pt&Ld@`oxQG z^Rw*nwFzIveau8A9b-gYd(kw{1ITg7_`;hyU*8v*R+n~8rrANSIyw4?@G(|(1zyq4 zF<4c7@$NC0Xn$9B2C*-Ngs?gYOwupril&DdCsYJAA8Y*3HqHh|jQ$qUxd1^)B2&`&qgXSIYPz)dNNfCq zPE(kF&}r81C>qsUV^GF)cz8%odAMkySR0f{0Q09`7*{`B$Eggd|FYO4FRQEW7(IH- z|5#&45)tfxZd$raTBm<=UJq6{Rp7AnIaFi)}RSTK1)AbO+Vn= zXtvO?xB#qI4rr0Ap`th8lq!xIN;ILqlq%77MnDOldN~`h5KKTHSTp?n6{hsspiB_c zcYPou7d7QS7x@QVt-1oK#7WElv7lKF7D;p0hZV^QJKeR7+)b+(%^+i2Vn$gBy1o;B zNp=ZT!(b$nMcvX5TjNA3gBLgS)9bc>9TxagKRZsXcDS{{*J~~K0?f0zV!Fi1*uSO2 z8N1Pt?Cj6~u`xI(SPi8{=^LaFYOu-_J)ws6jx7HLbVsn;s#52SlRXNJdb;TWStPhi zD$@U@A!icy6_%Fe@B!m$%o+kUcPE;FZ#lJ!>RLP|WjdxBGt1jDyWL6*N?8;CBxaVq z=boWzLA|cy{Q4vck$x_@aDRwuHh+M74{)-Of41vyqUXhI1LhJ-S6gGx3^p&?(s6dJXc>&9KVfo@4G1dcD^0Tyf=z`JqeNv;=J}y zkIuyhffAJM#XM)vT4`>taEr|1(Mv9rzX|RjAj-~4D_TGtjrg(+;O=IyVt=3yrFZ+H z2ozd9FlTfSqo@Qp!+%r1T7kT+nvr;V=x22h@PH&ZFNruFZS7$i zY&>Go<*6TfKbCC1JBKD%p$mi5dH=^ULbnuiy&e|xybi(2uEsw2JQg0Q(s!0Hd6+zHnR}=J3vCiE5j#~sPOR6#j^k(ihGI}lrd?{qsV9oTt8 zG(t{j0voKwm*?w-n8!cW*NM%EBX-!`UY4&Ph2!J7*5f5)SeAOZkWyy4z?L5W7B}QQ=EVZe@*H9p<`2Zn|DCEyup3#*n0CXcU~l>< z3uw{R)1~9fRO6E?pu<{829F}7RPaR!T5fq63Z9f794i7Rpbz#90*%(09gyos&?*F> zeWdd7#6I@?9Z<_%dd%rDO9M9Wqj_WL@Kx*hA=JzK!%w*}cy>HgY!3pUAYx1RG(H6H zf$_*V1wOex2#~0sIsv^4yt9z9yZ7 zE`PrjiA6U!Rx;|lpuYp3DphHt`C$lzkX3xhkqHoSlK{Rfi$lJ@y8RnLO(Mvl)L<_UiMYG(INJy^e>H6G)z0u#?&X;`9~T48 zp{}*TvyGjXECKjbv9M$Fbw~@Oxlv5;D66QPe~C2n5ZKr%88m-zcD6l?HvF5|ps*72 zc>dtdc{y7e`du+SE<%XFQODNT!8%DcWh=h8J1==*|8CjrnkP3l|It>Gl5zLMdU-os z%Vu|Qu=yj@c|*-w|MPp2=edw_R?$|y~(NFt*ILz$|$G3 zAg#*SV<4@%6^fWQwB6;6wZKncEAaIfX&+%eYSFaa*o5=@|CH!rKT`BF%y2oo)&w5E z0N*c8fwf&#s7_yPymK5;-7#ltYZt?&sFF*Et{*|iXk%x!kvUP>*-NS_K-MIIVg1f? zVbK#F2iDZ-RB+7pX>x|q6SnB|%-I&p?>Q;B1}9eU_LMVqVjUj z#~tnVa4p|zp&wdbKo7I8oG)R^fG}mKj zzTssZQ^{gSyGM%lyN)m5F<$PjdT$l(7(%_u?F7s6*73UY-_U7JHJ*&9KC@?k2|4!^ zgVgb;G{m*i@tYEWL-q6KDNK{#N&)a4U9#56k1We?Dt~h$;$rz_e+jHj`K%|#ae|Y1 zTtw`fUG=cedie0_(uz>WUxb*BAD@*$ySr-$M&oPEoTpvU(-CKkImCUaJR!^vH3rqTdE1OC1#rw5ZuyW91Ug1_eG41<%_RJ1ArdwLmhE^hhnsyNEZHhsyH&=L2$?e*H~ zn&q=Jv6sd9OfE>K1y1i8k$y1v3aFU2xXSl z(rHg;FMCdW_%Pmh0Ky;b#>>*Vh$y3$UNPw*&qg`|2)lEypIiGUZ>K}TQ}M@1*Tl!f zPcpv1NUM%HS;a~SG3wQHKv~nJYe_ZJAZg)K)%dx+zXN|$Z({Z5Gs+qxlClc%(sx2L zPuqk=O>|jD7rUqqJB#rg;O)Y~-9D^$avZh*sRr-Pfqt*|MB&ir{u)E`51h=r&vUx>{&3Pj+erls0TWIfZMv+k|~` zzWqmd(E1*0uoG{V9iDjpk2FMf-%p#hxim^w%q&hUEll|`b1Qc|?)JCUV^S9g37Gq) zpIFqLd3*Tnw3b$D)ew54Y^PNaFec@1o5uN`zD4xyR0z9cZTn(ub>bwAukIson<_l6 z6`Q@9?moNB_kACh^_sgCd%9)`w72q`8`iAteK@q%tO4bCTNV$+{AyWoNpbxrMyQO$ z(G`EHpnRShf;ZvCfo#OY-7UP6$W04C-;YsnNmQ0nw4EjQd`V!e+tJhYz0c`OBwC24 z8F6;C&L>dpbTYIVXT2BC#=Y+FcKZTcJYp?t{*|s!&MS4&IB-G6faFJP= z9LL~->R$#xAJsWnzN)>GXOJ(e2**q#5!g7a)%2EFd}MYD)$pC>Y--hV1!#45itPlNNcftNy~()>Hj-?F&x^Ny3eVTsEbfq%R<{L^@h;!_Dz ziMUhUxyhFy#g|i`-JmVa;EXu_W1p|ivs{e&ABL2l{T*hjzH2@2dcD4W$Ri)LZ*2mx zy8F59!2&5PFx)rmzE@jHW(PHIhil7-+}3AE-`eM2D4#$!ne2IjvI#R)9@Tz64IC0i?4YK*u4R`lkU$!bwltr|=e<7wAwBK`UU*;#X zmaZz<@)wtDmj9?BN!!Y)UubKWta4Nc{?4oG&i9jATt#&ILb{f3N~B&znAn^xg4~>+ zbg-3BWKhh>j>?tE`RbleyF1vPSh}1Tcr?E-Y<>&{7iBR+b218_n;5XUG2z_m{fPVi zpxw!t*x*NZ4Mxaj{obPaUNa(b=Y!4gd(W6y2U((3YlzU}vb%swT(4}L9Os%=R&U)?YC8^aY`i}NQJ~Cb)2fJx^dG+4P zFYbCiBjw!VR(b2+j_X}99`I35d#h)f)y`flWG&of-32XYl78;rk^A=}g_7+aGOi5STW~pxC)HlvJH4)q1+zc2`dXrxAD4 z6R~RZXm4~bw5hDR^xoC?j`jMc*mmbhXjqrk!qpI&hhDHv?)3u5!y~ zn+}nk*@SeJf=v^|JTSdHR8zII_0m};(2xJP+ z?tFsqwgwX&d;Ru$S80jyXXCqL4yrX24>^COBQUUsjkLV3ngB8Pryku| zH6b{Kd$el2ci!hQ&%|ii8AbXGK(Kaf7P~JK^06rE>Kt#QSQe>`n6}#3x4P10VAaS? zt+?Nf+)R-85{&2{v!JXpZ_-=O@|Osk)s5PzPYJhW-UA9d2NjrAemEc>zv zAB1k5nSVX)k^4TaUOW$6PkPR`{FT%2eQxvm-negae$t-)xv-f&d|4JKJ$Gqrv|ZdI zrlzYxZhD#}#r4Cn@$Q$G1#?Evl=<*cD8Tt{WrMAUuU#HBbMLE!ni+*vr*m|Tf4sl8 zNvq?j>HbxDc8YYUpxK`i{0`eMvDgQEwE+=vyA4}$-ojA6b3IQX(^l?fw}j7B^R4PT zxOiR}+%qEhtRi(Lb-AA9HD$;^p{v9^rcR&ywFTF`zA*El)_wdSn&Y#keOTr!TD6{x z;RR9Dr?G)5%R?)A$>ji;vF*&<>svlk*31D&>QldY4-u2E`GKz-#8!_#tr@WtT|R37r4U zvSnyRPV`DGhZ-Mlx<^gO$;F!afnRaG9tgOF4F;2ojiV+NCpGoKdlGLFL8mE+;Ws#n zD1_)i=7dqQG{YiXw-wxs37;*c8r?*?I_%*-sF2I-|N z)c467fup0j!Xuif{zZmWSk^r!^6LDFa7j8+lPjO2DVSrUNC^8*`Tn=n zTP`J+U%pgs<0N0$4h)B(eIMJfreA(*Bn7e0XI5__2ras)C2MuCz1$tcI4V8sRokBL zI};lamu{!q(qCSM(hqFDGxJ)o&uOoR zNAZ=4`Et&9>y*DGG{{+>E@M*Z`YarW@6ui?iox<$Hz87emF5ID!Igi|-W>|#LS&1h zQ{Na*uw46hKYnE!t~q!TWT|Y?P7|ZE^c7w(I3SKJc^z#zG&2nCVVwL*TScjFOF2gPPZFkD7=XE zT`d;ssi^EJ1KUwdbUE@*BT5y;ya7O$q`vCL?(pooDc3)%Iz4-dmi&OTt0cQ)!;&`XE z?_@&I&t~vf%!p(!WX>4ethMEwj zs>IN_>7%Rc>R5d?9!(2tI5Iplth9e<5jPP&eFfNh-x zXN>SP7I?nO`#@x8Le~?XQxA&sVXSJ@cyEyWV>zaOYfYao+O6mMG|x1y)t+wRF*|%9 zy9MBt8wFF6wZ~SD9En`giGBU(Rrp%iVLDbedwRy<9&3`x=DlT-yI1qnNr*nJEyvZa z>FiMRX;yA~reD|FFN_WTyk9$8;(KTrl4MSA$Ugc+6}S~+fso_L&?-%u;I(i6q;BnY|M>BakwMznf%iSQRDIDHE3+kp&} zj)Igza=+BDalqfH8B$#)*~(!0{lu0#7csmHq4SKf!&F_zIyOyhTV3BN*pOIU;j7PT z=26CsrA8ITp}Puxv%b3bC1`PGz}n^Igz=XWM%G$?u=DZv(-}5}Y;u$B;1ZFb<7u$E zj80ZkioK{5wrKNw*sc|>eplJ&oFKxor0=rV9(HQ1(pI6AqT`Ecmb?!Zgz z-x;fAc2;h6Vl4dlnSGDujAyqj+^m2KJ^o!6YF97Df$#ZZP7olNyjXT!cIJ79fzI>| z@~?0ng4R#XuVcTA1~~Ga%gvXc>s;F*;)g9?iFiNEzZ?y7@%C~y4HYFeX=57JrD6S- zGv65Zz5&mj9`O&_2Y8PD)hmZ~Ttj!ARpJt9OP)=x0fsanp=!m;dgvis2gN>8E?l>e z2fiD-?<#sq-@dEszszLsp=(z&jae<$RFUzGy!tWp!;{w;*%8aG2pl!{Xz_S+=Bk{r z(e3=T*hXxbar9XX2iO50qeI6_$KXTvU8@zGV@kgOP zroYbjWuL~seCS+_aJMFa-+s&as;7K|U#G287HcVoW>$2PGu5cfBp}-|B>k-hh=Wy$ z^mO{I4%91eG@Zhf59kU?)SK}|_G(H!?VWvrFRP=u$os^r`N6>P;RDUC^gE2`2H3Yp7fneomf2DzG`i)>ONh#QzU@Qx!5+|<rd|bKJMlF~V5+6Q~NP8ab5dBYSnv2_A`6B0L^X}fh zlPpsG&l0fF2&dK3ZO&$Ku9ds$i{R{*y^F%zwa7n}=#lXeHkk8UPKcCl&+0}l_eNgP zhfK~)t)ISkmwV5@-agcumecB!T5>gfDO_YVf7dayZzx^IuWWQQif7hQM;gsotQKp~1%y7zdy}thkN}ziuZe`_T!`{TxI%B=lz&h{I3Q;FoklD4n)|>P^;m>e-&d zb%*42YPz|zPk(JmMC66Kd5b)`AfC9n=&Iin2^F-(KT2_M9KcFYcU?#-RZ1!TEGU;h zZ0?RK+)!q^`@1d$ns&Oy98aX7dSVYFgLG7*VaHsc#|1-!8|KPv^vU%xMippxP*6_s zQ(4e?aKIJjyFP1hvCRixPxj`?oG_{6Kdk%TZ)wea@T6}We3`YT9hl80|UQ(1yZhtj6=me08 zFPdDYCR`x*FGRwBhRB+L3%zhS0a1*)#0SQkXbwgq6y^%X2&S60PkNv?uW>jO=k}6? zNox4PX!rA{OSi_HVT&`wyZtV?-IV!s47}XNtn{|4gdFYzH(Rs%(`2o230Jrg1jEl&V~ z${X%+wtY1IVO`bWN>Q%7a(1P3aA|iz%{H3WC|2M2a=rH4S1i3GP5YMRV>sxIgOrBdiUvN#4NG)S`pNI> z$x(Ag4}67qurl*2MGMmkuOm8dyhG}MIOgfK#HxQ`4VLCStfr|^Het!H(Y(p=7uI1K z)`1<@Hd8`UUbp|I_#3RFRBFfa@2L3Kd~NA6+j zMd2xnw%>%9m6=fhA0Tl)j{I!&`fen}$sCMu@2X;^XOz%vvCA7zTLfY4Vqx;XJ5XU7 zr=LL7B+0JC`%vNUweu=O$rfzXy6K2HqNlcuFPbP{5ql%LF;jF7bax-lrR>P>{1D^; z3Ibcq*b8mI#JR)aLC(*~Os$4&4u7>-UHNmbnCIx+KaTuO{oK|cshLLfg%Q}`z^JJJ z^Z>dnx+!fXY6~HR+C|Mq`^RmjLUwDG6u|H3?T^A1AYo}!X!gd8C*?pVDDg@Q z$DZ1@^SL;WGLDqSqQr8d&eiuSbhDfOFyQU5MapIA=(~4n`^J>;uWfCSaMrkJP1C^g z#oLxhxd+q{So(4-=WH)q%^yd^Mb2bxj1mNEIhekhyyYWL4Me{Y$VMw(&ENIIx@~nB{W<9k z1rtY=h5hKu3YKsCi-wkX+lJU>&faE(9J67o#OqW)h;{-p+$r*1r1+JBj4t2HAJY(y zNyYYb__mqd$$*r-b}ihFLI@Ai6{je3G{kV`|8YS0bs4-l1k`_qnI&*i|4EN2!k$Ri zsnz(8R|Jk9v?SJ0M&-RGL?8K8jP07vWvUvK3l={c*UMxN9RpQGhuDUa9?VPsV|d;K z2n$>XdzIKIt(i_uRg?2pt|W+Jr6mX(EG9zPPG#00fXH+dt;{aXPlD!b{0|L0C?ZvV zC{lHWOR9dKMx)3KTbPV$-k!IIpLHi>xwjSa*9Pfs3^AUEN(6rM}kTx;@YLlER zeHm!3wq-em3}2;rRZqxHi`kEx|>Yp$UJ<{d+hHNOA@`8Ju0tYra0LAIwO-9iP9>mKRix zi!DkR8Dt+YkBb407zQ@CF86eRGqe-n+?XPA zQe}~uA=jM`tGIwd-Brp8441_)Pi-B%)o#mS1*T1`RnUh}4pc6q@K?;pko7LcvIyXL zE1Qx~7)`q&?WucBY zdM&2P0VI|u_d|>pbEURD(SFw%tOPx;xmecUGQ+aGjQvX{Y^s>!O8_a)BJtnH29+#M zPFa@Qc{mqpjz33Ca;2-65o|Ly*C!y88ZwlqYVNFu6B0fiqrq`0b~ zGlC@sBomL?ZDf$ph@*{Hhnu)03vF3A30YP+qe;#q@M%oDIx^NC z(}2k7zzA0?J_tw*9F1bd651jiAvg|ogycZX!lp8x@VjHzdezb-*_FH?_)J9=UD95i z`S)UTaxsuq6)l{ut%(UDVM{$Tq=Ewnv4X+;w80oAn1+V9kF<3%ms8$?{2=+55vTLd zGtk;9_KkaM?!bwsA{0Nk$m%`t?9t?IY+^fYhp2%Brk6BTbjpINsrLVQZ|}jjWn!G) zm_u63YWznBRnwQ?qK_Vd{nh}@!BU@IA|z?%AIau*T@pkhS=$+ zuH=_aN^cw;oA9!R4LW9iMZ>y)@%|bQpow@a#`y7Kw*VuMqLkfF{JSjOE?T0ul$wq) zO>Gx9Vh&;uQ9SGIv!LS$vTz6 zfr%20X_|(^ZCfTX#sQc7zvkJCe!hU>ZE;Mfo+K+ASSc(|_-r;Hrrt+bw$z31#(9)- z#AayPCsm+K7m)Gd!?z!<(9PQ_e<|Dq#oJT~N%N9vr@UL+n3ejGWe90RdnNhVBxgWB z0W8DeZ*iDSWX`n8n5i(Ps!PVZb&|FcLaJsfkUbQ_LAF?2{4y(8)>xSV6>$ai08!&& z=zwDiN0p4gCX#Pgi+XrT7 z@M*mL1Mmc$ir320>J&*Z;ZkOeL4ds4sdH5lUh8#zMr8Br>Cpeo8@vR^(~B@CSBSU} zxRd$UOF!`A`X=Y2xn&AsBij0LkiV(k3SKD*(#SD(kMj z7e_05RTRk$gt)Ia^S>U5xR1MbX}NFBju6+>lmWBZWI%(4AgKfc)j*3-X&U2y7>iim zU311ThYHI&jCw6Q=ux>rD0J$f3baUxBgH>VK`g;2Vec>MMX5R<1Fdup!s$l@^nSiI zc9FB8!uhU1l}x1OY(tj*=GZ!{d>|_h5>~fQQxR|=2P*(b_*6uqAf+Wtb<{bkid)EY zpJ~dHgUU<67)QkK5ih1WARISy5NG2=I0C#}UpWumW++iywnSwo%ago;d;73%S?Z3> z&p_D^w@GMr$XEyCjzMHi_%$Y)V}hCT0lOmkpS$`MIKF8~M771tU_fyu<0lNFq?!4q zg?jerrNEy|KZvMD;7j;H?crIV!bV^T4pk*~as3uKY6@P)6uc%FzA1HZQNJ;%|7)yI z9#dS<+6oB?&br}N48;}2{ZhpPXzXRR9atG!VC&ps5$R8DVM#w= zMF?#YFx>)d4@BLL9)Uv~bPLdNSBxTH@95sQ5Ycu%@|?il4m`G-5ZpHSQ}$52HbSv( zR{tq~!3-r2A+!Mb4aN7y1gY5P)o|8h22HzDbN+f8@)C3JE!#O&adM)&uzX%jKq%|0z#e|$J~}9o{xX1;_NT(Mpy~#!h%M|j+!nr8 zC_ue8Ty+ux-*Ie=)d_4)>Tyr;0(h8U+&kotEX_lkNjLeqQ2` z8mLwNd*j*xaSTBuGaJ*DuwkQrYxW{t?1#Zqd{Kv#4>*weE3!vG$0koq$L2!&L~#bF z!L8i{>>Z0B@*5InL+ZFFJiv}-gTWOh1Itm0^Cv7x>W2aT_2IFUj(-^#A(__mBr1E7 z8U9QNH;V&b>U2zmDh6wbN*8I-d{TLGko8Q`ykApE5_kjULk5erQb%Vgh6OneQI4{!(Y)uDV&n$u7QP5vYrwhc5Pp@Bl28uqOd~71 zC3SWIM1@dPoyqe^2V_kp8b78^(`?Z`+PhkGT&`V(4FrmVPSzV^u~t7ewE~?-?fmC= z+0Y?Xwt-N(w6gNCQnEZ^B_5TWL>#l=IOa~o9`Xt^-HK4s--%>*UZ5`~P|_r-S#?=F znO{JHwK2v8e)_NZytIgedYA@JAV-IlaB;avNeU^w7Hq%hFFI)SA<5L?>s48=_Ebz{ zyG>w;{Y^-;<`NsHv{;3MxRXSbL+kmL1cSjL)pr#SA??i>oQP9dP)6c-lO z4-qOLib`)>3TP1a{6R>HK`6BTl|P0`h_Z%_vaCQMR3VX;ZDdSJcG8Bpfm-Li+`r2P ztlCV_fs}ryi~3nckO_(M6qK1$=&g*!d)UkVc7JRc#&rH^xY2wx+f#SoUP5=2VgcGp zzW3C9cG0H z^mV9sO=m`2u0aRGQhx)_l<29$L)`_d^$VVII&I>lRgw&3PwslCl$rxR?jb8U;{4T` z$$uqMK5HdPQy(``tf^E<_&lSm6K+WvkX3pKc#T;GAbKI)6o4)S5UTi*v_sqV$`tBn z=!>!+VnPxvJckAHO1;M5zLs4`GW0gpnWT$%nmGR~M(p*<83HXm@2I64@TudYhXy2x#=ON@~>7H$55{L?uJi zPogfw<-K0yI#M}+7wX6USBYz~1%Wk3EV%Rfn}C+yxdI2F4YG%E7Vm;LA;TT(^>S6H z*E)*L#rKp_Q2kRLf@*>hkx(vFuxbl%{#Megw%ZbDb7^>0USO9$g@Ace%(byn2?vHC zA4QH`yblT~Wxvq8K-8aZ$Px_o*Y;m4P6tXRhugIl#&)ny!ImrYQC8^T9#_9`29|y$ z>y&#W8cohU+SQbA{wE;=>a%DRR?seF5|IQ0oSXZF3CCXLzsLY=E11$zP{CU!X2H{5 zO)KfZ6)i2m6{)HMWEU)_D0Ib~mahOcAhqftET;rBJ-Kd9aFIj(d@J#EH`K>L5rS<< zOQm7yVBIL0FB&3Pk2^kwrIxi|fc$kERsx-~t`1T$T+Fd7fJEp$@n4_{GGuj$U-opZ z(qiobrYd1V1{*ui>~A;wE_^L~opncTARly~a!X8+KVIUj$v2B3XzJ?pT?SwgKSp%^ zlW0k`jcFrNM~DL(ER_PJmHCt1Yp?)z5ft32M8CFgRASNy#xG?)PJM`vBJBII(Lk!u zZ3*$L4-WHwje*}tQBn#an+l+Q92=|3m?(=yX@x47mfj)mmsc9*h6P{QynTDhIyJg$5@6(K-< zA`A9p^aq0opNOLcB5|`W7p&6&5_s8r@6wtuT}=Pg%SpS+D@pW=S!EPwIv1E^fO(B#!up&&gb}PS+6o>l@WfUue^^8|EQO6A zP)*K-ji9_RBjX@ap)$4ts-}{Lquz2;O)Yp4_MDUj|H|Kqr#UIRc?*le2Q|J#xbbac zd}R7VjB+GW4=_$P6_qvPwh(f~tXOnjYMNM)Ih&t7UnC{e-^`CN%ZcA;vbx-xT{`WL zxBtW{Xgw;~6>EN0I%$`&5!@XBl4={~BgLI8Bon`aYk_4nQ&eaamhhzkT_dez;7UUg z0I#B@3j9GPT`!Vcj$!Uc<{zAiN((i}8gb$-$QOI%r{u#Rp3Xl^^jQW;$x^{O()gf~ z@kprRVnOQ+3K*H}p;{^+$-+_NGxDtStW)G7?{TYSWMwciPpe~1>FsGS@=QeD9D2xw z$L4gWSfLMYWZTzI7OKgaD-yC~v@4Zc$AQxJ6it9bk@&}_+uR^pS8M+cZkI3W0(_#| z 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%0D>Nt*WN;R5qa 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 N`~dTQ)%WM!{{u6CvpfI* literal 0 HcmV?d00001