From 88d624172caec5a290187d7eb0ad70fe5257290b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B0=8C=E5=85=88=E8=88=9C?= <2499071264@qq.com> Date: Wed, 21 Oct 2026 09:26:25 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=90=8C=E6=AD=A5=E5=9C=B0=E5=A4=A7?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E8=87=B32026=E5=B9=B410=E6=9C=8820=E6=97=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/base/constant/RedisConstant.java | 13 + .../budwk/app/base/constant/RoleConstant.java | 2 + .../com/budwk/app/base/enums/LoginType.java | 1 + .../app/sys/controller/SysConfController.java | 5 + .../app/sys/controller/SysDictController.java | 7 +- .../app/sys/controller/SysHomeController.java | 49 +- .../sys/controller/SysLoginController.java | 221 ++-- .../com/budwk/app/sys/models/Sys_dict.java | 10 + .../com/budwk/app/sys/models/Sys_user.java | 29 +- .../app/sys/services/SysConfigService.java | 17 + .../app/sys/services/SysDictService.java | 7 + .../app/sys/services/SysHomeNewsService.java | 24 + .../app/sys/services/SysUserService.java | 32 +- .../services/impl/SysConfigServiceImpl.java | 32 + .../impl/SysDataUserPullServiceImpl.java | 192 ++- .../sys/services/impl/SysDictServiceImpl.java | 65 +- .../services/impl/SysHomeNewsServiceImpl.java | 159 +++ .../sys/services/impl/SysUserServiceImpl.java | 97 +- .../commons/auth/service/ValidateService.java | 151 ++- .../ext/handler/WkTomcatConfiguration.java | 6 + .../manage/TrainSignUpAdjustController.java | 147 +-- .../manage/TrainSignUpApplyController.java | 2 + .../manage/TrainSignUpManageController.java | 64 +- ...ainSignUpActivityStatisticsController.java | 273 +--- .../trainSignUp/models/TrainSignUpCourse.java | 7 + .../models/TrainSignUpCourseResponsible.java | 60 + .../service/TrainSignUpActivityService.java | 36 + .../TrainSignUpActivityStatisticsService.java | 112 +- .../impl/TrainSignUpActivityServiceImpl.java | 408 +++++- ...inSignUpActivityStatisticsServiceImpl.java | 345 +++++- .../apply/ClubUserClubListController.java | 18 +- .../apply/ClubUserJoinApplyController.java | 16 +- .../common/ClubCommonController.java | 42 + .../budwk/app/zhgh/club/model/SysClub.java | 5 + .../club/service/impl/SysClubServiceImpl.java | 3 + .../app/zhgh/club/vo/ClubRegisterVo.java | 6 + .../H5HealthCheckupController.java | 3 + .../impl/HealthCheckupProjectServiceImpl.java | 12 +- .../impl/HealthCheckupSingleServiceImpl.java | 8 + .../controller/HonorBoardController.java | 35 +- .../honor/service/HonorCommonService.java | 9 + .../service/impl/HonorCommonServiceImpl.java | 57 + .../message/service/SliderCaptchaService.java | 269 ++++ .../message/service/TencentSmsService.java | 23 + .../service/impl/TencentSmsServiceImpl.java | 147 +++ .../UnionReimburseApplyController.java | 11 + .../UnionReimburseCollectController.java | 13 + .../UnionReimburseReviewController.java | 15 + .../service/UnionReimburseExportService.java | 10 +- .../service/UnionReimburseService.java | 9 +- .../impl/UnionReimburseExportServiceImpl.java | 149 +-- .../impl/UnionReimburseServiceImpl.java | 164 ++- .../ProposalFeedbackEvaluationController.java | 6 +- .../H5ProposalCommonController.java | 23 + .../service/ProposalWriteService.java | 8 + .../impl/ProposalWriteServiceImpl.java | 17 +- ...acherCongressDelegateManageController.java | 36 +- .../TeacherCongressDelegateService.java | 9 + .../TeacherCongressDelegateServiceImpl.java | 30 + .../zhgh/huazhu/constant/HuaZhuConstant.java | 47 + .../controller/HuaZhuManageController.java | 81 ++ .../h5Controller/H5HuaZhuController.java | 37 + .../huazhu/param/HuaZhuEmployeePageForm.java | 9 + .../huazhu/service/HuaZhuEmployeeService.java | 39 + .../huazhu/service/HuaZhuLoginService.java | 15 + .../impl/HuaZhuEmployeeServiceImpl.java | 299 +++++ .../service/impl/HuaZhuLoginServiceImpl.java | 67 + .../zhgh/huazhu/vo/HuaZhuEmployeeStatus.java | 32 + .../app/zhgh/huazhu/vo/HuaZhuSyncResult.java | 18 + .../InclusiveBenefitController.java | 114 ++ .../H5InclusiveBenefitController.java | 60 + .../inclusive/model/InclusiveBenefit.java | 84 ++ .../param/InclusiveBenefitPageForm.java | 19 + .../service/InclusiveBenefitService.java | 54 + .../impl/InclusiveBenefitServiceImpl.java | 206 ++++ .../zhgh/inclusive/vo/InclusiveBenefitVO.java | 28 + .../budwk/app/zhgh/map/TMapController.java | 2 +- .../controller/PersonApiConfigController.java | 170 +++ .../job/PersonGovernanceSyncJob.java | 55 + .../apiConfig/model/PersonApiConfig.java | 150 +++ .../model/PersonApiFieldMapping.java | 52 + .../model/PersonApiRequestParam.java | 62 + .../apiConfig/model/PersonApiTestCase.java | 58 + .../apiConfig/model/PersonSourceRelation.java | 57 + .../apiConfig/model/PersonSyncBatch.java | 72 ++ .../service/PersonApiConfigService.java | 63 + .../service/PersonGovernanceSyncService.java | 10 + .../impl/PersonApiConfigServiceImpl.java | 951 ++++++++++++++ .../impl/PersonGovernanceSyncServiceImpl.java | 683 ++++++++++ .../PersonMemberMatchController.java | 115 ++ .../model/PersonMemberMatchCondition.java | 63 + .../model/PersonMemberMatchConfig.java | 53 + .../model/PersonMemberMatchGroup.java | 49 + .../service/PersonMemberMatchService.java | 55 + .../impl/PersonMemberMatchServiceImpl.java | 684 ++++++++++ .../PersonGovernanceChangeController.java | 117 ++ .../PersonGovernanceChangeService.java | 37 + .../PersonGovernanceChangeServiceImpl.java | 301 +++++ .../controller/PersonExceptionController.java | 72 ++ .../model/PersonException.java | 99 ++ .../service/PersonExceptionService.java | 41 + .../impl/PersonExceptionServiceImpl.java | 192 +++ .../AidFundChangeRecordController.java | 87 +- .../AidFundMemberChangeRecordService.java | 17 + .../AidFundMemberChangeRecordServiceImpl.java | 120 ++ .../MedicalCalculateMoneyController.java | 132 +- .../MedicalStatisticsController.java | 121 +- .../medical/service/MedicalApplyService.java | 12 + .../service/MedicalCalculateMoneyService.java | 24 + .../service/impl/MedicalApplyServiceImpl.java | 158 +++ .../MedicalCalculateMoneyServiceImpl.java | 170 ++- .../apply/MemberApplyController.java | 100 +- .../PendingConfirmUserController.java | 25 + .../PendingConfirmUserImportExcelMode.java | 46 + .../service/PendingConfirmUserService.java | 11 + .../impl/PendingConfirmUserServiceImpl.java | 152 +++ src/main/resources/db/person_governance.sql | 212 ++++ .../resources/db/sys_club_add_thumbnail.sql | 19 + ...union_reimburse_add_club_activity_dict.sql | 38 + src/main/resources/logback.xml | 79 -- .../assets/mobile/img/club/club-hero-v5.png | Bin 0 -> 1843711 bytes .../assets/platform/css/personGovernance.css | 768 ++++++++++++ .../platform/js/mixin/initTableMixins.js | 3 +- .../resources/static/captcha/slider/0.jpg | Bin 0 -> 23785 bytes .../resources/static/captcha/slider/1.jpg | Bin 0 -> 23868 bytes .../resources/static/captcha/slider/10.jpg | Bin 0 -> 22582 bytes .../resources/static/captcha/slider/11.jpg | Bin 0 -> 23474 bytes .../resources/static/captcha/slider/12.jpg | Bin 0 -> 24308 bytes .../resources/static/captcha/slider/13.jpg | Bin 0 -> 21979 bytes .../resources/static/captcha/slider/14.jpg | Bin 0 -> 23363 bytes .../resources/static/captcha/slider/15.jpg | Bin 0 -> 23497 bytes .../resources/static/captcha/slider/16.jpg | Bin 0 -> 20895 bytes .../resources/static/captcha/slider/17.jpg | Bin 0 -> 22993 bytes .../resources/static/captcha/slider/18.jpg | Bin 0 -> 17858 bytes .../resources/static/captcha/slider/19.jpg | Bin 0 -> 22110 bytes .../resources/static/captcha/slider/2.jpg | Bin 0 -> 24622 bytes .../resources/static/captcha/slider/3.jpg | Bin 0 -> 20916 bytes .../resources/static/captcha/slider/4.jpg | Bin 0 -> 22824 bytes .../resources/static/captcha/slider/5.jpg | Bin 0 -> 24192 bytes .../resources/static/captcha/slider/6.jpg | Bin 0 -> 24438 bytes .../resources/static/captcha/slider/7.jpg | Bin 0 -> 24061 bytes .../resources/static/captcha/slider/8.jpg | Bin 0 -> 21678 bytes .../resources/static/captcha/slider/9.jpg | Bin 0 -> 22962 bytes .../activity/ActivityScheduleCalendar.vue | 477 +++++-- .../components/plugins/mapContainer/TMap.vue | 144 ++- .../resources/views/layouts/platform.html | 14 + .../resources/views/layouts/platform_h5.html | 7 +- .../views/layouts/v4/baseLayout.html | 6 +- .../personGovernance/apiConfig/form.html | 1095 +++++++++++++++++ .../personGovernance/apiConfig/index.html | 202 +++ .../personGovernance/memberMatch/form.html | 643 ++++++++++ .../personGovernance/memberMatch/index.html | 197 +++ .../common/memberAllChangeInfo.js | 114 ++ .../personChange/common/memberChange.js | 599 +++++++++ .../personChange/common/memberInfo.js | 108 ++ .../personGovernance/personChange/index.html | 944 ++++++++++++++ .../personException/index.html | 414 +++++++ .../views/platform/sys/dict/index.html | 202 +-- .../resources/views/platform/sys/login.html | 595 +++++++-- .../platform/sys/union/branchUnionManage.js | 10 +- .../views/platform/sys/union/index.html | 53 +- .../activity/trainSignUp/manage/basicForm.js | 110 +- .../trainSignUp/manage/courseManage.js | 74 ++ .../trainSignUp/manage/courseManageForm.js | 286 +++++ .../activity/trainSignUp/manage/customForm.js | 23 +- .../activity/trainSignUp/manage/index.html | 57 +- .../trainSignUp/manage/responsibleForm.js | 133 ++ .../zhgh/club/common/clubInfoComponent.js | 6 + .../platform/zhgh/club/join/apply/index.html | 27 +- .../platform/zhgh/club/join/list/index.html | 113 +- .../zhgh/club/join/mineclub/index.html | 6 + .../club/register/apply/clubRegisterForm.js | 17 +- .../healthCheckup/statisticsSingle/index.html | 86 +- .../outlayManage/club/useDetail/index.html | 6 +- .../unionReimburse/apply/index.html | 193 ++- .../unionReimburse/collect/index.html | 4 +- .../zhgh/dayofficework/unionReimburse/info.js | 2 +- .../unionReimburse/mine/index.html | 1 + .../unionReimburse/review/index.html | 3 +- .../teachercongress/delegate/manage/adjust.js | 27 +- .../views/platform/zhgh/huazhu/index.html | 122 ++ .../views/platform/zhgh/inclusive/index.html | 187 +++ .../aidFund/changeRecord/index.html | 11 +- .../medical/calculateMoney/index.html | 148 ++- .../medical/statistics/index.html | 192 ++- .../sourcechange/pending/index.html | 43 + .../platform/zhghh5/club/apply/index.html | 48 +- .../platform/zhghh5/club/list/index.html | 349 ++++++ .../platform/zhghh5/club/mineclub/index.html | 4 + .../healthCheckup/list/index.html | 74 +- .../healthCheckup/mine/index.html | 69 +- .../dayofficework/honor/manage/index.html | 271 +++- .../unionReimburse/apply/index.html | 122 +- .../proposal/transact/write/index.html | 145 ++- .../platform/zhghh5/inclusive/index.html | 249 ++++ .../zhghh5/learning/myRecord/index.html | 444 +++++-- .../member/apply/submit/index.html | 227 +++- .../views/platform/zhghh5/sys/home/home.js | 308 +++-- 198 files changed, 19375 insertions(+), 2128 deletions(-) create mode 100644 src/main/java/com/budwk/app/sys/services/SysHomeNewsService.java create mode 100644 src/main/java/com/budwk/app/sys/services/impl/SysHomeNewsServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/activity/trainSignUp/models/TrainSignUpCourseResponsible.java create mode 100644 src/main/java/com/budwk/app/zhgh/dayofficework/message/service/SliderCaptchaService.java create mode 100644 src/main/java/com/budwk/app/zhgh/dayofficework/message/service/TencentSmsService.java create mode 100644 src/main/java/com/budwk/app/zhgh/dayofficework/message/service/impl/TencentSmsServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/constant/HuaZhuConstant.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/controller/HuaZhuManageController.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/h5Controller/H5HuaZhuController.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/param/HuaZhuEmployeePageForm.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/service/HuaZhuEmployeeService.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/service/HuaZhuLoginService.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/service/impl/HuaZhuEmployeeServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/service/impl/HuaZhuLoginServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/vo/HuaZhuEmployeeStatus.java create mode 100644 src/main/java/com/budwk/app/zhgh/huazhu/vo/HuaZhuSyncResult.java create mode 100644 src/main/java/com/budwk/app/zhgh/inclusive/controller/InclusiveBenefitController.java create mode 100644 src/main/java/com/budwk/app/zhgh/inclusive/h5Controller/H5InclusiveBenefitController.java create mode 100644 src/main/java/com/budwk/app/zhgh/inclusive/model/InclusiveBenefit.java create mode 100644 src/main/java/com/budwk/app/zhgh/inclusive/param/InclusiveBenefitPageForm.java create mode 100644 src/main/java/com/budwk/app/zhgh/inclusive/service/InclusiveBenefitService.java create mode 100644 src/main/java/com/budwk/app/zhgh/inclusive/service/impl/InclusiveBenefitServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/inclusive/vo/InclusiveBenefitVO.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/controller/PersonApiConfigController.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/job/PersonGovernanceSyncJob.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiConfig.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiFieldMapping.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiRequestParam.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiTestCase.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonSourceRelation.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonSyncBatch.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/PersonApiConfigService.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/PersonGovernanceSyncService.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/impl/PersonApiConfigServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/impl/PersonGovernanceSyncServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/controller/PersonMemberMatchController.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchCondition.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchConfig.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchGroup.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/service/PersonMemberMatchService.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/service/impl/PersonMemberMatchServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/personChange/controller/PersonGovernanceChangeController.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/personChange/service/PersonGovernanceChangeService.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/personChange/service/impl/PersonGovernanceChangeServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/personException/controller/PersonExceptionController.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/personException/model/PersonException.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/personException/service/PersonExceptionService.java create mode 100644 src/main/java/com/budwk/app/zhgh/personGovernance/personException/service/impl/PersonExceptionServiceImpl.java create mode 100644 src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/mode/PendingConfirmUserImportExcelMode.java create mode 100644 src/main/resources/db/person_governance.sql create mode 100644 src/main/resources/db/sys_club_add_thumbnail.sql create mode 100644 src/main/resources/db/union_reimburse_add_club_activity_dict.sql create mode 100644 src/main/resources/static/assets/mobile/img/club/club-hero-v5.png create mode 100644 src/main/resources/static/assets/platform/css/personGovernance.css create mode 100644 src/main/resources/static/captcha/slider/0.jpg create mode 100644 src/main/resources/static/captcha/slider/1.jpg create mode 100644 src/main/resources/static/captcha/slider/10.jpg create mode 100644 src/main/resources/static/captcha/slider/11.jpg create mode 100644 src/main/resources/static/captcha/slider/12.jpg create mode 100644 src/main/resources/static/captcha/slider/13.jpg create mode 100644 src/main/resources/static/captcha/slider/14.jpg create mode 100644 src/main/resources/static/captcha/slider/15.jpg create mode 100644 src/main/resources/static/captcha/slider/16.jpg create mode 100644 src/main/resources/static/captcha/slider/17.jpg create mode 100644 src/main/resources/static/captcha/slider/18.jpg create mode 100644 src/main/resources/static/captcha/slider/19.jpg create mode 100644 src/main/resources/static/captcha/slider/2.jpg create mode 100644 src/main/resources/static/captcha/slider/3.jpg create mode 100644 src/main/resources/static/captcha/slider/4.jpg create mode 100644 src/main/resources/static/captcha/slider/5.jpg create mode 100644 src/main/resources/static/captcha/slider/6.jpg create mode 100644 src/main/resources/static/captcha/slider/7.jpg create mode 100644 src/main/resources/static/captcha/slider/8.jpg create mode 100644 src/main/resources/static/captcha/slider/9.jpg create mode 100644 src/main/resources/views/platform/personGovernance/apiConfig/form.html create mode 100644 src/main/resources/views/platform/personGovernance/apiConfig/index.html create mode 100644 src/main/resources/views/platform/personGovernance/memberMatch/form.html create mode 100644 src/main/resources/views/platform/personGovernance/memberMatch/index.html create mode 100644 src/main/resources/views/platform/personGovernance/personChange/common/memberAllChangeInfo.js create mode 100644 src/main/resources/views/platform/personGovernance/personChange/common/memberChange.js create mode 100644 src/main/resources/views/platform/personGovernance/personChange/common/memberInfo.js create mode 100644 src/main/resources/views/platform/personGovernance/personChange/index.html create mode 100644 src/main/resources/views/platform/personGovernance/personException/index.html create mode 100644 src/main/resources/views/platform/zhgh/activity/trainSignUp/manage/courseManage.js create mode 100644 src/main/resources/views/platform/zhgh/activity/trainSignUp/manage/courseManageForm.js create mode 100644 src/main/resources/views/platform/zhgh/activity/trainSignUp/manage/responsibleForm.js create mode 100644 src/main/resources/views/platform/zhgh/huazhu/index.html create mode 100644 src/main/resources/views/platform/zhgh/inclusive/index.html create mode 100644 src/main/resources/views/platform/zhghh5/club/list/index.html create mode 100644 src/main/resources/views/platform/zhghh5/inclusive/index.html diff --git a/src/main/java/com/budwk/app/base/constant/RedisConstant.java b/src/main/java/com/budwk/app/base/constant/RedisConstant.java index 6920246..b0db4c5 100644 --- a/src/main/java/com/budwk/app/base/constant/RedisConstant.java +++ b/src/main/java/com/budwk/app/base/constant/RedisConstant.java @@ -48,6 +48,13 @@ public class RedisConstant { */ public static final String UCENTER_SMSCODE = PLATFORM_REDIS_PREFIX + "ucenter:smscode:"; + /** 拼图挑战与凭证按匿名会话隔离,频率键单独存放。 */ + public static final String REDIS_SLIDER_CAPTCHA_KEY = PLATFORM_REDIS_PREFIX + "login:slider:"; + public static final String REDIS_SLIDER_RATE_KEY = PLATFORM_REDIS_PREFIX + "login:slider-rate:"; + + /** 登录短信专用缓存前缀,避免验证码与其他业务场景交叉使用。 */ + public static final String LOGIN_SMSCODE = PLATFORM_REDIS_PREFIX + "login:sms:"; + /** * 接口重复提交前缀 */ @@ -72,4 +79,10 @@ public class RedisConstant { * 数据接口锁前缀 */ public static final String RSA_KEY_PREFIX = PLATFORM_REDIS_PREFIX + "rsa:private:"; + + /** + * 人员治理第三方数据查询结果缓存前缀。 + */ + public static final String REDIS_KEY_PERSON_API_DATA_QUERY_RESULT = + PLATFORM_REDIS_PREFIX + "personGovernance:dataQuery:"; } diff --git a/src/main/java/com/budwk/app/base/constant/RoleConstant.java b/src/main/java/com/budwk/app/base/constant/RoleConstant.java index 69f1abf..5c11041 100644 --- a/src/main/java/com/budwk/app/base/constant/RoleConstant.java +++ b/src/main/java/com/budwk/app/base/constant/RoleConstant.java @@ -27,6 +27,8 @@ RoleConstant { SCHOOL_UNION_PROPOSAL_ADMIN("校工会提案管理员"), SCHOOL_UNION_CLUB_ADMIN("校工会社团管理员"), SCHOOL_UNION_ACTIVITY_ADMIN("校工会活动管理员"), + /** 品牌活动统计、人员调整管理员,数据范围按 trainSignUp 子活动负责人关系控制。 */ + SCHOOL_UNION_TRAIN_SIGN_UP_ADMIN("校工会品牌活动管理员"), SCHOOL_UNION_ARTICLE_CLUB_ADMIN("校工会社团新闻审批管理员"), SCHOOL_UNION_ARTICLE_FGH_ADMIN("校工会分工会新闻审批管理员"), SCHOOL_UNION_ARTICLE_ADMIN("校工会新闻审批管理员"), diff --git a/src/main/java/com/budwk/app/base/enums/LoginType.java b/src/main/java/com/budwk/app/base/enums/LoginType.java index 21c4f0d..1e3125e 100644 --- a/src/main/java/com/budwk/app/base/enums/LoginType.java +++ b/src/main/java/com/budwk/app/base/enums/LoginType.java @@ -13,6 +13,7 @@ public enum LoginType { QI_YE_WECHAT("企业微信"), WECHAT("微信"), PC_LOCAL("PC本地"), + SMS_CODE("手机验证码"), MOBILE_LOCAL("手机本地"), CAS("CAS"); diff --git a/src/main/java/com/budwk/app/sys/controller/SysConfController.java b/src/main/java/com/budwk/app/sys/controller/SysConfController.java index 409d192..d56a079 100644 --- a/src/main/java/com/budwk/app/sys/controller/SysConfController.java +++ b/src/main/java/com/budwk/app/sys/controller/SysConfController.java @@ -7,10 +7,12 @@ import com.budwk.app.base.result.Result; import com.budwk.app.sys.models.Sys_config; import com.budwk.app.sys.services.SysConfigService; import com.budwk.app.web.commons.auth.utils.SecurityUtil; +import org.nutz.aop.interceptor.ioc.TransAop; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; import org.nutz.dao.Sqls; import org.nutz.integration.jedis.pubsub.PubSubService; +import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.lang.Strings; @@ -139,12 +141,15 @@ public class SysConfController { @At @Ok("json:full") @SaCheckPermission("sys.manager.conf") + @Aop(TransAop.READ_COMMITTED) public Object data(@Param("pageNumber") int pageNumber, @Param("pageSize") int pageSize, @Param("pageOrderName") String pageOrderName, @Param("pageOrderBy") String pageOrderBy, @Param("configKey") String configKey) { try { + // 由 service 补充默认关闭的入口参数,管理员可通过现有“是/否”控件修改。 + sysConfigService.ensureSmsLoginVisibleConfig(SecurityUtil.getUserId()); ensureAppImageConfig("AppHomeImg", "PC首页轮播图"); ensureAppImageConfig("H5AppHomeImg", "移动端首页轮播图"); ensureAppImageConfig("AppFeaturedActivityImg", "精彩活动页顶部图片"); diff --git a/src/main/java/com/budwk/app/sys/controller/SysDictController.java b/src/main/java/com/budwk/app/sys/controller/SysDictController.java index 3bf4b2f..50cad0b 100644 --- a/src/main/java/com/budwk/app/sys/controller/SysDictController.java +++ b/src/main/java/com/budwk/app/sys/controller/SysDictController.java @@ -3,6 +3,7 @@ package com.budwk.app.sys.controller; import cn.dev33.satoken.annotation.SaCheckLogin; import cn.dev33.satoken.annotation.SaCheckPermission; import com.budwk.app.base.annotation.SLog; +import com.budwk.app.base.exception.BaseException; import com.budwk.app.base.result.Result; import com.budwk.app.sys.models.Sys_dict; import com.budwk.app.sys.services.SysDictService; @@ -119,6 +120,8 @@ public class SysDictController { sysDictService.save(dict, parentId); sysDictService.clearCache(); return Result.success("system.success"); + } catch (BaseException e) { + return Result.error(e.getMessage()); } catch (Exception e) { return Result.error("system.error"); } @@ -142,9 +145,11 @@ public class SysDictController { public Object editDo(@Param("..") Sys_dict dict, @Param("parentId") String parentId, HttpServletRequest req) { try { dict.setUpdatedBy(SecurityUtil.getUserId()); - sysDictService.updateIgnoreNull(dict); + sysDictService.updateDict(dict); sysDictService.clearCache(); return Result.success(); + } catch (BaseException e) { + return Result.error(e.getMessage()); } catch (Exception e) { return Result.error(); } diff --git a/src/main/java/com/budwk/app/sys/controller/SysHomeController.java b/src/main/java/com/budwk/app/sys/controller/SysHomeController.java index 1325815..9395da6 100644 --- a/src/main/java/com/budwk/app/sys/controller/SysHomeController.java +++ b/src/main/java/com/budwk/app/sys/controller/SysHomeController.java @@ -11,26 +11,21 @@ import com.budwk.app.base.result.Result; import com.budwk.app.sys.models.Sys_home_activity; import com.budwk.app.sys.models.Sys_home_template; import com.budwk.app.sys.models.Sys_menu; +import com.budwk.app.sys.services.SysHomeNewsService; import com.budwk.app.sys.services.SysMenuService; import com.budwk.app.sys.services.SysUserService; import com.budwk.app.web.commons.auth.utils.AuthUtil; import com.budwk.app.web.commons.auth.utils.SecurityUtil; import com.budwk.app.zhgh.activity.basic.service.ActivityBasicScopeService; import io.swagger.annotations.ApiOperation; -import org.jsoup.Jsoup; -import org.jsoup.nodes.Document; -import org.jsoup.nodes.Element; -import org.jsoup.select.Elements; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; import org.nutz.dao.FieldFilter; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; import org.nutz.dao.util.Daos; -import org.nutz.integration.jedis.RedisService; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; import org.nutz.lang.Lang; import org.nutz.lang.Strings; import org.nutz.lang.util.NutMap; @@ -42,7 +37,6 @@ import org.nutz.mvc.annotation.Param; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; -import java.io.IOException; import java.util.*; import java.util.stream.Collectors; @@ -58,9 +52,9 @@ public class SysHomeController { @Inject private SysUserService sysUserService; @Inject - private RedisService redisService; - @Inject private ActivityBasicScopeService activityBasicScopeService; + @Inject + private SysHomeNewsService sysHomeNewsService; @At("") @Ok("re") @@ -293,34 +287,17 @@ public class SysHomeController { @SaCheckLogin @ApiOperation("获取新闻") @Ok("json") -// @CacheDefaults(cacheName = RedisConstant.PLATFORM_REDIS_WKCACHE_PREFIX + "web_news", isHash = true) -// @CacheResult(cacheKey = "news", ignoreNull = true, cacheLiveTime = 60 * 60 * 24) public Result getNews() { - try { - String url = "https://xgh.cug.edu.cn/"; - Document document = Jsoup.connect(url).get(); - Elements homeElements = document.select(".gh,.jc,.fc,.jg"); + return Result.success(sysHomeNewsService.getWebsiteNews()); + } - List> news = homeElements.stream().map(homeElement -> { - //获取板块名称 - String name = homeElement.selectFirst(".title").text(); - Elements liElements = homeElement.select("li"); - List ele = liElements.stream().map(liElement -> { - NutMap row = NutMap.NEW(); - String href = liElement.selectFirst("a").attr("href"); - String time = liElement.selectFirst("span").text(); - String title = liElement.selectFirst("a").attr("title"); - row.put("href", href); - row.put("time", time); - row.put("text", title); - return row; - }).toList(); - return Map.of("label", name, "value", ele); - }).collect(Collectors.toList()); - redisService.setex("gonghui_news", 60 * 60 * 24, Json.toJson(news)); - return Result.success(news); - } catch (IOException e) { - throw new RuntimeException(e); - } + /** + * href 传首页新闻项原始链接;成功结果 data 为图片地址字符串,空字符串表示没有可用图片。 + */ + @At + @SaCheckLogin + @Ok("json") + public Result getNewsImage(@Param("href") String href) { + return Result.success(sysHomeNewsService.getNewsImage(href)); } } diff --git a/src/main/java/com/budwk/app/sys/controller/SysLoginController.java b/src/main/java/com/budwk/app/sys/controller/SysLoginController.java index a466417..b6e9698 100644 --- a/src/main/java/com/budwk/app/sys/controller/SysLoginController.java +++ b/src/main/java/com/budwk/app/sys/controller/SysLoginController.java @@ -16,16 +16,20 @@ import com.budwk.app.base.utils.RsaUtils; import com.budwk.app.sys.models.Sys_log; import com.budwk.app.sys.models.Sys_user; import com.budwk.app.sys.services.SysUserService; +import com.budwk.app.sys.services.SysConfigService; import com.budwk.app.web.commons.auth.service.ValidateService; +import com.budwk.app.zhgh.dayofficework.message.service.SliderCaptchaService; import com.budwk.app.web.commons.auth.utils.SecurityUtil; import com.budwk.app.web.commons.base.Globals; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.jasig.cas.client.util.AbstractCasFilter; import org.jasig.cas.client.validation.Assertion; +import org.nutz.aop.interceptor.ioc.TransAop; import org.nutz.dao.Cnd; import org.nutz.integration.jedis.RedisService; import org.nutz.ioc.impl.PropertiesProxy; +import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.lang.Lang; @@ -35,6 +39,7 @@ import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Filters; import org.nutz.mvc.annotation.Ok; import org.nutz.mvc.annotation.Param; +import org.nutz.mvc.annotation.POST; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -55,19 +60,19 @@ import java.util.concurrent.ConcurrentHashMap; public class SysLoginController { private static final Log log = Logs.get(); private static final LoginRsaKeyRing LOGIN_RSA_KEY_RING = new LoginRsaKeyRing(); - /** - * TODO: 临时屏蔽回环地址及指定局域网 IP 的平台登录验证码,全部恢复时改为 false。 - */ - private static final boolean DISABLE_LOGIN_CAPTCHA = false; @Inject private SysUserService sysUserService; @Inject + private SysConfigService sysConfigService; + @Inject private RedisService redisService; @Inject private SLogService sLogService; @Inject private ValidateService validateService; @Inject + private SliderCaptchaService sliderCaptchaService; + @Inject protected PropertiesProxy conf; @At("") @@ -75,13 +80,17 @@ public class SysLoginController { @ApiOperation("用户本地登录页面") @Filters public String login(HttpServletRequest req, HttpSession session) { + // 只向模板提供入口显示状态,短信发送及验证码登录接口继续使用原有规则。 + req.setAttribute("smsLoginVisible", sysConfigService.isSmsLoginVisible()); return "beetl:/platform/sys/login.html"; } @At @Ok("re") @Filters - public String h5() { + public String h5(HttpServletRequest req) { + // 手机端复用同一个登录模板,读取相同的系统参数。 + req.setAttribute("smsLoginVisible", sysConfigService.isSmsLoginVisible()); return "beetl:/platform/sys/login.html"; } @@ -93,6 +102,13 @@ public class SysLoginController { } + /** + * 账号密码登录:username 为账号,password 为 RSA 密文,keyId 为公钥编号; + * platformKey/platformCaptcha 为当前会话、当前账号的滑块一次性凭证。 + * 返回 Result:code=0 表示登录成功,msg 为成功提示或失败原因。 + */ + @POST + @Aop(TransAop.READ_COMMITTED) @At("/doLogin") @Ok("json") @ApiOperation("用户本地账号密码登录") @@ -124,14 +140,9 @@ public class SysLoginController { // return Result.error("登录失败次数过多,请5分钟后再试"); // } try { - // 验证码校验 - if (!isLoginCaptchaDisabled(req)) { - try { - validateService.checkCode(captchaKey, captchaCode); - } catch (BaseException e) { - return Result.error(e.getMessage()); - } - } + // 所有访问地址均需消费绑定当前账号的滑块凭证,旧图形码不能用于登录。 + sliderCaptchaService.consume(session.getId(), captchaKey, captchaCode, + SliderCaptchaService.PASSWORD, username); // 解密密码 LoginRsaKey rsaKey = LOGIN_RSA_KEY_RING.getPrivateKey(keyId); @@ -162,20 +173,7 @@ public class SysLoginController { } } - private boolean isLoginCaptchaDisabled(HttpServletRequest req) { - if (!DISABLE_LOGIN_CAPTCHA || req == null) { - return false; - } - String serverName = req.getServerName(); - // 临时允许该局域网地址免验证码;恢复 IP 验证码时删除此条件,并同步删除登录页中的该 IP。 - return "localhost".equalsIgnoreCase(serverName) - || "192.168.0.108".equals(serverName) - || "127.0.0.1".equals(serverName) - || "0:0:0:0:0:0:0:1".equals(serverName) - || "::1".equals(serverName); - } - - @At(value = {"/platform/sso/login", "/sso/login"}, top = true) + @At(value = "/platform/sso/login", top = true) @Ok("re") @ApiOperation("用户cas登录统一入口") public String ssoLogin(HttpSession httpSession, HttpServletRequest request, HttpServletResponse response) { @@ -190,72 +188,23 @@ public class SysLoginController { return ">>:" + sysUserService.loginPlus(sysUser, LoginType.CAS, request); } - @At(value = {"/platform/qywechat/oauth", "/platform/qywechat"}, top = true) - @Ok("re") - public String qywechatOauth(@Param("redirect") String redirect, HttpServletRequest request) { - if (!"prd".equalsIgnoreCase(conf.get("nutz.profiles.active")) || !conf.getBoolean("wxwork.enable", false)) { - return ">>:/platform/home"; - } - String state = UUID.randomUUID().toString(); - request.getSession().setAttribute("zjnuWxworkState", state); - String callback = Globals.AppDomain + conf.get("wxwork.redirectUri"); - if (StrUtil.isNotBlank(redirect)) { - callback += "?redirect=" + URLEncoder.encode(redirect, StandardCharsets.UTF_8); - } - return ">>:https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + conf.get("wxwork.corpId") - + "&redirect_uri=" + URLEncoder.encode(callback, StandardCharsets.UTF_8) - + "&response_type=code&scope=snsapi_base&state=" + state + "#wechat_redirect"; - } - - private String getZjnuWxworkToken() { - String cacheKey = RedisConstant.REDIS_KEY_WX_WORK_TOKEN + conf.get("wxwork.corpId"); - String token = redisService.get(cacheKey); - if (StrUtil.isNotBlank(token)) { - return token; - } - String url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=" + conf.get("wxwork.corpId") - + "&corpsecret=" + conf.get("wxwork.corpSecret"); - JSONObject result = JSONUtil.parseObj(HttpUtil.get(url)); - token = result.getStr("access_token"); - if (!Integer.valueOf(0).equals(result.getInt("errcode")) || StrUtil.isBlank(token)) { - throw new BaseException("????????????"); - } - redisService.setex(cacheKey, Math.max(1, result.getInt("expires_in", 7200) - 200), token); - return token; - } - - @At(value = {"/platform/wxwork/oauth2/callback", "/platform/qywechat/getCode"}, top = true) + @At(value = "/platform/wxwork/oauth2/callback", top = true) @Ok("re") @ApiOperation("企业微信登录回调") public String wxworkOAuth2(@Param("code") String code, @Param("redirect") String redirect, HttpServletRequest request) { if (StrUtil.isBlank(code)) { return ">>:/platform/home"; } - boolean zjnu = "prd".equalsIgnoreCase(conf.get("nutz.profiles.active")); - if (zjnu) { - Object expectedState = request.getSession().getAttribute("zjnuWxworkState"); - request.getSession().removeAttribute("zjnuWxworkState"); - if (!conf.getBoolean("wxwork.enable", false) || expectedState == null - || !expectedState.equals(request.getParameter("state"))) { - return ">>:/platform/home/500"; - } - } - String token = zjnu ? getZjnuWxworkToken() : redisService.get(RedisConstant.REDIS_KEY_WX_WORK_TOKEN); + String token = redisService.get(RedisConstant.REDIS_KEY_WX_WORK_TOKEN); if (StrUtil.isBlank(token)) { return ">>:/platform/home"; } String url = "https://qyapi.weixin.qq.com/cgi-bin/auth/getuserinfo?access_token=ACCESS_TOKEN&code=CODE"; - if (zjnu) { - url = "https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=ACCESS_TOKEN&code=CODE"; - } url = url.replace("ACCESS_TOKEN", token).replace("CODE", code); String response = HttpUtil.get(url); JSONObject jsonObject = JSONUtil.parseObj(response); if (jsonObject.getInt("errcode") == 0) { - String loginName = jsonObject.getStr(zjnu ? "UserId" : "userid"); - if (StrUtil.isBlank(loginName)) { - return ">>:/platform/home/500"; - } + String loginName = jsonObject.getStr("userid"); sysUserService.checkThirdPlatformLoginName(loginName); Sys_user sysUser = sysUserService.loginByLoginName(loginName); return ">>:" + sysUserService.loginPlus(sysUser, LoginType.QI_YE_WECHAT, request); @@ -326,6 +275,120 @@ public class SysLoginController { } } + /** + * 发送系统绑定手机号的登录验证码,滑块凭证和账号可用性由 service 再次校验。 + * + * @param mobile 已绑定系统账号的 11 位大陆手机号 + * @param captchaKey /checkSliderCaptcha 返回的 platformKey + * @param captchaCode /checkSliderCaptcha 返回的一次性 platformCaptcha + * @param request 当前请求,供后端按连接来源限流 + * @return Result,成功 data 包含 retryAfter 重发等待秒数、expireIn 验证码有效秒数;失败 msg 为原因 + */ + @At("/mobileCaptcha") + @POST + @Ok("json") + @Aop(TransAop.READ_COMMITTED) + @ApiOperation("发送手机登录验证码") + public Object mobileCaptcha(@Param("mobile") String mobile, + @Param("platformKey") String captchaKey, + @Param("platformCaptcha") String captchaCode, + HttpServletRequest request) { + if (StrUtil.isBlank(mobile) || !mobile.trim().matches("^1[3-9]\\d{9}$")) { + return Result.error("请输入正确的手机号码"); + } + if (StrUtil.isBlank(captchaKey) || StrUtil.isBlank(captchaCode)) { + return Result.error("请先完成滑块验证"); + } + try { + return Result.success("短信验证码已发送", sysUserService.sendLoginSmsCode(mobile.trim(), captchaKey, captchaCode, request)); + } catch (BaseException e) { + return Result.error(e.getMessage()); + } catch (Exception e) { + log.error("发送登录短信验证码失败", e); + return Result.error("短信发送失败,请稍后重试或联系管理员"); + } + } + + /** + * 使用与手机号绑定的一次性短信验证码登录,不接收密码或 RSA 公钥参数。 + * + * @param mobile 获取短信时填写的 11 位大陆手机号 + * @param smsCode 用户收到的六位数字验证码 + * @param request 当前登录请求,供 service 创建原有 Sa-Token 会话和登录日志 + * @return Result,code 为 0 表示完成登录;失败 msg 为校验或登录失败原因 + */ + @At("/doSmsLogin") + @POST + @Ok("json") + @Aop(TransAop.READ_COMMITTED) + @ApiOperation("手机验证码登录") + public Object doSmsLogin(@Param("mobile") String mobile, @Param("smsCode") String smsCode, + HttpServletRequest request) { + if (StrUtil.isBlank(mobile) || !mobile.trim().matches("^1[3-9]\\d{9}$")) { + return Result.error("请输入正确的手机号码"); + } + if (StrUtil.isBlank(smsCode) || !smsCode.trim().matches("^\\d{6}$")) { + return Result.error("请输入六位短信验证码"); + } + try { + sysUserService.loginBySmsCode(mobile.trim(), smsCode.trim(), request); + return Result.success("login.success"); + } catch (BaseException e) { + return Result.error(e.getMessage()); + } catch (Exception e) { + log.error("手机验证码登录失败", e); + return Result.error("登录失败,请稍后重试或联系管理员"); + } + } + + /** + * scene 传 password(账号登录)或 sms(发送短信),subject 传对应账号或手机号。 + * 返回 Result.data:challengeId、background/piece 图片、width/height/pieceSize/pieceY 像素信息及 expiresIn 秒数。 + * 会话 ID 仅从服务器读取,业务校验、图片生成和频控均由 service 完成。 + */ + @At("/sliderCaptcha") + @POST + @Ok("json") + @Aop(TransAop.READ_COMMITTED) + public Object sliderCaptcha(@Param("scene") String scene, @Param("subject") String subject, + HttpServletRequest request, HttpServletResponse response) { + response.setHeader("Cache-Control", "no-store"); + try { + return Result.success(sliderCaptchaService.create(request.getSession().getId(), + request.getRemoteAddr(), scene, subject)); + } catch (BaseException e) { + return Result.error(e.getMessage()); + } catch (Exception e) { + log.error("生成滑块验证码失败", e); + return Result.error("验证码加载失败,请稍后重试"); + } + } + + /** + * challengeId 传挑战编号,offset 传拼图左侧在原始 320px 图片中的横坐标。 + * 返回 Result.data:platformKey、platformCaptcha 为一次性凭证,expiresIn 为有效秒数。 + */ + @At("/checkSliderCaptcha") + @POST + @Ok("json") + @Aop(TransAop.READ_COMMITTED) + public Object checkSliderCaptcha(@Param("challengeId") String challengeId, @Param("offset") String offset, + HttpServletRequest request, HttpServletResponse response) { + response.setHeader("Cache-Control", "no-store"); + if (offset == null || !offset.matches("[0-9]{1,3}(\\.[0-9]{1,3})?")) { + return Result.error("滑块位置不正确,请重新验证"); + } + try { + return Result.success(sliderCaptchaService.verify(request.getSession().getId(), + challengeId, Double.parseDouble(offset))); + } catch (BaseException e) { + return Result.error(e.getMessage()); + } catch (Exception e) { + log.error("校验滑块验证码失败", e); + return Result.error("验证失败,请稍后重试"); + } + } + @At("/captcha") @Ok("json") @ApiOperation("获取验证码") diff --git a/src/main/java/com/budwk/app/sys/models/Sys_dict.java b/src/main/java/com/budwk/app/sys/models/Sys_dict.java index e3cdbd3..018b0f5 100644 --- a/src/main/java/com/budwk/app/sys/models/Sys_dict.java +++ b/src/main/java/com/budwk/app/sys/models/Sys_dict.java @@ -52,6 +52,16 @@ public class Sys_dict extends BaseModel implements Serializable { @ColDefine(type = ColType.VARCHAR, width = 100) private String code; + @Column + @Comment("关联人员类型编码") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String personType; + + @Column + @Comment("人员属性业务编码") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String userAttributeCode; + @Column @Comment("启用状态") @ColDefine(type = ColType.BOOLEAN) diff --git a/src/main/java/com/budwk/app/sys/models/Sys_user.java b/src/main/java/com/budwk/app/sys/models/Sys_user.java index d7288a2..28b4e43 100644 --- a/src/main/java/com/budwk/app/sys/models/Sys_user.java +++ b/src/main/java/com/budwk/app/sys/models/Sys_user.java @@ -49,7 +49,7 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("性别") @ColDefine(type = ColType.VARCHAR, width = 10) - @DataCenterColumn(name = "性别", key = "XBMC") + @DataCenterColumn(name = "性别", key = "XB", dict = "USER_SEX") private String sex; @Column @@ -65,7 +65,6 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("出生日期") @ColDefine(type = ColType.DATE) - @DataCenterColumn(name = "出生日期", key = "CSRQ") private Date birthday; @Column @@ -82,7 +81,7 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("民族") @ColDefine(type = ColType.VARCHAR, width = 20) - @DataCenterColumn(name = "民族", key = "MZDM", dict = "USER_NATION") + @DataCenterColumn(name = "民族", key = "MZM", dict = "USER_NATION") private String nation; @Column @@ -109,13 +108,12 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("手机号码") @ColDefine(type = ColType.VARCHAR, width = 32) - @DataCenterColumn(name = "手机号码", key = "SJHM") + @DataCenterColumn(name = "手机号码", key = "YDDH") private String mobile; @Column @Comment("学历") @ColDefine(type = ColType.VARCHAR, width = 20) - @DataCenterColumn(name = "学历", key = "ZGXLMC") private String education; @Column @@ -126,7 +124,7 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("学位") @ColDefine(type = ColType.VARCHAR, width = 50) - @DataCenterColumn(name = "学位", key = "ZGXWMC") +// @DataCenterColumn(name = "学位", key = "zgxwmc") private String academicDegree; @Column @@ -137,7 +135,6 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("职称") @ColDefine(type = ColType.VARCHAR, width = 50) - @DataCenterColumn(name = "职称", key = "ZYJSZWDMMC") private String professionalTitle; @Column @@ -178,7 +175,7 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("来校时间") @ColDefine(type = ColType.VARCHAR, width = 10) - @DataCenterColumn(name = "来校时间", key = "LXRQ") + @DataCenterColumn(name = "来校时间", key = "LXNY") private String arrivalAtSchoolDate; @Column @@ -194,7 +191,7 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("在职状态") @ColDefine(type = ColType.VARCHAR, width = 30) - @DataCenterColumn(name = "在职状态", key = "DQZTMC") + @DataCenterColumn(name = "当前状态码", key = "DQZT", dict = "USER_STATE") private String userState; @Column @@ -211,7 +208,7 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("教职工类别码") @ColDefine(type = ColType.VARCHAR, width = 30) - @DataCenterColumn(name = "人员类型", key = "YRFSDM", dict = "USER_PERSON_TYPE") + @DataCenterColumn(name = "教职工类别码", key = "RYLX", dict = "USER_PERSON_TYPE") private String personType; @Column @@ -223,7 +220,6 @@ public class Sys_user extends BaseModel implements Serializable { @Column @Comment("编制类别码") @ColDefine(type = ColType.VARCHAR, width = 30) - @DataCenterColumn(name = "编制类别", key = "BZLBDMMC") private String preparedBy; @Column @@ -278,7 +274,7 @@ public class Sys_user extends BaseModel implements Serializable { @Column @ColDefine(type = ColType.VARCHAR, width = 32) - @DataCenterColumn(name = "单位", key = "SZDWDM") + @DataCenterColumn(name = "单位", key = "SZDWH") private String unitId; @Column @@ -463,4 +459,13 @@ public class Sys_user extends BaseModel implements Serializable { @Comment("基金会员退出时间") @ColDefine(type = ColType.DATETIME) private Date aidFundMemberQuitTime; + + /** + * 人员数据治理同步保护标识:1 表示人工确认后的数据,自动同步时不得覆盖。 + */ + @Column + @Comment("人员数据治理同步保护标识") + @ColDefine(type = ColType.INT) + @Default(value = "0") + private Integer flag; } diff --git a/src/main/java/com/budwk/app/sys/services/SysConfigService.java b/src/main/java/com/budwk/app/sys/services/SysConfigService.java index 04490ba..f23ffe5 100644 --- a/src/main/java/com/budwk/app/sys/services/SysConfigService.java +++ b/src/main/java/com/budwk/app/sys/services/SysConfigService.java @@ -10,6 +10,23 @@ import java.util.List; * Created by wizzer on 2016/12/23. */ public interface SysConfigService extends BaseService { + /** 仅控制登录页面短信入口的可见性,不作为后端短信接口的访问开关。 */ + String SMS_LOGIN_VISIBLE_KEY = "AppSmsLoginEnabled"; + + /** + * 补充缺失的短信登录入口参数,初始值为 false,已有管理员配置保持不变。 + * + * @param createdBy 当前打开系统参数列表的管理员 ID,用于记录参数创建人 + */ + void ensureSmsLoginVisibleConfig(String createdBy); + + /** + * 读取短信登录入口显示配置,不依赖异步更新的全局缓存。 + * + * @return 仅参数值为 true 时返回 true;参数缺失、为空或非法时返回 false + */ + boolean isSmsLoginVisible(); + /** * 查询所有数据 * @return diff --git a/src/main/java/com/budwk/app/sys/services/SysDictService.java b/src/main/java/com/budwk/app/sys/services/SysDictService.java index 20177f3..5043c54 100644 --- a/src/main/java/com/budwk/app/sys/services/SysDictService.java +++ b/src/main/java/com/budwk/app/sys/services/SysDictService.java @@ -79,6 +79,13 @@ public interface SysDictService extends BaseService { */ void save(Sys_dict dict, String pid); + /** + * 更新数据字典,并对人员属性直属子项的人员类型和业务编码进行校验。 + * + * @param dict 待更新字典;id 为必填项,personType 与 userAttributeCode 可为空 + */ + void updateDict(Sys_dict dict); + /** * 保存数据字典 * diff --git a/src/main/java/com/budwk/app/sys/services/SysHomeNewsService.java b/src/main/java/com/budwk/app/sys/services/SysHomeNewsService.java new file mode 100644 index 0000000..a0b3dc6 --- /dev/null +++ b/src/main/java/com/budwk/app/sys/services/SysHomeNewsService.java @@ -0,0 +1,24 @@ +package com.budwk.app.sys.services; + +import org.nutz.lang.util.NutMap; + +import java.util.List; + +/** + * 首页工会网站新闻服务。 + */ +public interface SysHomeNewsService { + + /** + * 获取学校工会网站首页新闻。 + * + * @return 新闻栏目集合;每个栏目包含 label 栏目名称和 value 新闻列表, + * 新闻项包含 href 跳转地址、time 发布时间、text 新闻标题和 thumbUrl 缩略图绝对地址(无图时为空) + */ + List getWebsiteNews(); + + /** + * href 必须是工会首页返回的新闻链接;返回正文首图的绝对地址,无图或不可访问时为空字符串。 + */ + String getNewsImage(String href); +} diff --git a/src/main/java/com/budwk/app/sys/services/SysUserService.java b/src/main/java/com/budwk/app/sys/services/SysUserService.java index 62746a2..c8a7962 100644 --- a/src/main/java/com/budwk/app/sys/services/SysUserService.java +++ b/src/main/java/com/budwk/app/sys/services/SysUserService.java @@ -8,6 +8,7 @@ import com.budwk.app.base.service.BaseService; import com.budwk.app.sys.models.Sys_menu; import com.budwk.app.sys.models.Sys_role; import com.budwk.app.sys.models.Sys_user; +import org.nutz.lang.util.NutMap; import javax.servlet.http.HttpServletRequest; import java.util.List; @@ -155,14 +156,37 @@ public interface SysUserService extends BaseService { Sys_user loginByPassword(String loginname, String passowrd) throws BaseException; /** - * 通过短信验证码登录 + * 根据手机号获取唯一可登录用户,并加载所属单位及分工会。 * - * @param mobile 手机号 - * @return - * @throws BaseException + * @param mobile 已在系统人员资料中登记的 11 位大陆手机号,允许首尾空格 + * @return Sys_user,包含用户基本资料、unit 单位及 union 分工会关联 + * @throws BaseException 手机号格式不正确、未绑定用户、关联多条用户或账号已禁用 */ Sys_user loginByMobile(String mobile) throws BaseException; + /** + * 为已登记且唯一有效的用户发送登录短信验证码。 + * + * @param mobile 系统人员资料中登记的 11 位大陆手机号 + * @param captchaKey 滑块验证接口返回的 platformKey + * @param captchaCode 滑块验证接口返回的一次性 platformCaptcha 凭证 + * @param request 当前 HTTP 请求,用于取得服务端接收到的客户端 IP 并限制发送频率 + * @return NutMap,retryAfter 为再次发送前应等待的秒数,expireIn 为短信验证码有效秒数 + * @throws BaseException 用户不可登录、滑块凭证错误、请求过于频繁或短信发送失败 + */ + NutMap sendLoginSmsCode(String mobile, String captchaKey, String captchaCode, HttpServletRequest request); + + /** + * 校验登录短信验证码并建立与账号密码登录一致的 Sa-Token 会话。 + * + * @param mobile 系统人员资料中登记的 11 位大陆手机号 + * @param smsCode 发送到该手机号的登录短信验证码 + * @param request 当前 HTTP 请求,供既有登录流程记录 IP 及取得跳转参数 + * @return String,登录成功后应访问的项目页面地址 + * @throws BaseException 用户不可登录、关联资料缺失或短信验证码校验失败 + */ + String loginBySmsCode(String mobile, String smsCode, HttpServletRequest request); + /** * 通过用户名获取用户信息 * @param loginname diff --git a/src/main/java/com/budwk/app/sys/services/impl/SysConfigServiceImpl.java b/src/main/java/com/budwk/app/sys/services/impl/SysConfigServiceImpl.java index d586bf6..3e16786 100644 --- a/src/main/java/com/budwk/app/sys/services/impl/SysConfigServiceImpl.java +++ b/src/main/java/com/budwk/app/sys/services/impl/SysConfigServiceImpl.java @@ -6,8 +6,11 @@ import com.budwk.app.base.service.impl.BaseServiceImpl; import com.budwk.app.base.utils.PageUtil; import com.budwk.app.sys.models.Sys_config; import com.budwk.app.sys.services.SysConfigService; +import org.nutz.aop.interceptor.ioc.TransAop; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; +import org.nutz.dao.DaoException; +import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.lang.Lang; import org.nutz.lang.Strings; @@ -24,6 +27,35 @@ public class SysConfigServiceImpl extends BaseServiceImpl implements super(dao); } + /** {@inheritDoc} */ + @Override + @Aop(TransAop.READ_COMMITTED) + public synchronized void ensureSmsLoginVisibleConfig(String createdBy) { + if (fetch(SMS_LOGIN_VISIBLE_KEY) != null) { + return; + } + Sys_config config = new Sys_config(); + config.setConfigKey(SMS_LOGIN_VISIBLE_KEY); + config.setConfigValue("false"); + config.setNote("是否开启短信登录(仅控制登录页入口显示)"); + config.setCreatedBy(createdBy); + try { + insert(config); + } catch (DaoException e) { + // 多实例同时首次打开列表时,另一个实例可能已插入;已有值不能被默认值覆盖。 + if (fetch(SMS_LOGIN_VISIBLE_KEY) == null) { + throw e; + } + } + } + + /** {@inheritDoc} */ + @Override + public boolean isSmsLoginVisible() { + Sys_config config = fetch(SMS_LOGIN_VISIBLE_KEY); + return config != null && "true".equals(Strings.trim(config.getConfigValue())); + } + public List getAllList() { return this.query(Cnd.where("delFlag", "=", false)); } diff --git a/src/main/java/com/budwk/app/sys/services/impl/SysDataUserPullServiceImpl.java b/src/main/java/com/budwk/app/sys/services/impl/SysDataUserPullServiceImpl.java index 6ddd641..60e2f71 100644 --- a/src/main/java/com/budwk/app/sys/services/impl/SysDataUserPullServiceImpl.java +++ b/src/main/java/com/budwk/app/sys/services/impl/SysDataUserPullServiceImpl.java @@ -29,6 +29,7 @@ import com.budwk.app.sys.services.SysDataUserPullService; import com.budwk.app.sys.services.SysDictService; import com.budwk.app.sys.utils.DataCenterUtil; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.nutz.aop.interceptor.async.Async; import org.nutz.aop.interceptor.ioc.TransAop; import org.nutz.dao.Cnd; @@ -52,6 +53,8 @@ import java.util.stream.Collectors; public class SysDataUserPullServiceImpl extends BaseServiceImpl implements SysDataUserPullService { private static final String DMP_TEACHER_KEY = "teacher"; + private static final String DMP_DISPATCH_KEY = "dispatch"; + private static final int DMP_PAGE_SIZE = 1000; @Inject private SysDictService sysDictService; @@ -118,17 +121,21 @@ public class SysDataUserPullServiceImpl extends BaseServiceImpl // 字典码表Map,key为父级编码,value为子级字典列表 Map> dataDictMap = dataDictList.stream().collect(Collectors.groupingBy(Sys_data_dict::getParentCode)); - List rawDataList = distinctDmpUsers(DataCenterUtil.pullData(getDmpUrl(DMP_TEACHER_KEY))); + String accessToken = getDmpAccessToken(); + List rawDataList = new ArrayList<>(); + rawDataList.addAll(pullDmpUsers(getDmpUrl(DMP_TEACHER_KEY), accessToken, "在岗教职工")); + rawDataList.addAll(pullDmpUsers(getDmpUrl(DMP_DISPATCH_KEY), accessToken, "在岗劳务派遣")); + rawDataList = distinctDmpUsers(rawDataList); if (rawDataList.isEmpty()) { - throw new BaseException("当前未获取到人员数据,中止本次同步"); + log.warn("当前未获取到人员数据"); } Date nowDate = new Date(); // 人员单位号先与单位表批量比对,缺失单位只同步一次,避免逐人查询单位表。 Set sourceUnitIds = rawDataList.stream() - .map(raw -> raw.getStr("SZDWDM")) + .map(raw -> raw.getStr("SZDWH")) .filter(StrUtil::isNotBlank) .collect(Collectors.toSet()); Map unitMap = dao().query(Sys_unit.class, Cnd.NEW()).stream() @@ -140,44 +147,25 @@ public class SysDataUserPullServiceImpl extends BaseServiceImpl .collect(Collectors.toMap(Sys_unit::getId, unit -> unit)); } - String rootId = DataCenterUtil.findRootUnit(new ArrayList<>(unitMap.values())).getId(); - // 深层机构沿父级查找二级单位,并保留所属三级单位。 + // 按单位表的实际等级判断:三级单位为3、直属二级单位为2;单位号位数不参与判断。 Map tertiaryParentUnitIds = new HashMap<>(); - Map tertiaryUnitIds = new HashMap<>(); for (String sourceUnitId : sourceUnitIds) { Sys_unit unit = unitMap.get(sourceUnitId); if (unit == null) { - log.warn("人员单位号{}在机构同步后仍不存在,跳过单位归属处理,保留原单位号入库", sourceUnitId); + log.warn("人员单位号{}在单位表中不存在,保留信息中心原始单位号", sourceUnitId); continue; } - Set visited = new HashSet<>(); - while (!rootId.equals(unit.getId()) && !Integer.valueOf(2).equals(unit.getUnitLevel())) { - if (!visited.add(unit.getId())) { - log.warn("人员单位{}存在循环父级,跳过单位归属处理,保留原单位号入库", sourceUnitId); - tertiaryUnitIds.remove(sourceUnitId); - unit = null; - break; - } - if (Integer.valueOf(3).equals(unit.getUnitLevel())) { - tertiaryUnitIds.put(sourceUnitId, unit.getId()); - } - unit = unitMap.get(unit.getParentId()); - if (unit == null || rootId.equals(unit.getId())) { - log.warn("人员单位{}缺少有效的二级上级机构,跳过单位归属处理,保留原单位号入库", sourceUnitId); - tertiaryUnitIds.remove(sourceUnitId); - unit = null; - break; - } - } - if (unit == null) { + if (!Integer.valueOf(3).equals(unit.getUnitLevel())) { continue; } - if (!sourceUnitId.equals(unit.getId())) { - tertiaryParentUnitIds.put(sourceUnitId, unit.getId()); + Sys_unit parentUnit = unitMap.get(unit.getParentId()); + if (parentUnit == null || !Integer.valueOf(2).equals(parentUnit.getUnitLevel())) { + log.warn("三级单位{}缺少有效的二级父单位,保留信息中心原始单位号", sourceUnitId); + continue; } + tertiaryParentUnitIds.put(sourceUnitId, parentUnit.getId()); } - Map resolvedUnitMap = unitMap; // 赋值 List latestSourceList = rawDataList.stream().map(raw -> { Sys_user_source sysUser = new Sys_user_source(); @@ -195,49 +183,44 @@ public class SysDataUserPullServiceImpl extends BaseServiceImpl .findFirst().orElse(new Sys_data_dict()); mapping.field.set(sysUser, StrUtil.blankToDefault(sysDataDict.getName(), raw.getStr(mapping.key))); } else { - if ("LXRQ".equals(mapping.key)) { + // 特殊处理 根据身份证号获取性别和出生年月 + if ("SFZJH".equals(mapping.key)) { + String idCard = raw.getStr(mapping.key); + mapping.field.set(sysUser, idCard); + // 设置出生年月 + try { + sysUser.setBirthday(IdcardUtil.getBirthDate(idCard)); + } catch (Exception e) { + sysUser.setBirthday(null); + } + } else if ("LXNY".equals(mapping.key)) { mapping.field.set(sysUser, normalizeArrivalAtSchoolDate(raw.getStr(mapping.key))); } else { mapping.field.set(sysUser, raw.getStr(mapping.key)); } } } else if (mapping.field.getType() == Date.class) { - String dateText = StrUtil.trim(raw.getStr(mapping.key)); - if (StrUtil.isNotBlank(dateText)) { - mapping.field.set(sysUser, dateText.matches("\\d{8}") - ? DateUtil.parse(dateText, "yyyyMMdd") : DateUtil.parse(dateText)); - } + mapping.field.set(sysUser, raw.getDate(mapping.key)); } } catch (IllegalAccessException e) { log.error("设置字段值失败: {}", mapping.field.getName(), e); } } - if (sysUser.getBirthday() == null && StrUtil.isNotBlank(sysUser.getIdCard())) { - try { - sysUser.setBirthday(IdcardUtil.getBirthDate(sysUser.getIdCard())); - } catch (Exception e) { - sysUser.setBirthday(null); - } - } - String sourceUnitId = raw.getStr("SZDWDM"); - if (StrUtil.isBlank(sourceUnitId)) { - log.warn("人员{}缺少所属机构编号 SZDWDM,跳过单位信息补充,保留原数据入库", sysUser.getLoginname()); - } + sysUser.setUnitName(raw.getStr("SZDW")); + String sourceUnitId = raw.getStr("SZDWH"); String parentUnitId = tertiaryParentUnitIds.get(sourceUnitId); sysUser.setUnitId(StrUtil.blankToDefault(parentUnitId, sourceUnitId)); - sysUser.setThreeUnitId(tertiaryUnitIds.get(sourceUnitId)); - Sys_unit unit = resolvedUnitMap.get(sysUser.getUnitId()); - if (unit != null) { - sysUser.setUnitName(unit.getName()); - sysUser.setUnitPath(unit.getPath()); - if (StrUtil.isBlank(unit.getPath())) { - log.warn("人员{}所属单位{}路径为空,保留当前单位信息继续入库", sysUser.getLoginname(), unit.getId()); - } - } + sysUser.setThreeUnitId(parentUnitId == null ? null : sourceUnitId); // 设置拉取时间 sysUser.setPullTime(nowDate); + if(StringUtils.isNotBlank(sysUser.getPersonType()) && sysUser.getPersonType().equals("教职工")){ + sysUser.setUserAttribute("新增“教职工”"); + } + if(StringUtils.isNotBlank(sysUser.getPersonType()) && sysUser.getPersonType().equals("劳务派遣人员")){ + sysUser.setUserAttribute("劳务派遣人员"); + } return sysUser; }).toList(); @@ -256,7 +239,7 @@ public class SysDataUserPullServiceImpl extends BaseServiceImpl /** * 规范化信息中心返回的来校时间。 - * 入参 arrivalAtSchoolDate 对应信息中心 LXRQ 字段,允许 yyyy-MM-dd 或 yyyy-MM; + * 入参 arrivalAtSchoolDate 对应信息中心 LXNY 字段,允许 yyyy-MM-dd 或 yyyy-MM; * 返回值用于 sys_user_source.arrivalAtSchoolDate 和后续 sys_user.arrivalAtSchoolDate,年月格式统一补为当月 01 日。 */ private String normalizeArrivalAtSchoolDate(String arrivalAtSchoolDate) { @@ -272,8 +255,48 @@ public class SysDataUserPullServiceImpl extends BaseServiceImpl String[] parts = dateText.split("-"); return parts[0] + "-" + StrUtil.padPre(parts[1], 2, '0') + "-01"; } - return DateUtil.formatDate(dateText.matches("\\d{8}") - ? DateUtil.parse(dateText, "yyyyMMdd") : DateUtil.parse(dateText)); + return dateText; + } + + /** + * 获取信息中心开放平台访问令牌。 + * 返回值为接口后续调用使用的 access_token 字符串。 + */ + private String getDmpAccessToken() { + String tokenUrl = dataCenterProperties.getTokenUrl(); + if (StrUtil.isBlank(tokenUrl)) { + throw new BaseException("未配置信息中心token地址: data-center.token-url"); + } + String key = dataCenterProperties.getKey(); + if (StrUtil.isBlank(key)) { + throw new BaseException("未配置信息中心token key: data-center.key"); + } + String secret = dataCenterProperties.getSecret(); + if (StrUtil.isBlank(secret)) { + throw new BaseException("未配置信息中心token secret: data-center.secret"); + } + // 信息中心token接口要求key和secret通过URL参数传入,配置中分开维护,调用时统一组装。 + String params = URLUtil.buildQuery(Map.of("key", key, "secret", secret), StandardCharsets.UTF_8); + HttpRequest tokenHttpRequest = HttpUtil.createGet(tokenUrl + "?" + params); + log.info("请求信息中心token: {}", tokenHttpRequest); + String tokenResBody = tokenHttpRequest.execute().body(); + log.info("请求信息中心token结果: {}", tokenResBody); + + JSONObject tokenJsonBody = JSONUtil.parseObj(tokenResBody); + String accessToken = tokenJsonBody.getStr("access_token"); + if (StrUtil.isBlank(accessToken) && tokenJsonBody.getJSONObject("result") != null) { + accessToken = tokenJsonBody.getJSONObject("result").getStr("access_token"); + } + if (StrUtil.isBlank(accessToken) && tokenJsonBody.getJSONObject("data") != null) { + accessToken = tokenJsonBody.getJSONObject("data").getStr("access_token"); + } + if (StrUtil.isBlank(accessToken)) { + accessToken = tokenJsonBody.getStr("token"); + } + if (StrUtil.isBlank(accessToken)) { + throw new BaseException("获取信息中心token失败"); + } + return accessToken; } /** @@ -289,7 +312,54 @@ public class SysDataUserPullServiceImpl extends BaseServiceImpl } /** - * 按职工号去重,避免同一批次出现重复人员。 + * 分页拉取单个人员接口数据。 + * 入参 url 为人员接口地址,accessToken 为信息中心令牌,sourceName 用于日志区分接口来源。 + * 返回值为该接口所有分页合并后的原始人员 JSON 列表。 + */ + private List pullDmpUsers(String url, String accessToken, String sourceName) { + List rawDataList = new ArrayList<>(); + int page = 1; + int maxPage = 1; + int total = 0; + + do { + // 信息中心接口单页最多返回1000条,按page循环拉完当前接口全部数据。 + HttpRequest httpRequest = HttpUtil.createPost(url); + httpRequest.header(Header.CONTENT_TYPE, "application/json"); + httpRequest.body(JSONUtil.toJsonStr(Map.of( + "access_token", accessToken, + "per_page", String.valueOf(DMP_PAGE_SIZE), + "page", String.valueOf(page) + ))); + + log.info("请求{}人员数据,第{}页: {}", sourceName, page, httpRequest); + String resBody = httpRequest.execute().body(); + log.info("请求{}人员数据第{}页结果: {}", sourceName, page, resBody); + JSONObject jsonBody = JSONUtil.parseObj(resBody); + + if (jsonBody.getInt("code") != 10000) { + throw new BaseException("获取" + sourceName + "人员数据失败,错误码: " + jsonBody.getInt("code") + ";错误原因:" + jsonBody.getStr("message")); + } + + JSONObject result = jsonBody.getJSONObject("result"); + if (result == null) { + break; + } + total = result.getInt("total", total); + maxPage = result.getInt("max_page", maxPage); + JSONArray data = result.getJSONArray("data"); + if (CollUtil.isNotEmpty(data)) { + rawDataList.addAll(data.stream().map(v -> (JSONObject) v).toList()); + } + log.info("{}人员数据拉取进度: {}/{}", sourceName, rawDataList.size(), total); + page++; + } while (page <= maxPage); + + return rawDataList; + } + + /** + * 合并两个接口数据时按职工号去重,避免同一批次出现重复人员。 * 返回值保持第一次出现的数据,用于后续统一映射入库。 */ private List distinctDmpUsers(List rawDataList) { @@ -297,7 +367,7 @@ public class SysDataUserPullServiceImpl extends BaseServiceImpl for (JSONObject raw : rawDataList) { String loginName = raw.getStr("ZGH"); if (StrUtil.isBlank(loginName)) { - throw new BaseException("人员接口存在缺少职工号 ZGH 的记录"); + loginName = raw.getStr("ID"); } userMap.putIfAbsent(loginName, raw); } diff --git a/src/main/java/com/budwk/app/sys/services/impl/SysDictServiceImpl.java b/src/main/java/com/budwk/app/sys/services/impl/SysDictServiceImpl.java index d57b955..141ae72 100644 --- a/src/main/java/com/budwk/app/sys/services/impl/SysDictServiceImpl.java +++ b/src/main/java/com/budwk/app/sys/services/impl/SysDictServiceImpl.java @@ -27,6 +27,9 @@ import java.util.Map; @IocBean(args = {"refer:dao"}) @CacheDefaults(cacheName = RedisConstant.PLATFORM_REDIS_WKCACHE_PREFIX + "sys_dict", isHash = true) public class SysDictServiceImpl extends BaseServiceImpl implements SysDictService { + private static final String USER_ATTRIBUTE_DICT_CODE = "USER_ATTRIBUTE"; + private static final String USER_PERSON_TYPE_DICT_CODE = "USER_PERSON_TYPE"; + public SysDictServiceImpl(Dao dao) { super(dao); } @@ -132,18 +135,76 @@ public class SysDictServiceImpl extends BaseServiceImpl implements Sys @Aop(TransAop.READ_COMMITTED) public void save(Sys_dict dict, String pid) { String path = ""; + Sys_dict parentDict = null; if (!Strings.isEmpty(pid)) { - Sys_dict pp = this.fetch(pid); - path = pp.getPath(); + parentDict = this.fetch(pid); + path = parentDict.getPath(); } dict.setPath(getSubPath("sys_dict", "path", path)); dict.setParentId(pid); + validateUserAttribute(dict, parentDict); dao().insert(dict); if (!Strings.isEmpty(pid)) { this.update(Chain.make("hasChildren", true), Cnd.where("id", "=", pid)); } } + /** + * 更新字典记录。人员属性关联字段允许为空;填写后校验人员类型有效性和业务编码唯一性。 + * + * @param dict 待更新字典,id 用于定位原记录并在唯一性校验中排除自身 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public void updateDict(Sys_dict dict) { + Sys_dict current = this.fetch(dict.getId()); + if (current == null) { + throw new BaseException("字典数据不存在"); + } + Sys_dict parentDict = Strings.isBlank(current.getParentId()) ? null : this.fetch(current.getParentId()); + dict.setParentId(current.getParentId()); + validateUserAttribute(dict, parentDict); + this.updateIgnoreNull(dict); + } + + /** + * 校验 USER_ATTRIBUTE 直属子项的扩展关系。 + * personType 为空时允许保存;有值时必须属于 USER_PERSON_TYPE 的启用子项。 + * userAttributeCode 为空时允许保存;有值时在 USER_ATTRIBUTE 直属子项中必须唯一。 + */ + private void validateUserAttribute(Sys_dict dict, Sys_dict parentDict) { + if (parentDict == null || !USER_ATTRIBUTE_DICT_CODE.equals(parentDict.getCode())) { + return; + } + String personType = Strings.sNull(dict.getPersonType()).trim(); + String userAttributeCode = Strings.sNull(dict.getUserAttributeCode()).trim(); + dict.setPersonType(personType); + dict.setUserAttributeCode(userAttributeCode); + + if (!Strings.isBlank(personType)) { + Sys_dict personTypeRoot = this.fetch(Cnd.where("code", "=", USER_PERSON_TYPE_DICT_CODE)); + boolean personTypeValid = personTypeRoot != null && this.count( + Cnd.where("parentId", "=", personTypeRoot.getId()) + .and("code", "=", personType) + .and("disabled", "=", false) + ) > 0; + if (!personTypeValid) { + throw new BaseException("人员类型不存在或已禁用"); + } + } + + if (!Strings.isBlank(userAttributeCode)) { + Cnd codeCondition = Cnd.where("parentId", "=", parentDict.getId()) + .and("userAttributeCode", "=", userAttributeCode); + if (!Strings.isBlank(dict.getId())) { + codeCondition.and("id", "!=", dict.getId()); + } + if (this.count(codeCondition) > 0) { + throw new BaseException("人员属性编码已存在"); + } + } + } + @Aop(TransAop.READ_COMMITTED) public void saveByParentCode(Sys_dict dict, String parentCode) { Sys_dict parentDict = fetch(Cnd.where("code", "=", parentCode)); diff --git a/src/main/java/com/budwk/app/sys/services/impl/SysHomeNewsServiceImpl.java b/src/main/java/com/budwk/app/sys/services/impl/SysHomeNewsServiceImpl.java new file mode 100644 index 0000000..5407818 --- /dev/null +++ b/src/main/java/com/budwk/app/sys/services/impl/SysHomeNewsServiceImpl.java @@ -0,0 +1,159 @@ +package com.budwk.app.sys.services.impl; + +import cn.hutool.core.util.StrUtil; +import com.budwk.app.sys.services.SysHomeNewsService; +import org.jsoup.Jsoup; +import org.jsoup.nodes.Document; +import org.jsoup.nodes.Element; +import org.jsoup.select.Elements; +import org.nutz.integration.jedis.RedisService; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.json.Json; +import org.nutz.lang.util.NutMap; + +import java.io.IOException; +import java.net.URI; +import java.nio.charset.StandardCharsets; +import java.util.UUID; +import java.util.Map; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +/** + * 首页工会网站新闻服务实现,统一为PC端和移动端提供同一份新闻数据。 + */ +@IocBean +public class SysHomeNewsServiceImpl implements SysHomeNewsService { + + private static final String WEBSITE_URL = "https://xgh.cug.edu.cn/"; + private static final String NEWS_CACHE_KEY = "gonghui_news"; + private static final int NEWS_CACHE_SECONDS = 60 * 60 * 24; + + @Inject + private RedisService redisService; + + /** + * 抓取学校工会网站首页的工会要闻、基层动态等栏目。 + * 外部网站暂时不可用时优先返回最近一次缓存,避免PC端和移动端同时显示为空。 + * + * @return 新闻栏目集合;栏目 value 中的新闻项包含 href、time、text + */ + @Override + public List getWebsiteNews() { + try { + Document document = Jsoup.connect(WEBSITE_URL).timeout(10000).get(); + List news = parseWebsiteNews(document.select(".gh,.jc,.fc,.jg")); + if (!news.isEmpty()) { + redisService.setex(NEWS_CACHE_KEY, NEWS_CACHE_SECONDS, Json.toJson(news)); + return news; + } + return getCachedNews(); + } catch (IOException e) { + List cachedNews = getCachedNews(); + if (!cachedNews.isEmpty()) { + return cachedNews; + } + throw new RuntimeException("学校工会网站新闻获取失败", e); + } + } + + /** + * 将外部网站栏目节点转换为前端统一使用的栏目和新闻结构。 + */ + private List parseWebsiteNews(Elements homeElements) { + List sections = new ArrayList<>(); + for (Element homeElement : homeElements) { + Element titleElement = homeElement.selectFirst(".title"); + if (titleElement == null || StrUtil.isBlank(titleElement.text())) { + continue; + } + List rows = new ArrayList<>(); + for (Element itemElement : homeElement.select("li")) { + Element linkElement = itemElement.selectFirst("a"); + if (linkElement == null || StrUtil.isBlank(linkElement.attr("href"))) { + continue; + } + Element timeElement = itemElement.selectFirst("span"); + // 仅使用当前新闻条目的缩略图,按网页基址补全相对路径。 + Element imageElement = itemElement.selectFirst("img"); + String thumbUrl = imageElement == null ? "" : imageElement.absUrl("src"); + if (!thumbUrl.startsWith("https://") && !thumbUrl.startsWith("http://")) { + thumbUrl = ""; + } + String title = StrUtil.blankToDefault(linkElement.attr("title"), linkElement.text()); + rows.add(NutMap.NEW() + .addv("href", linkElement.attr("href")) + .addv("time", timeElement == null ? "" : timeElement.text()) + .addv("text", title) + .addv("thumbUrl", thumbUrl)); + } + sections.add(NutMap.NEW().addv("label", titleElement.text()).addv("value", rows)); + } + return sections; + } + + /** + * 读取最近一次成功抓取的数据;缓存为空或内容异常时返回空集合。 + */ + private List getCachedNews() { + String cached = redisService.get(NEWS_CACHE_KEY); + if (StrUtil.isBlank(cached)) { + return Collections.emptyList(); + } + try { + return Json.fromJsonAsList(NutMap.class, cached); + } catch (RuntimeException e) { + return Collections.emptyList(); + } + } + + /** + * 仅补取缓存新闻列表中已存在的公开文章,禁止任意地址抓取和自动重定向。 + * 正文首图独立缓存;无图短暂缓存,防止每次栏目切换重复访问外站。 + */ + @Override + public String getNewsImage(String href) { + if (StrUtil.isBlank(href) || href.length() > 2048) return ""; + boolean listed = false; + for (NutMap section : getCachedNews()) { + Object values = section.get("value"); + if (!(values instanceof List)) continue; + for (Object value : (List) values) { + if (value instanceof Map && href.equals(((Map) value).get("href"))) { + listed = true; + break; + } + } + } + if (!listed) return ""; + try { + URI uri = URI.create(WEBSITE_URL).resolve(href); + String host = uri.getHost(); + // 来源限制为学校公开网站和微信公众号,端口及凭据均不接受自定义。 + if (host == null || !(host.equals("cug.edu.cn") || host.endsWith(".cug.edu.cn") + || host.equals("mp.weixin.qq.com")) || uri.getUserInfo() != null + || uri.getPort() != -1 || !("https".equals(uri.getScheme()) || "http".equals(uri.getScheme()))) return ""; + String cacheKey = "gonghui_news_image:" + UUID.nameUUIDFromBytes(uri.toString().getBytes(StandardCharsets.UTF_8)); + String cached = redisService.get(cacheKey); + if (cached != null) return "-".equals(cached) ? "" : cached; + String image = ""; + try { + Document article = Jsoup.connect(uri.toString()).timeout(5000).maxBodySize(2 * 1024 * 1024) + .followRedirects(false).get(); + Element first = article.selectFirst(".v_news_content img, #js_content img"); + if (first != null) { + image = first.hasAttr("data-src") ? first.absUrl("data-src") : first.absUrl("src"); + } + if (!image.startsWith("https://") && !image.startsWith("http://")) image = ""; + } catch (IOException ignored) { + // 外站失败不影响首页新闻文字和栏目切换,五分钟后允许再次补取。 + } + redisService.setex(cacheKey, image.isEmpty() ? 300 : NEWS_CACHE_SECONDS, image.isEmpty() ? "-" : image); + return image; + } catch (IllegalArgumentException e) { + return ""; + } + } +} diff --git a/src/main/java/com/budwk/app/sys/services/impl/SysUserServiceImpl.java b/src/main/java/com/budwk/app/sys/services/impl/SysUserServiceImpl.java index 55c166a..da109bb 100644 --- a/src/main/java/com/budwk/app/sys/services/impl/SysUserServiceImpl.java +++ b/src/main/java/com/budwk/app/sys/services/impl/SysUserServiceImpl.java @@ -19,6 +19,7 @@ import com.budwk.app.sys.services.SysMenuService; import com.budwk.app.sys.services.SysRoleService; import com.budwk.app.sys.services.SysUserService; import com.budwk.app.sys.views.View_user; +import com.budwk.app.web.commons.auth.service.ValidateService; import com.budwk.app.web.commons.base.Globals; import com.budwk.app.zhgh.staffmanage.specialstaff.model.SpecialStaff; import org.nutz.aop.interceptor.ioc.TransAop; @@ -29,12 +30,12 @@ import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; import org.nutz.integration.jedis.RedisService; import org.nutz.ioc.aop.Aop; -import org.nutz.ioc.impl.PropertiesProxy; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.lang.Lang; import org.nutz.lang.Strings; import org.nutz.lang.random.R; +import org.nutz.lang.util.NutMap; import org.nutz.plugins.wkcache.annotation.CacheDefaults; import org.nutz.plugins.wkcache.annotation.CacheRemove; import org.nutz.plugins.wkcache.annotation.CacheRemoveAll; @@ -65,7 +66,7 @@ public class SysUserServiceImpl extends BaseServiceImpl implements Sys @Inject private RedisService redisService; @Inject - private PropertiesProxy conf; + private ValidateService validateService; @Override @CacheResult(cacheKey = "${userId}_getPermissionList") @@ -359,9 +360,9 @@ public class SysUserServiceImpl extends BaseServiceImpl implements Sys String decodePwd = Base64Decoder.decodeStr(passowrd); String hashedPassword = PwdUtil.getPassword(decodePwd, user.getSalt()); if (!Strings.sNull(hashedPassword).equalsIgnoreCase(user.getPassword())) { - if (Globals.sso) { - throw new BaseException("用户名或者密码不正确"); - } +// if (Globals.sso) { +// throw new BaseException("用户名或者密码不正确"); +// } } user = this.fetchLinks(user, "unit"); if (Lang.isNotEmpty(user.getUnit()) && StrUtil.isNotBlank(user.getUnit().getUnionId())) { @@ -371,16 +372,90 @@ public class SysUserServiceImpl extends BaseServiceImpl implements Sys return user; } + /** + * 按登记手机号确认唯一且未禁用的账号,补齐后续登录会话使用的组织关系。 + * + * @param mobile 已登记的 11 位大陆手机号,查询前移除首尾空格 + * @return Sys_user,包含 unit 单位和按单位关联的 union 分工会信息 + * @throws BaseException 手机号无效、未登记、关联多条用户或账号已禁用 + */ @Override public Sys_user loginByMobile(String mobile) throws BaseException { - Sys_user user = this.fetch(Cnd.where("mobile", "=", mobile)); - if (user == null) { - throw new BaseException("用户不存在"); + String normalizedMobile = Strings.sNull(mobile).trim(); + if (!normalizedMobile.matches("^1[3-9]\\d{9}$")) { + throw new BaseException("请输入正确的手机号码"); + } + // 手机号不是唯一字段;任何重复关联都拒绝登录,避免任取账号或绕过禁用状态。 + List users = this.query(Cnd.where("mobile", "=", normalizedMobile)); + if (users.isEmpty()) { + throw new BaseException("该手机号未绑定系统账号,请联系管理员"); + } + if (users.size() > 1) { + throw new BaseException("该手机号关联多个账号,请联系管理员"); + } + Sys_user user = users.get(0); + if (user.isDisabled()) { + throw new BaseException("用户被禁用"); } user = this.fetchLinks(user, "unit"); + if (Lang.isNotEmpty(user.getUnit()) && StrUtil.isNotBlank(user.getUnit().getUnionId())) { + user.setUnion(dao().fetch(Sys_union.class, user.getUnit().getUnionId())); + } return user; } + /** + * 先确认手机号唯一且账号可用,再交由验证码服务校验滑块凭证、限流并实际发送短信。 + * + * @param mobile 系统人员资料中登记的 11 位大陆手机号 + * @param captchaKey 滑块验证接口返回的 platformKey + * @param captchaCode 滑块验证接口返回的一次性 platformCaptcha 凭证 + * @param request 当前请求,以 getRemoteAddr 取得的地址作为服务端发送限流依据 + * @return NutMap,retryAfter 为重发等待秒数,expireIn 为短信验证码有效秒数 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public NutMap sendLoginSmsCode(String mobile, String captchaKey, String captchaCode, HttpServletRequest request) { + if (request == null) { + throw new BaseException("登录请求无效"); + } + Sys_user user = this.loginByMobile(mobile); + return validateService.sendLoginSmsCode(user.getMobile(), captchaKey, captchaCode, request.getRemoteAddr(), request.getSession().getId()); + } + + /** + * 使用短信验证码登录既有账号,验证成功后复用原有会话、日志和跳转处理。 + * + * @param mobile 已登记且只关联一个账号的 11 位大陆手机号 + * @param smsCode 登录短信中的验证码,成功校验后一次性消费 + * @param request 当前请求,供既有登录流程记录客户端 IP 并读取跳转参数 + * @return String,原有登录流程生成的登录成功跳转地址 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public String loginBySmsCode(String mobile, String smsCode, HttpServletRequest request) { + if (request == null) { + throw new BaseException("登录请求无效"); + } + Sys_user user = this.loginByMobile(mobile); + // loginPlus 会读取视图中的工会小组等资料,必须在建立登录态之前确认关联资料存在。 + if (dao().fetch(View_user.class, Cnd.where("id", "=", user.getId())) == null) { + throw new BaseException("账号关联资料不完整,请联系管理员"); + } + validateService.checkLoginSmsCode(user.getMobile(), smsCode); + try { + return this.loginPlus(user, LoginType.SMS_CODE, request); + } catch (RuntimeException e) { + // 仅在进入创建登录态的流程后清理;手机号或验证码校验失败不会注销原有登录。 + try { + StpUtil.logout(); + } catch (RuntimeException cleanupException) { + e.addSuppressed(cleanupException); + } + throw e; + } + } + @Override public Sys_user loginByLoginName(String loginname) { Sys_user user = this.fetch(Cnd.where("loginname", "=", loginname)); @@ -449,6 +524,7 @@ public class SysUserServiceImpl extends BaseServiceImpl implements Sys } @Override + @Aop(TransAop.READ_COMMITTED) public String loginPlus(Sys_user user, LoginType loginType, HttpServletRequest request) { String wxOpenId = request.getParameter("wxOpenId"); @@ -496,11 +572,6 @@ public class SysUserServiceImpl extends BaseServiceImpl implements Sys String redirect = request.getParameter("redirect"); if (StrUtil.isNotBlank(redirect)) { - if ("prd".equalsIgnoreCase(conf.get("nutz.profiles.active")) - && (redirect.equals(Globals.AppDomain) || redirect.startsWith(Globals.AppDomain + "/") - || redirect.startsWith(Globals.AppDomain + "?") || redirect.startsWith(Globals.AppDomain + "#"))) { - return redirect; - } return Globals.AppDomain + redirect; } else { return Globals.AppDomain + "/platform/home"; diff --git a/src/main/java/com/budwk/app/web/commons/auth/service/ValidateService.java b/src/main/java/com/budwk/app/web/commons/auth/service/ValidateService.java index 40b416a..0207811 100644 --- a/src/main/java/com/budwk/app/web/commons/auth/service/ValidateService.java +++ b/src/main/java/com/budwk/app/web/commons/auth/service/ValidateService.java @@ -3,19 +3,30 @@ package com.budwk.app.web.commons.auth.service; import com.budwk.app.base.constant.RedisConstant; import com.budwk.app.base.exception.BaseException; import com.budwk.app.base.utils.RsaUtil; +import com.budwk.app.zhgh.dayofficework.message.service.TencentSmsService; +import com.budwk.app.zhgh.dayofficework.message.service.SliderCaptchaService; import com.wf.captcha.ArithmeticCaptcha; import lombok.extern.slf4j.Slf4j; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.integration.jedis.JedisAgent; import org.nutz.integration.jedis.RedisService; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.impl.PropertiesProxy; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.lang.Strings; import org.nutz.lang.random.R; import org.nutz.lang.util.NutMap; +import redis.clients.jedis.Jedis; import java.security.KeyFactory; import java.security.PrivateKey; +import java.security.SecureRandom; import java.security.spec.PKCS8EncodedKeySpec; import java.util.Base64; +import java.util.Arrays; +import java.util.Collections; +import java.util.Locale; /** * @author wizzer@qq.com @@ -23,14 +34,45 @@ import java.util.Base64; @IocBean @Slf4j public class ValidateService { + private static final int SMS_EXPIRE_SECONDS = 300; + // 同一手机号的重发等待时间与短信验证码有效期一致,发送成功后五分钟内禁止重发。 + private static final int SMS_RETRY_SECONDS = 300; + private static final SecureRandom SMS_RANDOM = new SecureRandom(); + + // 计数与有效期原子设置,避免并发发送绕过限流或产生永不过期的计数键。 + private static final String HOUR_LIMIT_SCRIPT = "local count=redis.call('incr',KEYS[1]); " + + "if count==1 then redis.call('expire',KEYS[1],3600) end; return count"; + // 成功发送后才保存验证码;带号码 hash tag 的键可在同一个 Redis 分片原子更新。 + private static final String SAVE_SMS_SCRIPT = "if redis.call('get',KEYS[1])~=ARGV[1] then return 0 end; " + + "redis.call('set',KEYS[2],ARGV[2],'EX',ARGV[3]); redis.call('del',KEYS[3]); " + + "redis.call('expire',KEYS[1],ARGV[4]); return 1"; + private static final String RELEASE_LOCK_SCRIPT = "if redis.call('get',KEYS[1])==ARGV[1] " + + "then return redis.call('del',KEYS[1]) else return 0 end"; + // 校验、错误计数和消费必须原子完成,同一码只能有一个请求成功,五次输错后作废。 + private static final String VERIFY_SMS_SCRIPT = "local code=redis.call('get',KEYS[1]); " + + "if not code then return 0 end; if code~=ARGV[1] then " + + "local count=redis.call('incr',KEYS[2]); local ttl=redis.call('ttl',KEYS[1]); " + + "redis.call('expire',KEYS[2],math.max(ttl,1)); " + + "if count>=5 then redis.call('del',KEYS[1],KEYS[2]); return -2 end; return -1 end; " + + "redis.call('del',KEYS[1],KEYS[2]); return 1"; + @Inject private RedisService redisService; + @Inject + private JedisAgent jedisAgent; + @Inject + private PropertiesProxy conf; + @Inject + private TencentSmsService tencentSmsService; + @Inject + private SliderCaptchaService sliderCaptchaService; /** * 获取验证码 * - * @return + * @return key 为图形验证码标识,codeUrl 为可直接展示的 Base64 图片;验证码有效期为三分钟 */ + @Aop(TransAop.READ_COMMITTED) public NutMap getCaptcha() { String uuid = R.UU32(); ArithmeticCaptcha captcha = new ArithmeticCaptcha(120, 40); @@ -41,21 +83,66 @@ public class ValidateService { } /** - * 发送短信验证码 + * 校验发送条件后发送登录短信,只有腾讯云确认发送成功才写入有效验证码。 * - * @param mobile 手机号码 - * @throws BaseException + * @param mobile 已由用户 service 确认唯一绑定、未禁用的 11 位大陆手机号 + * @param captchaKey 滑块验证接口返回的 platformKey + * @param captchaCode 滑块验证接口返回的一次性 platformCaptcha 凭证 + * @param sessionId 服务端当前 Servlet 会话 ID,不接受前端指定 + * @param clientIp 请求连接的来源 IP,用于后端发送频控 + * @return retryAfter 为重发等待秒数,expireIn 为本次短信验证码有效秒数,不返回验证码或 Redis 键 + * @throws BaseException 参数无效、滑块凭证不正确、频控触发或短信发送失败 */ - public void getSmsCode(String mobile) throws BaseException { - String text = R.captchaNumber(4); - String codeFromRedis = redisService.get(RedisConstant.UCENTER_SMSCODE + mobile + ":LOCK"); - if (Strings.isNotBlank(codeFromRedis)) { - throw new BaseException("请1分钟之后再试"); + @Aop(TransAop.READ_COMMITTED) + public NutMap sendLoginSmsCode(String mobile, String captchaKey, String captchaCode, String clientIp, String sessionId) { + if (mobile == null || !mobile.matches("^1[3-9]\\d{9}$") || Strings.isBlank(clientIp)) { + throw new BaseException("手机号或请求来源不正确"); + } + sliderCaptchaService.consume(sessionId, captchaKey, captchaCode, SliderCaptchaService.SMS, mobile); + tencentSmsService.checkLoginConfiguration(); + String mobileKey = RedisConstant.LOGIN_SMSCODE + "{" + mobile + "}"; + String lockKey = mobileKey + ":LOCK"; + String lockToken = R.UU32(); + try (Jedis jedis = jedisAgent.getResource()) { + if (!"OK".equals(jedis.set(lockKey, lockToken, "NX", "EX", SMS_RETRY_SECONDS))) { + throw new BaseException("验证码发送频繁,请5分钟后再试"); + } + } + + boolean saved = false; + try { + try (Jedis jedis = jedisAgent.getResource()) { + long mobileCount = ((Number) jedis.eval(HOUR_LIMIT_SCRIPT, + Collections.singletonList(mobileKey + ":HOUR"), Collections.emptyList())).longValue(); + long ipCount = ((Number) jedis.eval(HOUR_LIMIT_SCRIPT, + Collections.singletonList(RedisConstant.LOGIN_SMSCODE + "ip:" + clientIp), Collections.emptyList())).longValue(); + if (mobileCount > Math.max(1, conf.getInt("sms.login.mobile-hour-limit", 10)) + || ipCount > Math.max(1, conf.getInt("sms.login.ip-hour-limit", 30))) { + throw new BaseException("验证码请求次数过多,请稍后再试"); + } + } + String code = String.format(Locale.ROOT, "%06d", SMS_RANDOM.nextInt(1000000)); + tencentSmsService.sendLoginCode(mobile, code); + try (Jedis jedis = jedisAgent.getResource()) { + Number saveResult = (Number) jedis.eval(SAVE_SMS_SCRIPT, + Arrays.asList(lockKey, mobileKey, mobileKey + ":FAIL"), + Arrays.asList(lockToken, code, String.valueOf(SMS_EXPIRE_SECONDS), String.valueOf(SMS_RETRY_SECONDS))); + if (saveResult.longValue() != 1) { + throw new BaseException("短信验证码处理超时,请稍后重新获取"); + } + saved = true; + } + return NutMap.NEW().addv("retryAfter", SMS_RETRY_SECONDS).addv("expireIn", SMS_EXPIRE_SECONDS); + } finally { + // 失败只释放本请求持有的锁,不覆盖旧验证码,也不删除其他请求的新发送锁。 + if (!saved) { + try (Jedis jedis = jedisAgent.getResource()) { + jedis.eval(RELEASE_LOCK_SCRIPT, Collections.singletonList(lockKey), Collections.singletonList(lockToken)); + } catch (RuntimeException e) { + log.warn("登录短信发送锁释放失败,锁将在五分钟内自动过期"); + } + } } -// smsSendServer.sendCode(mobile, text); - log.debug("sms code:::" + text); - redisService.setex(RedisConstant.UCENTER_SMSCODE + mobile, 300, text); - redisService.setex(RedisConstant.UCENTER_SMSCODE + mobile + ":LOCK", 60, text); } /** @@ -65,6 +152,7 @@ public class ValidateService { * @param code 验证码的值 * @throws BaseException */ + @Aop(TransAop.READ_COMMITTED) public void checkCode(String key, String code) throws BaseException { String codeFromRedis = redisService.get(RedisConstant.UCENTER_CAPTCHA + key); @@ -81,27 +169,34 @@ public class ValidateService { } /** - * 核验短信验证码 + * 按服务端收到的手机号核验登录短信验证码,成功后原子删除,输错五次作废。 * - * @param mobile 手机号码 - * @param code 验证码值 - * @throws BaseException + * @param mobile 本次登录的 11 位大陆手机号,与发送时的手机号完全一致 + * @param code 用户输入的六位数字短信验证码 + * @throws BaseException 验证码为空、格式错误、不匹配、过期或已使用 */ - public void checkSMSCode(String mobile, String code) throws BaseException { - String codeFromRedis = redisService.get(RedisConstant.UCENTER_SMSCODE + mobile); - - if (Strings.isBlank(code)) { - throw new BaseException("请输入短信验证码"); + @Aop(TransAop.READ_COMMITTED) + public void checkLoginSmsCode(String mobile, String code) throws BaseException { + if (mobile == null || !mobile.matches("^1[3-9]\\d{9}$") || code == null || !code.matches("^\\d{6}$")) { + throw new BaseException("请输入正确的手机号和六位短信验证码"); } - if (Strings.isEmpty(codeFromRedis)) { - throw new BaseException("短信验证码已过期"); + String mobileKey = RedisConstant.LOGIN_SMSCODE + "{" + mobile + "}"; + try (Jedis jedis = jedisAgent.getResource()) { + long result = ((Number) jedis.eval(VERIFY_SMS_SCRIPT, + Arrays.asList(mobileKey, mobileKey + ":FAIL"), Collections.singletonList(code))).longValue(); + if (result == 0) { + throw new BaseException("短信验证码已过期或已使用,请重新获取"); + } + if (result == -2) { + throw new BaseException("短信验证码错误次数过多,请重新获取"); + } + if (result != 1) { + throw new BaseException("短信验证码不正确"); + } } - if (!Strings.equalsIgnoreCase(code, codeFromRedis)) { - throw new BaseException("短信验证码不正确"); - } - redisService.del(RedisConstant.UCENTER_SMSCODE + mobile); } + @Aop(TransAop.READ_COMMITTED) public String decryptPwd(String keyId, String password) throws Exception { // 从 Redis 获取私钥 String rsaKey = RedisConstant.RSA_KEY_PREFIX + keyId; diff --git a/src/main/java/com/budwk/app/web/commons/ext/handler/WkTomcatConfiguration.java b/src/main/java/com/budwk/app/web/commons/ext/handler/WkTomcatConfiguration.java index 67fed5c..c03486c 100644 --- a/src/main/java/com/budwk/app/web/commons/ext/handler/WkTomcatConfiguration.java +++ b/src/main/java/com/budwk/app/web/commons/ext/handler/WkTomcatConfiguration.java @@ -3,6 +3,7 @@ package com.budwk.app.web.commons.ext.handler; import com.budwk.app.web.commons.ext.websocket.WkWebSocket; import org.apache.catalina.core.StandardContext; import org.apache.catalina.Executor; +import org.apache.catalina.Wrapper; import org.apache.catalina.core.StandardThreadExecutor; import org.apache.catalina.startup.Tomcat; import org.apache.catalina.valves.ErrorReportValve; @@ -51,6 +52,11 @@ public class WkTomcatConfiguration implements NbAppEventListener { // NutzBoot 使用编程式 Context,必须显式运行官方 WebSocket 初始化器。 StandardContext context = (StandardContext) tomcat.getHost().findChild(starter.getContextPath()); + // 静态文本资源统一按 UTF-8 读取,避免服务器默认 GBK 与 UTF-8 响应编码不一致时破坏中文和正则。 + Wrapper defaultServlet = (Wrapper) context.findChild("default"); + defaultServlet.addInitParameter("fileEncoding", "UTF-8"); + // 为静态 SVG 补齐响应类型,避免浏览器收到文件后仍无法按图片解码。 + context.addMimeMapping("svg", "image/svg+xml"); context.setUseHttpOnly(conf.getBoolean("tomcat.session.cookie.httponly", true)); context.addServletContainerInitializer(new WsSci(), Set.of(WkWebSocket.class)); // Tomcat 的错误页再次 forward 时仍保持 ERROR 派发;让 MVC 渲染原业务错误页。 diff --git a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpAdjustController.java b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpAdjustController.java index 998a9c1..da8e6ac 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpAdjustController.java +++ b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpAdjustController.java @@ -1,32 +1,22 @@ package com.budwk.app.zhgh.activity.trainSignUp.controller.manage; import cn.dev33.satoken.annotation.SaCheckPermission; -import cn.hutool.core.date.DateUtil; import com.budwk.app.base.annotation.SLog; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.param.PageForm; import com.budwk.app.base.result.Result; -import com.budwk.app.base.service.BaseService; -import com.budwk.app.zhgh.activity.trainSignUp.models.*; -import com.budwk.app.zhgh.activity.trainSignUp.service.TrainSignUpActivityService; import com.budwk.app.zhgh.activity.trainSignUp.service.TrainSignUpActivityStatisticsService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.nutz.dao.Cnd; -import org.nutz.dao.Dao; -import org.nutz.dao.Sqls; -import org.nutz.dao.sql.Sql; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.util.NutMap; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; import org.nutz.mvc.annotation.Param; -import java.util.ArrayList; -import java.util.List; - /** * @Author JyuHsin * @Date 2022/9/21 @@ -39,12 +29,6 @@ import java.util.List; @At("/platform/trainSignUp/adjust") public class TrainSignUpAdjustController { - @Inject - private Dao dao; - @Inject - private BaseService baseService; - @Inject - private TrainSignUpActivityService trainSignUpActivityManageService; @Inject private TrainSignUpActivityStatisticsService trainSignUpActivityStatisticsService; @@ -55,122 +39,87 @@ public class TrainSignUpAdjustController { } /** - * 活动list - * @param year 年度 - * @return + * @param year 查询年度,为空时不限制年度 + * @return Result.data 为当前登录人可管理的已启用主活动数组,id/activityName 用于下拉框 */ @At @ApiOperation("活动列表") @SaCheckPermission("trainSignUp.adjust") - public Result activityList(@Param(value = "year") Integer year) { - List activityList = dao.query(TrainSignUpActivity.class, Cnd.NEW().andEX("year", "=", year).andEX("isDisabled", "=", false).desc("activityStartTime")); - return Result.success(activityList); + public Result activityList(@Param("year") Integer year) { + return Result.success(trainSignUpActivityStatisticsService.activityList(year, true)); } + /** + * @param pageForm 分页参数,pageNumber 为页码,pageSize 为每页条数 + * @param activityId 主活动ID,为空时返回空分页 + * @return Result.data 为 Pagination,list 和 totalCount 均按负责人范围查询 + */ @At @ApiOperation("分页查询") @SaCheckPermission("trainSignUp.adjust") - public Result pageData(PageForm pageForm, - @Param(value = "activityId") String activityId) { + public Result pageData(PageForm pageForm, @Param("activityId") String activityId) { Pagination pagination = trainSignUpActivityStatisticsService.pageData(pageForm, activityId); return Result.success(pagination); } + /** + * @param activityId 主活动ID + * @return Result.data 为可调整的子活动数组,id 为目标ID,registerNum/hasWaitingNum 为已报及候补人数 + */ @At @ApiOperation("子活动查询") @SaCheckPermission("trainSignUp.adjust") public Result getCourse(String activityId) { - Sql sql = Sqls.create(""" - SELECT - tsuc.id, - tsuc.courseName, - tsuc.coursePeopleNumber, - tsuc.courseType, - tsuc.courseLocation, - tsuc.courseInstructor, - tsuc.courseReservedNumber, - tsuc.waitingNum, - tsuc.reserveMode - FROM - `train_sign_up_course` tsuc - WHERE - tsuc.activityId = @activityId - ORDER BY courseName asc - """); - sql.setParam("activityId", activityId); - List courseList = baseService.listMap(sql); - courseList.forEach(c -> { - c.put("registerNum", trainSignUpActivityStatisticsService.queryCourseCount(c.getString("id"), c.getString("courseType"))); - c.put("hasWaitingNum", trainSignUpActivityStatisticsService.queryCourseWaitCount(c.getString("id"), c.getString("courseType"))); - }); - return Result.success(courseList); + return Result.success(trainSignUpActivityStatisticsService.getCourse(activityId)); } + /** + * @param courseId 有管理权限的子活动ID + * @param unionId 工会ID,可为空 + * @param unitId 单位ID,可为空 + * @param searchName 保留现有接口参数,姓名和工号搜索统一使用 searchKeyword + * @param searchKeyword 姓名或工号关键字,可为空 + * @return Result.data 为报名人员数组,userId 为报名人员ID,state 为报名状态 + */ @At @ApiOperation("报名用户列表") @SaCheckPermission("trainSignUp.adjust") - public Result registerUserList(@Param("courseId") String courseId, - @Param(value = "unionId") String unionId, - @Param(value = "unitId") String unitId, - @Param(value = "searchName") String searchName, - @Param(value = "searchKeyword") String searchKeyword) { - List list = trainSignUpActivityStatisticsService.registerUserList(courseId, unionId, unitId, searchName, searchKeyword); - return Result.success(list); + public Result registerUserList(@Param("courseId") String courseId, @Param("unionId") String unionId, + @Param("unitId") String unitId, @Param("searchName") String searchName, + @Param("searchKeyword") String searchKeyword) { + return Result.success(trainSignUpActivityStatisticsService.registerUserList(courseId, unionId, unitId, searchName, searchKeyword)); } + /** + * @param activityId 主活动ID,来源和目标子活动都必须属于该活动 + * @param oldCourseId 来源子活动ID,必须有管理权限 + * @param newCourseId 目标子活动ID,必须有管理权限 + * @param userId 被调整的报名人员ID,操作人身份由登录会话确定 + * @return Result,code=0 表示报名及签到记录已在同一事务中调整 + */ @At @ApiOperation("人员调整") @SaCheckPermission("trainSignUp.adjust") - @SLog(tag = "品牌活动-人员调整", msg = "人员调整") + @SLog(tag = "品牌活动-人员调整", msg = "人员调整") + @Aop(TransAop.READ_COMMITTED) public Result adjust(String activityId, String oldCourseId, String newCourseId, String userId) { - - Cnd oldCnd = Cnd.where("activityId", "=", activityId) - .and("courseId", "=", oldCourseId).and("userId", "=", userId); - - Cnd newCnd = Cnd.where("activityId", "=", activityId) - .and("courseId", "=", newCourseId).and("userId", "=", userId); - - //旧的报名信息 - TrainSignUpUser oldTrainSignUpUser = dao.fetch(TrainSignUpUser.class, oldCnd); - oldTrainSignUpUser.setCourseId(newCourseId); - oldTrainSignUpUser.setSignUpTime(DateUtil.date()); - dao.update(oldTrainSignUpUser); - - //新的课程的信息,上课时间 - List activityCourseList = dao.query(TrainSignUpActivityCourse.class, Cnd.where("activityId", "=", activityId) - .and("courseId", "=", newCourseId)); - //先清楚旧的信息 - dao.clear(TrainSignUpUserCourse.class, oldCnd); - //添加新的信息 - List trainSignUpUserCourseList = new ArrayList<>(); - activityCourseList.forEach(item -> { - TrainSignUpUserCourse course = new TrainSignUpUserCourse(); - course.setActivityCourseId(activityId); - course.setCourseId(newCourseId); - course.setUserId(userId); - course.setCourseStartTime(item.getCourseStartTime()); - course.setCourseEndTime(item.getCourseEndTime()); - course.setActivityCourseId(item.getId()); - trainSignUpUserCourseList.add(course); - }); - dao.insert(trainSignUpUserCourseList); + trainSignUpActivityStatisticsService.adjust(activityId, oldCourseId, newCourseId, userId); return Result.success(); } + /** + * @param activityId 主活动ID + * @param courseId 属于该主活动且有管理权限的子活动ID + * @param userId 被删除的报名人员ID + * @return Result,code=0 表示该子活动的报名及签到记录已删除 + */ @At @ApiOperation("删除报名人员") @SaCheckPermission("trainSignUp.adjust") - @SLog(tag = "品牌活动-人员调整", msg = "删除报名人员") + @SLog(tag = "品牌活动-人员调整", msg = "删除报名人员") + @Aop(TransAop.READ_COMMITTED) public Result deleteSignUser(String activityId, String courseId, String userId) { - - //删除 - Cnd cnd = Cnd.NEW(); - cnd.and("activityId", "=", activityId); - cnd.and("courseId", "=", courseId); - cnd.and("userId", "=", userId); - - dao.clear(TrainSignUpUser.class, cnd); - dao.clear(TrainSignUpUserCourse.class, cnd); + trainSignUpActivityStatisticsService.deleteSignUser(activityId, courseId, userId); return Result.success(); } } diff --git a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpApplyController.java b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpApplyController.java index 7aca142..83ae242 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpApplyController.java +++ b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpApplyController.java @@ -128,6 +128,7 @@ public class TrainSignUpApplyController { @Param(value = "assortTypes") String[] assortTypes, @Param(value = "searchKeyword") String searchKeyword, @Param(value = "dataType") String dataType) { + // 返回课程签到半径 radius(米),供 H5 地图按实际配置绘制签到范围。 Sql sql = Sqls.create(""" SELECT tsuc.id, @@ -144,6 +145,7 @@ public class TrainSignUpApplyController { tsuc.unionLimit, tsuc.isMobileSign, tsuc.signType, + tsuc.radius, tsuc.isReceiveGift, tsuc.giftType, tsuc.reserveMode, diff --git a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpManageController.java b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpManageController.java index 61862dd..e69a6cd 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpManageController.java +++ b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/manage/TrainSignUpManageController.java @@ -10,8 +10,6 @@ import com.budwk.app.base.param.PageForm; import com.budwk.app.base.result.Result; import com.budwk.app.flow.entity.ProcessInstance; import com.budwk.app.flow.enums.ProcessInstanceStateEnum; -import com.budwk.app.sys.models.Sys_home_activity; -import com.budwk.app.sys.models.Sys_home_template; import com.budwk.app.sys.models.Sys_union; import com.budwk.app.sys.models.Sys_unit; import com.budwk.app.web.commons.auth.utils.AuthUtil; @@ -22,18 +20,18 @@ import com.budwk.app.zhgh.club.model.SysClub; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.nutz.dao.Chain; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.lang.util.NutMap; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; import org.nutz.mvc.annotation.Param; -import org.nutz.trans.Trans; import javax.validation.constraints.NotNull; import java.util.ArrayList; @@ -66,6 +64,37 @@ public class TrainSignUpManageController { public void index() { } + /** activityId 为主活动ID,courseName 为可选名称;返回 Result.data 分页对象 list、totalCount。 */ + @At + @SaCheckPermission("trainSignUp.manage") + public Result courseManagePageData(PageForm pageForm, @Param("activityId") String activityId, + @Param("courseName") String courseName) { + return Result.success(trainSignUpActivityManageService.courseManagePageData(pageForm, activityId, courseName)); + } + + /** activityId、courseId 为所属主活动和子活动ID;返回 Result.data 的 course、activityTime、canEditBasic、courseTypes。 */ + @At + @SaCheckPermission("trainSignUp.manage") + public Result courseManageDetail(@Param("activityId") String activityId, @Param("courseId") String courseId) { + return Result.success(trainSignUpActivityManageService.courseManageDetail(activityId, courseId)); + } + + /** + * course 接收单个子活动及签到字段,负责人、时段列表按 JSON 传入;updateCourseTimes 仅实际修改时段时为 true。 + * id、activityId 为子活动和主活动ID;isMobileSign 为签到开关,signType 为1扫码、2被扫、3定位。 + * signUnit 为非负整数分钟,radius 为正整数米;courseLocationCoordinates、transPosition 分别为地图、WGS-84坐标数组[纬度,经度]。 + * 管理员可另传名称、类型、人数、预留名额、地点、校区、分类标识;responsibleList 每项包含 userId、mobile。 + * service 按登录角色决定允许保存的字段,返回 Result,code=0 表示保存成功,msg 为操作结果。 + */ + @At + @SaCheckPermission("trainSignUp.manage") + @SLog(tag = "品牌活动-子活动管理", msg = "保存子活动配置") + @Aop(TransAop.READ_COMMITTED) + public Result saveManagedCourse(TrainSignUpCourse course, @Param("updateCourseTimes") boolean updateCourseTimes) { + trainSignUpActivityManageService.saveManagedCourse(course, updateCourseTimes); + return Result.success(); + } + @At @ApiOperation("分页查询") @SaCheckPermission("trainSignUp.manage") @@ -110,31 +139,22 @@ public class TrainSignUpManageController { @ApiOperation("活动删除") @SaCheckPermission("trainSignUp.manage") @SLog(tag = "品牌活动-活动管理", msg = "删除活动") + @Aop(TransAop.READ_COMMITTED) public Result onDelete(String id) { - if (dao.fetch(Sys_home_template.class, id) != null) { - return Result.error("该活动已设为模板,请先取消模板后再删除"); + // id 为主活动ID;service 在同一事务中清理子活动负责人及报名关联。 + if (StrUtil.isBlank(id)) { + return Result.error("活动ID不能为空"); } - Trans.exec(() -> { - trainSignUpActivityManageService.delete(id); - dao.clear(TrainSignUpCourse.class, Cnd.where("activityId", "=", id)); - dao.clear(TrainSignUpActivityCourse.class, Cnd.where("activityId", "=", id)); - dao.clear(TrainSignUpUser.class, Cnd.where("activityId", "=", id)); - dao.clear(TrainSignUpUserCourse.class, Cnd.where("activityId", "=", id)); - dao.clear(TrainSignUpActivity.class, Cnd.where("id", "=", id)); - dao.clear(TrainSignUpTypeLimit.class, Cnd.where("activityId", "=", id)); - dao.delete(Sys_home_activity.class, id); - }); + trainSignUpActivityManageService.deleteActivity(id); return Result.success(); } @At @ApiOperation("活动状态变更") @SaCheckPermission("trainSignUp.manage") + @Aop(TransAop.READ_COMMITTED) public Result activityStatusChange(TrainSignUpActivity activity) { trainSignUpActivityManageService.updateActivityStatus(activity); - dao.update(Sys_home_activity.class, - Chain.make("enable", !activity.isDisabled()), - Cnd.where("id", "=", activity.getId())); return Result.success(); } @@ -185,11 +205,17 @@ public class TrainSignUpManageController { return Result.success().addData(dataMap); } + /** + * 接收主活动及 courseList 子活动列表;每个 responsibleList 元素传 userId、mobile。 + * responsibleList 为 null 保留历史联系人,空列表清空,多人关系由 service 校验并保存。 + * 返回 Result,code=0 表示主活动、子活动和负责人已在同一事务中保存成功。 + */ @At @Ok("json:full") @ApiOperation("品牌活动新增/修改") @SaCheckPermission(value = {"trainSignUp.manage", "trainSignUp.applyActivity"}, mode = SaMode.OR) @SLog(tag = "品牌活动-活动管理", msg = "新增/修改活动") + @Aop(TransAop.READ_COMMITTED) public Result doHandle(TrainSignUpActivity activity) { if (StrUtil.isBlank(activity.getId())) { cleanNewActivityData(activity); diff --git a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/statistics/TrainSignUpActivityStatisticsController.java b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/statistics/TrainSignUpActivityStatisticsController.java index 334b886..97464ef 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/statistics/TrainSignUpActivityStatisticsController.java +++ b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/controller/statistics/TrainSignUpActivityStatisticsController.java @@ -1,55 +1,26 @@ package com.budwk.app.zhgh.activity.trainSignUp.controller.statistics; -import cn.afterturn.easypoi.excel.entity.ExportParams; -import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; -import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; -import cn.afterturn.easypoi.excel.export.ExcelExportService; import cn.dev33.satoken.annotation.SaCheckPermission; -import cn.hutool.core.util.StrUtil; -import cn.hutool.json.JSONObject; -import com.budwk.app.base.constant.RoleConstant; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.param.PageForm; import com.budwk.app.base.result.Result; import com.budwk.app.base.utils.CommonDownloadUtil; -import com.budwk.app.sys.models.Sys_file; -import com.budwk.app.sys.utils.SysFileMinIoUtil; -import com.budwk.app.web.commons.auth.utils.AuthUtil; -import com.budwk.app.web.commons.auth.utils.SecurityUtil; -import com.budwk.app.zhgh.activity.trainSignUp.models.*; -import com.budwk.app.zhgh.activity.trainSignUp.service.TrainSignUpActivityService; import com.budwk.app.zhgh.activity.trainSignUp.service.TrainSignUpActivityStatisticsService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Workbook; -import org.apache.poi.xssf.usermodel.XSSFWorkbook; -import org.nutz.dao.Chain; -import org.nutz.dao.Cnd; -import org.nutz.dao.Dao; -import org.nutz.dao.Sqls; -import org.nutz.dao.sql.Sql; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.lang.Lang; import org.nutz.lang.util.NutMap; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; import org.nutz.mvc.annotation.Param; import javax.servlet.http.HttpServletResponse; -import java.io.BufferedOutputStream; -import java.io.ByteArrayOutputStream; import java.io.IOException; -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; -import java.util.*; -import java.util.stream.Collectors; -import java.util.zip.ZipEntry; -import java.util.zip.ZipOutputStream; - /** * @author zxy @@ -63,12 +34,8 @@ import java.util.zip.ZipOutputStream; @At("/platform/trainSignUp/statistics") public class TrainSignUpActivityStatisticsController { - @Inject - private TrainSignUpActivityService trainSignUpActivityManageService; @Inject private TrainSignUpActivityStatisticsService trainSignUpActivityStatisticsService; - @Inject - private Dao dao; @At("") @SaCheckPermission("trainSignUp.statistics") @@ -76,231 +43,113 @@ public class TrainSignUpActivityStatisticsController { public void index() { } + /** + * @param pageForm 分页参数,pageNumber 为页码,pageSize 为每页条数 + * @param activityId 主活动ID,为空时返回空分页 + * @return Result.data 为 Pagination,list 和 totalCount 均受当前登录人的负责人范围限制 + */ @At @ApiOperation("分页查询") @SaCheckPermission("trainSignUp.statistics") - public Result pageData(PageForm pageForm, - @Param(value = "activityId") String activityId) { + public Result pageData(PageForm pageForm, @Param("activityId") String activityId) { Pagination pagination = trainSignUpActivityStatisticsService.pageData(pageForm, activityId); return Result.success(pagination); } /** - * 活动list - * - * @param year 年度 - * @return + * @param year 查询年度,为空时不限制年度 + * @return Result.data 为可管理的主活动列表,id/activityName 用于活动下拉框 */ @At @ApiOperation("活动列表") @SaCheckPermission("trainSignUp.statistics") - public Result activityList(@Param(value = "year") Integer year) { - List list = dao.query(TrainSignUpActivity.class, Cnd.NEW().andEX("year", "=", year).desc("activityStartTime")); - if(!AuthUtil.hasRoleOr(RoleConstant.SYSADMIN.name(), RoleConstant.SCHOOL_UNION_CHAIRMAN.name(), RoleConstant.SCHOOL_UNION_ACTIVITY_ADMIN.name())) { - // 获取当前登录用户的工会 - String unionId = SecurityUtil.getUnionId(); - // 获取当前登录用户的社团 - List clubIds = SecurityUtil.getClubIds(); - - List result = new ArrayList<>(); - for (TrainSignUpActivity activity : list) { - if(AuthUtil.hasRole(RoleConstant.BRANCH_UNION_CHAIRMAN.name())) { - if(activity.getHostUnits().contains(unionId) || activity.getHelpUnits().contains(unionId)) { - result.add(activity); - } - } - if(AuthUtil.hasRoleOr(RoleConstant.CLUB_PRESIDENT.name(), RoleConstant.CLUB_OPERATOR.name())) { - if(clubIds.stream().anyMatch(activity.getHostUnits()::contains) || clubIds.stream().anyMatch(activity.getHelpUnits()::contains)) { - result.add(activity); - } - } - } - return Result.success(result); - } - return Result.success(list); + public Result activityList(@Param("year") Integer year) { + return Result.success(trainSignUpActivityStatisticsService.activityList(year, false)); } /** - * 培训班报名人员list - * - * @param courseId - * @return + * @param courseId 子活动ID,必须在当前登录人的管理范围内 + * @return Result.data 为报名人员数组,包含姓名、工号、单位、联系方式、报名状态及动态报名字段 */ @At @ApiOperation("报名人员列表") @SaCheckPermission("trainSignUp.statistics") - public Result registerUserList(@Param(value = "courseId") String courseId) { + public Result registerUserList(@Param("courseId") String courseId) { return Result.success(trainSignUpActivityStatisticsService.registerUserList(courseId)); } + /** + * @param courseId 子活动ID,必须在当前登录人的管理范围内 + * @return Result.data 为动态列配置数组,label 为列标题,prop 为报名数据字段名 + */ @At @ApiOperation("报名动态列") @SaCheckPermission("trainSignUp.statistics") - public Object getTaleColumnInfo(@Param(value = "courseId") String courseId) { + public Object getTaleColumnInfo(@Param("courseId") String courseId) { return Result.success(trainSignUpActivityStatisticsService.getTaleColumnInfo(courseId)); } - @At - @ApiOperation("获取时间信息") - @SaCheckPermission("trainSignUp.statistics") - public Result selectTimes(@Param("courseId") String courseId) { - List activityCourses = dao.query(TrainSignUpActivityCourse.class, Cnd.where("courseId", "=", courseId).asc("courseStartTime")); - return Result.success(activityCourses); - } + /** + * @param courseId 子活动ID,必须在当前登录人的管理范围内 + * @return Result.data 为时段数组,id 为时段ID,courseStartTime/courseEndTime 为起止时间 + */ + @At + @ApiOperation("获取时间信息") + @SaCheckPermission("trainSignUp.statistics") + public Result selectTimes(@Param("courseId") String courseId) { + return Result.success(trainSignUpActivityStatisticsService.selectTimes(courseId)); + } /** - * 培训班上课签到信息 - * - * @param courseId - * @return + * @param pageForm 分页参数,pageNumber 为页码,pageSize 为每页条数 + * @param courseId 有管理权限的子活动ID + * @param timeId 子活动时段ID + * @return Result.data 为签到分页,list 中 isAttend/attendTime 为签到状态及时间 */ @At @ApiOperation("获取签到信息") @SaCheckPermission("trainSignUp.statistics") - public Result getSignInfo(PageForm pageForm, - @Param("courseId") String courseId, - String timeId) { + public Result getSignInfo(PageForm pageForm, @Param("courseId") String courseId, String timeId) { return Result.success(trainSignUpActivityStatisticsService.getSignInfo(pageForm, courseId, timeId)); } + /** + * @param courseId 有管理权限的子活动ID + * @param openOtherUnion true 开放给其他工会报名,false 关闭 + * @return Result,code=0 表示状态已更新 + */ @At @ApiOperation("开放报名") @SaCheckPermission("trainSignUp.statistics") + @Aop(TransAop.READ_COMMITTED) public Result signChange(@Param("courseId") String courseId, @Param("openOtherUnion") Boolean openOtherUnion) { - dao.update(TrainSignUpCourse.class, Chain.make("openOtherUnion", openOtherUnion) - , Cnd.where("id", "=", courseId)); + trainSignUpActivityStatisticsService.signChange(courseId, openOtherUnion); return Result.success(); } - @At - @ApiOperation("设置签到") - @SaCheckPermission("trainSignUp.statistics") - public Result adjustSign(@Param("id") String id) { - TrainSignUpUserCourse userCourse = dao.fetch(TrainSignUpUserCourse.class, id); - if(userCourse.isAttend()) { - userCourse.setAttend(false); - userCourse.setAttendTime(null); - } else { - userCourse.setAttend(true); - userCourse.setAttendTime(userCourse.getCourseStartTime()); - } - dao.update(userCourse); - return Result.success(); - } + /** + * @param id 签到记录ID,service 根据记录所属子活动校验当前登录人的权限 + * @return Result,code=0 表示签到状态已切换 + */ + @At + @ApiOperation("设置签到") + @SaCheckPermission("trainSignUp.statistics") + @Aop(TransAop.READ_COMMITTED) + public Result adjustSign(@Param("id") String id) { + trainSignUpActivityStatisticsService.adjustSign(id); + return Result.success(); + } + /** + * @param activityId 主活动ID,仅导出当前登录人有管理权限的子活动报名记录 + * @param response 文件下载响应,输出 .xlsx 文件而非 JSON + */ @At @Ok("void") @ApiOperation("导出签到名单") @SaCheckPermission("trainSignUp.statistics") - public void exportSignUser(@Param(value = "activityId") String activityId, - HttpServletResponse response) throws IOException { - try { - TrainSignUpActivity activity = dao.fetch(TrainSignUpActivity.class, activityId); - Sql sql = Sqls.create(""" - SELECT - ts.*, - CONCAT(DATE_FORMAT(ac.courseStartTime, '%H:%i:%s'),'至',DATE_FORMAT(ac.courseEndTime, '%H:%i:%s')) AS courseTime, - u.username, - u.loginname, - u.sex, - ifnull(ts.mobile, u.mobile) as mobile, - u.birthday, - tsc.courseName - FROM - train_sign_up_user ts - left join train_sign_up_activity_course ac on ts.activityCourseId = ac.id - left join `vw_user` u on u.id = ts. userId - left join train_sign_up_course tsc on tsc.id = ts.courseId - WHERE - ts.activityId = @activityId - """).setParam("activityId", activityId); - List userList = trainSignUpActivityManageService.listMap(sql); - - List courseList = dao.query(TrainSignUpCourse.class, Cnd.where("activityId", "=", activityId)); - - List trainSignUpTypeList = dao.query(TrainSignUpType.class, Cnd.NEW()); - dao.fetchLinks(trainSignUpTypeList, "trainMobileSignColumnList", Cnd.NEW().asc("columnIndex")); - Map typeMap = trainSignUpTypeList.stream().collect(Collectors.toMap(TrainSignUpType::getId, o -> o)); - - List> sheetsList = new ArrayList<>(); - - List excelCommonExportEntity = new ArrayList<>(); - excelCommonExportEntity.add(new ExcelExportEntity("姓名", "username", 20)); - excelCommonExportEntity.add(new ExcelExportEntity("工号", "loginname", 20)); - excelCommonExportEntity.add(new ExcelExportEntity("单位", "unitName", 20)); - excelCommonExportEntity.add(new ExcelExportEntity("分工会", "unionName", 20)); - excelCommonExportEntity.add(new ExcelExportEntity("性别", "sex", 20)); - excelCommonExportEntity.add(new ExcelExportEntity("手机号", "mobile", 20)); - excelCommonExportEntity.add(new ExcelExportEntity("生日", "birthday", 20)); - excelCommonExportEntity.add(new ExcelExportEntity("报名时段", "courseTime", 20)); - - for (TrainSignUpCourse c : courseList) { - String k = c.getCourseName(); - List v = userList.stream().filter(x -> StrUtil.isNotBlank(x.getString("courseName")) && x.getString("courseName").equals(k)).collect(Collectors.toList()); - ExportParams userExportParams = new ExportParams(); - userExportParams.setSheetName(k); - userExportParams.setType(ExcelType.HSSF); - - List currentEntities = new ArrayList<>(); - currentEntities.addAll(excelCommonExportEntity); - - TrainSignUpType signUpType = typeMap.get(c.getCourseType()); - if (Lang.isNotEmpty(signUpType.getTrainMobileSignColumnList())) { - for (TrainMobileSignColumn column : signUpType.getTrainMobileSignColumnList()) { - ExcelExportEntity entity = new ExcelExportEntity(); - entity.setName(column.getColumnName()); - entity.setKey(column.getColumnCode()); - entity.setWidth(20); - if ("FILE".equals(column.getColumnFormType())) { - entity.setType(2); - entity.setExportImageType(2); - } - currentEntities.add(entity); - } - } - for (NutMap userSignData : v) { - String mobileColumnsValueStr = userSignData.getString("mobileColumnsValue"); - if (StrUtil.isNotBlank(mobileColumnsValueStr)) { - List mobileColumnsValue = Json.fromJsonAsList(NutMap.class, mobileColumnsValueStr); - for (NutMap cv : mobileColumnsValue) { - if (!"FILE".equals(cv.getString("columnFormType"))) { - userSignData.put(cv.getString("columnCode"), cv.getString("columnValue")); - } else { - if (StrUtil.isNotBlank(cv.getString("columnValue"))) { - List columnValue = cv.getAsList("columnValue", NutMap.class); - if (columnValue.size() == 1) { - NutMap sysFile = columnValue.get(0); - Sys_file file = dao.fetch(Sys_file.class, Cnd.where(Sys_file::getDownloadPath, "=", sysFile.get("url"))); - byte[] imageBytes = SysFileMinIoUtil.getFileBytes(file.getBucket(), file.getStoragePath()); - if (imageBytes.length > 0) { - userSignData.put(cv.getString("columnCode"), imageBytes); - } - } - } - } - } - - } - } - - Map userExportMap = new HashMap<>(); - userExportMap.put("name", k); - userExportParams.setType(ExcelType.HSSF); - userExportMap.put("title", userExportParams); - userExportMap.put("entity", currentEntities); - userExportMap.put("data", v); - - sheetsList.add(userExportMap); - } - - Workbook workbook = new HSSFWorkbook(); - for (Map map : sheetsList) { - ExcelExportService service = new ExcelExportService(); - service.createSheetForMap(workbook, (ExportParams) map.get("title"), (List) map.get("entity"), (Collection) map.get("data")); - } - CommonDownloadUtil.download(activity.getActivityName() + "报名人员名单" + ".xls", workbook, response); - } catch (Exception e) { - e.printStackTrace(); - } + public void exportSignUser(@Param("activityId") String activityId, HttpServletResponse response) throws IOException { + NutMap exportData = trainSignUpActivityStatisticsService.buildSignUserExport(activityId); + CommonDownloadUtil.download(exportData.getString("fileName"), exportData.getAs("workbook", Workbook.class), response); } } diff --git a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/models/TrainSignUpCourse.java b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/models/TrainSignUpCourse.java index b4258c3..697061a 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/models/TrainSignUpCourse.java +++ b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/models/TrainSignUpCourse.java @@ -96,6 +96,13 @@ public class TrainSignUpCourse extends BaseModel implements Serializable { @Many(field = "courseId") private List courseTimeList; + /** + * 完整负责人关系。null 表示旧数据尚未设置,空列表表示主动清空负责人。 + * 关系单独保存,后续可按 userId 精确查询,无需解析姓名或 JSON。 + */ + @Many(field = "courseId") + private List responsibleList; + //已报人数 private Integer hasRegisterNum; diff --git a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/models/TrainSignUpCourseResponsible.java b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/models/TrainSignUpCourseResponsible.java new file mode 100644 index 0000000..660c712 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/models/TrainSignUpCourseResponsible.java @@ -0,0 +1,60 @@ +package com.budwk.app.zhgh.activity.trainSignUp.models; + +import lombok.Data; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +import java.io.Serializable; + +/** + * 子活动负责人关系:一人一条记录,业务控制应以 userId 为准,姓名仅用于展示。 + */ +@Data +@Accessors(chain = true) +@Table("train_sign_up_course_responsible") +@Comment("品牌活动子活动负责人") +@TableIndexes({ + @Index(name = "TSU_RESP_COURSE_USER", fields = {"courseId", "userId"}, unique = true), + @Index(name = "TSU_RESP_USER_ACTIVITY", fields = {"userId", "activityId"}, unique = false), + @Index(name = "TSU_RESP_ACTIVITY", fields = {"activityId"}, unique = false) +}) +public class TrainSignUpCourseResponsible implements Serializable { + + @Name + @PrevInsert(uu32 = true) + private String id; + + @Column + @ColDefine(type = ColType.VARCHAR, width = 32) + @Comment("主活动ID,由后端根据所属子活动设置") + private String activityId; + + @Column + @ColDefine(type = ColType.VARCHAR, width = 32) + @Comment("子活动ID,由后端在子活动保存后设置") + private String courseId; + + @Column + @ColDefine(type = ColType.VARCHAR, width = 32) + @Comment("系统用户ID,用于负责人查询和业务控制") + private String userId; + + @Column + @ColDefine(type = ColType.VARCHAR, width = 100) + @Comment("负责人姓名,由后端读取系统用户信息") + private String username; + + @Column + @ColDefine(type = ColType.VARCHAR, width = 20) + @Comment("子活动联系号码,可填写手机号或办公电话") + private String mobile; + + @Column + @ColDefine(type = ColType.INT) + @Comment("负责人顺序,第一位兼容原有联系人展示") + private int orderNum; + + /** 工号仅用于多选回显,不重复存储系统用户资料。 */ + private String loginname; +} diff --git a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/TrainSignUpActivityService.java b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/TrainSignUpActivityService.java index 6a0bdbb..5aa7446 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/TrainSignUpActivityService.java +++ b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/TrainSignUpActivityService.java @@ -20,6 +20,35 @@ import java.util.List; */ public interface TrainSignUpActivityService extends BaseService { + /** 当前登录人是否具有活动关键内容编辑权限(三类管理员任意一种)。 */ + boolean canEditActivityBasic(); + + /** + * 查询当前主活动中可管理的子活动,普通用户仅返回本人负责的记录。 + * @param pageForm 页码、每页条数;排序固定使用子活动序号 + * @param activityId 主活动ID,必填 + * @param courseName 子活动名称,可为空,按包含匹配 + * @return 分页对象,list 包含子活动字段、courseTypeName、responsibleNames、courseTimeName + */ + Pagination courseManagePageData(PageForm pageForm, String activityId, String courseName); + + /** + * 读取单个子活动及表单所需选项,同时校验当前登录人的负责人范围。 + * @param activityId 主活动ID,必须与子活动实际归属一致 + * @param courseId 子活动ID,必填 + * @return course 为子活动及负责人、时段;activityTime 为主活动日期范围; + * canEditBasic 为关键内容编辑权限,courseTypes 为管理员使用的类型选项 + */ + NutMap courseManageDetail(String activityId, String courseId); + + /** + * 保存单个子活动,普通负责人仅更新签到字段,管理员可更新基本信息及负责人。 + * @param course id、activityId 必填;签到参数为 isMobileSign、signType、signUnit、radius、 + * courseLocationCoordinates、transPosition,坐标均按纬度、经度顺序传入 + * @param updateCourseTimes 仅管理员实际修改时段后传 true;false 不改动任何时段及签到记录 + */ + void saveManagedCourse(TrainSignUpCourse course, boolean updateCourseTimes); + /** * 添加活动 * @@ -35,6 +64,13 @@ public interface TrainSignUpActivityService extends BaseService { /** - * 统计分页 + * 查询当前用户可管理的主活动,只包含至少一个本人负责子活动的主活动。 + * 系统管理员、校工会管理员、校工会活动管理员不受负责人范围限制,仍保留年度及启用状态条件。 * - * @param pageForm - * @param activityId - * @return + * @param year 年度,为空时不限制年度 + * @param enabledOnly true 仅查询已启用活动,人员调整页面使用;false 保留统计页面原范围 + * @return 主活动实体列表;没有负责记录时返回空列表 + */ + List activityList(Integer year, boolean enabledOnly); + + /** + * 查询人员调整的目标子活动,限制为当前用户负责的子活动。 + * + * @param activityId 主活动ID,为空时返回空列表 + * @return 子活动列表,id/courseName 为标识及名称,registerNum/hasWaitingNum 为已报及候补人数 + */ + List getCourse(String activityId); + + /** + * 查询有管理权限的子活动时段。 + * + * @param courseId 子活动ID,必须存在且在当前用户的管理范围内 + * @return 时段实体列表,id 为时段ID,courseStartTime/courseEndTime 为起止时间 + */ + List selectTimes(String courseId); + + /** + * 修改子活动对外报名状态,只允许操作本人负责的子活动或由全量管理员操作。 + * + * @param courseId 子活动ID + * @param openOtherUnion true 开放给其他工会报名,false 关闭,不能传 null + */ + void signChange(String courseId, Boolean openOtherUnion); + + /** + * 切换签到状态,依据签到记录实际所属子活动校验负责人权限。 + * + * @param id TrainSignUpUserCourse 签到记录ID + */ + void adjustSign(String id); + + /** + * 迁移报名记录及签到时段,来源、目标子活动均需属于指定主活动且在当前用户管理范围内。 + * + * @param activityId 主活动ID + * @param oldCourseId 原子活动ID + * @param newCourseId 目标子活动ID + * @param userId 被调整的报名人员用户ID,不能用来指定操作人的身份 + */ + void adjust(String activityId, String oldCourseId, String newCourseId, String userId); + + /** + * 删除指定子活动的报名及签到记录,先验证实际子活动归属和当前登录人的负责人权限。 + * + * @param activityId 主活动ID + * @param courseId 子活动ID + * @param userId 被删除的报名人员用户ID + */ + void deleteSignUser(String activityId, String courseId, String userId); + + /** + * 构建当前用户管理范围内的报名人员 Excel,不能导出同一主活动下其他人的子活动。 + * + * @param activityId 主活动ID + * @return 内部 NutMap,fileName 为 .xlsx 文件名,workbook 为 XSSF Workbook,由 controller 输出并关闭 + */ + NutMap buildSignUserExport(String activityId); + + /** + * 按当前登录人的负责人范围查询子活动分页,系统管理员、校工会管理员、校工会活动管理员可查询全部。 + * + * @param pageForm 分页参数,pageNumber 为页码,pageSize 为每页条数 + * @param activityId 主活动ID,为空时返回空分页 + * @return Pagination,list 为子活动数据,totalCount 为相同负责人范围下的记录总数 */ Pagination pageData(PageForm pageForm, String activityId); /** - * 该课程下的报名人员信息 + * 查询有管理权限的子活动报名明细,并展开动态报名字段。 * - * @param courseId - * @return + * @param courseId 子活动ID,不能为空,必须在当前登录人的管理范围内 + * @return 报名人员数组,包含姓名、工号、单位、联系方式、state 报名状态及动态字段 */ List registerUserList(String courseId); + /** + * @param courseId 有管理权限的子活动ID + * @return 动态列配置数组,label 为列标题,prop 为报名明细对应字段名 + */ List getTaleColumnInfo(String courseId); /** - * 该课程下的报名人员信息 + * 按工会、单位和姓名/工号搜索有管理权限的子活动报名人员。 * - * @param courseId - * @return + * @param courseId 有管理权限的子活动ID,不能为空 + * @param unionId 工会ID,可为空 + * @param unitId 单位ID,可为空 + * @param searchName 保留现有接口参数,姓名和工号统一使用 searchKeyword 搜索 + * @param searchKeyword 姓名或工号关键字,可为空 + * @return 报名人员数组,userId 为报名人员用户ID,state 为报名状态 */ List registerUserList(String courseId, String unionId, String unitId, String searchName, String searchKeyword); /** - * 获取每个课程的签到情况 + * 查询有管理权限的子活动指定时段签到分页。 * - * @param courseId - * @return k->每个培训班每节课的上课时间 v->上课记录list + * @param pageForm 分页参数,pageNumber 为页码,pageSize 为每页条数 + * @param courseId 有管理权限的子活动ID + * @param timeId 子活动时段ID + * @return Pagination,list 为签到人员,isAttend/attendTime 为签到状态及时间 */ Pagination getSignInfo(PageForm pageForm, String courseId, String timeId); /** - * 报名人员list 导出 - * @param activityId - * @return + * 查询主活动下可管理子活动的基础报名导出数据。 + * @param activityId 主活动ID + * @return 报名人员数组,包含姓名、工号、联系方式及子活动名称,不包含管理范围以外的子活动 */ List baoMingUserList(String activityId); diff --git a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/impl/TrainSignUpActivityServiceImpl.java b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/impl/TrainSignUpActivityServiceImpl.java index e3c1955..6424433 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/impl/TrainSignUpActivityServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/impl/TrainSignUpActivityServiceImpl.java @@ -1,13 +1,18 @@ package com.budwk.app.zhgh.activity.trainSignUp.service.impl; import cn.hutool.core.util.StrUtil; +import cn.hutool.core.date.DateUtil; +import com.budwk.app.base.constant.RoleConstant; +import com.budwk.app.base.exception.BaseException; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.param.PageForm; import com.budwk.app.base.service.impl.BaseServiceImpl; import com.budwk.app.sys.models.Sys_home_activity; import com.budwk.app.sys.models.Sys_home_template; +import com.budwk.app.sys.models.Sys_user; import com.budwk.app.sys.views.View_user; import com.budwk.app.web.commons.auth.utils.SecurityUtil; +import com.budwk.app.web.commons.auth.utils.AuthUtil; import com.budwk.app.zhgh.activity.family.models.FamilyActivity; import com.budwk.app.zhgh.activity.family.models.FamilyCourse; import com.budwk.app.zhgh.activity.family.models.FamilyType; @@ -51,9 +56,227 @@ public class TrainSignUpActivityServiceImpl extends BaseServiceImpl relations = StrUtil.isBlank(userId) ? Collections.emptyList() + : dao().query(TrainSignUpCourseResponsible.class, + Cnd.where("activityId", "=", activityId).and("userId", "=", userId)); + if (relations.isEmpty()) { + return new Pagination<>(pageForm.getPageNumber(), pageForm.getPageSize(), 0, new ArrayList<>()); + } + // 范围条件在分页前进入数据库查询,记录数和分页总数使用同一负责人范围。 + cnd.and("course.id", "in", relations.stream().map(TrainSignUpCourseResponsible::getCourseId).toList()); + } + cnd.asc("course.orderNum").asc("course.id"); + Sql sql = Sqls.create(""" + SELECT course.*, type.typeName AS courseTypeName, + (SELECT GROUP_CONCAT(r.username ORDER BY r.orderNum SEPARATOR '、') + FROM train_sign_up_course_responsible r + WHERE r.courseId=course.id AND r.activityId=course.activityId) AS responsibleNames, + (SELECT GROUP_CONCAT(CONCAT(DATE_FORMAT(t.courseStartTime, '%Y-%m-%d %H:%i'), + ' 至 ', DATE_FORMAT(t.courseEndTime, '%H:%i')) ORDER BY t.courseStartTime SEPARATOR ';') + FROM train_sign_up_activity_course t WHERE t.courseId=course.id) AS courseTimeName + FROM train_sign_up_course course + LEFT JOIN train_sign_up_type type ON type.id=course.courseType + $condition + """); + sql.setCondition(cnd); + return listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + } + + @Override + public NutMap courseManageDetail(String activityId, String courseId) { + TrainSignUpCourse course = requireManagedCourse(activityId, courseId); + fillCourseResponsibles(List.of(course)); + dao().fetchLinks(course, "courseTimeList", Cnd.NEW().asc("courseStartTime")); + TrainSignUpActivity activity = fetch(activityId); + NutMap data = Lang.obj2nutmap(course); + // 时间编辑组件使用日期和 HH:mm 两部分;签到记录仍由 service 按完整日期时间保存。 + List times = course.getCourseTimeList().stream().map(time -> Lang.obj2nutmap(time) + .setv("courseDate", DateUtil.formatDate(time.getCourseDate())) + .setv("courseStartTime", DateUtil.format(time.getCourseStartTime(), "HH:mm")) + .setv("courseEndTime", DateUtil.format(time.getCourseEndTime(), "HH:mm"))).toList(); + data.setv("courseTimeList", times).setv("setUpCourseData", + times.stream().map(time -> time.getString("courseDate")).distinct().toList()); + TrainSignUpType type = StrUtil.isBlank(course.getCourseType()) ? null + : dao().fetch(TrainSignUpType.class, course.getCourseType()); + data.setv("courseTypeName", type == null ? "" : type.getTypeName()); + List activityTime = activity.getActivityStartTime() == null || activity.getActivityEndTime() == null + ? Collections.emptyList() : List.of(DateUtil.formatDateTime(activity.getActivityStartTime()), + DateUtil.formatDateTime(activity.getActivityEndTime())); + return NutMap.NEW().setv("course", data).setv("activityTime", activityTime) + .setv("canEditBasic", canEditActivityBasic()) + .setv("courseTypes", canEditActivityBasic() ? dao().query(TrainSignUpType.class, Cnd.NEW()) : Collections.emptyList()); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void saveManagedCourse(TrainSignUpCourse course, boolean updateCourseTimes) { + if (course == null) { + throw new BaseException("子活动信息不能为空"); + } + TrainSignUpCourse stored = requireManagedCourse(course.getActivityId(), course.getId()); + boolean usesSignLocation = validateManagedSign(course); + String fields = "isMobileSign"; + if (course.isMobileSign()) { + fields += "|signType"; + } + // 被扫或关闭签到时不更新隐藏配置,即使请求携带这些字段也保留数据库原值。 + if (usesSignLocation) { + fields += "|signUnit|radius|courseLocationCoordinates|transPosition"; + } + if (canEditActivityBasic()) { + validateManagedBasic(course, stored); + validateCourseResponsibles(List.of(course)); + fields += "|courseName|courseType|coursePeopleNumber|courseReservedNumber|courseLocation|campus|assort"; + if (course.getResponsibleList() != null) { + fields += "|courseInstructor|courseInstructorMobile"; + } + if (updateCourseTimes) { + validateManagedTimes(course, fetch(stored.getActivityId())); + fields += "|courseIsLimitApply"; + } + } else if (updateCourseTimes) { + throw new BaseException("活动时间仅管理员可修改"); + } + // 明确列出允许更新的列,普通负责人提交其他字段也无法覆盖关键内容或其他子活动。 + if (dao().update(course, "^(" + fields + ")$") != 1) { + throw new BaseException("子活动已变化,请刷新后重试"); + } + if (canEditActivityBasic()) { + saveCourseResponsibles(course); + if (updateCourseTimes) { + handleCourseTimes(fetch(stored.getActivityId()), course); + } + } + } + + /** + * 返回 true 表示扫码或 GPS 签到,需校验并更新时间、位置配置,默认误差0分钟、半径100米。 + * 被扫使用固定签到时间规则,关闭签到也不使用这些字段,返回 false 跳过校验且不更新原配置。 + */ + private boolean validateManagedSign(TrainSignUpCourse course) { + if (!course.isMobileSign()) { + return false; + } + if (!List.of(1, 2, 3).contains(course.getSignType() == null ? 0 : course.getSignType())) { + throw new BaseException("请选择有效的签到方式"); + } + if (Objects.equals(course.getSignType(), 2)) { + return false; + } + if (course.getSignUnit() == null) course.setSignUnit(0); + if (course.getRadius() == null) course.setRadius(100); + if (course.getSignUnit() < 0 || course.getRadius() <= 0) { + throw new BaseException("签到时间误差不能为负数,签到半径必须大于0"); + } + validateManagedPosition(course.getCourseLocationCoordinates()); + validateManagedPosition(course.getTransPosition()); + return true; + } + + /** 地图坐标和签到坐标均为 [纬度, 经度],拒绝不完整、非有限值及超出地理范围的坐标。 */ + private void validateManagedPosition(List point) { + if (point == null || point.size() != 2 || point.stream().anyMatch(value -> value == null || !Double.isFinite(value)) + || Math.abs(point.get(0)) > 90 || Math.abs(point.get(1)) > 180) { + throw new BaseException("请重新设置有效的签到点"); + } + } + + /** 管理员基本信息沿用原字段范围;人数为0表示不限制,已报名后禁止切换报名类型。 */ + private void validateManagedBasic(TrainSignUpCourse course, TrainSignUpCourse stored) { + if (StrUtil.isBlank(course.getCourseName()) || course.getCourseName().length() > 50 + || StrUtil.isBlank(course.getCourseLocation()) || course.getCourseLocation().length() > 50 + || StrUtil.isBlank(course.getCampus()) || course.getCampus().length() > 32 + || (course.getAssort() != null && course.getAssort().length() > 30)) { + throw new BaseException("请填写有效的名称、校区、地点和分类标识"); + } + if (StrUtil.isBlank(course.getCourseType()) || dao().fetch(TrainSignUpType.class, course.getCourseType()) == null) { + throw new BaseException("请选择有效的子活动类型"); + } + if (!Objects.equals(stored.getCourseType(), course.getCourseType()) + && dao().count(TrainSignUpUser.class, Cnd.where("courseId", "=", stored.getId())) > 0) { + throw new BaseException("已有报名记录,不能修改子活动类型"); + } + int registered = StrUtil.isBlank(stored.getCourseType()) ? 0 + : statisticsService.queryCourseCount(stored.getId(), stored.getCourseType()); + if (course.getCoursePeopleNumber() < 0 || course.getCoursePeopleNumber() > 9999 + || course.getCourseReservedNumber() < 0 || course.getCourseReservedNumber() > 1000 + || (course.getCoursePeopleNumber() > 0 && Objects.equals(stored.getReserveMode(), 1) + && course.getCourseReservedNumber() + registered > course.getCoursePeopleNumber())) { + throw new BaseException("人数或预留名额无效,不能低于已报名人数与预留名额之和"); + } + } + + /** 时段ID只能属于当前子活动;校验后再调用原有同步逻辑,保证变更及签到记录在同一事务中提交。 */ + private void validateManagedTimes(TrainSignUpCourse course, TrainSignUpActivity activity) { + if (Lang.isEmpty(course.getCourseTimeList()) || activity.getActivityStartTime() == null || activity.getActivityEndTime() == null) { + throw new BaseException("请先设置主活动日期及至少一个有效时段"); + } + Set ids = new HashSet<>(); + Set existingIds = dao().query(TrainSignUpActivityCourse.class, Cnd.where("courseId", "=", course.getId())) + .stream().map(TrainSignUpActivityCourse::getId).collect(Collectors.toSet()); + for (TrainSignUpActivityCourse time : course.getCourseTimeList()) { + if (time == null || time.getCourseDate() == null || time.getCourseStartTime() == null || time.getCourseEndTime() == null) { + throw new BaseException("请完整填写活动日期及起止时间"); + } + if (StrUtil.isNotBlank(time.getId()) && (!existingIds.contains(time.getId()) || !ids.add(time.getId()))) { + throw new BaseException("活动时段无效或重复,请刷新后重试"); + } + String date = DateUtil.formatDate(time.getCourseDate()); + Date start = DateUtil.parse(date + " " + DateUtil.format(time.getCourseStartTime(), "HH:mm")); + Date end = DateUtil.parse(date + " " + DateUtil.format(time.getCourseEndTime(), "HH:mm")); + if (!start.before(end) || start.before(activity.getActivityStartTime()) || end.after(activity.getActivityEndTime()) + || (Boolean.TRUE.equals(course.getCourseIsLimitApply()) && (time.getCourseLimitNum() == null || time.getCourseLimitNum() < 1))) { + throw new BaseException("活动时段必须在主活动范围内,结束晚于开始;限制人数时应填写正整数"); + } + } + } + @Override @Aop(TransAop.READ_COMMITTED) public void add(TrainSignUpActivity activity, TrainSignUpCourse course) { + // 先校验所有负责人,任何一行存在无效用户或联系方式时均不写入活动。 + validateCourseResponsibles(activity.getCourseList()); // 新建活动(包括从模板另存)统一归入活动列表,不能继承来源活动的模板状态。 activity.setTemplateStatus(TrainSignUpActivity.TEMPLATE_STATUS_UNSET); dao().insert(activity); @@ -68,6 +291,7 @@ public class TrainSignUpActivityServiceImpl extends BaseServiceImpl courseList = activity.getCourseList(); - if (Lang.isEmpty(courseList)) { + if (courseList == null) { return; } @@ -108,12 +348,15 @@ public class TrainSignUpActivityServiceImpl extends BaseServiceImpl deletedIds = Sets.difference(oldIds, newIds).immutableCopy(); if(Lang.isNotEmpty(deletedIds)) { + // 删除子活动时同步清理负责人,避免后续按 userId 查到已删除的业务。 + dao().clear(TrainSignUpCourseResponsible.class, Cnd.where("courseId", "in", deletedIds)); dao().clear(TrainSignUpCourse.class, Cnd.where("id", "in", deletedIds)); } for (TrainSignUpCourse course : courseList) { course.setActivityId(activity.getId()); dao().insertOrUpdate(course); + saveCourseResponsibles(course); if (Lang.isNotEmpty(course.getCourseTimeList())) { handleCourseTimes(activity, course); @@ -128,6 +371,131 @@ public class TrainSignUpActivityServiceImpl extends BaseServiceImpl courses) { + if (courses == null) { + return; + } + Set userIds = new HashSet<>(); + for (TrainSignUpCourse course : courses) { + if (course == null) { + throw new BaseException("子活动信息不能为空"); + } + if (course.getResponsibleList() == null) { + continue; + } + Set courseUserIds = new HashSet<>(); + for (TrainSignUpCourseResponsible responsible : course.getResponsibleList()) { + if (responsible == null || StrUtil.isBlank(responsible.getUserId())) { + throw new BaseException("请从下拉框选择负责人"); + } + String userId = responsible.getUserId().trim(); + if (userId.length() > 32 || !courseUserIds.add(userId)) { + throw new BaseException("负责人ID无效或同一子活动重复设置了负责人"); + } + String mobile = StrUtil.trim(responsible.getMobile()); + if (StrUtil.isBlank(mobile) || mobile.length() > 20) { + throw new BaseException("请填写负责人联系方式,长度不能超过20个字符"); + } + responsible.setUserId(userId).setMobile(mobile); + userIds.add(userId); + } + } + Map users = userIds.isEmpty() ? Collections.emptyMap() + : dao().query(Sys_user.class, Cnd.where("id", "in", userIds)).stream() + .collect(Collectors.toMap(Sys_user::getId, user -> user)); + for (TrainSignUpCourse course : courses) { + List responsibles = course.getResponsibleList(); + if (responsibles == null) { + continue; + } + for (int i = 0; i < responsibles.size(); i++) { + TrainSignUpCourseResponsible responsible = responsibles.get(i); + Sys_user user = users.get(responsible.getUserId()); + if (user == null || StrUtil.isBlank(user.getUsername())) { + throw new BaseException("所选负责人不存在,请重新选择"); + } + responsible.setUsername(user.getUsername()).setLoginname(user.getLoginname()).setOrderNum(i + 1); + } + // 原有报名和统计页面仍展示第一位联系人,完整姓名及多人信息保留在关系表。 + // 原姓名列宽为20,此处只限制兼容展示字段,避免长姓名导致数据库写入失败。 + course.setCourseInstructor(responsibles.isEmpty() ? "" : StrUtil.sub(responsibles.get(0).getUsername(), 0, 20)); + course.setCourseInstructorMobile(responsibles.isEmpty() ? "" : responsibles.get(0).getMobile()); + } + } + + /** + * 随子活动在同一事务中保存负责人,关系ID及归属由后端生成,模板复制不会复用旧关系。 + * null 表示未修改历史设置,不清理原有关系;空列表表示明确删除所有负责人。 + */ + @Aop(TransAop.READ_COMMITTED) + private void saveCourseResponsibles(TrainSignUpCourse course) { + if (course.getResponsibleList() == null) { + return; + } + dao().clear(TrainSignUpCourseResponsible.class, Cnd.where("courseId", "=", course.getId())); + for (TrainSignUpCourseResponsible responsible : course.getResponsibleList()) { + responsible.setId(null).setActivityId(course.getActivityId()).setCourseId(course.getId()); + } + if (!course.getResponsibleList().isEmpty()) { + dao().insert(course.getResponsibleList()); + } + } + + /** 批量回显负责人及工号,不按旧姓名猜测用户身份,也不对每个子活动重复查询用户。 */ + private void fillCourseResponsibles(List courses) { + if (courses.isEmpty()) { + return; + } + List courseIds = courses.stream().map(TrainSignUpCourse::getId).collect(Collectors.toList()); + List responsibles = dao().query(TrainSignUpCourseResponsible.class, + Cnd.where("courseId", "in", courseIds).asc("orderNum")); + Set userIds = responsibles.stream().map(TrainSignUpCourseResponsible::getUserId).collect(Collectors.toSet()); + Map users = userIds.isEmpty() ? Collections.emptyMap() + : dao().query(Sys_user.class, Cnd.where("id", "in", userIds)).stream() + .collect(Collectors.toMap(Sys_user::getId, user -> user)); + for (TrainSignUpCourseResponsible responsible : responsibles) { + Sys_user user = users.get(responsible.getUserId()); + if (user != null) { + responsible.setUsername(user.getUsername()).setLoginname(user.getLoginname()); + } + } + Map> byCourse = responsibles.stream() + .collect(Collectors.groupingBy(TrainSignUpCourseResponsible::getCourseId)); + for (TrainSignUpCourse course : courses) { + List list = byCourse.get(course.getId()); + // 旧活动保留 null,避免普通编辑保存时将未绑定用户的历史联系人清空。 + course.setResponsibleList(list != null ? list : + (StrUtil.isNotBlank(course.getCourseInstructor()) || StrUtil.isNotBlank(course.getCourseInstructorMobile()) + ? null : new ArrayList<>())); + } + } + + /** 删除主活动时在一个事务中清理负责人及原有业务关联,模板活动仍需先取消模板。 */ + @Override + @Aop(TransAop.READ_COMMITTED) + public void deleteActivity(String id) { + requireActivityBasicPermission(); + if (StrUtil.isBlank(id)) { + throw new BaseException("活动ID不能为空"); + } + if (dao().fetch(Sys_home_template.class, id) != null) { + throw new BaseException("该活动已设为模板,请先取消模板后再删除"); + } + dao().clear(TrainSignUpCourseResponsible.class, Cnd.where("activityId", "=", id)); + dao().clear(TrainSignUpCourse.class, Cnd.where("activityId", "=", id)); + dao().clear(TrainSignUpActivityCourse.class, Cnd.where("activityId", "=", id)); + dao().clear(TrainSignUpUser.class, Cnd.where("activityId", "=", id)); + dao().clear(TrainSignUpUserCourse.class, Cnd.where("activityId", "=", id)); + dao().clear(TrainSignUpActivity.class, Cnd.where("id", "=", id)); + dao().clear(TrainSignUpTypeLimit.class, Cnd.where("activityId", "=", id)); + dao().delete(Sys_home_activity.class, id); + } + + @Aop(TransAop.READ_COMMITTED) private void handleCourseTimes(TrainSignUpActivity activity, TrainSignUpCourse course) { String courseId = course.getId(); String activityId = activity.getId(); @@ -223,6 +591,7 @@ public class TrainSignUpActivityServiceImpl extends BaseServiceImpl { Calendar calendar = Calendar.getInstance(); @@ -250,7 +619,14 @@ public class TrainSignUpActivityServiceImpl extends BaseServiceImpl activities = pagination.getList(TrainSignUpActivity.class); + boolean canEditBasic = canEditActivityBasic(); + String userId = SecurityUtil.getUserId(); + Map> responsibleCourses = new HashMap<>(); + // 只批量查询当前页活动的本人负责人关系,避免逐行查询,也不把普通用户当作负责人。 + if (!canEditBasic && StrUtil.isNotBlank(userId) && !activities.isEmpty()) { + List activityIds = activities.stream().map(TrainSignUpActivity::getId).toList(); + List relations = dao().query(TrainSignUpCourseResponsible.class, + Cnd.where("activityId", "in", activityIds).and("userId", "=", userId)); + for (TrainSignUpCourseResponsible relation : relations) { + responsibleCourses.computeIfAbsent(relation.getActivityId(), key -> new HashSet<>()) + .add(relation.getCourseId()); + } + } + List rows = activities.stream().map(activity -> { + Set courseIds = responsibleCourses.getOrDefault(activity.getId(), Collections.emptySet()); + // 同时核对实际子活动,已删除或已迁出的子活动关系不提供入口;管理员优先走编辑。 + boolean canManageCourse = !canEditBasic && activity.getCourseList() != null + && activity.getCourseList().stream().anyMatch(course -> courseIds.contains(course.getId())); + return Lang.obj2nutmap(activity).setv("canManageCourse", canManageCourse); + }).toList(); + pagination.setList(rows); return pagination; } @@ -618,7 +1022,7 @@ public class TrainSignUpActivityServiceImpl extends BaseServiceImpl= 0; } } diff --git a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/impl/TrainSignUpActivityStatisticsServiceImpl.java b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/impl/TrainSignUpActivityStatisticsServiceImpl.java index 3403cb3..12a55c0 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/impl/TrainSignUpActivityStatisticsServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/activity/trainSignUp/service/impl/TrainSignUpActivityStatisticsServiceImpl.java @@ -1,25 +1,42 @@ package com.budwk.app.zhgh.activity.trainSignUp.service.impl; +import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; +import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; +import cn.afterturn.easypoi.excel.export.ExcelExportService; import cn.hutool.core.util.StrUtil; +import cn.hutool.core.date.DateUtil; +import com.budwk.app.base.constant.RoleConstant; +import com.budwk.app.base.exception.BaseException; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.param.PageForm; import com.budwk.app.base.service.impl.BaseServiceImpl; import com.budwk.app.sys.models.Sys_user; +import com.budwk.app.sys.models.Sys_file; +import com.budwk.app.sys.utils.SysFileMinIoUtil; import com.budwk.app.zhgh.activity.family.models.FamilyType; import com.budwk.app.zhgh.activity.family.models.FamilyUser; import com.budwk.app.zhgh.activity.trainSignUp.models.*; import com.budwk.app.zhgh.activity.trainSignUp.service.TrainSignUpActivityStatisticsService; +import com.budwk.app.web.commons.auth.utils.AuthUtil; +import com.budwk.app.web.commons.auth.utils.SecurityUtil; import lombok.extern.slf4j.Slf4j; +import org.apache.poi.ss.usermodel.Workbook; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.dao.Chain; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; import org.nutz.dao.util.cri.SqlExpressionGroup; +import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.json.Json; import org.nutz.lang.Lang; import org.nutz.lang.util.NutMap; +import java.io.IOException; import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; @@ -37,8 +54,197 @@ public class TrainSignUpActivityStatisticsServiceImpl extends BaseServiceImpl activityList(Integer year, boolean enabledOnly) { + // 可选条件也在创建SQL前确定,让年度、启用状态和负责人ID均由预编译参数绑定。 + Sql sql = Sqls.create("SELECT activity.* FROM train_sign_up_activity activity WHERE 1=1 " + + (year == null ? "" : " AND activity.year=@year ") + + (enabledOnly ? " AND activity.isDisabled=@disabled " : "") + + " $responsibleScope ORDER BY activity.activityStartTime DESC"); + sql.setParam("year", year); + sql.setParam("disabled", false); + applyResponsibleScope(sql, "activity.id", true); + sql.setEntity(dao().getEntity(TrainSignUpActivity.class)); + sql.setCallback(Sqls.callback.entities()); + dao().execute(sql); + return sql.getList(TrainSignUpActivity.class); + } + + @Override + public List getCourse(String activityId) { + if (StrUtil.isBlank(activityId)) { + return new ArrayList<>(); + } + Sql sql = Sqls.create(""" + SELECT tsuc.id, tsuc.courseName, tsuc.coursePeopleNumber, tsuc.courseType, + tsuc.courseLocation, tsuc.courseInstructor, tsuc.courseReservedNumber, + tsuc.waitingNum, tsuc.reserveMode + FROM train_sign_up_course tsuc + WHERE tsuc.activityId=@activityId $responsibleScope + ORDER BY tsuc.courseName ASC + """); + sql.setParam("activityId", activityId); + applyResponsibleScope(sql, "tsuc.id", false); + List courses = listMap(sql); + courses.forEach(course -> { + course.put("registerNum", queryCourseCount(course.getString("id"), course.getString("courseType"))); + course.put("hasWaitingNum", queryCourseWaitCount(course.getString("id"), course.getString("courseType"))); + }); + return courses; + } + + @Override + public List selectTimes(String courseId) { + requireCourseScope(courseId); + return dao().query(TrainSignUpActivityCourse.class, Cnd.where("courseId", "=", courseId).asc("courseStartTime")); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void signChange(String courseId, Boolean openOtherUnion) { + requireCourseScope(courseId); + if (openOtherUnion == null) { + throw new BaseException("请指定是否开放报名"); + } + dao().update(TrainSignUpCourse.class, Chain.make("openOtherUnion", openOtherUnion), Cnd.where("id", "=", courseId)); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void adjustSign(String id) { + if (StrUtil.isBlank(id)) { + throw new BaseException("签到记录ID不能为空"); + } + TrainSignUpUserCourse userCourse = dao().fetch(TrainSignUpUserCourse.class, id); + if (userCourse == null) { + throw new BaseException("签到记录不存在"); + } + // 通过记录实际所属子活动验证权限,不接受前端指定负责人身份。 + requireCourseScope(userCourse.getCourseId()); + if (userCourse.isAttend()) { + userCourse.setAttend(false); + userCourse.setAttendTime(null); + } else { + userCourse.setAttend(true); + userCourse.setAttendTime(userCourse.getCourseStartTime()); + } + dao().update(userCourse); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void adjust(String activityId, String oldCourseId, String newCourseId, String userId) { + if (StrUtil.isBlank(userId)) { + throw new BaseException("报名人员用户ID不能为空"); + } + // 来源与目标均受负责人范围约束,且必须属于同一主活动,防止绕过目标列表迁移数据。 + requireActivityMatch(activityId, requireCourseScope(oldCourseId)); + requireActivityMatch(activityId, requireCourseScope(newCourseId)); + Cnd oldCnd = Cnd.where("activityId", "=", activityId).and("courseId", "=", oldCourseId).and("userId", "=", userId); + TrainSignUpUser oldUser = dao().fetch(TrainSignUpUser.class, oldCnd); + if (oldUser == null) { + throw new BaseException("原报名记录不存在,请刷新后重试"); + } + oldUser.setCourseId(newCourseId); + oldUser.setSignUpTime(DateUtil.date()); + dao().update(oldUser); + + // 沿用现有人员调整业务,按目标子活动时段重建签到记录,并在同一事务中提交。 + List times = dao().query(TrainSignUpActivityCourse.class, + Cnd.where("activityId", "=", activityId).and("courseId", "=", newCourseId)); + dao().clear(TrainSignUpUserCourse.class, oldCnd); + List userCourses = new ArrayList<>(); + times.forEach(item -> { + TrainSignUpUserCourse course = new TrainSignUpUserCourse(); + course.setActivityCourseId(activityId); + course.setCourseId(newCourseId); + course.setUserId(userId); + course.setCourseStartTime(item.getCourseStartTime()); + course.setCourseEndTime(item.getCourseEndTime()); + course.setActivityCourseId(item.getId()); + userCourses.add(course); + }); + dao().insert(userCourses); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void deleteSignUser(String activityId, String courseId, String userId) { + if (StrUtil.isBlank(userId)) { + throw new BaseException("报名人员用户ID不能为空"); + } + requireActivityMatch(activityId, requireCourseScope(courseId)); + Cnd cnd = Cnd.where("activityId", "=", activityId).and("courseId", "=", courseId).and("userId", "=", userId); + // 报名及对应签到记录必须一并删除,禁止只传用户ID造成跨子活动删除。 + dao().clear(TrainSignUpUser.class, cnd); + dao().clear(TrainSignUpUserCourse.class, cnd); + } + @Override public Pagination pageData(PageForm pageForm, String activityId) { + // 没有可选主活动时返回空分页,不能将缺少筛选条件解释为查询所有子活动。 + if (StrUtil.isBlank(activityId)) { + return new Pagination<>(pageForm.getPageNumber(), pageForm.getPageSize(), 0, new ArrayList<>()); + } Sql sql = Sqls.create(""" SELECT tsuc.id, @@ -61,9 +267,11 @@ public class TrainSignUpActivityStatisticsServiceImpl extends BaseServiceImpl courseList = pagination.getList(); courseList.forEach(c -> { @@ -75,6 +283,7 @@ public class TrainSignUpActivityStatisticsServiceImpl extends BaseServiceImpl registerUserList(String courseId) { + requireCourseScope(courseId); Sql sql = Sqls.create(""" SELECT u.loginname, @@ -92,11 +301,13 @@ public class TrainSignUpActivityStatisticsServiceImpl extends BaseServiceImpl list = listMap(sql); for (NutMap o : list) { if(StrUtil.isBlank(o.getString("mobileColumnsValue"))) { @@ -114,7 +325,7 @@ public class TrainSignUpActivityStatisticsServiceImpl extends BaseServiceImpl getTaleColumnInfo(String courseId) { - TrainSignUpCourse course = dao().fetch(TrainSignUpCourse.class, courseId); + TrainSignUpCourse course = requireCourseScope(courseId); TrainSignUpType upType = dao().fetch(TrainSignUpType.class, course.getCourseType()); dao().fetchLinks(upType, "trainMobileSignColumnList", Cnd.NEW().asc("columnIndex")); @@ -125,6 +336,7 @@ public class TrainSignUpActivityStatisticsServiceImpl extends BaseServiceImpl registerUserList(String courseId, String unionId, String unitId, String searchName, String searchKeyword) { + requireCourseScope(courseId); Sql sql = Sqls.create(""" SELECT tsuu.id, @@ -141,10 +353,11 @@ public class TrainSignUpActivityStatisticsServiceImpl extends BaseServiceImpl courseList = courseSql.getList(TrainSignUpCourse.class); + if (courseList.isEmpty()) { + throw new BaseException("没有可导出的子活动,请检查负责人设置"); + } + Sql sql = Sqls.create(""" + SELECT ts.*, + CONCAT(DATE_FORMAT(ac.courseStartTime, '%H:%i:%s'),'至',DATE_FORMAT(ac.courseEndTime, '%H:%i:%s')) AS courseTime, + u.username, u.loginname, u.sex, IFNULL(ts.mobile, u.mobile) AS mobile, + u.birthday, tsc.courseName + FROM train_sign_up_user ts + LEFT JOIN train_sign_up_activity_course ac ON ts.activityCourseId=ac.id + LEFT JOIN vw_user u ON u.id=ts.userId + LEFT JOIN train_sign_up_course tsc ON tsc.id=ts.courseId + WHERE ts.activityId=@activityId AND tsc.activityId=@activityId $responsibleScope + """); + sql.setParam("activityId", activityId); + applyResponsibleScope(sql, "tsc.id", false); + List userList = listMap(sql); + + // 保留原导出公共列、动态报名列和图片处理,仅改变数据范围及Excel文件类型。 + List types = dao().query(TrainSignUpType.class, Cnd.NEW()); + dao().fetchLinks(types, "trainMobileSignColumnList", Cnd.NEW().asc("columnIndex")); + Map typeMap = types.stream().collect(Collectors.toMap(TrainSignUpType::getId, type -> type)); + List> sheetsList = new ArrayList<>(); + List commonEntities = new ArrayList<>(); + commonEntities.add(new ExcelExportEntity("姓名", "username", 20)); + commonEntities.add(new ExcelExportEntity("工号", "loginname", 20)); + commonEntities.add(new ExcelExportEntity("单位", "unitName", 20)); + commonEntities.add(new ExcelExportEntity("分工会", "unionName", 20)); + commonEntities.add(new ExcelExportEntity("性别", "sex", 20)); + commonEntities.add(new ExcelExportEntity("手机号", "mobile", 20)); + commonEntities.add(new ExcelExportEntity("生日", "birthday", 20)); + commonEntities.add(new ExcelExportEntity("报名时段", "courseTime", 20)); + for (TrainSignUpCourse course : courseList) { + String name = course.getCourseName(); + List users = userList.stream().filter(user -> StrUtil.isNotBlank(user.getString("courseName")) + && user.getString("courseName").equals(name)).collect(Collectors.toList()); + ExportParams exportParams = new ExportParams(); + exportParams.setType(ExcelType.XSSF); + exportParams.setSheetName(name); + List entities = new ArrayList<>(commonEntities); + TrainSignUpType type = typeMap.get(course.getCourseType()); + if (Lang.isNotEmpty(type.getTrainMobileSignColumnList())) { + for (TrainMobileSignColumn column : type.getTrainMobileSignColumnList()) { + ExcelExportEntity entity = new ExcelExportEntity(); + entity.setName(column.getColumnName()); + entity.setKey(column.getColumnCode()); + entity.setWidth(20); + if ("FILE".equals(column.getColumnFormType())) { + entity.setType(2); + entity.setExportImageType(2); + } + entities.add(entity); + } + } + for (NutMap user : users) { + String values = user.getString("mobileColumnsValue"); + if (StrUtil.isBlank(values)) { + continue; + } + for (NutMap value : Json.fromJsonAsList(NutMap.class, values)) { + if (!"FILE".equals(value.getString("columnFormType"))) { + user.put(value.getString("columnCode"), value.getString("columnValue")); + } else if (StrUtil.isNotBlank(value.getString("columnValue"))) { + List files = value.getAsList("columnValue", NutMap.class); + if (files.size() == 1) { + NutMap fileData = files.get(0); + Sys_file file = dao().fetch(Sys_file.class, Cnd.where(Sys_file::getDownloadPath, "=", fileData.get("url"))); + byte[] imageBytes = SysFileMinIoUtil.getFileBytes(file.getBucket(), file.getStoragePath()); + if (imageBytes.length > 0) { + user.put(value.getString("columnCode"), imageBytes); + } + } + } + } + } + Map sheet = new HashMap<>(); + sheet.put("name", name); + sheet.put("title", exportParams); + sheet.put("entity", entities); + sheet.put("data", users); + sheetsList.add(sheet); + } + Workbook workbook = new XSSFWorkbook(); + try { + for (Map sheet : sheetsList) { + new ExcelExportService().createSheetForMap(workbook, (ExportParams) sheet.get("title"), + (List) sheet.get("entity"), (Collection) sheet.get("data")); + } + return NutMap.NEW().setv("fileName", activity.getActivityName() + "报名人员名单.xlsx").setv("workbook", workbook); + } catch (RuntimeException exception) { + // 构建失败时尚未交给下载层,需在此释放工作簿;成功时由下载方法统一关闭。 + try { + workbook.close(); + } catch (IOException closeException) { + exception.addSuppressed(closeException); + } + throw exception; + } + } + @Override public int queryCourseCount(String courseId, String courseType) { return this.queryCourseCount(courseId, courseType, null); diff --git a/src/main/java/com/budwk/app/zhgh/club/controller/apply/ClubUserClubListController.java b/src/main/java/com/budwk/app/zhgh/club/controller/apply/ClubUserClubListController.java index 610b6f4..6524ede 100644 --- a/src/main/java/com/budwk/app/zhgh/club/controller/apply/ClubUserClubListController.java +++ b/src/main/java/com/budwk/app/zhgh/club/controller/apply/ClubUserClubListController.java @@ -1,6 +1,7 @@ package com.budwk.app.zhgh.club.controller.apply; import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.dev33.satoken.annotation.SaMode; import cn.hutool.core.util.StrUtil; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.param.PageForm; @@ -47,8 +48,19 @@ public class ClubUserClubListController { public void index() { } + /** + * 打开移动端社团列表,共用电脑端的社团查询及入退会状态。 + * + * @return 无返回值,由模板渲染社团列表页面 + */ + @At("/h5") + @Ok("beetl:/platform/zhghh5/club/list/index.html") + @SaCheckPermission(value = {"h5.club.join.list", "h5.club.join.apply"}, mode = SaMode.OR) + public void h5Index() { + } + @At - @SaCheckPermission("club.join.list") + @SaCheckPermission(value = {"club.join.list", "h5.club.join.list", "h5.club.join.apply"}, mode = SaMode.OR) public Result pageData(@Valid PageForm pageForm, Boolean hasJoin, String clubName, String clubType) { Cnd cnd = Cnd.NEW(); cnd.and("dismiss", "=", false); @@ -71,7 +83,7 @@ public class ClubUserClubListController { } @At - @SaCheckPermission("club.join.list") + @SaCheckPermission(value = {"club.join.list", "h5.club.join.list", "h5.club.join.apply"}, mode = SaMode.OR) public Result getCount() { // 获取所有社团 List list = sysClubService.query(); @@ -96,7 +108,7 @@ public class ClubUserClubListController { } @At - @SaCheckPermission("club.join.list") + @SaCheckPermission(value = {"club.join.list", "h5.club.join.list", "h5.club.join.apply"}, mode = SaMode.OR) public Result findOne(@Valid String id) { ClubRegisterVo clubRegisterVo = sysClubService.findOne(id); return Result.success(clubRegisterVo); diff --git a/src/main/java/com/budwk/app/zhgh/club/controller/apply/ClubUserJoinApplyController.java b/src/main/java/com/budwk/app/zhgh/club/controller/apply/ClubUserJoinApplyController.java index 59d147c..90629d4 100644 --- a/src/main/java/com/budwk/app/zhgh/club/controller/apply/ClubUserJoinApplyController.java +++ b/src/main/java/com/budwk/app/zhgh/club/controller/apply/ClubUserJoinApplyController.java @@ -74,10 +74,22 @@ public class ClubUserJoinApplyController { public void index() { } + /** + * 移动端首次入会先选择社团,已选社团或已有申请继续进入申请表单。 + * + * @param clubId 已选择的社团ID + * @param bizId 已有入会申请ID + * @param taskId 重新提交申请时的流程任务ID + * @return 无申请上下文时跳转社团列表,否则渲染原申请页面 + */ @At("/h5") @SaCheckPermission("h5.club.join.apply") - @Ok("beetl:/platform/zhghh5/club/apply/index.html") - public void h5Index() { + @Ok("re") + public String h5Index(@Param("clubId") String clubId, @Param("bizId") String bizId, @Param("taskId") String taskId) { + if (StrUtil.isBlank(clubId) && StrUtil.isBlank(bizId) && StrUtil.isBlank(taskId)) { + return ">>:/platform/club/join/list/h5"; + } + return "beetl:/platform/zhghh5/club/apply/index.html"; } @At diff --git a/src/main/java/com/budwk/app/zhgh/club/controller/common/ClubCommonController.java b/src/main/java/com/budwk/app/zhgh/club/controller/common/ClubCommonController.java index 860d7e8..3b9ae89 100644 --- a/src/main/java/com/budwk/app/zhgh/club/controller/common/ClubCommonController.java +++ b/src/main/java/com/budwk/app/zhgh/club/controller/common/ClubCommonController.java @@ -2,12 +2,17 @@ package com.budwk.app.zhgh.club.controller.common; import cn.dev33.satoken.annotation.SaCheckLogin; import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.dev33.satoken.annotation.SaMode; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.util.StrUtil; import com.budwk.app.base.constant.RoleConstant; import com.budwk.app.base.result.Result; import com.budwk.app.base.service.BaseService; import com.budwk.app.bpm.enums.BpmProcessInstanceStatusEnum; import com.budwk.app.bpm.enums.BpmProcessTaskStatusEnum; import com.budwk.app.flow.enums.ProcessInstanceStateEnum; +import com.budwk.app.sys.enums.SysFileEngineTypeEnum; +import com.budwk.app.sys.services.SysFileService; import com.budwk.app.web.commons.auth.utils.AuthUtil; import com.budwk.app.web.commons.auth.utils.SecurityUtil; import com.budwk.app.zhgh.club.model.ClubUser; @@ -19,10 +24,17 @@ import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.mvc.annotation.AdaptBy; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.POST; +import org.nutz.mvc.annotation.Param; +import org.nutz.mvc.upload.TempFile; +import org.nutz.mvc.upload.UploadAdaptor; import java.util.List; +import java.util.Locale; +import java.util.Set; @IocBean @At("/platform/club/common") @@ -36,6 +48,36 @@ public class ClubCommonController { @Inject private SysClubService sysClubService; + @Inject + private SysFileService sysFileService; + + /** + * 上传社团缩略图,限制图片大小并复用系统文件服务校验图片内容及保存文件。 + * + * @param file 用户上传的 JPG、PNG 或 GIF 图片,大小不得超过 2MB + * @return 成功时返回图片下载地址,文件无效或超过限制时返回错误提示 + */ + @At + @POST + @AdaptBy(type = UploadAdaptor.class, args = {"ioc:fileUpload"}) + @SaCheckPermission(value = {"club.register.apply", "club.infoManage.manage"}, mode = SaMode.OR) + public Result uploadThumbnail(@Param("file") TempFile file) { + if (file == null || StrUtil.isBlank(file.getSubmittedFileName())) { + return Result.error("请选择社团缩略图"); + } + if (file.getSize() > 2L * 1024 * 1024) { + return Result.error("社团缩略图大小不能超过2MB"); + } + String suffix = FileUtil.extName(file.getSubmittedFileName()).toLowerCase(Locale.ROOT); + if (!Set.of("jpg", "jpeg", "png", "gif").contains(suffix)) { + return Result.error("社团缩略图仅支持JPG、PNG、GIF图片"); + } + try { + return Result.success().addData(sysFileService.uploadReturnUrl(SysFileEngineTypeEnum.MINIO.getValue(), file)); + } catch (Exception e) { + return Result.error(e.getMessage()); + } + } @At @SaCheckLogin diff --git a/src/main/java/com/budwk/app/zhgh/club/model/SysClub.java b/src/main/java/com/budwk/app/zhgh/club/model/SysClub.java index 32a27cc..2ea042c 100644 --- a/src/main/java/com/budwk/app/zhgh/club/model/SysClub.java +++ b/src/main/java/com/budwk/app/zhgh/club/model/SysClub.java @@ -37,6 +37,11 @@ public class SysClub extends BaseModel { @NotEmpty(message = "社团名称不能为空") private String clubName; + @Column + @Comment("社团缩略图") + @ColDefine(type = ColType.VARCHAR, width = 1000) + private String thumbnail; + @Column @Comment("社团编码") @ColDefine(type = ColType.VARCHAR, width = 100) diff --git a/src/main/java/com/budwk/app/zhgh/club/service/impl/SysClubServiceImpl.java b/src/main/java/com/budwk/app/zhgh/club/service/impl/SysClubServiceImpl.java index 598d026..d2a4bf4 100644 --- a/src/main/java/com/budwk/app/zhgh/club/service/impl/SysClubServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/club/service/impl/SysClubServiceImpl.java @@ -112,11 +112,14 @@ public class SysClubServiceImpl extends BaseServiceImpl implements SysC if (StrUtil.isBlank(clubId)) { return new ClubRegisterVo(); } + // 与社团列表保持一致,按社团成员角色汇总会长、秘书长姓名,避免多名任职人员导致详情记录重复。 Sql sql = Sqls.create(""" SELECT club.*, d.NAME AS typeName, u.username concatPersonName, + (select GROUP_CONCAT(username) from sys_user where id in (select userId from club_user u where u.clubId=club.id and JSON_CONTAINS(u.roleCode, '"CLUB_PRESIDENT"'))) as clubLeader, + (select GROUP_CONCAT(username) from sys_user where id in (select userId from club_user u where u.clubId=club.id and JSON_CONTAINS(u.roleCode, '"CLUB_SECRETARY"'))) as clubSecretary, ( SELECT count( 1 ) FROM club_user scu WHERE scu.clubId = club.id ) currentPeopleNum, (select GROUP_CONCAT(username) from sys_user where id in (select sponsorId from sys_club_sponsor where clubId = club.id)) as sponsorName, (select GROUP_CONCAT(sponsorId) from sys_club_sponsor where clubId = club.id) as sponsor diff --git a/src/main/java/com/budwk/app/zhgh/club/vo/ClubRegisterVo.java b/src/main/java/com/budwk/app/zhgh/club/vo/ClubRegisterVo.java index 62c4019..e239d79 100644 --- a/src/main/java/com/budwk/app/zhgh/club/vo/ClubRegisterVo.java +++ b/src/main/java/com/budwk/app/zhgh/club/vo/ClubRegisterVo.java @@ -19,4 +19,10 @@ public class ClubRegisterVo extends SysClub { private String sponsorName; private Integer currentPeopleNum; private String sponsor; + + @ApiModelProperty("会长") + private String clubLeader; + + @ApiModelProperty("秘书长") + private String clubSecretary; } diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/h5controller/H5HealthCheckupController.java b/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/h5controller/H5HealthCheckupController.java index be0c21c..63b6821 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/h5controller/H5HealthCheckupController.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/h5controller/H5HealthCheckupController.java @@ -84,6 +84,7 @@ public class H5HealthCheckupController { Sql sql = Sqls.create(""" select *, + (select count(*) from health_checkup_project_subject subject where subject.projectId=p.id) as subjectCount, (select count(*) from health_checkup_user_selection s where s.projectId=p.id and s.selectUserId=@userId) as selectCount from health_checkup_project p @@ -121,6 +122,8 @@ public class H5HealthCheckupController { p.choiceTimeStart, p.choiceTimeEnd, p.cover, + p.healthCheckupType, + (select count(*) from health_checkup_project_subject subject where subject.projectId=p.id) as subjectCount, sub.optionName FROM health_checkup_user_selection us diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/service/impl/HealthCheckupProjectServiceImpl.java b/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/service/impl/HealthCheckupProjectServiceImpl.java index ab936fc..151f11b 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/service/impl/HealthCheckupProjectServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/service/impl/HealthCheckupProjectServiceImpl.java @@ -20,6 +20,7 @@ import org.nutz.lang.random.R; import org.nutz.lang.util.NutMap; import java.util.List; +import java.util.ArrayList; import java.util.Set; import java.util.stream.Collectors; @@ -48,7 +49,16 @@ public class HealthCheckupProjectServiceImpl extends BaseServiceImpl()); + } project.getHealthCheckupProjectSubjects().forEach(v -> { v.setSubjectMoneys(dao().query(HealthCheckupProjectSubjectMoney.class, Cnd.where("subjectId", "=", v.getId()))); }); diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/service/impl/HealthCheckupSingleServiceImpl.java b/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/service/impl/HealthCheckupSingleServiceImpl.java index 57e911a..c301234 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/service/impl/HealthCheckupSingleServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/healthCheckup/service/impl/HealthCheckupSingleServiceImpl.java @@ -29,9 +29,17 @@ public class HealthCheckupSingleServiceImpl extends BaseServiceImpl()).addv("tableColumn", new ArrayList<>()); + } Sql sql = Sqls.create(""" SELECT su.id, diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/honor/controller/HonorBoardController.java b/src/main/java/com/budwk/app/zhgh/dayofficework/honor/controller/HonorBoardController.java index 1989527..938f25e 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/honor/controller/HonorBoardController.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/honor/controller/HonorBoardController.java @@ -10,14 +10,11 @@ import org.nutz.dao.Dao; import org.nutz.dao.Sqls; import org.nutz.dao.entity.Record; import org.nutz.dao.sql.Sql; -import org.nutz.dao.util.Daos; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.util.NutMap; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; -import java.util.ArrayList; import java.util.Calendar; import java.util.List; @@ -42,36 +39,8 @@ public class HonorBoardController { @At @SaCheckPermission("honor.board") public Result getHonorTypeByYear() { - Sql sqlYear = Sqls.create(""" - select YEAR(grantDate) AS `year` from honor where grantDate is not null GROUP BY grantDate - """); - int[] yearList = (int[]) Daos.query(dao, sqlYear.toString(), Sqls.callback.ints()); - - List resultList = new ArrayList<>(); - for (int year : yearList) { - resultList.add(NutMap.NEW().addv("name", "集体荣誉").addv("num", 0).addv("year", year)); - resultList.add(NutMap.NEW().addv("name", "个人荣誉").addv("num", 0).addv("year", year)); - } - - Sql sql = Sqls.create(""" - SELECT YEAR - ( h.grantDate ) as year, - hbs.`name` - FROM - honor h - left join honor_basic_settings hbs on hbs.id = h.honorType - WHERE YEAR (h.grantDate) <= @currentYear - """); - sql.setParam("currentYear", Calendar.getInstance().get(Calendar.YEAR)); - List list = honorCommonService.listMap(sql); - - for (NutMap map : resultList) { - int year = map.getInt("year"); - String name = map.getString("name"); - long count = list.stream().filter(v -> v.getString("name").equals(name) && v.getInt("year") == year).count(); - map.setv("num", count); - } - return Result.success(resultList); + int currentYear = Calendar.getInstance().get(Calendar.YEAR); + return Result.success(honorCommonService.getHonorTypeStatisticsByYear(currentYear)); } @At diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/honor/service/HonorCommonService.java b/src/main/java/com/budwk/app/zhgh/dayofficework/honor/service/HonorCommonService.java index 153c969..7c85c2f 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/honor/service/HonorCommonService.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/honor/service/HonorCommonService.java @@ -3,6 +3,7 @@ package com.budwk.app.zhgh.dayofficework.honor.service; import com.budwk.app.base.service.BaseService; import com.budwk.app.zhgh.dayofficework.honor.models.Honor; import com.budwk.app.zhgh.dayofficework.honor.models.HonorBasicSettings; +import org.nutz.lang.util.NutMap; import java.util.List; @@ -16,4 +17,12 @@ import java.util.List; public interface HonorCommonService extends BaseService { List getHonorBasicSettingsByQueryTypeCode(String queryTypeCode); + + /** + * 按年度统计集体荣誉和个人荣誉数量。 + * + * @param currentYear 当前允许统计的最大年份,晚于该年份的数据不返回 + * @return 年度荣誉统计列表;每项包含 name(荣誉类别)、num(数量)和 year(年份) + */ + List getHonorTypeStatisticsByYear(int currentYear); } diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/honor/service/impl/HonorCommonServiceImpl.java b/src/main/java/com/budwk/app/zhgh/dayofficework/honor/service/impl/HonorCommonServiceImpl.java index dcd909c..1359b0a 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/honor/service/impl/HonorCommonServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/honor/service/impl/HonorCommonServiceImpl.java @@ -7,9 +7,16 @@ import com.budwk.app.zhgh.dayofficework.honor.models.HonorBasicSettings; import com.budwk.app.zhgh.dayofficework.honor.service.HonorCommonService; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; +import org.nutz.dao.Sqls; +import org.nutz.dao.sql.Sql; import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.Strings; +import org.nutz.lang.util.NutMap; +import java.util.ArrayList; +import java.util.LinkedHashMap; import java.util.List; +import java.util.Map; /** * @version 1.0 @@ -32,4 +39,54 @@ public class HonorCommonServiceImpl extends BaseServiceImpl implements Ho List query = dao().query(HonorBasicSettings.class, Cnd.where("parentId", "=", basicSettings.getId()).asc("`code`")); return query; } + + /** + * 按年度统计荣誉类别数量,并为每个存在荣誉数据的年度补齐集体荣誉、个人荣誉两类数据。 + * SQL 将年份显式转换为字符类型,避免部分 JDBC 驱动把 YEAR 函数结果识别为 Timestamp。 + * + * @param currentYear 当前允许统计的最大年份 + * @return 年度荣誉统计列表;每项包含 name、num、year 三个字段 + */ + @Override + public List getHonorTypeStatisticsByYear(int currentYear) { + Sql sql = Sqls.create(""" + SELECT + CAST(YEAR(h.grantDate) AS CHAR) AS honorYear, + hbs.`name` AS honorName, + COUNT(1) AS honorCount + FROM honor h + LEFT JOIN honor_basic_settings hbs ON hbs.id = h.honorType + WHERE h.grantDate IS NOT NULL + AND YEAR(h.grantDate) <= @currentYear + GROUP BY CAST(YEAR(h.grantDate) AS CHAR), hbs.`name` + ORDER BY honorYear + """); + sql.setParam("currentYear", currentYear); + List statistics = listMap(sql); + + // 每个年度固定返回两类荣誉,保证某一类别无数据时图表仍能显示 0。 + Map> statisticsByYear = new LinkedHashMap<>(); + for (NutMap statistic : statistics) { + String honorYear = statistic.getString("honorYear"); + if (Strings.isBlank(honorYear)) { + continue; + } + int year = Integer.parseInt(honorYear); + Map categoryStatistics = statisticsByYear.computeIfAbsent(year, key -> { + Map categoryMap = new LinkedHashMap<>(); + categoryMap.put("集体荣誉", 0L); + categoryMap.put("个人荣誉", 0L); + return categoryMap; + }); + String honorName = statistic.getString("honorName"); + if (categoryStatistics.containsKey(honorName)) { + categoryStatistics.put(honorName, statistic.getLong("honorCount")); + } + } + + List resultList = new ArrayList<>(); + statisticsByYear.forEach((year, categoryStatistics) -> categoryStatistics.forEach((name, count) -> + resultList.add(NutMap.NEW().addv("name", name).addv("num", count).addv("year", year)))); + return resultList; + } } diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/message/service/SliderCaptchaService.java b/src/main/java/com/budwk/app/zhgh/dayofficework/message/service/SliderCaptchaService.java new file mode 100644 index 0000000..222f270 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/message/service/SliderCaptchaService.java @@ -0,0 +1,269 @@ +package com.budwk.app.zhgh.dayofficework.message.service; + +import com.budwk.app.base.constant.RedisConstant; +import com.budwk.app.base.exception.BaseException; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.integration.jedis.RedisService; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.json.Json; +import org.nutz.lang.Strings; +import org.nutz.lang.util.NutMap; + +import javax.imageio.ImageIO; +import java.awt.BasicStroke; +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.RenderingHints; +import java.awt.geom.Area; +import java.awt.geom.Ellipse2D; +import java.awt.geom.Rectangle2D; +import java.awt.image.BufferedImage; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.util.Base64; +import java.util.UUID; + +/** + * PC 登录拼图验证码:原图仅在服务端缩放,正确横坐标只保存在 Redis。 + * 数据库事务注解遵循项目规范;Redis 状态转换的原子性由 Lua 保证。 + */ +@IocBean +public class SliderCaptchaService { + public static final String PASSWORD = "password"; + public static final String SMS = "sms"; + private static final int WIDTH = 320; + private static final int HEIGHT = 160; + private static final int PIECE_SIZE = 50; + private static final int CHALLENGE_SECONDS = 180; + private static final int TICKET_SECONDS = 60; + // PC 和手机端共用图片池:0~9 为风景,10~19 为动物,文件位于 static/captcha/slider。 + private static final String[] BACKGROUNDS = { + "0.jpg", "1.jpg", "2.jpg", "3.jpg", "4.jpg", + "5.jpg", "6.jpg", "7.jpg", "8.jpg", "9.jpg", + "10.jpg", "11.jpg", "12.jpg", "13.jpg", "14.jpg", + "15.jpg", "16.jpg", "17.jpg", "18.jpg", "19.jpg" + }; + private final SecureRandom random = new SecureRandom(); + private volatile BufferedImage[] backgrounds; + + @Inject + private RedisService redisService; + + // 计数和首次设置有效期必须同时完成,防止进程中断留下永不过期的限流键。 + private static final String RATE_SCRIPT = "local n = redis.call('INCR', KEYS[1]); " + + "if n == 1 then redis.call('EXPIRE', KEYS[1], 60) end; return n"; + + // 一个挑战仅允许提交一次。旧挑战不能删除刷新后生成的新挑战,已通过状态不能再次换票。 + private static final String VERIFY_SCRIPT = "local raw = redis.call('GET', KEYS[1]); " + + "if not raw then return 0 end; local s = cjson.decode(raw); " + + "if s.id ~= ARGV[1] or s.state ~= 'pending' then return 0 end; " + + "if math.abs(s.x - tonumber(ARGV[2])) > 4 then redis.call('DEL', KEYS[1]); return -1 end; " + + "redis.call('SETEX', KEYS[1], ARGV[4], " + + "cjson.encode({id=s.id,state='passed',ticket=ARGV[3],binding=s.binding})); return 1"; + + // 比对与删除在同一个 Redis 命令中执行,并发登录最多只能消费一次凭证。 + private static final String CONSUME_SCRIPT = "local raw = redis.call('GET', KEYS[1]); " + + "if not raw then return 0 end; local s = cjson.decode(raw); " + + "if s.state ~= 'passed' or s.id ~= ARGV[1] or s.ticket ~= ARGV[2] or s.binding ~= ARGV[3] then return 0 end; " + + "redis.call('DEL', KEYS[1]); return 1"; + + /** + * 创建当前会话的新挑战,覆盖该会话之前的挑战或登录凭证。 + * + * @param sessionId Servlet 生成的当前会话 ID,不接受前端自行指定 + * @param remoteAddress Servlet 连接的客户端 IP,用于独立于会话的请求限流 + * @param scene password 为账号登录,sms 为发送登录短信 + * @param subject password 场景传原始账号,sms 场景传已去除首尾空格的手机号 + * @return NutMap:challengeId 为挑战编号;background/piece 为图像 data URL; + * width/height/pieceSize/pieceY 为原图像素尺寸和拼图纵坐标;expiresIn 为有效秒数 + */ + @Aop(TransAop.READ_COMMITTED) + public NutMap create(String sessionId, String remoteAddress, String scene, String subject) throws IOException { + String binding = binding(scene, subject); + String sessionHash = digest(sessionId); + long ipCount = ((Number) redisService.eval(RATE_SCRIPT, 1, + RedisConstant.REDIS_SLIDER_RATE_KEY + "ip:" + digest(remoteAddress))).longValue(); + long sessionCount = ((Number) redisService.eval(RATE_SCRIPT, 1, + RedisConstant.REDIS_SLIDER_RATE_KEY + "session:" + sessionHash)).longValue(); + if (ipCount > 120 || sessionCount > 20) { + throw new BaseException("获取拼图过于频繁,请稍后再试"); + } + + BufferedImage[] images = getBackgrounds(); + BufferedImage original = images[random.nextInt(images.length)]; + // 左侧预留拖动起点,四周留边,避免拼图越界或用户无需拖动就能通过。 + int x = 60 + random.nextInt(WIDTH - PIECE_SIZE - 70); + int y = 10 + random.nextInt(HEIGHT - PIECE_SIZE - 20); + Area shape = new Area(new Rectangle2D.Double(0, 8, 42, 42)); + shape.add(new Area(new Ellipse2D.Double(13, 0, 16, 16))); + shape.add(new Area(new Ellipse2D.Double(34, 21, 16, 16))); + shape.subtract(new Area(new Ellipse2D.Double(-8, 21, 16, 16))); + + BufferedImage background = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB); + Graphics2D bg = background.createGraphics(); + try { + bg.drawImage(original, 0, 0, null); + bg.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); + bg.translate(x, y); + bg.setColor(new Color(0, 0, 0, 170)); + bg.fill(shape); + bg.setColor(new Color(255, 255, 255, 210)); + bg.setStroke(new BasicStroke(1.5f)); + bg.draw(shape); + } finally { + bg.dispose(); + } + BufferedImage piece = new BufferedImage(PIECE_SIZE, PIECE_SIZE, BufferedImage.TYPE_INT_ARGB); + Graphics2D pg = piece.createGraphics(); + try { + pg.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); + pg.setClip(shape); + pg.drawImage(original, -x, -y, null); + pg.setClip(null); + pg.setColor(Color.WHITE); + pg.setStroke(new BasicStroke(1.5f)); + pg.draw(shape); + } finally { + pg.dispose(); + } + + String challengeId = newId(); + NutMap response = NutMap.NEW().addv("challengeId", challengeId) + .addv("background", imageUrl(background, "jpg")) + .addv("piece", imageUrl(piece, "png")) + .addv("width", WIDTH).addv("height", HEIGHT) + .addv("pieceSize", PIECE_SIZE).addv("pieceY", y) + .addv("expiresIn", CHALLENGE_SECONDS); + redisService.setex(RedisConstant.REDIS_SLIDER_CAPTCHA_KEY + sessionHash, CHALLENGE_SECONDS, + Json.toJson(NutMap.NEW().addv("id", challengeId).addv("state", "pending").addv("x", x).addv("binding", binding))); + return response; + } + + /** + * 校验拖动位置并签发登录凭证,失败后当前挑战作废。 + * + * @param sessionId 当前 Servlet 会话 ID + * @param challengeId create 返回的 32 位挑战编号 + * @param offset 拼图左边缘在原图中的横坐标,前端需将显示像素换算为原图像素 + * @return NutMap:platformKey 为挑战编号,platformCaptcha 为随机的一次性凭证,expiresIn 为有效秒数 + */ + @Aop(TransAop.READ_COMMITTED) + public NutMap verify(String sessionId, String challengeId, double offset) { + if (!validId(challengeId) || !Double.isFinite(offset) || offset < 0 || offset > WIDTH - PIECE_SIZE) { + throw new BaseException("拼图参数不正确,请重新获取"); + } + String ticket = newId(); + long result = ((Number) redisService.eval(VERIFY_SCRIPT, 1, + RedisConstant.REDIS_SLIDER_CAPTCHA_KEY + digest(sessionId), challengeId, + Double.toString(offset), ticket, Integer.toString(TICKET_SECONDS))).longValue(); + if (result != 1) { + throw new BaseException(result == -1 ? "未对齐缺口,请重新验证" : "拼图已失效,请重新验证"); + } + return NutMap.NEW().addv("platformKey", challengeId).addv("platformCaptcha", ticket) + .addv("expiresIn", TICKET_SECONDS); + } + + /** + * PC 账号认证之前消费拼图凭证。无返回值代表校验通过,失败抛出验证码认证异常。 + * + * @param sessionId 当前 Servlet 会话 ID,保证其他会话不能使用此凭证 + * @param challengeId 登录参数 platformKey,取自 verify 的返回结果 + * @param ticket 登录参数 platformCaptcha,必须为 verify 签发的一次性凭证 + * @param scene 本次操作用途 password 或 sms,不能跨用途使用 + * @param subject 本次操作的账号或手机号,必须与创建挑战时一致 + */ + @Aop(TransAop.READ_COMMITTED) + public void consume(String sessionId, String challengeId, String ticket, String scene, String subject) { + if (Strings.isBlank(challengeId) || Strings.isBlank(ticket)) { + throw new BaseException("请先完成拼图验证"); + } + if (!validId(challengeId) || !validId(ticket)) { + throw new BaseException("拼图验证已失效,请重新验证"); + } + long result = ((Number) redisService.eval(CONSUME_SCRIPT, 1, + RedisConstant.REDIS_SLIDER_CAPTCHA_KEY + digest(sessionId), challengeId, ticket, binding(scene, subject))).longValue(); + if (result != 1) { + throw new BaseException("拼图验证已失效,请重新验证"); + } + } + + /** 将用途与账号绑定到摘要中,防止验证后换号或跨用途消费;不在 Redis 保存账号明文。 */ + private String binding(String scene, String subject) { + if ((!PASSWORD.equals(scene) && !SMS.equals(scene)) || Strings.isBlank(subject) + || subject.length() > 200 || (SMS.equals(scene) && !subject.matches("^1[3-9]\\d{9}$"))) { + throw new BaseException("请先填写正确的账号或手机号"); + } + return digest(scene + ":" + subject); + } + + /** 缩小后的原图只缓存一份且不再修改;使用资源流以兼容 JAR 部署。 */ + private BufferedImage[] getBackgrounds() throws IOException { + if (backgrounds == null) { + synchronized (this) { + if (backgrounds == null) { + BufferedImage[] loaded = new BufferedImage[BACKGROUNDS.length]; + for (int i = 0; i < BACKGROUNDS.length; i++) { + try (InputStream input = SliderCaptchaService.class.getResourceAsStream( + "/static/captcha/slider/" + BACKGROUNDS[i])) { + if (input == null) { + throw new IOException("拼图背景资源缺失:" + BACKGROUNDS[i]); + } + BufferedImage source = ImageIO.read(input); + if (source == null) { + throw new IOException("拼图背景无法读取:" + BACKGROUNDS[i]); + } + loaded[i] = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB); + Graphics2D graphics = loaded[i].createGraphics(); + try { + graphics.setRenderingHint(RenderingHints.KEY_INTERPOLATION, + RenderingHints.VALUE_INTERPOLATION_BICUBIC); + graphics.drawImage(source, 0, 0, WIDTH, HEIGHT, null); + } finally { + graphics.dispose(); + } + } + } + backgrounds = loaded; + } + } + } + return backgrounds; + } + + private String imageUrl(BufferedImage image, String format) throws IOException { + ByteArrayOutputStream output = new ByteArrayOutputStream(); + if (!ImageIO.write(image, format, output)) { + throw new IOException("不支持的拼图编码:" + format); + } + return "data:image/" + ("jpg".equals(format) ? "jpeg" : format) + ";base64," + + Base64.getEncoder().encodeToString(output.toByteArray()); + } + + private String newId() { + return UUID.randomUUID().toString().replace("-", ""); + } + + private boolean validId(String value) { + return value != null && value.matches("[a-f0-9]{32}"); + } + + /** Redis 键中不暴露原始会话 ID 或 IP,也避免外部字符影响键结构。 */ + private String digest(String value) { + if (Strings.isBlank(value)) { + throw new BaseException("会话已失效,请刷新登录页面"); + } + try { + byte[] bytes = MessageDigest.getInstance("SHA-256").digest(value.getBytes(StandardCharsets.UTF_8)); + return Base64.getUrlEncoder().withoutPadding().encodeToString(bytes); + } catch (NoSuchAlgorithmException e) { + throw new IllegalStateException("无法计算拼图会话标识", e); + } + } +} diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/message/service/TencentSmsService.java b/src/main/java/com/budwk/app/zhgh/dayofficework/message/service/TencentSmsService.java new file mode 100644 index 0000000..b0f7590 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/message/service/TencentSmsService.java @@ -0,0 +1,23 @@ +package com.budwk.app.zhgh.dayofficework.message.service; + +/** + * 腾讯云登录验证码短信服务,与校内通讯平台的业务通知短信分别配置。 + */ +public interface TencentSmsService { + + /** + * 校验登录短信开关和腾讯云必填配置,配置缺失时禁止生成有效验证码。 + * + * @throws com.budwk.app.base.exception.BaseException 未启用短信或缺少凭证、签名、应用及模板配置 + */ + void checkLoginConfiguration(); + + /** + * 向单个已绑定账号的大陆手机号发送登录验证码。 + * + * @param mobile 不带 +86 的 11 位大陆手机号,由登录业务层完成账号绑定及停用校验 + * @param code 六位数字验证码,作为登录短信模板的唯一变量 + * @throws com.budwk.app.base.exception.BaseException 配置无效、腾讯云调用失败或目标号码发送状态不为 Ok + */ + void sendLoginCode(String mobile, String code); +} diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/message/service/impl/TencentSmsServiceImpl.java b/src/main/java/com/budwk/app/zhgh/dayofficework/message/service/impl/TencentSmsServiceImpl.java new file mode 100644 index 0000000..1aad1de --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/message/service/impl/TencentSmsServiceImpl.java @@ -0,0 +1,147 @@ +package com.budwk.app.zhgh.dayofficework.message.service.impl; + +import com.budwk.app.base.exception.BaseException; +import com.budwk.app.zhgh.dayofficework.message.service.TencentSmsService; +import com.tencentcloudapi.common.Credential; +import com.tencentcloudapi.common.exception.TencentCloudSDKException; +import com.tencentcloudapi.common.profile.ClientProfile; +import com.tencentcloudapi.common.profile.HttpProfile; +import com.tencentcloudapi.sms.v20190711.SmsClient; +import com.tencentcloudapi.sms.v20190711.models.SendSmsRequest; +import com.tencentcloudapi.sms.v20190711.models.SendSmsResponse; +import com.tencentcloudapi.sms.v20190711.models.SendStatus; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.impl.PropertiesProxy; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.Strings; +import org.nutz.log.Log; +import org.nutz.log.Logs; + +/** + * 沿用参考项目的腾讯云 v20190711 SDK、+86 号码和单变量登录模板。 + */ +@IocBean +public class TencentSmsServiceImpl implements TencentSmsService { + private static final Log log = Logs.get(); + + @Inject + private PropertiesProxy conf; + + /** {@inheritDoc} */ + @Override + public void checkLoginConfiguration() { + if (!conf.getBoolean("sms.enabled", false)) { + throw new BaseException("短信登录暂未启用,请使用账号密码登录"); + } + requiredConfig("sms.tencent.secret-id"); + requiredConfig("sms.tencent.secret-key"); + requiredConfig("sms.tencent.appid"); + requiredConfig("sms.tencent.sign"); + requiredConfig("sms.tencent.tpl.login_code"); + } + + /** {@inheritDoc} */ + @Override + @Aop(TransAop.READ_COMMITTED) + public void sendLoginCode(String mobile, String code) { + if (mobile == null || !mobile.matches("^1[3-9]\\d{9}$") + || code == null || !code.matches("^\\d{6}$")) { + throw new BaseException("短信手机号或验证码格式不正确"); + } + checkLoginConfiguration(); + // 单调时钟统计本次 SDK 调用(含客户端初始化)的耗时,不受系统时间校准影响。 + long startedAt = System.nanoTime(); + try { + Credential credential = new Credential(requiredConfig("sms.tencent.secret-id"), requiredConfig("sms.tencent.secret-key")); + HttpProfile httpProfile = new HttpProfile(); + httpProfile.setEndpoint("sms.tencentcloudapi.com"); + // 超时应小于发送锁有效期,避免慢请求与下一次重发同时写入验证码。 + httpProfile.setConnTimeout(5); + httpProfile.setReadTimeout(10); + httpProfile.setWriteTimeout(10); + ClientProfile profile = new ClientProfile(); + profile.setHttpProfile(httpProfile); + SmsClient client = new SmsClient(credential, conf.get("sms.tencent.region", "ap-guangzhou"), profile); + + SendSmsRequest request = new SendSmsRequest(); + request.setSmsSdkAppid(requiredConfig("sms.tencent.appid")); + request.setSign(requiredConfig("sms.tencent.sign")); + request.setTemplateID(requiredConfig("sms.tencent.tpl.login_code")); + request.setPhoneNumberSet(new String[]{"+86" + mobile}); + request.setTemplateParamSet(new String[]{code}); + checkSendStatus(client.SendSms(request), "+86" + mobile); + } catch (TencentCloudSDKException e) { + // SDK 网络异常可能没有 errorCode,实际异常类型及原因保存在 message 中。 + // 各字段先脱敏再输出,不直接打印异常对象,避免原始消息中的敏感信息进入日志。 + long elapsedMillis = (System.nanoTime() - startedAt) / 1_000_000L; + log.warnf("腾讯云登录短信调用失败,code=%s,requestId=%s,elapsedMs=%s,reason=%s", + sanitizeDiagnostic(e.getErrorCode(), mobile, code), + sanitizeDiagnostic(e.getRequestId(), mobile, code), elapsedMillis, + sanitizeDiagnostic(e.getMessage(), mobile, code)); + throw new BaseException("短信发送失败,请稍后重试或联系管理员"); + } + } + + /** + * 保留 SDK 异常诊断信息,移除可能夹带的凭证、手机号与短信码,并限制为单行日志。 + * + * @param value SDK 返回的错误码、请求编号或异常消息,空值显示为 unavailable + * @param mobile 本次发送的大陆手机号,禁止在诊断字段中原样输出 + * @param code 本次发送的六位短信验证码,禁止在诊断字段中原样输出 + * @return 已脱敏的单行文本,最长 1000 个字符,超长内容附加省略标记 + */ + private String sanitizeDiagnostic(String value, String mobile, String code) { + if (Strings.isBlank(value)) { + return "unavailable"; + } + String sanitized = value; + String[] sensitiveValues = {Strings.trim(conf.get("sms.tencent.secret-id", "")), + Strings.trim(conf.get("sms.tencent.secret-key", "")), mobile, code}; + for (String sensitive : sensitiveValues) { + if (!Strings.isBlank(sensitive)) { + sanitized = sanitized.replace(sensitive, "[REDACTED]"); + } + } + // 同时遮盖异常文本中其他大陆手机号、签名及授权字段;先脱敏,再截断。 + sanitized = sanitized.replaceAll("(? 1000 ? sanitized.substring(0, 1000) + "..." : sanitized; + } + + /** + * 核对单号码业务发送状态,HTTP 调用成功不代表短信发送成功。 + * + * @param response 腾讯云发送响应,必须恰有一个与请求号码相同的成功状态 + * @param phoneNumber 请求中的 +86 国际格式号码 + */ + private void checkSendStatus(SendSmsResponse response, String phoneNumber) { + SendStatus[] statuses = response == null ? null : response.getSendStatusSet(); + if (statuses == null || statuses.length != 1 || statuses[0] == null + || !"Ok".equals(statuses[0].getCode()) + || !phoneNumber.equals(statuses[0].getPhoneNumber())) { + String statusCode = statuses != null && statuses.length > 0 && statuses[0] != null + ? statuses[0].getCode() : "EmptyStatus"; + log.warnf("腾讯云登录短信未发送成功,code=%s,requestId=%s", statusCode, + response == null ? "" : response.getRequestId()); + throw new BaseException("短信发送失败,请稍后重试或联系管理员"); + } + } + + /** + * 获取必填腾讯云配置,错误提示仅包含配置名称。 + * + * @param key sms.tencent 下的完整配置键 + * @return 去除首尾空格的非空配置值 + */ + private String requiredConfig(String key) { + String value = Strings.trim(conf.get(key, "")); + if (Strings.isBlank(value)) { + throw new BaseException("短信服务配置不完整,请联系管理员检查 " + key); + } + return value; + } +} diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseApplyController.java b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseApplyController.java index fe93d84..6829946 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseApplyController.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseApplyController.java @@ -313,4 +313,15 @@ public class UnionReimburseApplyController { public Result getBudgetBalance(String reimburseFundSource, String clubId) { return unionReimburseService.getBudgetBalance(reimburseFundSource, clubId, null); } + + /** + * 查询可申请社团经费报销的社团。 + * + * @return 全部未解散社团列表 + */ + @At + @SaCheckPermission(value = {"unionReimburse.apply", "h5.unionReimburse.apply"}, mode = SaMode.OR) + public Result listReimburseClubs() { + return Result.success(unionReimburseService.listReimburseClubs()); + } } diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseCollectController.java b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseCollectController.java index 4c88fba..cb0de5a 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseCollectController.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseCollectController.java @@ -121,6 +121,16 @@ public class UnionReimburseCollectController { applyListSort(cnd, pageForm); sql.setCondition(cnd); Pagination pagination = unionReimburseService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + // 复用打印流水号,按当日全部申请排序,避免分页或筛选改变编号。 + for (NutMap row : pagination.getList()) { + UnionReimburse form = new UnionReimburse(); + form.setId(row.getString("id")); + // SQL映射可能返回日期字符串,兼容日期对象后再参与流水号计算。 + Object createTime = row.get("createTime"); + form.setCreateTime(createTime instanceof java.util.Date ? (java.util.Date) createTime + : (createTime == null ? null : DateUtil.parse(createTime.toString()))); + row.put("serialNo", unionReimburseExportService.buildPrintSerialNo(form)); + } return Result.success(pagination); } @@ -166,6 +176,7 @@ public class UnionReimburseCollectController { WHEN rei.reimburseProject = 'UNION_REIMBURSE_PROJECT_2' THEN '文体活动' WHEN rei.reimburseProject = 'UNION_REIMBURSE_PROJECT_3' THEN '日常活动' WHEN rei.reimburseProject = 'UNION_REIMBURSE_PROJECT_4' THEN '专项活动' + WHEN rei.reimburseProject = 'UNION_REIMBURSE_PROJECT_5' THEN '社团活动' ELSE rei.reimburseProject END as reimbursementItemName, u.mobile @@ -249,6 +260,8 @@ public class UnionReimburseCollectController { .orElse(null); if (projectDict != null) { item.setReimburseProject(projectDict.getName()); + } else if ("UNION_REIMBURSE_PROJECT_5".equals(item.getReimburseProject())) { + item.setReimburseProject("社团活动"); } } // 转换报销经费来源 diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseReviewController.java b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseReviewController.java index 9a223ed..f2c7d08 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseReviewController.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/controller/UnionReimburseReviewController.java @@ -2,6 +2,7 @@ package com.budwk.app.zhgh.dayofficework.unionReimburse.controller; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaMode; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.budwk.app.base.annotation.SLog; import com.budwk.app.base.page.Pagination; @@ -10,6 +11,7 @@ import com.budwk.app.base.result.Result; import com.budwk.app.base.utils.PageUtil; import com.budwk.app.zhgh.dayofficework.unionReimburse.model.UnionReimburse; import com.budwk.app.zhgh.dayofficework.unionReimburse.service.UnionReimburseService; +import com.budwk.app.zhgh.dayofficework.unionReimburse.service.UnionReimburseExportService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.nutz.aop.interceptor.ioc.TransAop; @@ -36,6 +38,9 @@ public class UnionReimburseReviewController { @Inject private UnionReimburseService unionReimburseService; + @Inject + private UnionReimburseExportService unionReimburseExportService; + @At("/index") @Ok("beetl:/platform/zhgh/dayofficework/unionReimburse/review/index.html") @SaCheckPermission("unionReimburse.review") @@ -88,6 +93,16 @@ public class UnionReimburseReviewController { cnd.desc("info.createdAt"); sql.setCondition(cnd); Pagination pagination = unionReimburseService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + // 复用打印流水号,按当日全部申请排序,避免分页或筛选改变编号。 + for (NutMap row : pagination.getList()) { + UnionReimburse form = new UnionReimburse(); + form.setId(row.getString("id")); + // SQL映射可能返回日期字符串,兼容日期对象后再参与流水号计算。 + Object createTime = row.get("createTime"); + form.setCreateTime(createTime instanceof java.util.Date ? (java.util.Date) createTime + : (createTime == null ? null : DateUtil.parse(createTime.toString()))); + row.put("serialNo", unionReimburseExportService.buildPrintSerialNo(form)); + } return Result.success(pagination); } diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/UnionReimburseExportService.java b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/UnionReimburseExportService.java index fa63f76..7fc7e99 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/UnionReimburseExportService.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/UnionReimburseExportService.java @@ -6,8 +6,9 @@ import java.util.Map; /** 工会报销活动及慰问审批单共用的导出服务。 */ public interface UnionReimburseExportService { /** + * 我的慰问按类型使用专用模板,没有对应模板映射时拒绝导出,不回退通用慰问模板。 * @param id 当前登录人已提交的报销单ID,不接受其他人的单据或待提交单据 - * @return 完整PDF字节数组,模板或转换失败时抛出业务异常 + * @return 按慰问类型选择专用模板生成的完整PDF字节数组,活动沿用原模板;类型、模板或转换失败时抛出业务异常 */ byte[] exportPdf(String id); @@ -23,4 +24,11 @@ public interface UnionReimburseExportService { * @return 活动及慰问模板通用的平铺字段及 payments、invoices 循环行 */ Map buildExportData(UnionReimburse form); + + /** + * 列表与打印共用按申请日期及当日申请时间排序的流水号,历史申请参与相同排序。 + * @param form 报销申请,必须包含申请时间和单据ID + * @return 年月日加至少三位当日序号,例如20261009001;缺少必要字段或申请不存在时抛出业务异常 + */ + String buildPrintSerialNo(UnionReimburse form); } diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/UnionReimburseService.java b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/UnionReimburseService.java index 138f5a0..2d272ba 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/UnionReimburseService.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/UnionReimburseService.java @@ -58,10 +58,17 @@ public interface UnionReimburseService extends BaseService { Result recognizeInvoice(String fileId, Boolean verifySwitch); /** - * 查询报销可用经费余额,同时校验是否已分配以及协会归属权限。 + * 查询报销可用经费余额,同时校验是否已分配、经费来源权限及社团有效性。 */ Result getBudgetBalance(String reimburseFundSource, String clubId, String unionId); + /** + * 查询未解散社团,供社团经费报销选择。 + * + * @return 全部未解散社团的ID、名称和编码列表 + */ + List listReimburseClubs(); + /** * 审核报销,审核通过时扣减对应预算并新增预算使用详情。 */ diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/impl/UnionReimburseExportServiceImpl.java b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/impl/UnionReimburseExportServiceImpl.java index 6cca083..46bedab 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/impl/UnionReimburseExportServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/impl/UnionReimburseExportServiceImpl.java @@ -7,6 +7,8 @@ import com.budwk.app.base.constant.RoleConstant; import com.budwk.app.web.commons.auth.utils.AuthUtil; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; +import org.nutz.dao.Sqls; +import org.nutz.dao.sql.Sql; import com.budwk.app.base.exception.BaseException; import com.budwk.app.base.utils.MoneyUtil; import com.budwk.app.base.utils.OfficePlusUtil; @@ -20,23 +22,10 @@ import com.budwk.app.zhgh.staffbenefit.condolence.model.CondolenceType; import com.deepoove.poi.XWPFTemplate; import com.deepoove.poi.config.Configure; import com.deepoove.poi.plugin.table.LoopRowTableRenderPolicy; -import com.deepoove.poi.data.PictureType; -import com.deepoove.poi.data.Pictures; -import com.deepoove.poi.template.ElementTemplate; -import com.google.zxing.*; -import com.google.zxing.client.j2se.BufferedImageLuminanceSource; -import com.google.zxing.client.j2se.MatrixToImageWriter; -import com.google.zxing.common.HybridBinarizer; -import com.google.zxing.qrcode.QRCodeWriter; -import com.google.zxing.qrcode.QRCodeReader; -import org.apache.poi.xwpf.usermodel.*; -import org.apache.poi.util.Units; -import javax.imageio.ImageIO; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; import lombok.extern.slf4j.Slf4j; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.util.NutMap; import java.io.InputStream; import java.io.OutputStream; import java.math.BigDecimal; @@ -51,7 +40,7 @@ public class UnionReimburseExportServiceImpl implements UnionReimburseExportServ public static final String ACTIVITY_TEMPLATE = "union_reimburse_activity_pdf"; public static final String CONDOLENCE_TEMPLATE = "union_reimburse_condolence_pdf"; // 使用慰问类型业务编码匹配模板,避免类型名称调整后选择错误;编码与现有申请页一致。 - private static final Map COLLECT_CONDOLENCE_TEMPLATES = Map.of( + private static final Map CONDOLENCE_TEMPLATES = Map.of( "A", "union_reimburse_condolence_marriage_pdf", "D", "union_reimburse_condolence_birth_pdf", "E", "union_reimburse_condolence_hospital_pdf", @@ -64,7 +53,7 @@ public class UnionReimburseExportServiceImpl implements UnionReimburseExportServ @Inject private Dao dao; - /** 当前“我的报销”导出仅允许单据经办人,状态白名单与页面按钮保持一致。 */ + /** 当前“我的报销”导出仅允许单据经办人,状态白名单与页面按钮保持一致,慰问按类型使用专用模板。 */ @Override public byte[] exportPdf(String id) { return renderDocument(loadExportForm(id, false, false), true, false); @@ -112,29 +101,34 @@ public class UnionReimburseExportServiceImpl implements UnionReimburseExportServ } /** - * 汇总页五类慰问使用独立模板,其余类型和我的报销沿用原模板。 + * 我的报销与汇总页共用五类慰问专用模板映射,活动沿用原模板。 * @param form 已通过数据权限校验的报销单,使用慰问类型 ID 读取业务编码 - * @param collectPrint 是否为汇总页打印,只有该入口启用分类模板 - * @return 系统导出模板管理中的模板编码;类型关联缺失时提示核对,不猜测类型名称 + * @param collectPrint 是否为汇总页打印,仅该入口保留五类之外慰问的原通用模板兜底 + * @return 系统导出模板管理中的模板编码;类型关联缺失或我的慰问无专用模板映射时抛出业务异常 */ private String resolveTemplateCode(UnionReimburse form, boolean collectPrint) { if (!"UNION_REIMBURSE_PROJECT_1".equals(form.getReimburseProject())) { return ACTIVITY_TEMPLATE; } - if (!collectPrint) { - return CONDOLENCE_TEMPLATE; - } // 兼容旧申请将类型 ID 保存在 condolenceType 的情况,不回写历史数据。 String typeId = StrUtil.blankToDefault(form.getCondolenceTypeId(), form.getCondolenceType()); CondolenceType type = StrUtil.isBlank(typeId) ? null : dao.fetch(CondolenceType.class, typeId); if (type == null || StrUtil.isBlank(type.getCode())) { throw new BaseException("慰问类型不存在或编码为空,请核对后打印"); } - // 五类之外的既有慰问继续使用通用模板;已匹配的专用模板缺失时由模板加载器明确报错。 - return COLLECT_CONDOLENCE_TEMPLATES.getOrDefault(type.getCode(), CONDOLENCE_TEMPLATE); + // 两个入口按相同业务编码选择专用模板,模板文件缺失时由模板加载器明确报错。 + String templateCode = CONDOLENCE_TEMPLATES.get(type.getCode()); + if (templateCode != null) { + return templateCode; + } + // 我的慰问禁止回退通用模板,未配置映射的类型明确提示;汇总页保留原有兜底规则。 + if (!collectPrint) { + throw new BaseException("当前慰问类型未配置专用导出模板,请联系管理员核对"); + } + return CONDOLENCE_TEMPLATE; } - /** 模板共用字段和循环行配置;汇总打印按慰问类型选模板并补充编号二维码。 */ + /** 两个入口按慰问类型选模板并共用流水号字段和循环行配置,不再生成二维码。 */ private byte[] renderDocument(UnionReimburse form, boolean asPdf, boolean collectPrint) { String templateCode = resolveTemplateCode(form, collectPrint); Path docx = null; @@ -152,9 +146,6 @@ public class UnionReimburseExportServiceImpl implements UnionReimburseExportServ XWPFTemplate template = XWPFTemplate.compile(input, config); OutputStream output = Files.newOutputStream(docx)) { Map data = buildExportData(form); - if (collectPrint) { - prepareCollectQrCode(template, data, form.getDocumentNo()); - } template.render(data).write(output); } if (!asPdf) { @@ -188,71 +179,41 @@ public class UnionReimburseExportServiceImpl implements UnionReimburseExportServ } /** - * 汇总打印沿用老系统的单据编号二维码,仅修改本次生成的文档,不覆盖模板。 - * @param template 当前已编译模板,优先使用 qrcode 图片标记,其次替换标题区的固定二维码 - * @param data 本次渲染数据,qrcode 字段为 80×80 的 PNG 图片对象 - * @param documentNo 原始单据编号,缺失时拒绝打印,避免用业务 ID 冒充编号 + * 按申请日期和当日申请时间顺序生成打印流水号,六类模板使用同一编号口径。 + * 历史单据也按申请时间参与排序,同一秒内用创建时间及主键确定顺序; + * 不按打印顺序编号,也不按当前用户或报销状态过滤申请。 + * + * @param form 报销申请,使用其单据ID读取数据库中的申请日期 + * @return 年月日加至少三位当日序号,例如 20261009001 */ - private void prepareCollectQrCode(XWPFTemplate template, Map data, - String documentNo) throws Exception { - if (StrUtil.isBlank(documentNo)) { - throw new BaseException("报销单编号为空,无法生成打印二维码,请先核对单据编号"); + @Override + public String buildPrintSerialNo(UnionReimburse form) { + if (form == null || StrUtil.isBlank(form.getId())) { + throw new BaseException("报销单据ID为空,无法生成打印流水号"); } - var matrix = new QRCodeWriter().encode(documentNo, BarcodeFormat.QR_CODE, 80, 80); - var image = MatrixToImageWriter.toBufferedImage(matrix); - data.put("qrcode", Pictures.ofBufferedImage(image, PictureType.PNG).size(80, 80).create()); - boolean hasTag = template.getElementTemplates().stream() - .anyMatch(item -> item instanceof ElementTemplate - && "qrcode".equals(((ElementTemplate) item).getTagName())); - if (hasTag) { - return; + // 日期范围和编号前缀均取数据库原值,避免Java日期转换及参数绑定影响当天范围。 + // 先对目标申请当天的全部单据排序,再筛选目标ID,保持审核、汇总和打印的编号一致。 + Sql sql = Sqls.create(""" + SELECT DATE_FORMAT(numbered.createTime, '%Y%m%d') AS serialDate, numbered.seq + FROM ( + SELECT info.id, info.createTime, + ROW_NUMBER() OVER (ORDER BY info.createTime, info.createdAt, info.id) AS seq + FROM union_reimburse info + INNER JOIN union_reimburse target ON target.id = @id + WHERE info.createTime >= DATE(target.createTime) + AND info.createTime < DATE_ADD(DATE(target.createTime), INTERVAL 1 DAY) + ) numbered + WHERE numbered.id = @id + """); + sql.setParam("id", form.getId()); + sql.setCallback(Sqls.callback.map()); + dao.execute(sql); + NutMap result = sql.getObject(NutMap.class); + if (result == null || !(result.get("seq") instanceof Number sequence) + || sequence.longValue() < 1 || StrUtil.isBlank(result.getString("serialDate"))) { + throw new BaseException("未找到报销申请或申请时间为空,无法生成打印流水号"); } - ByteArrayOutputStream bytes = new ByteArrayOutputStream(); - ImageIO.write(image, "png", bytes); - XWPFDocument document = template.getXWPFDocument(); - // 部分现用模板内嵌了固定二维码。仅识别第一张业务表格之前的二维码,保留徽标等普通图片。 - boolean replaced = false; - for (IBodyElement element : document.getBodyElements()) { - if (element instanceof XWPFTable) break; - if (!(element instanceof XWPFParagraph)) continue; - for (XWPFRun run : ((XWPFParagraph) element).getRuns()) { - for (XWPFPicture picture : run.getEmbeddedPictures()) { - if (picture.getPictureData() == null) continue; - var existing = ImageIO.read(new ByteArrayInputStream(picture.getPictureData().getData())); - if (existing == null) continue; - try { - new QRCodeReader().decode(new BinaryBitmap(new HybridBinarizer( - new BufferedImageLuminanceSource(existing)))); - } catch (NotFoundException | ChecksumException | FormatException e) { - continue; - } - String relationship = document.addPictureData(bytes.toByteArray(), Document.PICTURE_TYPE_PNG); - picture.getCTPicture().getBlipFill().getBlip().setEmbed(relationship); - replaced = true; - } - } - } - if (replaced) return; - // 无二维码标记或固定二维码的模板,在正文开头添加右对齐图片,不依赖模板重新上传。 - XWPFParagraph paragraph; - if (document.getBodyElements().isEmpty()) { - paragraph = document.createParagraph(); - } else { - IBodyElement first = document.getBodyElements().get(0); - var cursor = first instanceof XWPFParagraph - ? ((XWPFParagraph) first).getCTP().newCursor() - : ((XWPFTable) first).getCTTbl().newCursor(); - try { - paragraph = document.insertNewParagraph(cursor); - } finally { - cursor.dispose(); - } - } - paragraph.setAlignment(ParagraphAlignment.RIGHT); - paragraph.setSpacingBefore(0); - paragraph.setSpacingAfter(0); - paragraph.createRun().addPicture(new ByteArrayInputStream(bytes.toByteArray()), - Document.PICTURE_TYPE_PNG, "qrcode.png", Units.pixelToEMU(80), Units.pixelToEMU(80)); + return result.getString("serialDate") + String.format(Locale.ROOT, "%03d", sequence.longValue()); } /** 平铺字段供两类模板复用,支付总额与发票总额分别计算,不使用第一条支付代替全部明细。 */ @@ -261,8 +222,11 @@ public class UnionReimburseExportServiceImpl implements UnionReimburseExportServ Map data = new LinkedHashMap<>(); data.put("date", date(form.getCreateTime())); data.put("no", text(form.getDocumentNo())); + data.put("serialNo", buildPrintSerialNo(form)); String unit = text(form.getUnitName()); - data.put("union", text(form.getUnionName()) + (unit.isEmpty() ? "" : "(" + unit + ")")); + data.put("union", "UNION_REIMBURSE_FUND_SOURCE_3".equals(form.getReimburseFundSource()) + ? text(form.getClubName()) + : text(form.getUnionName()) + (unit.isEmpty() ? "" : "(" + unit + ")")); data.put("handler", text(form.getUserName())); data.put("login", text(form.getLoginName())); data.put("phone", text(form.getMobile())); @@ -271,6 +235,9 @@ public class UnionReimburseExportServiceImpl implements UnionReimburseExportServ + ("UNION_REIMBURSE_PROJECT_1".equals(project) ? "√" : "□") + "慰问 " + ("UNION_REIMBURSE_PROJECT_3".equals(project) ? "√" : "□") + "日常活动 " + ("UNION_REIMBURSE_PROJECT_4".equals(project) ? "√" : "□") + "专项活动"); + if ("UNION_REIMBURSE_PROJECT_5".equals(project)) { + data.put("project", "√社团活动"); + } data.put("activity", text(form.getActivityName())); data.put("reason", text(form.getPaymentNotes())); data.put("notes", text(form.getNotes())); diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/impl/UnionReimburseServiceImpl.java b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/impl/UnionReimburseServiceImpl.java index e400313..fbaa7f7 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/impl/UnionReimburseServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/unionReimburse/service/impl/UnionReimburseServiceImpl.java @@ -11,7 +11,6 @@ import com.budwk.app.base.service.impl.BaseServiceImpl; import com.budwk.app.sys.models.Sys_file; import com.budwk.app.sys.views.View_user; import com.budwk.app.sys.services.SysFileService; -import com.budwk.app.zhgh.club.model.ClubUser; import com.budwk.app.zhgh.dayofficework.outlay.outlayManage.club.model.OutlayManageClub; import com.budwk.app.zhgh.dayofficework.outlay.outlayManage.model.OutlayUseDetail; import com.budwk.app.zhgh.dayofficework.outlay.outlayManage.school.model.OutlayManageSchool; @@ -148,6 +147,10 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i if (amountResult != null) { return amountResult; } + Result activityAmountResult = validateActivityApplyMoney(unionReimburse); + if (activityAmountResult != null) { + return activityAmountResult; + } UnionReimburse oldRecord = null; if (StrUtil.isNotBlank(unionReimburse.getId())) { oldRecord = this.fetch(unionReimburse.getId()); @@ -159,6 +162,18 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i } } + Result sourceResult = validateApplicantFundSource(unionReimburse); + if (sourceResult != null) { + return sourceResult; + } + if (oldRecord != null + && ("UNION_REIMBURSE_FUND_SOURCE_3".equals(oldRecord.getReimburseFundSource()) + || "UNION_REIMBURSE_FUND_SOURCE_3".equals(unionReimburse.getReimburseFundSource())) + && !Integer.valueOf(1).equals(oldRecord.getStateId()) + && !Integer.valueOf(5).equals(oldRecord.getStateId())) { + return Result.error("社团报销仅允许修改草稿或退回的申请"); + } + // 人员身份和敏感资料由服务端补齐,避免前端删减字段导致丢失或被篡改。 if (oldRecord == null) { View_user handler = dao().fetch(View_user.class, Cnd.where("id", "=", SecurityUtil.getUserId())); @@ -487,10 +502,19 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i } /** - * 按经费来源统一查询当前可用余额,未分配或权限不匹配时直接拦截。 + * 按经费来源统一查询当前可用余额,经费来源权限由前端按钮控制。 */ @Override public Result getBudgetBalance(String reimburseFundSource, String clubId, String unionId) { + if ("UNION_REIMBURSE_FUND_SOURCE_3".equals(reimburseFundSource) + && listReimburseClubs().stream().noneMatch(club -> Objects.equals(clubId, club.getString("id")))) { + return Result.error("请选择有效的社团"); + } + return queryBudgetBalance(reimburseFundSource, clubId, unionId); + } + + // 审核人按申请单的经费归属校验预算,不要求审核人同时是该社团负责人。 + private Result queryBudgetBalance(String reimburseFundSource, String clubId, String unionId) { if (StrUtil.isBlank(reimburseFundSource)) { return Result.error("请选择经费来源"); } @@ -515,16 +539,13 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i if (StrUtil.isBlank(clubId)) { return Result.error("请选择协会"); } - List myClubIds = getCurrentUserClubIds(); - if (!isAdmin() && !myClubIds.contains(clubId)) { - return Result.error("当前用户无权使用该协会经费"); - } + OutlayManageClub outlayManageClub = dao().fetch(OutlayManageClub.class, Cnd.where("clubId", "=", clubId).and("year", "=", DateUtil.thisYear())); if (outlayManageClub == null) { return Result.error("该协会本年度未生成预算记录,请先在协会预算分配中补分配"); } - return Result.success(formatMoney(outlayManageClub.getTotalQuota().subtract(outlayManageClub.getUsedQuota()))); + return Result.success(formatMoney(safeMoney(outlayManageClub.getTotalQuota()).subtract(safeMoney(outlayManageClub.getUsedQuota())))); } return Result.error("不支持的经费来源"); } @@ -533,6 +554,7 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i * 审核通过时统一校验余额、扣减预算并写入预算使用详情,避免控制器分散业务逻辑。 */ @Override + @Aop(TransAop.READ_COMMITTED) public Result reviewApply(String reimburseId, String reviewOpinion, int submitType) { if (!List.of(3, 4, 5).contains(submitType)) { return Result.error("无效的审核操作类型"); @@ -541,6 +563,25 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i if (dbRecord == null) { return Result.error("记录不存在"); } + if ("UNION_REIMBURSE_FUND_SOURCE_3".equals(dbRecord.getReimburseFundSource())) { + // 同一申请审核串行处理,避免重复点击导致社团已使用额度累计两次。 + Sql lockSql = Sqls.create("SELECT * FROM union_reimburse WHERE id=@id FOR UPDATE"); + lockSql.setParam("id", reimburseId); + lockSql.setEntity(dao().getEntity(UnionReimburse.class)); + lockSql.setCallback(Sqls.callback.entities()); + dao().execute(lockSql); + List records = lockSql.getList(UnionReimburse.class); + if (records.isEmpty()) { + return Result.error("记录不存在"); + } + dbRecord = records.get(0); + if (submitType == 3 && Integer.valueOf(3).equals(dbRecord.getStateId())) { + return Result.success(); + } + if (!Integer.valueOf(2).equals(dbRecord.getStateId())) { + return Result.error("仅可审核待审核确认的社团报销"); + } + } if (submitType == 3) { // 已通过的单据再次触发通过时直接返回,避免重复扣减预算。 if (Integer.valueOf(3).equals(dbRecord.getStateId())) { @@ -668,8 +709,43 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i unionReimburse.setInvoiceDetails(invoiceDetails); } + private boolean isManualReimburseAmount(UnionReimburse form) { + return "UNION_REIMBURSE_PROJECT_2".equals(form.getReimburseProject()) + || "UNION_REIMBURSE_PROJECT_3".equals(form.getReimburseProject()) + || "UNION_REIMBURSE_PROJECT_4".equals(form.getReimburseProject()); + } + /** - * 有发票时汇总票面金额和张数;无发票时按已校验的支付明细汇总金额,张数为零。 + * 文体、日常、专项活动保留手填报销金额,有发票时限制票面总额,无发票不设此上限。 + * @param form 已通过发票和支付信息校验的申请 + * @return 金额必填、精度或上限校验不通过时返回错误,通过返回null + */ + private Result validateActivityApplyMoney(UnionReimburse form) { + if (!isManualReimburseAmount(form)) { + return null; + } + Double money = form.getMoney(); + if (money == null) { + return Result.error("请填写报销金额"); + } + if (!Double.isFinite(money) || money <= 0 + || BigDecimal.valueOf(money).stripTrailingZeros().scale() > 2) { + return Result.error("报销金额必须为正数,且最多两位小数"); + } + if (Lang.isNotEmpty(form.getInvoiceDetails())) { + BigDecimal invoiceTotal = BigDecimal.ZERO; + for (UnionReimburseInvoiceDetail detail : form.getInvoiceDetails()) { + invoiceTotal = invoiceTotal.add(BigDecimal.valueOf(detail.getInvoiceAmount()).setScale(2, RoundingMode.HALF_UP)); + } + if (BigDecimal.valueOf(money).compareTo(invoiceTotal) > 0) { + return Result.error("报销金额不能超过发票总额(" + invoiceTotal.toPlainString() + "元)"); + } + } + return null; + } + + /** + * 汇总票面金额和张数;三类活动保留手填金额,其余项目无发票时按支付明细汇总。 */ private void fillInvoiceSummary(UnionReimburse unionReimburse) { double totalMoney = 0D; @@ -692,7 +768,10 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i } totalMoney = paymentTotal.setScale(2, RoundingMode.HALF_UP).doubleValue(); } - unionReimburse.setMoney(BigDecimal.valueOf(totalMoney).setScale(2, RoundingMode.HALF_UP).doubleValue()); + // 三类活动使用已校验的手填申请金额,不能被发票或支付合计覆盖。 + if (!isManualReimburseAmount(unionReimburse)) { + unionReimburse.setMoney(BigDecimal.valueOf(totalMoney).setScale(2, RoundingMode.HALF_UP).doubleValue()); + } unionReimburse.setInvoiceNumber(String.valueOf(invoiceFileCount)); } @@ -826,7 +905,11 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i if (unionReimburse.getActivityTime() == null) { return Result.error("请选择活动时间"); } - if (Lang.isEmpty(unionReimburse.getFiles())) { + // 文体、日常和社团活动附件选填,其他活动保留附件必填校验。 + if (!"UNION_REIMBURSE_PROJECT_2".equals(unionReimburse.getReimburseProject()) + && !"UNION_REIMBURSE_PROJECT_3".equals(unionReimburse.getReimburseProject()) + && !"UNION_REIMBURSE_PROJECT_5".equals(unionReimburse.getReimburseProject()) + && Lang.isEmpty(unionReimburse.getFiles())) { return Result.error("请上传附件"); } return validateInvoiceDetails(unionReimburse); @@ -929,7 +1012,7 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i * 提交和审核前统一校验预算是否已分配、余额是否充足。 */ private Result validateFundSourceBeforeSubmit(UnionReimburse unionReimburse) { - Result balanceResult = getBudgetBalance(unionReimburse.getReimburseFundSource(), unionReimburse.getClubId(), unionReimburse.getUnionId()); + Result balanceResult = queryBudgetBalance(unionReimburse.getReimburseFundSource(), unionReimburse.getClubId(), unionReimburse.getUnionId()); if (balanceResult == null || balanceResult.getCode() != 0) { return balanceResult == null ? Result.error("经费余额校验失败") : balanceResult; } @@ -985,11 +1068,19 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i if (outlayManageClub == null) { return Result.error("该协会本年度未生成预算记录,请先在协会预算分配中补分配"); } - if (outlayManageClub.getTotalQuota().subtract(outlayManageClub.getUsedQuota()).compareTo(applyMoney) < 0) { - return Result.error("协会经费余额不足"); + // 本年度分配总额度保持不变,审批金额原子累加至已使用额度,余额由两者相减得到。 + Sql deductSql = Sqls.create(""" + UPDATE outlay_manage_club + SET usedQuota = COALESCE(usedQuota, 0) + @amount + WHERE id = @id + AND COALESCE(totalQuota, 0) - COALESCE(usedQuota, 0) >= @amount + """); + deductSql.setParam("id", outlayManageClub.getId()); + deductSql.setParam("amount", applyMoney); + dao().execute(deductSql); + if (deductSql.getUpdateCount() != 1) { + return Result.error("社团经费余额不足"); } - outlayManageClub.setUsedQuota(outlayManageClub.getUsedQuota().add(applyMoney)); - dao().updateIgnoreNull(outlayManageClub); insertUseDetail(unionReimburse, outlayManageClub.getId(), applyMoney); return Result.success(); } @@ -1201,6 +1292,9 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i if ("UNION_REIMBURSE_PROJECT_4".equals(reimburseProject)) { return "专项活动申请"; } + if ("UNION_REIMBURSE_PROJECT_5".equals(reimburseProject)) { + return "社团活动申请"; + } return "报销申请"; } @@ -1208,16 +1302,38 @@ public class UnionReimburseServiceImpl extends BaseServiceImpl i return money == null ? 0D : money.setScale(2, RoundingMode.HALF_UP).doubleValue(); } - private List getCurrentUserClubIds() { - if (isAdmin()) { - return new ArrayList<>(); + /** + * 查询未解散社团,社团选择和余额查询不按负责人归属过滤。 + * + * @return 全部未解散社团的ID、名称和编码 + */ + @Override + public List listReimburseClubs() { + Sql sql = Sqls.create(""" + SELECT c.id, c.clubName, c.clubCode + FROM sys_club c + WHERE c.dismiss = 0 + ORDER BY c.clubCode, c.id + """); + return listMap(sql); + } + + private Result validateApplicantFundSource(UnionReimburse form) { + if ("UNION_REIMBURSE_FUND_SOURCE_3".equals(form.getReimburseFundSource())) { + if (!"UNION_REIMBURSE_PROJECT_5".equals(form.getReimburseProject())) { + return Result.error("社团经费请选择社团活动"); + } + NutMap club = listReimburseClubs().stream() + .filter(item -> Objects.equals(form.getClubId(), item.getString("id"))) + .findFirst().orElse(null); + if (club == null) { + return Result.error("请选择有效的社团"); + } + form.setClubName(club.getString("clubName")); + } else if ("UNION_REIMBURSE_PROJECT_5".equals(form.getReimburseProject())) { + return Result.error("社团活动只能使用社团经费"); } - List clubUsers = dao().query(ClubUser.class, Cnd.where("userId", "=", SecurityUtil.getUserId())); - return clubUsers.stream() - .map(ClubUser::getClubId) - .filter(StrUtil::isNotBlank) - .distinct() - .collect(Collectors.toList()); + return null; } private Result validateInvoiceDuplicate(UnionReimburse unionReimburse) { diff --git a/src/main/java/com/budwk/app/zhgh/democratic/proposal/controller/transact/ProposalFeedbackEvaluationController.java b/src/main/java/com/budwk/app/zhgh/democratic/proposal/controller/transact/ProposalFeedbackEvaluationController.java index 4b1f27f..2735791 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/proposal/controller/transact/ProposalFeedbackEvaluationController.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/proposal/controller/transact/ProposalFeedbackEvaluationController.java @@ -95,9 +95,9 @@ public class ProposalFeedbackEvaluationController { Cnd cnd = Cnd.NEW(); cnd.and("t.taskName", "=", "feedback"); - if (!AuthUtil.hasRole(RoleConstant.SYSADMIN.name())) { - cnd.and("ta.actorId", "in", List.of(SecurityUtil.getUserId())); - } + /* if (!AuthUtil.hasRole(RoleConstant.SYSADMIN.name())) { + }*/ + cnd.and("ta.actorId", "in", List.of(SecurityUtil.getUserId())); if (approval) { cnd.and("t.taskState", "in", List.of(ProcessTaskStateEnum.FINISHED.getCode(), ProcessTaskStateEnum.INTERRUPT.getCode())); diff --git a/src/main/java/com/budwk/app/zhgh/democratic/proposal/h5controller/H5ProposalCommonController.java b/src/main/java/com/budwk/app/zhgh/democratic/proposal/h5controller/H5ProposalCommonController.java index 2607617..eee8eb6 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/proposal/h5controller/H5ProposalCommonController.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/proposal/h5controller/H5ProposalCommonController.java @@ -1,10 +1,15 @@ package com.budwk.app.zhgh.democratic.proposal.h5controller; import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.hutool.core.util.StrUtil; +import com.budwk.app.base.result.Result; +import com.budwk.app.zhgh.democratic.proposal.service.ProposalWriteService; import io.swagger.annotations.Api; +import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; @IocBean @At("/platform/h5/proposal/common") @@ -12,6 +17,24 @@ import org.nutz.mvc.annotation.Ok; @Api(tags = "h5提案公共") public class H5ProposalCommonController { + @Inject + private ProposalWriteService proposalWriteService; + + /** + * 查询当前登录用户在指定届次下的代表身份,不以是否已分配代表团作为判断依据。 + * + * @param sessionId 当前选择或已有提案所属的教代会届次ID,不能为空 + * @return Result 的 data 为 Boolean:true 表示存在未删除的代表记录,false 表示不是该届次代表 + */ + @At + @SaCheckPermission("h5.proposal.write") + public Result isCurrentUserDelegate(@Param("sessionId") String sessionId) { + if (StrUtil.isBlank(sessionId)) { + return Result.error("所属教代会不能为空"); + } + return Result.success().addData(proposalWriteService.isCurrentUserDelegate(sessionId)); + } + @At("") @Ok("beetl:/platform/zhghh5/democratic/proposal/common/info/index.html") @SaCheckPermission("h5.proposal") diff --git a/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/ProposalWriteService.java b/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/ProposalWriteService.java index ae07bd5..3e1ff0c 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/ProposalWriteService.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/ProposalWriteService.java @@ -49,5 +49,13 @@ public interface ProposalWriteService extends BaseService { */ void checkCurrentUserDelegate(String sessionId); + /** + * 查询当前登录用户是否为指定教代会届次的有效代表。 + * + * @param sessionId 教代会届次ID,不能为空;用户身份由服务端登录信息取得 + * @return true 表示存在未删除的代表记录,false 表示不存在;不要求已分配代表团 + */ + boolean isCurrentUserDelegate(String sessionId); + ProposalInfo importProposal(Map stringStringMap); } diff --git a/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/impl/ProposalWriteServiceImpl.java b/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/impl/ProposalWriteServiceImpl.java index adc755b..ea8b6ba 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/impl/ProposalWriteServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/impl/ProposalWriteServiceImpl.java @@ -194,6 +194,19 @@ public class ProposalWriteServiceImpl extends BaseServiceImpl impl @Override public void checkCurrentUserDelegate(String sessionId) { + if (!isCurrentUserDelegate(sessionId)) { + throw new RuntimeException("当前用户不是代表,无法撰写提案"); + } + } + + /** + * 入口查询与保存、提交校验共用同一代表身份口径,排除已删除记录。 + * + * @param sessionId 教代会届次ID,空值抛出异常,避免被误判为非代表 + * @return 是否存在当前登录用户在该届次的有效代表记录 + */ + @Override + public boolean isCurrentUserDelegate(String sessionId) { if (StrUtil.isBlank(sessionId)) { throw new RuntimeException("所属教代会不能为空"); } @@ -204,9 +217,7 @@ public class ProposalWriteServiceImpl extends BaseServiceImpl impl .and(Teacher_congress_delegate::getDelFlag, "!=", 1) .limit(1) ); - if (delegate == null) { - throw new RuntimeException("当前用户不是代表,无法撰写提案"); - } + return delegate != null; } @Override diff --git a/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/controller/TeacherCongressDelegateManageController.java b/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/controller/TeacherCongressDelegateManageController.java index 9411a93..d558cba 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/controller/TeacherCongressDelegateManageController.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/controller/TeacherCongressDelegateManageController.java @@ -36,7 +36,6 @@ import org.nutz.aop.interceptor.ioc.TransAop; import org.nutz.dao.*; import org.nutz.dao.sql.Sql; import org.nutz.dao.util.Daos; -import org.nutz.dao.util.cri.SqlExpressionGroup; import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; @@ -201,43 +200,16 @@ public class TeacherCongressDelegateManageController { } /** - * 代表调整搜索用户 + * 按姓名或工号搜索可添加到代表调整列表的人员。 * - * @param param - * @return + * @param param sessionId 为必填的目标届次ID;keyWord 为必填的姓名或工号关键字,候选人员不限定为本届已有代表 + * @return Result,其 data 为最多10条人员记录;id、userId 均为用户ID,userName、loginName、sex、unionName、unitName 分别为姓名、工号、性别、工会和单位 */ @At @SaCheckPermission("tc.delegate.manage") @Ok("json:{ignoreNull:true}") public Result adjustUserList(@Valid TeacherCongressDelegateManageSearchAdjustUserParam param) { -// Dao extDao = Daos.ext(dao, FieldFilter.create(Teacher_congress_delegate.class, "^id|userId|userName|loginName|unitName$")); -// SqlExpressionGroup seg = new SqlExpressionGroup(); -// seg.orLike("userName", param.getKeyWord()); -// seg.orLike("loginName", param.getKeyWord()); -// List list = extDao.query(Teacher_congress_delegate.class, Cnd.where("sessionId", "=", param.getSessionId()).and(seg).limit(1, 10)); -// return Result.success(list); - Sql sql = Sqls.create(""" - SELECT - u.id, - u.id AS userId, - u.username AS userName, - u.loginname AS loginName, - u.sex, - u.unionName, - u.unitName - FROM - vw_user u - LEFT JOIN teacher_congress_delegate tcd ON tcd.userId = u.id - $condition - """); - Cnd cnd = Cnd.NEW(); - SqlExpressionGroup seg = new SqlExpressionGroup(); - seg.orLike("u.username", param.getKeyWord()); - seg.orLike("u.loginname", param.getKeyWord()); - cnd.and(seg); - sql.setCondition(cnd); - Pagination pagination = sysUserService.listPageMap(1, 10, sql); - return Result.success(pagination.getList()); + return Result.success(teacherDelegateService.listAdjustUsers(param)); } /** diff --git a/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/service/TeacherCongressDelegateService.java b/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/service/TeacherCongressDelegateService.java index 2d1f236..209d800 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/service/TeacherCongressDelegateService.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/service/TeacherCongressDelegateService.java @@ -5,6 +5,7 @@ import com.budwk.app.base.service.BaseService; import com.budwk.app.zhgh.democratic.teachercongress.delegate.models.Teacher_congress_delegate; import com.budwk.app.zhgh.democratic.teachercongress.delegate.param.TeacherCongressDelegateManagePageParam; import com.budwk.app.zhgh.democratic.teachercongress.delegate.param.TeacherCongressDelegateManagePublicUserParam; +import com.budwk.app.zhgh.democratic.teachercongress.delegate.param.TeacherCongressDelegateManageSearchAdjustUserParam; import org.nutz.lang.util.NutMap; import javax.servlet.http.HttpServletResponse; @@ -31,6 +32,14 @@ public interface TeacherCongressDelegateService extends BaseService listPublicUsers(TeacherCongressDelegateManagePublicUserParam param); + /** + * 按姓名或工号搜索代表调整候选人员,包含尚未成为本届代表的用户。 + * + * @param param sessionId 为目标届次ID,不用于限制候选人员;keyWord 为姓名或工号关键字 + * @return 最多10条人员记录;id、userId 均为用户ID,userName、loginName、sex、unionName、unitName 分别为姓名、工号、性别、工会和单位 + */ + List listAdjustUsers(TeacherCongressDelegateManageSearchAdjustUserParam param); + /** * 根据系统配置的单位或分工会组成关系,为尚未归团的代表自动分配代表团。 * diff --git a/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/service/TeacherCongressDelegateServiceImpl.java b/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/service/TeacherCongressDelegateServiceImpl.java index ec3df4a..0ca66e5 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/service/TeacherCongressDelegateServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegate/service/TeacherCongressDelegateServiceImpl.java @@ -21,6 +21,7 @@ import com.budwk.app.zhgh.democratic.proposal.service.common.ProposalCommonServi import com.budwk.app.zhgh.democratic.teachercongress.delegate.models.Teacher_congress_delegate; import com.budwk.app.zhgh.democratic.teachercongress.delegate.param.TeacherCongressDelegateManagePageParam; import com.budwk.app.zhgh.democratic.teachercongress.delegate.param.TeacherCongressDelegateManagePublicUserParam; +import com.budwk.app.zhgh.democratic.teachercongress.delegate.param.TeacherCongressDelegateManageSearchAdjustUserParam; import com.budwk.app.zhgh.democratic.teachercongress.delegate.vo.TeacherCongressDelegateExcelVO; import com.budwk.app.zhgh.democratic.teachercongress.prepare.models.Teacher_congress_session; import com.budwk.app.zhgh.democratic.teachercongress.prepare.service.TeacherCongressSessionService; @@ -107,6 +108,35 @@ public class TeacherCongressDelegateServiceImpl extends BaseServiceImpl listAdjustUsers(TeacherCongressDelegateManageSearchAdjustUserParam param) { + Sql sql = Sqls.create(""" + SELECT + u.id, + u.id AS userId, + u.username AS userName, + u.loginname AS loginName, + u.sex, + u.unionName, + u.unitName + FROM vw_user u + $condition + """); + SqlExpressionGroup seg = new SqlExpressionGroup(); + seg.orLike("u.username", param.getKeyWord()); + seg.orLike("u.loginname", param.getKeyWord()); + sql.setCondition(Cnd.NEW().and(seg)); + // 下拉候选列表沿用最多10条的限制,不依赖代表记录数量。 + sql.setPager(dao().createPager(1, 10)); + return listMap(sql); + } + /** * 为当前届次未归团代表批量解析代表团,同时刷新其届次代表角色,避免重复生成角色关系。 */ diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/constant/HuaZhuConstant.java b/src/main/java/com/budwk/app/zhgh/huazhu/constant/HuaZhuConstant.java new file mode 100644 index 0000000..bfd973d --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/constant/HuaZhuConstant.java @@ -0,0 +1,47 @@ +package com.budwk.app.zhgh.huazhu.constant; + +/** 华住对接参数统一在此维护,沿用原项目常量取值。 */ +public final class HuaZhuConstant { + /** + * 华住接口请求超时,单位毫秒。 + */ + public static final int TIMEOUT = 20000; + + public static final String BASEURL = "https://htravelserver.huazhu.com"; + + public static final String OAUTH2_URL = "https://oauth2-api.huazhu.com"; + + /** + * 公司卡号 + */ + public static final String CARD_ID = "VCENTCRM1169099135"; + + /** + * 公司密钥 + */ + public static final String CARD_PASSWORD = "47CD8C9C-A4CD-4CBD-A30F-41C41BDF7E99"; + + /** + * AES密钥 + */ + public static final String AES_KEY = "JAE4YZJLXZW5HGBU"; + + /** + * 客户端ID + */ + public static final String CLIENT_ID = "5e8651d8-a5a8-4358-9986-91f426e191c8"; + + /** + * 客户端密钥 + */ + public static final String CLIENT_SECRET = "2d20a7f3125b52b8e90936c3b30fb4b62b443a52716a090e55e302cf40f32b66d592ef1e98c1cf0a8e5ec3f9c444a9b4f53a337b1be57263d4fbb71044f67f12"; + + /** 华住 addUser 响应的顶层成功字段名;协议未确认前留空,界面显示待核实。 */ + public static final String SYNC_SUCCESS_FIELD = ""; + + /** 成功字段对应的精确字符串值,与 SYNC_SUCCESS_FIELD 一起按华住协议填写。 */ + public static final String SYNC_SUCCESS_VALUE = ""; + + private HuaZhuConstant() { + } +} diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/controller/HuaZhuManageController.java b/src/main/java/com/budwk/app/zhgh/huazhu/controller/HuaZhuManageController.java new file mode 100644 index 0000000..dbd799d --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/controller/HuaZhuManageController.java @@ -0,0 +1,81 @@ +package com.budwk.app.zhgh.huazhu.controller; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.hutool.core.util.StrUtil; +import com.budwk.app.base.result.Result; +import com.budwk.app.zhgh.huazhu.param.HuaZhuEmployeePageForm; +import com.budwk.app.zhgh.huazhu.service.HuaZhuEmployeeService; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; +import org.nutz.mvc.annotation.POST; + +import javax.validation.Valid; +import java.util.Arrays; + +/** + * PC 端华住员工同步管理。 + */ +@IocBean +@Ok("json:full") +@At("/platform/huazhu") +public class HuaZhuManageController { + + @Inject + private HuaZhuEmployeeService huaZhuEmployeeService; + + /** 打开拥有 huazhu.manage 权限的 PC 员工管理页面。 */ + @At("") + @Ok("beetl:/platform/zhgh/huazhu/index.html") + @SaCheckPermission("huazhu.manage") + public void index() { + } + + /** + * @param pageForm pageNumber、pageSize 必填,searchKeyword 可选,匹配工号或姓名 + * @return Result.data 为分页对象,list 包含 id、loginname、username、unitName,totalCount 为总数 + */ + @At + @SaCheckPermission("huazhu.manage") + public Result pageData(@Valid HuaZhuEmployeePageForm pageForm) { + return Result.success(huaZhuEmployeeService.pageUsers(pageForm)); + } + + /** + * @param userIds 所选本系统员工主键数组,非华住员工编号 + * @return Result.data 为逐人结果数组;success 为 true/false/null,分别表示成功/失败/待核实,message 为说明 + */ + @At + @POST + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("huazhu.manage") + public Result syncUsers(@Param("userIds") String[] userIds) { + if (userIds == null || userIds.length == 0) { + return Result.error("请先选择需要同步的员工"); + } + return Result.success(huaZhuEmployeeService.syncUsers(Arrays.asList(userIds))); + } + + /** + * @param userId 本系统员工主键,服务端转换为工号后查询华住 + * @return Result.data 为华住状态对象,含 statusCode、userNumber、userName 等;错误说明见 msg + */ + @At + @SaCheckPermission("huazhu.manage") + public Result queryStatus(@Param("userId") String userId) { + if (StrUtil.isBlank(userId)) { + return Result.error("用户不能为空"); + } + try { + return Result.success(huaZhuEmployeeService.queryStatus(userId)); + } catch (IllegalArgumentException | IllegalStateException e) { + return Result.error(e.getMessage()); + } catch (Exception e) { + return Result.error("查询华住状态失败,请稍后重试"); + } + } +} diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/h5Controller/H5HuaZhuController.java b/src/main/java/com/budwk/app/zhgh/huazhu/h5Controller/H5HuaZhuController.java new file mode 100644 index 0000000..26f46ef --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/h5Controller/H5HuaZhuController.java @@ -0,0 +1,37 @@ +package com.budwk.app.zhgh.huazhu.h5Controller; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import com.budwk.app.web.commons.auth.utils.SecurityUtil; +import com.budwk.app.zhgh.huazhu.service.HuaZhuLoginService; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; + +/** + * H5 幸福工荟中的华住免密登录入口。 + */ +@IocBean +@At("/platform/h5/huazhu") +public class H5HuaZhuController { + + @Inject + private HuaZhuLoginService huaZhuLoginService; + + /** + * 校验幸福工荟访问权限后跳转至华住企业登录页面。 + * + * @param response HTTP 响应,用于返回 302 跳转 + * @throws IOException 响应输出异常 + */ + @At("/basicLogin") + @Ok("void") + @SaCheckPermission("h5.inclusive.benefit") + public void basicLogin(HttpServletResponse response) throws IOException { + response.setHeader("Cache-Control", "no-store"); + response.sendRedirect(huaZhuLoginService.buildBasicLoginUrl(SecurityUtil.getUserLoginname())); + } +} diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/param/HuaZhuEmployeePageForm.java b/src/main/java/com/budwk/app/zhgh/huazhu/param/HuaZhuEmployeePageForm.java new file mode 100644 index 0000000..4dbd181 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/param/HuaZhuEmployeePageForm.java @@ -0,0 +1,9 @@ +package com.budwk.app.zhgh.huazhu.param; + +import com.budwk.app.base.param.PageForm; + +/** + * 华住员工管理分页参数:复用 PageForm 的 searchKeyword、pageNumber、pageSize。 + */ +public class HuaZhuEmployeePageForm extends PageForm { +} diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/service/HuaZhuEmployeeService.java b/src/main/java/com/budwk/app/zhgh/huazhu/service/HuaZhuEmployeeService.java new file mode 100644 index 0000000..6a05609 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/service/HuaZhuEmployeeService.java @@ -0,0 +1,39 @@ +package com.budwk.app.zhgh.huazhu.service; + +import com.budwk.app.base.page.Pagination; +import com.budwk.app.zhgh.huazhu.param.HuaZhuEmployeePageForm; +import com.budwk.app.zhgh.huazhu.vo.HuaZhuEmployeeStatus; +import com.budwk.app.zhgh.huazhu.vo.HuaZhuSyncResult; +import org.nutz.lang.util.NutMap; + +import java.util.List; + +/** + * 华住员工同步与状态查询服务。 + */ +public interface HuaZhuEmployeeService { + + /** + * 分页查询可同步的本项目员工。 + * + * @param pageForm pageNumber、pageSize 必填,searchKeyword 为可选的工号或姓名片段 + * @return 分页对象,list 为 id/loginname/username/unitName,totalCount 为匹配人数 + */ + Pagination pageUsers(HuaZhuEmployeePageForm pageForm); + + /** + * 将选中的本项目员工同步到华住。 + * + * @param userIds 本项目用户主键列表 + * @return 逐人结果,success=true 为协议确认成功、false 为失败、null 为待核实,message 为说明 + */ + List syncUsers(List userIds); + + /** + * 查询指定本项目员工在华住的实时状态。 + * + * @param userId 本项目用户主键 + * @return 华住员工状态对象;statusCode 保留第三方原值,userNumber 为已校验匹配的工号 + */ + HuaZhuEmployeeStatus queryStatus(String userId); +} diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/service/HuaZhuLoginService.java b/src/main/java/com/budwk/app/zhgh/huazhu/service/HuaZhuLoginService.java new file mode 100644 index 0000000..dcb6a69 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/service/HuaZhuLoginService.java @@ -0,0 +1,15 @@ +package com.budwk.app.zhgh.huazhu.service; + +/** + * 华住免密登录服务。 + */ +public interface HuaZhuLoginService { + + /** + * 按华住协议为当前职工工号生成免密登录跳转地址。 + * + * @param loginName 当前登录职工的工号 + * @return 华住免密登录地址 + */ + String buildBasicLoginUrl(String loginName); +} diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/service/impl/HuaZhuEmployeeServiceImpl.java b/src/main/java/com/budwk/app/zhgh/huazhu/service/impl/HuaZhuEmployeeServiceImpl.java new file mode 100644 index 0000000..1db0d43 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/service/impl/HuaZhuEmployeeServiceImpl.java @@ -0,0 +1,299 @@ +package com.budwk.app.zhgh.huazhu.service.impl; + +import cn.hutool.core.util.StrUtil; +import cn.hutool.crypto.digest.DigestUtil; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; +import cn.hutool.json.JSONUtil; +import cn.hutool.json.JSONObject; +import com.budwk.app.base.page.Pagination; +import com.budwk.app.sys.models.Sys_user; +import com.budwk.app.zhgh.huazhu.constant.HuaZhuConstant; +import com.budwk.app.zhgh.huazhu.param.HuaZhuEmployeePageForm; +import com.budwk.app.zhgh.huazhu.service.HuaZhuEmployeeService; +import com.budwk.app.zhgh.huazhu.vo.HuaZhuEmployeeStatus; +import com.budwk.app.zhgh.huazhu.vo.HuaZhuSyncResult; +import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; +import org.nutz.dao.Sqls; +import org.nutz.dao.sql.Sql; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.util.NutMap; +import org.nutz.integration.jedis.RedisService; + +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.Base64; +import java.util.Collections; +import java.util.List; + +/** + * 华住员工同步与状态查询实现。 + */ +@IocBean(args = {"refer:dao"}) +public class HuaZhuEmployeeServiceImpl implements HuaZhuEmployeeService { + + private final Dao dao; + + @Inject + private RedisService redisService; + + public HuaZhuEmployeeServiceImpl(Dao dao) { + this.dao = dao; + } + + /** 工号、姓名采用绑定参数查询;分页及筛选参数沿用项目 PageForm。 */ + @Override + public Pagination pageUsers(HuaZhuEmployeePageForm pageForm) { + if (pageForm == null || pageForm.getPageNumber() == null || pageForm.getPageNumber() < 1 + || pageForm.getPageSize() == null || pageForm.getPageSize() < 1 || pageForm.getPageSize() > 200) { + throw new IllegalArgumentException("页码必须大于0,每页数量必须为1至200"); + } + String keyword = StrUtil.trim(pageForm.getSearchKeyword()); + String condition = " WHERE u.delFlag = 0 "; + if (StrUtil.isNotBlank(keyword)) { + condition += " AND (u.loginname LIKE @keyword OR u.username LIKE @keyword) "; + } + Sql countSql = Sqls.create("SELECT COUNT(1) FROM sys_user u" + condition); + Sql listSql = Sqls.create("SELECT u.id, u.loginname, u.username, unit.name AS unitName " + + "FROM sys_user u LEFT JOIN sys_unit unit ON unit.id = u.unitId " + condition + + "ORDER BY u.createdAt DESC"); + if (StrUtil.isNotBlank(keyword)) { + String likeKeyword = "%" + keyword + "%"; + countSql.setParam("keyword", likeKeyword); + listSql.setParam("keyword", likeKeyword); + } + countSql.setCallback(Sqls.callback.integer()); + dao.execute(countSql); + int totalCount = countSql.getInt(); + listSql.setPager(dao.createPager(pageForm.getPageNumber(), pageForm.getPageSize())); + listSql.setCallback(Sqls.callback.maps()); + dao.execute(listSql); + return new Pagination<>(pageForm.getPageNumber(), pageForm.getPageSize(), totalCount, listSql.getList(NutMap.class)); + } + + /** + * 每个主键独立校验并产生结果,单个员工不存在或接口失败不阻断后续员工。 + * 本地事务无法撤销华住侧已处理的同步,超时后应先查询状态,避免直接重试整批。 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public List syncUsers(List userIds) { + if (userIds == null || userIds.isEmpty()) { + return Collections.emptyList(); + } + List results = new ArrayList<>(); + for (String userId : userIds) { + HuaZhuSyncResult result = new HuaZhuSyncResult().setUserId(userId); + try { + Sys_user user = findAvailableUser(userId); + result.setLoginName(user.getLoginname()).setUserName(user.getUsername()); + String body = request("/userInfo/addUser", buildEmployeeRequest(user.getLoginname())); + applySyncResponse(result, body); + } catch (IllegalArgumentException | IllegalStateException e) { + // 只透出本模块构造的提示;网络和解析异常在下层转换为固定文案。 + result.setSuccess(false).setMessage(e.getMessage()); + } catch (Exception e) { + result.setSuccess(false).setMessage("同步未完成,请查询华住状态后再决定是否重试"); + } + results.add(result); + } + return results; + } + + /** 根据本系统主键取得工号,返回与该工号对应的华住员工对象,不推断状态码含义。 */ + @Override + public HuaZhuEmployeeStatus queryStatus(String userId) { + Sys_user user = findAvailableUser(userId); + String body = request("/userInfo/queryUser", buildEmployeeRequest(user.getLoginname())); + JSONObject payload = extractQueryPayload(body, user.getLoginname()); + try { + return JSONUtil.toBean(payload, HuaZhuEmployeeStatus.class); + } catch (Exception e) { + throw new IllegalStateException("华住查询接口返回格式无法识别", e); + } + } + + /** + * 兼容华住接口直接返回员工对象,以及以 data 或 result 包装员工对象的两种响应格式。 + * 响应中不包含员工状态时,只返回经筛选后的业务提示,避免透出第三方完整响应。 + * + * @param body 华住查询接口响应正文 + * @param loginName 本次查询的工号,用于避免把错误或其他员工的信息当成有效结果 + * @return 可转换为员工状态的 JSON 对象 + */ + private JSONObject extractQueryPayload(String body, String loginName) { + JSONObject response; + try { + response = JSONUtil.parseObj(body); + } catch (Exception e) { + throw new IllegalStateException("华住查询接口未返回有效数据", e); + } + JSONObject payload = extractObject(response, "data"); + if (payload == null) { + payload = extractObject(response, "result"); + } + if (payload == null) { + payload = response; + } + // statusCode 本身可能是错误码;必须有匹配的工号,才将响应作为该员工的状态展示。 + if (!loginName.equals(payload.getStr("userNumber"))) { + throw new IllegalStateException("华住未返回与该工号匹配的员工信息,请核实接口响应协议"); + } + return payload; + } + + /** + * 成功码未取得协议确认前,HTTP 2xx 仅表示请求送达;不猜测 0、200 等值的含义。 + * 在 HuaZhuConstant 中填写顶层字段名及精确成功值后才判定成功,字段缺失/格式变化仍返回待核实。 + */ + private void applySyncResponse(HuaZhuSyncResult result, String body) { + result.setSuccess(null).setMessage("请求已发送,结果待核实,请查询华住状态"); + String field = HuaZhuConstant.SYNC_SUCCESS_FIELD.trim(); + String expected = HuaZhuConstant.SYNC_SUCCESS_VALUE; + if (StrUtil.isBlank(field) || StrUtil.isBlank(expected)) { + return; + } + try { + JSONObject response = JSONUtil.parseObj(body); + if (response.get(field) == null) { + return; + } + boolean success = expected.equals(response.getStr(field)); + result.setSuccess(success).setMessage(success ? "同步成功" : "华住返回非成功结果,请查询状态核实"); + } catch (Exception e) { + result.setMessage("华住响应格式无法识别,结果待核实,请查询华住状态"); + } + } + + /** + * 从包装响应中提取对象;部分网关会将 data/result 再序列化为 JSON 字符串。 + * + * @param response 华住响应对象 + * @param key 包装字段名 + * @return 包装内的 JSON 对象,缺失或格式不匹配时返回 null + */ + private JSONObject extractObject(JSONObject response, String key) { + Object value = response.get(key); + if (value instanceof JSONObject) { + return (JSONObject) value; + } + if (value instanceof CharSequence && StrUtil.isNotBlank(value.toString())) { + try { + return JSONUtil.parseObj(value.toString()); + } catch (Exception ignored) { + return null; + } + } + return null; + } + + /** + * 调用华住员工接口,并统一处理 OAuth Token 与非成功状态。 + * + * @param path 华住接口路径 + * @param requestBody 请求体 + * @return 华住响应正文 + */ + private String request(String path, NutMap requestBody) { + String authorization = getAccessToken(); + try (HttpResponse response = HttpRequest.post(HuaZhuConstant.BASEURL.trim().replaceAll("/+$", "") + path) + .header("Authorization", authorization) + .header("accept", "application/json") + .contentType("application/json; charset=UTF-8") + .body(JSONUtil.toJsonStr(requestBody)) + .timeout(HuaZhuConstant.TIMEOUT) + .execute()) { + if (response.getStatus() == 401) { + redisService.del(tokenCacheKey()); + // 不自动重发修改请求,避免上游已执行时重复同步。 + throw new IllegalStateException("华住认证已失效,请查询状态后重试"); + } + if (!response.isOk()) { + throw new IllegalStateException("华住接口调用失败,HTTP 状态码:" + response.getStatus()); + } + return response.body(); + } catch (IllegalStateException e) { + throw e; + } catch (Exception e) { + throw new IllegalStateException("华住请求异常或超时,结果未确认,请先查询状态再重试"); + } + } + + /** + * 获取华住 OAuth Token,优先使用 Redis 缓存以避免频繁请求第三方认证接口。 + * + * @return HTTP Authorization 头的 Bearer Token + */ + private String getAccessToken() { + String cacheKey = tokenCacheKey(); + String cachedToken; + try { + cachedToken = redisService.get(cacheKey); + } catch (Exception e) { + throw new IllegalStateException("华住认证缓存不可用,请联系管理员"); + } + if (StrUtil.isNotBlank(cachedToken)) { + return cachedToken; + } + String credential = Base64.getEncoder().encodeToString((HuaZhuConstant.CLIENT_ID + ":" + HuaZhuConstant.CLIENT_SECRET).getBytes(StandardCharsets.UTF_8)); + try (HttpResponse response = HttpRequest.post(HuaZhuConstant.OAUTH2_URL.trim().replaceAll("/+$", "") + + "/oauth/token?scope=ALL&grant_type=client_credentials") + .header("Authorization", "Basic " + credential) + .timeout(HuaZhuConstant.TIMEOUT) + .execute()) { + if (!response.isOk()) { + throw new IllegalStateException("获取华住认证 Token 失败,HTTP 状态码:" + response.getStatus()); + } + JSONObject tokenData = JSONUtil.parseObj(response.body()); + String accessToken = tokenData.getStr("access_token"); + String tokenType = StrUtil.blankToDefault(tokenData.getStr("token_type"), "Bearer"); + if (StrUtil.isBlank(accessToken)) { + throw new IllegalStateException("华住认证接口未返回 Token"); + } + String authorization = tokenType + " " + accessToken; + // expires_in 单位为秒,预留一分钟;缺少有效时长时不缓存,避免沿用猜测的有效期。 + Long expiresIn = tokenData.getLong("expires_in"); + if (expiresIn != null && expiresIn > 60) { + redisService.setex(cacheKey, (int) Math.min(expiresIn - 60, Integer.MAX_VALUE), authorization); + } + return authorization; + } catch (IllegalStateException e) { + throw e; + } catch (Exception e) { + throw new IllegalStateException("华住认证请求、响应解析或缓存处理失败,请联系管理员"); + } + } + + /** 缓存按企业及接口环境隔离;凭据轮换后自然使用新键,键中不包含明文凭据。 */ + private String tokenCacheKey() { + return "zhgh:huazhu:oauth-token:" + DigestUtil.sha256Hex(JSONUtil.toJsonStr(new String[]{ + HuaZhuConstant.BASEURL.trim().replaceAll("/+$", ""), HuaZhuConstant.OAUTH2_URL.trim().replaceAll("/+$", ""), HuaZhuConstant.CARD_ID, + HuaZhuConstant.CLIENT_ID, HuaZhuConstant.CLIENT_SECRET})); + } + + /** 沿用源接口的 cardPassWord 大小写,只发送企业凭据和工号。 */ + private NutMap buildEmployeeRequest(String loginName) { + return NutMap.NEW().addv("cardId", HuaZhuConstant.CARD_ID) + .addv("cardPassWord", HuaZhuConstant.CARD_PASSWORD) + .addv("userNumber", loginName); + } + + private Sys_user findAvailableUser(String userId) { + if (StrUtil.isBlank(userId)) { + throw new IllegalArgumentException("用户主键不能为空"); + } + Sys_user user = dao.fetch(Sys_user.class, Cnd.where("id", "=", userId).and("delFlag", "=", false)); + if (user == null) { + throw new IllegalArgumentException("用户不存在或已删除"); + } + if (StrUtil.isBlank(user.getLoginname())) { + throw new IllegalArgumentException("用户缺少工号,无法同步华住"); + } + return user; + } + +} diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/service/impl/HuaZhuLoginServiceImpl.java b/src/main/java/com/budwk/app/zhgh/huazhu/service/impl/HuaZhuLoginServiceImpl.java new file mode 100644 index 0000000..79ed739 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/service/impl/HuaZhuLoginServiceImpl.java @@ -0,0 +1,67 @@ +package com.budwk.app.zhgh.huazhu.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; +import com.budwk.app.zhgh.huazhu.constant.HuaZhuConstant; +import com.budwk.app.zhgh.huazhu.service.HuaZhuLoginService; +import org.nutz.ioc.loader.annotation.IocBean; + +import javax.crypto.Cipher; +import javax.crypto.spec.SecretKeySpec; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.Base64; + +/** + * 华住免密登录服务实现。 + */ +@IocBean +public class HuaZhuLoginServiceImpl implements HuaZhuLoginService { + + private static final String TRAVEL_TYPE = "YS"; + + /** @param loginName 服务端登录会话中的工号;返回含签名的华住免密跳转 URL。 */ + @Override + public String buildBasicLoginUrl(String loginName) { + if (StrUtil.isBlank(loginName)) { + throw new IllegalArgumentException("当前登录用户缺少工号,无法进入华住"); + } + + // 华住约定使用 AES/ECB/PKCS5Padding 对公司卡号、工号和当前时间生成签名。 + String cardId = HuaZhuConstant.CARD_ID; + String authorizeSign = encrypt(cardId + "&" + loginName + "&" + DateUtil.now(), HuaZhuConstant.AES_KEY); + return HuaZhuConstant.BASEURL.trim().replaceAll("/+$", "") + "/authentication/basicLogin?cardId=" + encode(cardId) + + "&travelType=" + TRAVEL_TYPE + + "&userNumber=" + encode(loginName) + + "&invoiceNo=" + + "&authorizeSign=" + encode(authorizeSign); + } + + /** + * 按华住协议生成 AES 签名,不记录签名内容或密钥。 + * + * @param source 待签名内容 + * @param aesKey 华住提供的 16 字节 AES 密钥 + * @return Base64 编码后的签名 + */ + private String encrypt(String source, String aesKey) { + try { + byte[] keyBytes = aesKey.getBytes(StandardCharsets.UTF_8); + if (keyBytes.length != 16) { + throw new IllegalStateException("华住 AES 密钥必须为 16 字节"); + } + Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); + cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(keyBytes, "AES")); + return Base64.getEncoder().encodeToString(cipher.doFinal(source.getBytes(StandardCharsets.UTF_8))); + } catch (IllegalStateException e) { + throw e; + } catch (Exception e) { + throw new IllegalStateException("生成华住登录签名失败", e); + } + } + + private String encode(String value) { + return URLEncoder.encode(value, StandardCharsets.UTF_8); + } + +} diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/vo/HuaZhuEmployeeStatus.java b/src/main/java/com/budwk/app/zhgh/huazhu/vo/HuaZhuEmployeeStatus.java new file mode 100644 index 0000000..66b87ce --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/vo/HuaZhuEmployeeStatus.java @@ -0,0 +1,32 @@ +package com.budwk.app.zhgh.huazhu.vo; + +import lombok.Data; + +import java.util.List; + +/** + * 华住查询员工接口的展示结果。 + */ +@Data +public class HuaZhuEmployeeStatus { + private String statusCode; + private String userNumber; + private String userName; + private String userDep; + private String costCenter; + private String rank; + private String leader; + private String mobile; + private String email; + private List permissions; + + /** + * 华住返回的预订权限。 + */ + @Data + public static class Permission { + private Boolean hasPermission; + private String permissionCode; + private String permissionValue; + } +} diff --git a/src/main/java/com/budwk/app/zhgh/huazhu/vo/HuaZhuSyncResult.java b/src/main/java/com/budwk/app/zhgh/huazhu/vo/HuaZhuSyncResult.java new file mode 100644 index 0000000..06f9c20 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/huazhu/vo/HuaZhuSyncResult.java @@ -0,0 +1,18 @@ +package com.budwk.app.zhgh.huazhu.vo; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 单个员工同步到华住的执行结果。 + */ +@Data +@Accessors(chain = true) +public class HuaZhuSyncResult { + private String userId; + private String loginName; + private String userName; + /** true=按已配置协议确认成功;false=失败;null=请求结果待核实,不等同同步成功。 */ + private Boolean success; + private String message; +} diff --git a/src/main/java/com/budwk/app/zhgh/inclusive/controller/InclusiveBenefitController.java b/src/main/java/com/budwk/app/zhgh/inclusive/controller/InclusiveBenefitController.java new file mode 100644 index 0000000..e748302 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/inclusive/controller/InclusiveBenefitController.java @@ -0,0 +1,114 @@ +package com.budwk.app.zhgh.inclusive.controller; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.hutool.core.util.StrUtil; +import com.budwk.app.base.result.Result; +import com.budwk.app.zhgh.inclusive.model.InclusiveBenefit; +import com.budwk.app.zhgh.inclusive.param.InclusiveBenefitPageForm; +import com.budwk.app.zhgh.inclusive.service.InclusiveBenefitService; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; + +import javax.validation.Valid; + +/** + * PC 端幸福工荟管理。 + */ +@IocBean +@Ok("json:full") +@At("/platform/inclusive") +public class InclusiveBenefitController { + + @Inject + private InclusiveBenefitService inclusiveBenefitService; + + /** 打开幸福工荟 PC 管理页面。 */ + @At("") + @Ok("beetl:/platform/zhgh/inclusive/index.html") + @SaCheckPermission("inclusive.benefit") + public void index() { + } + + /** + * @param pageForm 必填 pageNumber、pageSize;year、title、tagType 为可选筛选条件 + * @return Result,data 为分页对象,包含 list、totalCount、pageNo、pageSize + */ + @At + @SaCheckPermission("inclusive.benefit") + public Result pageData(@Valid InclusiveBenefitPageForm pageForm) { + return Result.success(inclusiveBenefitService.pageData(pageForm, false)); + } + + /** + * @param id 待回显内容主键 + * @return Result,data 为完整内容对象;记录不存在或已删除时返回错误 + */ + @At + @SaCheckPermission("inclusive.benefit") + public Result findOne(@Param("id") String id) { + Object detail = inclusiveBenefitService.findVO(id, false); + return detail == null ? Result.error("幸福工荟不存在或已删除") : Result.success(detail); + } + + /** + * @param benefit 内容表单:id 为空新增;title 标题、summary 摘要、tagType 标签编码、 + * content 富文本、cover 封面地址必填;year、sexLimit、linkUrl 为可选配置 + * @param status 0 保存草稿,1 发布;为空默认草稿 + * @return Result,code 为 0 表示成功,失败原因见 msg,无业务 data + */ + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("inclusive.benefit") + public Result save(InclusiveBenefit benefit, @Param("status") Integer status) { + if (benefit == null || StrUtil.isBlank(benefit.getTitle())) { + return Result.error("标题不能为空"); + } + if (StrUtil.isBlank(benefit.getTagType())) { + return Result.error("标签类型不能为空"); + } + if (StrUtil.isBlank(benefit.getSummary()) || StrUtil.isBlank(benefit.getContent()) + || StrUtil.isBlank(benefit.getCover())) { + return Result.error("摘要、内容和封面图不能为空"); + } + if (benefit.getTitle().length() > 100 || benefit.getSummary().length() > 500 + || benefit.getTagType().length() > 50 || benefit.getCover().length() > 255 + || (benefit.getLinkUrl() != null && benefit.getLinkUrl().length() > 500)) { + return Result.error("标题、摘要、标签、封面或链接长度超过限制"); + } + if (benefit.getSexLimit() != null && (benefit.getSexLimit() < 0 || benefit.getSexLimit() > 2)) { + return Result.error("性别配置只能为0、1或2"); + } + inclusiveBenefitService.saveBenefit(benefit, status); + return Result.success(); + } + + /** + * @param id 内容主键 + * @param status 0 下架,1 发布 + * @return Result,code 为 0 表示成功,无业务 data + */ + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("inclusive.benefit") + public Result updateStatus(@Param("id") String id, @Param("status") Integer status) { + inclusiveBenefitService.updateStatus(id, status); + return Result.success(); + } + + /** + * @param id 待逻辑删除的内容主键 + * @return Result,code 为 0 表示成功,无业务 data + */ + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("inclusive.benefit") + public Result delete(@Param("id") String id) { + inclusiveBenefitService.deleteBenefit(id); + return Result.success(); + } +} diff --git a/src/main/java/com/budwk/app/zhgh/inclusive/h5Controller/H5InclusiveBenefitController.java b/src/main/java/com/budwk/app/zhgh/inclusive/h5Controller/H5InclusiveBenefitController.java new file mode 100644 index 0000000..48e288a --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/inclusive/h5Controller/H5InclusiveBenefitController.java @@ -0,0 +1,60 @@ +package com.budwk.app.zhgh.inclusive.h5Controller; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import com.budwk.app.base.result.Result; +import com.budwk.app.zhgh.inclusive.param.InclusiveBenefitPageForm; +import com.budwk.app.zhgh.inclusive.service.InclusiveBenefitService; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; + +import javax.validation.Valid; + +/** + * H5 端幸福工荟浏览。 + */ +@IocBean +@Ok("json:full") +@At("/platform/h5/inclusive") +public class H5InclusiveBenefitController { + + @Inject + private InclusiveBenefitService inclusiveBenefitService; + + /** 打开幸福工荟 H5 列表页。 */ + @At("") + @Ok("beetl:/platform/zhghh5/inclusive/index.html") + @SaCheckPermission("h5.inclusive.benefit") + public void index() { + } + + /** + * @param pageForm 必填 pageNumber、pageSize;tagType 为标签编码,可选 year、title + * @return Result,data 为已发布且未删除内容的分页对象,含 list、totalCount、pageNo、pageSize + */ + @At + @SaCheckPermission("h5.inclusive.benefit") + public Result pageData(@Valid InclusiveBenefitPageForm pageForm) { + return Result.success(inclusiveBenefitService.pageData(pageForm, true)); + } + + /** + * @param id 内容主键 + * @return Result,data 为详情对象;不存在、未发布或已删除时返回错误,不返回正文 + */ + @At + @SaCheckPermission("h5.inclusive.benefit") + public Result findOne(@Param("id") String id) { + Object detail = inclusiveBenefitService.findVO(id, true); + return detail == null ? Result.error("内容不存在或已下架") : Result.success(detail); + } + + /** @return Result,data 为标签数组,每项 text 是标签名称,value 是标签编码;无参数 */ + @At + @SaCheckPermission("h5.inclusive.benefit") + public Result tagOptions() { + return Result.success(inclusiveBenefitService.tagOptions()); + } +} diff --git a/src/main/java/com/budwk/app/zhgh/inclusive/model/InclusiveBenefit.java b/src/main/java/com/budwk/app/zhgh/inclusive/model/InclusiveBenefit.java new file mode 100644 index 0000000..262a5a1 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/inclusive/model/InclusiveBenefit.java @@ -0,0 +1,84 @@ +package com.budwk.app.zhgh.inclusive.model; + +import com.budwk.app.base.model.BaseModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.nutz.dao.entity.annotation.ColDefine; +import org.nutz.dao.entity.annotation.ColType; +import org.nutz.dao.entity.annotation.Column; +import org.nutz.dao.entity.annotation.Comment; +import org.nutz.dao.entity.annotation.EL; +import org.nutz.dao.entity.annotation.Name; +import org.nutz.dao.entity.annotation.Table; +import org.nutz.dao.entity.annotation.TableMeta; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +import java.io.Serializable; + +/** + * 幸福工荟内容。 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Table("inclusive_benefit") +@TableMeta("{'mysql-charset':'utf8mb4'}") +@Comment("幸福工荟") +public class InclusiveBenefit extends BaseModel implements Serializable { + + @Name + @Column + @Comment("主键") + @ColDefine(type = ColType.VARCHAR, width = 32) + @PrevInsert(els = @EL("uuid()")) + private String id; + + @Column + @Comment("年度") + @ColDefine(type = ColType.INT) + private Integer year; + + @Column + @Comment("标题") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String title; + + @Column + @Comment("摘要") + @ColDefine(type = ColType.VARCHAR, width = 500) + private String summary; + + @Column + @Comment("标签类型字典编码") + @ColDefine(type = ColType.VARCHAR, width = 50) + private String tagType; + + @Column + @Comment("富文本内容") + @ColDefine(type = ColType.TEXT) + private String content; + + @Column + @Comment("性别限制:0全部开放,1男性,2女性") + @ColDefine(type = ColType.INT) + private Integer sexLimit; + + @Column + @Comment("封面图") + @ColDefine(type = ColType.VARCHAR, width = 255) + private String cover; + + @Column + @Comment("外链地址") + @ColDefine(type = ColType.VARCHAR, width = 500) + private String linkUrl; + + @Column + @Comment("发布状态:0草稿,1已发布") + @ColDefine(type = ColType.INT) + private Integer status; + + @Column + @Comment("发布时间") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String publishTime; +} diff --git a/src/main/java/com/budwk/app/zhgh/inclusive/param/InclusiveBenefitPageForm.java b/src/main/java/com/budwk/app/zhgh/inclusive/param/InclusiveBenefitPageForm.java new file mode 100644 index 0000000..fe18b1a --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/inclusive/param/InclusiveBenefitPageForm.java @@ -0,0 +1,19 @@ +package com.budwk.app.zhgh.inclusive.param; + +import com.budwk.app.base.param.PageForm; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 幸福工荟分页查询参数。 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class InclusiveBenefitPageForm extends PageForm { + /** 可选年度,按内容归属年度精确筛选。 */ + private Integer year; + /** 可选标题关键字,使用包含匹配。 */ + private String title; + /** 可选标签字典编码,空值表示全部标签。 */ + private String tagType; +} diff --git a/src/main/java/com/budwk/app/zhgh/inclusive/service/InclusiveBenefitService.java b/src/main/java/com/budwk/app/zhgh/inclusive/service/InclusiveBenefitService.java new file mode 100644 index 0000000..233333f --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/inclusive/service/InclusiveBenefitService.java @@ -0,0 +1,54 @@ +package com.budwk.app.zhgh.inclusive.service; + +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.service.BaseService; +import com.budwk.app.zhgh.inclusive.model.InclusiveBenefit; +import com.budwk.app.zhgh.inclusive.param.InclusiveBenefitPageForm; +import com.budwk.app.zhgh.inclusive.vo.InclusiveBenefitVO; +import org.nutz.lang.util.NutMap; + +import java.util.List; + +/** + * 幸福工荟业务服务。 + */ +public interface InclusiveBenefitService extends BaseService { + + /** + * 查询管理列表或手机端已发布内容。 + * @param pageForm 页码、每页数量及可选的年度、标题、标签编码 + * @param onlyPublished 手机端固定传 true,PC 管理端传 false,不接受客户端指定 + * @return 分页对象,list 为内容列表,totalCount 为符合条件的总条数 + */ + Pagination pageData(InclusiveBenefitPageForm pageForm, boolean onlyPublished); + + /** + * @param id 内容主键 + * @param onlyPublished true 时只允许读取已发布内容 + * @return 内容及标签名称;不存在、已删除或未发布时返回 null + */ + InclusiveBenefitVO findVO(String id, boolean onlyPublished); + + /** @return 启用的标签列表,每项 text 为名称,value 为字典编码 */ + List tagOptions(); + + /** + * @param benefit 表单内容,id 为空表示新增,否则编辑对应内容 + * @param status 0 保存草稿,1 发布;为空按草稿处理 + * @return 无返回值;内容不存在或参数不合法时抛出 IllegalArgumentException + */ + void saveBenefit(InclusiveBenefit benefit, Integer status); + + /** + * @param id 内容主键 + * @param status 0 下架,1 发布 + * @return 无返回值;发布时更新发布时间 + */ + void updateStatus(String id, Integer status); + + /** + * @param id 待删除内容主键 + * @return 无返回值;仅设置删除标记,保留原记录 + */ + void deleteBenefit(String id); +} diff --git a/src/main/java/com/budwk/app/zhgh/inclusive/service/impl/InclusiveBenefitServiceImpl.java b/src/main/java/com/budwk/app/zhgh/inclusive/service/impl/InclusiveBenefitServiceImpl.java new file mode 100644 index 0000000..2f1cef6 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/inclusive/service/impl/InclusiveBenefitServiceImpl.java @@ -0,0 +1,206 @@ +package com.budwk.app.zhgh.inclusive.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.service.impl.BaseServiceImpl; +import com.budwk.app.sys.models.Sys_dict; +import com.budwk.app.zhgh.inclusive.model.InclusiveBenefit; +import com.budwk.app.zhgh.inclusive.param.InclusiveBenefitPageForm; +import com.budwk.app.zhgh.inclusive.service.InclusiveBenefitService; +import com.budwk.app.zhgh.inclusive.vo.InclusiveBenefitVO; +import org.nutz.dao.Chain; +import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; +import org.nutz.lang.Strings; +import org.nutz.lang.util.NutMap; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; + +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * 幸福工荟业务实现。 + */ +@IocBean(args = {"refer:dao"}) +public class InclusiveBenefitServiceImpl extends BaseServiceImpl implements InclusiveBenefitService { + + private static final String TAG_DICT_CODE = "INCLUSIVE_BENEFIT_TYPE"; + + /** @param dao 当前项目的数据库访问对象 */ + public InclusiveBenefitServiceImpl(Dao dao) { + super(dao); + } + + @Override + public Pagination pageData(InclusiveBenefitPageForm pageForm, boolean onlyPublished) { + Cnd cnd = Cnd.where("delFlag", "=", false); + // H5 的可见性由服务端调用方决定,不能通过提交 status 参数读取草稿或下架内容。 + if (onlyPublished) { + cnd.and("status", "=", 1); + } + if (pageForm.getYear() != null) { + cnd.and("year", "=", pageForm.getYear()); + } + if (Strings.isNotBlank(pageForm.getTitle())) { + cnd.and(Cnd.likeEX("title", pageForm.getTitle())); + } + if (Strings.isNotBlank(pageForm.getTagType())) { + cnd.and("tagType", "=", pageForm.getTagType()); + } + cnd.desc("publishTime").desc("createdAt"); + Pagination pagination = listPage(pageForm.getPageNumber(), pageForm.getPageSize(), cnd); + Map tagNameMap = getTagNameMap(); + List list = pagination.getList().stream() + .map(benefit -> toVO(benefit, tagNameMap)) + .collect(Collectors.toList()); + return new Pagination<>(pagination.getPageNo(), pagination.getPageSize(), pagination.getTotalCount(), list); + } + + @Override + public InclusiveBenefitVO findVO(String id, boolean onlyPublished) { + if (StrUtil.isBlank(id)) { + return null; + } + Cnd cnd = Cnd.where("id", "=", id).and("delFlag", "=", false); + if (onlyPublished) { + cnd.and("status", "=", 1); + } + return toVO(fetch(cnd), getTagNameMap()); + } + + @Override + public List tagOptions() { + Sys_dict parent = dao().fetch(Sys_dict.class, Cnd.where("code", "=", TAG_DICT_CODE) + .and("disabled", "=", false).and("delFlag", "=", false)); + if (parent == null) { + return Collections.emptyList(); + } + return dao().query(Sys_dict.class, Cnd.where("parentId", "=", parent.getId()) + .and("disabled", "=", false).and("delFlag", "=", false).asc("location")) + .stream() + .map(dict -> NutMap.NEW().addv("text", dict.getName()).addv("value", dict.getCode())) + .collect(Collectors.toList()); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void saveBenefit(InclusiveBenefit benefit, Integer status) { + validateStatus(status); + InclusiveBenefit target; + if (StrUtil.isBlank(benefit.getId())) { + target = new InclusiveBenefit(); + target.setYear(benefit.getYear() == null ? DateUtil.year(DateUtil.date()) : benefit.getYear()); + } else { + target = fetch(Cnd.where("id", "=", benefit.getId()).and("delFlag", "=", false)); + if (target == null) { + throw new IllegalArgumentException("幸福工荟不存在或已删除"); + } + target.setYear(benefit.getYear() == null ? target.getYear() : benefit.getYear()); + } + target.setTitle(benefit.getTitle()); + target.setSummary(benefit.getSummary()); + target.setTagType(benefit.getTagType()); + target.setContent(benefit.getContent()); + // 沿用西财的配置字段;本次迁移不将性别配置扩展为新的访问控制规则。 + target.setSexLimit(benefit.getSexLimit() == null ? 0 : benefit.getSexLimit()); + target.setCover(benefit.getCover()); + target.setLinkUrl(benefit.getLinkUrl()); + target.setStatus(status == null ? 0 : status); + if (Integer.valueOf(1).equals(target.getStatus())) { + target.setPublishTime(DateUtil.now()); + } + if (StrUtil.isBlank(target.getId())) { + insert(target); + } else { + update(target); + } + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void updateStatus(String id, Integer status) { + validateStatus(status); + requireId(id); + InclusiveBenefit benefit = fetch(Cnd.where("id", "=", id).and("delFlag", "=", false)); + if (benefit == null) { + throw new IllegalArgumentException("幸福工荟不存在或已删除"); + } + Integer targetStatus = status == null ? 0 : status; + Chain chain = Chain.make("status", targetStatus); + if (Integer.valueOf(1).equals(targetStatus)) { + chain.add("publishTime", DateUtil.now()); + } + update(chain, Cnd.where("id", "=", id)); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void deleteBenefit(String id) { + requireId(id); + InclusiveBenefit benefit = fetch(Cnd.where("id", "=", id).and("delFlag", "=", false)); + if (benefit == null) { + throw new IllegalArgumentException("幸福工荟不存在或已删除"); + } + vDelete(id); + } + + /** 写入操作只支持草稿和发布两种状态,避免非法值产生无法管理的内容。 */ + private void validateStatus(Integer status) { + if (status != null && status != 0 && status != 1) { + throw new IllegalArgumentException("发布状态只能为0或1"); + } + } + + /** 修改状态和删除必须明确指定记录,不允许缺失主键。 */ + private void requireId(String id) { + if (StrUtil.isBlank(id)) { + throw new IllegalArgumentException("内容ID不能为空"); + } + } + + /** 将实体映射为列表/详情对象,附加标签、性别配置和发布状态的展示名称。 */ + private InclusiveBenefitVO toVO(InclusiveBenefit benefit, Map tagNameMap) { + if (benefit == null) { + return null; + } + return new InclusiveBenefitVO() + .setId(benefit.getId()) + .setYear(benefit.getYear()) + .setTitle(benefit.getTitle()) + .setSummary(benefit.getSummary()) + .setTagType(benefit.getTagType()) + .setTagTypeName(tagNameMap.get(benefit.getTagType())) + .setContent(benefit.getContent()) + .setSexLimit(benefit.getSexLimit()) + .setSexLimitName(getSexLimitName(benefit.getSexLimit())) + .setCover(benefit.getCover()) + .setLinkUrl(benefit.getLinkUrl()) + .setStatus(benefit.getStatus()) + .setStatusName(Integer.valueOf(1).equals(benefit.getStatus()) ? "已发布" : "草稿") + .setCreatedAt(benefit.getCreatedAt()) + .setUpdatedAt(benefit.getUpdatedAt()) + .setPublishTime(benefit.getPublishTime()); + } + + private Map getTagNameMap() { + List options = tagOptions(); + // 字典编码重复时保留排序靠前的一项,避免整个列表查询失败。 + return options.stream().collect(Collectors.toMap(option -> option.getString("value"), + option -> option.getString("text"), (first, ignored) -> first)); + } + + private String getSexLimitName(Integer sexLimit) { + if (Integer.valueOf(1).equals(sexLimit)) { + return "男性"; + } + if (Integer.valueOf(2).equals(sexLimit)) { + return "女性"; + } + return "全部开放"; + } +} diff --git a/src/main/java/com/budwk/app/zhgh/inclusive/vo/InclusiveBenefitVO.java b/src/main/java/com/budwk/app/zhgh/inclusive/vo/InclusiveBenefitVO.java new file mode 100644 index 0000000..4e92280 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/inclusive/vo/InclusiveBenefitVO.java @@ -0,0 +1,28 @@ +package com.budwk.app.zhgh.inclusive.vo; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 幸福工荟列表和详情展示对象。 + */ +@Data +@Accessors(chain = true) +public class InclusiveBenefitVO { + private String id; + private Integer year; + private String title; + private String summary; + private String tagType; + private String tagTypeName; + private String content; + private Integer sexLimit; + private String sexLimitName; + private String cover; + private String linkUrl; + private Integer status; + private String statusName; + private Long createdAt; + private Long updatedAt; + private String publishTime; +} diff --git a/src/main/java/com/budwk/app/zhgh/map/TMapController.java b/src/main/java/com/budwk/app/zhgh/map/TMapController.java index 9b89735..5328912 100644 --- a/src/main/java/com/budwk/app/zhgh/map/TMapController.java +++ b/src/main/java/com/budwk/app/zhgh/map/TMapController.java @@ -31,7 +31,7 @@ import javax.validation.Valid; @At("/platform/TMap") public class TMapController { - private static String KEY = "MLLBZ-GQECI-ASXG7-5GNOZ-XW2OF-H5BVH"; + private static String KEY = "NYNBZ-K62KI-DQJGU-U4NJ5-CSME7-ULFMU"; @Inject private SysConfigService configService; diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/controller/PersonApiConfigController.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/controller/PersonApiConfigController.java new file mode 100644 index 0000000..dd3340a --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/controller/PersonApiConfigController.java @@ -0,0 +1,170 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.controller; + +import com.budwk.app.base.param.PageForm; +import com.budwk.app.zhgh.personGovernance.apiConfig.service.PersonApiConfigService; +import com.budwk.app.zhgh.personGovernance.apiConfig.service.PersonGovernanceSyncService; +import cn.dev33.satoken.annotation.SaCheckPermission; +import com.budwk.app.base.result.Result; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.Strings; +import org.springframework.util.Assert; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; + +/** 人员治理API配置页面与接口。 */ +@IocBean +@Ok("json:full") +@At("/platform/personGovernance/apiConfig") +public class PersonApiConfigController { + @Inject + private PersonApiConfigService personApiConfigService; + + @Inject + private PersonGovernanceSyncService personGovernanceSyncService; + + @At("") + @Ok("beetl:/platform/personGovernance/apiConfig/index.html") + @SaCheckPermission("data.person.governance.api") + public void index() { + } + + @At("/form") + @Ok("beetl:/platform/personGovernance/apiConfig/form.html") + @SaCheckPermission("data.person.governance.api") + public void form() { + } + + /** + * API配置分页查询。 + * + * @param pageForm pageNumber/pageSize为页码和每页数量 + * @param configName 配置名称,支持模糊查询 + * @param sourceType HTTP_API或SYSTEM_TABLE + * @param enabled true查询启用、false查询停用;未传、空字符串或空白表示全部 + * @return Pagination结构,list为记录,totalCount为总数 + */ + @At + @SaCheckPermission("data.person.governance.api") + public Result pageData(PageForm pageForm, @Param("configName") String configName, + @Param("sourceType") String sourceType, + @Param("enabled") String enabled) { + // Nutz会将空字符串直接转换为false;保留原始文本,避免未选择状态时误筛选停用记录。 + Boolean enabledFilter = null; + if (Strings.isNotBlank(enabled)) { + String value = enabled.trim(); + Assert.isTrue("true".equalsIgnoreCase(value) || "false".equalsIgnoreCase(value), "启用状态参数不正确"); + enabledFilter = Boolean.valueOf(value); + } + return Result.success(personApiConfigService.pageData(pageForm, configName, sourceType, enabledFilter)); + } + + @At + @SaCheckPermission("data.person.governance.api") + public Result detail(String id) { + return Result.success(personApiConfigService.detail(id)); + } + + /** + * 保存API配置。 + * + * @param data JSON对象;config为基本配置,mappings为字段映射数组,params为带请求范围的参数数组 + * @return PersonApiConfig,包含保存后的配置ID + */ + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("data.person.governance.api.edit") + public Result save(@Param("data") String data) { + return Result.success(personApiConfigService.saveConfig(data)); + } + + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("data.person.governance.api.delete") + public Result delete(String id) { + personApiConfigService.deleteConfig(id); + return Result.success(); + } + + @At + @SaCheckPermission("data.person.governance.api") + public Result tableNames() { + return Result.success(personApiConfigService.tableNames()); + } + + @At + @SaCheckPermission("data.person.governance.api") + public Result columns(String tableName) { + return Result.success(personApiConfigService.columns(tableName)); + } + + @At + @SaCheckPermission("data.person.governance.api.test") + /** + * 测试指定范围的第三方接口配置。 + * + * @param configId API配置ID + * @param requestScope TOKEN表示Token接口,DATA表示人员数据接口 + * @param testCondition 可选的临时查询条件,测试数据接口时追加到Query参数 + * @return NutMap,包含success、status、elapsed和data + */ + public Result test(String configId, String requestScope, + @Param("testCondition") String testCondition) { + return Result.success(personApiConfigService.test(configId, requestScope, testCondition)); + } + + /** + * 根据页面当前配置获取第三方Token,不要求先保存配置。 + * @param data JSON对象:config为请求配置,params为Header/Query/Body参数数组 + * @return 第三方响应解析后的JSON值,非JSON为原文;由ViReturn放入统一响应的data字段 + */ + @At(value = "/getThirdPartyToken", methods = "POST") + @SaCheckPermission("data.person.governance.api.test") + public Result getThirdPartyToken(@Param("data") String data) { + return Result.success(personApiConfigService.queryThirdParty(data, "TOKEN")); + } + + /** + * 根据页面当前配置获取第三方人员数据,不执行人员同步。 + * @param data JSON对象:config为请求配置,params为Header/Query/Body参数数组 + * @return 第三方响应解析后的JSON值,非JSON为原文;由ViReturn放入统一响应的data字段 + */ + @At(value = "/getThirdPartyData", methods = "POST") + @SaCheckPermission("data.person.governance.api.test") + public Result getThirdPartyData(@Param("data") String data) { + return Result.success(personApiConfigService.queryThirdParty(data, "DATA")); + } + + /** 保存当前接口请求及返回结果为可重复执行的测试用例。 */ + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("data.person.governance.api.edit") + public Result saveTestCase(@Param("data") String data) { + return Result.success(personApiConfigService.saveTestCase(data)); + } + + /** id为已保存API配置ID;只追加中间表,返回批次状态、插入数量及失败原因。 */ + @At(methods = "POST") + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("data.person.governance.api.test") + public Result sync(@Param("id") String id) { + return Result.success(personGovernanceSyncService.execute(id, "MANUAL")); + } + + /** cron为Quartz周期文本;合法且有下一次触发时间返回统一成功结果,不创建任务。 */ + @At(methods = "POST") + @SaCheckPermission("data.person.governance.api.edit") + public Result validateCron(@Param("cron") String cron) { + personApiConfigService.validateTaskCron(cron); + return Result.success(); + } + + @At + @SaCheckPermission("data.person.governance.member") + public Result selectableConfigs(@Param("currentMatchConfigId") String currentMatchConfigId) { + return Result.success(personApiConfigService.selectableConfigs(currentMatchConfigId)); + } +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/job/PersonGovernanceSyncJob.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/job/PersonGovernanceSyncJob.java new file mode 100644 index 0000000..32c3b90 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/job/PersonGovernanceSyncJob.java @@ -0,0 +1,55 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.job; + +import com.budwk.app.zhgh.personGovernance.apiConfig.service.PersonGovernanceSyncService; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiConfig; +import org.nutz.dao.Dao; +import org.nutz.lang.Strings; +import org.nutz.log.Logs; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.DisallowConcurrentExecution; +import org.quartz.CronExpression; +import java.util.Objects; + +/** 每个配置独立周期;只执行JobDataMap中的configId,不扫描所有启用配置。 */ +@IocBean +@DisallowConcurrentExecution +public class PersonGovernanceSyncJob implements Job { + @Inject + private Dao dao; + @Inject + private PersonGovernanceSyncService personGovernanceSyncService; + + @Override + @Aop(TransAop.READ_COMMITTED) + public void execute(JobExecutionContext context) { + String id = context.getMergedJobDataMap().getString("configId"); + if (Strings.isBlank(id)) { + Logs.get().warn("人员同步任务缺少configId,请停用旧扫描任务并通过API配置重新启用"); + return; + } + PersonApiConfig config = dao.fetch(PersonApiConfig.class, id); + if (config == null || Boolean.TRUE.equals(config.getDelFlag()) || !Boolean.TRUE.equals(config.getEnabled()) + || !Objects.equals(config.getTaskId(), context.getJobDetail().getKey().getName()) + || !Objects.equals(config.getTaskCron(), context.getMergedJobDataMap().getString("taskCron"))) { + Logs.get().warn("跳过已停用或已被替换的人员同步任务:" + context.getJobDetail().getKey()); + return; + } + try { + // 重启恢复的旧式Quartz触发器也不允许补执行非周期时间点的misfire。 + if (context.getScheduledFireTime() == null + || !new CronExpression(config.getTaskCron()).isSatisfiedBy(context.getScheduledFireTime())) return; + var batch = personGovernanceSyncService.execute(id, "SCHEDULED"); + if (!"SUCCESS".equals(batch.getStatus())) { + Logs.get().warn("人员中间表同步失败,批次:" + batch.getBatchNo() + ",原因:" + batch.getErrorMessage()); + } + } catch (Exception e) { + Logs.get().warn("人员中间表同步未完成,配置:" + id, e); + } + } +} + diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiConfig.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiConfig.java new file mode 100644 index 0000000..08f81ec --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiConfig.java @@ -0,0 +1,150 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.model; + +import com.budwk.app.base.model.BaseModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +import java.util.Date; + +/** + * 人员数据治理API配置,描述来源、目标表以及接口返回数据的解析方式。 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = true) +@Table("person_api_config") +@TableIndexes({@Index(name = "UK_PERSON_API_CONFIG_NAME", fields = {"configName"}, unique = true)}) +public class PersonApiConfig extends BaseModel { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("配置名称") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String configName; + @Column + @Comment("来源类型:HTTP_API、SYSTEM_TABLE") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String sourceType; + @Column + @Comment("接口地址") + @ColDefine(type = ColType.VARCHAR, width = 500) + private String requestUrl; + @Column + @Comment("请求方式") + @ColDefine(type = ColType.VARCHAR, width = 10) + private String requestMethod; + @Column + @Comment("超时秒数") + private Integer timeoutSeconds; + @Column + @Comment("来源系统表") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String sourceTable; + @Column + @Comment("目标人员中间表") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String targetTable; + @Column + @Comment("同步类型:APPEND全量新增、UPSERT存在更新否则新增、INSERT_NEW仅新增不存在数据") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String syncMode; + @Column + @Comment("人员唯一标识目标字段") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String identityField; + @Column + @Comment("Body格式") + @ColDefine(type = ColType.VARCHAR, width = 30) + private String bodyType; + @Column + @Comment("JSON请求体") + @ColDefine(type = ColType.TEXT) + private String bodyContent; + @Column + @Comment("Token接口地址") + @ColDefine(type = ColType.VARCHAR, width = 500) + private String tokenRequestUrl; + @Column + @Comment("Token请求方式") + @ColDefine(type = ColType.VARCHAR, width = 10) + private String tokenRequestMethod; + @Column + @Comment("Token请求超时秒数") + private Integer tokenTimeoutSeconds; + @Column + @Comment("Token请求Body格式") + @ColDefine(type = ColType.VARCHAR, width = 30) + private String tokenBodyType; + @Column + @Comment("Token接口JSON请求体") + @ColDefine(type = ColType.TEXT) + private String tokenBodyContent; + @Column + @Comment("Token响应中Access_Token的字段路径") + @ColDefine(type = ColType.VARCHAR, width = 200) + private String tokenValuePath; + @Column + @Comment("Token响应中Expires_in的字段路径") + @ColDefine(type = ColType.VARCHAR, width = 200) + private String tokenExpiresPath; + @Column + @Comment("Token时效单位:SECONDS秒、MILLISECONDS毫秒、TIMESTAMP到期时间戳") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String tokenExpiryUnit; + @Column + @Comment("随配置保存的Token最新查询响应") + @ColDefine(type = ColType.TEXT) + private String tokenQueryResult; + @Column + @Comment("随配置保存的数据接口最新查询响应") + @ColDefine(type = ColType.TEXT) + private String dataQueryResult; + @Column + @Comment("返回码路径") + @ColDefine(type = ColType.VARCHAR, width = 200) + private String responseCodePath; + @Column + @Comment("成功返回值") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String responseSuccessValue; + @Column + @Comment("返回消息路径") + @ColDefine(type = ColType.VARCHAR, width = 200) + private String responseMessagePath; + @Column + @Comment("人员数组路径") + @ColDefine(type = ColType.VARCHAR, width = 200) + private String responseDataPath; + @Column + @Comment("返回总数路径") + @ColDefine(type = ColType.VARCHAR, width = 200) + private String responseTotalPath; + @Column + @Comment("是否启用同步任务") + private Boolean enabled; + @Column + @Comment("同步任务周期:Quartz Cron表达式,停用后才能修改") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String taskCron; + @Column + @Comment("是否在同步完成后执行工会会员与福利会员匹配规则") + private Boolean matchMemberRules; + @Column + @Comment("最近同步时间") + private Date lastSyncTime; + @Column + @Comment("任务ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String taskId; + @Column + @Comment("备注") + @ColDefine(type = ColType.VARCHAR, width = 500) + private String remark; +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiFieldMapping.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiFieldMapping.java new file mode 100644 index 0000000..47ade48 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiFieldMapping.java @@ -0,0 +1,52 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.model; + +import lombok.Data; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +/** + * 来源字段到人员中间表字段的映射。 + */ +@Data +@Accessors(chain = true) +@Table("person_api_field_mapping") +@TableIndexes({@Index(name = "UK_PERSON_API_MAPPING_TARGET", fields = {"configId", "targetField"}, unique = true)}) +public class PersonApiFieldMapping { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("API配置ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String configId; + @Column + @Comment("来源字段名") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String sourceField; + @Column + @Comment("来源字段说明") + @ColDefine(type = ColType.VARCHAR, width = 200) + private String sourceComment; + @Column + @Comment("系统字段名") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String targetField; + @Column + @Comment("系统字段说明") + @ColDefine(type = ColType.VARCHAR, width = 200) + private String targetComment; + @Column + @Comment("是否必填") + private Boolean required; + @Column + @Comment("是否为人员唯一标识") + private Boolean identityFlag; + @Column + @Comment("排序号") + private Integer sort; +} + diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiRequestParam.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiRequestParam.java new file mode 100644 index 0000000..a7a2daa --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiRequestParam.java @@ -0,0 +1,62 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.model; + +import lombok.Data; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +/** + * 第三方接口的Header、Query或Body参数。 + */ +@Data +@Accessors(chain = true) +@Table("person_api_request_param") +public class PersonApiRequestParam { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("API配置ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String configId; + @Column + @Comment("请求配置范围:TOKEN、DATA") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String requestScope; + @Column + @Comment("参数位置:HEADER、QUERY、BODY") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String paramLocation; + @Column + @Comment("参数名称") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String paramName; + @Column + @Comment("参数类型") + @ColDefine(type = ColType.VARCHAR, width = 30) + private String paramType; + @Column + @Comment("参数值") + @ColDefine(type = ColType.TEXT) + private String paramValue; + @Column + @Comment("是否必填") + private Boolean required; + @Column + @Comment("参数说明") + @ColDefine(type = ColType.VARCHAR, width = 300) + private String description; + // Java属性和接口JSON仍使用sensitive,仅将数据库列映射为非关键字名称,避免MySQL建表失败。 + @Column("sensitiveFlag") + @Comment("是否为敏感参数") + @ColDefine(type = ColType.INT) + private Integer sensitive; + @Column + @Comment("排序号") + @ColDefine(type = ColType.INT) + private Integer sort; +} + diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiTestCase.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiTestCase.java new file mode 100644 index 0000000..6bc25b6 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonApiTestCase.java @@ -0,0 +1,58 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.model; + +import com.budwk.app.base.model.BaseModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +import java.util.Date; + +/** + * 已保存的接口测试用例,不参与正式同步。 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = true) +@Table("person_api_test_case") +public class PersonApiTestCase extends BaseModel { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("API配置ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String configId; + @Column + @Comment("测试请求范围:TOKEN、DATA") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String requestScope; + @Column + @Comment("测试用例名称") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String caseName; + @Column + @Comment("请求参数快照") + @ColDefine(type = ColType.TEXT) + private String requestSnapshot; + @Column + @Comment("响应状态码") + private Integer responseStatus; + @Column + @Comment("响应耗时毫秒数") + private Long responseTime; + @Column + @Comment("响应内容") + @ColDefine(type = ColType.TEXT) + private String responseBody; + @Column + @Comment("测试是否成功") + private Boolean success; + @Column + @Comment("执行时间") + private Date executedAt; +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonSourceRelation.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonSourceRelation.java new file mode 100644 index 0000000..16c7079 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonSourceRelation.java @@ -0,0 +1,57 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.model; + +import com.budwk.app.base.model.BaseModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +import java.util.Date; + +/** + * 某个数据来源中的人员与本地人员的稳定关联。 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = true) +@Table("person_source_relation") +@TableIndexes({@Index(name = "UK_PERSON_SOURCE_KEY", fields = {"configId", "sourcePersonKey"}, unique = true)}) +public class PersonSourceRelation extends BaseModel { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("API配置ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String configId; + @Column + @Comment("来源人员唯一标识") + @ColDefine(type = ColType.VARCHAR, width = 150) + private String sourcePersonKey; + @Column + @Comment("本地人员用户ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String userId; + @Column + @Comment("人员编号") + @ColDefine(type = ColType.VARCHAR, width = 120) + private String personNo; + @Column + @Comment("最近出现的同步批次ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String lastSeenBatchId; + @Column + @Comment("最近出现时间") + private Date lastSeenTime; + @Column + @Comment("当前来源中是否存在") + private Boolean presentFlag; + @Column + @Comment("来源人员数据摘要") + @ColDefine(type = ColType.VARCHAR, width = 64) + private String sourceDataHash; +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonSyncBatch.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonSyncBatch.java new file mode 100644 index 0000000..65a6920 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/model/PersonSyncBatch.java @@ -0,0 +1,72 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.model; + +import com.budwk.app.base.model.BaseModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +import java.util.Date; + +/** + * 一次人员同步的执行批次及汇总结果。 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = true) +@Table("person_sync_batch") +@TableIndexes({@Index(name = "UK_PERSON_SYNC_BATCH_NO", fields = {"batchNo"}, unique = true)}) +public class PersonSyncBatch extends BaseModel { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("API配置ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String configId; + @Column + @Comment("同步批次号") + @ColDefine(type = ColType.VARCHAR, width = 50) + private String batchNo; + @Column + @Comment("触发方式:手动或定时") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String triggerType; + @Column + @Comment("开始时间") + private Date startedAt; + @Column + @Comment("结束时间") + private Date finishedAt; + @Column + @Comment("执行状态") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String status; + @Column + @Comment("来源人员总数") + private Integer sourceCount; + @Column + @Comment("同步成功数量") + private Integer successCount; + @Column + @Comment("新增人员数量") + private Integer newCount; + @Column + @Comment("变更人员数量") + private Integer changeCount; + @Column + @Comment("异常人员数量") + private Integer exceptionCount; + @Column + @Comment("失败错误信息") + @ColDefine(type = ColType.TEXT) + private String errorMessage; + @Column + @Comment("原始文件关联ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String rawFileReid; +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/PersonApiConfigService.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/PersonApiConfigService.java new file mode 100644 index 0000000..020d588 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/PersonApiConfigService.java @@ -0,0 +1,63 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.service; + +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.param.PageForm; +import com.budwk.app.base.service.BaseService; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiConfig; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiFieldMapping; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiRequestParam; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiTestCase; +import org.nutz.lang.util.NutMap; + +import java.util.List; + +/** API配置业务入口。 */ +public interface PersonApiConfigService extends BaseService { + Pagination pageData(PageForm pageForm, String configName, String sourceType, Boolean enabled); + + NutMap detail(String id); + + PersonApiConfig saveConfig(PersonApiConfig config, List mappings, + List params); + + /** + * 解析页面提交的配置、字段映射和请求参数并保存。 + * + * @param data JSON对象,包含 config、mappings、params + * @return 保存后的API配置 + */ + PersonApiConfig saveConfig(String data); + + void deleteConfig(String id); + + List tableNames(); + + List columns(String tableName); + + NutMap test(String configId, String requestScope, String testCondition); + + /** 使用页面当前config、params查询,返回第三方JSON值;非JSON返回原文,不写数据库。 */ + Object queryThirdParty(String data, String requestScope); + + /** page为当前页码或起始数,pageSize为数量或区间长度;结束数=page+pageSize,返回第三方JSON。 */ + Object querySyncPage(PersonApiConfig config, List params, long page, int pageSize); + + /** config和params为待保存或已保存配置;返回mode、cursor、size、step,NONE和LIMIT均只请求一次。 */ + NutMap pagination(PersonApiConfig config, List params); + + /** 读取响应中的箭头路径或历史JSONPath;空路径表示整个响应,路径缺失返回null。 */ + Object readResponsePath(Object response, String path); + + /** 校验Quartz周期语法及下一次执行时间;非法时抛出明确的参数错误。 */ + void validateTaskCron(String cron); + + PersonApiTestCase saveTestCase(PersonApiTestCase testCase); + + /** + * @param data 测试用例JSON + * @return 保存后的测试用例 + */ + PersonApiTestCase saveTestCase(String data); + + List selectableConfigs(String currentMatchConfigId); +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/PersonGovernanceSyncService.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/PersonGovernanceSyncService.java new file mode 100644 index 0000000..251a87e --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/PersonGovernanceSyncService.java @@ -0,0 +1,10 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.service; + +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonSyncBatch; + +/** 正式人员治理同步入口。 */ +public interface PersonGovernanceSyncService { + PersonSyncBatch execute(String configId, String triggerType); + +} + diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/impl/PersonApiConfigServiceImpl.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/impl/PersonApiConfigServiceImpl.java new file mode 100644 index 0000000..63f7f89 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/impl/PersonApiConfigServiceImpl.java @@ -0,0 +1,951 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.service.impl; + +import cn.hutool.core.util.StrUtil; +import cn.hutool.crypto.digest.DigestUtil; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; +import cn.hutool.http.Method; +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.constant.RedisConstant; +import com.budwk.app.base.dao.CndPlus; +import com.budwk.app.base.param.PageForm; +import com.budwk.app.base.service.impl.BaseServiceImpl; +import com.budwk.app.sys.models.Sys_task; +import com.budwk.app.zhgh.personGovernance.apiConfig.job.PersonGovernanceSyncJob; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiConfig; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiFieldMapping; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiRequestParam; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiTestCase; +import com.budwk.app.zhgh.personGovernance.apiConfig.service.PersonApiConfigService; +import com.budwk.app.zhgh.personGovernance.memberMatch.model.PersonMemberMatchConfig; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; +import org.nutz.dao.FieldFilter; +import org.nutz.dao.Sqls; +import org.nutz.dao.sql.Sql; +import org.nutz.integration.jedis.RedisService; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.Strings; +import org.nutz.json.Json; +import org.nutz.lang.random.R; +import org.nutz.lang.util.NutMap; +import org.nutz.log.Logs; +import org.springframework.util.Assert; +import org.quartz.*; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.Date; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Objects; +import java.util.regex.Pattern; + +/** API配置、数据库元数据和只读测试实现。 */ +@IocBean(args = {"refer:dao"}) +public class PersonApiConfigServiceImpl extends BaseServiceImpl implements PersonApiConfigService { + private static final Pattern SAFE_IDENTIFIER = Pattern.compile("^[A-Za-z0-9_]+$"); + /** JSON节点删除标记:Token接口未配置时,用于彻底移除数据请求中的Token字段或数组项。 */ + private static final Object OMIT_TOKEN_PARAMETER = new Object(); + + @Inject + private RedisService redisService; + + @Inject + private Scheduler scheduler; + + public PersonApiConfigServiceImpl(Dao dao) { + super(dao); + } + + @Override + public Pagination pageData(PageForm pageForm, String configName, String sourceType, Boolean enabled) { + CndPlus cnd = CndPlus.create(); + cnd.andEX("configName", "like", Strings.isBlank(configName) ? null : "%" + configName + "%"); + cnd.andEX("sourceType", "=", sourceType); + cnd.andEX("enabled", "=", enabled); + // 历史保存可能将删除标记写为NULL;仅明确标记为true的配置不在列表展示。 + cnd.and(Cnd.exps("delFlag", "=", false).or("delFlag", "is", null)).desc("updatedAt"); + return listPage(pageForm.getPageNumber(), pageForm.getPageSize(), cnd); + } + + @Override + public NutMap detail(String id) { + PersonApiConfig config = fetch(id); + Assert.notNull(config, "API配置不存在"); + // MySQL仅保存Redis Key;详情接口仍返回原始响应,保持现有页面回显协议不变。 + config.setDataQueryResult(resolveDataQueryResult(config.getDataQueryResult())); + List params = dao().query( + PersonApiRequestParam.class, + Cnd.where("configId", "=", id).asc("sort") + ); + // 历史请求参数没有范围标识,统一按数据接口参数回显,保证旧配置兼容。 + params.forEach(param -> { + if (Strings.isBlank(param.getRequestScope())) { + param.setRequestScope("DATA"); + } + }); + List testCases = dao().query( + PersonApiTestCase.class, + Cnd.where("configId", "=", id).desc("executedAt") + ); + testCases.forEach(testCase -> { + if (Strings.isBlank(testCase.getRequestScope())) { + testCase.setRequestScope("DATA"); + } + }); + return NutMap.NEW() + .addv("config", config) + .addv("mappings", dao().query(PersonApiFieldMapping.class, Cnd.where("configId", "=", id).asc("sort"))) + .addv("params", params) + .addv("testCases", testCases); + } + + /** + * 保存两套请求配置、最新响应和未完成的映射/参数。仅配置名称必填,执行时再校验完整性。 + * + * @param config API配置基本信息 + * @param mappings 来源字段到人员中间表字段的映射 + * @param params Token、数据两个范围下的Header、Query、Body请求参数 + * @return 保存后的API配置 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public PersonApiConfig saveConfig(PersonApiConfig config, List mappings, + List params) { + Assert.notNull(config, "配置不能为空"); + Assert.hasText(config.getConfigName(), "请填写配置名称"); + PersonApiConfig stored = Strings.isBlank(config.getId()) ? null : fetch(config.getId()); + if (stored != null) { + // 页面启停与周期均为待保存状态;保存时统一更新调度,并保留原任务归属。 + config.setTaskId(stored.getTaskId()); + } else { + config.setTaskId(null); + } + config.setTaskCron(Strings.sNull(config.getTaskCron()).trim()); + // 历史配置未包含该字段时按关闭处理,避免保存后意外触发会员身份及角色调整。 + config.setMatchMemberRules(Boolean.TRUE.equals(config.getMatchMemberRules())); + if (Boolean.TRUE.equals(config.getEnabled())) { + validateTaskCron(config.getTaskCron()); + } + if (Strings.isBlank(config.getTokenExpiryUnit())) { + config.setTokenExpiryUnit("SECONDS"); + } + Assert.isTrue(List.of("HTTP_API", "SYSTEM_TABLE").contains(config.getSourceType()), "同步方式不正确"); + mappings = mappings == null ? new ArrayList<>() : mappings; + PersonApiFieldMapping identity = mappings.stream() + .filter(v -> Boolean.TRUE.equals(v.getIdentityFlag())) + .findFirst() + .orElse(null); + config.setIdentityField(identity == null ? null : identity.getTargetField()); + // 历史配置未设置同步类型时保留全部追加行为;去重模式必须有唯一的有效业务标识。 + if (Strings.isBlank(config.getSyncMode())) config.setSyncMode("APPEND"); + Assert.isTrue(List.of("APPEND", "UPSERT", "INSERT_NEW").contains(config.getSyncMode()), "同步类型不正确"); + if (!"APPEND".equals(config.getSyncMode())) { + Assert.isTrue(mappings.stream().filter(v -> Boolean.TRUE.equals(v.getIdentityFlag())).count() == 1 + && identity != null && Strings.isNotBlank(identity.getSourceField()) + && Strings.isNotBlank(identity.getTargetField()) + && !List.of("id", "pullTime").contains(identity.getTargetField()), "请选择一个有效的业务唯一标识映射"); + } + if ("HTTP_API".equals(config.getSourceType())) pagination(config, params); + + PersonApiConfig sameName = fetch( + Cnd.where("configName", "=", config.getConfigName()).and("delFlag", "=", false) + ); + Assert.isTrue(sameName == null || Objects.equals(sameName.getId(), config.getId()), "配置名称已存在"); + String previousDataQueryResultKey = null; + String createdDataQueryResultKey = null; + try { + if (Strings.isBlank(config.getId())) { + if (Strings.isNotBlank(config.getDataQueryResult())) { + createdDataQueryResultKey = buildDataQueryResultKey(); + redisService.set(createdDataQueryResultKey, config.getDataQueryResult()); + config.setDataQueryResult(createdDataQueryResultKey); + } else { + config.setDataQueryResult(null); + } + config.setEnabled(Boolean.TRUE.equals(config.getEnabled())); + insert(config); + } else { + PersonApiConfig previous = fetch(config.getId()); + Assert.notNull(previous, "API配置不存在"); + // 删除标记由删除接口维护,普通保存保留数据库值,避免前端漏传或改写该标记。 + config.setDelFlag(previous.getDelFlag()); + previousDataQueryResultKey = isDataQueryResultKey(previous.getDataQueryResult()) + ? previous.getDataQueryResult() : null; + // 老页面未提交响应字段时保留已保存响应;空字符串则表示明确清空。 + if (config.getTokenQueryResult() == null) { + config.setTokenQueryResult(previous.getTokenQueryResult()); + } + if (config.getDataQueryResult() == null) { + config.setDataQueryResult(previous.getDataQueryResult()); + } else if (Strings.isBlank(config.getDataQueryResult())) { + config.setDataQueryResult(null); + } else if (previousDataQueryResultKey != null + && (Objects.equals(previousDataQueryResultKey, config.getDataQueryResult()) + || Objects.equals(redisService.get(previousDataQueryResultKey), config.getDataQueryResult()))) { + // 页面回传内容未变化时复用原Key,避免每次保存都生成无效缓存。 + config.setDataQueryResult(previousDataQueryResultKey); + } else { + createdDataQueryResultKey = buildDataQueryResultKey(); + redisService.set(createdDataQueryResultKey, config.getDataQueryResult()); + config.setDataQueryResult(createdDataQueryResultKey); + } + // 最近同步时间仅由同步完成逻辑维护,排除该列,避免表单空值、旧值或并发保存覆盖最新同步结果。 + dao().update(config, FieldFilter.create(PersonApiConfig.class, null, "^lastSyncTime$", false)); + dao().clear(PersonApiFieldMapping.class, Cnd.where("configId", "=", config.getId())); + dao().clear(PersonApiRequestParam.class, Cnd.where("configId", "=", config.getId())); + } + int index = 1; + for (PersonApiFieldMapping mapping : mappings) { + // 未选择目标字段的多条草稿行以NULL保存,避免目标字段唯一索引将空字符串视为重复值。 + if (Strings.isBlank(mapping.getTargetField())) { + mapping.setTargetField(null); + } + mapping.setId(null).setConfigId(config.getId()).setSort(index++); + } + if (!mappings.isEmpty()) { + dao().insert(mappings); + } + if ("HTTP_API".equals(config.getSourceType()) && params != null && !params.isEmpty()) { + index = 1; + for (PersonApiRequestParam param : params) { + String requestScope = Strings.isBlank(param.getRequestScope()) ? "DATA" : param.getRequestScope(); + Assert.isTrue(List.of("TOKEN", "DATA").contains(requestScope), "请求配置范围不正确"); + param.setRequestScope(requestScope); + param.setId(null).setConfigId(config.getId()).setSort(index++); + } + dao().insert(params); + } + if (previousDataQueryResultKey != null + && !Objects.equals(previousDataQueryResultKey, config.getDataQueryResult())) { + deleteDataQueryResultQuietly(previousDataQueryResultKey); + } + reconcileTask(config); + return config; + } catch (RuntimeException e) { + // 数据库操作失败时回收本次新建的缓存,避免产生无引用Key。 + deleteDataQueryResultQuietly(createdDataQueryResultKey); + throw e; + } + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public PersonApiConfig saveConfig(String data) { + NutMap payload = Json.fromJson(NutMap.class, data); + PersonApiConfig config = Json.fromJson(PersonApiConfig.class, Json.toJson(payload.get("config"))); + List mappings = Json.fromJsonAsList( + PersonApiFieldMapping.class, Json.toJson(payload.get("mappings"))); + List params = Json.fromJsonAsList( + PersonApiRequestParam.class, Json.toJson(payload.get("params"))); + return saveConfig(config, mappings, params); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void deleteConfig(String id) { + Assert.isNull( + dao().fetch( + PersonMemberMatchConfig.class, + Cnd.where("apiConfigId", "=", id).and("delFlag", "=", false) + ), + "该API配置已绑定会员匹配配置,不能删除" + ); + update(org.nutz.dao.Chain.make("delFlag", true).add("enabled", false), Cnd.where("id", "=", id)); + PersonApiConfig config = fetch(id); + config.setEnabled(false); + reconcileTask(config); + } + + @Override + public List tableNames() { + Sql sql = Sqls.create( + "SELECT table_name tableName,table_comment tableComment FROM information_schema.TABLES " + + "WHERE table_schema=(SELECT DATABASE()) ORDER BY table_name" + ); + return listMap(sql); + } + + @Override + public List columns(String tableName) { + validateTable(tableName); + Sql sql = Sqls.create( + "SELECT column_name columnName,column_comment columnComment,column_type columnType," + + "is_nullable isNullable FROM information_schema.COLUMNS " + + "WHERE table_schema=(SELECT DATABASE()) " + + "AND table_name=@tableName ORDER BY ordinal_position" + ) + .setParam("tableName", tableName); + return listMap(sql); + } + + /** + * 执行指定范围的只读测试,不落人员数据。 + * + * @param configId API配置ID + * @param requestScope TOKEN表示Token接口,DATA表示人员数据接口;空值兼容为DATA + * @param testCondition 可选的临时查询条件,仅数据请求使用 + * @return 请求状态、耗时及原始响应内容 + */ + @Override + public NutMap test(String configId, String requestScope, String testCondition) { + PersonApiConfig config = fetch(configId); + Assert.notNull(config, "请先保存API配置"); + long start = System.currentTimeMillis(); + if ("SYSTEM_TABLE".equals(config.getSourceType())) { + validateTable(config.getSourceTable()); + Sql sql = Sqls.create("SELECT * FROM `" + config.getSourceTable() + "` LIMIT 20"); + List rows = listMap(sql); + return NutMap.NEW() + .addv("success", true) + .addv("status", 200) + .addv("elapsed", System.currentTimeMillis() - start) + .addv("data", rows); + } + String scope = Strings.isBlank(requestScope) ? "DATA" : requestScope.toUpperCase(Locale.ROOT); + Assert.isTrue(List.of("TOKEN", "DATA").contains(scope), "请求配置范围不正确"); + List params = dao().query(PersonApiRequestParam.class, + Cnd.where("configId", "=", configId).asc("sort")); + return executeHttp(config, params, scope, testCondition); + } + + /** + * 解析未保存的页面请求。data包含config和params,范围由调用接口固定,避免前端切换串用参数。 + * @param data 页面配置JSON + * @param requestScope TOKEN或DATA + * @return 第三方JSON对象、数组或基本值;非JSON响应返回原文,失败交给统一异常处理 + */ + @Override + public Object queryThirdParty(String data, String requestScope) { + Assert.hasText(data, "请求配置不能为空"); + NutMap payload = Json.fromJson(NutMap.class, data); + Assert.notNull(payload, "请求配置格式不正确"); + PersonApiConfig config = Json.fromJson(PersonApiConfig.class, Json.toJson(payload.get("config"))); + Assert.notNull(config, "请求配置不能为空"); + List params = payload.get("params") == null + ? new ArrayList<>() + : Json.fromJsonAsList(PersonApiRequestParam.class, Json.toJson(payload.get("params"))); + // 状态信息仅供内部判断,查询接口不额外包装第三方业务字段;同步入口仍沿用原结构。 + NutMap response = executeHttp(config, params, requestScope, null); + Assert.isTrue(response.getBoolean("success"), response.getString("error") == null + ? "第三方返回HTTP错误:" + response.get("status") : response.getString("error")); + String body = response.getString("data"); + if (Strings.isBlank(body)) { + return body; + } + try { + return com.alibaba.fastjson.JSON.parse(body); + } catch (com.alibaba.fastjson.JSONException e) { + // HTML、纯文本等响应不能强制转成对象,保留原文由页面提示。 + return body; + } + } + + /** + * 同步取数:params是保存的两套参数,page为页码或起点,pageSize为数量或区间长度;仅替换请求副本。 + * Access_Token标记传入缓存Token,参数值可使用Bearer ${Access_Token}保留前缀。 + * JSON Body支持Access_Token、页码、数量、起始数、结束数占位符,完整数字占位符转为JSON数字。 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public Object querySyncPage(PersonApiConfig config, List params, long page, int pageSize) { + boolean sendBody = !List.of("GET", "HEAD").contains(Strings.sNull(config.getRequestMethod()).toUpperCase(Locale.ROOT)); + boolean tokenConfigured = Strings.isNotBlank(config.getTokenRequestUrl()); + List dataParams = params.stream() + .filter(p -> "DATA".equals(normalizeScope(p.getRequestScope()))) + // 隐藏的form-data草稿不参与JSON或GET/HEAD请求,也不能意外触发Token获取。 + .filter(p -> !"BODY".equals(p.getParamLocation()) || (sendBody && "FORM_DATA".equals(config.getBodyType()))) + .toList(); + // Token地址为空代表数据接口无需鉴权:既不请求Token,也不发送任何Token参数。 + boolean usesToken = tokenConfigured && (dataParams.stream().anyMatch(p -> "Access_Token".equals(p.getDescription())) + || (sendBody && "JSON".equals(config.getBodyType()) + && Strings.sNull(config.getBodyContent()).contains("${Access_Token}"))); + String token = usesToken ? cachedToken(config, params) : ""; + PersonApiConfig requestConfig = Json.fromJson(PersonApiConfig.class, Json.toJson(config)); + List requestParams = Json.fromJsonAsList(PersonApiRequestParam.class, Json.toJson(dataParams)); + for (PersonApiRequestParam param : requestParams) { + if ("Access_Token".equals(param.getDescription())) { + String value = Strings.sNull(param.getParamValue()); + param.setParamValue(value.contains("${Access_Token}") ? value.replace("${Access_Token}", token) : token); + } else if ("页码".equals(param.getDescription())) { + param.setParamValue(String.valueOf(page)); + } else if ("数量".equals(param.getDescription())) { + param.setParamValue(String.valueOf(pageSize)); + } else if ("起始数".equals(param.getDescription())) { + param.setParamValue(String.valueOf(page)); + } else if ("结束数".equals(param.getDescription())) { + param.setParamValue(String.valueOf(Math.addExact(page, pageSize))); + } + } + if (sendBody && "JSON".equals(config.getBodyType()) + && Strings.isNotBlank(config.getBodyContent())) { + Object body = com.alibaba.fastjson.JSON.parse(config.getBodyContent()); + if (!tokenConfigured) { + body = normalizeJsonRoot(stripTokenJsonParameters(body)); + } + requestConfig.setBodyContent(com.alibaba.fastjson.JSON.toJSONString(fillJsonParameters(body, token, page, pageSize))); + } + NutMap response = executeHttp(requestConfig, requestParams, "DATA", null); + Assert.isTrue(response.getBoolean("success"), "数据接口请求失败:" + + (response.get("error") == null ? response.get("status") : response.get("error"))); + return parseResponseObject(response.getString("data")); + } + + /** + * 保存与执行共用分页校验。只读取数据请求实际发送的参数,Token及隐藏Body草稿不参与。 + * 返回cursor为初始页码/起点,size为每页数量/区间长度,step为每轮推进值;无分页size=0。 + * 仅配置数量时使用LIMIT模式,表示把数量作为单次请求上限,不追加页码或起点且不循环请求。 + * JSON占位符沿用默认初值:页码1、起始数0、数量100、结束数100。 + */ + @Override + public NutMap pagination(PersonApiConfig config, List params) { + List roles = List.of("页码", "数量", "起始数", "结束数"); + Map values = new LinkedHashMap<>(); + boolean sendBody = !List.of("GET", "HEAD").contains(Strings.sNull(config.getRequestMethod()).toUpperCase(Locale.ROOT)); + for (PersonApiRequestParam param : params == null ? List.of() : params) { + if (!"DATA".equals(normalizeScope(param.getRequestScope()))) continue; + if ("BODY".equals(param.getParamLocation()) && (!sendBody || !"FORM_DATA".equals(config.getBodyType()))) continue; + String role = param.getDescription(); + if (!roles.contains(Strings.sNull(role))) continue; + Assert.isTrue(!values.containsKey(role), "分页标记不能重复:" + role); + Assert.hasText(param.getParamName(), "分页参数名称不能为空:" + role); + Assert.hasText(param.getParamValue(), "分页参数值不能为空:" + role); + values.put(role, param.getParamValue().trim()); + } + if (sendBody && "JSON".equals(config.getBodyType())) { + String body = Strings.sNull(config.getBodyContent()); + for (String role : roles) { + if (body.contains("${" + role + "}")) { + values.putIfAbsent(role, "页码".equals(role) ? "1" : "起始数".equals(role) ? "0" : "100"); + } + } + } + if (values.isEmpty()) return NutMap.NEW().addv("mode", "NONE").addv("cursor", 0L).addv("size", 0).addv("step", 0L); + boolean page = values.keySet().equals(java.util.Set.of("页码", "数量")); + boolean range = values.keySet().equals(java.util.Set.of("起始数", "结束数")); + boolean offset = values.keySet().equals(java.util.Set.of("起始数", "数量")); + boolean limit = values.keySet().equals(java.util.Set.of("数量")); + Assert.isTrue(page || range || offset || limit, + "分页仅支持:页码+数量、起始数+结束数、起始数+数量,或仅数量;不得缺项或混用"); + try { + for (String value : values.values()) Assert.isTrue(value.matches("[0-9]+"), "分页参数必须为非负整数"); + long cursor = limit ? 0L : Long.parseLong(values.get(page ? "页码" : "起始数")); + long size = range ? Math.subtractExact(Long.parseLong(values.get("结束数")), cursor) + : Long.parseLong(values.get("数量")); + Assert.isTrue(size > 0 && size <= 10000, "数量或结束数-起始数须在1至10000之间"); + Math.addExact(cursor, size); + return NutMap.NEW().addv("mode", limit ? "LIMIT" : page ? "PAGE" : range ? "RANGE" : "OFFSET") + .addv("cursor", cursor).addv("size", (int) size) + .addv("step", limit ? 0L : page ? 1L : size); + } catch (NumberFormatException | ArithmeticException e) { + throw new IllegalArgumentException("分页参数超出整数范围", e); + } + } + + /** + * Token接口未配置时递归移除JSON Body中的Token参数,而不是把Token占位符替换为空字符串。 + * Map字段或数组项只要直接以字符串引用Access_Token,就整体省略;其他业务节点保持原结构。 + */ + private Object stripTokenJsonParameters(Object value) { + if (value instanceof Map map) { + Map result = new LinkedHashMap<>(); + map.forEach((key, child) -> { + Object sanitized = stripTokenJsonParameters(child); + if (sanitized != OMIT_TOKEN_PARAMETER) { + result.put(String.valueOf(key), sanitized); + } + }); + return result; + } + if (value instanceof List list) { + List result = new ArrayList<>(); + for (Object child : list) { + Object sanitized = stripTokenJsonParameters(child); + if (sanitized != OMIT_TOKEN_PARAMETER) { + result.add(sanitized); + } + } + return result; + } + if (value instanceof String text && text.contains("${Access_Token}")) { + return OMIT_TOKEN_PARAMETER; + } + return value; + } + + /** JSON根节点不能携带内部删除标记;极端情况下整个Body只有Token时按JSON null发送。 */ + private Object normalizeJsonRoot(Object value) { + return value == OMIT_TOKEN_PARAMETER ? null : value; + } + + /** JSON按节点替换而不是拼接字符串,避免Token中的引号破坏请求体。 */ + private Object fillJsonParameters(Object value, String token, long page, int pageSize) { + if (value instanceof Map map) { + Map result = new LinkedHashMap<>(); + map.forEach((k, v) -> result.put(String.valueOf(k), fillJsonParameters(v, token, page, pageSize))); + return result; + } + if (value instanceof List list) { + return list.stream().map(v -> fillJsonParameters(v, token, page, pageSize)).toList(); + } + if (value instanceof String text) { + if ("${页码}".equals(text)) return page; + if ("${数量}".equals(text)) return pageSize; + if ("${起始数}".equals(text)) return page; + if ("${结束数}".equals(text)) return Math.addExact(page, pageSize); + return text.replace("${Access_Token}", token).replace("${页码}", String.valueOf(page)) + .replace("${数量}", String.valueOf(pageSize)).replace("${起始数}", String.valueOf(page)) + .replace("${结束数}", String.valueOf(Math.addExact(page, pageSize))); + } + return value; + } + + /** Token缓存按配置及Token请求指纹隔离,配置修改后不会误用旧缓存。 */ + @Aop(TransAop.READ_COMMITTED) + private String cachedToken(PersonApiConfig config, List params) { + Assert.hasText(config.getTokenValuePath(), "请填写Access_Token映射路径"); + Assert.hasText(config.getTokenExpiresPath(), "请填写Expires_in映射路径"); + List tokenParams = params.stream() + .filter(p -> "TOKEN".equals(p.getRequestScope())).toList(); + // 只纳入影响Token的请求内容,避免保存响应、页码变化使缓存失效。 + List fingerprint = new ArrayList<>(); + fingerprint.add(config.getTokenRequestUrl()); + fingerprint.add(config.getTokenRequestMethod()); + fingerprint.add(config.getTokenBodyType()); + fingerprint.add(config.getTokenBodyContent()); + fingerprint.add(config.getTokenValuePath()); + fingerprint.add(config.getTokenExpiresPath()); + fingerprint.add(config.getTokenExpiryUnit()); + tokenParams.forEach(p -> fingerprint.add(List.of(Strings.sNull(p.getParamLocation()), + Strings.sNull(p.getParamName()), Strings.sNull(p.getParamValue())))); + String key = RedisConstant.PLATFORM_REDIS_PREFIX + "personGovernance:token:" + config.getId() + + ":" + DigestUtil.sha256Hex(Json.toJson(fingerprint)); + String cached = redisService.get(key); + if (Strings.isNotBlank(cached)) return cached; + String owner = R.UU32(); + String lockKey = key + ":refresh"; + Assert.isTrue("OK".equals(redisService.set(lockKey, owner, "NX", "EX", 650)), "Token正在刷新,请稍后重试同步"); + try { + cached = redisService.get(key); + if (Strings.isNotBlank(cached)) return cached; + long requestedAt = System.currentTimeMillis(); + NutMap result = executeHttp(config, tokenParams, "TOKEN", null); + Assert.isTrue(result.getBoolean("success"), "Token接口请求失败"); + Object response = parseResponseObject(result.getString("data")); + Object tokenValue = readResponsePath(response, config.getTokenValuePath()); + Assert.isTrue(tokenValue instanceof String && Strings.isNotBlank((String) tokenValue), "Access_Token映射结果不是有效字符串"); + Object expiry = readResponsePath(response, config.getTokenExpiresPath()); + long ttl = tokenTtlMillis(expiry, config.getTokenExpiryUnit(), requestedAt, System.currentTimeMillis()); + redisService.set(key, (String) tokenValue, "NX", "PX", ttl); + return (String) tokenValue; + } finally { + redisService.eval("if redis.call('get',KEYS[1])==ARGV[1] then return redis.call('del',KEYS[1]) else return 0 end", + List.of(lockKey), List.of(owner)); + } + } + + /** 时效为正整数秒/毫秒,或10位秒级、13位毫秒级到期时间戳;扣除请求耗时。 */ + private long tokenTtlMillis(Object expiry, String unit, long requestedAt, long now) { + Assert.notNull(expiry, "Expires_in路径未找到有效期"); + String text = String.valueOf(expiry).trim(); + Assert.isTrue(text.matches("[0-9]+"), "Expires_in必须为正整数"); + try { + long value = Long.parseLong(text); + String actualUnit = Strings.isBlank(unit) ? "SECONDS" : unit; + long expiresAt; + if ("TIMESTAMP".equals(actualUnit)) { + Assert.isTrue(text.length() == 10 || text.length() == 13, "到期时间戳必须为10位秒或13位毫秒"); + expiresAt = text.length() == 10 ? Math.multiplyExact(value, 1000L) : value; + } else { + Assert.isTrue(List.of("SECONDS", "MILLISECONDS").contains(actualUnit), "Token时效单位不正确"); + long millis = "SECONDS".equals(actualUnit) ? Math.multiplyExact(value, 1000L) : value; + expiresAt = Math.addExact(requestedAt, millis); + } + long remaining = Math.subtractExact(expiresAt, now); + Assert.isTrue(remaining > 0, "Token已过期或有效期无效"); + // 最多提前1秒失效,降低临近到期时拿到无效Token的风险。 + return Math.max(1, remaining - Math.min(1000, remaining / 10)); + } catch (ArithmeticException | NumberFormatException e) { + throw new IllegalArgumentException("Token有效期超出支持范围", e); + } + } + + /** 展开最多20层重复编码的JSON;普通Token字符串保持原样。 */ + private Object parseResponseObject(Object value) { + for (int i = 0; i < 20 && value instanceof String; i++) { + String text = ((String) value).trim(); + if (!(text.startsWith("{") || text.startsWith("[") || text.startsWith("\""))) break; + try { + value = com.alibaba.fastjson.JSON.parse(text); + } catch (com.alibaba.fastjson.JSONException e) { + throw new IllegalArgumentException("第三方返回结果不是合法JSON", e); + } + } + return value; + } + + @Override + public Object readResponsePath(Object response, String path) { + Object value = parseResponseObject(response); + if (Strings.isBlank(path) || "$".equals(path.trim())) return value; + String expression = path.trim(); + if (expression.contains("->")) { + for (String field : expression.split("->", -1)) { + Assert.hasText(field.trim(), "映射路径包含空节点"); + value = parseResponseObject(value); + if (!(value instanceof Map map)) return null; + value = map.get(field.trim()); + } + } else if (value instanceof Map map && map.containsKey(expression)) { + value = map.get(expression); + } else { + value = com.alibaba.fastjson.JSONPath.eval(value, expression.startsWith("$") ? expression : "$." + expression); + } + return parseResponseObject(value); + } + + /** 已保存测试和页面查询共享HTTP组装;校验仅在实际请求时执行,响应不自动落库。 */ + private NutMap executeHttp(PersonApiConfig config, List params, + String scope, String testCondition) { + Assert.isTrue(List.of("TOKEN", "DATA").contains(scope), "请求配置范围不正确"); + long start = System.currentTimeMillis(); + boolean omitToken = "DATA".equals(scope) && Strings.isBlank(config.getTokenRequestUrl()); + params = params.stream() + .filter(param -> scope.equals(normalizeScope(param.getRequestScope()))) + // 未配置Token接口时,Header、Query及Form Data中的Token参数均不进入实际请求。 + .filter(param -> !omitToken || !"Access_Token".equals(param.getDescription())) + .toList(); + String requestUrl = "TOKEN".equals(scope) ? config.getTokenRequestUrl() : config.getRequestUrl(); + String requestMethod = "TOKEN".equals(scope) ? config.getTokenRequestMethod() : config.getRequestMethod(); + Integer timeoutSeconds = "TOKEN".equals(scope) ? config.getTokenTimeoutSeconds() : config.getTimeoutSeconds(); + String bodyType = "TOKEN".equals(scope) ? config.getTokenBodyType() : config.getBodyType(); + String bodyContent = "TOKEN".equals(scope) ? config.getTokenBodyContent() : config.getBodyContent(); + Assert.hasText(requestUrl, "请填写" + ("TOKEN".equals(scope) ? "Token" : "数据") + "请求地址"); + Assert.hasText(requestMethod, "请选择请求方式"); + Method method = Method.valueOf(requestMethod.trim().toUpperCase(Locale.ROOT)); + boolean sendBody = method != Method.GET && method != Method.HEAD; + Assert.isTrue(requestUrl.startsWith("http://") || requestUrl.startsWith("https://"), + "请求地址必须以http://或https://开头"); + Assert.isTrue(timeoutSeconds != null && timeoutSeconds >= 1 && timeoutSeconds <= 300, + "超时必须在1000至300000毫秒之间"); + for (PersonApiRequestParam param : params) { + // GET/HEAD不使用Body;JSON模式也不校验暂存的form-data行。 + if ("BODY".equals(param.getParamLocation()) && (!sendBody || "JSON".equals(bodyType))) { + continue; + } + Assert.hasText(param.getParamName(), "请求参数名称不能为空"); + Assert.isTrue(List.of("HEADER", "QUERY", "BODY").contains(param.getParamLocation()), + "请求参数位置不正确"); + if (Boolean.TRUE.equals(param.getRequired())) { + Assert.hasText(param.getParamValue(), "必填请求参数值不能为空:" + param.getParamName()); + } + } + String url = appendQuery(requestUrl, params, "DATA".equals(scope) ? testCondition : null); + // Query已按UTF-8编码;禁用URL二次解码/编码,保留%2B等特殊字符的原始含义。 + HttpRequest request = HttpRequest.of(url, null) + .method(method) + .timeout((timeoutSeconds == null ? 30 : timeoutSeconds) * 1000); + Map form = new LinkedHashMap<>(); + for (PersonApiRequestParam param : params) { + if ("HEADER".equals(param.getParamLocation())) { + request.header(param.getParamName(), Strings.sNull(param.getParamValue())); + } else if (sendBody && "BODY".equals(param.getParamLocation()) && "FORM_DATA".equals(bodyType)) { + form.put(param.getParamName(), param.getParamValue()); + } + } + if (sendBody && "JSON".equals(bodyType)) { + if (StrUtil.isNotBlank(bodyContent)) { + try { + Object body = com.alibaba.fastjson.JSON.parse(bodyContent); + if (omitToken) { + bodyContent = com.alibaba.fastjson.JSON.toJSONString( + normalizeJsonRoot(stripTokenJsonParameters(body)) + ); + } + } catch (com.alibaba.fastjson.JSONException e) { + throw new IllegalArgumentException("Body不是有效的JSON,请检查后重试", e); + } + request.body(bodyContent).header("Content-Type", "application/json; charset=UTF-8"); + } + } else if (sendBody && "FORM_DATA".equals(bodyType) && !form.isEmpty()) { + // 当前项目Hutool通过Content-Type识别纯文本multipart,并自动生成boundary。 + request.form(form).header("Content-Type", "multipart/form-data"); + } + try (HttpResponse response = request.execute()) { + String responseBody = response.body(); + // 按排查要求打印第三方响应原文;返回值复用同一正文,不附加请求参数或统计信息。 + Logs.get().info(responseBody); + return NutMap.NEW() + .addv("success", response.isOk()) + .addv("status", response.getStatus()) + .addv("elapsed", System.currentTimeMillis() - start) + .addv("data", responseBody); + } catch (cn.hutool.core.io.IORuntimeException | cn.hutool.http.HttpException e) { + // 无HTTP响应时status为null,不伪造第三方状态码,也不把请求头或Token写入错误详情。 + String error = "第三方请求失败,请检查服务地址、网络连接及服务端日志"; + Throwable cause = e; + for (int depth = 0; cause != null && depth < 20; depth++, cause = cause.getCause()) { + if (cause instanceof java.net.SocketTimeoutException) { + error = "第三方连接或读取响应超时"; + break; + } + if (cause instanceof java.net.UnknownHostException) { + error = "第三方域名解析失败"; + break; + } + if (cause instanceof java.net.ConnectException) { + error = "无法连接第三方服务,请检查地址、端口及网络"; + break; + } + if (cause instanceof javax.net.ssl.SSLException) { + error = "第三方HTTPS连接失败,请检查证书及TLS配置"; + break; + } + } + return NutMap.NEW().addv("success", false).addv("status", null) + .addv("elapsed", System.currentTimeMillis() - start).addv("data", null).addv("error", error); + } + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public PersonApiTestCase saveTestCase(PersonApiTestCase testCase) { + Assert.hasText(testCase.getConfigId(), "API配置ID不能为空"); + Assert.hasText(testCase.getCaseName(), "请填写测试用例名称"); + Assert.notNull(fetch(testCase.getConfigId()), "API配置不存在"); + String requestScope = Strings.isBlank(testCase.getRequestScope()) ? "DATA" : testCase.getRequestScope(); + Assert.isTrue(List.of("TOKEN", "DATA").contains(requestScope), "测试请求范围不正确"); + testCase.setRequestScope(requestScope); + testCase.setExecutedAt(new Date()); + return dao().insert(testCase); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public PersonApiTestCase saveTestCase(String data) { + return saveTestCase(Json.fromJson(PersonApiTestCase.class, data)); + } + + @Override + public void validateTaskCron(String cron) { + Assert.hasText(cron, "启用同步任务前请填写任务周期(Quartz Cron)"); + Assert.isTrue(cron.trim().length() <= 50, "任务周期长度不能超过50个字符"); + Assert.isTrue(CronExpression.isValidExpression(cron.trim()), "任务周期不是合法的Quartz Cron表达式"); + try { + Assert.notNull(new CronExpression(cron.trim()).getNextValidTimeAfter(new Date()), "任务周期没有未来执行时间"); + } catch (java.text.ParseException e) { + throw new IllegalArgumentException("任务周期格式不正确", e); + } + } + + /** + * 按执行类和data.configId确认任务归属;停用保留记录并暂停,启用核对周期后恢复。 + * 历史重复任务只禁用,不删除任务记录、同步批次或中间表数据。 + */ + @Aop(TransAop.READ_COMMITTED) + private void reconcileTask(PersonApiConfig config) { + try { + List ownedTasks = dao().query(Sys_task.class, + Cnd.where("jobClass", "=", PersonGovernanceSyncJob.class.getName()).asc("id")) + .stream().filter(task -> belongsToConfig(task.getData(), config.getId())).toList(); + Sys_task task = ownedTasks.stream().filter(item -> Objects.equals(item.getId(), config.getTaskId())) + .findFirst().orElse(ownedTasks.isEmpty() ? null : ownedTasks.get(0)); + + boolean enabled = Boolean.TRUE.equals(config.getEnabled()); + // 停用时暂停全部关联任务;启用时仅允许保留的主任务恢复,历史副本继续暂停。 + for (JobKey oldKey : scheduler.getJobKeys(org.quartz.impl.matchers.GroupMatcher.anyJobGroup())) { + JobDetail oldJob = scheduler.getJobDetail(oldKey); + if (oldJob != null && PersonGovernanceSyncJob.class.equals(oldJob.getJobClass()) + && Objects.equals(config.getId(), oldJob.getJobDataMap().getString("configId")) + && (!enabled || task == null || !oldKey.equals(JobKey.jobKey(task.getId(), task.getId())))) { + scheduler.pauseJob(oldKey); + } + } + for (Sys_task duplicate : ownedTasks) { + if (task != null && !Objects.equals(task.getId(), duplicate.getId())) { + duplicate.setDisabled(true); + dao().update(duplicate); + } + } + if (task == null && !enabled) { + config.setTaskId(null); + update(org.nutz.dao.Chain.make("taskId", null), Cnd.where("id", "=", config.getId())); + return; + } + boolean existing = task != null; + if (!existing) task = new Sys_task(); + task.setName(StrUtil.sub("人员中间表同步:" + config.getConfigName(), 0, 50)); + task.setJobClass(PersonGovernanceSyncJob.class.getName()); + boolean cronChanged = !Objects.equals(task.getCron(), config.getTaskCron()); + // 停用期间只保存配置草稿;再次启用时才将新周期同步到任务及Quartz。 + if (enabled) { + task.setCron(config.getTaskCron()); + task.setData(Json.toJson(NutMap.NEW().addv("configId", config.getId()).addv("taskCron", config.getTaskCron()))); + } + task.setNote("仅追加中间表,按周期执行,不立即触发"); + task.setDisabled(!enabled); + if (existing) dao().update(task); else dao().insert(task); + // Sys_task的PrevInsert会生成真实主键,必须插入后再回写,不能预先分配ID。 + config.setTaskId(task.getId()); + update(org.nutz.dao.Chain.make("taskId", task.getId()), Cnd.where("id", "=", config.getId())); + JobKey key = JobKey.jobKey(task.getId(), task.getId()); + if (enabled) { + JobDetail existingJob = scheduler.getJobDetail(key); + Assert.isTrue(existingJob == null || (PersonGovernanceSyncJob.class.equals(existingJob.getJobClass()) + && Objects.equals(config.getId(), existingJob.getJobDataMap().getString("configId"))), + "任务标识被其他调度占用,请检查任务配置"); + JobDetail job = JobBuilder.newJob(PersonGovernanceSyncJob.class).withIdentity(key) + .usingJobData("configId", config.getId()).usingJobData("taskCron", config.getTaskCron()).build(); + TriggerKey triggerKey = TriggerKey.triggerKey(task.getId(), task.getId()); + Trigger oldTrigger = scheduler.getTrigger(triggerKey); + Assert.isTrue(oldTrigger == null || key.equals(oldTrigger.getJobKey()), "触发器标识被其他任务占用"); + Date now = new Date(); + boolean reload = cronChanged || !(oldTrigger instanceof CronTrigger) + || !Objects.equals(((CronTrigger) oldTrigger).getCronExpression(), config.getTaskCron()) + || oldTrigger.getMisfireInstruction() != CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING + || oldTrigger.getNextFireTime() == null || !oldTrigger.getNextFireTime().after(now); + if (existingJob == null || reload) { + // 恢复时跳过暂停期间错过的时间,即使尚未达到Quartz的misfire阈值也不补执行。 + Date next = CronScheduleBuilder.cronSchedule(config.getTaskCron()).build().getFireTimeAfter(now); + Assert.notNull(next, "任务周期没有未来执行时间"); + CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity(triggerKey).forJob(key) + .startAt(next).withSchedule(CronScheduleBuilder.cronSchedule(config.getTaskCron()) + .withMisfireHandlingInstructionDoNothing()).build(); + if (existingJob == null) { + scheduler.scheduleJob(job, trigger); + } else { + scheduler.addJob(job, true, true); + if (oldTrigger == null) scheduler.scheduleJob(trigger); + else Assert.notNull(scheduler.rescheduleJob(triggerKey, trigger), "更新任务触发器失败,请重试"); + } + } else if (!Objects.equals(existingJob.getJobDataMap().getString("taskCron"), config.getTaskCron())) { + scheduler.addJob(job, true, true); + } + scheduler.resumeJob(key); + } + } catch (SchedulerException e) { + throw new IllegalStateException("同步任务调度更新失败,请重试", e); + } + } + + /** 旧任务参数可能为空或损坏;无法确认归属时保留,不误删其他任务。 */ + private boolean belongsToConfig(String data, String configId) { + if (Strings.isBlank(data) || Strings.isBlank(configId)) return false; + try { + NutMap values = Json.fromJson(NutMap.class, data); + return values != null && Objects.equals(configId, values.getString("configId")); + } catch (RuntimeException e) { + return false; + } + } + + @Override + public List selectableConfigs(String currentMatchConfigId) { + Sql sql = Sqls.create( + "SELECT c.id,c.configName,c.targetTable,m.id matchConfigId,m.configName matchConfigName " + + "FROM person_api_config c " + + "LEFT JOIN person_member_match_config m ON m.apiConfigId=c.id AND m.delFlag=0 " + + "WHERE c.delFlag=0 ORDER BY c.configName" + ); + List rows = listMap(sql); + rows.forEach(row -> row.setv( + "selectable", + row.get("matchConfigId") == null + || Objects.equals(currentMatchConfigId, row.getString("matchConfigId")) + )); + return rows; + } + + private String appendQuery(String url, List params, String testCondition) { + List values = new ArrayList<>(); + for (PersonApiRequestParam param : params) { + if ("QUERY".equals(param.getParamLocation())) { + values.add(encode(param.getParamName()) + "=" + encode(Strings.sNull(param.getParamValue()))); + } + } + if (StrUtil.isNotBlank(testCondition)) { + values.add("testCondition=" + encode(testCondition)); + } + if (values.isEmpty()) { + return url; + } + // 参数必须位于片段标识#之前;保留URL已有Query,避免出现?&或&&。 + int fragmentIndex = url.indexOf('#'); + String address = fragmentIndex < 0 ? url : url.substring(0, fragmentIndex); + String fragment = fragmentIndex < 0 ? "" : url.substring(fragmentIndex); + String separator = address.contains("?") ? (address.endsWith("?") || address.endsWith("&") ? "" : "&") : "?"; + return address + separator + String.join("&", values) + fragment; + } + + /** 历史记录缺少范围时按数据接口处理。 */ + private String normalizeScope(String requestScope) { + return Strings.isBlank(requestScope) ? "DATA" : requestScope; + } + + /** + * 解析数据库中的数据查询结果。新数据保存Redis Key,历史数据仍可能直接保存响应原文。 + * + * @param storedValue MySQL中的dataQueryResult值,可能是Redis Key或历史响应原文 + * @return Redis中的原始响应;历史原文直接返回;缓存不存在时返回空字符串 + */ + private String resolveDataQueryResult(String storedValue) { + if (!isDataQueryResultKey(storedValue)) { + return storedValue; + } + return Strings.sNull(redisService.get(storedValue)); + } + + /** 生成固定业务前缀加32位随机值的Redis Key。 */ + private String buildDataQueryResultKey() { + return RedisConstant.REDIS_KEY_PERSON_API_DATA_QUERY_RESULT + R.UU32(); + } + + /** 仅识别本业务生成的Key,避免把历史响应原文误当作Redis Key。 */ + private boolean isDataQueryResultKey(String value) { + return Strings.isNotBlank(value) + && value.startsWith(RedisConstant.REDIS_KEY_PERSON_API_DATA_QUERY_RESULT); + } + + /** + * 清理被替换或保存失败的缓存。清理失败不能回滚已成功的配置保存,最多遗留无引用Key。 + */ + private void deleteDataQueryResultQuietly(String key) { + if (!isDataQueryResultKey(key)) { + return; + } + try { + redisService.del(key); + } catch (RuntimeException ignored) { + // Redis清理失败不影响主流程;Key没有MySQL引用,不会影响业务读取。 + } + } + + private String encode(String value) { + return URLEncoder.encode(value, StandardCharsets.UTF_8); + } + + private void validateTable(String tableName) { + validateIdentifier(tableName); + Sql sql = Sqls.fetchInt( + "SELECT COUNT(*) FROM information_schema.TABLES " + + "WHERE table_schema=(SELECT DATABASE()) AND table_name=@tableName" + ) + .setParam("tableName", tableName); + dao().execute(sql); + Assert.isTrue(sql.getInt() > 0, "数据表不存在"); + } + + private void validateIdentifier(String identifier) { + Assert.isTrue( + StrUtil.isNotBlank(identifier) && SAFE_IDENTIFIER.matcher(identifier).matches(), + "表名或字段名不合法" + ); + } +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/impl/PersonGovernanceSyncServiceImpl.java b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/impl/PersonGovernanceSyncServiceImpl.java new file mode 100644 index 0000000..e417ba9 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/apiConfig/service/impl/PersonGovernanceSyncServiceImpl.java @@ -0,0 +1,683 @@ +package com.budwk.app.zhgh.personGovernance.apiConfig.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; +import cn.hutool.crypto.digest.DigestUtil; +import com.budwk.app.base.constant.RedisConstant; +import com.budwk.app.sys.models.Sys_task; +import com.budwk.app.sys.models.Sys_user; +import com.budwk.app.sys.models.Sys_user_history; +import com.budwk.app.sys.models.Sys_user_source; +import com.budwk.app.zhgh.staffmanage.member.constant.MemberChangeOrigin; +import com.budwk.app.zhgh.staffmanage.member.constant.MemberChangeType; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.*; +import com.budwk.app.zhgh.personGovernance.apiConfig.service.PersonApiConfigService; +import com.budwk.app.zhgh.personGovernance.apiConfig.service.PersonGovernanceSyncService; +import com.budwk.app.zhgh.personGovernance.memberMatch.service.PersonMemberMatchService; +import com.budwk.app.zhgh.personGovernance.personException.model.PersonException; +import lombok.extern.slf4j.Slf4j; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.dao.*; +import org.nutz.dao.sql.Sql; +import org.nutz.integration.jedis.RedisService; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.json.Json; +import org.nutz.lang.Lang; +import org.nutz.lang.Strings; +import org.nutz.lang.random.R; +import org.nutz.lang.util.NutMap; +import org.springframework.util.Assert; + +import java.sql.Savepoint; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.*; + +/** + * 按配置批量新增或更新目标表,整批数据的 pullTime 保持一致。 + * 定时任务写入正式人员表时,同步记录新增人员及实际发生字段变化的人员历史。 + */ +@IocBean +@Slf4j +public class PersonGovernanceSyncServiceImpl implements PersonGovernanceSyncService { + private static final int WRITE_BATCH_SIZE = 500; + private static final int MAX_PAGES = 10000; + private static final int MAX_ROWS = 1000000; + @Inject + private Dao dao; + @Inject + private PersonApiConfigService personApiConfigService; + @Inject + private RedisService redisService; + @Inject + private PersonMemberMatchService personMemberMatchService; + + /** + * configId为保存的配置,triggerType为MANUAL/SCHEDULED;返回批次,FAILED时errorMessage为原因。 + * 保存点用于回滚本批中间表插入但保留失败批次,不再将取数失败当作人员缺失。 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public PersonSyncBatch execute(String configId, String triggerType) { + PersonApiConfig config = dao.fetch(PersonApiConfig.class, configId); + Assert.notNull(config, "API配置不存在"); + Assert.isTrue(!Boolean.TRUE.equals(config.getDelFlag()), "API配置已删除"); + if ("SCHEDULED".equals(triggerType)) { + Assert.isTrue(Boolean.TRUE.equals(config.getEnabled()), "同步任务已停用"); + } + String lockKey = RedisConstant.PLATFORM_REDIS_PREFIX + "personGovernance:sync:" + configId; + String owner = R.UU32(); + Assert.isTrue("OK".equals(redisService.set(lockKey, owner, "NX", "EX", 900)), "该配置正在同步,请勿重复执行"); + PersonSyncBatch batch = new PersonSyncBatch().setConfigId(configId).setBatchNo("PG_" + R.UU32()) + .setTriggerType(Strings.isBlank(triggerType) ? "MANUAL" : triggerType).setStartedAt(new Date()) + .setStatus("RUNNING").setSourceCount(0).setSuccessCount(0).setNewCount(0) + .setChangeCount(0).setExceptionCount(0); + log.info("[人员同步] 开始执行,configId={},batchNo={},triggerType={},sourceType={},sourceTable={},targetTable={},syncMode={}", + configId, batch.getBatchNo(), triggerType, config.getSourceType(), config.getSourceTable(), + config.getTargetTable(), config.getSyncMode()); + Savepoint[] savepoint = new Savepoint[1]; + try { + dao.insert(batch); + dao.run(connection -> { + Assert.isTrue(!connection.getAutoCommit(), "同步必须在事务中执行"); + savepoint[0] = connection.setSavepoint(); + }); + List mappings = dao.query(PersonApiFieldMapping.class, + Cnd.where("configId", "=", configId).asc("sort")); + // 页面会加载整张表的列;批次字段由系统生成,未配置的非必填列交给数据库默认值。 + mappings = mappings.stream() + .filter(m -> !List.of("id", "pullTime").contains(Strings.sNull(m.getTargetField()))) + .filter(m -> Boolean.TRUE.equals(m.getRequired()) + || (Strings.isNotBlank(m.getSourceField()) && Strings.isNotBlank(m.getTargetField()))) + .toList(); + List columns = validateTarget(config, mappings); + log.info("[人员同步] 目标表和字段映射校验完成,configId={},batchNo={},targetTable={},mappingCount={},columnCount={}", + configId, batch.getBatchNo(), config.getTargetTable(), mappings.size(), columns.size()); + if ("SYSTEM_TABLE".equals(config.getSourceType())) { + Assert.isTrue(!config.getTargetTable().equals(config.getSourceTable()), "来源表不能与目标表相同"); + List sourceColumns = personApiConfigService.columns(config.getSourceTable()); + boolean scheduled = "SCHEDULED".equals(triggerType); + Object latestPullTime = null; + Sql sourceSql = Sqls.create("SELECT * FROM `" + config.getSourceTable() + "`"); + if (scheduled) { + boolean hasPullTime = sourceColumns.stream() + .anyMatch(column -> "pullTime".equalsIgnoreCase(column.getString("columnName"))); + Assert.isTrue(hasPullTime, "定时同步的来源系统表必须包含pullTime字段"); + // 定时任务仅消费来源表最新拉取批次,避免每次触发都重复同步全部历史数据。 + Sql latestPullTimeSql = Sqls.create("SELECT MAX(`pullTime`) latestPullTime FROM `" + + config.getSourceTable() + "`"); + List latestPullTimeRows = personApiConfigService.listMap(latestPullTimeSql); + if (!latestPullTimeRows.isEmpty()) { + latestPullTime = latestPullTimeRows.get(0).get("latestPullTime"); + } + sourceSql = Sqls.create("SELECT * FROM `" + config.getSourceTable() + + "` WHERE `pullTime` = (SELECT MAX(latest.`pullTime`) FROM `" + + config.getSourceTable() + "` latest)"); + } + List rows = personApiConfigService.listMap(sourceSql); + log.info("[人员同步] 来源系统表读取完成,configId={},batchNo={},sourceTable={},triggerType={},latestPullTime={},sourceCount={}", + configId, batch.getBatchNo(), config.getSourceTable(), triggerType, latestPullTime, rows.size()); + boolean sourceMissingCheck = isSourceMissingExceptionSync(config); + boolean matchMemberRules = shouldMatchMemberRules(config); + log.info("[人员同步] 治理分支判断,configId={},batchNo={},matchMemberRules={},sourceMissingCheck={}", + configId, batch.getBatchNo(), matchMemberRules, sourceMissingCheck); + log.info("[人员同步] 来源缺失原有条件,configId={},batchNo={},isSysUserTarget={},isUpsert={},execute={}", + configId, batch.getBatchNo(), "sys_user".equalsIgnoreCase(config.getTargetTable()), + "UPSERT".equals(syncMode(config)), sourceMissingCheck); + if (sourceMissingCheck) { + // 工会、福利规则分别计算后合并去重,满足任意一类规则的人员均参与异常判断。 + List beforeMatchedIds = personMemberMatchService.matchedAnyMemberUserIds(configId); + log.info("[人员同步] 写入前两类会员规则查询完成,configId={},batchNo={},matchedCount={}", + configId, batch.getBatchNo(), beforeMatchedIds.size()); + } + log.info("[人员同步] 开始字段映射转换及目标表批量写入,configId={},batchNo={},sourceCount={},mappingCount={}", + configId, batch.getBatchNo(), rows.size(), mappings.size()); + insertPage(config, mappings, columns, rows, batch, lockKey, owner); + log.info("[人员同步] 目标表批量写入完成,configId={},batchNo={},successCount={},newCount={},changeCount={},skipCount={}", + configId, batch.getBatchNo(), batch.getSuccessCount(), batch.getNewCount(), + batch.getChangeCount(), batch.getSourceCount() - batch.getSuccessCount()); + // 会员身份及角色调整仅由配置开关控制,与来源缺失异常的原有执行条件相互独立。 + if (matchMemberRules) { + personMemberMatchService.reconcileForApiConfig(configId); + } else { + log.info("[人员同步] 跳过工会会员和福利会员规则匹配,configId={},batchNo={},原因=是否匹配会员规则未开启", + configId, batch.getBatchNo()); + } + if (sourceMissingCheck) { + recordMissingMemberExceptions(config, mappings, rows, batch); + } else { + log.info("[人员同步] 跳过来源缺失异常处理,configId={},batchNo={},原因=仅SYSTEM_TABLE+sys_user+UPSERT执行", + configId, batch.getBatchNo()); + } + } else { + List params = dao.query(PersonApiRequestParam.class, + Cnd.where("configId", "=", configId).asc("sort")); + NutMap paging = personApiConfigService.pagination(config, params); + long page = paging.getLong("cursor"); + int pageSize = paging.getInt("size"); + boolean singleLimitRequest = "LIMIT".equals(paging.getString("mode")); + Set fingerprints = new HashSet<>(); + for (int count = 0; ; count++) { + Assert.isTrue(count < MAX_PAGES, "超过最大分页次数,已终止并回滚本批次"); + renewLock(lockKey, owner); + log.info("[人员同步] 开始读取接口分页,configId={},batchNo={},pageIndex={},cursor={},pageSize={}", + configId, batch.getBatchNo(), count + 1, page, pageSize); + Object response = personApiConfigService.querySyncPage(config, params, page, pageSize); + Object dataset = personApiConfigService.readResponsePath(response, config.getResponseDataPath()); + Assert.isTrue(dataset instanceof List, "数据集映射未找到数组,请检查返回结果路径"); + List rows = (List) dataset; + log.info("[人员同步] 接口分页读取完成,configId={},batchNo={},pageIndex={},rowCount={}", + configId, batch.getBatchNo(), count + 1, rows.size()); + if (!rows.isEmpty() && pageSize > 0) { + Assert.isTrue(fingerprints.add(DigestUtil.sha256Hex(Json.toJson(rows))), "接口重复返回同一页,已终止并回滚本批次"); + } + insertPage(config, mappings, columns, rows, batch, lockKey, owner); + // 按接口原始条数判定,已存在而跳过的记录仍属于这一页。 + // 仅数量模式是单次限量查询,即使正好返回配置数量也不能继续构造下一页请求。 + if (singleLimitRequest || pageSize == 0 || rows.size() < pageSize) break; + page = Math.addExact(page, paging.getLong("step")); + } + // 第三方接口同步同样以配置开关为准,分页全部写入完成后只执行一次会员规则匹配。 + if (shouldMatchMemberRules(config)) { + personMemberMatchService.reconcileForApiConfig(configId); + } else { + log.info("[人员同步] 跳过工会会员和福利会员规则匹配,configId={},batchNo={},原因=是否匹配会员规则未开启", + configId, batch.getBatchNo()); + } + } + batch.setStatus("SUCCESS").setFinishedAt(new Date()); + log.info("[人员同步] 执行成功,configId={},batchNo={},sourceCount={},successCount={},newCount={},changeCount={},exceptionCount={}", + configId, batch.getBatchNo(), batch.getSourceCount(), batch.getSuccessCount(), batch.getNewCount(), + batch.getChangeCount(), batch.getExceptionCount()); + dao.update(PersonApiConfig.class, Chain.make("lastSyncTime", batch.getFinishedAt()), Cnd.where("id", "=", configId)); + } catch (Exception e) { + log.error("[人员同步] 执行失败,configId={},batchNo={},sourceTable={},targetTable={},syncMode={},原因={}", + configId, batch.getBatchNo(), config.getSourceTable(), config.getTargetTable(), + config.getSyncMode(), e.getMessage(), e); + if (savepoint[0] == null) throw new IllegalStateException("同步批次初始化失败", e); + dao.run(connection -> connection.rollback(savepoint[0])); + batch.setStatus("FAILED").setSuccessCount(0).setNewCount(0).setChangeCount(0).setFinishedAt(new Date()) + .setErrorMessage(e.getMessage() == null ? "同步执行失败" : e.getMessage()); + } finally { + redisService.eval("if redis.call('get',KEYS[1])==ARGV[1] then return redis.call('del',KEYS[1]) else return 0 end", + List.of(lockKey), List.of(owner)); + } + dao.update(batch); + // 任务列表按秒级exeAt展示执行时间;失败批次也回写原因,避免误认为未触发。 + if ("SCHEDULED".equals(batch.getTriggerType()) && Strings.isNotBlank(config.getTaskId())) { + String result = "SUCCESS".equals(batch.getStatus()) + ? "执行成功,新增" + batch.getNewCount() + "条,更新" + batch.getChangeCount() + "条,跳过" + + (batch.getSourceCount() - batch.getSuccessCount()) + "条,批次:" + batch.getBatchNo() + : "执行失败,批次:" + batch.getBatchNo() + ",原因:" + batch.getErrorMessage(); + dao.update(Sys_task.class, Chain.make("exeAt", batch.getStartedAt().getTime() / 1000) + .add("exeResult", result), + Cnd.where("id", "=", config.getTaskId()).and("jobClass", "=", + "com.budwk.app.zhgh.personGovernance.apiConfig.job.PersonGovernanceSyncJob")); + } + return batch; + } + + /** 工会会员与福利会员匹配只受配置开关控制,两类来源均可在同步完成后执行。 */ + private boolean shouldMatchMemberRules(PersonApiConfig config) { + return Boolean.TRUE.equals(config.getMatchMemberRules()); + } + + /** 来源缺失异常保留原有执行条件,不受会员规则匹配开关影响。 */ + private boolean isSourceMissingExceptionSync(PersonApiConfig config) { + return "SYSTEM_TABLE".equals(config.getSourceType()) + && "sys_user".equalsIgnoreCase(config.getTargetTable()) + && "UPSERT".equals(syncMode(config)); + } + + /** 来源缺失且命中工会或福利任意一类会员规则的人员写入待确认异常,已有待确认记录只更新发现信息。 */ + @Aop(TransAop.READ_COMMITTED) + private void recordMissingMemberExceptions(PersonApiConfig config, List mappings, + List sourceRows, PersonSyncBatch batch) { + PersonApiFieldMapping identityMapping = mappings.stream() + .filter(mapping -> Objects.equals(config.getIdentityField(), mapping.getTargetField())) + .findFirst().orElse(null); + if (identityMapping == null) { + log.warn("[人员同步] 跳过异常人员比较,configId={},batchNo={},原因=未找到唯一标识字段映射,identityField={}", + config.getId(), batch.getBatchNo(), config.getIdentityField()); + return; + } + Set sourceIdentities = sourceRows.stream() + .map(row -> Strings.sNull(personApiConfigService.readResponsePath(row, identityMapping.getSourceField()))) + .filter(Strings::isNotBlank) + .collect(java.util.stream.Collectors.toSet()); + log.info("[人员同步] 来源唯一标识整理完成,configId={},batchNo={},sourceCount={},validIdentityCount={}", + config.getId(), batch.getBatchNo(), sourceRows.size(), sourceIdentities.size()); + List matchedIds = personMemberMatchService.matchedAnyMemberUserIds(config.getId()); + if (matchedIds.isEmpty()) { + log.warn("[人员同步] 异常人员比较结束,configId={},batchNo={},原因=会员规则未命中任何人员", + config.getId(), batch.getBatchNo()); + return; + } + Assert.isTrue(config.getIdentityField().matches("[A-Za-z0-9_]+"), "唯一标识字段不合法"); + // superadmin是系统内置管理账号,不参与来源系统缺失人员的异常判断。 + Sql sql = Sqls.create("SELECT u.id,u.`" + config.getIdentityField() + "` identityValue,u.loginname,u.username,u.unitId,un.name unitName " + + "FROM sys_user u LEFT JOIN sys_unit un ON u.unitId=un.id " + + "WHERE u.id IN (@ids) AND u.loginname<>'superadmin'") + .setParam("ids", matchedIds); + List matchedUsers = personApiConfigService.listMap(sql); + int missingCount = 0; + int insertedCount = 0; + int updatedCount = 0; + for (NutMap user : matchedUsers) { + String identity = user.getString("identityValue"); + if (Strings.isBlank(identity) || sourceIdentities.contains(identity)) continue; + missingCount++; + PersonException exception = dao.fetch(PersonException.class, + Cnd.where("configId", "=", config.getId()).and("userId", "=", user.getString("id")) + .and("status", "=", "PENDING").and("delFlag", "=", false)); + if (exception == null) { + exception = new PersonException().setConfigId(config.getId()).setDiscoverBatchId(batch.getId()) + .setUserId(user.getString("id")).setPersonNo(user.getString("loginname")) + .setPersonName(user.getString("username")).setUnitId(user.getString("unitId")) + .setUnitName(user.getString("unitName")).setExceptionType("SOURCE_MISSING") + .setExceptionReason("来源系统表中不存在该人员").setLastSyncTime(batch.getStartedAt()) + .setDiscoverTime(new Date()).setStatus("PENDING"); + dao.insert(exception); + batch.setExceptionCount(batch.getExceptionCount() + 1); + insertedCount++; + } else { + exception.setDiscoverBatchId(batch.getId()).setLastSyncTime(batch.getStartedAt()) + .setDiscoverTime(new Date()); + dao.update(exception); + updatedCount++; + } + } + log.info("[人员同步] 异常人员比较完成,configId={},batchNo={},matchedUserCount={},sourceMissingCount={},exceptionInsertedCount={},exceptionUpdatedCount={}", + config.getId(), batch.getBatchNo(), matchedUsers.size(), missingCount, insertedCount, updatedCount); + } + + /** 校验目标表和业务唯一标识;数据库唯一约束由批量写入检查,冲突时整批回滚。 */ + private List validateTarget(PersonApiConfig config, List mappings) { + Assert.hasText(config.getTargetTable(), "请选择目标人员中间表"); + List columns = personApiConfigService.columns(config.getTargetTable()); + Map fields = new HashMap<>(); + columns.forEach(c -> fields.put(c.getString("columnName"), c)); + Assert.isTrue(fields.containsKey("id") && fields.containsKey("pullTime"), "目标中间表必须包含id和pullTime字段"); + Assert.isTrue(fields.get("id").getString("columnType").toLowerCase(Locale.ROOT).contains("char"), "中间表id须支持字符串主键"); + Assert.notEmpty(mappings, "请配置字段映射"); + Set targets = new HashSet<>(); + for (PersonApiFieldMapping mapping : mappings) { + Assert.hasText(mapping.getSourceField(), "请补全来源字段"); + Assert.hasText(mapping.getTargetField(), "请补全系统字段"); + Assert.isTrue(fields.containsKey(mapping.getTargetField()), "目标表不存在映射字段:" + mapping.getTargetField()); + Assert.isTrue(targets.add(mapping.getTargetField()), "系统字段不能重复映射:" + mapping.getTargetField()); + } + String mode = syncMode(config); + if (!"APPEND".equals(mode)) { + Assert.hasText(config.getIdentityField(), "去重同步必须配置唯一标识"); + Assert.isTrue(targets.contains(config.getIdentityField()) + && !List.of("id", "pullTime").contains(config.getIdentityField()), "唯一标识必须是有效的业务映射字段"); + } + return columns; + } + + /** 历史配置兼容全部追加;非法模式拒绝执行,避免意外覆盖数据。 */ + private String syncMode(PersonApiConfig config) { + String mode = Strings.isBlank(config.getSyncMode()) ? "APPEND" : config.getSyncMode(); + Assert.isTrue(List.of("APPEND", "UPSERT", "INSERT_NEW").contains(mode), "同步类型不正确"); + return mode; + } + + /** + * 每500条转换并执行JDBC批处理,不累积全部分页结果。 + * rows为接口原始数组;新增与更新数量仅在整块执行成功后计入,外层保存点负责失败回滚。 + */ + @Aop(TransAop.READ_COMMITTED) + private void insertPage(PersonApiConfig config, List mappings, List columns, + List rows, PersonSyncBatch batch, String lockKey, String owner) { + Assert.isTrue((long) batch.getSourceCount() + rows.size() <= MAX_ROWS, "超过单批最大行数,已终止同步"); + batch.setSourceCount(batch.getSourceCount() + rows.size()); + Map types = new HashMap<>(); + columns.forEach(c -> types.put(c.getString("columnName"), c.getString("columnType"))); + String mode = syncMode(config); + PersonApiFieldMapping identityMapping = mappings.stream() + .filter(mapping -> Strings.isNotBlank(config.getIdentityField()) + && Objects.equals(config.getIdentityField(), mapping.getTargetField())) + .findFirst().orElse(null); + for (int offset = 0; offset < rows.size(); offset += WRITE_BATCH_SIZE) { + renewLock(lockKey, owner); + List valuesList = new ArrayList<>(); + int chunkSourceCount = Math.min(offset + WRITE_BATCH_SIZE, rows.size()) - offset; + for (Object row : rows.subList(offset, Math.min(offset + WRITE_BATCH_SIZE, rows.size()))) { + Assert.isTrue(row instanceof Map, "数据集行必须为JSON对象"); + // 先过滤空业务标识,再校验其他必填字段及转换类型;未配置标识的全量追加保持原行为。 + // 不改变原始rows和sourceCount,避免整页被过滤时提前结束分页,跳过数量由原始数减成功数统计。 + if (identityMapping != null) { + Object identity = personApiConfigService.readResponsePath(row, identityMapping.getSourceField()); + if (identity == null || Strings.isBlank(String.valueOf(identity))) { + continue; + } + } + NutMap values = NutMap.NEW(); + for (PersonApiFieldMapping mapping : mappings) { + Object value = personApiConfigService.readResponsePath(row, mapping.getSourceField()); + if (Boolean.TRUE.equals(mapping.getRequired())) { + Assert.isTrue(value != null && !Strings.isBlank(String.valueOf(value)), "必填来源字段为空:" + mapping.getSourceField()); + } + try { + values.put(mapping.getTargetField(), convertValue(value, types.get(mapping.getTargetField()))); + } catch (RuntimeException e) { + throw new IllegalArgumentException("字段类型转换失败:" + mapping.getSourceField() + " -> " + mapping.getTargetField()); + } + } + if (!"APPEND".equals(mode)) { + Object identity = values.get(config.getIdentityField()); + Assert.isTrue(identity != null && Strings.isNotBlank(String.valueOf(identity)), "唯一标识不能为空:" + config.getIdentityField()); + } + values.put("id", R.UU32()); + values.put("pullTime", batch.getStartedAt()); + valuesList.add(values); + } + // 当前500条全部被过滤时不查询目标表,也不提交空批次。 + if (valuesList.isEmpty()) { + log.warn("[人员同步] 数据块转换后无可写入数据,configId={},batchNo={},offset={},sourceCount={},原因=唯一标识为空或映射数据无效", + config.getId(), batch.getBatchNo(), offset, chunkSourceCount); + continue; + } + log.info("[人员同步] 数据块转换完成,configId={},batchNo={},offset={},sourceCount={},convertedCount={},filteredCount={}", + config.getId(), batch.getBatchNo(), offset, chunkSourceCount, valuesList.size(), + chunkSourceCount - valuesList.size()); + int[] counts = new int[2]; + // 保护标识只约束定时任务;人工同步仍保持现有行为,便于管理员主动修复数据。 + boolean protectSysUser = "SCHEDULED".equals(batch.getTriggerType()) + && "sys_user".equalsIgnoreCase(config.getTargetTable()); + dao.run(connection -> writeChunk(connection, config, valuesList, mode, protectSysUser, counts)); + batch.setNewCount(batch.getNewCount() + counts[0]); + batch.setChangeCount(batch.getChangeCount() + counts[1]); + batch.setSuccessCount(batch.getSuccessCount() + counts[0] + counts[1]); + log.info("[人员同步] 数据块写入完成,configId={},batchNo={},offset={},insertCount={},updateCount={}", + config.getId(), batch.getBatchNo(), offset, counts[0], counts[1]); + } + } + + /** + * 目标表及字段已通过元数据校验;所有值使用绑定参数,禁止拼接业务数据。 + * 派生表批量关联按数据库自身排序规则比较唯一标识,并用输入序号返回已有主键。 + * 同块重复来源标识按数据库比较结果归并:更新模式后值覆盖,新增模式首值保留。 + */ + @Aop(TransAop.READ_COMMITTED) + private void writeChunk(Connection connection, PersonApiConfig config, List rows, + String mode, boolean protectSysUser, int[] counts) throws SQLException { + String table = quoteIdentifier(config.getTargetTable()); + Map existing = new HashMap<>(); + Set protectedRows = new HashSet<>(); + Map representatives = new HashMap<>(); + if (!"APPEND".equals(mode)) { + String identity = quoteIdentifier(config.getIdentityField()); + String derived = java.util.stream.IntStream.range(0, rows.size()) + .mapToObj(i -> "SELECT " + i + " AS seq, ? AS val").collect(java.util.stream.Collectors.joining(" UNION ALL ")); + // 一次批量匹配已有数据;同一标识对应多个目标主键时中止,不任意更新。 + String protectedField = protectSysUser ? ",t.`flag`" : ""; + try (PreparedStatement statement = connection.prepareStatement( + "SELECT s.seq,t.`id`" + protectedField + " FROM (" + derived + ") s JOIN " + + table + " t ON t." + identity + "=s.val")) { + for (int i = 0; i < rows.size(); i++) statement.setObject(i + 1, rows.get(i).get(config.getIdentityField())); + try (ResultSet result = statement.executeQuery()) { + while (result.next()) { + int seq = result.getInt(1); + Assert.isTrue(existing.putIfAbsent(seq, result.getString(2)) == null, "目标表唯一标识对应多条记录,请先清理重复数据"); + if (protectSysUser && Integer.valueOf(1).equals(result.getObject(3, Integer.class))) { + protectedRows.add(seq); + } + } + } + } + // 使用目标字段的排序规则归并本块来源值,避免大小写/尾随空格等造成同块重复插入。 + String collation = null; + try (PreparedStatement statement = connection.prepareStatement( + "SELECT COLLATION_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME=? AND COLUMN_NAME=?")) { + statement.setString(1, config.getTargetTable()); + statement.setString(2, config.getIdentityField()); + try (ResultSet result = statement.executeQuery()) { + if (result.next()) collation = result.getString(1); + } + } + String comparison = "a.val=b.val"; + if (collation != null) { + Assert.isTrue(collation.matches("[A-Za-z0-9_]+"), "目标字段排序规则不合法"); + String charset = collation.substring(0, collation.indexOf('_')); + comparison = "CONVERT(a.val USING " + charset + ") COLLATE " + collation + + "=CONVERT(b.val USING " + charset + ") COLLATE " + collation; + } + try (PreparedStatement statement = connection.prepareStatement( + "SELECT a.seq,MIN(b.seq) FROM (" + derived + ") a JOIN (" + derived + + ") b ON " + comparison + " GROUP BY a.seq")) { + for (int i = 0; i < rows.size(); i++) { + Object value = rows.get(i).get(config.getIdentityField()); + statement.setObject(i + 1, value); + statement.setObject(rows.size() + i + 1, value); + } + try (ResultSet result = statement.executeQuery()) { + while (result.next()) representatives.put(result.getInt(1), result.getInt(2)); + } + } + } + Map inserts = new LinkedHashMap<>(); + Map updates = new LinkedHashMap<>(); + for (int i = 0; i < rows.size(); i++) { + NutMap row = rows.get(i); + String id = existing.get(i); + int representative = representatives.getOrDefault(i, i); + if (id != null) { + // 定时任务命中受保护人员时,不写人员字段,也不计入更新成功数。 + if (protectedRows.contains(i)) { + continue; + } + if ("UPSERT".equals(mode)) { + row.put("id", id); + updates.put(id, row); + } + } else if (!inserts.containsKey(representative)) { + inserts.put(representative, row); + } else if ("UPSERT".equals(mode)) { + row.put("id", inserts.get(representative).get("id")); + inserts.put(representative, row); + } + } + List updateSnapshots = new ArrayList<>(); + Map> updateChangeTypes = new LinkedHashMap<>(); + if (protectSysUser && !updates.isEmpty()) { + // 一次查询更新前快照;只有映射业务字段实际变化时才生成历史,pullTime变化不计入人员变更。 + List currentUsers = dao.query(Sys_user.class, + Cnd.where("id", "in", updates.keySet().toArray(new String[0]))); + Map currentUserMap = currentUsers.stream() + .collect(java.util.stream.Collectors.toMap(Sys_user::getId, user -> user)); + for (Map.Entry entry : updates.entrySet()) { + Sys_user currentUser = currentUserMap.get(entry.getKey()); + if (currentUser == null) { + continue; + } + List changeTypes = resolveChangeTypes(currentUser, entry.getValue()); + if (!changeTypes.isEmpty()) { + updateSnapshots.add(currentUser); + updateChangeTypes.put(currentUser.getId(), changeTypes); + } + } + } + if (!inserts.isEmpty()) { + if ("sys_user_source".equals(config.getTargetTable())) { + // 实体集合一次提交,保留 Sys_user_source/BaseModel 的插入拦截器及默认字段,不创建正式人员。 + List entities = inserts.values().stream() + .map(row -> BeanUtil.toBean(row, Sys_user_source.class)).toList(); + dao.insert(entities); + } else { + executeWriteBatch(connection, table, new ArrayList<>(inserts.values()), false); + } + } + if (!updates.isEmpty()) executeWriteBatch(connection, table, new ArrayList<>(updates.values()), true); + if (protectSysUser) { + String changeReason = syncHistoryReason(config); + recordSyncHistories(updateSnapshots, updateChangeTypes, changeReason); + if (!inserts.isEmpty()) { + List insertedUsers = dao.query(Sys_user.class, + Cnd.where("id", "in", inserts.values().stream() + .map(row -> row.getString("id")).toArray(String[]::new))); + Map> insertChangeTypes = new LinkedHashMap<>(); + insertedUsers.forEach(user -> insertChangeTypes.put(user.getId(), + List.of(MemberChangeType.NEW.name()))); + recordSyncHistories(insertedUsers, insertChangeTypes, changeReason); + } + } + counts[0] = inserts.size(); + counts[1] = updates.size(); + } + + /** + * 比较更新前人员快照与本次映射值,返回 MemberChangeType 编码;空集合表示没有实际业务变化。 + * id、pullTime属于主键或同步批次字段,不参与人员变更判断。 + */ + private List resolveChangeTypes(Sys_user currentUser, NutMap incomingValues) { + NutMap currentValues = Lang.obj2nutmap(currentUser); + Set changeTypes = new LinkedHashSet<>(); + boolean basicChanged = false; + for (Map.Entry entry : incomingValues.entrySet()) { + String field = entry.getKey(); + if (List.of("id", "pullTime").contains(field) + || valuesEqual(currentValues.get(field), entry.getValue())) { + continue; + } + switch (field) { + case "unitId", "unitid" -> changeTypes.add(MemberChangeType.UNIT_CHANGE.name()); + case "unionId", "unionid" -> changeTypes.add(MemberChangeType.UNION_CHANGE.name()); + case "member" -> changeTypes.add(Boolean.TRUE.equals(entry.getValue()) + ? MemberChangeType.RESTORE.name() : MemberChangeType.WITHDRAWAL.name()); + case "userState" -> { + String userState = Strings.sNull(entry.getValue()); + Optional stateType = Arrays.stream(MemberChangeType.values()) + .filter(type -> Objects.equals(type.getChangeTypeName(), userState)) + .findFirst(); + if (stateType.isPresent()) { + changeTypes.add(stateType.get().name()); + } else { + basicChanged = true; + } + } + default -> basicChanged = true; + } + } + if (basicChanged) { + changeTypes.add(MemberChangeType.BASIC_CHANGE.name()); + } + return new ArrayList<>(changeTypes); + } + + /** + * 保存人员同步前快照。 + * + * @param users 更新前或新增后的人员快照 + * @param changeTypesByUser 用户ID对应的变更类型集合 + * @param changeReason 本次同步配置形成的变更原因 + */ + @Aop(TransAop.READ_COMMITTED) + private void recordSyncHistories(List users, + Map> changeTypesByUser, + String changeReason) { + if (users == null || users.isEmpty()) { + return; + } + List histories = new ArrayList<>(); + for (Sys_user user : users) { + List changeTypes = changeTypesByUser.get(user.getId()); + if (changeTypes == null || changeTypes.isEmpty()) { + continue; + } + Sys_user_history history = new Sys_user_history(); + BeanUtil.copyProperties(user, history); + history.setId(R.UU32()); + history.setChangeTime(new Date()); + history.setChangeOrigin(MemberChangeOrigin.SYSTEM.name()); + history.setChangeReason(changeReason); + history.setChangeTypes(changeTypes); + histories.add(history); + } + if (!histories.isEmpty()) { + dao.insert(histories); + } + } + + /** 数据库数值类型和空字符串表现可能不同,统一后比较,避免相同业务值产生虚假历史。 */ + private boolean valuesEqual(Object currentValue, Object incomingValue) { + if (currentValue == null || incomingValue == null) { + return Strings.isBlank(Strings.sNull(currentValue)) && Strings.isBlank(Strings.sNull(incomingValue)); + } + if (currentValue instanceof Number && incomingValue instanceof Number) { + return new java.math.BigDecimal(currentValue.toString()) + .compareTo(new java.math.BigDecimal(incomingValue.toString())) == 0; + } + if (currentValue instanceof Date && incomingValue instanceof Date) { + return ((Date) currentValue).getTime() == ((Date) incomingValue).getTime(); + } + return Objects.equals(String.valueOf(currentValue), String.valueOf(incomingValue)); + } + + /** sys_user_history.changeReason 长度为 100,超长配置名称截断后保存。 */ + private String syncHistoryReason(PersonApiConfig config) { + String reason = "API配置定时同步:" + Strings.sBlank(config.getConfigName()); + return reason.length() > 100 ? reason.substring(0, 100) : reason; + } + + /** JDBC executeBatch真正批量提交;更新只覆盖映射字段和pullTime,不覆盖目标主键及未映射字段。 */ + @Aop(TransAop.READ_COMMITTED) + private void executeWriteBatch(Connection connection, String table, List rows, boolean update) throws SQLException { + List fields = new ArrayList<>(rows.get(0).keySet()); + if (update) fields.remove("id"); + String sql = update + ? "UPDATE " + table + " SET " + fields.stream().map(f -> quoteIdentifier(f) + "=?") + .collect(java.util.stream.Collectors.joining(",")) + " WHERE `id`=?" + : "INSERT INTO " + table + " (" + fields.stream().map(this::quoteIdentifier) + .collect(java.util.stream.Collectors.joining(",")) + ") VALUES (" + + String.join(",", Collections.nCopies(fields.size(), "?")) + ")"; + try (PreparedStatement statement = connection.prepareStatement(sql)) { + for (NutMap row : rows) { + int index = 1; + for (String field : fields) { + Object value = row.get(field); + statement.setObject(index++, value instanceof Date ? new java.sql.Timestamp(((Date) value).getTime()) : value); + } + if (update) statement.setObject(index, row.get("id")); + statement.addBatch(); + } + int[] results = statement.executeBatch(); + Assert.isTrue(results.length == rows.size(), "数据库批量写入结果数量不一致"); + for (int result : results) Assert.isTrue(result != java.sql.Statement.EXECUTE_FAILED, "数据库批量写入失败"); + } + } + + /** 标识符来自已校验元数据,再限制字符,不能将请求输入直接拼接到SQL。 */ + private String quoteIdentifier(String value) { + Assert.isTrue(value != null && value.matches("[A-Za-z0-9_]+"), "表名或字段名不合法"); + return "`" + value + "`"; + } + + private Object convertValue(Object value, String sqlType) { + if (value == null) return null; + String type = sqlType.toLowerCase(Locale.ROOT); + String text = String.valueOf(value); + if (type.startsWith("date") || type.startsWith("timestamp")) return value instanceof Date ? value : DateUtil.parse(text); + if (type.startsWith("bit") || type.startsWith("tinyint(1)")) { + if (value instanceof Boolean) return value; + Assert.isTrue(List.of("0", "1", "true", "false").contains(text.toLowerCase(Locale.ROOT)), "布尔值不合法"); + return "1".equals(text) || "true".equalsIgnoreCase(text); + } + if (type.contains("int")) return new java.math.BigDecimal(text).toBigIntegerExact(); + if (type.startsWith("decimal") || type.startsWith("double") || type.startsWith("float")) return new java.math.BigDecimal(text); + return value instanceof Map || value instanceof List ? Json.toJson(value) : text; + } + + /** 每页及每100行续租;失去锁即终止,避免两个进程并行采集相同配置。 */ + @Aop(TransAop.READ_COMMITTED) + private void renewLock(String key, String owner) { + Object renewed = redisService.eval("if redis.call('get',KEYS[1])==ARGV[1] then return redis.call('expire',KEYS[1],900) else return 0 end", + List.of(key), List.of(owner)); + Assert.isTrue(renewed instanceof Number && ((Number) renewed).longValue() == 1, "同步锁已失效,请重试"); + } +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/controller/PersonMemberMatchController.java b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/controller/PersonMemberMatchController.java new file mode 100644 index 0000000..3690818 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/controller/PersonMemberMatchController.java @@ -0,0 +1,115 @@ +package com.budwk.app.zhgh.personGovernance.memberMatch.controller; + +import com.budwk.app.base.param.PageForm; +import com.budwk.app.zhgh.personGovernance.memberMatch.service.PersonMemberMatchService; +import cn.dev33.satoken.annotation.SaCheckPermission; +import com.budwk.app.base.result.Result; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; +import org.nutz.lang.Strings; +import org.springframework.util.Assert; + +/** 会员匹配列表、配置、试算与应用接口。 */ +@IocBean +@Ok("json:full") +@At("/platform/personGovernance/memberMatch") +public class PersonMemberMatchController { + @Inject + private PersonMemberMatchService personMemberMatchService; + + @At("") + @Ok("beetl:/platform/personGovernance/memberMatch/index.html") + @SaCheckPermission("data.person.governance.member") + public void index() { + } + + @At("/form") + @Ok("beetl:/platform/personGovernance/memberMatch/form.html") + @SaCheckPermission("data.person.governance.member") + public void form() { + } + + /** + * pageForm为分页参数,configName和apiConfigId为可选筛选条件。 + * enabled未传或为空时不筛选状态,仅接受true/false作为明确的启停筛选值。 + * 返回分页结果,包含list记录列表、totalCount总条数等分页信息。 + */ + @At + @SaCheckPermission("data.person.governance.member") + public Result pageData(PageForm pageForm, @Param("configName") String configName, + @Param("apiConfigId") String apiConfigId, + @Param("enabled") String enabled) { + // 保留原始文本,避免Nutz把空字符串转换为false而误筛选停用记录。 + Boolean enabledFilter = null; + if (Strings.isNotBlank(enabled)) { + String value = enabled.trim(); + Assert.isTrue("true".equalsIgnoreCase(value) || "false".equalsIgnoreCase(value), "启用状态参数不正确"); + enabledFilter = Boolean.valueOf(value); + } + return Result.success(personMemberMatchService.pageData(pageForm, configName, apiConfigId, enabledFilter)); + } + + @At + @SaCheckPermission("data.person.governance.member") + public Result detail(String id) { + return Result.success(personMemberMatchService.detail(id)); + } + + /** + * 保存共享配置及相互隔离的工会、福利会员条件组,不在保存请求中执行匹配规则。 + * + * @param data JSON字符串,包含config、unionGroups、welfareGroups;组内conditions为条件,groups为嵌套子条件组 + * @return 保存后的会员匹配主配置 + */ + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("data.person.governance.member.edit") + public Result save(@Param("data") String data) { + return Result.success(personMemberMatchService.saveConfig(data)); + } + + /** + * @param id 会员匹配配置ID + * @param ruleType UNION_MEMBER为工会会员规则,WELFARE_MEMBER为福利会员规则 + * @param pageForm 分页参数 + * @return 对应规则类型命中的人员分页结果 + */ + @At + @SaCheckPermission("data.person.governance.member") + public Result calculate(String id, String ruleType, PageForm pageForm) { + return Result.success(personMemberMatchService.calculate(id, ruleType, pageForm)); + } + + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("data.person.governance.member.delete") + public Result delete(String id) { + personMemberMatchService.deleteConfig(id); + return Result.success(); + } + + @At + @SaCheckPermission("data.person.governance.member") + public Result historyConfigs() { + return Result.success(personMemberMatchService.historyConfigs()); + } + + @At + @SaCheckPermission("data.person.governance.member") + public Result dictItems(String dictCode) { + return Result.success(personMemberMatchService.dictItems(dictCode)); + } + + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("data.person.governance.member.edit") + public Result updateEnabled(String id, boolean enabled) { + personMemberMatchService.updateEnabled(id, enabled); + return Result.success(); + } +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchCondition.java b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchCondition.java new file mode 100644 index 0000000..21428b6 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchCondition.java @@ -0,0 +1,63 @@ +package com.budwk.app.zhgh.personGovernance.memberMatch.model; + +import lombok.Data; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +/** + * 会员匹配条件,保留字典项快照避免字典改名影响历史配置展示。 + */ +@Data +@Accessors(chain = true) +@Table("person_member_match_condition") +public class PersonMemberMatchCondition { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("条件组ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String groupId; + @Column + @Comment("字典编码") + @ColDefine(type = ColType.VARCHAR, width = 50) + private String dictCode; + @Column + @Comment("字典数据ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String dictItemId; + @Column + @Comment("字典数据编码") + @ColDefine(type = ColType.VARCHAR, width = 50) + private String dictItemCode; + @Column + @Comment("字典数据名称") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String dictItemName; + @Column + @Comment("人员映射字段") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String mappedField; + @Column + @Comment("匹配方式") + @ColDefine(type = ColType.VARCHAR, width = 30) + private String operator; + @Column + @Comment("匹配值") + @ColDefine(type = ColType.VARCHAR, width = 500) + private String matchValue; + + @Column + @Comment("与前一条件的连接关系:AND且、OR或;组内首条忽略,历史空值按AND") + @ColDefine(type = ColType.VARCHAR, width = 3) + private String joinLogic; + + @Column + @Comment("排序号") + private Integer sort; +} + diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchConfig.java b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchConfig.java new file mode 100644 index 0000000..dff8b32 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchConfig.java @@ -0,0 +1,53 @@ +package com.budwk.app.zhgh.personGovernance.memberMatch.model; + +import com.budwk.app.base.model.BaseModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +import java.util.Date; + +/** + * 会员匹配主配置;一个API配置只能绑定一条记录。 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = true) +@Table("person_member_match_config") +@TableIndexes({@Index(name = "UK_PERSON_MEMBER_API_CONFIG", fields = {"apiConfigId"}, unique = true)}) +public class PersonMemberMatchConfig extends BaseModel { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("会员匹配配置名称") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String configName; + @Column + @Comment("绑定的API配置ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String apiConfigId; + @Column + @Comment("沿用的历史匹配配置ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String copiedFromId; + @Column + @Comment("是否启用") + private Boolean enabled; + @Column + @Comment("条件组数量") + private Integer groupCount; + @Column + @Comment("最近匹配会员数量") + private Integer lastMatchCount; + @Column + @Comment("最近执行时间") + private Date lastExecuteTime; +} + + diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchGroup.java b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchGroup.java new file mode 100644 index 0000000..ca6fea3 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/model/PersonMemberMatchGroup.java @@ -0,0 +1,49 @@ +package com.budwk.app.zhgh.personGovernance.memberMatch.model; + +import lombok.Data; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +/** + * 会员条件组;每组作为独立括号,parentGroupId描述嵌套关系,joinLogic表示与同层前一节点的连接关系。 + */ +@Data +@Accessors(chain = true) +@Table("person_member_match_group") +public class PersonMemberMatchGroup { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("会员匹配配置ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String matchConfigId; + + @Column + @Comment("父条件组ID;空值表示顶层条件组") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String parentGroupId; + + @Column + @Comment("匹配规则类型:UNION_MEMBER工会会员、WELFARE_MEMBER福利会员") + @ColDefine(type = ColType.VARCHAR, width = 30) + private String ruleType; + + @Column + @Comment("条件组编号") + private Integer groupNo; + + @Column + @Comment("与前一条件组的连接关系:AND且、OR或;首组忽略,历史空值按OR") + @ColDefine(type = ColType.VARCHAR, width = 3) + private String joinLogic; + + @Column + @Comment("排序号") + private Integer sort; +} + diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/service/PersonMemberMatchService.java b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/service/PersonMemberMatchService.java new file mode 100644 index 0000000..dd139c4 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/service/PersonMemberMatchService.java @@ -0,0 +1,55 @@ +package com.budwk.app.zhgh.personGovernance.memberMatch.service; + +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.param.PageForm; +import com.budwk.app.base.service.BaseService; +import com.budwk.app.zhgh.personGovernance.memberMatch.model.PersonMemberMatchConfig; +import org.nutz.lang.util.NutMap; + +import java.util.List; + +/** 会员匹配配置、试算及应用服务。 */ +public interface PersonMemberMatchService extends BaseService { + Pagination pageData(PageForm pageForm, String configName, String apiConfigId, Boolean enabled); + + NutMap detail(String id); + + /** + * 保存会员匹配主配置及工会、福利会员条件组,不立即执行匹配规则。 + * + * @param payloadJson 包含config、unionGroups、welfareGroups的JSON字符串;每个条件组包含conditions及可递归嵌套的groups + * @return 保存后的会员匹配主配置 + */ + PersonMemberMatchConfig saveConfig(String payloadJson); + + /** + * 按规则类型试算匹配结果。 + * + * @param id 会员匹配配置ID + * @param ruleType UNION_MEMBER表示工会会员规则,WELFARE_MEMBER表示福利会员规则 + * @param pageForm 分页参数 + * @return 当前规则类型命中的人员分页结果 + */ + Pagination calculate(String id, String ruleType, PageForm pageForm); + + void deleteConfig(String id); + + List historyConfigs(); + + List dictItems(String dictCode); + + void applyForApiConfig(String apiConfigId); + + /** + * 返回当前API配置中任意会员规则命中的sys_user用户ID。 + * 工会会员与福利会员规则分别计算后合并去重,满足任意一类规则即返回。 + */ + List matchedAnyMemberUserIds(String apiConfigId); + + /** 分别按工会、福利规则同步对应会员字段及角色,某一类未配置规则时跳过该类身份处理。 */ + void reconcileForApiConfig(String apiConfigId); + + void updateEnabled(String id, boolean enabled); +} + + diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/service/impl/PersonMemberMatchServiceImpl.java b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/service/impl/PersonMemberMatchServiceImpl.java new file mode 100644 index 0000000..de203b5 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/memberMatch/service/impl/PersonMemberMatchServiceImpl.java @@ -0,0 +1,684 @@ +package com.budwk.app.zhgh.personGovernance.memberMatch.service.impl; + +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.dao.CndPlus; +import com.budwk.app.base.param.PageForm; +import com.budwk.app.base.service.impl.BaseServiceImpl; +import com.budwk.app.base.constant.RoleConstant; +import com.budwk.app.sys.models.Sys_role; +import com.budwk.app.sys.models.Sys_user; +import com.budwk.app.sys.models.Sys_user_role; +import com.budwk.app.sys.models.Sys_dict; +import com.budwk.app.sys.services.SysDictService; +import com.budwk.app.sys.services.SysUserService; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiConfig; +import com.budwk.app.zhgh.personGovernance.apiConfig.model.PersonApiFieldMapping; +import com.budwk.app.zhgh.personGovernance.memberMatch.model.PersonMemberMatchCondition; +import com.budwk.app.zhgh.personGovernance.memberMatch.model.PersonMemberMatchConfig; +import com.budwk.app.zhgh.personGovernance.memberMatch.model.PersonMemberMatchGroup; +import com.budwk.app.zhgh.personGovernance.memberMatch.service.PersonMemberMatchService; +import lombok.extern.slf4j.Slf4j; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.dao.Chain; +import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; +import org.nutz.dao.Sqls; +import org.nutz.dao.sql.Sql; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.json.Json; +import org.nutz.lang.Strings; +import org.nutz.lang.util.NutMap; +import org.springframework.util.Assert; + +import java.util.ArrayList; +import java.util.Date; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Set; +import java.util.regex.Pattern; +import java.util.stream.Collectors; + +/** 工会、福利两类递归条件组会员匹配:每组独立括号,同层条件及子组均支持AND/OR。 */ +@IocBean(args = {"refer:dao"}) +@Slf4j +public class PersonMemberMatchServiceImpl extends BaseServiceImpl implements PersonMemberMatchService { + private static final Pattern SAFE_IDENTIFIER = Pattern.compile("^[A-Za-z0-9_]+$"); + private static final String RULE_TYPE_UNION_MEMBER = "UNION_MEMBER"; + private static final String RULE_TYPE_WELFARE_MEMBER = "WELFARE_MEMBER"; + + public PersonMemberMatchServiceImpl(Dao dao) { + super(dao); + } + + @Inject + private SysDictService sysDictService; + + @Inject + private SysUserService sysUserService; + + @Override + public Pagination pageData(PageForm pageForm, String configName, String apiConfigId, Boolean enabled) { + Sql sql = Sqls.create( + "SELECT m.id,m.configName,m.apiConfigId,m.enabled,m.lastExecuteTime,a.configName apiConfigName " + + "FROM person_member_match_config m " + + "LEFT JOIN person_api_config a ON a.id=m.apiConfigId $condition" + ); + CndPlus cnd = CndPlus.create(); + cnd.andEX("m.configName", "like", Strings.isBlank(configName) ? null : "%" + configName + "%"); + cnd.andEX("m.apiConfigId", "=", apiConfigId).andEX("m.enabled", "=", enabled); + cnd.and("m.delFlag", "=", false).desc("m.updatedAt"); + sql.setCondition(cnd); + return listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + } + + @Override + public NutMap detail(String id) { + PersonMemberMatchConfig config = fetch(id); + Assert.notNull(config, "会员匹配配置不存在"); + List groups = dao().query(PersonMemberMatchGroup.class, + Cnd.where("matchConfigId", "=", id).asc("sort")); + List unionGroupRows = buildGroupTree(groups, RULE_TYPE_UNION_MEMBER); + List welfareGroupRows = buildGroupTree(groups, RULE_TYPE_WELFARE_MEMBER); + return NutMap.NEW() + .addv("config", config) + .addv("unionGroups", unionGroupRows) + .addv("welfareGroups", welfareGroupRows) + .addv("groups", unionGroupRows); + } + + /** + * 保存会员匹配配置。payload包含config、unionGroups和welfareGroups;编辑时apiConfigId不得变化。 + * groups可递归嵌套;groups[].joinLogic为与同层前一节点的关系,conditions[].joinLogic为与前条条件的关系。 + * 同层首组、组内首条不参与连接;历史缺省值分别为OR、AND,返回保存后的配置实体。 + * 保存操作仅持久化配置,会员匹配由后续同步流程按既定周期触发。 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public PersonMemberMatchConfig saveConfig(String payloadJson) { + NutMap payload = Json.fromJson(NutMap.class, payloadJson); + PersonMemberMatchConfig config = Json.fromJson( + PersonMemberMatchConfig.class, + Json.toJson(payload.get("config")) + ); + List unionGroups = parseGroups( + payload.get("unionGroups") == null ? payload.get("groups") : payload.get("unionGroups") + ); + List welfareGroups = parseGroups(payload.get("welfareGroups")); + Assert.hasText(config.getConfigName(), "请填写配置名称"); + Assert.hasText(config.getApiConfigId(), "请选择API配置"); + Assert.isTrue(!unionGroups.isEmpty() || !welfareGroups.isEmpty(), "至少添加一类会员匹配条件组"); + // 先验证所有连接关系和条件,再写主配置,避免非法规则进入保存及应用链路。 + List unionGroupNodes = validateGroups(unionGroups, "工会会员"); + List welfareGroupNodes = validateGroups(welfareGroups, "福利会员"); + PersonMemberMatchConfig bound = fetch( + Cnd.where("apiConfigId", "=", config.getApiConfigId()).and("delFlag", "=", false) + ); + Assert.isTrue(bound == null || Objects.equals(bound.getId(), config.getId()), "该API配置已绑定其他会员匹配配置"); + boolean enabled = Boolean.TRUE.equals(config.getEnabled()); + config.setEnabled(enabled); + if (Strings.isBlank(config.getId())) { + config.setDelFlag(false); + insert(config); + } else { + PersonMemberMatchConfig old = fetch(config.getId()); + Assert.notNull(old, "会员匹配配置不存在"); + Assert.isTrue(Objects.equals(old.getApiConfigId(), config.getApiConfigId()), "编辑时不能更换API配置"); + config.setDelFlag(old.getDelFlag()); + update(config); + clearChildren(config.getId()); + } + if (enabled) { + disableOtherEnabled(config.getId()); + } + insertGroups(config.getId(), RULE_TYPE_UNION_MEMBER, null, unionGroupNodes); + insertGroups(config.getId(), RULE_TYPE_WELFARE_MEMBER, null, welfareGroupNodes); + return config; + } + + @Override + public Pagination calculate(String id, String ruleType, PageForm pageForm) { + return listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), + buildMatchSql(id, normalizeRuleType(ruleType), false)); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void deleteConfig(String id) { + Assert.notNull(fetch(id), "会员匹配配置不存在"); + clearChildren(id); + delete(id); + } + + @Override + public List historyConfigs() { + Sql sql = Sqls.create( + "SELECT id,configName FROM person_member_match_config WHERE delFlag=0 ORDER BY updatedAt DESC" + ); + return listMap(sql); + } + + @Override + public List dictItems(String dictCode) { + Assert.hasText(dictCode, "请输入字典编码"); + List result = new ArrayList<>(); + for (Sys_dict item : sysDictService.getSubListByCode(dictCode)) { + result.add( + NutMap.NEW() + .addv("id", item.getId()) + .addv("code", item.getCode()) + .addv("name", item.getName()) + ); + } + return result; + } + + /** 同步完成后应用当前API配置唯一绑定且已启用的工会、福利会员规则。 */ + @Override + @Aop(TransAop.READ_COMMITTED) + public void applyForApiConfig(String apiConfigId) { + PersonMemberMatchConfig config = fetch(Cnd.where("apiConfigId", "=", apiConfigId) + .and("enabled", "=", true).and("delFlag", "=", false)); + if (config != null) { + apply(config.getId()); + } + } + + @Override + public List matchedAnyMemberUserIds(String apiConfigId) { + Set matchedIds = new LinkedHashSet<>(); + matchedIds.addAll(matchedUserIds(apiConfigId, RULE_TYPE_UNION_MEMBER)); + matchedIds.addAll(matchedUserIds(apiConfigId, RULE_TYPE_WELFARE_MEMBER)); + log.info("[会员匹配] 两类会员规则命中人员合并完成,apiConfigId={},matchedCount={}", + apiConfigId, matchedIds.size()); + return new ArrayList<>(matchedIds); + } + + /** 根据指定规则类型返回命中的系统用户ID,工会和福利规则始终分开计算。 */ + private List matchedUserIds(String apiConfigId, String ruleType) { + PersonMemberMatchConfig config = fetch(Cnd.where("apiConfigId", "=", apiConfigId) + .and("enabled", "=", true).and("delFlag", "=", false)); + if (config == null) { + log.warn("[会员匹配] 未找到启用的会员匹配配置,apiConfigId={},ruleType={}", apiConfigId, ruleType); + return new ArrayList<>(); + } + List matchGroups = ruleGroups(config.getId(), ruleType); + if (matchGroups.isEmpty()) { + log.info("[会员匹配] 当前类型未配置匹配规则,跳过计算,apiConfigId={},ruleType={}", apiConfigId, ruleType); + return new ArrayList<>(); + } + List allMatchGroups = allRuleGroups(config.getId(), ruleType); + int groupCount = allMatchGroups.size(); + int conditionCount = allMatchGroups.stream() + .mapToInt(group -> dao().count(PersonMemberMatchCondition.class, + Cnd.where("groupId", "=", group.getId()))) + .sum(); + List matchedIds = resolveMatchedUserIds(config.getId(), ruleType); + log.info("[会员匹配] 规则查询完成,apiConfigId={},matchConfigId={},ruleType={},matchedCount={}", + apiConfigId, config.getId(), ruleType, matchedIds.size()); + log.info("[会员匹配] 规则配置统计,apiConfigId={},ruleType={},groupCount={},conditionCount={},matchedCount={}", + apiConfigId, ruleType, groupCount, conditionCount, matchedIds.size()); + if (matchedIds.isEmpty()) { + log.warn("[会员匹配] 没有人员命中规则,apiConfigId={},matchConfigId={},ruleType={},请检查映射字段、匹配方式和匹配值", + apiConfigId, config.getId(), ruleType); + } + return matchedIds; + } + + /** 全量同步时按最新规则重算会员角色;未命中的已有会员同步取消。 */ + @Override + @Aop(TransAop.READ_COMMITTED) + public void reconcileForApiConfig(String apiConfigId) { + PersonMemberMatchConfig config = fetch(Cnd.where("apiConfigId", "=", apiConfigId) + .and("enabled", "=", true).and("delFlag", "=", false)); + if (config == null) { + log.warn("[会员匹配] 未找到启用的会员匹配配置,跳过身份同步,apiConfigId={}", apiConfigId); + return; + } + if (!ruleGroups(config.getId(), RULE_TYPE_UNION_MEMBER).isEmpty()) { + reconcileUnionMembers(apiConfigId); + } + if (!ruleGroups(config.getId(), RULE_TYPE_WELFARE_MEMBER).isEmpty()) { + reconcileWelfareMembers(apiConfigId); + } + } + + /** 工会会员规则只维护member字段和工会会员角色,不触碰福利会员身份。 */ + private void reconcileUnionMembers(String apiConfigId) { + List matchedIds = matchedUserIds(apiConfigId, RULE_TYPE_UNION_MEMBER); + Set matched = new HashSet<>(matchedIds); + // flag=1 的人员由管理员保护,定时规则既不能新增其角色,也不能回收其现有角色。 + List members = dao().query(Sys_user.class, Cnd.where("member", "=", 1) + .and(Cnd.exps("flag", "IS", null).or("flag", "!=", 1))); + Set currentMemberIds = members.stream().map(Sys_user::getId).collect(Collectors.toSet()); + List addIds = matchedIds.stream() + .filter(id -> !currentMemberIds.contains(id)) + .toList(); + List removeIds = currentMemberIds.stream() + .filter(id -> !matched.contains(id)).toList(); + log.info("[会员匹配] 全量会员资格计算完成,apiConfigId={},currentMemberCount={},matchedCount={},addRoleCount={},removeRoleCount={}", + apiConfigId, members.size(), matchedIds.size(), addIds.size(), removeIds.size()); + if (!removeIds.isEmpty()) { + updateMemberRole(removeIds, false); + log.info("[会员匹配] 会员角色移除完成,apiConfigId={},removeRoleCount={}", apiConfigId, removeIds.size()); + } + if (!addIds.isEmpty()) { + // 已是工会会员的人员不重复删除、插入角色,也不刷新原入会时间。 + updateMemberRole(addIds, true); + log.info("[会员匹配] 会员角色设置完成,apiConfigId={},addRoleCount={}", apiConfigId, addIds.size()); + } + } + + /** 福利会员规则只维护welfareMember字段和福利会员角色,不触碰工会会员身份。 */ + private void reconcileWelfareMembers(String apiConfigId) { + List matchedIds = matchedUserIds(apiConfigId, RULE_TYPE_WELFARE_MEMBER); + Set matched = new HashSet<>(matchedIds); + List members = dao().query(Sys_user.class, Cnd.where("welfareMember", "=", 1) + .and(Cnd.exps("flag", "IS", null).or("flag", "!=", 1))); + Set currentMemberIds = members.stream().map(Sys_user::getId).collect(Collectors.toSet()); + List addIds = matchedIds.stream() + .filter(id -> !currentMemberIds.contains(id)) + .toList(); + List removeIds = currentMemberIds.stream() + .filter(id -> !matched.contains(id)).toList(); + log.info("[福利会员匹配] 全量资格计算完成,apiConfigId={},currentMemberCount={},matchedCount={},addRoleCount={},removeRoleCount={}", + apiConfigId, members.size(), matchedIds.size(), addIds.size(), removeIds.size()); + if (!removeIds.isEmpty()) { + removeWelfareMemberRole(removeIds); + } + if (!addIds.isEmpty()) { + // 已是福利会员的人员不重复删除、插入角色,也不刷新原福利会员入会时间。 + addWelfareMemberRole(addIds); + } + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public void updateEnabled(String id, boolean enabled) { + Assert.notNull(fetch(id), "会员匹配配置不存在"); + if (enabled) { + disableOtherEnabled(id); + } + update(Chain.make("enabled", enabled), Cnd.where("id", "=", id)); + } + + /** 启用当前配置前停用其他有效配置,保证会员匹配全局只有一条启用规则。 */ + @Aop(TransAop.READ_COMMITTED) + private void disableOtherEnabled(String excludedId) { + Cnd cnd = Cnd.where("enabled", "=", true).and("delFlag", "=", false); + if (Strings.isNotBlank(excludedId)) { + cnd.and("id", "!=", excludedId); + } + update(Chain.make("enabled", false), cnd); + } + + @Aop(TransAop.READ_COMMITTED) + private void apply(String id) { + if (!ruleGroups(id, RULE_TYPE_UNION_MEMBER).isEmpty()) { + List unionMemberIds = resolveMatchedUserIds(id, RULE_TYPE_UNION_MEMBER); + if (!unionMemberIds.isEmpty()) { + updateMemberRole(unionMemberIds, true); + } + } + if (!ruleGroups(id, RULE_TYPE_WELFARE_MEMBER).isEmpty()) { + List welfareMemberIds = resolveMatchedUserIds(id, RULE_TYPE_WELFARE_MEMBER); + if (!welfareMemberIds.isEmpty()) { + addWelfareMemberRole(welfareMemberIds); + } + } + update( + Chain.make("lastExecuteTime", new Date()), + Cnd.where("id", "=", id) + ); + } + + /** 会员规则固定查询sys_user,直接提取命中人员ID并去重。 */ + private List resolveMatchedUserIds(String id, String ruleType) { + List rows = listMap(buildMatchSql(id, ruleType, true)); + List userIds = new ArrayList<>(); + for (NutMap row : rows) { + String userId = row.getString("id"); + if (Strings.isNotBlank(userId) && !userIds.contains(userId)) { + userIds.add(userId); + } + } + return userIds; + } + + private Sql buildMatchSql(String id, String ruleType, boolean allRows) { + PersonMemberMatchConfig matchConfig = fetch(id); + Assert.notNull(matchConfig, "会员匹配配置不存在"); + PersonApiConfig apiConfig = dao().fetch(PersonApiConfig.class, matchConfig.getApiConfigId()); + Assert.notNull(apiConfig, "绑定的API配置不存在"); + Set allowedFields = new HashSet<>(); + dao().query(PersonApiFieldMapping.class, Cnd.where("configId", "=", apiConfig.getId())) + .forEach(v -> allowedFields.add(v.getTargetField())); + List groups = ruleGroups(id, ruleType); + Assert.notEmpty(groups, ruleTypeName(ruleType) + "匹配条件不能为空"); + List allGroups = allRuleGroups(id, ruleType); + Map> childrenByParent = new LinkedHashMap<>(); + for (PersonMemberMatchGroup group : allGroups) { + if (Strings.isNotBlank(group.getParentGroupId())) { + childrenByParent.computeIfAbsent(group.getParentGroupId(), key -> new ArrayList<>()).add(group); + } + } + StringBuilder where = new StringBuilder(); + Map values = new LinkedHashMap<>(); + int[] paramIndex = {0}; + for (PersonMemberMatchGroup group : groups) { + if (where.length() > 0) { + where.append(' ').append(normalizeJoinLogic(group.getJoinLogic(), "OR")).append(' '); + } + appendGroupExpression(where, group, childrenByParent, allowedFields, values, paramIndex); + } + // 会员匹配始终基于正式人员当前数据,API配置只提供规则字段,不参与查询表和批次选择。 + Sql sql = Sqls.create( + "SELECT t.*,un.name AS unitName,gh.unionname AS unionName FROM sys_user t" + + " LEFT JOIN sys_unit un ON t.unitid=un.id" + + " LEFT JOIN sys_union gh ON un.unionid=gh.id" + + " WHERE (t.flag IS NULL OR t.flag<>1) AND (" + where + ")" + + (allRows ? "" : " ORDER BY 1") + ); + values.forEach(sql::setParam); + return sql; + } + + /** 将平铺条件组按parentGroupId还原为前端需要的递归结构,孤立子组按顶层组兜底展示。 */ + @SuppressWarnings("unchecked") + private List buildGroupTree(List groups, String ruleType) { + Map rowsById = new LinkedHashMap<>(); + for (PersonMemberMatchGroup group : groups) { + if (!normalizeRuleType(ruleType).equals(normalizeRuleType(group.getRuleType()))) { + continue; + } + rowsById.put( + group.getId(), + NutMap.NEW() + .addv("group", group) + .addv("conditions", dao().query( + PersonMemberMatchCondition.class, + Cnd.where("groupId", "=", group.getId()).asc("sort") + )) + .addv("groups", new ArrayList()) + ); + } + List roots = new ArrayList<>(); + for (PersonMemberMatchGroup group : groups) { + NutMap row = rowsById.get(group.getId()); + if (row == null) { + continue; + } + NutMap parent = rowsById.get(group.getParentGroupId()); + if (Strings.isBlank(group.getParentGroupId()) || parent == null) { + roots.add(row); + } else { + ((List) parent.get("groups")).add(row); + } + } + return roots; + } + + /** 递归生成单个条件组表达式;当前组及每个子组都会显式包裹一层括号。 */ + private void appendGroupExpression(StringBuilder where, PersonMemberMatchGroup group, + Map> childrenByParent, + Set allowedFields, Map values, int[] paramIndex) { + List conditions = dao().query( + PersonMemberMatchCondition.class, + Cnd.where("groupId", "=", group.getId()).asc("sort") + ); + List children = childrenByParent.getOrDefault(group.getId(), new ArrayList<>()); + Assert.isTrue(!conditions.isEmpty() || !children.isEmpty(), "条件组中至少包含一条条件或一个子条件组"); + where.append('('); + boolean hasExpression = false; + for (PersonMemberMatchCondition condition : conditions) { + if (hasExpression) { + where.append(' ').append(normalizeJoinLogic(condition.getJoinLogic(), "AND")).append(' '); + } + appendConditionExpression(where, condition, allowedFields, values, paramIndex); + hasExpression = true; + } + for (PersonMemberMatchGroup child : children) { + if (hasExpression) { + where.append(' ').append(normalizeJoinLogic(child.getJoinLogic(), "OR")).append(' '); + } + appendGroupExpression(where, child, childrenByParent, allowedFields, values, paramIndex); + hasExpression = true; + } + where.append(')'); + } + + /** 将一条受白名单约束的匹配条件转换为参数化SQL,避免字段名及匹配值直接拼接。 */ + private void appendConditionExpression(StringBuilder where, PersonMemberMatchCondition condition, + Set allowedFields, Map values, int[] paramIndex) { + Assert.isTrue(allowedFields.contains(condition.getMappedField()), "匹配字段不属于当前API配置"); + validateIdentifier(condition.getMappedField()); + String field = "t.`" + condition.getMappedField() + "`"; + String value = Strings.isBlank(condition.getMatchValue()) + ? condition.getDictItemCode() + : condition.getMatchValue(); + if ("IN".equals(condition.getOperator())) { + String[] parts = value.split(","); + where.append(field).append(" IN ("); + for (int i = 0; i < parts.length; i++) { + if (i > 0) { + where.append(','); + } + String key = "p" + paramIndex[0]++; + where.append('@').append(key); + values.put(key, parts[i].trim()); + } + where.append(')'); + return; + } + String key = "p" + paramIndex[0]++; + String operator = switch (condition.getOperator()) { + case "NE" -> "<>"; + case "CONTAINS" -> "LIKE"; + default -> "="; + }; + where.append(field).append(' ').append(operator).append(" @").append(key); + values.put(key, "CONTAINS".equals(condition.getOperator()) ? "%" + value + "%" : value); + } + + /** payload中的某类规则允许为空;空规则表示该会员类型暂不参与试算和身份同步。 */ + private List parseGroups(Object value) { + if (value == null) { + return new ArrayList<>(); + } + return Json.fromJsonAsList(NutMap.class, Json.toJson(value)); + } + + /** 校验一类会员规则的递归条件组、连接关系和必填条件,返回后续入库使用的规则树。 */ + private List validateGroups(List groups, String ruleName) { + List nodes = new ArrayList<>(); + for (NutMap row : groups) { + String joinLogic = normalizeJoinLogic(row.getString("joinLogic"), "OR"); + List conditions = Json.fromJsonAsList( + PersonMemberMatchCondition.class, + Json.toJson(row.get("conditions")) + ); + List childGroups = parseGroups(row.get("groups")); + Assert.isTrue(!conditions.isEmpty() || !childGroups.isEmpty(), + ruleName + "条件组中至少包含一条条件或一个子条件组"); + for (PersonMemberMatchCondition condition : conditions) { + Assert.hasText(condition.getMappedField(), ruleName + "规则请选择映射字段"); + Assert.hasText(condition.getOperator(), ruleName + "规则请选择匹配方式"); + condition.setJoinLogic(normalizeJoinLogic(condition.getJoinLogic(), "AND")); + } + nodes.add(new RuleGroupNode(joinLogic, conditions, validateGroups(childGroups, ruleName))); + } + return nodes; + } + + /** 递归保存条件组;子组通过parentGroupId归属父组,每一层组都对应一个独立括号。 */ + @Aop(TransAop.READ_COMMITTED) + private void insertGroups(String configId, String ruleType, String parentGroupId, List nodes) { + for (int groupIndex = 0; groupIndex < nodes.size(); groupIndex++) { + RuleGroupNode node = nodes.get(groupIndex); + int groupSort = groupIndex + 1; + PersonMemberMatchGroup group = new PersonMemberMatchGroup() + .setMatchConfigId(configId) + .setParentGroupId(parentGroupId) + .setRuleType(ruleType) + .setJoinLogic(node.joinLogic) + .setGroupNo(groupSort) + .setSort(groupSort); + dao().insert(group); + List conditions = node.conditions; + for (int conditionIndex = 0; conditionIndex < conditions.size(); conditionIndex++) { + conditions.get(conditionIndex) + .setId(null) + .setGroupId(group.getId()) + .setSort(conditionIndex + 1); + } + if (!conditions.isEmpty()) { + dao().insert(conditions); + } + insertGroups(configId, ruleType, group.getId(), node.children); + } + } + + /** 历史条件组parentGroupId为空,继续作为顶层条件组执行。 */ + private List ruleGroups(String configId, String ruleType) { + return allRuleGroups(configId, ruleType).stream() + .filter(group -> Strings.isBlank(group.getParentGroupId())) + .toList(); + } + + /** 查询指定会员类型的全部条件组;ruleType空值兼容历史工会会员规则。 */ + private List allRuleGroups(String configId, String ruleType) { + String normalizedType = normalizeRuleType(ruleType); + return dao().query( + PersonMemberMatchGroup.class, + Cnd.where("matchConfigId", "=", configId).asc("sort") + ).stream() + .filter(group -> normalizedType.equals(normalizeRuleType(group.getRuleType()))) + .toList(); + } + + /** 规则类型只接受前端两个固定值,空值仅用于兼容历史工会会员规则。 */ + private String normalizeRuleType(String value) { + if (Strings.isBlank(value)) { + return RULE_TYPE_UNION_MEMBER; + } + Assert.isTrue( + RULE_TYPE_UNION_MEMBER.equals(value) || RULE_TYPE_WELFARE_MEMBER.equals(value), + "会员匹配规则类型不正确" + ); + return value; + } + + private String ruleTypeName(String ruleType) { + return RULE_TYPE_WELFARE_MEMBER.equals(ruleType) ? "福利会员" : "工会会员"; + } + + /** 批量设置福利会员字段;当前项目没有独立福利会员角色,不修改工会会员字段及角色。 */ + @Aop(TransAop.READ_COMMITTED) + private void addWelfareMemberRole(List userIds) { + String[] ids = userIds.toArray(new String[0]); + dao().update( + Sys_user.class, + Chain.make("welfareMember", true) + .add("welfareMemberJoinTime", new Date()), + Cnd.where("id", "in", ids) + ); + sysUserService.clearCache(); + } + + /** 仅取消福利会员字段,不删除福利申请记录,也不修改工会会员身份。 */ + @Aop(TransAop.READ_COMMITTED) + private void removeWelfareMemberRole(List userIds) { + String[] ids = userIds.toArray(new String[0]); + dao().update( + Sys_user.class, + Chain.make("welfareMember", false) + .add("welfareMemberJoinTime", null), + Cnd.where("id", "in", ids) + ); + sysUserService.clearCache(); + } + + /** + * 同步工会会员字段和 MEMBER 角色。 + * + * @param userIds 待处理人员ID + * @param member true加入会员,false退出会员 + */ + @Aop(TransAop.READ_COMMITTED) + private void updateMemberRole(List userIds, boolean member) { + if (userIds == null || userIds.isEmpty()) { + return; + } + String[] ids = userIds.toArray(new String[0]); + Chain chain = Chain.make("member", member); + if (member) { + chain.add("memberTime", new Date()); + } + dao().update(Sys_user.class, chain, Cnd.where("id", "in", ids)); + Sys_role role = dao().fetch(Sys_role.class, Cnd.where("code", "=", RoleConstant.MEMBER.name())); + Assert.notNull(role, "系统未配置会员角色"); + if (member) { + for (String userId : userIds) { + if (dao().count(Sys_user_role.class, + Cnd.where("userId", "=", userId).and("roleId", "=", role.getId())) == 0) { + Sys_user_role userRole = new Sys_user_role(); + userRole.setUserId(userId); + userRole.setRoleId(role.getId()); + userRole.setEnable(true); + dao().insert(userRole); + } + } + } else { + dao().clear(Sys_user_role.class, + Cnd.where("userId", "in", ids).and("roleId", "=", role.getId())); + } + sysUserService.clearCache(); + } + + /** 仅允许固定逻辑关键字进入SQL,空值兼容历史规则,不接受前端传入的SQL片段。 */ + private String normalizeJoinLogic(String value, String defaultValue) { + if (Strings.isBlank(value)) { + return defaultValue; + } + Assert.isTrue("AND".equals(value) || "OR".equals(value), "条件连接关系仅支持且(AND)或或(OR)"); + return value; + } + + @Aop(TransAop.READ_COMMITTED) + private void clearChildren(String configId) { + List groups = dao().query( + PersonMemberMatchGroup.class, + Cnd.where("matchConfigId", "=", configId) + ); + for (PersonMemberMatchGroup group : groups) { + dao().clear(PersonMemberMatchCondition.class, Cnd.where("groupId", "=", group.getId())); + } + dao().clear(PersonMemberMatchGroup.class, Cnd.where("matchConfigId", "=", configId)); + } + + private void validateIdentifier(String value) { + Assert.isTrue( + Strings.isNotBlank(value) && SAFE_IDENTIFIER.matcher(value).matches(), + "表名或字段名不合法" + ); + } + + /** 保存阶段使用的递归规则节点,避免把前端临时树字段写入持久化实体。 */ + private static class RuleGroupNode { + private final String joinLogic; + private final List conditions; + private final List children; + + private RuleGroupNode(String joinLogic, List conditions, + List children) { + this.joinLogic = joinLogic; + this.conditions = conditions; + this.children = children; + } + } +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/personChange/controller/PersonGovernanceChangeController.java b/src/main/java/com/budwk/app/zhgh/personGovernance/personChange/controller/PersonGovernanceChangeController.java new file mode 100644 index 0000000..4434382 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/personChange/controller/PersonGovernanceChangeController.java @@ -0,0 +1,117 @@ +package com.budwk.app.zhgh.personGovernance.personChange.controller; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import com.budwk.app.base.annotation.RepeatSubmit; +import com.budwk.app.base.annotation.SLog; +import com.budwk.app.base.result.Result; +import com.budwk.app.zhgh.personGovernance.personChange.service.PersonGovernanceChangeService; +import com.budwk.app.zhgh.staffmanage.member.models.MemberChangeRecord; +import com.budwk.app.zhgh.staffmanage.member.param.pageform.MemberManagePageForm; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.POST; +import org.nutz.mvc.annotation.Param; + +/** + * 人员数据治理人员变更页面及接口。 + */ +@IocBean +@At("/platform/personGovernance/personChange") +@Ok("json") +@SaCheckPermission("data.person.governance.change") +public class PersonGovernanceChangeController { + + @Inject + private PersonGovernanceChangeService personGovernanceChangeService; + + @At("") + @Ok("beetl:/platform/personGovernance/personChange/index.html") + public void index() { + } + + @At + public Result pageData(MemberManagePageForm pageForm) { + return Result.success(personGovernanceChangeService.pageData(pageForm)); + } + + @At + @POST + @RepeatSubmit + @Aop(TransAop.READ_COMMITTED) + @SLog(tag = "人员数据治理-人员变更", msg = "提交人员变更") + public Result doSubmitChange(MemberChangeRecord record) { + return personGovernanceChangeService.submitChange(record); + } + + @At + public Result getAllChangeMemberInfo(@Param("userId") String userId) { + return personGovernanceChangeService.getAllChangeMemberInfo(userId); + } + + @At + @POST + @RepeatSubmit + @Aop(TransAop.READ_COMMITTED) + public Result batchUpdateUserAttribute(@Param("users") String users) { + return personGovernanceChangeService.batchUpdateUserAttribute(users); + } + + @At + @POST + @RepeatSubmit + @Aop(TransAop.READ_COMMITTED) + public Result batchUpdateMember(@Param("users") String users) { + return personGovernanceChangeService.batchUpdateMember(users); + } + + @At + @POST + @RepeatSubmit + @Aop(TransAop.READ_COMMITTED) + public Result batchUpdateAidFundType(@Param("users") String users) { + return personGovernanceChangeService.batchUpdateAidFundType(users); + } + + @At + @POST + @RepeatSubmit + @Aop(TransAop.READ_COMMITTED) + public Result batchUpdateUserState(@Param("users") String users) { + return personGovernanceChangeService.batchUpdateUserState(users); + } + + @At + @POST + @RepeatSubmit + @Aop(TransAop.READ_COMMITTED) + public Result unitMove(@Param("unitId") String unitId, @Param("userIds") String userIds) { + return personGovernanceChangeService.unitMove(unitId, userIds); + } + + @At + public Result findOne(@Param("id") String id) { + return personGovernanceChangeService.findOne(id); + } + + @At + public Result findChangeById(@Param("id") String id) { + return personGovernanceChangeService.findChangeById(id); + } + + @At + public Result getUserByIdForMemberChange(@Param("userId") String userId) { + return personGovernanceChangeService.getUserByIdForMemberChange(userId); + } + + /** + * 保留会员高级管理现有导出入口;原页面当前未实现导出内容。 + */ + @At + @Ok("void") + public void doExport() { + } +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/personChange/service/PersonGovernanceChangeService.java b/src/main/java/com/budwk/app/zhgh/personGovernance/personChange/service/PersonGovernanceChangeService.java new file mode 100644 index 0000000..1921617 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/personChange/service/PersonGovernanceChangeService.java @@ -0,0 +1,37 @@ +package com.budwk.app.zhgh.personGovernance.personChange.service; + +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.result.Result; +import com.budwk.app.sys.views.View_user; +import com.budwk.app.zhgh.staffmanage.member.models.MemberChangeRecord; +import com.budwk.app.zhgh.staffmanage.member.param.pageform.MemberManagePageForm; + +/** + * 人员数据治理中的人员变更服务。 + * + *

该服务复用现有会员变更领域能力,但为数据治理模块提供独立接口,避免页面依赖会员高级管理路由。

+ */ +public interface PersonGovernanceChangeService { + + Pagination pageData(MemberManagePageForm pageForm); + + Result submitChange(MemberChangeRecord record); + + Result getAllChangeMemberInfo(String userId); + + Result batchUpdateUserAttribute(String usersJson); + + Result batchUpdateMember(String usersJson); + + Result batchUpdateAidFundType(String usersJson); + + Result batchUpdateUserState(String usersJson); + + Result unitMove(String unitId, String userIdsJson); + + Result findOne(String id); + + Result findChangeById(String id); + + Result getUserByIdForMemberChange(String userId); +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/personChange/service/impl/PersonGovernanceChangeServiceImpl.java b/src/main/java/com/budwk/app/zhgh/personGovernance/personChange/service/impl/PersonGovernanceChangeServiceImpl.java new file mode 100644 index 0000000..5889ac7 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/personChange/service/impl/PersonGovernanceChangeServiceImpl.java @@ -0,0 +1,301 @@ +package com.budwk.app.zhgh.personGovernance.personChange.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.lang.Dict; +import cn.hutool.core.util.DesensitizedUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.budwk.app.base.constant.RoleConstant; +import com.budwk.app.base.exception.BaseException; +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.result.Result; +import com.budwk.app.flow.constant.FlowConst; +import com.budwk.app.flow.engine.FlowEngine; +import com.budwk.app.flow.entity.ProcessInstance; +import com.budwk.app.flow.entity.ProcessTask; +import com.budwk.app.flow.enums.ProcessSubmitTypeEnum; +import com.budwk.app.sys.models.Sys_config; +import com.budwk.app.sys.models.Sys_union; +import com.budwk.app.sys.models.Sys_unit; +import com.budwk.app.sys.models.Sys_user; +import com.budwk.app.sys.views.View_user; +import com.budwk.app.web.commons.auth.utils.AuthUtil; +import com.budwk.app.web.commons.auth.utils.SecurityUtil; +import com.budwk.app.zhgh.personGovernance.personChange.service.PersonGovernanceChangeService; +import com.budwk.app.zhgh.staffmanage.member.constant.MemberChangeOrigin; +import com.budwk.app.zhgh.staffmanage.member.models.MemberChangeRecord; +import com.budwk.app.zhgh.staffmanage.member.param.pageform.MemberManagePageForm; +import com.budwk.app.zhgh.staffmanage.member.service.MemberCommonService; +import lombok.extern.slf4j.Slf4j; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; +import org.nutz.dao.sql.Sql; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.json.Json; +import org.nutz.lang.Lang; +import org.nutz.lang.util.NutMap; + +import java.util.Date; +import java.util.List; + +/** + * 人员数据治理人员变更服务实现。 + */ +@Slf4j +@IocBean +public class PersonGovernanceChangeServiceImpl implements PersonGovernanceChangeService { + + @Inject + private Dao dao; + @Inject + private FlowEngine flowEngine; + @Inject + private MemberCommonService memberCommonService; + + @Override + public Pagination pageData(MemberManagePageForm pageForm) { + Sql sql = memberCommonService.getSql(pageForm, "schoolUnion"); + return memberCommonService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public Result submitChange(MemberChangeRecord record) { + if (Lang.isEmpty(record)) { + return Result.error("未获取到异动数据"); + } + if (StrUtil.isBlank(record.getId())) { + memberCommonService.validateApplyOrChangeIsDoing(record.getUserId(), "change"); + } + + boolean schoolRole = AuthUtil.hasRoleOr(RoleConstant.SCHOOL_UNION_CHAIRMAN.name(), + RoleConstant.SCHOOL_UNION_MEMBER_ADMIN.name(), RoleConstant.SYSADMIN.name()); + boolean branchRole = AuthUtil.hasRoleOr(RoleConstant.BRANCH_UNION_CHAIRMAN.name(), + RoleConstant.BRANCH_UNION_OPERATOR.name()); + boolean groupRole = AuthUtil.hasRole(RoleConstant.BRANCH_UNION_GROUP_LEADER.name()); + MemberChangeOrigin changeOrigin = schoolRole ? MemberChangeOrigin.SCHOOL_UNION + : branchRole ? MemberChangeOrigin.BRANCH_UNION + : groupRole ? MemberChangeOrigin.UNION_GROUP : null; + if (changeOrigin == null) { + throw new BaseException("没有权限,或未设置工会小组"); + } + + memberCommonService.validateChangeAndSetBasicData(record, changeOrigin); + dao.insertOrUpdate(record); + + Dict args = Dict.create(); + args.set("submit", "admin"); + if (schoolRole) { + args.set("adminSubmit", "schoolUnion"); + } else if (branchRole) { + args.set("adminSubmit", "branchUnion"); + } else { + args.set("adminSubmit", "unionGroup"); + Sys_config config = dao.fetch(Sys_config.class, + Cnd.where(Sys_config::getConfigKey, "=", "UnionGroupIsNeedBranchAudit")); + args.set("groupAuditNext", config != null && "true".equals(config.getConfigValue()) + ? "branchAudit" : "schoolAudit"); + } + args.set(FlowConst.SUBMIT_TYPE, ProcessSubmitTypeEnum.APPLY.getCode()); + args.set(FlowConst.FORM_DATA, record); + ProcessInstance instance = flowEngine.startProcessInstanceByKey( + "HYBG", record.getId(), SecurityUtil.getUserId(), args); + List taskList = flowEngine.processTaskService().getDoingTaskList(instance.getId(), null); + for (ProcessTask task : taskList) { + flowEngine.executeProcessTask(task.getId(), SecurityUtil.getUserId(), args); + } + if (schoolRole) { + memberCommonService.compareChangeInfoAndUpdateMember(record); + } + return Result.success(); + } + + @Override + public Result getAllChangeMemberInfo(String userId) { + List changeList = memberCommonService.getAllChangeInfo(userId); + View_user user = dao.fetch(View_user.class, Cnd.where("id", "=", userId)); + if (user == null) { + return Result.error("未获取到人员基础信息"); + } + NutMap result = Lang.obj2nutmap(user); + result.put("user", user); + result.put("allChangeInfo", Lang.isEmpty(changeList) ? null : changeList); + return Result.success(result); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public Result batchUpdateUserAttribute(String usersJson) { + return applyBatch(usersJson, "userAttribute"); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public Result batchUpdateMember(String usersJson) { + return applyBatch(usersJson, "member"); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public Result batchUpdateAidFundType(String usersJson) { + return applyBatch(usersJson, "aidFundMemberUserType"); + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public Result batchUpdateUserState(String usersJson) { + return applyBatch(usersJson, "userState"); + } + + /** + * 批量变更入口。usersJson 为页面选中人员数组,operation 决定写入的业务字段,返回标准 Result。 + */ + @Aop(TransAop.READ_COMMITTED) + private Result applyBatch(String usersJson, String operation) { + try { + List users = Json.fromJsonAsList(NutMap.class, usersJson); + if (Lang.isEmpty(users)) { + return Result.error("请选择要修改的用户"); + } + int successCount = 0; + for (NutMap userMap : users) { + MemberChangeRecord record = buildManualChangeRecord(userMap.getString("id")); + if (record == null) { + continue; + } + if ("userAttribute".equals(operation)) { + record.setUserAttribute(userMap.getString("userAttribute")); + } else if ("member".equals(operation)) { + record.setMember(userMap.getBoolean("member")); + record.setWelfareMember(userMap.getBoolean("welfareMember")); + } else if ("aidFundMemberUserType".equals(operation)) { + record.setAidFundMemberUserType(userMap.getString("aidFundMemberUserType")); + } else if ("userState".equals(operation)) { + record.setUserState(userMap.getString("userState")); + } + int changed = applyManualChange(record); + if (changed > 0 && "member".equals(operation) && Boolean.TRUE.equals(record.getMember())) { + Sys_user user = dao.fetch(Sys_user.class, userMap.getString("id")); + if (user != null && user.getMemberTime() == null) { + user.setMemberTime(new Date()); + dao.updateIgnoreNull(user); + } + } + successCount += changed; + } + return successCount > 0 ? Result.success("批量设置成功") : Result.error("未检测到可保存的变更数据"); + } catch (Exception e) { + log.error("人员数据治理批量变更失败,操作类型:{}", operation, e); + return Result.error("批量设置失败:" + e.getMessage()); + } + } + + @Override + @Aop(TransAop.READ_COMMITTED) + public Result unitMove(String unitId, String userIdsJson) { + try { + if (StrUtil.isBlank(unitId) || StrUtil.isBlank(userIdsJson)) { + return Result.error("请选择新单位和要修改的用户"); + } + List userIds = Json.fromJsonAsList(String.class, userIdsJson); + Sys_unit unit = dao.fetch(Sys_unit.class, unitId); + if (unit == null || Lang.isEmpty(userIds)) { + return Result.error(unit == null ? "单位不存在" : "请选择要修改的用户"); + } + Sys_union union = StrUtil.isNotBlank(unit.getUnionId()) + ? dao.fetch(Sys_union.class, unit.getUnionId()) : null; + int successCount = 0; + for (String userId : userIds) { + MemberChangeRecord record = buildManualChangeRecord(userId); + if (record != null) { + record.setUnitId(unitId); + record.setUnitName(unit.getName()); + record.setUnionId(unit.getUnionId()); + record.setUnionName(union == null ? "" : union.getName()); + successCount += applyManualChange(record); + } + } + return successCount > 0 ? Result.success("单位调整成功") : Result.error("未检测到可保存的变更数据"); + } catch (Exception e) { + log.error("人员数据治理单位调整失败", e); + return Result.error("单位调整失败:" + e.getMessage()); + } + } + + @Override + public Result findOne(String id) { + View_user user = dao.fetch(View_user.class, Cnd.where("id", "=", id)); + if (ObjectUtil.isNull(user)) { + return Result.error("用户信息不存在"); + } + if (AuthUtil.hasRoleOr(RoleConstant.SYSADMIN.name(), RoleConstant.SCHOOL_UNION_MEMBER_ADMIN.name(), + RoleConstant.SCHOOL_UNION_ADMIN.name())) { + return Result.success(user); + } + boolean branchAllowed = AuthUtil.hasRoleOr(RoleConstant.BRANCH_UNION_CHAIRMAN.name(), + RoleConstant.BRANCH_UNION_OPERATOR.name()) + && (StrUtil.blankToDefault(user.getUnionId(), "").equals(StrUtil.blankToDefault(SecurityUtil.getUnionId(), "")) + || StrUtil.isBlank(user.getUnionId())); + boolean groupAllowed = AuthUtil.hasRole(RoleConstant.BRANCH_UNION_GROUP_LEADER.name()) + && StrUtil.isAllNotBlank(user.getUnionGroupId(), SecurityUtil.getUnionGroupId()) + && user.getUnionGroupId().equals(SecurityUtil.getUnionGroupId()); + if (branchAllowed || groupAllowed) { + user.setIdCard(DesensitizedUtil.idCardNum(user.getIdCard(), 3, 4)); + user.setMobile(DesensitizedUtil.mobilePhone(user.getMobile())); + return Result.success(user); + } + return SecurityUtil.getUserId().equals(user.getId()) ? Result.success(user) : Result.error("没有权限"); + } + + @Override + public Result findChangeById(String id) { + return Result.success().addData(dao.fetch(MemberChangeRecord.class, id)); + } + + @Override + public Result getUserByIdForMemberChange(String userId) { + View_user user = dao.fetch(View_user.class, Cnd.where("id", "=", userId)); + if (user == null) { + return Result.error("用户信息不存在"); + } + NutMap result = Lang.obj2nutmap(user); + if (StrUtil.isNotBlank(user.getUnionId())) { + result.put("union", dao.fetch(Sys_union.class, user.getUnionId())); + } + if (StrUtil.isNotBlank(user.getUnitId())) { + result.put("unit", dao.fetch(Sys_unit.class, user.getUnitId())); + } + return Result.success().addData(result); + } + + private MemberChangeRecord buildManualChangeRecord(String userId) { + if (StrUtil.isBlank(userId)) { + return null; + } + View_user user = dao.fetch(View_user.class, Cnd.where("id", "=", userId)); + if (user == null) { + return null; + } + MemberChangeRecord record = new MemberChangeRecord(); + BeanUtil.copyProperties(user, record); + record.setUserId(user.getId()); + return record; + } + + @Aop(TransAop.READ_COMMITTED) + private int applyManualChange(MemberChangeRecord record) { + try { + memberCommonService.validateChangeAndSetBasicData(record, MemberChangeOrigin.HAND_MOVEMENT); + memberCommonService.compareChangeInfoAndUpdateMember(record); + return 1; + } catch (BaseException e) { + if (StrUtil.contains(e.getMessage(), "未获取到异动数据")) { + return 0; + } + throw e; + } + } +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/personException/controller/PersonExceptionController.java b/src/main/java/com/budwk/app/zhgh/personGovernance/personException/controller/PersonExceptionController.java new file mode 100644 index 0000000..36d6a74 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/personException/controller/PersonExceptionController.java @@ -0,0 +1,72 @@ +package com.budwk.app.zhgh.personGovernance.personException.controller; + +import com.budwk.app.base.param.PageForm; +import com.budwk.app.zhgh.personGovernance.personException.service.PersonExceptionService; +import cn.dev33.satoken.annotation.SaCheckPermission; +import com.budwk.app.base.result.Result; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; + +/** 人员异常待确认、已处理及详情接口。 */ +@IocBean +@Ok("json:full") +@At("/platform/personGovernance/personException") +public class PersonExceptionController { + @Inject + private PersonExceptionService personExceptionService; + + @At("") + @Ok("beetl:/platform/personGovernance/personException/index.html") + @SaCheckPermission("data.person.governance.exception") + public void index() { + } + + @At + @SaCheckPermission("data.person.governance.exception") + public Result pageData(PageForm pageForm, String status, + @Param("searchName") String searchName, + @Param("searchKeyword") String searchKeyword, + @Param("unitId") String unitId, + @Param("batchId") String batchId, + @Param("handleResult") String handleResult) { + return Result.success(personExceptionService.pageData( + pageForm, status, searchName, searchKeyword, unitId, batchId, handleResult + )); + } + + @At + @SaCheckPermission("data.person.governance.exception") + public Result detail(String id) { + return Result.success(personExceptionService.detail(id)); + } + + /** + * 确认异常人员并同步修改人员状态。 + * + * @param ids 异常记录ID数组,当前页面按单条记录提交 + * @param handleResult DISABLE表示停用账号,KEEP表示继续保留 + * @param opinion 确认建议 + * @param personType 人员类型字典值 + * @param userState 在职状态字典值 + * @param member 会员状态,1为会员、0为非会员 + * @param welfareMember 福利会员状态,1为福利会员、0为非福利会员 + * @return 无业务数据,成功时统一返回code为0 + */ + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("data.person.governance.exception.handle") + public Result handle(@Param("ids") String[] ids, String handleResult, String opinion, + @Param("personType") String personType, + @Param("userState") String userState, + Integer member, Integer welfareMember) { + personExceptionService.handle( + ids, handleResult, opinion, personType, userState, member, welfareMember + ); + return Result.success(); + } +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/personException/model/PersonException.java b/src/main/java/com/budwk/app/zhgh/personGovernance/personException/model/PersonException.java new file mode 100644 index 0000000..b90d986 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/personException/model/PersonException.java @@ -0,0 +1,99 @@ +package com.budwk.app.zhgh.personGovernance.personException.model; + +import com.budwk.app.base.model.BaseModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.nutz.dao.entity.annotation.*; +import org.nutz.dao.interceptor.annotation.PrevInsert; + +import java.util.Date; + +/** + * 来源端缺失人员的发现、确认和处理闭环记录。 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = true) +@Table("person_exception") +public class PersonException extends BaseModel { + @Name + @Column + @Comment("主键ID") + @PrevInsert(uu32 = true) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + @Column + @Comment("API配置ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String configId; + @Column + @Comment("人员来源关系ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String relationId; + @Column + @Comment("发现异常的同步批次ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String discoverBatchId; + @Column + @Comment("本地人员用户ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String userId; + @Column + @Comment("人员编号") + @ColDefine(type = ColType.VARCHAR, width = 120) + private String personNo; + @Column + @Comment("人员姓名") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String personName; + @Column + @Comment("所属部门ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String unitId; + @Column + @Comment("所属部门名称") + @ColDefine(type = ColType.VARCHAR, width = 150) + private String unitName; + @Column + @Comment("异常类型") + @ColDefine(type = ColType.VARCHAR, width = 30) + private String exceptionType; + @Column + @Comment("异常原因") + @ColDefine(type = ColType.VARCHAR, width = 500) + private String exceptionReason; + @Column + @Comment("最近一次同步时间") + private Date lastSyncTime; + @Column + @Comment("异常发现时间") + private Date discoverTime; + @Column + @Comment("处理状态") + @ColDefine(type = ColType.VARCHAR, width = 30) + private String status; + @Column + @Comment("处理结果") + @ColDefine(type = ColType.VARCHAR, width = 30) + private String handleResult; + @Column + @Comment("处理意见") + @ColDefine(type = ColType.VARCHAR, width = 500) + private String handleOpinion; + @Column + @Comment("处理人ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String handlerId; + @Column + @Comment("处理人姓名") + @ColDefine(type = ColType.VARCHAR, width = 100) + private String handlerName; + @Column + @Comment("处理时间") + private Date handleTime; + @Column + @Comment("原始文件关联ID") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String rawFileReid; +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/personException/service/PersonExceptionService.java b/src/main/java/com/budwk/app/zhgh/personGovernance/personException/service/PersonExceptionService.java new file mode 100644 index 0000000..1938a8b --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/personException/service/PersonExceptionService.java @@ -0,0 +1,41 @@ +package com.budwk.app.zhgh.personGovernance.personException.service; + +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.param.PageForm; +import com.budwk.app.base.service.BaseService; +import com.budwk.app.zhgh.personGovernance.personException.model.PersonException; +import org.nutz.lang.util.NutMap; + +/** 人员异常查询与处理服务。 */ +public interface PersonExceptionService extends BaseService { + /** + * 查询异常人员。 + * + * @param pageForm 分页和排序参数 + * @param status PENDING待确认、PROCESSED已处理 + * @param searchName personName按姓名查询、personNo按人员编号查询 + * @param searchKeyword 查询关键字 + * @param unitId 所属部门主键 + * @param batchId 发现异常的同步批次主键 + * @param handleResult DISABLE已停用、KEEP继续保留 + * @return 异常人员分页数据 + */ + Pagination pageData(PageForm pageForm, String status, String searchName, String searchKeyword, + String unitId, String batchId, String handleResult); + + NutMap detail(String id); + + /** + * 确认异常人员,并将页面选择的人员类型、在职状态和会员状态同步到用户表。 + * + * @param ids 异常记录ID数组 + * @param handleResult DISABLE表示停用账号,KEEP表示继续保留 + * @param opinion 确认建议 + * @param personType 人员类型字典值 + * @param userState 在职状态字典值 + * @param member 会员状态,1为会员、0为非会员 + * @param welfareMember 福利会员状态,1为福利会员、0为非福利会员 + */ + void handle(String[] ids, String handleResult, String opinion, String personType, + String userState, Integer member, Integer welfareMember); +} diff --git a/src/main/java/com/budwk/app/zhgh/personGovernance/personException/service/impl/PersonExceptionServiceImpl.java b/src/main/java/com/budwk/app/zhgh/personGovernance/personException/service/impl/PersonExceptionServiceImpl.java new file mode 100644 index 0000000..3cef483 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/personGovernance/personException/service/impl/PersonExceptionServiceImpl.java @@ -0,0 +1,192 @@ +package com.budwk.app.zhgh.personGovernance.personException.service.impl; + +import com.budwk.app.base.page.Pagination; +import com.budwk.app.base.dao.CndPlus; +import com.budwk.app.base.param.PageForm; +import com.budwk.app.base.service.impl.BaseServiceImpl; +import com.budwk.app.base.constant.RoleConstant; +import com.budwk.app.sys.models.Sys_role; +import com.budwk.app.sys.models.Sys_user; +import com.budwk.app.sys.models.Sys_user_role; +import com.budwk.app.sys.services.SysUserService; +import com.budwk.app.web.commons.auth.utils.SecurityUtil; +import com.budwk.app.zhgh.personGovernance.personException.model.PersonException; +import com.budwk.app.zhgh.personGovernance.personException.service.PersonExceptionService; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.dao.Chain; +import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; +import org.nutz.dao.Sqls; +import org.nutz.dao.sql.Sql; +import org.nutz.ioc.aop.Aop; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.Strings; +import org.nutz.lang.util.NutMap; +import org.springframework.util.Assert; + +import java.util.Date; + +/** 异常人员仅做直接确认处理,不引入审核中状态。 */ +@IocBean(args = {"refer:dao"}) +public class PersonExceptionServiceImpl extends BaseServiceImpl implements PersonExceptionService { + @Inject + private SysUserService sysUserService; + + public PersonExceptionServiceImpl(Dao dao) { + super(dao); + } + + @Override + public Pagination pageData(PageForm pageForm, String status, String searchName, + String searchKeyword, String unitId, String batchId, + String handleResult) { + Sql sql = Sqls.create( + "SELECT e.*,c.configName sourceName,b.batchNo FROM person_exception e " + + "LEFT JOIN person_api_config c ON c.id=e.configId " + + "LEFT JOIN person_sync_batch b ON b.id=e.discoverBatchId $condition" + ); + CndPlus cnd = CndPlus.create(); + cnd.andEX("e.status", "=", status); + if (Strings.isNotBlank(searchKeyword)) { + // 查询字段只允许在姓名和人员编号之间选择,禁止直接拼接前端传入的字段名。 + String queryField = "personNo".equals(searchName) ? "e.personNo" : "e.personName"; + cnd.and(queryField, "like", "%" + searchKeyword + "%"); + } + cnd.andEX("e.unitId", "=", unitId).andEX("e.discoverBatchId", "=", batchId) + .andEX("e.handleResult", "=", handleResult); + cnd.and("e.delFlag", "=", false).desc("e.discoverTime"); + sql.setCondition(cnd); + return listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + } + + @Override + public NutMap detail(String id) { + PersonException exception = fetch(id); + Assert.notNull(exception, "异常记录不存在"); + Sql userSql = Sqls.create(""" + SELECT + u.id, + u.loginname, + u.username, + u.sex, + u.nation, + u.birthday, + u.political, + u.education, + u.academicDegree, + u.position, + u.unitId, + unit.name unitName, + un.unionname unionName, + u.idCard, + u.mobile, + u.email, + u.userState, + u.personType, + u.member, + u.welfareMember, + u.disabled + FROM sys_user u + LEFT JOIN sys_unit unit ON u.unitId = unit.id + LEFT JOIN sys_union un ON u.unionId = un.id + WHERE u.id = @userId + """).setParam("userId", exception.getUserId()); + return NutMap.NEW() + .addv("exception", exception) + // 只返回查看/处理页面需要的人员字段,避免输出密码、盐值等敏感信息。 + .addv("user", fetchMap(userSql)); + } + + /** + * 确认处理异常人员。 + * + * @param ids 异常记录ID,可单条或批量 + * @param handleResult DISABLE表示停用本地账号,KEEP表示继续保留 + * @param opinion 必填处理意见 + * @param personType 人员类型字典值,允许清空 + * @param userState 在职状态字典值,允许清空 + * @param member 会员状态,1为会员、0为非会员 + * @param welfareMember 福利会员状态,1为福利会员、0为非福利会员 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public void handle(String[] ids, String handleResult, String opinion, String personType, + String userState, Integer member, Integer welfareMember) { + Assert.notEmpty(ids, "请选择需要处理的异常人员"); + Assert.isTrue("DISABLE".equals(handleResult) || "KEEP".equals(handleResult), "处理结果不正确"); + Assert.hasText(opinion, "请填写确认建议"); + Assert.notNull(member, "请选择会员状态"); + Assert.isTrue(member == 0 || member == 1, "会员状态不正确"); + Assert.notNull(welfareMember, "请选择福利会员状态"); + Assert.isTrue(welfareMember == 0 || welfareMember == 1, "福利会员状态不正确"); + for (String id : ids) { + PersonException exception = fetch(id); + Assert.notNull(exception, "异常记录不存在"); + Assert.isTrue("PENDING".equals(exception.getStatus()), "仅待确认记录可以处理"); + Sys_user user = sysUserService.fetch(exception.getUserId()); + Assert.notNull(user, "异常记录关联的人员不存在"); + + String userId = exception.getUserId(); + Sys_role memberRole = dao().fetch(Sys_role.class, + Cnd.where("code", "=", RoleConstant.MEMBER.name())); + Assert.notNull(memberRole, "系统未配置会员角色"); + boolean hasMemberRole = dao().count( + Sys_user_role.class, + Cnd.where("userId", "=", userId).and("roleId", "=", memberRole.getId()) + ) > 0; + + // 人员类型、在职状态与本次确认结果在同一事务中保存,避免人员信息和异常状态不一致。 + Chain userChanges = Chain.make("personType", personType) + .add("userState", userState); + if ("DISABLE".equals(handleResult)) { + userChanges.add("disabled", true); + } + dao().update(Sys_user.class, userChanges, Cnd.where("id", "=", userId)); + + // 会员字段和会员角色以本次选择为准,同时修复历史数据中字段与角色不一致的情况。 + if (member == 1 && (!Boolean.TRUE.equals(user.getMember()) || !hasMemberRole)) { + dao().update(Sys_user.class, + Chain.make("member", true).add("memberTime", new Date()), + Cnd.where("id", "=", userId)); + if (!hasMemberRole) { + Sys_user_role userRole = new Sys_user_role(); + userRole.setUserId(userId); + userRole.setRoleId(memberRole.getId()); + userRole.setEnable(true); + dao().insert(userRole); + } + } else if (member == 0 && (Boolean.TRUE.equals(user.getMember()) || hasMemberRole)) { + dao().update(Sys_user.class, Chain.make("member", false), Cnd.where("id", "=", userId)); + dao().clear(Sys_user_role.class, + Cnd.where("userId", "=", userId).and("roleId", "=", memberRole.getId())); + } + + // 当前项目没有独立福利会员角色,只维护福利会员字段及加入时间。 + if (welfareMember == 1 + && !Boolean.TRUE.equals(user.getWelfareMember())) { + Chain welfareChanges = Chain.make("welfareMember", true); + if (!Boolean.TRUE.equals(user.getWelfareMember())) { + welfareChanges.add("welfareMemberJoinTime", new Date()); + } + dao().update(Sys_user.class, welfareChanges, Cnd.where("id", "=", userId)); + } else if (welfareMember == 0 + && Boolean.TRUE.equals(user.getWelfareMember())) { + dao().update( + Sys_user.class, + Chain.make("welfareMember", false).add("welfareMemberJoinTime", null), + Cnd.where("id", "=", userId) + ); + } + sysUserService.deleteCache(userId); + + exception.setStatus("PROCESSED") + .setHandleResult(handleResult) + .setHandleOpinion(opinion) + .setHandlerId(SecurityUtil.getUserId()) + .setHandlerName(SecurityUtil.getUserUsername()) + .setHandleTime(new Date()); + update(exception); + } + } +} diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/controller/AidFundChangeRecordController.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/controller/AidFundChangeRecordController.java index ce54435..3c3e9e8 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/controller/AidFundChangeRecordController.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/controller/AidFundChangeRecordController.java @@ -1,24 +1,18 @@ package com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.controller; import cn.dev33.satoken.annotation.SaCheckPermission; -import cn.dev33.satoken.annotation.SaMode; import cn.hutool.core.util.StrUtil; import com.budwk.app.base.annotation.SLog; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.result.Result; -import com.budwk.app.base.utils.PageUtil; import com.budwk.app.flow.engine.FlowEngine; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.param.AidFundPageForm; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.service.AidFundMemberChangeRecordService; -import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.service.AidFundMemberService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.nutz.aop.interceptor.ioc.TransAop; -import org.nutz.dao.Cnd; -import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; -import org.nutz.dao.util.cri.SqlExpressionGroup; import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; @@ -26,6 +20,8 @@ import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; import org.nutz.mvc.annotation.Param; +import javax.servlet.http.HttpServletResponse; + /** * @author zhf * @date 2026/1/19 17:55 @@ -52,73 +48,36 @@ public class AidFundChangeRecordController { } + /** + * 按页面条件分页返回基金会员变更记录。 + * + * @param pageForm 年度、姓名/工号、会员类型、变更类型、工会、单位、排序及页码/每页条数 + * @return Result.data 为 Pagination,list 为当前页记录,totalCount 为匹配总条数 + */ @At @ApiOperation("分页查询") @SaCheckPermission("medicalMutualAid.aidFund.changeRecord") public Result pageData(AidFundPageForm pageForm) { - Sql sql = Sqls.create(""" - SELECT - info.*, - us.sex, - us.username, - us.loginname, - us.arrivalAtSchoolDate, - us.mobile, - us.unitName, - us.unionName, - ins.id AS instanceId, - ins.businessNo, - ins.state instanceState, - ins.variable instanceVariable, - ins.processDefineId instanceProcessDefineId, - t.id taskId, - t.taskName AS taskKey, - t.displayName taskName, - t.taskType, - t.performType taskPerformType, - t.taskState, - t.finishTime, - t.taskParentId, - t.variable taskVariable, - IF((SELECT taskName FROM wf_process_task tt WHERE tt.id = t.taskParentId) = 'startTask', 1, 0) canRevoke, - (select MAX(id) from wf_process_task where processInstanceId = ins.id and taskName = 'startTask' AND taskState in (10,20)) AS startTaskId - FROM - `aid_fund_member_change_record` info - LEFT JOIN vw_user us ON us.id = info.userId - LEFT JOIN `wf_process_instance` ins ON ins.businessNo = info.id - LEFT JOIN wf_process_task t ON t.processInstanceId = ins.id AND t.taskState = 10 - LEFT JOIN wf_process_task_actor ta ON ta.processTaskId = t.id - $condition - """); - Cnd cnd = Cnd.NEW(); - if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) { - SqlExpressionGroup seg = new SqlExpressionGroup(); - seg.or("us.loginname", "like", "%" + pageForm.getSearchKeyword() + "%"); - seg.or("us.username", "like", "%" + pageForm.getSearchKeyword() + "%"); - cnd.and(seg); - } - cnd.andEX("IFNULL(info.aidFundMemberUserType, us.aidFundMemberUserType)", "=", pageForm.getAidFundMemberUserType()); - cnd.andEX("us.unitid", "=", pageForm.getUnitId()); - cnd.andEX("us.unionid", "=", pageForm.getUnionId()); - cnd.andEX("info.changeType", "=", pageForm.getChangeType()); - cnd.andEX("YEAR(info.applyTime)", "=", pageForm.getYear()); - - SqlExpressionGroup group = new SqlExpressionGroup(); - group.or("ins.state","=",20); - group.or("ins.state","is",null); - cnd.and(group); - if (StrUtil.isAllBlank(pageForm.getPageOrderName(), pageForm.getPageOrderBy())) { - cnd.desc("us.unitCode"); - } else { - cnd.orderBy(pageForm.getPageOrderName(), PageUtil.getOrder(pageForm.getPageOrderBy())); - } - cnd.groupBy("info.id"); - sql.setCondition(cnd); + Sql sql = changeRecordService.getChangeRecordSql(pageForm); Pagination pagination = changeRecordService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); return Result.success(pagination); } + /** + * 导出页面筛选条件下的全部基金会员变更记录。 + * + * @param pageForm 年度、姓名/工号、会员类型、变更类型、工会、单位及排序参数;忽略分页参数 + * @param response 输出包含页面业务列的 XLSX 文件流,无 JSON 返回值 + */ + @At + @Ok("void") + @ApiOperation("导出变更记录") + @SaCheckPermission("medicalMutualAid.aidFund.changeRecord") + public void exportChangeRecord(AidFundPageForm pageForm, HttpServletResponse response) { + changeRecordService.exportChangeRecord(pageForm, response); + } + /** * 删除基金会员变更记录。 * diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/service/AidFundMemberChangeRecordService.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/service/AidFundMemberChangeRecordService.java index eb1160c..db13868 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/service/AidFundMemberChangeRecordService.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/service/AidFundMemberChangeRecordService.java @@ -7,10 +7,27 @@ import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.model.AidFundMem import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.model.AidFundMemberPay; import org.nutz.lang.util.NutMap; +import javax.servlet.http.HttpServletResponse; import java.util.List; public interface AidFundMemberChangeRecordService extends BaseService { + /** + * 构建变更记录列表与导出共用的查询 SQL。 + * + * @param pageForm 年度、姓名/工号、会员类型、变更类型、工会、单位及排序参数;空筛选项不限制 + * @return 未设置分页的 SQL,包含申请、人员和 WF 流程字段 + */ + Sql getChangeRecordSql(AidFundPageForm pageForm); + + /** + * 导出当前筛选条件下的全部变更记录,列顺序与页面业务列一致。 + * + * @param pageForm 与列表相同的筛选和排序参数;页码、每页条数不参与导出限制 + * @param response XLSX 文件流的 HTTP 响应,无 JSON 返回值 + */ + void exportChangeRecord(AidFundPageForm pageForm, HttpServletResponse response); + /** * 构建互管会审核页面查询 SQL。 * diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/service/impl/AidFundMemberChangeRecordServiceImpl.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/service/impl/AidFundMemberChangeRecordServiceImpl.java index f34337a..0733281 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/service/impl/AidFundMemberChangeRecordServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/aidFund/service/impl/AidFundMemberChangeRecordServiceImpl.java @@ -1,5 +1,9 @@ package com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.service.impl; +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; +import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.Dict; @@ -8,6 +12,7 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.budwk.app.base.constant.RoleConstant; import com.budwk.app.base.service.impl.BaseServiceImpl; +import com.budwk.app.base.utils.CommonDownloadUtil; import com.budwk.app.base.utils.PageUtil; import com.budwk.app.flow.constant.FlowConst; import com.budwk.app.flow.entity.ProcessInstance; @@ -24,6 +29,7 @@ import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.model.AidFundMem import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.model.AidFundMemberPay; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.param.AidFundPageForm; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.service.AidFundMemberChangeRecordService; +import org.apache.poi.ss.usermodel.Workbook; import org.nutz.aop.interceptor.ioc.TransAop; import org.nutz.dao.Chain; import org.nutz.dao.Cnd; @@ -38,6 +44,7 @@ import org.nutz.json.Json; import org.nutz.lang.Lang; import org.nutz.lang.util.NutMap; +import javax.servlet.http.HttpServletResponse; import java.util.*; /** @@ -64,6 +71,119 @@ public class AidFundMemberChangeRecordServiceImpl extends BaseServiceImpl list = listMap(getChangeRecordSql(pageForm)); + Map memberTypeMap = getDictNameMap("AIDFUND_MEMBER_USER_TYPE"); + Map changeTypeMap = getDictNameMap("AIDFUND_MEMBER_CHANGE_TYPE"); + for (int index = 0; index < list.size(); index++) { + NutMap row = list.get(index); + row.put("sequence", index + 1); + String memberType = row.getString("aidFundMemberUserType"); + String changeType = row.getString("changeType"); + // 空值保持空白,未配置的字典编码保留原值,避免导出时丢失业务信息。 + row.put("aidFundMemberUserType", memberTypeMap.getOrDefault(memberType, memberType)); + row.put("changeType", changeTypeMap.getOrDefault(changeType, changeType)); + row.put("applyTime", row.getTime("applyTime") == null ? "" : DateUtil.formatDate(row.getTime("applyTime"))); + } + + List columns = new ArrayList<>(); + ExcelExportEntity sequence = new ExcelExportEntity("序号", "sequence", 10); + sequence.setType(10); + columns.add(sequence); + // 工号使用文本单元格,保留前导零;其余业务列与页面显示顺序一致。 + columns.add(new ExcelExportEntity("工号", "loginname", 20)); + columns.add(new ExcelExportEntity("姓名", "username", 20)); + columns.add(new ExcelExportEntity("性别", "sex", 10)); + columns.add(new ExcelExportEntity("入校时间", "arrivalAtSchoolDate", 20)); + columns.add(new ExcelExportEntity("所属单位", "unitName", 25)); + columns.add(new ExcelExportEntity("所属工会", "unionName", 25)); + columns.add(new ExcelExportEntity("基金会员类型", "aidFundMemberUserType", 20)); + columns.add(new ExcelExportEntity("变更类型", "changeType", 20)); + columns.add(new ExcelExportEntity("变更时间", "applyTime", 20)); + + ExportParams exportParams = new ExportParams(); + exportParams.setType(ExcelType.XSSF); + Workbook workbook = ExcelExportUtil.exportExcel(exportParams, columns, list); + String fileName = (pageForm.getYear() == null ? "" : pageForm.getYear()) + "基金会员变更记录.xlsx"; + CommonDownloadUtil.download(fileName, workbook, response); + } + @Override public Sql getFoundationAuditSql(AidFundPageForm pageForm) { Sql sql = Sqls.create(""" diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/controller/MedicalCalculateMoneyController.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/controller/MedicalCalculateMoneyController.java index 909c53f..1f20cb3 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/controller/MedicalCalculateMoneyController.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/controller/MedicalCalculateMoneyController.java @@ -1,22 +1,15 @@ package com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.controller; -import cn.afterturn.easypoi.excel.ExcelExportUtil; -import cn.afterturn.easypoi.excel.entity.ExportParams; -import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; -import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; import cn.dev33.satoken.annotation.SaCheckPermission; import com.budwk.app.base.annotation.SLog; import com.budwk.app.base.result.Result; -import com.budwk.app.base.utils.CommonDownloadUtil; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalApply; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalMoneyDetail; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.service.MedicalCalculateMoneyService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.apache.poi.ss.usermodel.Workbook; import org.nutz.aop.interceptor.ioc.TransAop; -import org.nutz.dao.Chain; import org.nutz.dao.Cnd; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; @@ -28,13 +21,11 @@ import org.nutz.lang.Lang; import org.nutz.lang.util.NutMap; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; -import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; -import java.util.ArrayList; import java.util.List; -import java.util.Objects; /** * @author zhf @@ -97,116 +88,45 @@ public class MedicalCalculateMoneyController { } + /** + * 按页面测算结果分配补助,并保存该年度结余。 + * 爱心金额显式按参数名绑定,避免 Nutz 将 BigDecimal 当作对象解析其内部字段。 + * + * @param data 非空申请 JSON 数组,每项包含 id 和非负金额 forecastSubsidyMoney;保存时按笔四舍五入到元 + * @param ratio 页面当前补助比例,单位为百分比 + * @param aidFund 本年度会员缴费总额,单位为元 + * @param inComeSum 本年度收入累计总额,单位为元 + * @param loveSubsidyMoney 实际爱心补助合计,单位为元,支持小数;未传时按零处理 + * @return Result 操作结果,code 为 0 表示补助金额与年度结余保存成功 + */ @At @ApiOperation("按比例修改补助金额") @Aop(TransAop.READ_COMMITTED) @SLog(tag = "医疗补助系统-医疗补助预测", msg = "按比例修改补助金额") @SaCheckPermission("medicalMutualAid.medical.calculateMoney") - public Result doHandle(String data, float ratio, double aidFund, double inComeSum, long loveSubsidyMoney){ -//获取申请最新年份 - Sql yearSql = Sqls.create("SELECT MAX(YEAR(applyTime)) AS currentYear FROM medical_apply"); - yearSql.setCallback(Sqls.callback.longs()); - medicalCalculateMoneyService.execute(yearSql); - Integer year = yearSql.getInt(); - - List list = Json.fromJsonAsList(MedicalApply.class, data); - list.forEach(v -> { - v.setSubsidyMoney(v.getForecastSubsidyMoney()); - }); - medicalCalculateMoneyService.updateIgnoreNull(list); - //补助总额 - BigDecimal subsidyMoney = list.stream() - .map(MedicalApply::getForecastSubsidyMoney) - .filter(Objects::nonNull) // 防御性:避免 null - .reduce(BigDecimal.ZERO, BigDecimal::add); - BigDecimal incomeRounded = BigDecimal.valueOf(Math.round(inComeSum)); - BigDecimal thisYearBalance = incomeRounded - .subtract(subsidyMoney) - .subtract(BigDecimal.valueOf(loveSubsidyMoney)); - - - MedicalMoneyDetail moneyDetail = medicalCalculateMoneyService.dao().fetch(MedicalMoneyDetail.class, Cnd.where("year", "=", year)); - if (Lang.isEmpty(moneyDetail)) { - moneyDetail = new MedicalMoneyDetail(); - moneyDetail.setYear(year); - moneyDetail.setAidFund(new BigDecimal(aidFund)); - moneyDetail.setRatio(ratio); - moneyDetail.setLastYearBalance(thisYearBalance); - medicalCalculateMoneyService.insert(moneyDetail); - } else { - moneyDetail.setAidFund(new BigDecimal(aidFund)); - moneyDetail.setRatio(ratio); - moneyDetail.setLastYearBalance(thisYearBalance); - medicalCalculateMoneyService.updateIgnoreNull(moneyDetail); + public Result doHandle(String data, float ratio, double aidFund, double inComeSum, + @Param("loveSubsidyMoney") BigDecimal loveSubsidyMoney){ + // 空请求不执行分配,避免仅更新年度结余而未保存任何申请金额。 + if (Lang.isEmpty(data)) { + return Result.error("请提交需要分配的申请记录"); } + List list = Json.fromJsonAsList(MedicalApply.class, data); + medicalCalculateMoneyService.saveAllocation(list, ratio, aidFund, inComeSum, loveSubsidyMoney); return Result.success(); } + /** + * 导出当前比例的测算结果;返回类型为 void,Excel 文件写入 response。 + * + * @param ratio 页面当前补助比例,单位为百分比 + * @param response 接收 Excel 下载内容的 HTTP 响应 + */ @At @Ok("void") @SaCheckPermission("medicalMutualAid.medical.calculateMoney") public void doExport(double ratio, HttpServletResponse response){ - List list = medicalCalculateMoneyService.getApplyData(ratio); - - list.forEach(l -> { - l.put("majorDisease", l.getBoolean("isMajorDisease") ? "是" : "否"); - }); - List exportEntities = new ArrayList<>(); - exportEntities.add(new ExcelExportEntity("姓名", "username", 20)); - exportEntities.add(new ExcelExportEntity("工号", "loginname", 20)); - exportEntities.add(new ExcelExportEntity("所属单位", "unitName", 20)); - exportEntities.add(new ExcelExportEntity("所属分工会", "unionName", 20)); - exportEntities.add(new ExcelExportEntity("疾病种类", "diseaseName", 20)); - exportEntities.add(new ExcelExportEntity("重大疾病", "majorDisease", 20)); - exportEntities.add(new ExcelExportEntity("申请时间", "applyTime", 20)); - exportEntities.add(new ExcelExportEntity("申请次数", "applyNum", 20)); - - exportEntities.add(new ExcelExportEntity("起扣时间", "aidFundDeductTime", 20)); - exportEntities.add(new ExcelExportEntity("缴费年数", "yearsSinceDeduct", 20)); - ExcelExportEntity hospitalSumMoneyExcelExportEntity = new ExcelExportEntity("住院医疗总额(不含门诊)", "hospitalSumMoney$", 20); - hospitalSumMoneyExcelExportEntity.setType(10); - exportEntities.add(hospitalSumMoneyExcelExportEntity); - ExcelExportEntity reimbursementMoneyExcelExportEntity = new ExcelExportEntity("实际报销总额", "reimbursementMoney$", 20); - reimbursementMoneyExcelExportEntity.setType(10); - exportEntities.add(reimbursementMoneyExcelExportEntity); - ExcelExportEntity singleBearMoneyExcelExportEntity = new ExcelExportEntity("(住院医疗)允许报销范围内个人承担部分总额", "singleBearMoney$", 20); - singleBearMoneyExcelExportEntity.setType(10); - exportEntities.add(singleBearMoneyExcelExportEntity); - ExcelExportEntity personExpenseMoneyExcelExportEntity = new ExcelExportEntity("(住院医疗)自费部分总额", "personExpenseMoney$", 20); - personExpenseMoneyExcelExportEntity.setType(10); - exportEntities.add(personExpenseMoneyExcelExportEntity); - ExcelExportEntity outpatientServiceMoneyExcelExportEntity = new ExcelExportEntity("重病门诊自费金额", "outpatientServiceMoney$", 20); - outpatientServiceMoneyExcelExportEntity.setType(10); - exportEntities.add(outpatientServiceMoneyExcelExportEntity); - ExcelExportEntity bxyMoneyExcelExportEntity = new ExcelExportEntity("非住院肾衰竭治疗、靶向药", "bxyMoney$", 20); - bxyMoneyExcelExportEntity.setType(10); - exportEntities.add(bxyMoneyExcelExportEntity); - ExcelExportEntity totalMoneyExcelExportEntity = new ExcelExportEntity("合计金额", "totalMoney", 20); - totalMoneyExcelExportEntity.setType(10); - exportEntities.add(totalMoneyExcelExportEntity); - ExcelExportEntity loveSubsidyMoneyExcelExportEntity = new ExcelExportEntity("爱心补助", "loveSubsidyMoney", 20); - loveSubsidyMoneyExcelExportEntity.setType(10); - exportEntities.add(loveSubsidyMoneyExcelExportEntity); - ExcelExportEntity subsidyMoneyExcelExportEntity = new ExcelExportEntity("当前补助金额", "subsidyMoney", 20); - subsidyMoneyExcelExportEntity.setType(10); - exportEntities.add(subsidyMoneyExcelExportEntity); - ExcelExportEntity ExcelExportEntityForecastSubsidyMoney = new ExcelExportEntity("按" + ratio + "%补助金额", "forecastSubsidyMoney", 20); - ExcelExportEntityForecastSubsidyMoney.setType(10); - exportEntities.add(ExcelExportEntityForecastSubsidyMoney); - ExcelExportEntity medicalSubsidyMoneyExcelExportEntity = new ExcelExportEntity("以往累计补助金额", "medicalSubsidyMoney", 20); - medicalSubsidyMoneyExcelExportEntity.setType(10); - exportEntities.add(medicalSubsidyMoneyExcelExportEntity); - try { - ExportParams exportParams = new ExportParams(); - exportParams.setType(ExcelType.XSSF); - Workbook workbook = ExcelExportUtil.exportExcel(exportParams, exportEntities, list); - CommonDownloadUtil.download("测算补助金额汇总表.xlsx", workbook, response); - }catch (Exception e){ - e.printStackTrace(); - } - - + medicalCalculateMoneyService.doExport(ratio, response); } diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/controller/MedicalStatisticsController.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/controller/MedicalStatisticsController.java index 89321b9..0da2a2f 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/controller/MedicalStatisticsController.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/controller/MedicalStatisticsController.java @@ -1,14 +1,9 @@ package com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.controller; -import cn.afterturn.easypoi.excel.ExcelExportUtil; -import cn.afterturn.easypoi.excel.entity.ExportParams; -import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; -import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.hutool.core.util.StrUtil; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.result.Result; -import com.budwk.app.base.utils.CommonDownloadUtil; import com.budwk.app.base.utils.PageUtil; import com.budwk.app.flow.engine.FlowEngine; import com.budwk.app.web.commons.auth.utils.SecurityUtil; @@ -17,7 +12,6 @@ import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.service.MedicalA import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.apache.poi.ss.usermodel.Workbook; import org.nutz.dao.Cnd; import org.nutz.dao.Sqls; import org.nutz.dao.entity.Record; @@ -30,7 +24,6 @@ import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; import java.util.List; /** @@ -124,115 +117,19 @@ public class MedicalStatisticsController { return Result.success(pagination); } + /** + * 导出医疗补助统计表,返回类型为 void,Excel 文件直接写入 response。 + * + * @param pageForm 页面筛选、分页及排序条件 + * @param isMajorDiseases true 为重疾,false 为普通疾病,null 不限制类型 + * @param response 接收下载内容的 HTTP 响应 + */ @At @Ok("void") - @ApiOperation("分页查询") + @ApiOperation("导出医疗补助统计表") @SaCheckPermission("medicalMutualAid.medical.statistics") public void doExport(MedicalPageForm pageForm, Boolean isMajorDiseases, HttpServletResponse response) { - Sql sql = Sqls.create(""" - SELECT - info.*, - type.diseaseName, - type.diseaseCode, - type.isMajorDiseases, - us.username, - us.loginname, - us.unitName, - us.unitCode, - us.unionName, - us.unionCode, - ins.id AS instanceId, - ins.businessNo, - ins.state instanceState, - ins.variable instanceVariable, - ins.processDefineId instanceProcessDefineId, - t.id taskId, - t.taskName AS taskKey, - t.displayName taskName, - t.taskType, - t.performType taskPerformType, - t.taskState, - t.finishTime, - t.taskParentId, - t.variable taskVariable, - IF((SELECT taskName FROM wf_process_task tt WHERE tt.id = t.taskParentId) = 'startTask', 1, 0) canRevoke, - (SELECT MAX(id) FROM wf_process_task WHERE processInstanceId = ins.id AND taskName = 'startTask') AS startTaskId - FROM - medical_apply info - LEFT JOIN medical_disease_type type ON info.diseaseId = type.id - LEFT JOIN aid_fund_member_pay member ON member.userId = info.userId - LEFT JOIN vw_user us ON us.id = info.userId - LEFT JOIN `wf_process_instance` ins ON ins.businessNo = info.id - LEFT JOIN wf_process_task t ON t.processInstanceId = ins.id - AND t.taskState = 10 - LEFT JOIN wf_process_task_actor ta ON ta.processTaskId = t.id - $condition - """); - Cnd cnd = Cnd.NEW(); - if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) { - SqlExpressionGroup seg = new SqlExpressionGroup(); - seg.orLike("us.loginname", pageForm.getSearchKeyword()); - seg.orLike("us.username", pageForm.getSearchKeyword()); - cnd.and(seg); - } - cnd.andEX("year(info.applyTime)", "=", pageForm.getYear()); - cnd.andEX("info.diseaseId", "=", pageForm.getDiseaseId()); - cnd.andEX("us.unionId", "=", pageForm.getUnionId()); - cnd.andEX("us.unitId", "=", pageForm.getUnitId()); - cnd.andEX("member.aidFundMemberUserType", "=", pageForm.getAidFundMemberUserType()); - cnd.andEX("type.isMajorDiseases", "=", isMajorDiseases); - - if (StrUtil.isNotBlank(pageForm.getPageOrderName()) && StrUtil.isNotBlank(pageForm.getPageOrderBy())) { - cnd.orderBy(pageForm.getPageOrderName(), PageUtil.getOrder(pageForm.getPageOrderBy())); - } else { - cnd.desc("info.applyTime"); - } - cnd.and("ins.state", "=", 20); - cnd.groupBy("info.id"); - sql.setCondition(cnd); - Pagination pagination = medicalApplyService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); - List list = medicalApplyService.getCostList(pagination.getList()); - for (NutMap map : list) { - boolean isMajor = map.getBoolean("isMajorDiseases"); - map.put("isMajorDiseasesDisplay", isMajor ? "是" : "否"); - } - List excelExportEntities = new ArrayList<>(); - excelExportEntities.add(new ExcelExportEntity("姓名","username",20)); - excelExportEntities.add(new ExcelExportEntity("工号","loginname",20)); - excelExportEntities.add(new ExcelExportEntity("单位","unitName",20)); - excelExportEntities.add(new ExcelExportEntity("单位编码","unitCode",20)); - excelExportEntities.add(new ExcelExportEntity("工会","unionName",20)); - excelExportEntities.add(new ExcelExportEntity("工会编码","unionCode",20)); - excelExportEntities.add(new ExcelExportEntity("疾病名称","diseaseName",20)); - excelExportEntities.add(new ExcelExportEntity("疾病编码","diseaseCode",20)); - excelExportEntities.add(new ExcelExportEntity("是否重疾","isMajorDiseasesDisplay",20)); - excelExportEntities.add(new ExcelExportEntity("申请时间","applyTime",20)); - excelExportEntities.add(new ExcelExportEntity("申请次数","applyNum",20)); - excelExportEntities.add(new ExcelExportEntity("住院医疗费总额(不含门诊)","hospitalSumMoney$",20)); - excelExportEntities.add(new ExcelExportEntity("实际报销总额","reimbursementMoney$",20)); - excelExportEntities.add(new ExcelExportEntity("(住院医疗)允许报销范围内个人承担部分金额","singleBearMoney$",20)); - excelExportEntities.add(new ExcelExportEntity("(住院医疗)自费部分金额","personExpenseMoney$",20)); - excelExportEntities.add(new ExcelExportEntity("重病门诊自费金额","outpatientServiceMoney$",20)); - excelExportEntities.add(new ExcelExportEntity("非住院肾衰竭治疗、靶向药金额","bxyMoney$",20)); - excelExportEntities.add(new ExcelExportEntity("合计","totalMoney",20)); - excelExportEntities.add(new ExcelExportEntity("预测补助金额","forecastSubsidyMoney",20)); - excelExportEntities.add(new ExcelExportEntity("补助金额","subsidyMoney",20)); - excelExportEntities.add(new ExcelExportEntity("爱心基金","loveSubsidyMoney",20)); - - String exportYear = String.valueOf(pageForm.getYear()); - if (StrUtil.isBlank(exportYear)) { - exportYear = String.valueOf(java.time.Year.now().getValue()); - } - String fileName = exportYear + "年补助人员列表.xlsx"; - - try { - ExportParams exportParams = new ExportParams(); - exportParams.setType(ExcelType.XSSF); - Workbook workbook = ExcelExportUtil.exportExcel(exportParams, excelExportEntities, list); - CommonDownloadUtil.download(fileName, workbook, response); - } catch (Exception e) { - log.error("导出补助人员列表失败", e); - } + medicalApplyService.exportStatistics(pageForm, isMajorDiseases, response); } } diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/MedicalApplyService.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/MedicalApplyService.java index 8cd08f8..842c6cf 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/MedicalApplyService.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/MedicalApplyService.java @@ -2,8 +2,10 @@ package com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.service; import com.budwk.app.base.service.BaseService; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalApply; +import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.param.MedicalPageForm; import org.nutz.lang.util.NutMap; +import javax.servlet.http.HttpServletResponse; import java.util.List; public interface MedicalApplyService extends BaseService { @@ -27,6 +29,16 @@ public interface MedicalApplyService extends BaseService { */ List getCostList(List list); + /** + * 导出医疗补助统计记录,金额列为数值类型,最后一行为本次导出记录的逐列合计。 + * 返回类型为 void,XSSF 文件内容直接写入 response。 + * + * @param pageForm 页面筛选与分页条件,包含年度、姓名或工号、疾病、工会、单位、会员类型和排序 + * @param isMajorDiseases true 导出重疾,false 导出普通疾病,null 不限制疾病类型 + * @param response 接收 Excel 下载内容的 HTTP 响应 + */ + void exportStatistics(MedicalPageForm pageForm, Boolean isMajorDiseases, HttpServletResponse response); + /** * 查询是否有进行中的申请 diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/MedicalCalculateMoneyService.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/MedicalCalculateMoneyService.java index 343c6e2..191f23a 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/MedicalCalculateMoneyService.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/MedicalCalculateMoneyService.java @@ -1,8 +1,11 @@ package com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.service; import com.budwk.app.base.service.BaseService; +import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalApply; import org.nutz.lang.util.NutMap; +import javax.servlet.http.HttpServletResponse; +import java.math.BigDecimal; import java.util.List; public interface MedicalCalculateMoneyService extends BaseService { @@ -14,4 +17,25 @@ public interface MedicalCalculateMoneyService extends BaseService { NutMap getData(); List getApplyData(double ratio); + + /** + * 按笔取整并保存分配结果,使用实际写入的补助合计更新年度结余。 + * 返回类型为 void;申请金额和年度结余在同一事务中保存,校验失败时抛出业务异常。 + * + * @param list 非空申请列表,每项使用 id 和非负的 forecastSubsidyMoney,其他字段不参与更新 + * @param ratio 当前分配比例,单位为百分比 + * @param aidFund 本年度会员缴费总额,单位为元 + * @param inComeSum 本年度收入累计总额,单位为元,沿用原收入取整口径 + * @param loveSubsidyMoney 实际爱心补助合计,保留小数精度,null 按零处理 + */ + void saveAllocation(List list, float ratio, double aidFund, double inComeSum, + BigDecimal loveSubsidyMoney); + + /** + * 按列表测算口径导出申请数据;返回类型为 void,Excel 列对应申请信息、费用和测算金额。 + * + * @param ratio 页面当前补助比例,单位为百分比 + * @param response 用于写入 Excel 文件的 HTTP 响应 + */ + void doExport(double ratio, HttpServletResponse response); } diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/impl/MedicalApplyServiceImpl.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/impl/MedicalApplyServiceImpl.java index 8a71c1c..c095599 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/impl/MedicalApplyServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/impl/MedicalApplyServiceImpl.java @@ -1,9 +1,16 @@ package com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.service.impl; +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; +import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; +import com.budwk.app.base.page.Pagination; import com.budwk.app.base.result.Result; import com.budwk.app.base.service.impl.BaseServiceImpl; +import com.budwk.app.base.utils.CommonDownloadUtil; +import com.budwk.app.base.utils.PageUtil; import com.budwk.app.flow.enums.ProcessInstanceStateEnum; import com.budwk.app.sys.models.Sys_user; import com.budwk.app.web.commons.auth.utils.SecurityUtil; @@ -11,7 +18,10 @@ import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalApp import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalApplyCost; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalDiseaseType; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalSetting; +import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.param.MedicalPageForm; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.service.MedicalApplyService; +import lombok.extern.slf4j.Slf4j; +import org.apache.poi.ss.usermodel.Workbook; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; import org.nutz.dao.Sqls; @@ -21,9 +31,11 @@ import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.lang.Lang; import org.nutz.lang.util.NutMap; +import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.math.RoundingMode; import java.text.DecimalFormat; +import java.util.ArrayList; import java.util.Calendar; import java.util.HashMap; import java.util.List; @@ -35,6 +47,7 @@ import java.util.Objects; * @description */ @IocBean(args = {"refer:dao"}) +@Slf4j public class MedicalApplyServiceImpl extends BaseServiceImpl implements MedicalApplyService { public MedicalApplyServiceImpl(Dao dao) { super(dao); @@ -109,6 +122,151 @@ public class MedicalApplyServiceImpl extends BaseServiceImpl imple return list; } + @Override + public void exportStatistics(MedicalPageForm pageForm, Boolean isMajorDiseases, HttpServletResponse response) { + // 沿用统计页的筛选、排序及分页范围,合计金额只覆盖本次实际导出的记录。 + Sql sql = Sqls.create(""" + SELECT + info.*, + type.diseaseName, + type.diseaseCode, + type.isMajorDiseases, + us.username, + us.loginname, + us.unitName, + us.unitCode, + us.unionName, + us.unionCode, + ins.id AS instanceId, + ins.businessNo, + ins.state instanceState, + ins.variable instanceVariable, + ins.processDefineId instanceProcessDefineId, + t.id taskId, + t.taskName AS taskKey, + t.displayName taskName, + t.taskType, + t.performType taskPerformType, + t.taskState, + t.finishTime, + t.taskParentId, + t.variable taskVariable, + IF((SELECT taskName FROM wf_process_task tt WHERE tt.id = t.taskParentId) = 'startTask', 1, 0) canRevoke, + (SELECT MAX(id) FROM wf_process_task WHERE processInstanceId = ins.id AND taskName = 'startTask') AS startTaskId + FROM + medical_apply info + LEFT JOIN medical_disease_type type ON info.diseaseId = type.id + LEFT JOIN aid_fund_member_pay member ON member.userId = info.userId + LEFT JOIN vw_user us ON us.id = info.userId + LEFT JOIN `wf_process_instance` ins ON ins.businessNo = info.id + LEFT JOIN wf_process_task t ON t.processInstanceId = ins.id + AND t.taskState = 10 + LEFT JOIN wf_process_task_actor ta ON ta.processTaskId = t.id + $condition + """); + Cnd cnd = Cnd.NEW(); + if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) { + SqlExpressionGroup seg = new SqlExpressionGroup(); + seg.orLike("us.loginname", pageForm.getSearchKeyword()); + seg.orLike("us.username", pageForm.getSearchKeyword()); + cnd.and(seg); + } + cnd.andEX("year(info.applyTime)", "=", pageForm.getYear()); + cnd.andEX("info.diseaseId", "=", pageForm.getDiseaseId()); + cnd.andEX("us.unionId", "=", pageForm.getUnionId()); + cnd.andEX("us.unitId", "=", pageForm.getUnitId()); + cnd.andEX("member.aidFundMemberUserType", "=", pageForm.getAidFundMemberUserType()); + cnd.andEX("type.isMajorDiseases", "=", isMajorDiseases); + + if (StrUtil.isNotBlank(pageForm.getPageOrderName()) && StrUtil.isNotBlank(pageForm.getPageOrderBy())) { + cnd.orderBy(pageForm.getPageOrderName(), PageUtil.getOrder(pageForm.getPageOrderBy())); + } else { + cnd.desc("info.applyTime"); + } + cnd.and("ins.state", "=", 20); + cnd.groupBy("info.id"); + sql.setCondition(cnd); + Pagination pagination = listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + List list = getCostList(pagination.getList()); + for (NutMap map : list) { + boolean isMajor = map.getBoolean("isMajorDiseases"); + map.put("isMajorDiseasesDisplay", isMajor ? "是" : "否"); + } + String exportYear = String.valueOf(pageForm.getYear()); + if (StrUtil.isBlank(exportYear)) { + exportYear = String.valueOf(java.time.Year.now().getValue()); + } + String fileName = exportYear + "年补助人员列表.xlsx"; + + try { + Workbook workbook = createStatisticsExportWorkbook(list); + CommonDownloadUtil.download(fileName, workbook, response); + } catch (Exception e) { + log.error("导出补助人员列表失败", e); + } + } + + /** + * 生成统计导出工作簿,统一金额列类型并追加逐列合计。 + * + * @param list 已补齐费用汇总字段的申请记录,不包含合计行 + * @return XSSF 工作簿;申请信息保持原列顺序,十个金额列及末尾合计金额均为数值类型 + */ + private Workbook createStatisticsExportWorkbook(List list) { + List excelExportEntities = new ArrayList<>(); + excelExportEntities.add(new ExcelExportEntity("姓名","username",20)); + excelExportEntities.add(new ExcelExportEntity("工号","loginname",20)); + excelExportEntities.add(new ExcelExportEntity("单位","unitName",20)); + excelExportEntities.add(new ExcelExportEntity("单位编码","unitCode",20)); + excelExportEntities.add(new ExcelExportEntity("工会","unionName",20)); + excelExportEntities.add(new ExcelExportEntity("工会编码","unionCode",20)); + excelExportEntities.add(new ExcelExportEntity("疾病名称","diseaseName",20)); + excelExportEntities.add(new ExcelExportEntity("疾病编码","diseaseCode",20)); + excelExportEntities.add(new ExcelExportEntity("是否重疾","isMajorDiseasesDisplay",20)); + excelExportEntities.add(new ExcelExportEntity("申请时间","applyTime",20)); + excelExportEntities.add(new ExcelExportEntity("申请次数","applyNum",20)); + excelExportEntities.add(new ExcelExportEntity("住院医疗费总额(不含门诊)","hospitalSumMoney$",20)); + excelExportEntities.add(new ExcelExportEntity("实际报销总额","reimbursementMoney$",20)); + excelExportEntities.add(new ExcelExportEntity("(住院医疗)允许报销范围内个人承担部分金额","singleBearMoney$",20)); + excelExportEntities.add(new ExcelExportEntity("(住院医疗)自费部分金额","personExpenseMoney$",20)); + excelExportEntities.add(new ExcelExportEntity("重病门诊自费金额","outpatientServiceMoney$",20)); + excelExportEntities.add(new ExcelExportEntity("非住院肾衰竭治疗、靶向药金额","bxyMoney$",20)); + excelExportEntities.add(new ExcelExportEntity("合计","totalMoney",20)); + excelExportEntities.add(new ExcelExportEntity("预测补助金额","forecastSubsidyMoney",20)); + excelExportEntities.add(new ExcelExportEntity("补助金额","subsidyMoney",20)); + excelExportEntities.add(new ExcelExportEntity("爱心基金","loveSubsidyMoney",20)); + + List moneyFields = List.of("hospitalSumMoney$", "reimbursementMoney$", "singleBearMoney$", + "personExpenseMoney$", "outpatientServiceMoney$", "bxyMoney$", "totalMoney", + "forecastSubsidyMoney", "subsidyMoney", "loveSubsidyMoney"); + // 与测算页导出一致,金额写入 Excel 数值单元格;工号和单位编码仍按文本输出。 + for (ExcelExportEntity entity : excelExportEntities) { + if (moneyFields.contains(entity.getKey())) { + entity.setType(10); + } + } + + NutMap summary = new NutMap(); + summary.put("username", "合计"); + // 空金额按零参与汇总,使用十进制累加避免浮点误差;没有记录时合计也为零。 + for (String field : moneyFields) { + BigDecimal sum = BigDecimal.ZERO; + for (NutMap row : list) { + String rawValue = row.getString(field); + BigDecimal money = StrUtil.isBlank(rawValue) ? BigDecimal.ZERO : new BigDecimal(rawValue); + row.put(field, money); + sum = sum.add(money); + } + summary.put(field, sum); + } + List exportList = new ArrayList<>(list); + exportList.add(summary); + + ExportParams exportParams = new ExportParams(); + exportParams.setType(ExcelType.XSSF); + return ExcelExportUtil.exportExcel(exportParams, excelExportEntities, exportList); + } + @Override public Boolean getIsAfootMedicalApply(String userId, String id) { Sql sql = Sqls.create(""" diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/impl/MedicalCalculateMoneyServiceImpl.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/impl/MedicalCalculateMoneyServiceImpl.java index 4e67cb0..308d165 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/impl/MedicalCalculateMoneyServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/medicalMutualAid/medical/service/impl/MedicalCalculateMoneyServiceImpl.java @@ -1,26 +1,40 @@ package com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.service.impl; +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; +import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; +import cn.hutool.core.util.StrUtil; +import com.budwk.app.base.exception.BaseException; import com.budwk.app.base.service.impl.BaseServiceImpl; +import com.budwk.app.base.utils.CommonDownloadUtil; import com.budwk.app.flow.enums.ProcessInstanceStateEnum; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.aidFund.model.AidFundMemberPay; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalApply; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.model.MedicalMoneyDetail; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.service.MedicalApplyService; import com.budwk.app.zhgh.staffbenefit.medicalMutualAid.medical.service.MedicalCalculateMoneyService; +import org.apache.poi.ss.usermodel.Workbook; +import org.nutz.aop.interceptor.ioc.TransAop; +import org.nutz.dao.Chain; import org.nutz.dao.Cnd; import org.nutz.dao.Dao; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; +import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.lang.Lang; import org.nutz.lang.util.NutMap; +import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.math.RoundingMode; -import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.HashSet; import java.util.List; import java.util.Objects; +import java.util.Set; /** * @author zhf @@ -70,10 +84,12 @@ public class MedicalCalculateMoneyServiceImpl extends BaseServiceImpl implements double subsidyMoney = applyList.stream().mapToDouble(apply -> apply.getDouble("subsidyMoney")).sum(); nutMap.setv("subsidyMoney", subsidyMoney); - //获取申请成功的爱心补助金额 - //找到有多少数据 - int firstApplyCount = applyList.stream().filter(apply -> apply.getInt("applyNum") == 1).toList().size(); - nutMap.setv("loveSubsidyMoney", firstApplyCount * 5000); + // 与列表使用相同的已办结申请记录,汇总实际爱心补助;零金额和空值不增加合计。 + BigDecimal loveSubsidyMoney = applyList.stream() + .map(apply -> apply.getString("loveSubsidyMoney")) + .map(money -> StrUtil.isBlank(money) ? BigDecimal.ZERO : new BigDecimal(money)) + .reduce(BigDecimal.ZERO, BigDecimal::add); + nutMap.setv("loveSubsidyMoney", loveSubsidyMoney); //查询申请成功后的住院缴费金额 List applyIds = applyList.stream().map(v -> v.getString("id")).toList(); @@ -85,6 +101,12 @@ public class MedicalCalculateMoneyServiceImpl extends BaseServiceImpl implements return nutMap; } + /** + * 返回最新申请年度的已办结测算列表,供页面和导出共用。 + * + * @param ratio 补助比例的百分数,例如 60 表示按 60% 测算 + * @return 每项为申请及费用字段的 NutMap;subsidyMoney 保留已保存金额,forecastSubsidyMoney 按笔四舍五入到整数元 + */ @Override public List getApplyData(double ratio) { //获取申请最新年份 @@ -98,12 +120,150 @@ public class MedicalCalculateMoneyServiceImpl extends BaseServiceImpl implements applyList.forEach(apply -> { apply.putAll(medicalApplyService.calcMedicalMoney(apply.getString("id"),null, ratio)); + // 仅对待分配的测算金额取整;已保存金额保留原值,避免掩盖尚未重新分配的历史小数。 + String money = apply.getString("forecastSubsidyMoney"); + apply.put("forecastSubsidyMoney", StrUtil.isBlank(money) ? BigDecimal.ZERO + : new BigDecimal(money).setScale(0, RoundingMode.HALF_UP)); }); return applyList; } + @Override + @Aop(TransAop.READ_COMMITTED) + public void saveAllocation(List list, float ratio, double aidFund, double inComeSum, + BigDecimal loveSubsidyMoney) { + // 先校验整批参数;空金额不能当作零覆盖,重复申请不能重复计入年度支出。 + if (Lang.isEmpty(list)) { + throw new BaseException("请提交需要分配的申请记录"); + } + Set applyIds = new HashSet<>(); + for (MedicalApply apply : list) { + if (apply == null || StrUtil.isBlank(apply.getId()) || apply.getForecastSubsidyMoney() == null + || apply.getForecastSubsidyMoney().signum() < 0) { + throw new BaseException("申请记录及补助金额不能为空,补助金额不能为负数"); + } + if (!applyIds.add(apply.getId())) { + throw new BaseException("申请记录重复,请刷新后重新分配"); + } + } + + Sql yearSql = Sqls.create("SELECT MAX(YEAR(applyTime)) AS currentYear FROM medical_apply"); + yearSql.setCallback(Sqls.callback.longs()); + dao().execute(yearSql); + Integer year = yearSql.getInt(); + + BigDecimal subsidyMoney = BigDecimal.ZERO; + for (MedicalApply apply : list) { + // 与测算列表使用相同的按笔取整规则,两列写入同一个整数元金额。 + BigDecimal money = apply.getForecastSubsidyMoney().setScale(0, RoundingMode.HALF_UP); + dao().update(MedicalApply.class, Chain.make("forecastSubsidyMoney", money) + .add("subsidyMoney", money), Cnd.where("id", "=", apply.getId())); + subsidyMoney = subsidyMoney.add(money); + } + // 结余扣除实际保存的整数补助合计;爱心补助独立保留小数,不受常规补助取整影响。 + BigDecimal thisYearBalance = BigDecimal.valueOf(Math.round(inComeSum)) + .subtract(subsidyMoney) + .subtract(loveSubsidyMoney == null ? BigDecimal.ZERO : loveSubsidyMoney); + MedicalMoneyDetail moneyDetail = dao().fetch(MedicalMoneyDetail.class, Cnd.where("year", "=", year)); + if (Lang.isEmpty(moneyDetail)) { + moneyDetail = new MedicalMoneyDetail(); + moneyDetail.setYear(year); + moneyDetail.setAidFund(BigDecimal.valueOf(aidFund)); + moneyDetail.setRatio(ratio); + moneyDetail.setLastYearBalance(thisYearBalance); + insert(moneyDetail); + } else { + moneyDetail.setAidFund(BigDecimal.valueOf(aidFund)); + moneyDetail.setRatio(ratio); + moneyDetail.setLastYearBalance(thisYearBalance); + updateIgnoreNull(moneyDetail); + } + } + + @Override + public void doExport(double ratio, HttpServletResponse response) { + // 导出复用列表查询结果,保证服务端测算金额与页面初次加载时的口径一致。 + List list = getApplyData(ratio); + list.forEach(apply -> apply.put("majorDisease", apply.getBoolean("isMajorDiseases") ? "是" : "否")); + + List exportEntities = new ArrayList<>(); + exportEntities.add(new ExcelExportEntity("姓名", "username", 20)); + exportEntities.add(new ExcelExportEntity("工号", "loginname", 20)); + exportEntities.add(new ExcelExportEntity("所属单位", "unitName", 20)); + exportEntities.add(new ExcelExportEntity("所属分工会", "unionName", 20)); + exportEntities.add(new ExcelExportEntity("疾病种类", "diseaseName", 20)); + exportEntities.add(new ExcelExportEntity("重大疾病", "majorDisease", 20)); + exportEntities.add(new ExcelExportEntity("申请时间", "applyTime", 20)); + exportEntities.add(new ExcelExportEntity("申请次数", "applyNum", 20)); + + exportEntities.add(new ExcelExportEntity("起扣时间", "aidFundDeductTime", 20)); + exportEntities.add(new ExcelExportEntity("缴费年数", "yearsSinceDeduct", 20)); + ExcelExportEntity hospitalSumMoneyExcelExportEntity = new ExcelExportEntity("住院医疗总额(不含门诊)", "hospitalSumMoney$", 20); + hospitalSumMoneyExcelExportEntity.setType(10); + exportEntities.add(hospitalSumMoneyExcelExportEntity); + ExcelExportEntity reimbursementMoneyExcelExportEntity = new ExcelExportEntity("实际报销总额", "reimbursementMoney$", 20); + reimbursementMoneyExcelExportEntity.setType(10); + exportEntities.add(reimbursementMoneyExcelExportEntity); + ExcelExportEntity singleBearMoneyExcelExportEntity = new ExcelExportEntity("(住院医疗)允许报销范围内个人承担部分总额", "singleBearMoney$", 20); + singleBearMoneyExcelExportEntity.setType(10); + exportEntities.add(singleBearMoneyExcelExportEntity); + ExcelExportEntity personExpenseMoneyExcelExportEntity = new ExcelExportEntity("(住院医疗)自费部分总额", "personExpenseMoney$", 20); + personExpenseMoneyExcelExportEntity.setType(10); + exportEntities.add(personExpenseMoneyExcelExportEntity); + ExcelExportEntity outpatientServiceMoneyExcelExportEntity = new ExcelExportEntity("重病门诊自费金额", "outpatientServiceMoney$", 20); + outpatientServiceMoneyExcelExportEntity.setType(10); + exportEntities.add(outpatientServiceMoneyExcelExportEntity); + ExcelExportEntity bxyMoneyExcelExportEntity = new ExcelExportEntity("非住院肾衰竭治疗、靶向药", "bxyMoney$", 20); + bxyMoneyExcelExportEntity.setType(10); + exportEntities.add(bxyMoneyExcelExportEntity); + ExcelExportEntity totalMoneyExcelExportEntity = new ExcelExportEntity("合计金额", "totalMoney", 20); + totalMoneyExcelExportEntity.setType(10); + exportEntities.add(totalMoneyExcelExportEntity); + ExcelExportEntity loveSubsidyMoneyExcelExportEntity = new ExcelExportEntity("爱心补助", "loveSubsidyMoney", 20); + loveSubsidyMoneyExcelExportEntity.setType(10); + exportEntities.add(loveSubsidyMoneyExcelExportEntity); + // 当前补助读取已保存值,按比例补助读取待分配值,与页面两列含义保持一致。 + ExcelExportEntity subsidyMoneyExcelExportEntity = new ExcelExportEntity("当前补助金额", "subsidyMoney", 20); + subsidyMoneyExcelExportEntity.setType(10); + exportEntities.add(subsidyMoneyExcelExportEntity); + ExcelExportEntity forecastSubsidyMoneyExcelExportEntity = new ExcelExportEntity("按" + ratio + "%补助金额", "forecastSubsidyMoney", 20); + forecastSubsidyMoneyExcelExportEntity.setType(10); + exportEntities.add(forecastSubsidyMoneyExcelExportEntity); + ExcelExportEntity medicalSubsidyMoneyExcelExportEntity = new ExcelExportEntity("以往累计补助金额", "medicalSubsidyMoney", 20); + medicalSubsidyMoneyExcelExportEntity.setType(10); + exportEntities.add(medicalSubsidyMoneyExcelExportEntity); + try { + List moneyFields = List.of("hospitalSumMoney$", "reimbursementMoney$", "singleBearMoney$", + "personExpenseMoney$", "outpatientServiceMoney$", "bxyMoney$", "totalMoney", + "loveSubsidyMoney", "subsidyMoney", "forecastSubsidyMoney", "medicalSubsidyMoney"); + NutMap summary = new NutMap(); + summary.put("username", "合计"); + // 已保存补助和测算补助分别精确累加,空金额按零处理。 + for (String field : moneyFields) { + BigDecimal sum = BigDecimal.ZERO; + for (NutMap row : list) { + String rawValue = row.getString(field); + BigDecimal money = StrUtil.isBlank(rawValue) ? BigDecimal.ZERO : new BigDecimal(rawValue); + row.put(field, money); + sum = sum.add(money); + } + summary.put(field, sum); + } + // 仅在导出数据末尾追加合计行,未查询到申请时各金额列显示数值零。 + List exportList = new ArrayList<>(list); + exportList.add(summary); + + ExportParams exportParams = new ExportParams(); + exportParams.setType(ExcelType.XSSF); + Workbook workbook = ExcelExportUtil.exportExcel(exportParams, exportEntities, exportList); + CommonDownloadUtil.download("测算补助金额汇总表.xlsx", workbook, response); + } catch (Exception e) { + e.printStackTrace(); + } + } + /** * 根据申请id查询出住院缴费金额 diff --git a/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/apply/MemberApplyController.java b/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/apply/MemberApplyController.java index 90899d9..8ee03e5 100644 --- a/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/apply/MemberApplyController.java +++ b/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/apply/MemberApplyController.java @@ -12,6 +12,8 @@ import com.budwk.app.flow.engine.FlowEngine; import com.budwk.app.flow.entity.ProcessInstance; import com.budwk.app.flow.entity.ProcessTask; import com.budwk.app.flow.enums.ProcessSubmitTypeEnum; +import com.budwk.app.flow.enums.ProcessInstanceStateEnum; +import com.budwk.app.flow.enums.ProcessTaskStateEnum; import com.budwk.app.flow.service.FlowCommonService; import com.budwk.app.sys.models.Sys_union_group; import com.budwk.app.web.commons.auth.utils.AuthUtil; @@ -31,6 +33,7 @@ import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.lang.Lang; +import org.nutz.lang.util.NutMap; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; import org.nutz.mvc.annotation.Param; @@ -87,9 +90,12 @@ public class MemberApplyController { @SaCheckPermission("member.apply.submit") @SLog(tag = "会员入会申请", msg = "提交申请,申请人: ${args[0].username}") public Result submit(@Param("data") MemberApplyRecord memberApplyRecord){ - if (StrUtil.isBlank(memberApplyRecord.getId())) { - memberCommonService.validateApplyOrChangeIsDoing(null, "apply"); + lockApplicant(); + String blockMessage = getApplyBlockMessage(currentUser(), memberApplyRecord.getId(), null); + if (StrUtil.isNotBlank(blockMessage)) { + return Result.error(blockMessage); } + memberApplyRecord.setUserId(SecurityUtil.getUserId()); // 开启流程实例 Dict args = Dict.create(); // 设置流程变量 @@ -126,9 +132,15 @@ public class MemberApplyController { @SaCheckPermission("member.apply.submit") @SLog(tag = "会员入会申请", msg = "重新提交申请,申请人: ${args[0].username}") public Result submitAgain(@Param("data") MemberApplyRecord memberApplyRecord, @Param("taskId") Long taskId) { - if (StrUtil.isBlank(memberApplyRecord.getId())) { - memberCommonService.validateApplyOrChangeIsDoing(null, "apply"); + lockApplicant(); + String blockMessage = getApplyBlockMessage(currentUser(), memberApplyRecord.getId(), taskId); + if (StrUtil.isNotBlank(blockMessage)) { + return Result.error(blockMessage); } + if (taskId == null) { + return Result.error("申请任务不存在或已处理,请勿重复提交"); + } + memberApplyRecord.setUserId(SecurityUtil.getUserId()); Dict dict = Dict.create(); // 设置流程变量 if ("HMC".equals(Globals.SchoolCode)) { @@ -190,14 +202,86 @@ public class MemberApplyController { /** - * 获取当前登录用户信息,是用来判断当前用户是否是会员 - * @return + * 获取当前登录用户信息及入会申请限制,供页面进入时提示。 + * + * @param id 当前编辑的申请ID,新申请可为空 + * @param taskId 重新提交的申请任务ID,新申请可为空 + * @return 用户资料及禁止提交的原因;合法退回重提不视为重复申请 */ @At @ApiOperation("获取当前登录用户信息") @SaCheckPermission("member.apply.submit") - public Result getSelfUserInfo() { - return Result.success(dao.fetch(View_user.class, Cnd.where("id", "=", SecurityUtil.getUserId()))); + public Result getSelfUserInfo(String id, Long taskId) { + View_user user = currentUser(); + if (user == null) { + return Result.error("无法获取当前用户信息"); + } + NutMap data = Lang.obj2map(user, NutMap.class); + data.setv("applicationBlockMessage", getApplyBlockMessage(user, id, taskId)); + return Result.success(data); + } + + private View_user currentUser() { + return dao.fetch(View_user.class, Cnd.where("id", "=", SecurityUtil.getUserId())); + } + + // 在提交事务中锁定申请人,避免并发请求同时通过检查并开启多个流程。 + private void lockApplicant() { + Sql sql = Sqls.create("SELECT id FROM sys_user WHERE id=@userId FOR UPDATE"); + sql.setParam("userId", SecurityUtil.getUserId()); + sql.setCallback(Sqls.callback.records()); + dao.execute(sql); + } + + // 页面提示与提交接口共用实时校验;只放行本人退回或撤回后仍待处理的申请节点。 + private String getApplyBlockMessage(View_user user, String id, Long taskId) { + if (user == null) { + return "无法获取当前用户信息"; + } + if (user.getMember() != null && user.getMember() != 0) { + return "您已是工会会员,无需重复提交入会申请"; + } + if (StrUtil.isNotBlank(id)) { + MemberApplyRecord record = dao.fetch(MemberApplyRecord.class, id); + if (record == null || !SecurityUtil.getUserId().equals(record.getUserId())) { + return "申请记录不存在或不属于当前用户"; + } + } + Long excludedInstanceId = -1L; + if (taskId != null) { + ProcessTask task = dao.fetch(ProcessTask.class, taskId); + ProcessInstance instance = task == null ? null : dao.fetch(ProcessInstance.class, task.getProcessInstanceId()); + if (StrUtil.isBlank(id) || task == null || instance == null + || !"startTask".equals(task.getTaskName()) + || !ProcessTaskStateEnum.DOING.getCode().equals(task.getTaskState()) + || !ProcessInstanceStateEnum.DOING.getCode().equals(instance.getState()) + || !id.equals(instance.getBusinessNo())) { + return "申请任务不存在或已处理,请勿重复提交"; + } + excludedInstanceId = instance.getId(); + } + // 检查全部申请,避免较新的草稿遮蔽仍在审批中的旧申请。 + Sql sql = Sqls.create(""" + SELECT COUNT(*) + FROM member_apply_record r + INNER JOIN wf_process_instance p ON p.businessNo = r.id + WHERE r.userId = @userId AND p.state IN (@doing, @pending) + AND p.id <> @excludedInstanceId + """); + sql.setParam("userId", SecurityUtil.getUserId()); + sql.setParam("doing", ProcessInstanceStateEnum.DOING.getCode()); + sql.setParam("pending", ProcessInstanceStateEnum.PENDING.getCode()); + sql.setParam("excludedInstanceId", excludedInstanceId); + sql.setCallback(Sqls.callback.integer()); + dao.execute(sql); + if (sql.getInt() > 0) { + return "您已有入会申请正在处理中,请勿重复提交"; + } + if (taskId == null && StrUtil.isNotBlank(id) + && dao.count(ProcessInstance.class, Cnd.where("businessNo", "=", id)) > 0) { + return "该申请已提交,请勿重复提交"; + } + return null; } } diff --git a/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/controller/PendingConfirmUserController.java b/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/controller/PendingConfirmUserController.java index 9cd8aa0..0d4a023 100644 --- a/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/controller/PendingConfirmUserController.java +++ b/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/controller/PendingConfirmUserController.java @@ -2,6 +2,7 @@ package com.budwk.app.zhgh.staffmanage.sourcechange.controller; import cn.dev33.satoken.annotation.SaCheckPermission; import com.budwk.app.base.result.Result; +import com.budwk.app.base.exception.BaseException; import com.budwk.app.base.annotation.RepeatSubmit; import com.budwk.app.base.annotation.SLog; import com.budwk.app.zhgh.staffmanage.member.models.MemberChangeRecord; @@ -13,7 +14,10 @@ import io.swagger.annotations.ApiOperation; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.AdaptBy; import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.upload.TempFile; +import org.nutz.mvc.upload.UploadAdaptor; import javax.servlet.http.HttpServletResponse; @@ -66,6 +70,27 @@ public class PendingConfirmUserController { pendingConfirmUserService.exportExcel(pageForm, response); } + /** + * 导入人员类型和人员属性变更。 + * + * @param file xls 或 xlsx 文件;表格中的“工号”定位人员,“编码”匹配人员属性字典配置 + * @return JSON 结果;成功时 msg 包含实际更新人数 + */ + @At + @Ok("json") + @RepeatSubmit + @SLog(tag = "待确认人员记录", msg = "导入人员类型和人员属性变更") + @ApiOperation("导入待确认人员变更") + @SaCheckPermission("staff.sourcechange.pending") + @AdaptBy(type = UploadAdaptor.class, args = {"ioc:fileUpload"}) + public Result importChange(TempFile file) { + if (file == null || file.getFile() == null || !file.getFile().isFile()) { + throw new BaseException("请选择需要导入的Excel文件"); + } + int changedCount = pendingConfirmUserService.importChange(file.getFile()); + return Result.success("已成功导入变更" + changedCount + "人"); + } + /** * 直接提交待确认人员变更,不创建会员变更申请及审批流程。 * diff --git a/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/mode/PendingConfirmUserImportExcelMode.java b/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/mode/PendingConfirmUserImportExcelMode.java new file mode 100644 index 0000000..ce0719d --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/mode/PendingConfirmUserImportExcelMode.java @@ -0,0 +1,46 @@ +package com.budwk.app.zhgh.staffmanage.sourcechange.mode; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +/** + * 待确认人员导入变更 Excel 行数据。 + * + * 模板沿用列表导出字段,导入业务只采纳工号和编码,其他字段仅用于人工核对。 + */ +@Data +public class PendingConfirmUserImportExcelMode { + + @Excel(name = "序号") + private String index; + + @Excel(name = "工号") + private String loginname; + + @Excel(name = "姓名") + private String username; + + @Excel(name = "性别") + private String sex; + + @Excel(name = "所属工会") + private String unionName; + + @Excel(name = "所属单位") + private String unitName; + + @Excel(name = "人员类型") + private String personType; + + @Excel(name = "人员属性") + private String userAttribute; + + @Excel(name = "在职状态") + private String userState; + + @Excel(name = "确认状态") + private String pendingConfirmStatusName; + + @Excel(name = "编码") + private String code; +} diff --git a/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/service/PendingConfirmUserService.java b/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/service/PendingConfirmUserService.java index 7874217..12060e2 100644 --- a/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/service/PendingConfirmUserService.java +++ b/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/service/PendingConfirmUserService.java @@ -8,6 +8,7 @@ import com.budwk.app.zhgh.staffmanage.sourcechange.param.PendingConfirmUserBatch import com.budwk.app.zhgh.staffmanage.sourcechange.param.PendingConfirmUserPageForm; import javax.servlet.http.HttpServletResponse; +import java.io.File; /** * 待确认人员记录业务服务。 @@ -30,6 +31,16 @@ public interface PendingConfirmUserService extends BaseService { */ void exportExcel(PendingConfirmUserPageForm pageForm, HttpServletResponse response); + /** + * 导入待确认人员变更。 + * Excel 必须包含“工号”和“编码”:工号定位系统人员,编码匹配人员属性字典的业务编码; + * 返回值为成功更新人员类型和人员属性的人员数量。 + * + * @param importFile 用户上传的 xls 或 xlsx 文件 + * @return 成功更新的人员数量 + */ + int importChange(File importFile); + /** * 直接提交待确认人员变更,不生成会员变更申请及流程数据。 * diff --git a/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/service/impl/PendingConfirmUserServiceImpl.java b/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/service/impl/PendingConfirmUserServiceImpl.java index fa7e0d6..49c786e 100644 --- a/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/service/impl/PendingConfirmUserServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/staffmanage/sourcechange/service/impl/PendingConfirmUserServiceImpl.java @@ -1,7 +1,9 @@ package com.budwk.app.zhgh.staffmanage.sourcechange.service.impl; import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.ExcelImportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; import cn.hutool.core.bean.BeanUtil; @@ -23,8 +25,10 @@ import com.budwk.app.zhgh.staffmanage.member.service.MemberCommonService; import com.budwk.app.zhgh.staffmanage.sourcechange.param.PendingConfirmUserBatchChangeParam; import com.budwk.app.zhgh.staffmanage.sourcechange.param.PendingConfirmUserPageForm; import com.budwk.app.zhgh.staffmanage.sourcechange.service.PendingConfirmUserService; +import com.budwk.app.zhgh.staffmanage.sourcechange.mode.PendingConfirmUserImportExcelMode; import org.apache.poi.ss.usermodel.Workbook; import org.nutz.dao.Cnd; +import org.nutz.dao.Chain; import org.nutz.dao.Dao; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; @@ -38,6 +42,10 @@ import org.nutz.lang.util.NutMap; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; +import java.io.File; +import java.util.HashMap; +import java.util.HashSet; +import java.util.IdentityHashMap; import java.util.LinkedHashSet; import java.util.List; import java.util.Map; @@ -51,6 +59,7 @@ public class PendingConfirmUserServiceImpl extends BaseServiceImpl imp private static final int STATUS_PENDING = 1; private static final int STATUS_CONFIRMED = 2; + private static final String USER_ATTRIBUTE_DICT_CODE = "USER_ATTRIBUTE"; /** 待确认人员只允许转为以下两个字典名称对应的编码。 */ private static final Set ALLOWED_PERSON_TYPE_NAMES = Set.of("离退休人员", "其他"); @@ -103,6 +112,8 @@ public class PendingConfirmUserServiceImpl extends BaseServiceImpl imp exportEntities.add(new ExcelExportEntity("人员属性", "userAttribute", 20)); exportEntities.add(new ExcelExportEntity("在职状态", "userState", 15)); exportEntities.add(new ExcelExportEntity("确认状态", "pendingConfirmStatusName", 15)); + // 编码仅作为导入填写列,导出时不设置行数据。 + exportEntities.add(new ExcelExportEntity("编码", "changeCode", 20)); ExportParams exportParams = new ExportParams(); exportParams.setType(ExcelType.XSSF); @@ -110,6 +121,147 @@ public class PendingConfirmUserServiceImpl extends BaseServiceImpl imp CommonDownloadUtil.download("待确认人员记录.xlsx", workbook, response); } + /** + * 根据 Excel 工号和人员属性业务编码更新人员类型、人员属性。 + * 所有行先统一校验,任一行异常时不执行更新;Excel 中的其他展示字段不参与变更。 + * + * @param importFile 包含“工号”和“编码”列的 xls 或 xlsx 文件 + * @return 实际更新的人员数量 + */ + @Override + @Aop(TransAop.READ_COMMITTED) + public int importChange(File importFile) { + if (importFile == null || !importFile.isFile()) { + throw new BaseException("请选择需要导入的Excel文件"); + } + + List importRows; + try { + ImportParams importParams = new ImportParams(); + importRows = ExcelImportUtil.importExcel(importFile, PendingConfirmUserImportExcelMode.class, importParams); + } catch (Exception e) { + throw new BaseException("Excel文件解析失败,请使用待确认人员列表导出的模板"); + } + if (importRows == null || importRows.isEmpty()) { + throw new BaseException("导入文件中没有人员数据"); + } + + // 导出的列表可能包含人工保留的空行;空工号行不参与人员查询、字典校验和更新。 + List validImportRows = new ArrayList<>(); + Map excelRowNumberByRow = new IdentityHashMap<>(); + for (int index = 0; index < importRows.size(); index++) { + PendingConfirmUserImportExcelMode row = importRows.get(index); + if (row == null || StrUtil.isBlank(row.getLoginname())) { + continue; + } + validImportRows.add(row); + excelRowNumberByRow.put(row, index + 2); + } + if (validImportRows.isEmpty()) { + throw new BaseException("导入文件中没有有效工号数据"); + } + + Map attributeDictByBusinessCode = buildAttributeDictByBusinessCode(); + Map userByLoginname = buildImportUserMap(validImportRows); + Set importedLoginnames = new HashSet<>(); + + // 全量校验必须在更新前完成,防止错误文件只修改其中一部分人员。 + for (PendingConfirmUserImportExcelMode row : validImportRows) { + int excelRowNumber = excelRowNumberByRow.get(row); + String loginname = StrUtil.trim(row.getLoginname()); + String changeCode = StrUtil.trim(row.getCode()); + if (StrUtil.isBlank(changeCode)) { + throw new BaseException("第" + excelRowNumber + "行编码不能为空"); + } + if (!importedLoginnames.add(loginname)) { + throw new BaseException("第" + excelRowNumber + "行工号重复:" + loginname); + } + if (!userByLoginname.containsKey(loginname)) { + throw new BaseException("第" + excelRowNumber + "行未查询到工号:" + loginname); + } + Sys_user importUser = userByLoginname.get(loginname); + if (!Integer.valueOf(STATUS_PENDING).equals(importUser.getPendingConfirmStatus())) { + throw new BaseException("第" + excelRowNumber + "行人员已不属于待确认状态:" + loginname); + } + Sys_dict attributeDict = attributeDictByBusinessCode.get(changeCode); + if (attributeDict == null) { + throw new BaseException("第" + excelRowNumber + "行编码未匹配到启用的人员属性:" + changeCode); + } + if (StrUtil.isBlank(attributeDict.getPersonType())) { + throw new BaseException("第" + excelRowNumber + "行编码未配置人员类型:" + changeCode); + } + if (StrUtil.isBlank(attributeDict.getCode())) { + throw new BaseException("第" + excelRowNumber + "行编码对应的人员属性字典值为空:" + changeCode); + } + } + + int changedCount = 0; + for (PendingConfirmUserImportExcelMode row : validImportRows) { + String loginname = StrUtil.trim(row.getLoginname()); + Sys_dict attributeDict = attributeDictByBusinessCode.get(StrUtil.trim(row.getCode())); + Sys_user user = userByLoginname.get(loginname); + Chain updateFields = Chain.make("personType", attributeDict.getPersonType()) + .add("userAttribute", attributeDict.getCode()) + .add("pendingConfirmStatus", STATUS_CONFIRMED); + int updated = dao().update(Sys_user.class, updateFields, + Cnd.where("id", "=", user.getId()) + .and("pendingConfirmStatus", "=", STATUS_PENDING)); + if (updated != 1) { + throw new BaseException("工号" + loginname + "的待确认状态已变化,请刷新列表后重新导出"); + } + changedCount += updated; + } + return changedCount; + } + + /** + * 构建人员属性业务编码映射,只接纳 USER_ATTRIBUTE 下启用且业务编码唯一的直属字典项。 + * + * @return key 为 userAttributeCode,value 为人员属性字典项 + */ + private Map buildAttributeDictByBusinessCode() { + List attributeDicts = sysDictService.getSubListByCode(USER_ATTRIBUTE_DICT_CODE); + Map result = new HashMap<>(); + for (Sys_dict attributeDict : attributeDicts) { + String businessCode = StrUtil.trim(attributeDict.getUserAttributeCode()); + if (StrUtil.isBlank(businessCode)) { + continue; + } + if (result.putIfAbsent(businessCode, attributeDict) != null) { + throw new BaseException("人员属性字典存在重复编码:" + businessCode); + } + } + return result; + } + + /** + * 批量查询导入文件涉及的人员,避免逐行访问数据库。 + * + * @param importRows Excel 解析后的数据行,仅使用工号字段 + * @return key 为工号,value 为未删除的系统人员 + */ + private Map buildImportUserMap(List importRows) { + LinkedHashSet loginnames = new LinkedHashSet<>(); + for (PendingConfirmUserImportExcelMode row : importRows) { + if (StrUtil.isNotBlank(row.getLoginname())) { + loginnames.add(StrUtil.trim(row.getLoginname())); + } + } + if (loginnames.isEmpty()) { + return new HashMap<>(); + } + // 历史人员的 delFlag 可能为空;与列表查询口径一致,将 0 和 NULL 都视为未删除。 + SqlExpressionGroup activeUserCondition = Cnd.exps("delFlag", "=", false) + .or("delFlag", "is", null); + List users = dao().query(Sys_user.class, + Cnd.where("loginname", "in", new ArrayList<>(loginnames)).and(activeUserCondition)); + Map result = new HashMap<>(); + for (Sys_user user : users) { + result.put(user.getLoginname(), user); + } + return result; + } + /** * 构建分页查询和导出共用的人员 SQL,确保筛选条件、确认状态及排序口径一致。 * diff --git a/src/main/resources/db/person_governance.sql b/src/main/resources/db/person_governance.sql new file mode 100644 index 0000000..3e0da14 --- /dev/null +++ b/src/main/resources/db/person_governance.sql @@ -0,0 +1,212 @@ +-- 人员数据治理模块初始化脚本(MySQL 8.0,UTF-8)。 +-- 人员变更直接复用现有 member_change_record、sys_user_history 及 WF 流程,本脚本不创建替代表。 +SET NAMES utf8mb4; + +SET @add_person_flag = IF( + (SELECT COUNT(*) FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'sys_user' AND COLUMN_NAME = 'flag') = 0, + 'ALTER TABLE sys_user ADD COLUMN flag int DEFAULT 0 COMMENT ''人员治理同步保护标识:1忽略同步,0或空正常同步''', + 'SELECT 1' +); +PREPARE add_person_flag_stmt FROM @add_person_flag; +EXECUTE add_person_flag_stmt; +DEALLOCATE PREPARE add_person_flag_stmt; + +CREATE TABLE IF NOT EXISTS person_api_config ( + id varchar(32) NOT NULL, + configName varchar(100), sourceType varchar(20), requestUrl varchar(500), requestMethod varchar(10), + timeoutSeconds int, sourceTable varchar(100), targetTable varchar(100), syncMode varchar(20), + identityField varchar(100), bodyType varchar(30), bodyContent text, + tokenRequestUrl varchar(500), tokenRequestMethod varchar(10), tokenTimeoutSeconds int, + tokenBodyType varchar(30), tokenBodyContent text, tokenValuePath varchar(200), tokenExpiresPath varchar(200), + tokenExpiryUnit varchar(20), tokenQueryResult text, dataQueryResult text, + responseCodePath varchar(200), responseSuccessValue varchar(100), responseMessagePath varchar(200), + responseDataPath varchar(200), responseTotalPath varchar(200), enabled tinyint(1), taskCron varchar(100), + matchMemberRules tinyint(1), lastSyncTime datetime, taskId varchar(32), remark varchar(500), + createdBy varchar(32), createdAt bigint, updatedBy varchar(32), updatedAt bigint, + delFlag tinyint(1), opBy varchar(128), opAt varchar(128), + PRIMARY KEY (id), UNIQUE KEY UK_PERSON_API_CONFIG_NAME (configName) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE IF NOT EXISTS person_api_field_mapping ( + id varchar(32) NOT NULL, configId varchar(32), sourceField varchar(100), sourceComment varchar(200), + targetField varchar(100), targetComment varchar(200), required tinyint(1), identityFlag tinyint(1), sort int, + PRIMARY KEY (id), UNIQUE KEY UK_PERSON_API_MAPPING_TARGET (configId, targetField) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE IF NOT EXISTS person_api_request_param ( + id varchar(32) NOT NULL, configId varchar(32), requestScope varchar(20), paramLocation varchar(20), + paramName varchar(100), paramType varchar(30), paramValue text, required tinyint(1), + description varchar(300), sensitiveFlag int, sort int, PRIMARY KEY (id) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE IF NOT EXISTS person_api_test_case ( + id varchar(32) NOT NULL, configId varchar(32), requestScope varchar(20), caseName varchar(100), + requestSnapshot text, responseStatus int, responseTime bigint, responseBody text, success tinyint(1), + executedAt datetime, createdBy varchar(32), createdAt bigint, updatedBy varchar(32), updatedAt bigint, + delFlag tinyint(1), opBy varchar(128), opAt varchar(128), PRIMARY KEY (id) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE IF NOT EXISTS person_sync_batch ( + id varchar(32) NOT NULL, configId varchar(32), batchNo varchar(50), triggerType varchar(20), + startedAt datetime, finishedAt datetime, status varchar(20), sourceCount int, successCount int, + newCount int, changeCount int, exceptionCount int, errorMessage text, rawFileReid varchar(32), + createdBy varchar(32), createdAt bigint, updatedBy varchar(32), updatedAt bigint, + delFlag tinyint(1), opBy varchar(128), opAt varchar(128), + PRIMARY KEY (id), UNIQUE KEY UK_PERSON_SYNC_BATCH_NO (batchNo) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE IF NOT EXISTS person_source_relation ( + id varchar(32) NOT NULL, configId varchar(32), sourcePersonKey varchar(150), userId varchar(32), + personNo varchar(120), lastSeenBatchId varchar(32), lastSeenTime datetime, presentFlag tinyint(1), + sourceDataHash varchar(64), createdBy varchar(32), createdAt bigint, updatedBy varchar(32), updatedAt bigint, + delFlag tinyint(1), opBy varchar(128), opAt varchar(128), + PRIMARY KEY (id), UNIQUE KEY UK_PERSON_SOURCE_KEY (configId, sourcePersonKey) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE IF NOT EXISTS person_member_match_config ( + id varchar(32) NOT NULL, configName varchar(100), apiConfigId varchar(32), copiedFromId varchar(32), + enabled tinyint(1), groupCount int, lastMatchCount int, lastExecuteTime datetime, + createdBy varchar(32), createdAt bigint, updatedBy varchar(32), updatedAt bigint, + delFlag tinyint(1), opBy varchar(128), opAt varchar(128), + PRIMARY KEY (id), UNIQUE KEY UK_PERSON_MEMBER_API_CONFIG (apiConfigId) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE IF NOT EXISTS person_member_match_group ( + id varchar(32) NOT NULL, matchConfigId varchar(32), parentGroupId varchar(32), + ruleType varchar(30) DEFAULT 'UNION_MEMBER', groupNo int, joinLogic varchar(3), sort int, + PRIMARY KEY (id) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE IF NOT EXISTS person_member_match_condition ( + id varchar(32) NOT NULL, groupId varchar(32), dictCode varchar(50), dictItemId varchar(32), + dictItemCode varchar(50), dictItemName varchar(100), mappedField varchar(100), operator varchar(30), + matchValue varchar(500), joinLogic varchar(3), sort int, PRIMARY KEY (id) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE IF NOT EXISTS person_exception ( + id varchar(32) NOT NULL, configId varchar(32), relationId varchar(32), discoverBatchId varchar(32), + userId varchar(32), personNo varchar(120), personName varchar(100), unitId varchar(32), unitName varchar(150), + exceptionType varchar(30), exceptionReason varchar(500), lastSyncTime datetime, discoverTime datetime, + status varchar(30), handleResult varchar(30), handleOpinion varchar(500), handlerId varchar(32), + handlerName varchar(100), handleTime datetime, rawFileReid varchar(32), + createdBy varchar(32), createdAt bigint, updatedBy varchar(32), updatedAt bigint, + delFlag tinyint(1), opBy varchar(128), opAt varchar(128), PRIMARY KEY (id) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- PC 端独立应用菜单。完整页面跳转由布局按 /platform/personGovernance/ 路径处理。 +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, + permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, + platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService) +SELECT '76725022b0cc11f196a000ff8d9db2e0', '', LPAD(IFNULL(MAX(CAST(path AS UNSIGNED)), 0) + 1, 4, '0'), + '人员数据治理', 'PersonGovernance', 'menu', '', '', 'ti-id-badge', 1, 0, + 'data.person.governance', '人员数据接入、会员匹配、人员变更及异常处理', 694, 1, + '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, + 'PC', NULL, NULL, 'r', 0, 0 +FROM sys_menu WHERE (parentId = '' OR parentId IS NULL) AND CHAR_LENGTH(path) = 4 +HAVING NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance') m); + +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, + permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, + platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService) +SELECT '7673d831b0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0001'), 'API配置', 'ApiConfig', 'menu', + '/platform/personGovernance/apiConfig', '', '', 1, 0, 'data.person.governance.api', NULL, 1, 0, + '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, NULL, 'a', 0, 0 +FROM sys_menu p WHERE p.permission = 'data.person.governance' +AND NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.api') m); + +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, + permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, + platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService) +SELECT '76749371b0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0002'), '会员匹配', 'MemberMatch', 'menu', + '/platform/personGovernance/memberMatch', '', '', 1, 0, 'data.person.governance.member', NULL, 2, 0, + '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, NULL, 'h', 0, 0 +FROM sys_menu p WHERE p.permission = 'data.person.governance' +AND NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.member') m); + +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, + permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, + platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService) +SELECT '7674b630b0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0003'), '人员变更', 'PersonChange', 'menu', + '/platform/personGovernance/personChange', '', '', 1, 0, 'data.person.governance.change', NULL, 3, 0, + '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, NULL, 'r', 0, 0 +FROM sys_menu p WHERE p.permission = 'data.person.governance' +AND NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.change') m); + +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, + permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, + platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService) +SELECT '7674d34eb0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0004'), '人员异常', 'PersonException', 'menu', + '/platform/personGovernance/personException', '', '', 1, 0, 'data.person.governance.exception', NULL, 4, 0, + '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, NULL, 'r', 0, 0 +FROM sys_menu p WHERE p.permission = 'data.person.governance' +AND NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.exception') m); + +-- 页面按钮权限;type=data 不在左侧菜单展示。 +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, showit, disabled, permission, location, + hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, + initialPinyinName, isRecommendApp, isRecommendService) +SELECT '7674fb04b0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0001'), '保存API配置', 'Edit', 'data', + 0, 0, 'data.person.governance.api.edit', 1, 0, '', UNIX_TIMESTAMP(NOW()) * 1000, '', + UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, 'b', 0, 0 FROM sys_menu p +WHERE p.permission = 'data.person.governance.api' AND NOT EXISTS + (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.api.edit') m); + +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, showit, disabled, permission, location, + hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, + initialPinyinName, isRecommendApp, isRecommendService) +SELECT '76750400b0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0002'), '删除API配置', 'Delete', 'data', + 0, 0, 'data.person.governance.api.delete', 2, 0, '', UNIX_TIMESTAMP(NOW()) * 1000, '', + UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, 's', 0, 0 FROM sys_menu p +WHERE p.permission = 'data.person.governance.api' AND NOT EXISTS + (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.api.delete') m); + +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, showit, disabled, permission, location, + hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, + initialPinyinName, isRecommendApp, isRecommendService) +SELECT '76750e42b0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0003'), '测试及同步', 'Test', 'data', + 0, 0, 'data.person.governance.api.test', 3, 0, '', UNIX_TIMESTAMP(NOW()) * 1000, '', + UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, 'c', 0, 0 FROM sys_menu p +WHERE p.permission = 'data.person.governance.api' AND NOT EXISTS + (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.api.test') m); + +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, showit, disabled, permission, location, + hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, + initialPinyinName, isRecommendApp, isRecommendService) +SELECT '767518e8b0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0001'), '保存会员匹配', 'Edit', 'data', + 0, 0, 'data.person.governance.member.edit', 1, 0, '', UNIX_TIMESTAMP(NOW()) * 1000, '', + UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, 'b', 0, 0 FROM sys_menu p +WHERE p.permission = 'data.person.governance.member' AND NOT EXISTS + (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.member.edit') m); + +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, showit, disabled, permission, location, + hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, + initialPinyinName, isRecommendApp, isRecommendService) +SELECT '767523deb0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0002'), '删除会员匹配', 'Delete', 'data', + 0, 0, 'data.person.governance.member.delete', 2, 0, '', UNIX_TIMESTAMP(NOW()) * 1000, '', + UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, 's', 0, 0 FROM sys_menu p +WHERE p.permission = 'data.person.governance.member' AND NOT EXISTS + (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.member.delete') m); + +INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, showit, disabled, permission, location, + hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, + initialPinyinName, isRecommendApp, isRecommendService) +SELECT '76752eacb0cc11f196a000ff8d9db2e0', p.id, CONCAT(p.path, '0001'), '处理人员异常', 'Handle', 'data', + 0, 0, 'data.person.governance.exception.handle', 1, 0, '', UNIX_TIMESTAMP(NOW()) * 1000, '', + UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, 'c', 0, 0 FROM sys_menu p +WHERE p.permission = 'data.person.governance.exception' AND NOT EXISTS + (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'data.person.governance.exception.handle') m); + +-- 给系统管理员默认授权,其他角色可在角色管理中按需分配。 +INSERT INTO sys_role_menu (roleId, menuId) +SELECT r.id, m.id +FROM sys_role r +JOIN sys_menu m ON m.permission IN ( + 'data.person.governance', 'data.person.governance.api', 'data.person.governance.member', + 'data.person.governance.api.edit', 'data.person.governance.api.delete', 'data.person.governance.api.test', + 'data.person.governance.member.edit', 'data.person.governance.member.delete', + 'data.person.governance.change', 'data.person.governance.exception', + 'data.person.governance.exception.handle') +LEFT JOIN sys_role_menu rm ON rm.roleId = r.id AND rm.menuId = m.id +WHERE r.code = 'SYSADMIN' + AND rm.roleId IS NULL; diff --git a/src/main/resources/db/sys_club_add_thumbnail.sql b/src/main/resources/db/sys_club_add_thumbnail.sql new file mode 100644 index 0000000..a62f9ed --- /dev/null +++ b/src/main/resources/db/sys_club_add_thumbnail.sql @@ -0,0 +1,19 @@ +-- 社团缩略图保存系统文件下载地址;保留可空以兼容未上传图片的历史社团。 +-- 字段存在时跳过,避免重复执行迁移时报错。 +SET @club_thumbnail_column_count = ( + SELECT COUNT(*) + FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = DATABASE() + AND TABLE_NAME = 'sys_club' + AND COLUMN_NAME = 'thumbnail' +); + +SET @club_thumbnail_ddl = IF( + @club_thumbnail_column_count = 0, + 'ALTER TABLE sys_club ADD COLUMN thumbnail VARCHAR(1000) NULL COMMENT ''社团缩略图'' AFTER clubName', + 'SELECT 1' +); + +PREPARE club_thumbnail_stmt FROM @club_thumbnail_ddl; +EXECUTE club_thumbnail_stmt; +DEALLOCATE PREPARE club_thumbnail_stmt; diff --git a/src/main/resources/db/union_reimburse_add_club_activity_dict.sql b/src/main/resources/db/union_reimburse_add_club_activity_dict.sql new file mode 100644 index 0000000..f488944 --- /dev/null +++ b/src/main/resources/db/union_reimburse_add_club_activity_dict.sql @@ -0,0 +1,38 @@ +-- 社团活动属于报销项目的正式字典配置,两端沿用现有字典接口读取。 +-- 仅补充缺失记录;已有记录(包括已禁用记录)不覆盖,不在查询接口中添加兜底项。 +INSERT INTO sys_dict ( + id, parentId, path, name, remark, code, disabled, location, hasChildren, + createdBy, createdAt, updatedBy, updatedAt, delFlag +) +SELECT + REPLACE(UUID(), '-', ''), + parent.id, + CONCAT(parent.path, LPAD(IFNULL(( + SELECT MAX(CAST(RIGHT(child.path, 4) AS UNSIGNED)) + FROM sys_dict child + WHERE child.path LIKE CONCAT(parent.path, '____') + ), 0) + 1, 4, '0')), + '社团活动', + '', + 'UNION_REIMBURSE_PROJECT_5', + 0, + IFNULL((SELECT MAX(child.location) FROM sys_dict child WHERE child.parentId = parent.id), 0) + 1, + 0, + '', UNIX_TIMESTAMP(NOW()) * 1000, + '', UNIX_TIMESTAMP(NOW()) * 1000, + 0 +FROM sys_dict parent +WHERE parent.code = 'UNION_REIMBURSE_PROJECT' + AND NOT EXISTS ( + SELECT 1 + FROM (SELECT code FROM sys_dict WHERE code = 'UNION_REIMBURSE_PROJECT_5') existing_item + ); + +UPDATE sys_dict parent +SET parent.hasChildren = 1 +WHERE parent.code = 'UNION_REIMBURSE_PROJECT' + AND EXISTS ( + SELECT 1 + FROM (SELECT parentId FROM sys_dict WHERE code = 'UNION_REIMBURSE_PROJECT_5') club_activity + WHERE club_activity.parentId = parent.id + ); diff --git a/src/main/resources/logback.xml b/src/main/resources/logback.xml index 87e2ef2..53662f2 100644 --- a/src/main/resources/logback.xml +++ b/src/main/resources/logback.xml @@ -54,86 +54,7 @@ - - - - - diff --git a/src/main/resources/static/assets/mobile/img/club/club-hero-v5.png b/src/main/resources/static/assets/mobile/img/club/club-hero-v5.png new file mode 100644 index 0000000000000000000000000000000000000000..4a4cd69fa66ae67b22ffb345a72a8b4f5bf0f9a4 GIT binary patch literal 1843711 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
tmcZ&q$Z(m>U8FMPUaM@8Q1d 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

iFLErXwKNBVD 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

M8GJ@252?x7~cQ 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»V9d+_<)`^mDT6`p!&4ciImB*1WhmoNMF~ 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 sl!DO`C?kT`%8 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

1I|@790z-NM_iv?t&B zzPfqX_V(-6gFND_5``JFvZeO%}*QYN%q?^AjbD(|p z`1!`zh+sKw=C;2(VC~6Rbin*vI1;Q-&WZpgo;Cd9b$Xa)umQ`_Tx2LQr@Y|tm)e{A z_~Ge_1LG#1Ddvs!9YM5>85r{Vh}Z}2-+%g>H-0*K;MAzwsh_P4rNva|T>oLjqyxK- z;PD-Y#210XrQd^EETCcYlHu44uK|r%YekfZN%2U}awe7g+?!J$d-;`TD&Fb(^oQoR z9_-KF{mi?G37ZRV%%8jLyV8TV=RSM)+SNn%w*PxG>E)l29$Y&#Uj#*7OI^Xm22+Cq zcE*A>RIIRye%e-wuxKLK8nE7+T*GA6R|p&W67+Wv z@1+j8ZfGx%Ayg%?>$E!X|s3Lm6xs< zZyA!y#z*xh@J_rQ9h76HtSB=hU!Tk~4E(DeKdh&!3!UetZrSR-zrJ5P;pmJ_3x3Uh zbIz;LQd+nYU<>!N!S~5ld3vuZ>0#y7C!e|f=?CBMJTYv@)6ah&+P~ay=`I#)D4h-4 zbr7Bu);>A#N9Mn^2loBI`(cyf_3!CL1es2}ue$mq^7 zbYdh{5&hyoXAZrEz?-UP(a!`A@aVxZP8Z|J!SchzCb)AnLUzuj|0GoS^H6{ur3?b! zrA2hJ9JTUbg;<kR-JD&KHolW1eJip=#COk<7&#OvVU!3%FNP%qbd2R#_`7N<5*^Vvy>URqg$$F! z+X}cpV3=mITVoy34u8l4Lfg$D+9sSVE}nNr7w^tVB2%ZL&>Z!eP8nxC+>307nOoSsa|OC}&u_=oN{^kRE;?MF~L3D_j{y7_dklVAAM%;~(t| z$Kd)m3aAutzhaP6*{x}0=3uufP!iI_s6&{HI6}Vqma%H?4SsOITSQwPY zxEQWq4cI9Rh;f(xfKgM1iIWooB``8$nJP2EAO`wsxLw2TXZwxry#KRl88wY8g^w1U z23?YUBqiCuR_3O_(y2@^hRU^i(*#?8G9BTw4`ppuRWj+*7&T2MkA6>X%5tW^Y-}fD zMOvzOxscrogJ)}v`};kue08B~U)qU50pJGNK904ylpe8A6$1pD$<*?VT2Wn?*mWf` zvC3Uo#pZv=WUApViZF>1!H(GtwW-cLLvSb8F4&xfbE|>t!Fp2{ot#mXg(e$7OjIHl z-9`{Gpb9eK7BnIsGcrq8QF|IGoKI?8JbY5M3rEE}^Yy9P#2?Z-Ly_r%}=Zp$jZi zSQ!JvV(Wki~>#%QC^rnZw&AL_Bn=K9a1hqwp?jMTQGaTpV zsJ0xm-_AFQ9gvlEi^AMMS$RO+ zm1;;Zz*)wun8oYj2WtkbJ<{I)!_n$-$LGwOcW_!vzSd=exn5SpL+vdgAVWg z7F_!Myl?r&4iHRBS!N0iHFm^IOtqB`_!!sqgogK zy?FaWjd!eHeD>UE)2wWRKli|MAkvzNa73u09rC z4F!W&uFS}I`Pbc#r}h>VwAFShZRSB+Kl``u$dMxh zzj*ig%a5~`_UU;a?r3i1p%`EfVc{JZWn?B(W-ty`aw#Vh)K7y4U0vWbsXRSFi~f3f zsNrn&+{3?2e(#^(PWEbtEP3sjkK^vXfA+P{?|r-Ety5zUpWQM2--{pIU;Xqmzs9t` z@l4Ss_;)Oo5IZPO4U=+oW-*70G9!N&U|}`al_yDlm0IJ7h)Y4CG-cUf7IDs%m|{f6 zh}qvm%1TY13Y~R(QePE79u5L)4cm=zC`oud|I&YaNidj^GMw*uw0C>;CzhG#ld*}U zIAfclEVZ{pZ4z;p{4&c@hQHqHyA^}XmLVR1o6!D^aHX8rdopl$)iF@?iV_v@fL9ug z9MQRAr(u;#cgaoudcF)eL=0154+{X+H2LuL!8W(?r$0lXALH(vKQRXmA-e#6UKCQU zai_+J`anGxas#@8CE&3nN`4E8FEum(mm-(>U{57ZU=|r4YJD@VXZudidvf!RR6S=D z!CQ6IM!$YRN%~B|OxEi6flSfzl;P9772E7wRKm2#tto*3>+PW#Q$TJy5Whuz{^#}| zhaXDm&1et)_w%V&Uwi+7?$`JJrXLLFr&FI=xs{)gTN2`o9hKjde(>wB-z}?L`^L~g zQy*t6UDYsIWXO>_%#o{t;0Q-*t+>StMnJ`zVcRP|Ix_&LL1&hUWY1J(L*x%zS~YcY z!9d$#f$3*u<9RNILt`3Z;Bpt=O-nfeXxcfjMJ$br(ezh&O-8w@94uGSth6`=3Rx}+ zOw=}I2p(pyO0%HBo0GjX4t;XP=fx8XRhdC77;xf76{ra+?`Y>oDm4xS4uTC3kGpqCFV{Fc0s9zV)!^C>68oTz6isSJu_iPi3sO*gsE!6 zT4QOQF@Tm#965Sa2GMp&RW(DvV=jTt0pn2hY_$qUJV>&L<#PNvJ7SBO=;W?e3 zYl3oP3cyqxLc$idP~z$kAw3K0Q0)VYVvn0Yxx(1qnT*1E(4#7}3VwSMx|lJhF07?!ElXz`**JTx!7$F(wKc5zkHQ00QJLz8$^X3hhD55cXOXw0lf5H1df zu}$mhkuz{K*QDEUo6FN6!#_mM_k#?;#XD^m7m3FPwWY^1Vudq0s4{A-0zo2D-b8|s z!+^%XYR(LJILa#=l>*Gsb{yue418IO2tbL{_l%w%8C?=kSX}rvL7@r6u}wY+OA)oB zB3|M%n~j>Ty<01Jdkl*u4?kMdRNYeSZLM|N>hd5+aS6muu@a?|UP+dWD`q+M7l^-H z0De+gOf0aJTb#6x!AcBlOpA&hog8Ub8iZKBsU&u}v0RH2qw~<Lv!g>ygI!Yf$Gf-{|x5bpy;|tIlZG^1`h3XMk zzy(+M%XO%8i}qw(nqtQ;k%2+myYGXHINFh;7HtB@cV&`Lmey>6K)bQR-E1-%Cmj1_{@ut=|G4tdsc-LocKDBFtN(dJ zJN4RuMFYe0#VMOxNkb7q@HMb*sB2A;PQtxeVeg0Vs)0(xQs?Y!=-XDmEe}Aq4aW@Z`11`r+Y9Ti)xX-{vGZ>KD)xTQu_J5W z`Q~2e*=3h+ZvAF(8GKa*R1r{22s`3_?{u3J8EpA1sI@D#2<*sO;A=}o*fP81YFyVf z;9d}k>cJ}llAH~6y{UJ+)0_7%y&O7O|5f+hj-=08&pc64hFTxOph}r=2ynGT#}P%R z*t=J{vijB5(;xh=Xl_N*YY(q1Zwj{7SR1!}G`zAygL21)rr|{ux8@%_ba_MbjhZnp zfBMYA&(FMRpN+N8<@R%jhQ73O*>_(R=PS5XEgu(eI~Ob)HDbincPq|~ePLJmWqo@} zd;Rs358s-T9@Eaw{w!nUp``~0Weymb?rpwy@b4q5-@0!=qxIZ{*Fz^y27{m9`q(>e zZn|z@rMkwt&{H?)wZT8{K~kDfK@Mx?|Hsk!$2C>&fBc-Y!`fiz7)Zleov{O=f{jVj z(rQec8zBC=C4$wNn?KOa{B36DnL8Nh$T18>{F$JcsRLzcmW@dZ0`*=o9a8>|GA%Q| zW@UB1uiZcHy^s5-47PJVpZAZ~>-my6;PF)>5OXlJwjk$GU?A9u_mgi7sv;eRgVRq> z2G)=xJi%o6Bhn7Oe4u;ZyQd%h**5rv)&I2je01Qp)l;!;FC@)XRaGSioCMgXQ0#6w zssTKO>!}U;K-`P=tq4tQ&gz(TR16*)%5sB(pMEUFDzI{_7z7I|dYcM&8fq}9zyq(Cgug`2&E${R%6i1R^GgCEdB zq$i)sUyddZhcjZtvbh5}6AGOr<9Qym3sM_$Y&2GT|jaG6`s0v((XKFA{LZK!OpASLR6r zBYE~_4ktqegnU)8g)+L1Wuo}XyV$*g_AaKI(Y9f3iN#qME0yMN3khoBKt}$-Gg%k! z{Ji8=@IY&wZ%TQI?eePsta@SJ-4DJN4mg=C1)n9Iv7mFE5rzq#N4#K_M=byG*a*`9}yyU$lhgHx@KV=(NKaw&kh_ljQz}X$~KzLfF(PczNL#XV_qedn?R8xq{z85v?F^;%c+Og zAV`KA23Dd5Q9&$?)LO$<3EP-b@0^&}_yHDe)L_oS1$V))5tPUbG~mI$a~$H+@tL`4 z)2ImqvkmFUYlqPR`Ib&>^hq(cvq7e7mVR2hVt^r;38uF$PY-|q>mSEJ=}Vg^k;z*j zP#I1JmxUn|HsP{HO``6_eh@W)nACCq8vw99XeL5|CTu?hgG2(BvBZ(7T_+Tx@0f=g zH(4nqtQrApO#+D{d{ZI}6PapOCV>G;-J>iK8N{dokf9;4YPHvF8<93u(|tO}X0ug` zVQ5B-0w(|#hk1b80j8>W62`1ve6&(BY?wp=W`m$Dh=ec@Bdxh5gd)9)B}x^Wdy2WB z9*a#cMyGCe_z39N^jo}eWe|A$Z6b-rPGUC(oly|XM?>T)P2zh&HX8m}9t&jFvSp4> z4yiNtOm?|ghDb0E_SK9d4w@96)uL>IIvnM?n^b9)L91*Xt@31nW~}gHT|*=^H^p-) za($6pLTF%iB;D9R2E!Dn);ZqeMkBQ;u!~kq%P@C{;a8Fhu;mjDGy~#NrZciPO>CP2 z){A2&paDsBnCM>CAFHtK)yJ(G!@?VEprM~ zE)rPs_GrX68S#0VXhzj`L<%JU&Sn|*Z{XV`+N6-x$HI}Pkkog2{JFSal38p%F=E3q z0^fj_m?ocAobGWV=}NkxGp~INf2^=rOeHNI1+Y3TiIdmyX)f3qteT32Ml|H4czLIO!4kLipN5N=b_Fk}!d8H=ePs z{6F#Qf4{oo%01!R-hZxl-MUTt?C1L4?u+fk_lA{M2)nS!Fsq^1tUgw#MpYnyZSDw0 zc_JWQVI7WNBNmMmj|?LSp8cs zaL#ihvI7ZIkZk~a)Y2dS9DnlWu#+8^TVEBd9Z(N=l#crf4l7NA0=O5+;ibV--W)}SC%!_Lh|=P zZmdyk={XlLfV!we4UUc$j()WTvtK1`{$`>Yhb`>BLmQtfJ7|^jKRHfMCp{SC6Vk3( zFgDre-~Z$K+~aTl*uCSoUG=ZOnmPMMPNi-Fv`yD$HvKT~X(`P9(Rak!i_mU+kRh3# zA(JGK2Lo2g6LQ>PJ(W%}VEyV|$S22ukZY4+>0;vzV+|1PrY@ze8Y*qKU&cVV-G8D7z^|CjC5K7>6s;p)i4l7^A<1L zQ@I`;Hpy!x(i9Dt0R+iqdIkF)FOi~=W>+A6p&@6aYst*IM}UXtrY4oeiI^TC%?0u(++Z-14Dk~3 z>pc!saTc`Dkj1INt1v3%0`NJ}LJRtyU2;C{5F~xqrz5NyQNYAAf_qX|->muYCT<$e zz*#Bhs~n;L%mZpSSxVVG)d0=O2}FgU)5!D#SW$(!za1yNqc;-Rt}mXFCx4$X`)IRo zQe^fv<@gzSc?pdl&$>PT2nX`IWZkEnoD0(!0+m#33e*fu-yVlUCn^SJh zEA8reb>Ym?F9S1eV_OuYEEo8rkpUqj~%=~2g!R1G{hNTG^>n4xC zJ!W7>Uxr{*s}d+-?F0YEpRc&PY|erww#G_*h<0g6+C-#m>hJB29}O=*EEOXPE?;z&$>kUIr1pC?PYtrpo( znNqtaMjj6FDkM`2LY7Bc>o1Qntv#B+gVLN}UVMphHNmGV@oE7-J3HG?${Wa_38jjJ zh3ccwj1^OJ^*4%2NY6_K5+t~DK9DZb$h77DsCYj2m166`2XyUOB44TB# z!)C+YTyZ@LV~iN0`W;vH_1FS0ep4L*6=yX<8m&TRA&zuEG_K`Id{qKsm6CX^(k*zp zB`G%9_2WtrV_3cx`!8~NMIo&Vq#^keYQ&(}rMXGVm(Rp9zzPsaQx+JV;o2ZNyTVwj z%*;XXqR|p2P?`*sNZ9hy1dD#+X)-p&?0{ZchAhuao0=5`%Dr-+$E6tH@!b*VSR!F@ zLI~U-iAsTM8>wX~c!oUC-a^3w@LPPXkWDj{>l6C*C>xuaWLyv{L{NE)Tm!a%V1#61 z0UHqc;!AuKqlb)uP;;g|sK{znC{>{Cpl){)kU@8$7XpY87D5VxA(ufdg&qt2Qczz> zhfYK3!J)6ASPK#I897#NB3;Yh+`!O3@^Twksk1XvO4>PL9m5`pG4Axv1r2x-jJ7s8r~1SZ8Vnq^TRR)!ulBe5L!cSSvhk zV0=XvuE0GaEt8|$iwqbup%(JZX-+6|%X}Hk&vT&E7O@yhc*@_{>lMkxs1V%%1i>f2 z+W^`Cv}hP@iy6dK1=B$h0E@9%U~?rFMX1(1c+_@y3*hqHM3e=U2!WSzhqV0UN$OZC z2Jx^`sW-b_CrLCSpV9*j(xo4oj;AqhI0>69j`lWAo|i( zt8Gg1==m)TGJB1h=s1mlV0bZXoiJVKu?lgBB<2%!5Mg(Qkmnl&=6jc4MkVQZBE=Sc zl@SfW;qn(jT4g=t&qPigut1TB*dpm6irb5z!j12dz>PDf6fbRDd)$m5gXbB-l=UD&+SfHe>#50Zx26T@n!du4?leUmv=Y5RXOdI zCnwx)dT$_CYM}QHNnH{<`^K@$pD+FG>eb6bHh1S(y-979e1}1l zCq|s2LA<=EA&ZV2tu-8MnSj(L$$L|TZKh(bdF8yUpDr{v?(53IH&a*3X2;*~Ul{iJ znb8~fw!rbn96~4nNP!MESk~a>b0}d^NwXA#cdMv4fKLD_4MgnSp~v#Az+3h5_Ml|C zFS>BEcTA6 z*YXzC^kgIu!ZFDT2=169ak27Ehi>0tok(#TJG-F3#~yF&-*5AYRqs5${NcN`V~es< zQ;#Mgm?kA1($`fDJ9nn*f}q=;E|ZAFR%DvEjn1#SKD|||>V5N*2e&@H{Kkz3 zy`y_?oHtK6b*%76?!{#=k;>1e%Zinq{IM?7R^D9BmB6%(u;{`Rf{-0SzNWS)ocQG@ z585~W6&kVb3){(Cs#jM&JooEgx%E%~d3(j5@5~rIwf^n@KE30w6Khs{Up4Z@o0sMn zz4pn`ix+CNS8C3xFX;vzYygkW?%=8&(=5#wJd0|MM@k@@2Fp=g8=_&;#)qT%ur=uM&V$+GadNN<4* z+U;%aYd+dkP1vj`{A?o1RvI!B#V`tL2rq&(06bHXAHGymu>I*D!x!Fq;r6_i1U&^@ zPZL-w(7#f0#O=~}?hH!Wgf+Pin+qvyGSj)~N)?F%MV`}MD9SJ@fQ01Sv~Ka(vE7Tm zBl40j4o^NJ8K0M5=8;$;d?t(4h2WSqZ_Ckv#lt^a^TTKEPyOG=ZALNlV3XdQw=U!T zm-Vw>IR3>mgRlSJ{>bH-7lwTpA2At9iX4PGIOg%5p)=>7`Sikr)N=-YYs=2$a%&13o#~`*jxTbY(YGcC4`No5T8oWMVba8&awruu;q;1lcqLE z35BxMoY53-R(hl~bxvG>_#)&;QiMw+05&U0Y9?_AniT!7LVpz1++cyn5Ol2*e*rLC zqn@8IQ-Nn3=NsZdNR~;`8A@5sn)|-6MoS0C6R$w7a<@_7b^VUx*OGaQ)%AoD&@Y&f(W^=3>LyFT>ur7b}g!HmG zzRK@v?K4F=HG!(CR-eO`v^GiU&*d%1HRBY7nu%5!DQb6BtGJhdqYJ@$XkY9A-8q1n z$7<3HKbi-dQ8Vw!g^k*=s7@PIc!@ZuB4*4^XeZjo)DR%ssof}9V#ET8m7gqxtJdle zl?mCD%Z{uYK`=BMj1sb9j*c)Ic1>@LBjVun0CfnwKODdq)!YK1z(bnxxte{G<*972 zZ#~^h$sZ;XVox@_mf39kaNcjhojwgbm*8GZ%lFc-@#isQ+<|_ zaNQ1uj5CBdkvtP$0m>H6Et7uU5G zV`N=zAKZ?uE{40P^LvYtjzt4cBzV1P+X8Za79{KxVZ`f3d6T9{_5?ApvsrwYA&&8S z%kjx`?BK?>AFuv!N%iEfKfeCk$u;*?S62MBWx)F>KvTm~I}G;~HAK!s$LJzuJ`}TB zDie4?j6yKG%(6r=B?Rnv^)35&5cIEF0zg{2r z)WL7}b`;(QRB!cy|Ne5hVAaE)p1l0o$DcUw{;=cJgPyPFz25#(Nz3iN)tF^$@RyuZ zAo8%7vF=MNhZu?meu0Ff3gtCeJD6dQE~r|V^3LvAXa4LbRke53W^F(C-KHW;>D(+K zsJVyNTTi`uz3T9)e{c9HtN%R0WNuDFlrZ+oSVNK(opuQ_oD4pi&sIcCA+a_U5kZ8G zDxl(A+2LZ&Ee{2>U@sW>sZoe_(}YOd;^((L`^v;^kzf9tyLzd#E?9@$+ukkSV_l(u zG0K@GWAh~E)&b3Oi`H6ZYQ>r8{?M!&lrTR!&|;2`H(~^@bWEkXOH>z5{nNVmzrXzQ z%fe?pH8lep&&=Due$vJF4jo8a@9)jot9gIZq4OpAm2&O`Xo43?W`EL{;A=o8QV;dX zq588YYQFq~S@COIQ^~PwmlD;iW6tb=7_wThN-%gd zDoHTkBe)3=hb`CFvM##z7@CnJ9sR+&s;UvkyVAQuaI8Drm_o~y{3PO;F$bP|`_Hb= zzB+OD_?&HfZC}2daJ1vbsPMd$Df?qQvlP)J=@HY#YY9+mYPHNHPK0ef9xM^{hzn~@bk+aI#m-S8zV@7-Db;)9EGb}oPT_Vhuk zen0h8%aN9*G2d*I3{J=&S(q1*PELvhW~s4SsSYM1v#Wy_gvm&^b;E`%@gTm-*c`P! zOG!{Ac@X|xIM5A9mWo4<0gWaP1qjw{X^@-5!DreGKtu$;aQiw#t+PO3jxb1V4Jzc7 z@AOTdVyvrsSqgU&tEJEo0N;uI49xiQX=dKRroNHv8dq%yE5a0A@yMdnV~kx1xPz4t zvgi=fyj-Y;5W)$o1PRzgPzMKmyiw0hH{<#h%C~>m_~Dt`eSL48{9zspl#rw|C;{kX zv$acvs2z*gfqUyXPVJ!Bp%NS-CRj_loo)o}6`hzhzerKO3%`ewvXTMy)K1smd*;@t zaw>}I7QLs|J<}{$kR{!&ee@C=$}}YX7%ir zW@d=S&+qr{r=NH2aowKyMdghj=X}82IjZi~2k?<73rHYS42CQF4_9N+ef)Gw3pZ!- z@Fx~8Jijhyh*=Y3@9BAN*`L3kE<89iw*tv#3QV&k);L%Tl?!J^!NeGNLArd%yIvq! z_py%vsP|VdO!Y>s?(MwXh2%4_KVGm8Pn@Roq+wvH4I4QCS38nJTX564q-yVE36sDQ zE?7M3A3;4rb9n^ANU)P#HxqFAOd{s2J%I*%PU&#~ExQ<7Z$Fr-OA4afj3A!K^nmsS*dvndTBkP5p^)*e{z zcY?KNhz3*0B~}_(LXE=^5o^WR)}?qM_6zaeCK|#b@cvT>R8E+J)<0$@tf(QE)M?v` z2n#ACh|gd`gYteV!jy;*1dP{mpvaGdzS;q_vT%9;7O-6daHpe2@;X^nPx5Bu{bpk8 z)iom$MJ=#8+dlJ(Vtf^K~7~DwH=H7!9YQnxP8^K;v$u&oW2Ud`4JckAi-Et zS6-!MdXkkgy|PqM2ec#nYaPY4E7M)A#S%{wY!fc8qk!=PFThwwvr>c6m-kCy0x}JH z^^&f?J;9KPpNkm+uA_rtORNA{{mAK8XN2{GTTswl47c;yg|dnHiMG&n8i99L>{k zFmpzTi{%P6%Nps_LGXG<&7NQ#P8cXmSX*6ndell^EW)MW1wvl0J3EX(!wiSUg0Ccx zG28r>YaMI7bBXIc=ZIZLof=skAugoE_cALH=WfOK8@!_$B&TbS8!2 zxp-#Fog7$v62R9n^Q6rxLW%{g>;T+LI}PVrc`D#rG;H~mgo_{}4OzK9gO}^fs8at_ z=&%qbDaF#LEE+7Bg!26Ebi^?I+NJ%1l-zekZgz&MAgF+bv~%eP{gDfF#a;?=Q!af^8t|J6PD*kX6xSr#DPt#|o7qR82-RCq?SFR4*Q^ zSN5KUAV-ObmIEIgT7~-ATjLwZB`1zIGYs= zy8V#JQE1mMQRc3Y}k@T1*N@8%a)~7z?D6MTQ&c{?F(!ESoLCd)q!bmxL3Ti zePgHkePt)g!NdDbRh|Cn_Umt*pZVzKk5?U8ugtFfAZy>q)%(Y<3Euwv++U%dd!Yp* z?^Zj@p4>Nb#e$Rnyz%4Sy>s_x_Z}Pc+rx_wUm5eppQ|7L=i24CHEXUk&YAJtHw9lg z^tkZfPCt;a<6K$P)$c^>tw(yz@Da(VN*~r_7jv>HdlOb)+2|}e81DIKt?mf$#|0DX zPA@pvn9CUgY5CWF`DJck<+sC5_Kp7Noferw$HTEeC~(;;umax3#F1qhqkZV6TNOl* zuV QjToMp`;%lh31405kH;6$TjJFiqFbR~^1hgf0e9P+r%7`&d z-rMv<*2d)z`}OPp?#s8cN3^!oP7;!Km+Z;odpGsFIIv~uhJ$~6bbHVF3>O;{N*^&| z$-sU4Tgn_+-DX9sC;Mt!r0$tt|F80kj_svSzICc@&Ns`>j#%*d!%%tL0c*>ncGVrz z-fm!kc;pJ1}zq~5BGF0{q^^zLkFhLKjp8@c`Y+vYBPAt3_5C)SdDHC zL`f^IHvyB58CF;BsH&=*w5dxjetECzjbBHc`R|`E(j!0p&He7qCtrTFX7%mHTOD)u zEjs%C(hYy~-BUfexcj&8jJn&_iVU1{2?+^j{*^Hz@iB@8QOfI#^LpRVBf|)*6bK+~ zYBYnOz5o+atqtjuxosH2AoL31MLI;bsC$NV)Uvo)_XPvF9CrP> zQ3nHeT#&dveO=#!nTQnjcO&#a5)&cCFMWS5aJjDF}kAv#ZHNeNk)U< z-#LlEWE6z>tS1c$1Ua@t2^uPv*wyeeAZ(K4P^d@4Qw-uBu|;7n^2(P5J~(o)XXfSi zQlTE3j-MEjq;@D|;4gL4*fo?x4%4f+nghNrG*f-C(qIJB>Tq~LUDk*ZvnCeNj{THuz@nOHk z$7eqO#ir)+o53?jv)h%so;k2`P)d6Lu|@OezOcyntz2v7eOYi;rvCfV|^16fjKJPm}HlW|Qa^TptIldqzH{k~o2znhYE2cE? zc`-sW)iCRhgE;%YB|ST8;c7 zD$d{{yn;t<&Ya5HRD_iw*J}l}WXA-PcM^@Zmm%VqTn+|qhlVVMmRVAtSB61tGukxT z9A$ceFo@4vzU3$>M`x-$Csrdy?Rv9>42&fLL58@WsW3su$z;rj` zD!ZRqOIU?-VkCq~6yh7hxm zS#>bgVX9*tUea`GF0jA7(&F&Ad=y4Sr3!8=LzF_>X;IIujNwG-Wn2*dP+jLHDbrC! z`-LoxP?hFjocM4MMy&?(j*JdGosjB7Y6bNNK;}j`l_?Q|sb}@n(%e|@azsG8FyCu8 zv!U9&fu6~`c2y*W2p>d7q(s|};hF`)H83SB;S9j;tf&ALl02fPShpuz2Wf+y@DLib z?%1XbL`p7}!-C;|=}{7D+%6`M9$_VhVDO`;VeLaF>@C%$)!B7v>k7A)DQ!2_k^hl} z!h92Kauvg6y4u)2dvL#ZO<|?)M znM4Z25}^P~SogHyVSW~=98wBUZEdU;P%GpCfJ__~$GPN2Q>rs11*)dxheyg0#u$zp>lGj~BG*^6`yHk2CJvt+w*v|Vn+2g8a@faM?Pd!O5(?JiNCb*4YMMezg6{k6nA7dh_>VgCE>Ky=d#Ue#2E4#P5|PJ@Zv& zM*aQn(WU)Qe%ICc<=89p2KDdP@9w7$uiscO`qASbfBSIc!=JCLzBQ$G`u4MrZ&*3x zmHHCBZ8YS6Xi^AtR7&8Lbof*)gkt&ilJ_mABKgP~KUzBbdTp61_|4g3=db_y=f{_> z{P09y@8F01hmWgnl1GXGfqIz8Sk>5Ru(s(E#BR&QRteVhQ2F-o3DLmQs??yK!Z9dQ zb}*QIDJ$pravAXSl~NhAXV8~7Mt`ZFeSFQsmFFfu*P&N?yF>k~!3?&%HP*7uOL*Z! zc)w-Pg#(MWeRD3u*`r{}jZ^Z3d_pZvfxSpdIXz9EBat;c2iAR<8+4p7s55euK##8D_P>QHv z^aYd~2_p^;(3ZubFp-hbGP7hp{8gimG;Y5!>fIa0)mdNb#4^G@RP*h&Awlu%`#t9` zy?OkT70)=FuP<2OtgX1PcTvmi3*)8JIXcY5;gvV61%{6y;d_8dUMZ>=COi1dsWVM= zy+1zu=g-Su?)+@|4fWxdN9w=(+O)=Ddo)T}x?a*z(dPUreH@=RQ=5EC;R?oECD0}) zc&1un#}@$mFNt#kF9V^DGx&mV^Hsrl4#6$moK+rmaP|6*6=JRD6|`oQ>ZKACB|f_- z8MAWebr2gw%F)1`ooT@gp8y9Ol04kuIdZM+GE+47xiSO=A|U6KXXi6{g+tDVTrBz(>WN6hnkk;`$#D5n;}!CO#i%4xH`b7Tp!#pk@H^ih ze`Wc@o)@pr{pHQ|Wm5_!O@a#7)T}Ktn=|hqZ+}ABOBc7Qj(qZ2#fdZD|D0RUS@USYjjc5s`;F1hQ>I|)fQ5{U^kzr& zA!urifdt5HyykbWU)t;~ncvOr%O8LscQni>E#2^fk?#ntEbLE^*;`qMmXm73%_s_! zIZ};}q&X8bg8*HufRbAxYF|h3O-PpoU4WnArRA9C==4cgC926XsNRr*wU4wkpo9qO z&GM@aB=3aXEel*BEl*Sy77%ChD6EpA+ieXxHW#GJ*kI=k3?lHEmq&cq$ztA13Dr>a zVgEnY$l(X#t1$P=-8$?}l1>apS^x_eni4UPiy%o2*pRw5P^6+IgB|cJqtXiQb1r~< zeg}jGKx{x3+*o-vHkV@jq%0h3b!gnkLqsIc@es`Q7=&pl(Eag30Y%i@ip6R)luOd9 zULSJk2sm{8aaVZ1!aMh-VOC4&QL(%K)MDJm=*T;_JDa0Em9=<|2i zY6BQ6v|=r%#mnnv!6srYg=Mb9f{1V10%k~kw&93NUXvx?>S+yE8e-{UNj0Ps`C~6J z#5N_Ji~%>FrCvDG5K_W4pGaR_*QyiO2Llr(GeMAer~)YEbzB^qVjG?aDQL4CN}PCP z<1}HsCDJSEYH6=|6vBT2+L6b?Kahs>!L*!-a7g0-aS2B1nt?Yc{(TNlb+?_IqO?j` zhgI#4DMLYmQ6`v_Qilzon%M;O8Zd29nhiuyvS?f?yp|FoE`=RGR3K8I0qKVf5ZBmA zatQo_zzHZ7vwVBg>T(=4mc1kD3Jap6a||zP&g2wB+DJ%-P-L;suYg6{s26we>X44? zr;(!W-69-~Uu!VL=Vz>iwr^3oSS1x$7tJK30(xjMdz!KvnzAKY%F`Oi3VPF#p56_X z0!;IsYCpp5HG(0+c@cEP3qk!9sl!q56`slFVAw|p{A`x>4=4^Py%J)IWNnVbCQ?{Z zDe{991BI5RG5Qq~!1E|KF`6OWm?`5qVF63bZO35Jsxl~)X0Ji1a1)|HT6H0 z5?8L0CX|`^-r5Okf1-nMW!VWjI>!UBkumt9nl7C>&INvHC-yGAU@Nj1ii)7j6022O zMAylXh9yVGL?kQAwGR_@Xe!*EgbaVRKtSK`fdT;HEg_|69873L(8LSXb`j{A5@40X$zoS4 zD`rwl^uuek$#|v84#|gv5Yx^_?;rKPG`6=nt4G0;MywB;K>pwT;LWX1oCxfEs`J6> z#(W@DOkqBYK)Vddj2I{vGH~2z*qhc@=ueb8~{R0S6Bd zL9GndJ`Gc5&X_p$-C(%y%&||u|84L;_a^jTz5k1F$9LD>&TDcex(;TPJn`ytEBpR@ z=ku=H&)>SYCht&%ukP-{Gq2yTef@slqwjy-zj0;9y44HY8^0ZMtYOcr$|*+H!WTBA zI$QpwyZgx(`xEyadiL)vo8M|Hee%%5r|&#}JVdKhgpMK#~@h9dHEe=b;ob*5yE+FbH|C%@Y z)@^?4|2jYY?VoEq1gF&y0+AK-vi1xu0_s)BqK-pwotbfT^3W98z5e$g*+a|>>`_1^ z7@FhTp&b&*+m*n;MX5RFJaH%-Z}oMc{~k&v)^Eeu3Qo}IiuEk9{o zq4Uy<#Rp%$y=TvZH=i%;-Xu@k)G!tFVO4uc=Ue*TZ?fK-%`$SDF&9W%R1{O?0fdF{<#!O-Ik(ZRxBfkS0a038*#< z!=?nG>j$*J0|z-vqKEe)Wd#<-q+ID7P2#4kBQ1q`sPNhUQqc=OFwM@P6=YP|qRN0)j@v zClj(Bt^9Vz`O>@3{r9moAFt7_YD(Lys$ zkaK46@ku&v;aYh_5iQ_U8BZ3$R`-G@uj&*p_uH`@%=dFGNXmylI{;FK66Mp$S zN68*OCYh&wxd{}a2Z1z87OP!pba+a;9*Oe3TRI(X`dG`LeN!Hp=hT+%PCoeig1sHj;YJpxaaUI)9W4JB$*HjFD&VT;SojVJT-27MV?FX&84UcY& z9{K8$>(=fZj7@urL&mR?2yhP|7N}#j7^uo5`>F~WyKIZ^^glIX$6wP9Jor!6$WMQN zu&?MqOWDy>jLYe(n2&4|Lw#r<6k?$zeIIL?RPzNk=J9WB!0<7vh-|@C=b#K~lI?Snn|-2{JB=I1#9mag>Oyw4Puv zkJ`~;x{hFRWE^;NInQMHlw{D-CgWRV;v5*99Ph%z1Qmy$U_B&~ph)Zq?4sdnRi4=Z zWp*=SBUK)R7!o4IT1XIyxanbd^DV%B;BEv;S*VsZ1MX&k1vttzV;ml5CVm8Tva$Hn zFyEr!Q*dho2|qsf-uY2)=G(?+;P14eI!9@jdaN*k&M!5p3oq^R0vHf0ot3Imcia*{ z8+S^PqU=-!nf>NK79n`*T^YV6Etkf5jgcMa%)V`yYepKXEkS~&21_NbM8o@O&Cxy> zQmkzmNr=0OVa2r1Lt?{1qJ50!(h;3{N~(%ZIk9&NGl!6{Jqj}Sh9-0<|CXD%6r!?C zDTVLZ3tFwN2nZfSD)uU=umH*NH$v7D!wZr5gUPJi3Rb<{k z*G<|(*H+DP<*1YyD{{~W7y?n9?+yTfIs>FXp|)DCV3xet!v|A6G-U1RxkQl+ zwZ3d|Nyw0TNQ;9|nKu*5CQJkrHoJTQCodbGD8`%%@Q{?Tl6t&=DHbjc06@loBP)xE z$H|6d_Zp}|Vfz45fU|>j*{k$tl3~JY)ggIjn7f6q~MoVpl^2(Ocw3mLI0DVp;kGA!d0- z+mRG|<{^m`2u4D#v>`{HA~sF^ZNurR8yA26cJ=EoWvoS}CdRkcf_y+B7L}Xfdrzi3 zG0}B){r7eP(;}$&Nbv5YRzy%AFC?0CQ7Coc<+HYi7Y$1ND%@my^!<)S z*A5MS@%N^~&wa#t>=g@>EK|a79)GK8^Xk9%{q^@#FZ}WJnpWqV8>X#p+4$DxkF##O zukYHqZ@|95^_yi`{g+-#ef;UZHyelNOM{XjneSve&ij`3KQjH>PwsU+GxC*(io?He zS#fOXFP?o@9*y33;=#u|m;Y9_;2+d^zxXqkK@H8caP?9dG z+jM4%4G?Q}lHs`#-Fm&kx7~cz(Npqp=k6-ED zzUIOBCvJaoZm|!p3DeM_by9Q-1z|;VHGz&tD$l*L?3IhwbM{N8E4yzM?n`u!9okZn zsR3EG zeYp_z{c`7+Z_XW?HLP(cg?^Z@2u2@UDvAD{B)BDZLe3xGY1mZZnOn!*XbY4+*IoCl z?3TSL`{^`Uv7}Dh6V~@T)6ugn{=|d{uQ)RQEL;Dz_Q^YUpS<(ana4M52P^1_(HFix z!z3vUV|I;q?vxe_C%mH1&QW_pE90q~u8)~bPC1e-UUX;I!B$)W`f@@)eY>A9fb zS=|KM83${?kSD~bp(^4unA=u%CUL4Bsn3(EKg(Ja4C_V$%diksxSWO#mAR;WWOU9$ zo74`&zkL_B?cLSq82*wEnbwLj8U9BqVqlJB&w*R$5keVuc5p1hm1v0tu3jGvW}T)( z52Ypx+3I2@vCr;yaU| zx9v&Bwh|+bV8mF9!HU=hs|u^`#6iW!i-YN906;j(O0i>VBI!O|jnXjHH}>7`Vz(l} zIwW;z@mohjb6@s0aL=#&Z^ivpFMQtlN5SP6XFhXIHf1KwC1BWz85TsZa-%-LY(Lf3 zs5$f6%vGKL*}v2rYw-cnjBQ2R5)4KjZmQh1 z2E4DBR+H#b@F^M?f)!%asc-0ApqLA3DQ-X6wL~HAL2L<+ggl8Q$zog#-#cnPDN;hg z?~_+_uEm;cGKqypq=JeR)c_JTEP?TqG2VN${2C#}c##XP&C$C=?6}E~M_45x1gRQ{ z17>!E6xKrcvh{lXmbO4}-E1v*-;Owxms+Tk?Umlte~r6TRN{MiAc`%unuys93lv7j zIA4G;B^8iob2vJ@{iJH5Tq}+-XN5I8#u?`HJlBgPk+Dppi zfiM2vrsQW1W~4P4L^NA2Luev3w9OEK>kV}CamS^KRWa_%B8VVu*2Z|5+vDPq?0+6U5LLG7xGEQ+#%Q3^K zajCW-q2O_4L2xJ0C5)##_No!&|EP75_sUqN| zlwyR^Hefk$et4l}N;zs5QCBDCHpHW4$8_yMt@xhjEBcHlk5#3hi`A<49AtVm0Pu7z{w zZYpt3>^}DD;n_!e{3qY|viqN(!|!~S_u|g}<2x@+D>PT|mmb{sb>XA7dl%n2wc^wJ zWouTvsek+CV<*4ArF!?^-IJfa=9uN%l{dxV2=^uLo4D$s@x&Xu<8Mz{p9IrwfE|{1 zX-d6r`^+uXs{4z7%pUo|ZwVJq-v8s`FdFt}}M@1Ea^=I%*!K|U{%^UP5V7cRuyGkIUtNDq{kPvdd*-iOSDwF?TfegNnGL5-&ARnrlMHo|)#fGPJ7ao*^^kFn z(b-Cdq1H2Z)??ix(Et*oE>Bu78A8`Rx$fEzSFir^!`zk`AI~108xDumo`f@w<<+x~ zeDdth*I&2v<(_j zzhU8Xy*X8fmNk1r@&rDqNYuD=w>DB#Do&W9|5)GBB~NHv`b?@86R%*!V~A9P%ZT(y z#|^3LDe)a_EL}2teqCK{@xhCgBS$7D7!?hZ+Hz#iR*iFMvwAlj{Lc#KR>#>#m*$4E zHm}-j8t~MMZ#UPT+1r?#z#+uPOH7j3HRWvsjO`Gwe$Y6g>Vt8;y?G0Mm;=s zVz%@4tc@@JK09>q-~i~=x&rnV6+&^x>>B4y}hl#HYMdx_Gqrjl_rdcr+M7Ck1)~F`+q!7%X zJ_VU@kk3ItSSC`8s?vgTQ7q}raIi$-B@T{C#5;mEr2)YtI>dIsW(l_oBCUGis-Ey3 zDj6MsH4w)_KpN|z+tU$-BL|)@sIPbg8mB=SEw$6E8nW4mSUrR9OdCdP-XtGX6ESe3 zLx0$mq8mTNT%MZwuZI0)|C#^#js?%Qw(6c9^n2)qRgYHsXKp#~X|f9m401!DgoRm0 zA=Nmn9%9v&PgmSL_1?!D$4xUD&BY<;sr0-j%@D1uf{g3*s1{3EZ+J3wT61>WRqnOY z@2>U#?B0NP9^^b1N+xyK0FX#1V3EzHB-q0IkT5s??3in7-nf4F#d|4hj(>h~Nz1E> zGV=0McYnWKdiS#jcV7JT*A1WlvElh2(jJ-9Q_VJ;pZVGVDE*k4c!W)otOxiYc@f}{ zC}6iS8W5SIQz06!l0;>PzOw*ZRi%3tUbTog({092I;NiJ+;TJxW^FTJV@{8lt~boI z1ad<>z=24u1g9^}8|~9HJ2nXMtb!qce1nN7OeoH#L*G1D>^AUsXp2(IbYMu3yt&7W zqZq3!FG#R7QcJGK+JtN$!cap5@UqbeH&2y-nV%g@U#C2Tm^W-NoVfhSwU45*NifO) zc!KIl8|LMli*R6oLg8@@>aYMv=49;oyA_;e0r8@F%h8(89bW zlUAaND!e2Hb<|5E+Q7&~shNaj%wSSn5D5b+N7y%WFHD_Zm?&9jW?Ym7b3+JE7nNg* zm7CwLtAG?Z4puuq^f(P(Irb{4tXV@!rehLjY2h?}=P<$wfO&mq;miWglMr=uQeaNm zQH)^j2-O3|8%X&;+5q&Wc;5SBU9%K47387L6_dqAqlp^J=fZ>@G)n}JlLkgl8LW+M zhQ-kzWGwjW1ZR|3`dJBDZB0a@tpYR1H#SLKF)2aqVF~D?3VaZ0SvXpv76@%aQ>!@x zE-A?8`{J9utl&6w2=SwQa>w z6|}^YCZ$xBQ9Bx^M#p58Lw^o*w}J5!1;`DLz)y-@K4Y<`s$r=_0PGC)jt-*~RVZe1 zY8eg~Q55ojy_vRI`s(nrn_*b@*lpNZh@<|F=wgfH+)3?>Rojn@05k-MhmFPx*^K|t z@Im`sg~R~AKM{`R%J(E@mQN)UBt#y;%Oxz~61?DlgQTMI(Qd+qZ%F^|%(0gOutI}W zPHqENRLcmMtBAy8a~1F&CSX8`7(S6kl%ki&6jjV=0y@?Q%OR)b9W^?luE>VbAyAgn zlrqNdji+2`guFjvb2l;SChW7}+`$M{rEbp=dqJA53W|*wyIH+<4V(=Sf61aSB&mqU zzm`pLXDb+iFt`#~wVIV`3Ca+KR>5cBk5?4)hUJ$K$g!62jTrgOuSYNK@kn|Ts*6Yk zEQ~^y!;iz50HOp?D5&xrH2fPx!In-sxt1Wg0)hiiMG7i9UcVYxT$I>rq|(INlXnaD z+v*)>`@a2S)y~DY{(5E3g1655OEg0yA2EXAjgsMqKf5*g>4!hQ{#W1A%danc_51I> zT=n|xKkLR_mE`7&QzDnn{r2*+D~F!_cJt#;&l|KSnGQI-_1@zcNi%BLSmEZ52_j)?KXA5aJ3rnX*0SVWOV4BDKUKwhV0) zjPT!l`QYf2NP~U#@H1y!k@$wxrC zw#opK030t(27d@_IGJ8pS@BTI*GiVH{*qY!;Sj^XcREbJ9fOJ}cJ1`nPMo~3)|j9$ zGv1`w#t9#+brx3oogdWQ>gwuR`rP~WOAV>{0)d|soK8X`@% z>$@_on@g%_H(iCt^S%ZS1 zWC)I@%@Lm+b%I6;Sddh%BTPoroHBsa&ZgtvcrP=V!YRnQtF@DyW-TE>-2vGW|C2#% z0GCab*~wM_0&PEp6CFuuSoBLFM%h+ZS0-z4w&M#b9GxZ@hbFv|hXO}TN>EjUE!nH* z%6vD|Z;pEIqwm*0{dL*%E7$D*Ow;e>k1jqrFblCzwo+<0D}rvph~4?x)D%{g>By`X z2gWwm4kW}b(AUDoS|I`bJ&stpgg)vpE;mGsI$PDxdlNUV{&&mWQMW(dEK;Y1%ur0J zWyVM)7I*Q+RDZU>|EsI#_3o$s`~MuBdt6iX|Hscc8}kfCZ3AgIvokgjbl5=eP|=(>G7cU+C{_$=-GQ%a8y0>ix&#KX~cE z*S}d_|Ms(jPX-n-!W=qxxpBnE3iNJH4#R+uziu)?9$n@ApMaydq^Odpl+CpRBnkL4Cd-RxS76r>qPtOpQ6m50Zz zZLcO&M63_g6cE+0Nd>YqLTf@f@!^oaQ;#?wfZ8fNHv+9%Yz*Nsb)?#Gy~fsr!F7?f z1N$N5eK9J?w#OqVhLUl~YDu6FzF!V)5d;a=C?pn9FcMffY2~;`LS?ny8pW#CbCHK` zv~fbzr1O}U4EG9*6iZ?YA7YGDWuwb3z-VNWgPurvT%;~+65CwyXuyaE%LYr?rrB^W z8q3m*j9DH-s14asq#WEmZY_iIP$A+=LCqlUHePvXRMvBb{5644;fRD13J(xd0R`Yq zgB^u&2_4#C?IECm2`CLdzS$SxGDEt$AQll5csRyM8QSUtMO%&)xKnkalpre%(oVwI zK!ae&B{~Qdz;g6>^=SI%<-#sXLp0O~AMEmwkOaA#Yv$7+7*}E2!DXh>_yxL3!l9CE z8gLTif)scpCUYoJIu{_B0kq6Yt{-(Ab?Ln(l^SpBYMvZCKRnAzXj?$R*2yO3_m?%m z5Gx_|c#(bW_NwYmy-8`t^M!C3Z5t=>tSlE+Bmr&4RsumhABjdNSc}~7$!i-94-~QO zojkKoOOzmJsu~n1zcGRpBu#dbQdq%|Pltz}155!>GiW6f z=uk+jOUmhF`Gy?h{ z#k(N3`p8nqs3&JyG@!(rqvME)08@ul;Ut3@tlqY&$JGqB&a1SmF1n8usIjk#-a4`O zwFM;Za;ZlPBXgZEMo+2G6NLs!v)t-~B(I2K0Y)T*{GN7^zhJow8Xp+H!Za%ktPz-^ zNEHJbm3FxnP=!85=1Snulko7s?Lq@@d&uOf95jl;JE4&{9DvsG9g6v;TA@tm@(8IE zTBOD9ZQ}BY8)j|o%=2YQz$Tjm6$(|tDnD6O4StLe|19{dQ6E5HS>UC*tp8IJE3 z)amSyfi_##B$-z8K!s&As6UieHVPJ`_^RX83~a|LoWYd1O`Bqc2JEN#R&@Gp}|6KGu3R9&o=l1?}ezk&e| zUY@G4P-)AsDOhvaGvnU9YP)CsaQ56CJDww5?RFPz(Nc(?s8)oNn2pwrk|8nVS6qSO zS*99SN5#Mc&t&HF zt7DTp=GQjAGVbcmWtaXQIODJJ-(NXZe(-L?FQ3^?-{O*#V)n>4s&%hsi388`DRN@r3%83>MsBN^lCA@hH2BAY|IPjS z)K|y+A3gK>*cq$bK7N0a!-f$vqL)D7rmb7+VKjqMS^m7CSclJAmt@i)*_b+_nJ5~h z;nZs649TlHaw>Zg?kxQ~|H6XbJ#&)=^lWCVO~VBU z9Pz{qY3!j6-@7X@FxG7Y*VOzyfhVKF%BIjd)6 z+t~$!nyStoxgH9g4TWZ&T1OjyC>V;9q=bzRGFDs-h&Y)ii)hUpF;Wflay1F5Am!6N z44MmS&MbKA(#6G3N2cvo-@i8@W9uIWYd($MSNy44i}~UTry}<}%S|12L?X>d^fx7c zpw7zMTq73AICuba&}_s0JSS$)*=?Km6hvA(8Dl_IF#TNKc9E!XLiwQ4-&HQT(Yy7` z9DDJymoiINy|--9{N3N6wQJtNpL*w{j~QBMx841H`umIi7rIkD^`LM6^W)yS64qZj zQ@BTe?uLB_`@u69z0Vf0zng>%`C!D7!4WdX) z_}hLzePKg=c9mpTZie5NY8@lsZXya|kuc-&dkWDCg)s<0h4y+ZBWws@Cz&vg6g`1? zL(N95)nsFZlbfehp|dO#dCF|~b~fP-o@gR^2*4FFz5p8cLo968C1Q!Sl-8J9g?@fD zN=bECSmO#NG({*ygbCpJAj9{qx3}>`!R!Uqc3XsJ8*kX0;>mQ8X#Zm(x-Mk#LB{eL z(m!-=-PYapx$!0Wp@1sux$$q<|(*If#nxcam2Y1AKhMK`EJYIN!-G! zYUDg!Dh!x}Y*i1J)zBV3ooJOzYFs;a=eNIRe)P<;uBCYyP;M3dE-W#Hx{?MbZpGcN zjL0VE&0Fx)O9%h`^P~6wu3h~1qP?f?Zy0bSJ0uxXJ1w8Cy7BDCe^>3A_eb7GOY0U6 zEz0JDN$S)tKP+@)26&n-961tH4x+f#Dkm92j_U^sXqkXoFAn?TF)%6&I(|^{2{%G( z&wB~y4qDfd#rWLuJWbL0Fxsj-go-EUlOPzA7*lXaNx6_;z@|LRff1$l(NtC?j&1?D zyxK?o6wYX5Ev3RMQ_&|icC|Ky9A7-3?yyFq-w}R*(3SV}u%Uy(Eb8K6t5Mn5x;xc8 z6yhDF!iWNt=X(@KBFIzj^l5Qv=TImpbd$&(v2Q0KBQJ<<;jOTN;yz9Bk;Q>Ea5-0s z?TN|h(T;7x;$H`M4{Y<=U|E{f#>IlAs=6*$N6Ubv0uK?27mB$t-l~A3aaUr~tR%L2 zQ0JGl2B6d7#{wWg<`bDXQG=>0 zL8XUqUV$yZ)dF@@g%mG{O|fyEh*oN3kz4}95x(KI^?r?!gMb_5_N z!Yo7Gi@1b}O)81?8T-WJ)A)@@U0Zdmh*t2G8z&GYVdS`zPJ&>qfX`aNWw`5qf`t>_ zSD=F6bk<<0h+?(?hEDioVgB-wMWFt>G-)xg($~8{tOVWywh2 zP0ZN!Q6QUCp7#Q43YNYn{z|MI1}*H71o|Mna54CnyO$6UJ$0ezj*W;z_Bz3ldtL`h zdOX^DLqzsTD{in1igru_KgSq0@KTXkjX>Ls=m~`R4IS-}Xu}L;lO|%a61^5yy9gUg z+sq0}027)lnM>c(G;m>>!s^9A%2b*(5yZA6)V6bpE3uzIr6kZBFIKPMiaFSsSv;B8 zz!-w`cu`QMK>sJ`iy9LeBkBq0*2z`}sbymn>!$LQhet*cC&^XgNEY5Z04Q<8gciav zuvQKN0vLMnd_#cTM35A|no3^`)Oo;Q7!pA+LQi=_5JC<3O{y9@3D-3hzUmu|5aXf& zHA1a33A|YVTGZ7EvMCXT*qS0ylv9U!l7Fv2Ck9BxNtlOdSQ2dlXe82xD};GpM2&Xa z)W=8rKb-O4hkJX!k36XNx3s42pK3y!QxpBnsto_Xxx)yk&VDTn$RkdARGy>f05UL` zs2Z^@$oK9GVgcqy{@FbqUz@G3o>6X|`u^MB761F2_M;^aug;$Lp92fq8=kNzq#sFl zEnRf?N?qkYPtUlgEggE`*Kev$y>&cR?99|q9;&X3V}sN2iyNVWWyY)_Al=Mz0aK84rnzp9Jf323{u>i=2rE zkJLm{>-y0BUoAsV-hJl%D^I`l-Y{kbPWM*i-Q7Aa9|x#jV{CpT*d#F)4| z4)B!Si#DWhEzV4BLF-3x{>z48vI!X^A=~Q7;*p7;#ZO z)D=JeCL6kU#`O(zJAVEq?yIMseB$ICIB@P<-1YjU1Ec@*tLtM4C>%6z)@*i+NDrzQ-Q?a3(3-uglJ z&B_-BeZ6ac8f^-yQgD}{jqN4Q=b*e6G zUL5fh4sS7|@z%qJs)NA7M{5)aZ&Q&(FhlIXJsg%}Ag9t5mJDH-k}{RxxQHd)Yzzv; z37(9Q|Ei>Llt~F0Xr22~0DX6%UBeO2)>mqR;S0UhKFb_ykuDTkMDPj>A=BWo#RheH z>l!rX2E@U12q|8BM1%(|4{Zx!LtY?B2i4v+IZSi)JZGjfvBH5E8_Q)08}NnT_S%Qw zXs{9P!@CTW^D}oQZrqvOdMp%--nvvi9>7hSkRB;mB>pxUJ!(T(Z9-g3!BtDHo;@E9 zo!!vK`s@PGQMH4d+?wIX$`?`M5)&L0fo!#|W6#DpRkxnB&N=!<_o)5lv$kakyYRQ$ zJ(E4^SWWH^Nt;puqSe9c^(046|R3Y6*D1sIqMOS&rR}+-rRWM z?b}zsduGg5yCcS{4a=~-ArSuHk+pEP$80T{th4?4)XRVN488c*fQ#>J%jPKM3bSXW zy>ZGbIiYXgJ^JOvw||q3{&>m%cJtceGn!^)*R2(rYCJJrKn74MsNGfLK#_?ST`~}O zH~_t>DWj=P#Gq?KLnL)TN=!)M3|&DqadYW{d^zFe(Y>{}2B>&uPgV`wFNu=Npie1K zWaHO@cSKp6X7AEs{*2byV@qQSVEe}llthgQ@gAN=Y z^1wT^>{O}Yf(S@pjc^felz73X<*rk>MR@SsQ({74AnwFrV~Yn3&CF`3;VO|n#-u>vSChsy9S##|n(OZYYaxSP zLvfO7G+R+`s5Tg&W?-8F9Gq?A5ds1MA0_7F=~A(u(PdVwo;x|CwOYk&JOWU4^*$wf zxtxR$;RcnuV%o4yUO*uM2XIn+UbI*VB*LWiyZcO}SI0K_V5&yQwiX!IMM3HF3pA%G9=MR zkS%0MxhfskO|StRf)oXj&_Q|HH8MQgcx|GSR%JbF7x>YQ=8msWHPT@HI7oVYiEgt{ zv~YqLZ`7#cg?-*x)6O^atr*qc>@g*v@{bXs&>P-|x)wsA`Loh_t z!r>LqYv#d?1ib}2AV8tQ5@@f{pW=a&;CgnP(wq<1j~%-SK}DR+28CLEJ+_U+9DHSe zvXqNiIe^!F{_;RhozI7^bqTiu`$IN{jqiXBCo*=m%qHhs&{YSpI7C5om=RrEft7;S z&!d7i@35QmVR#o&a_mVk@vR>vAw9LggC(ev7>grnqrt1sH31Gw;X_8c>g+K0VCiM%jmJSwvU9RSCPHC`vwi*`Li#I# zzIlRHscH1?%CKi5Edt=YutMUXI1MOGQb=h~+(_fZ6fi#Yd5(ntSE|7o1R#bWCiLgjW{21+YBce^5lZTI8L}w(~&9TG;sap ztCMHXTl(jVFF#KB#4|0$T3R&7765xv7SS8R?EWCd>GA`{NJ~`&eqn&qq8=Q|g*65i z04{|fNr#dwWNN_m?c0)$f)Bq!lk`T_vY-CmU;5^<-)1~L=B;;6pU;+4v*%uYr|P{+ zod@o;ENeRV&2{aQ-%C!s?*6&g)W&CXO&rD|#GO}ef9CUD-#^%Be{kVy#VcEASx4>* zgB@#%BRTuudNAi<`=x(Ij(c>t?ZNb?Bwe8IOq=CzuE4whX%ee{bbWf`l}znk%J&!r_BrZsI7 zI}%*bHw2W-7U%G|s}uN4ozIh15*rCpgnY~dhV+xbjp6#ticnQ72%}p%vpWpruFRYt zYy}$+2{jm#=Jc&8wB&clATo}G_RDjV=YLj;?kyR8^QP_8@dG=DPmpoa>L%^7 z$Dv~wsaQR{&Q`qjh_-e~q`up`?U9N}VV(uu9Xw5X?v7V(9J_q&xpOaG**fFBujfDb z#q{zK;>M@qoE@-C#zH-mbu*wA3lQFnr{>REt@Ebj&9H&^+_>JxKYF&~xt`Pm>9N3m z=}5GB?YUEr)`Afu{gG?C^UtTP4{hJI==x)u<-Mh|`&90}&INCse0XqZ%ZuR~58is5 zKlaw;XDiQbeYk(w*_ZcMEqOHZkEfb`ET8fBfzj_AIrmO(!QL0I-g6==IZ5@8`iy@ba`hT9Y=SBbaJvgZv_m6PF6haKNz#B&%(1W04TM2xk#n;bjq z!{RkFYukSepB~s>TiwEQ8Ubd*smJ&-OHHaLbY6lSm%Hcj-1?wIcW?3Px$Q&29 zR^PZGyL|ZMw9JvK3vhQf9`(ez4Pc8U&`{J>e4-}6cFu|~Z9*S+W*ePqD zNOOS&G)hp$iNXk1JVS;V*lb(^+}pEDN^;tbtLsK(8oz2h+oi~AxXm3}XtRiWxw%5w zK%J`w&$P=0+Z25gjg}AMO%Tg2nQ{$FE0o)lR@TGd;RN;=K3)??Ph-;o;Y~+SG5|ej zX$DNcYf3N*tV?d%4Hheiy#y#kSYdGWSl9$8hv?)?2hL;@fx$&pb1hrWH3=xoJwkl_ zy~5HEA?b;(MDE$HPsKHlMWi_Ezx#sBR4oz8&T+-?CP%YV0Qv=aE+*H2O0pE98!JVT zPAyL1b`jyQe+tE~Y>bhRY6?Di9Mss(yYa4~k}+3D4DD3R&0aA| z4UU&2pkozMA1R$blOg;6sHxsjd04(;d$J6;#J0|$B09^537A9mW}Ii^M;^xlzs(p) zh!2RSWN?FeD(Zc@=pAKZQfzU`)u7NxnnvL(BERL4S%pFpJ;84DgL5S!8Xfm))|VCL z;;5I?Fc!<^A1F`nsyBDI>SAgq{iXy}2mdzbz9708aW{|W)#m!K;=?+_B9%E%NPu#c z%5gE2(o+o+Px4efp+-$!eL(Ncq7%F^{#DWXG#s6-cBBo%i^PuOrw8+r*DT!oGB6wm=581g$bC{FO;1t^G23mvI z8f$x$Jxq6pyBu ztA;Z!AmQ?CBqaxY6Zq#&wGN?BL5QU44YUfb0}gGA!wakL0K_0p(Vx`e z79o%&h}zMRqvq0@vR4x&9gRdU55-(@av4UfXxtbuw4{zqe#GQNqdRKCoCusMYb$K$ z%KrWDyh_1}8edBz(~O&s$x)3bq_2~9CZfQ>W*qAQfq@rC$npF!;iKcoDw^M@xL0su zlmufzRDU5|z62M1c!{iU`{Q@iW0r;z{`o=s(c9fuXAfC0|AubH%sGeN`To-4im4+m z-aqkW<(1SS->g4z8~0&7k~_b`q9^4Z-EG(2UikQax#jyi-wc29iM&f0TMX2eg5uJ_ zk+0YMv;6L(tsnpSsO|UZPnqaI;g~+8J{QfsdikFtKc4z$<~Mr|zWa`4Zrj3lpRgR7 z9GjAu%ZI9HX@2`?b1$Gr%D~2xPu)C|9XWmcuW3i`Y`szc?7u78-hAix?@?5Gq}8SH z?F&*0%TD3C)Ff65Oh!36z)XCPCY%OzJc9pOCWQ=If2UXIuiRD+W;s*|xrYnQJ%HHS%(HfZ|x{f5l z?F5fq5kM6$&*d9g?5);p_Qb{*N?&yzvlTZjD5piKTh`R1r>5jxI(cB{3nM**+-kjs zJ7QqR^Sic|&V3@|=sT~ERwtb+tNQK8kd`<1U7ysnxa{v$;~w>VGVbf!Kl2|Pe{$Q^ z^0|KuegC&VzkS&B(z`!D`sVLXo~gQe@MOv0_?zF{UA%J!7Z%?icbC=ey}0DYn;*Y( z_sE&~f1UpI_&3t;WSe(2=S^C}lr6u$u*xq?>KCvnK0dfO4hYWcjQBzX!3xu{N~;6H zfEboQh_*`bM@z+E=lI$u!?f28ul&<80(5vwcM_$7`hg4zO1to~F^D@#jXJD{r83F` z!7A!HGZ5S`u=B{n7BOD(W_9TVA4iyx7@7Q zxC(%;ejehQK;D(=)F9M-GRH=P%433_5ikkas2XhXxQv1>^}6!&QPx2Rj(kcEgKI}i zV_#08eNJY3dtFx8MCy?^f_c?Vs#tDFU4pF^w=3IRJ$;Awi3H8I(pl>4wfyzOennxK zkXz!f72epLN}2@?PP_<;oj<=|&pbMF$aB^%T#mSm(-tk^aS$p$<*DNWcs<@bwD`;L z@n;S^KhD2@-+M>vc9(N&Y!%lIH)Og~Z9*A`=Xsk*-JOdr=^yUSdwg@%ON$rnnkqMr z862wcwG+8)`=s+n?|rp+=ZebDrzAU6F^=)I*)ib~5I5|zXX3@j4qwC|(B|wUcs3>4 zrAj1MciZ<|ZzxD8w%9hN)z!6UsXto%-Sq~m*Lc3Ma7@DN7qWDOC~>pLI#3tO&!|kx z?3}nI@&0oM25n7`?JNfohyR1dJATb3-n*L<*Xrt16(6Ld1{$MtY>XF`0-zq_Dhe8&lZNjPJ-k)w9poy@Dd&(eM=Vv{5GQ5ihu$4x}%rTuz&?Z0Ni-Q z6IxUwrh2brBaP+6EANKDDi$n1td=<4b)+oZBPLj_odR8?0KSrg}(-8*z9)v4i%B-UO)=BfMjcn)gOc&$boUXdTsWkVpp^8nPI3 zZ%7gl`!z{wR!1qj0Y6j6uBG%|ZHh1TDXy774-;|EMyY5;VC+z{quz(J$)XT~L&PH) zjR`;ljzq|_;gf}6RWc{mXH#U`IVQA=%6fDm0`V*0JZV(x1;jLmT5alK-dHVS<2OwT z2Svlg$GK#T4E#n1G*d>@n(Fpd*U|jdix3Ebf@}+vogIWrg9cN*w3~rP6{;Y~@R2q* z@Qi9rzSPrvy@Mb~eMjAX?0?ZY?INw3pk|ub8z@Wi1EEK@PuEBiX z49`%QG(JC_6ZI4Zg>$lv-#A7LjO$gx(q-n*xUp0E{$YRaD zdMnODxPM~wg+gSyA&P;RlR--}|4_s0rmxDJb(O3t$84+XCn9Mk; zOr>5--cZL7Y_-Kjc$W_cYcqG!i1>N}l8iiqb=IsrK%gjTvWrCb9NhRW`=ptU7A)H$ zOtn_+t{8@*>ClrZ`=Jw~VnYL+aQR2({Px#w+z4gz9 zr(gana_Rl*b6 zEwTN0_wy<2JUFH{1)|gl+^d4Xyeb1}?SX6zb+_DG{`1%QSBBa*^zN7lpyA=onrWHm z+V|9Fjx5c5WjXg&fh7>C*b5AF;c#h3z2T{~>G#8WTg}yrf7U$p<(E~(4?kb_!N*I2 z2VX9+FOHo1`^3i=79F}DdFJ60A07CkWdH1QH!GhzzWdaMm*@B<6dz&Bj zyua^W_uh>=-d%hpyr_O!)2HUI`a`?<*`CR>R=}U<5`l0Hho(4eKs^O1y|r-p_>N+l zAB|2T=He|sHV`EssR1fbVa%~7%DB8qrhK4Qn)NJ7BI3gpa!f^0Tb>{+>L8H~hGoW) zMVm`e;;Zzj8Wa)c*TKyxO70aBO1A^zWk=mEqbvps*?3y!Y>($9uR6OxPs9gGwtUlPN{;j*g&f?j*nCG)EBjHJdq$42LYAl(wqh=qDJQB)x7LrL!zWv^VyC1`+t^> zxV~%ociWg2F>t(zIuba~}Jh3a>Iyvp~dr8C0Z+!AyR$HyjATv904$G06Gc@&B z@v@BG77CA5Z>z1CIp>Q3@d<|xuixFeb=t7HK7FQfZ$Ww0v}P&xSiOshMgH~YWh zWX1Nxbu~p(Vs){Ju?kHtlaVW$JVp21l;!kV#>HJw?@Bc$I+T-_r&On}75}n)P&(mh z2JC2Mx~`h8M~X7u1hyJPGl!jFxJ5Pe2a4nxVvPi=28D|f;)xoUjHS}bFMep`CV3d) zx(SdIO_*N^2vBC)iCaDacN8wQFFvf*+Ng`Ue%9jBSV+({~dv)2Q&9p{>HYgpB*sQ@~hM4|}F?4;F&g&sy zl2&8irZPFG2nC->Qml$cI46nLC4Xjzt7a&(l52&hL{>0!Am1jRZ0*a=r2FUT4J7F5 z!L+)TOk@7?6}LPHIZ_(Jpwk-+v>T2P0iH5$D)0kW+3i7G1>J^9NNzlY5n}n+>>+bz zK!{e`)#1*RSyg%i5t2E?0S#jzWY*Pcq0WPBjjv9Kk~>C~Byk`UGk-&m((J58NC2%b z0{lcHCKhA_PewsoWD;EMoNb$h*~KZfE81aGBN-xv78=S#@I*Tfg}fe8NJ#iq6V9{n zZn@wRaqTZK@!j<>D0m5u85Z~0dLy^O83e7eQsQgVVhs~cL4R~4&Q zw1Cwo5%8SH9xFhNg4zy032OBOVjb{qh}v2BAkDyA`-H}?b-@G16|*8rX+>Ti*R%?! z4u69#DM-U;=0X=U)CbyzaSp*aWZVHPrHt!^G?N9Uh6n!_mvze&q_yj~hFu22rnE>PQkXEP$2>-b~zWPacR6`x2w8JPknhac4#0&WAxO(ha2rlb6GBDa} z;j9m^z(6?c4qsh-Iu*d=gr~oM-?5GWT+r~+urXj~KgsYl9=6`V!2-UrF*Sk}J0IW# zIGy0FR;Y*uU;99ZE51Y*!WP?%Qc7@`Sptt{*pj504iCt&QRD>NPy$6wf!siF7HE)! z!{q>09UYI%hWye=yW_S?Ql2;=RLJ#aH+EcJ!@0b>k5*1rk4}2|(W6WIZ)iW-j}^?_!6)zB z{%(KUH{Z>jaqqWh7k$z4qBJQ{Bhk=iyd7xnASB@G@uXkx|8M;0X>XnXcFG)cbKZ=q zQ}6%#>_4ZTdfa<=|CBAeA&C-Z1hC}&EVgcq`-i|s(sStX#nrQSM!x^g_tSc&9${%dnrA0S4Dz9-l~(L1QO$1fsMRvFhwI-eIeYc& z_3Qf&jzm1`>CrPr-h7npc74`jVmy@;EZ+FhTxRlt?A3W0#r8hXcXv!Ip1Y%bTLP!! z_HI{=P*~(r}j70|X`TsYd08xyI(@o$lgI`}wwcTF0 z%^pyPa!4!I&H~(%&|rRqt)4PWB|5CEVj z%rCZR-W+2Q;&rX=fjE+&AS#3sSbCf)3BCt}O;w}fQ`Y>lZ5fSe=jP{Hud9CidU%(g zbaL5tHwmY~Osj0Cr_Qd!M5Q39e3tnCULK_)qrHU%o`Zn=B{L}b1m6ZMgcfHt))-*` zK(63fiDE86m~li=E@H{2fEp@%aIhhL#k0vQ8p|U&#L@YLfxz+J&PC{Fr!T(o z`NBggck$f9{BRO$$9~V&@7J((@$8Z(8muT`#L9`EZk!mb?X20&6gQqYR?y56R}-;L zl3P$l4|q?ROr3&lIyfBwXTj37)zR@?ZQzASYEmTC%3iK8yXapAbL zZN~>qQ@(0knnCFFX||yoI?4-MCuZqitO;0KwaZ6s;>HP5Hr?EJH~7!P{Kb3LFPP(L z=rr}4EVmTo^R7hk_aFapXUw;4{_zL)2og7GwDD^v(OOO8_G33s9X|MA`o4wp{aop; z+qaKwpL)CH`6qTvY~VOD`I|ktBA!cOrDS}PZPh(>debYt*6c!e-TlCUCC#G>zWA;= zEv;*zuF49u`kclexU;vBB6ixKHO84kZyaW`N0Ma5C#)uY5SOMps; zT?3x(ad?IzIEB=+CWM`V+?EkLeR6wSw>rt8Xlt*xIuQv~6L5e5Wao}Im^he8&;Z8+ zW*cM|JR+SmVU6nz(R1qSGQU{fM+Z_h3O4TmUNk^n35$|2-m9wLc>DAzWEGNw`<+U+fxpod@_KwtZ{SKiZMpgS+IHsvBKFg0xG zu)9TtKr3O*NrH=Glez1&7+-XY5Konc#S)U|i{VAFun2@}2<(R>5qgXf$D4)quF2fqHBpPZKmLEKZ-O#4j?KketN>OW0v=6%tpn zjn-*V+R+;Hld@z0heM>KwhsTLI^;D-u`ou!=~%hC74Y#^622R!5KLqIjIpa@mZvE2 zNqI^ntEJCudP-a~OrYj@M;)KHEmeJdo^j;*0;NrCgKw9CJf3OqKD;#kS2!l(%Mni7U&@Ht4AvWNUPEi zL34sfKnb$}%ckROn42(g@IWP)iecUca1?eRVqP-hPjciHqcPjnenRCLI|&e@EMbS% zq>RwM1cgDU_op^P)B=S**_jHb+m-kDECcookp!hqtW%?N-QVs~TDmI$B9riaPqWql zkE;)c7@4Xhh_#3+$RbLI9vN4bq*r-qCAFDIsjoh46jOzi=~MH;zFS&g~T5zQOaxLNHj?8Bj6y!>@P5Zw-e7p z?FGq^fJIT&Sf0$~QdTZa_ZR&TFg2T0sHE{_`fNQIg>9Y~b#$bbTBT9qXR@=?FZA1W zH;y&V*_w>jG@1CPYc&uu`NHZaa#4S_3t?VZzZ;>jJm$(9%8c z{YloggCF-o^}<6vZhr>|U*rLQj^L8#1syem9SgPhJsX8BFQ6gfSzb zi1_USgCCZ^H~JC0qsk_eQfXfebF`~=738y_b8 zo#J7+8NpW@@4uq!w;x-yBo*cYZ)_p5HSoQY#3i-S*td^=K{7lkmV-)>IJUmmE<)O73*0-j*-xX~huf)bQw0Jd) z%_SnnAGLS>6jo$%_%gw<5A`vHeD97t+Yt&eLD%Z9Bit~lZ7b- zKM}^|?*^?iPI}C~mm<;ko10DK=*o z2-g)i&feli7M*9h=$8zsvCA6@w{sJ}`rq#*|FYXGQ$Kp{=}$Hq3a2%7kDaoqGkaUy z<##7mtXr6)?)`4t(xq1lK3%-axtlFej=5+UI%VAL58J-@VEQix&gdSB%i5%4j7{^q z7{`-u&3|wt?$E*)+E%1brY2OjtzWF2m63HbZu*{O`}WM=!tr<+IGd zGY@Ya`{VCzecuhKwB6Lc+yC3oyH#7rl||LA@_cd8mPsXyXoBnmTBOrz4DW7z^{>w+ zSl$pM9Fp9uzyHFygz-xk_>WZ{J+`}L(KNg_4HVqtE7#-{-#F|SD%SCxQjfS8pY=J~ zF45$bE2p$(XnB}0Ec{J1MW+`_(hb3*ojY^ubp}~%5%a~QfqOpVO&C#>sKTWi?IL_u zm^wvawkF#+rtvckNSP%|1$b`6AUJ7bcbE4n!mX7v1q5)$CPZ=IbjngERd9J+VOI%M z5G07Wt(j(L0ERIO3C;yvAVG{(kO>YyR)UnEOOMxTxrNX(d8;19Wb26^h{FS81`{13 zbZ?klDA#2(ZHX))q=%9zq#*rrnt=Ze)f8Pa`*`UvENGixmm6vP=s8z$Iy$Gtp!d zh^f-$YpMwXOo4QwzqQ4RwoZSmY7N+$Tj6CiM7n;#gr4u%YN-$=`;@yPr z2)khoo>WQeYOsrjCgC-VgTbyNVB zTcPRBY&qz`Lf8OS3KyOCDp(qPW;K>$gUiwae2SAt*z&RS9>1V*KfHb?6~Af#@!|5& zdWJkIje0YdXvFAho14^V{ zA3L9GYE~0sgEwj=i+-7)Z#Lkw9YCbSO9HLW02xp8tTHHJ2Xtzq$YVwddY^m_7R2%fl~?Z5b0u`@E^&z%?*tCyhep z3bffUL{V(O^nB)KLriI8+8uY#{XfoLdGOEWjF11kIIilw_24469TN{!_%>~A30wUI z-8@xD?e!Qvt)7l04=x-$H0Q1B2bz))P;v|X)4<%T0Gt%}35O!%1M_G1ZodB4nM>vu z2iLef*rvG9YoE=N3quZqi!9yqStd_!Llc&ouDUgO+R62Bw?+MW*pADb3ZHA@dAOLN zN=h}1)q}T36*Qo3ykJm|$eU#n)c5TRmo(pg^Y8oLKJJ;j`21VvHoj2ipLTRjyc00t zMsW3wM38j}gCkN`u4-wC8lW3_`DL?Uje+N$lB(zlVIqWkN4nL?O~Mr`(;9^_6k2d0nvYL&pV_!VlJMJpfk7Lq?7C z0ipz6J~W@hgNJ(tKf@*;k+3M^)U;Jwb~dfu`9gfQ6@K$j_q@+L2DOQl$;n^f1O4Lu z{U=71=8hh|HP`aAbLEWRRvdZw$sgw)U(tmU=3P3t`2Ba6ey*>jGr!yZ`x$?Ek-k{n zVLx_r_`zG_cYgcFwP*f$Sp4R}t1~k$&ODX>!I&}9J-PW%evzkh?fY0^q&=(#K6l(R zo~{XiZWTaFdRZDtHF6zxZ2e2TZ*L`Ee0Y;6d6o5MJY(mzzQ0E808f*t7e7tiEC?S zeRO<}t6IbwlyW}unuIY-?8NP9;#t;B+e-KFaCaUH0%!+>p?XUh`LXa&IZO+?5k?Z>04VFD+T} z;%;@nM4JBF*C!u-y>NP^LF>|-S-9X-$<_ayd$i^ES4S_oUY2X?dDrmY{}z2wFw#7* ztYW%#Mx^`H=ponR56ypP;W&5d)5S|i4T&iB8Z*x=zVPrt-`ni!wC1iFA~DTwky<7e zCM)W1`VZU<9=ZRv$s#=sMm&xdPLWqTH;rL`y|&NtRSO66BX)GS(z%!H>dX3;h|opCK`*h)`|#y@a@ zfu@YI?UN=vJ4+kCPRGwveZJw9PVV zL=v}b)^I=)5Y&|tI>ai8RGhLzo0c~}4bLb5b4>(xl4!znddj0E1d0HRYn^!S7*I?C zUI9==u1+?d?wgLB?>=1%+0J31INWz+lYZr35gh?(i1@s+2-XR-7 z%A-+3CLjrzz;8kHT)^y9@uHqZ01?WOr$^C{RfY{JscYoz*$u!Kg{V+~HsD95>b&-jtgT=onqUfda~m<-sEFlU63+oRLHdCB<)QvP)s4T6gdj$S zi7vVbsz52)n0bzXSmNcz~UZ_9>R*?v2huTc6k6e%0fB9&FDx$FCQdFLMZfhBA9LR z$odc&Vr&r1c+pN%r`E%hadSvStQ6hgVTT*s?XG%~%qGOaMQM69UqVdv=Mt2N$Q5p> zNipuMPEqLA=sws&z`Ye|Y^|8p(NqcDQc)riyEIXA12TyrF|bfNcoop)NqORhCghQ> z#BwMyBs6)n*bbpHmGA~aSW-hr#oGndlNMZ`%B2C%c!Kmp?S#;aq?n+ji^atr&Th)F zL~X&y*##Nch4(iO3?D%k!$q7#9AHTfHbM%YCIlB8K0Bn6L>q&SkOa_>jx`NStS zm%?6IVs<&!AaD|g5e)CE?byh2aYuk>_GlF#6mj6Hwh;NzJ|9j4ll3I@Th^H^Ow)Lc(E{4# zx$qRhmzISaVY0$$%g0VQdSs8$HF_lFgFtq~Qvwtcp+x6+BTwmL+JWUn#J>ZBs7j~C zXBpe#5|i0UD$!Z&Bxhg!vvI)1d#AtM`J75E;nv!*GmJ+b5>M62#>{Si)Yy%`jW){z z*-GhC?&^T#YI z_dh@Hc>TeS8ISi|{rQS-v2a!9%ktQ0-6OI3xa;THr_QC5D-N5+d-v@r`{=~BVV8ZA z4M)GZ^um(A-`uz`^3r=hz5L>jy`3l8TPluH5I8)Xa>n~87I<4hoWduEDkUT`nN_1+6x-hb*O{<`=z*?-?XQ%S zSlXacLfRz9r@z{BrgrYUrGF*d{b%dAgZDFE@BeV;{+qL>XSm88`wJv0G+N`!pfM~M zWTn1PRdkC^aFu3sMP?bU$C_oDLOF`432!Dp02TvOUPfwx`iqY_s17FE=+cm%u>)h7 z6xIX!Ad_hz26;i0cw)lZ`sFB(LiiaxFa;v`$QL5Q8>OzYS+61cNje3Fu%5+H&z%a-y{6*eHV- zS#jhQV6~~pr!_QGEG#EgUXkB*d}OyI!nP3lAc8b#9zbXZx8L!M)ty4voLaWMF396P;tC@kLP@~TNqt78Dnvt8z?+qCMw~^h!%~>Q zvR>z5TrTZE0`->o^NaxQ1O$yOBXami=SZE{B9)nsjqJ~`N@3PJ`1;FzR)K_rolbj8 z$mr$iiqiAe)Bqb#)%I8;xT6Y+)~mWwx9b6M@8j9B+js40C=~m$j57`sSUhO({YT^9#pRbLqDST?n zm(631moh#xB#Ub$86OsXI<;(+@ueFnPyY7Vl9#8ZIkXkySB&&Ziu>pLziGa?f55!r zgDZZ0+kf?Q|GT5so+(*ioA~^5UoO~Rc5(QQUB-;z)vAo{)pocITH_nE`zGGH{q&9% z`6p&>&pqET@`dBGH#RIDJmm4?Q@{8#o;~_WkSRAg@?8~Y&DT309$NOqM54W@a^ zI17$&=L9-g-UDQ&0VBoWSe3$bp?O|vnQqsJ1BH8XGlxysDlD3D2J+d?&*JiOmKU9V z>aAC%Pgp=oipNb&w_*5@)foYaaY<06s+N*&ZMq^07du(@>y|5H=yxONjL_Uprlh17Lbl@f6r*lu{fW zuV0cZ7w}x2JV07hNmsJT5|cp8AcQ3Y=#2^J^`_kMt*I(R?9H&Px&M!&^N(w)-v9VH z}F7FFhI=+a)c zi?RUV!M zWgyT*a?5L_6ivjd@^oChS0qScFl4sfaT4wgIaWPfPr3yOZL#5VWtdF9A#1QiT`H3Z zcJWEJ6~Pf3bZr7uX9?F2*#=Hv7v|*vFxOF==qKE;`QTFY|5^r*<%cGu9!<_6ZouL~ z`-Xr=wySKOJOVewBtorokN^z!gp0`DBnvwGf@K7X#Wr$^KVRPn^UZ+hCi@>NESjf)O z!6p-?u2jKCW5H!ZBhsLJi#9TY8WerdlroabU3eAS0|a{A#?!CKYF#0mJIt^q+Y`rt2jW4@fzC~^e0WAX;Oyqf?+!tD^W0L~n1DQ9_*xaG46B>qt|h6Udt{^-h2 zL7;qDpo>7siAc#JtjgZ$4JsmCcou7Ij^2|_wBuxR3C>2r&;ef@rbE7^s?EcJ7njch zVKu*5pG9gD%=+M~$pn^?y$+rvBZp<;2I}#fK@%fk43djX(!NV)h3GGL;q(oOx4e!z1ta= zkq_`up%4so!p+!fTC|^a*582PPMldFl`#WaNVCGb=>R;R5Bg zMUUrf&>#K!>bwuH&l@?u{`!^iJAQbl$!MCum+V$jy`_gw6F%YKa&F(LgL zEIEW))5{LKqO`QZV`6mh+Cz}Gbnv27G-Jv7?DBWXJJ$W%@bppqbIaECeE7+_|MWe4 z|9!xkZ>E3Q*>>y65`zs$f zEVXwuNy~VUI`*OS#S-F1;fsjcXn>Myvo{O+y)o&3Ato$23v_V}%o~+uyM4t7UiYzklZP%5VGhGyeMH#~)Yxa&4W#VEBH^`G50-UMwMFCj`0> zs)hy*i;xhwRk%+riSX*-mPFV*oH7iQuoDx7L0l<`r7@l|#=&z#eT3_ASR+&vQ??UD zP9^3j{Ix3~sR-GKuA9g=2w(;4YH75f@^>nAQlMnajFydkY6Q>fFb814Q%&WuRlKxg0xc?nZKdEhsfGWdrw@hYwdycy6|!tY@ITs8HMA z{^Ihh^2h%gT;@N#?(&1*zv^OseDn5$W$V9k&y74|%a%2?#&@lMIlIPh{Y*+4$^tD3 z5SCqYF}0c}URb(#OtZoobN!F$Q{KvZ{^j*cUfpr6c~zWqPp@Y2x^_~Ym*;r1=|X>O zvIp5l z6qeS$Fri!kwy;fJmH&%IeS>DII-pXKjizxjFy!)mEes&hPj z#}Z=(l548^mT6-Y2Zxg?J$#mQPip*UX@@uG?>&^mvaTov;w_N_s;!^(_JG?OQ?R=p zuI{Yer@ZU_dv5xaPX-dqHQti#QEBv$+_@qwEVlo;d{9=< zU9s#8UMqFBp-Op@mn&%;BdMhwZ|B%Nzwi^t08NnTkX)D9-ZWrXm!Yg78^?s{Xfu|g zHJru}h-Xlph`sox>_(+d*`raQfl?f7Cy-Sxb`XQ`>fwX7({cjmp@QZP5(?!AqS8J< zv+!YHd)%&SvxKk19|z;&aw*9pf~x5yz5B||gDnY@`%3wOps6;8*=oMO7;a(sHT8w4 zH(VLX&`mmGl*3>`uERE@fes07<*J!t{i^yl7;tD7y@1!J`Q*{deoLg z+5l6H30=-jYByXsR4*<{gr$n16#ruIVnwc#=1z~0kv(hdkcB*dO+l10WKvrrb;@Q^6#x5IQMUv6##CSE@LBQ#I^bQR;TS zWtT_;dj@DP+yUED6fO=uglMV|yZz#N_};a^hJpE}s^A5&9mm+3pu`^T!JRxhTbm*n6-qN9Rq%y#h=6!K*&}q?)OBGj2Vbc>q_K4~Xez4Vp8ez< zc1fhnlMOq!K`0J3!5*$aip7?Q!J64sn|LiL!e8=IpishM#K8tX5C@;)C$;1(+$~(9 zbt=?nQUf6?+5zV^NpUY@NTk<7M57T4DHn?rOT>jc_l92ly&?AF-S0Q!Wn|vbM~s%7 zp*{>-Io!y6@dPP}z&2Jazq0yR+P=EnuFbzCcV=b!ShygD^suot^I{|7X0S$GHM6Fe z{`WR>!R$TZ+Ish@v0oqUTzh{<*VC(CJiTAF;HG}f^=+rpf2`5P`FsO{J)c(1>bi5G zYtq=YcNLwhK3IR(XKI`C=h}VS8e8?#r_cZO*9)t&snVcD*%j$FZBo zs_xxeF+&YG*^#4h@8+ypeQw-;uYK{swco0`x*lJM!}3nbbE}dpOazw2A;P@M=;aF` zHClM0J{0;8#i)qbq}pzg^D4e0Ce$obgLjs!j0oe4(Fjqm_+GpQJ+swgx%vfV` zWK1S)V~F@Dbw=6p-Ft@IP59pkyQke1;!c3;L70xC95bgy;8TbDSixoJ9tW|_O0Jlx zh2~1@4PED!17*N>vUWGWO})0|Oy{co=UAz>!UjjUxWLrXQ?Jm)8b=bQji330c|pON z3&#e|yg9!prnPq8o~)r;r|Ch^LG76#|7!avdG($jR$p$*KY!${8Nb!dz4+FuzrGmv z?$4p0mfZh$+tH(fJ-q92JtBLUvndW%Y+*W9G6-)Xwkt!21lXOv@E!zVLWH##vL~5wU9$q&+T=$jYhojapn_v z=wS@BP}tDQVUJ8e9tJ(Wem0s;_6BAdHctt**0&ybGcnHwCc6!8Pc0YUm9rXw9mGf? zkRyfR!44lTEKCxxE!-ZCz=GB946C9sT?ju83gIq zBzUV)Y#a8op_%IG&w&DdY46mO4U-tI1oZ-n%ezt{@VxXZ%3At|{W=sZrY-WKkQp%K{Km0!v)U z=||Sm-5N(w2$PUlpQ+o=d#;NA4LaTpYJ}h{Km8wZVqo6 za$Pug>G2Bv)R%8;Ke_0e1IJS@?e+y-&iT!i9XrPVRoa|GQ5Q7vWRC{KABnAs!%WRh znOo4iYVY^9jD4#gy53oE=xO5z?1Jy8DWOwqlDP^*QQRKEoMXHGc=Y>kE>lB&)8XMf zQ4WELQ|w_JEW>b;Lg;ImJn(GY77bbpKE^255+bw=vEXv2e5c6C{ z3&I40=T>$u8hg0*)@M(&AI_Qgni{?vR+h8HT=Vbkdw=`4sA2M`DW-_B+z?`ucW(2c z698MG+pNr3*6ygUSIuwfIpbLQGG0zF~VJ1-=Ow#b+4LMCV z#JJ&E-HMeGLl%$ro$9iv1T$DNxOa#!dJ)=EqNOg|XbNjD51|QkcS?}PD}~furWUDs z*)3?&MFysfSR94rHA+oo53)dgCCVHgwz`FU1(zCMoy|;+F_1Td3Ni9ou(B!6Dh;ii zXc}!TLD4j__mnY8qWAN40w;d0yy7ocb9Pd~9*ffF-RZ(zO=cTp2lk*G!XTYAIfH-J zh}^p&lodd@%Wa{EsTpO;b`o94h(idRq!GmNwKUgrbG@34avFphfgQ(i(}KD#3d;rK zs(Pftb%m@l6^GAWj_VGCehyn3M+4e#*;n@qvTl#DyUsT5#d4+qB=UQ&P4FQL%cB~(GI$7XEsX3(^R<)Tfg(`&FE zr@=-nvV#KYw3C=omB5Qi${-|wcMaPdD}n)U%@n}|566UETaSaDkt4vBRDm`uZ1YA< zJEJ*snJ2wR=Rw*_u7mvwgZkscDjnmBHpxIpb-$O*+7!l$uvtz(>Ec&VJT@33{XI8> zROoYEW+hFih2aFS=mANzRe3YtMi|FpRHki5vebZHD5F$F zl5SEBX>hcS#sI{@h3+<esfAg;_jEIizq|u zTs|#OM`BeMLN@0+aPe8vBX{^=803qsblmx=dgghk#u@!Bvd$Nj8xXsq; z9Gar}ECNnavj^HhTI!;mi-Nga;7;`u@j(MEK#J*^Yi;98$C7;)E;n=c2Pgi~N z)$hOlnrE_=gA5U4=?Db*n4csvNUg~7lzY$-pcCs&HuJQuLyzA4blAJ%bTV4$5Yuqf zJMjTcCw$=|R}}<7VLiZeN$#lTu*sblnEi2%Roe$%T;z{keQwf!fyEyloYI`)>h_&Et*Cl`Yu&pu zuK)7x%RlY^*NmzDm)hzJ|6cyyZ@>TeSHO?|{P|Jmn!9;rS*eLJcRQLb>N!B(q+1wl zht)CN>AonXz`f_z;)l6+)~#LrXh&Ce$I_C`O=I_JIX1bl)KT&8bFH^tJ?_i==IN5J zHzLT%cZYzja*$*95WY$|1$(6|z?n+u0CqE3!bnlD5;KT`zR?kgs&&Rhf^&q81Pm}L zG=)17ad0D6qNJ@hl_feKDl<7};r#JCzPhPeJa6mM8~Z={XXKOkhsVdHFhMms{ zd)9Dw^_y=Wznb^#j1fnP8N?W*t|H~^woulGk%-%udbVC|GD{S?~m)-7MNs;n}$V8)5&zp zXgNHXdzgGtDVi4q+%Cm}Arq`d31eiyERrBi0lus!T@9<{FdHx;iwd+kq0XVC^-(S> z!8HibE}RL38JO>3_{>N=Np%E;j}F2q=w<+`kC2YW-P-sX#)5Ytepa?TC_;{Rp>98D zjk0H>x4&ruoY>9q-6~F*F`&+)uwjqq6Jk4{1TEhwuTya)l0g^_xZqbH=&khGjJ4T* zmYwlf+7fJu;h4^S={hAnPKmP(7SJI0LWv2ZCQ&UGhrr{vcLP&gZnBXO%M<#rOXS$A z%%;h+hg{?K7Jt`A;0V0$~w#zfbJmY_}emSk^ z+&|SULBjc$RLi}N=ZUOeINDq~eiq;l9B#x!eug-7N5(eS?ATvTCqnl2hs3UVl4nY| zeL!e6lA^mi211&q|FGbr52wC+=!Z2wzxU`b*ZiCJ_vA`nR9yOf>hALwyjw1XKYC;7 zceloj+@=3a=~z{Dao45BgW2zNUO&9yzklVPO}X=aiC@l{IMBWGTfOM=xHW%&AjpjC ze(U?EU&%I&Z#-V2eUXlLS{zl$5GU0wPjHcVCPC@bS52tL6`_oa`tscXhK2MDQRH=t!I=x=Wdy zi!-FtNb<@C1bZz6J(+?BzL$*QMcpI#^Eeu*y~uHwQFETFXm%)j>W!_sooTi$q$CVh zrCM#+w$&qw?>ek4sz^UuTm8n7iqH0?MbFPTw{TwCMxijfD)ivm=j({p)sZ~Q-0zML zJ*YaiEsdM+Gae4qy*+zda@>;FFLt(_yfId6*xlKGKV-Z+#NA)63ggqL<7Gy7j$q=B1Ra)dSJFw{CITL9) zYEUi93#>KhZYzokfhUoapo0cg4pqn=XnP=myY4Mwlr167LC{1Qbcdkbj6o7tRKs_g z#oSntJUz;zrPxxUQ6tPrr3PAx_t))+tP6bwr3=6=scr@t5Tk>qmJ?ycV#01dB;S^d zjf|}dO%qY!*R9I*u#RjR}#`xzi zYM6K+dDKHChMeS$-x<+x0VK)ju&7ij50?^msN6XOkKc%f38%{d`S+)LEBY_V`Y>t1 zkxN1VPnwr^Gf4uRvHi%W333tI3>kovClA*d>1z3CHA<##M;Z&+R>#T72m<0>&2LGN zxS~l2djbMSJ5eJ-ik;6!BQ2p~rL$c!hfNk5)m@3jj;w6d5MvGGwgYHfHl%@z2ly2c zVUUnlIs~k{9RgkN3Bm{NH_n2jaKbAR&x)iasgblTl<_M@Gjk;J!;rA50E`&j3L!|J zWO*+JyHy_t_8AsR!7PM7yj?TvC2CPpwvrmh-Q8@lDCcklSEDj*oP8?Wl7Bz@JF@Yf zRy0IQYLW+x(%CV^Uox}RkO);hT$Tg{vV@j}ZITbF3rusQyNcn#N}w#o%7X~2TN{J^ z8nsT2Xzl2Zy$k{iAKM**^1-g5v%MF?4e-*0HG$%2Q1=3a82;0pZc*tzK9XhWcF@Y~ z%qY9kYY9mr0D&RPx@ozW9gv5+ma?>_V+&EQJ0v2dsIKL!;|Xh8zyleq=YCN+X*dK! z1+KSh*z6Ffw~bb;0LUnWXPUvfi|ui84&?}xy25Y;=NX|WkVpp!^fap|u zWZh4N|6KiKq~nc{8ej-P;m`rb5l*9-3_ZIjt55ggPc{YQievw?&>%_7p1ZVoZ?&z; zlQ*gkij_JDiDFlXr7F#ruIb6<*=iLfsaFOIN*l-Yok*_2BH~Hks~>t_eR}tcudZdz zG_8MfW8J$84u{zKk}rQy^62>P*k8?;|C8~;NBw1IYmblIxS{AYhD~zz__V1_O~*>s z|8?Wh$%kJ~zxvM8NB{f!?0f&|eE93rT?_si9RFwM@P(+-6(;3~?)0;rZ%Dgu+s3guncH&6FxL2SorU8b1jQceDtunFM!K# z4}p1CCuBhT;*aV_$Qd{gipZsIq>ODk_DkEBFW>vm*-!tn&s%@)LQ3N1+1)?<(7kf1 z$u!BWc<%CnPe9@zGz?%^gUg1Knr7Q5mRjA*3f41N$6&c^;L`w0n1&U)<*frnNp1le z(l>yX9$+!cy+l3Ci0&aa`3se!Nm6R`?=LBy8oIZz|K{n{BiTYf>q|w*w>PphUtX}! zj{pAg;o~plavH}?ZkpPu*lfslbK*fFs1tV9ZLI8=Jo!{{Bq~S-^GZ_V)U=&pQ5Mf= zK?W4~_Z0u%lc&d~TjNSxHlXNHcvl)a z9_V~SJGcLj`R(O|mfd^2F0vru(VgN5QPc3n z1Cr{oVPeHznq*;}B{D*?gfUzaj6?^DcJnBRCsa~ArN&rcf)}F)$=!1Jufa$&Www)y zKC{$vViY?tJX)IBW^W5Y_uv}^L$$MBPdGW;8lQPkw|7<#N7;*N9vY7U%acx5C_XV7goQ=UpEBfCj<8Pr|4r3ZWyX^ds4MKH@nNxf*a%R|X=3L> z26G@048W7R7tJsL9U~d5X|Gb@%p!uVAw4DTv8Reft;LN=RfxID@Eibyqm*bhYC=Pc zgC%6{@^TWvw}8O9Igz{=GYmg_&0?iOV+oad-~)+0sP)-WBeffOujHl8X}0lvZ*D#H z1MiA3D|(nB{s*i|!a)1B%c3+`a!z*=(2YkXTH=n5HjsEd+Fxa-?JCrLPcTlft;EaheH-@Z{Y(`GohzsLv)%g z^J3He#izpFd~ZVMp;PaFvia$`;{#I{PL0)fMGV$endI?s{G%KZx7`As0 zzgXT27pSe;tPSbKvm6-*tvunUY&Neh!8c4AHY=nWU72VkQS#-r`1q|1(RirN+JMw*XsCaw# zl`KtRZc1iO%i1pt4V}RS$6iCYm|HKJs;$}3Qk&x5RW)^}cirjzZR2Lx$9c!b{HqMz zHg&_jS^fhOqqYQX>QG`dKufTZXa2&j+GvN{J z#a+YI&BoO2rTYlcU^-eKI1;<#feX?i0WLO8OD)m9MPyx zX1i>T#1vfqp_TB0G-9RGik$~nna3_S2H1dIb$E-JG)o&7jdBFZ^|81)*N{PrQ^Vm7 zjFf$Upl3rVBc^)2;7K{mw%mG=Y!H?nAvSS}o^X0sGo@1S>RSX^`#nK{seGXtR)Af} zy-){$o&v(qNz`!FoaN0*O%E0hz*$+lX=?(A9Z+5X1Vz9Mq!daNDnUyLBBy(+5Ohk% z(JSK`?Tpf5lCCHZjPtNv@Lg&xTAqLvyOqmV^4X!nYwNSoMabCHXey^EAxq*qs)omX z6S`1Dw2eW3pw0toy@{vxy7{jJU^bV|TJxZ*PNq{DoR zWs#$Ndo@2Bn;l?9 zRP-AqmC3plGt0s(96@;$%;bQkh#eu#9Fmr3McDcY?XzfPl>zOQVs|Rp@q*YN&W>i6 z@f}`v1HMW&L~JWbke1RvE0q>&GD}TxA~F$}K}-cVzkrSwlC}|YC4M?rc{gpCMvCPb zD6eF}=-q2cAfUc;^9gvl2yvM`(V~L1BElCU%DQ#<+mW-8FSCJcp%W95FfdzWfEn3w z(PqYJbQTAoSqMe&dlZzqhYf?f99w)SzPg=ARinL_9Vqc!VZqg(%8?erau|y0G|FkA zDp9D7LK4V0HkoS{$ssw0@{Mg|aG+3K?-S~Fo`pJBF~^!qGg?BZhQ zhboTQJ~`v){nn)){rt|S|9$48C;xkK{o#vw;}66M#_T_TNPOy-AIhGdkS@5^{mEDB z*UCF~Z&_hmlJI6#oKVQs{akx+|IxA2);#eo{p$ADuO5H22`Rj9o;Wr%?^!|t%Syx}u;uSH!ludRSRK1ReP{E~k*@dKJ{?fJ_~perYbu@TLe1c@ zJ;&z0@O0%nFO4x&&(enqeR&$E7FSoB2fA1t(q3R^osAj3nWX*yf@92G>^`>^3wQ@i z3tBjLJxYp5&xRCe%IvA5jqp;2_oVykPW){m%1u%#FL&!uSYp#xe-!QbpZ)hUlkcx> zd*+?{;|~M{CG!lK7d~I%zV%}Gru+rc9yX8tK;~qi{?r>H5hS%SV>w!k0oafcT227% zAhda2UrH5e0(t;)ETSZel&U7h)(Es94Ar-oudjBx8_KoQW@j$$k3T$|9gr7q%n>~! zVrEyh&AwiHNB`Mn)A6Homj1Z?g*T6_KKtR~7w+8~KQ7^u&2YW1n{wckzOi+6D=A5< zjhpi1(5C}`o?PhOc6PJb-1PFAYbV+c=3gu~t{i)6#S-`7&eI)LDgn55Eh&Db>_8qQ3sdjghVeEp#l8txO5cxzh5&$nEon{e@pDI^4ImUATX2 z-|Nd}$H3HJ;ZI6CoIm5GNN?NkAKv?uqi>$NSAU@Ms}qJVy6%sJe)Pw?@4kG0|Kqoo zd~P`9UV1J*G}u_klBd(IYB;O#)wLS*kFhc_(UZU=DTO#Fq$~0@^y$M|H4Fj>=&Lje zofM!S&S-2z-K!RgIC5G!j%9Rt&76;#nWhEi3!v}>$h)rpb7f9N5 zG)v(GZwGlgITqFaaKv&XSYdfby&MjT72rmDw26_|;kJeJmU(A}$izh8Ae5Rilg>uD z%y1$Z3*lOPZ;~1{RO`li&#zl@y*8m5{Z9b@d)Q)LIKh&mNm~d}v6^=+$!eY@%vFAz z5n~+L)~6Igz8q`?ayDmdm`cDmXGIOT=0IgX%e3o zYHq)A{Ot>Zz^fiK3R7-E>v;X#+A~j9ez5pq>$mM6C2!d-eyF%Jd11xygyy?nynFF_ z>#E3+A5z{dnEl*_lHw(=)Q9}6+suA6=GioZK~&UVKL*1~+3pATgRl2h`6?)N@$(g% zqD%fvIT|-tQ^zfHffATwYt*D$GN^WC=cne>{ApV^<`3=p`snPIrjj2EpE>N(59 z#dC=mbq?Xf1x(%(gZU{ZPHl@52qw@1I(pmcD9r7$3dihBqVfc{9ti;)fs+*)qmacv zva>lV@XR7^rRlAI?Z|3vXev=h!iLBZEWB_secrL$4e^ia#vYhWDB6pEX{**|?(H5k zmO>rEwCK+#hHW{Nv&rD{j@^5~Q69pPx4143vJLka?^WjF+hFM>1%;ctrA~_jahFn$jh9!ivH$HyBL!967Bdwo8*qZI3Xo zj)>Lh{H2tH1Ur||3H>55GmL^QdwDfVGQ5^5LW&O-pv@tgmJkaMS#ak5R&RPwf(i+4 zG$(N22bA2JAfEC@*}PdJaW-PO&ckL&loX0p5R(;4`gP!=ag@mQSpsQgk`CR|jGYNg z5wOHcAv-`6%tR}MwnSg*D5?k}B)5!*^{ps?9V@ZoO&ZR6CYsjfM3EvMzgQfUP+^3A0&ToG&+{N6lPEp1g%M0RMBHynb$y*sbh%Q0lBIUbB!Xnk{=m2A}2 zn_Z+Ia=ll9Jr>MN0dYi;+KHOOyztU2__P&HnW0QbSVOZ$*m~(94VZ=~<1`{vgR5}_ zx-bk9zeY&nZl+aKC}GHE>7{xte!E}>u!I3R{pVnW3YAf=<#~d1+x*gkTS2d<=BW4Z zY02EQkg*hp$)e@y#rCAOqOK|1wKd+DnpDMrPbV}D_P7)CEG`rl*7%x5wsIwnH)O9b zuNRgi7DPh;2cVupKDSZ560UTZqrCL0MHy~WQW{N9OE*!!B&2M1X=s41rWm|%u245Q zB3OyOxNZf(^1v`y=1AQ3jJ(2=?yYbkAjg8AgBD|fkNQfZ7?9dv8!a>dx5@%%)gkgD zkc@7FWWEL}wl|v>?u2VYyNxQWfEN-(O?l8twzgT$dy zrGn`V{o$q>cQni)YQe^RPG0>Xqwl&Rs z_t3A49}b&lWbFbVeRJKtn;(CDsc-2!BbUF)kqV*oIjhVPzYhNxcJyIs?8gX*?pg$P zZB-#^&GfnOQTr5Zd2a8vT9$Dd(lj=6u-1!CV4a5}>r?cy(Zhy48oCK!raoh%`D}Y- zoO$eR)2fHwt$*B^_H=pTkMG|KDg5)#rDFx(7aUqSw$(k~{l`~7=B+-w{*BM^mz>9< zqcY+n#_jz*Ir~b-P&+=OTtZ8$)f&zy8%#;Vr)npm$d0}!uAIog_AKQ8`#9_Ft$wMg zBy(C*%IsEil6KJB>sC3#dT6TMRhnGd@v%O2BxS{u|MU#|e|`D=$CnrXI^+GPgC{rL zS+Ol3mxe~L_CeMVF&HOilbzWI`SQIXQD>!a1s$*eBbpJEQ3U#8*sJlFsQK{ zzp{h1*JB(x z11pa`+Fpzq4vq}g_@9=~8_sJs#C5B~N2wlG^Nm!j8`+ipxfaLKEM#w30WeM7%@PQ` z#3WXK9?RC9rwgmqh2Neau~N~PgW{N;I#28H!J^3`iM`Fd7e#SiUnTArW<0`6vMU`0 zyStfb(YY*FePqpLyBULcypT^;c$}YqaAZf_^_Gnsx@wMM`;6@2!Gy`xSvy$*wPsgG znA77PTDJcJjBZjJ3*4`yEoU}B(b~rAr;=m$RiJ7MRJNLKfX6lwwm@BQmRzLeScfzk zXIcj96?&`_IE5v1;(zO09eu31V0ZZWoiE(p_+)ebt}j+cM_~pJSFlhoL8V9#i-CbO z#6mgP`8`~k&xrbQZ^q(D4mwydqx4SSL=J{y9kV13FnJfH2_jM1LYo3c+qohCh`E_u zr)v5pk7!l?h=steWNRO)+LX|)jOb&QO{!r6XxRNtNaLkdrk^aC9ZxBN%K9)(eO~Xu;$3+u%rJj#VnowusL!!5$ zf=efp*PZ+ugcrQP>NJx=Q&ccrv!aZkGKii*-|7)rXj#?l(m++9I6y+w(EN;mltf>< zrV!O43G&A^CJ0Js57EfNdMZ+_qtGK}lv-3qjLsVT7Lr1c3ZE1yEc0O5k=Q1TmX4%v zQ(6+!SyD)=QWU6Js0bhz`Ro;GaAOKcS|CI!OtPY!kG)Q1KV_MAW+ftZHyW)Y25IE?3JctTEi`c#76bJvI|z zLzgReC&=KAbRb3(v1POysq9IIk7OZh$ud~Gd&7IecXrs|y%H;JDsUuhU}IRdSY)sR z(eG42C$cLxDlHW`M7XM3EeJbG34#a;QJe_pi8NhCUX)sBq14-$?)|CRLSB7VWkRqJ z+MTf`2AfKXxw1hfX9q_B(CfIe`tTqC6iK}dgVeWz@uE!DE6PX7htR?+hFecelxZW% z95%4B+`R1Al};~#OA~JL0N1f4^wBH?F^LC_Fs|^NBsdC5kQWfR15u-oD3Aq8f_p%yC;r>AKl}<76hXwu&SjUwkiP)UlJx$F-2PN6p1ST)UtwMXd(F5)~7qW z(=8BcRE_il7^pzj|bUCJDFs&t&h3`&O!~6+J z0x?x51^ls139kx*oFFn$?1-?6T$3kH6NH!)%B1K%go{X2mIF@DvROMwBqvZzv@!4C z=4BuF`k!7N|Bp%h!iD@ma3$2mQsi2(NjEx*2o$V`fPkE|w_@ACi%Ah1z6T)J3d>*_ z*nS+~aCB12i_-FsD}>Q3y=d~O-&1ggu3i-T`>y)D-aEww+M>2yxl7}7Pa0R%uDiW` z?l*s5{N$hOGyl5t;(HAjAMLr^+$YEyT6YUIWQV_wIM_Lmw#7pfPb2;AXnS&&?3uEv z7v3s(^P>T8=2zDyZdo~S|BqmKZO+WX+Cw852!+GNUCu(l4bM}Usx^9;%~+49IT0rg z?h4#*{;w{q%Nt&XoT-}t?K0XljE;H8zCIzzK^_^V zo&acJo^;@%<%AdQgt%YpWmsf@FOMq>VdRgdNXikSQPYNo#qH4BgC%kynyc09E&I%Q z*oA%g_r$+`x%bg)3;)@5@tt4C^Xm81Eo`ik>^<#{+>k%hBwO@w?T_b6o4k3PIZLWj zzpuXdt*a!`RO@9Z1ayE?ktbCq>ih(|4Br1~=Fz%o|LB8Hpg>iK?SnEQL6DL){&{Xv5WC|GE3cKaXB`x@2lrLTnoKS#;Er{noJp8iu32 zNJxpNkzJjQcZ)^uzPokt*|%~pbzSm*xTWFDS3hJ;sPDU>aA3uRe?@*OwU$3YdFuqz7e=hB%#`r>=D=diT z%YA#v@UQMaMn1gw{`a5PDI<1G*fJp|_I}j%ga=tdWBiEkZenwJi&C=F*2rX;d)5wB ziC_HTH{nNr|L^_vKmY5~H;(1U?9BK|p zfuGB=3oQJkmIQPls>U1wFfD?DTy8OgTY(Rl5i0>Q4|js}ZLs=yII~7dY5Cch2U&H% z$#Cpxbo~jh2C;dDz`u!%)g}+T2ok-=HrR1rLTrfL~a_|E;00f6~v%cT%Vexem{mz%} zA>nM4HCmWp-nPX_$bI`Q>XHofJcz}f^tyX>_F3XLuDiCk?&`eISd3j18dM$3mMBKT zDg#i(FwNLUaHcW&F{FuA6I0cfRrGC=m+eQW!LLv#w$^Wm)(Zo!bmSC7F(!F>d-aO` z`KyoL&-(CO*`iO5?EmJGG5@y+W>K?h13#$D7VCx#l!d@Ga$FlflQzr!`Y=jGIVcQQQuDot7iQ4a`v>g$-P+yJHY+vA_n;#%17k< z=UnanuMi(aAZHhA%;=*h4yugDB6PMwv%eHIasPl33q!mKXFdbx4w)O^P0mm_ObV* za*yrY(6ux8V)LORZ*0j3Ij`pM-S%1RK4pO*TnF!z2Zn<|wp}9(NGb-OjZtV6EG*gJ z?=cd=c8@L~ygfu11h)bz1JL>-#@53s02X=2NtE1JLU0}hqct%qq4H0zwK|baW{VlU znCk?6st--*fYitV1c1djTsO$EbgW#x^taa=9^RVv!aT1c3eKWniGTi8z9Jn*7kb86 zGNwjBxM%6?@JdG8cwU`@XN;0nD|%UlIz5t0I0l0yS)9G)WB_})TIWcF-^D<&9iDCd zCN8uL9Aa1+gOjWj>3M>d#5|qNY?JZSoYDGedHkTe+n0Tns;5W|!I{OO)lL+G$M)7a z5~8Y+>lp=JVxeV1XQDV5|J6Fnmj{U+Jsu&Df@H(tFicw|syvR#LwMUAMe;F}W%L;# zSg6eP3WKz%d>WYsM8tIV1Y4Dgg?b>+j{vk0EA`e8eh;TmqbK^|trrET-K5f?5YDT3 z2H|xuwg~sLx;}=(m}Ha%L1O&DkU%7~iXWI2Nh8RoY4_;L0-*!w{Cq;erb98r3Q%;Q z2ZN>MOD%LMx<3B#yu_G$;ikw_#CjzrKyV-Vv-$FU@FLTnkR7F8Ij`%MDL;{2gEg(BZWA25ICcpfh;ceI!U5w-7RK0a99I6Awl)9H6}xiE@z?3 z!{!Zukh<#xhvy(zJb=!DEdp3Yuf;nPJ1-^T>e$@D0gRIlrx(VN={3L|vv|(6;Q);( z(QXh>Cl?VC1Bj{Jnj~E=5f15#M2#UHdivu)*u!W_86>G7zUQH198@WpiP77+=;OuZ z?F3Ti5#>i@9$XsBcn}VxMn(gUmNE|1Z}`5z%ka~Lf!AKuhA4pu!X9COn8(C&M#*1Q zfO%L+`+ExMj=nsIHB^%DN-9Fi96RO3YZX^YlE)!HxwQYZ5HqqJ^bhbo9DM5RA_gQZ z7*olJt0!8idWVm&biHrJt;##BkGjBqa+M1lD0Yqap5higP=5U;a5Z&O8U0JkH)pSkH0=Q_n+Hazg*m) z_6ET*CLP`5Z#|n|@5Umb*ze6Q3t{bT!!ZU60$YMkZE|m$+2n6UlFzIOc33p|bue?s zR}qwZa&%zazTC7Qe;@d<dBSIVu8;)@0lHu*U(wp9q z*&9O_uI;$n>OOk3JGo(%eDjd&-L~iN-+Z$uziWT^qE!is&bECI*S`2;+=mBmv;6h- z3E+Lsa#ODbK{G`N$#vPQ4U$ZseQ@n@Rny*kSyUb0Du`xvb>`0-5j-Ay=278mUwkqA z%e&!4M|UjgHYNyi7tLL84%?qHO1Z@`)H5kadxk1!T-y$uUy`zB;Uh4~pES+<;K`Dy z%f|b+jT8vgG-|j#^A`mudN_@_=1tw1ePHv^xaZ(m-De zAPZDoxd}HJ^e4eXDGwt28rJm=O3227UyE1_y;ooX(b6)z*NuysbTq)z>qhgE2OlTA zdA+bX&dZBi3rqKh*MF}Te^FNt#?)9X?IW*x>Xwnt&8>!d37f2#-d%bmW&#u!h-rp_mIS4 zw`2EJU1T@2TuTofxaPx6lWRM|VX$N%Z5 zdge|4r@odt+XWA8(O@mm3xpcCa&ahP5-rNtYAjJb{5K{JPxrkt^uyKnI<`Mbx>&Lh zMR76RU}j%m1i(G2ahp;u%<6jFv;5F+v-cdWT=P4B#l8nSmrk2AQR<~pA;L1~Wk$|b z*Wm1`?#S2LX1|q@-Y7C%N8km|qZRtLybjmdXDrGo#|+Uo z?JgBc;gm#AFaKsz=9IC~E^Af*PE)+7aKyb?>p%kExmcjc`=ukHZ0s)K?PItAY@acE zYF3P-c%PnP-=!RADC;8_Z*MjcBfwg(xKR=0A7fcGSdU4tcU*Z0Pz3;6%6r>GbT0GQ zb|*YA37vJcHN>*VqlVoyUDVLe1UT4`ak-LUyAUoq|MX1>D7yYuWH&KJVwi{;49VO` z9AK+d><7+}p+b<_QX~_%|5MuJ=vJ+!9D|uw-O43oyoTBR|(oy|| zhGmK)gW6DfYB$kj$Ln*R_SXGZsMnccXfFrPlfW?V%Azfz(?JiRLN~DSKow&k? zBppLUP_$8Q7bHxNPGl<{?k_$-rzWimO`SbT5l=V5OE@OK$S zD8g~2OXwrPh*RfARtl-OFek;TSWfh!z@(T=vINpxKQ0j*OfDWZ?tpd@zfe+$qq2pM zpIE^uy!5IN>3={HeClQLk}fD`I|&crP&-|YFdJ>IMS8qBZ>=CnqorK z;p+5ey?yr5tVJ0G$D$Q1Ps`lmy(n?e7)^LI*|5c%OsOB<>@-99A{+ZVgS|| zqr?wNl~aYGXVgiEO(elm(qN=-z)BbnHVV}?-A*38d|yksotLDedM$kP1Ty5d#cj-W z2NJ1Tp9b%7Rv8g5`uL}^x9)Bk|Ifv5rfklCG9eh*jMJ--^}q!h$=SOd=E9BZFK8n_ zt~)4+GJ;`iw(*H@h@;qv^Bm1u!JfRff=`}#=9MA2dEU4c2i`xOuz1}20}q~Q`r-JZ z#n*i|KWN)_R`K(iAGYRx{@QHb$9GL1o>=(wfByUb+db{<^FI!c+n}1@3_IPm{<{Z1 zKfUq74>w-@=SkI%ch7q_J@@BWfAaHdSG~2#6Ejqd?k;dab|v?p@0cFREaC2aW1}ej zyT6`@$36V+;*O*Di^fdaG2`7k_g?*@VcL$rUVQG%%jK6gjXZvs_F}{N+&OJc^x0L9H@MDVjFq5RS zA(E*$9I$-O#^6n6i{=g@qdSY-<={C9zXfI*>9DY*6k3pVHUb<5?0M1J;{avKW`-w+ zMY&~xx=ElkGI(`3J$%QIYlr#M$gX++)J%JNcksW*x2``iW%c3T*BwZMR-e6nRsHpK zZy)~l{LPymtXlQM<26g>wyHJ`KHgIs*Ew!n!YMsvi&lb-p!4V!vnt6NcL=M->x1?H z%yU=7aAjLtlN+(swK0ANmVz38jM=ZC8Ae>IwuJWgC|P;Usrx(62?f#e|At)L@zu{e z{v2sD+&O=HaL?u3?@Y(Ho&OB3?#VyZg1gQluzOja`Q`rl#L3SFZ5vqhW_+4^_peLu zzQ(tst+4XZ5`XA`tF_|xq>@vKWd1g_;={pN|7oP4q`PHWh84EsBQ_k7jO~VDO zF_}R%bKR!bC$L`p_|}WMK zxUp!Pn4krN#SOPw6A20$YzP!Z)VhGUR1J$!v9=-F2;x$~B^a$+)mpc=b!)Y@-{pHx z-*c*`O);6wJpcRL`@2y*L6(|jiYgf$wS3Iqir41Lua^HgJ8R58uDiACn^tX_8MP@p zIqE0hEJ9XI3#dpxZ*y?#!K$B6y?e}0-Wz%{F6!!CX=?qjzT7;}1uAi$Ca^a!5g}v@ zqaDa6;CKRK)SQ5%OCa4YKLPf&23wRE?n|qK zh_8@aIVO-Yu_p6!Gd%E6#Yh2)lw5@O;B_pgaYh4JLPmK_cW1iK)RlysS-$1Ue7xw4Z>_`qT6>Y6q!;I&slF}9oNlNeGQz8=P z(Gm#?E7@fDR)#DKRR*f8^rUq};Lc}@&P9xQBW|AX@#jTP{%GAa@^hC(kVVPw_rSz! zj)q_ttyF_9ZDP2Jj5>#E0rSxwJw1+vZ2%bBPzhx4^q!8q5YfHn&hbER;W+;q?xU_wKp+ulp*v{Bf)cqmX;pOzw*;}!byrOqlaeFG>n$ILSkg9vI|kQBBX z4)*0ZlEXU8Lbb9PrPI1%Gg<}gWQW~BGy$E`yN75hcNhvJTQcDb#FBtCMzh7(9?|Nv z?=Vg&+X+awOeBDukS<^*iy^E!fiOhPon*NT)y$bEamWazd^JuDKm)r)#Xtl*M0jC6 z9%hcZV@`mAgvBOvo4^PFxyYwN#@M!oc_jgNAku@x%nmW@X*G}u&~`BJV%LG6)I>@z zRLMjtpn32GW1r2f24LMpq^!F$E5_C)GV8Yp%w2VDb>)Dcb0op4iIBAe>AZzCh}a)h zsEx4PC!@}Wiq!ji_ZE_Y4P+vb^Vj24L~wjG1S~8PZ*eh(OoE)~vpV>4G9#izHl2tJ zb+L^kVC5i*Q!G$?K-bmcx>9oqiY3x2(Q?8y;3bGU0^e?QSYhL6@Xd6qQy_4+u^mdK zw;vz-Hry0|kW^4&P?R_c91{&@JexxT3fqelv-U?q&ERVZEB6f(SJHtstFa$aYcHLx zI-k@Wy{YqTY=>G3ca_YL7UbdQNjbzCOSjk`3W_K#mLpHm86?qm-}ZDl5xjIa55gT< z_xu>mdZ{5HhG3g;2a2+^iD=5C-;o`jQJP&Z$CgW=?@GQaDX)yn<3|D$Oim<+0HB}| zYjuxlWie3NB6HXZ#Ueh4UNg|7Njy$>iq$seRjUGPNXe1L7`WAaJxEP%ROYdvJ z$B(U_qTL0tPlbCY3p`2|6elvTm<+KMgxI1@aFM|n=8LEp)_kDxVR}WgoCQP#tnVQ7 zw%IWuIdR<;K*b6n1>mRyhunxX07fi`nvjjOW`iY~LfZm{DtEP`jtn6>L~_wyZ$R7a zjmJ`ZMNT0)ii=5Z6GErOpmL(4wA|zXFWV=ORuER~`#Y6xwh!uz5C&8e_!n-+nIt{< z{4-@>XaHWom=o|{;!=8mAR(>-+L8GAiEQNc??3wDs~5*S|IR!9C=y;)dx8kvpO_N~ zRQJGIb1VGfl9`=)?a3s!h}Fb(5p19%6oMThE>qYLzH)5+>kS)r-z!Y}@KDk7vW>_8 z{cHWr!hha$dpxzz4}2Uzrqka0%kTc2oxZL`n|yQ0)99~{K7IeQNA>^xJK?K^CqBKp zPv$FgEZ^M9KeF}4$~$+r{m*sizXe6DExYoTyJkK(_@l-*zS|F}8hi!w9_HoWm8PBi zb^G{5CE@Cu3m=p`fBpW)-!Crz`ycnYuaEwF`|B?s&pp&{$%UJ*t44kC_U)*7E3fw) z|8{=MlA)LK$3A+n{@P18U-Vk|K*M7bJap(DlFPZ2b4t ztBtFEUF`9A?&d2SoOa!yqS^BFW7+-s^x1#lz~8R>-#^=VSbxrW_|ky`*IvH6c=2NX zvCX^JcvagbD}#NDuGzipN^^xCZXUq-SodqXh_LSXwmglQv_vx=i``*pEI=Z}V3XtV zoWSSr*b^G;AL>0=Ogd#8>9ad+M`nyjYv|YS>sPP)p8xFV(Idx49h^2P<+I~GE|*@m zebjjtQ+iJPkBYgm`|RG_ z+BE~OoGfe^`*ddZ$)F88e?FIaRvW$ldHGk-&mKHKSd>$nv+`#Dd}-gw_Q)HGNe(~V z!bR(4o|vimNN1p{`jg4Ec>_=XdG&R{4X8~62c9@P?!93zODor|ottAfhXn70%*r!B zkVi{wZH+n$?k_dCuoD4qN@?-+>|34giOMv<9GPhy8fW=oM zO5Uqed4Tz9j118)91D9R$DE6RAQ9mJq!(TaQ&d+SX7-GVGx_@Fpyr{i?h?YnmEgw9=>pxT^ZFm$lTg?6CP zYBx`QXv>W(r0NE&tLs^Ct90KFU;nWFhhZx}OZMGf)A&*H1T`92{)M!;s}vZ#yRd9f=)+#q*?rb-|SZ?e+l~yQiPJ zqPNFJUD(+I&rY%<$(y5b*kiZW<(gun0=4`tkP)$=3bgcgwILj1wd8hIoNj$u&0qL< zcesWzd*y|A@J*{e7aQt3m?-O3vSZ58sWCm??{#Hk!DGZSW{4dE#>>g$%dbVX!4M~* zq;kt7%YdTAcWm!Z+ueJsD~lGCfyvA@K+=!ng7pFbzP(B?2=`5Sz6=dNd@aJyTExxU z6lGxH%P!2$;Ufyq7p2a!nc8G(Ta*I_cQucVgE-O7aq|sc_t#Zbi3nDcUb4Ahy&M)j ze`G{$Lc7mY_H4uC|Ln_Y9Q0e6xe7ZdL)!P)gkgGKP6MlBZ)g%dWnhf zAu#p8w@o707O_s69<(iN=frioLBySr98Ms@v|OhFcI;gu2ZvAD8ad()HF|4!1Uy5a zW1^t~EwyHvau8IAE>Oi!mq-wx6Z;4`AYCg_C35U+HEl4LkE8HKVuOgymV4WxMW>nt zmPT|=H6=9hrYjA20ZrsMwUT3N6V#L39&{gM5g;I1#NowYWyzszVqg1{ zD&tPqkz{&)h=FV!GKQ7StfCR6s6cnnqi4l zA`1~>17PErLd3HYG{Z??I4V9n$H^FjO`!w_4O%8-8Wlubv8vc1GSM<<$(ve^ew#>S z1UbTdU4%f-6%_YE3k+>8Uyr@1!t#(di_5(Lv~-H#-WP#j(dAC{EiU&eGkJ+1l@{&p zNQ%uvq9A5^9bq{;0H=M6NEk4FVb)Mr#_ zU9bk2LMwKsl#Sp>NJflfA(Ki0@z0o+Vro|rGMxPH_ei80dz6fYknTX)pe34(h(_t0 z{vzm)M-@bG+DhU9t((AWr&#L< zQ?Nv0;o&aH$ua0c5(vB`@XrbZMmbs}Cs4W!8D7b^N>tPzsT7|^wX%UQk}x*~+93Ir zKx~!v(y%EbDIp1X&lNIC_go&JaJkc;+ctiAdDOO7uXFGX$26)yQwXsCf23knR}|$J zx<dUDdQ7v?v1&kYEh z-??Q?UVcj=d(yt0SHhL;;s^ORUJd=>?V}Udza4%1)w93v{y1uxzE74~dSGJXl|CE4 z{Nu|fEBdY(`}f^J|NXHw=Zio2A?jkrCQW1tv-z_I{?^)b?DB^PvhRd9j(oOz{&H8r zoUM)SO-Ht5%MM+?`qd8$ZxpA`Skk%c)4UVcJ;#?`7_(&Tlc%0zBt9$>J zSdy=9JUHa=kl~`pb+NIrwZ5_>Dza>jRfiT1Vpr1#SJpntjq;?uY#jD_vsRXqWT2h# zJhnz3$)iBukkncbrIqt#-W9#=h&Te_d^=-y5o1?o>{r%!?!0+kNG?L>WtRgFN&_7 z`_3}?mcOf}S~+av{(Beq73I!d(Rkv-#jE*qQdsMkjeYdHZPTH(^98%B4;((bXgB^O zvHcB7TRC>|v}`+%$9#i};=UYu?v$^hT57BH#Q$T`fBs!{g?CqyH$u*p5Ja29vglA=GgC6K54yn zp*8Da%5;&baamYMNon|)gqy{lOKVpyTKah%e^ON%R2vgoOBb!&;WOvvGVQ|KGW*`# z=T!&Nw(Z{1x8Ic&8+YppbCM6<7}NRk=|}Ggg@Zo%VASH@U%dKbYxdjnpJwNr-C8qv z^A{N_%m_u46a2lyuN}>f{AbDQSF669_h9dXHT`qmc}~14PM^2nl~Y=~*zTpYX0P^( z*;v-uMR5c3t<0|3oKNeFoV5cp`KK zN=O`hvCLJ2ZYwN?UCx{Y6mr4{DvZcJXkNj+MbU0y2Yx z{rMT{Vg~`d3iM<$1?)os&SQYSAQ2@oj6+vLp|Xr8QZ(g9SsfxmvrUEAlawh=Fo3z- zo18(3Fn>Cc@e^Ac$tnZI5%$Fb7^g}KzyRJDh;@YT-A(&OOWU%)}g0HpmZ>NUrb0kFU2p-}u_BlE0{@R<@f4sCy_TiUlM@C)% z%SR*ub%hEM^V~^@A3^p{5%i$^v+4bI44Nz^K{oXLmSR@7GhN4J2Wk;GO;W>~#TV3C zxB=J})=Z{}z`XSx1s|Qs`}o=18sF|S7<(cC=o*!GzNLQ-2qhd38`6P=jYET#=!Dx- zp+u(A@7&WfX)9OF++z*l`%7Ie(257S6d)>#Eo7I;RA|lfCyTrTZ3#01*bbgIN6FN7 znk=+v+fR`G5Ja-{BAxRTvh>`^pt-m*!_rFEbjOWq!wv)sn~qGi5OzqfB$0zH>4Y@{ zVhqjph&TOOl+a;OWN@s%Zy&gON_HxTCvz@OJg|95q= zIrGINpU^$y{gmN)Ki-am;1hk5?f+8~!rwU}W1GS6J{;Y!s2LmmKng<6D9N51sVCJ& zUpoP{qAN*FGUkfZSr#%!eGtxB7PudQkT4=Ovi3YWqifjI$lCnJ;#bY!mx1xW!Sp3O2zt=-;^ep(e) zHn89sP?nu>O-2M4U{jC%&HNgmk*LJz`!P@oNdJ z!$8Ri%x*QNkt#o>MV4IgaP~-~ej1|d$lbfaD-RQT)1m$f#AxgCRM+yj*obscwQ-zu zECIfu&mBgk_giV2z^tcs!c;yVJ!NRf@ zuT3;$8rt9$jy)_d-G{rH(F+xdI3a?UQ3PpCpltmKjHcRc<7dp?)-eNRVmui_zS-9P zu=H9~+f>%2VV+H4BcVwvq2&C^^Bcm@h0c1e{6w;tIkffnf&AVv=K&GiInXKwjC)D{#mZr+}6piBk!c16-|( zF-8$)sT){n)WIhRJY_nEl8sVf*zjOGR9p1A95*IG+)mo9D2u_MU6)(?wkH54GNcNq z+P5P~&{{cIL8qWoN9-duO=hrRg_}*?75{|psV)pM`y$_4q{JKSQ~VvB;u4gh09&}7 zo@~8q3-Wp4gpfpHu0)xh3?U;q##zKyCDQ45x4;1@FP8-NxSjZ<=omvuVUPsxy2%1| z5%8(iHuRTa-7T~BVkdklNsqM)JSw5kgkRVswHb>RwY2^#9@e<{ch|j(GjnR2JM2*% zNS&~uAJcA;RtjpjV|GwZkOtH?YXKLmGaQ3dO@?6cNVv?Kf2i*_y}K;vixLw)`o21Upn65k+$z8NqWY?!jH+AS!YwkFOI=J_ zER%i?8b4ve1iyES`+fD(+<8kcm7I8&v5(}oiwd)up1v@5+M=Y+Y3=F|lHH?3m2^{R zj|@;?Lgh?C=u~gk-=zbEeGmy_kpdf_k@4`d(ZH{-In@-2c{os+(v*O$JxpK8w8_*c ziS)QlWDGIkqu{u-p^NP+@1}g+XT*Oue(9cfjW$a1ZWAgX&9&dX<86d8sDHGB^-q~Fl+0~z}j@1Ll+w`g|fqLd@Dz6Fnu$i97H8uXv*voSA! zEdvKB>&M^hUw_f;{$bw2=M|^zVORIQcsioe=0zq32?K*07LEES`fE?WIb)x{=y^6~ z@eKVZ&)!z|Tk&x1*$bat`#SqEmu64clXiZQzrJ{Bn8swx(|cdewyH$B9I-iV60^HH zs`-*lYA@l1M|Bt~&`@KmfPW>Dwi8N}ZxwL3NxhAK?TEs1bdee@0iQI3=cXL(=JEap zl!c%!A%a5()D=M8fZ>THwFFK&_7iS_r_x zomObks0{%(u$ts+{af@=q2I_tCyAzMb5iRUB?ICfB^6l!Y^_HpHx=mWgj~H+wb3( zAGnC>Gql)Ky27XUnok1y+W$yQKZtUSZ%4`@tFb6Gv)JMZOZt%QYj8~yJlcZ zq89_5FG5;AST}HQ)s$YBfAFaRdsSC8jpYuuv>gX>gvBhRl)_lbiBYuY(ePzQ==@12nuDSy#-tCl zYVWF_1ec^TLM>L`3We3w*genX3a1l9J$budRLy%>t()5uIVixOs%#2rJGTuBVr|1E z{zzXo#E(w?gt<#f_*L6Y{wCg@J*62t_itX3J!SFCqVY4Qa!M?6Lv$~Nh-*Ch84eoA z;piojKo2rbWQas7LOe>iIK`vnV{b9q=ap^H|=Z`x|F2S0$XrUQ~}zlM%Wq^+*ARgsMEj5fkf9}t z4=iXpKO~tk@kCmJ!h0u@-s1T&{@xV zY;61ny)da=?B2|yt(Qkoo^}m0mON-&7@M^_@T5);UCxU{7(NDMC&o-T?DK;nMI{77 z5|oN96c)EZ)JraX8>)r{wA?}5_hy-@h;}!`XoQPRv=WVueER?^6H&>W$~BVWQn{K{ z*R}yLTOk65<=%NF7B7z_CMR3nN!uL;vBM1v(x_;hzeZI^DqtD`6M^yoPz-7cjG;|f zlSv>)X}AH{T>_TIY4-Z%qtp-4eOEP`a^6g`jR6PXGt$P$qnIlD(8Fz}r+=y_Fa z1_B(u=$ zTgx3Tj?s+13ahj%0m3!7u439sgy?Xoaxgn0^2k+Jl&QDqCwtecwPFV@kU253uPcpw z{xm~$j6q77EJ1t`QWCZTM?mVDUt>sZO#SZ0@-(28%F)WhmanF9RVKD2iHsAIvG{tm1Iw?S=wd zsF6^~>L3ZOGX?$rChKAA%lyTuUsbOC^zH0n^E*SnxOQz@&A>5z@4B~4>zpNtpni=m z-&69HYu3R7zEQG0CqhOKUz7XYw2d3C9Qr4D*dJ|QyiNM{)%#-?9L+xe_N$=N*>6wm zI{C;x;@XUsM>Md2s4`LqE8_@ag|v93GKqQbnx8e)mY8pt~k-;-!y9t^9p= z_n?ET&W`(3e>nSt@A?k=U}o!sTX$}}cj1?nd9QytnexDO`QNyqe@G^+Pfn~VEe-!> z^-i|}B7-m{al_jOPd&$8Rc~DJ&4^FSCr=V#lX1|-Lz*Ge6%kR8#h5imu7*-59^hNsqcR zy~_oy%;PGW^_|5cp}kdnlfuZ$Fd>y8SN7<;*p>5S0*?N1P@U6h$y=Ld!9T1Kb-Pyw zO$xdHPQPNs!puVr5xa(T$45U8zgvH>^_P_w z{(b+!v*nc=S3JJIxM4$Bfxcj|@SQq)oPW;bz7HdW=O({bFt>Tt_4=nP{yX#I- zCqDhlgQySx?do^Kebe*FrEh=+N!(MlDL694_&#_jymg;XuFXbIZcLIAEfm@b6+bU; zug*H2pJPp6&(O7SBR_`>+%g%V9@i)MfH^QlJH0#_H{l)-Aj!PnHY z-6ChBn~T7WD+kbC)5MQW83d;cZM0kRNHcCc*BU191vf!QhD;Caw zGiBA64fD?K`gZ))@q7I=oRVY%HB#Z{M-AK>`u^I7O9R&|e<*!+-2L=ML7xdDKk5ny z5D-0Uz?u{rL;dWZ&%XF}(vcU3{&AQ0`KR@hx69fUoBf)&b@sV1-nsq@>& zk*Y&%p?mjV>j@X$upLS7Kr@Wts8el`UYH#TlxIyRS2r%ko?+tb+HPEPIdkrzj7!MpdE#Dw9V!4uNV6tKsU3V|(*ZkfB*4;RJwA$7tBLFN6mmLrO7Ila$v$rBSk!q|k`~m^?XDyB z$jw_HS5+vr+-i~(Y!QiVw)!}O!(fWi_*jmf?JG4nTnIjCOujK{AE^?q0MZDOIb20j zg5Be`o*h8R)egHKl@bG0tpru_sJ;~U1gIl%FTm@Nm{Rmc66@$5=_k5`6}Fd=|wWGblKrcX9u(Ffnww~^b%E7)6%5Us^ol&FFr1E|2_f)us5j?wwM zmC6`XshmQbLz%>gd)?KZ;E6Qf&1bS)3{QTBaJwlWH3<~aSsObRjZ5#sahWJf*d*D~ zWZ4rx8FF1;)|wVycKf2({^ni%27Uc7wSm+Pa=F?gV#Gc_aLO<|f_A;?r!R zSOOpu5Ko3JIGRZMPg7PS$J>pj9mk z5aP=&z=a9*QlTcX&FmGnNuklpm3b%2?5Bn&t$pH2Sv7vPxN`y})NHOoF>$qJ{hpmP z>6fV7DffM|fg!!U!ik0sT};$BsubAuCx>)L<*81}0GZ%6r79&-WV?1Mw zrYPWg5DMnu0AGC6Ngz$hV@zCLN%lT}Le1+Z(Hyj>5MBc61Ys(VB7nF*63K5YF@!yY z-PaALAZl6p%u?wcQ~>&QrI z%(aJ}x!vaX)y*Z#x_>vjAC7Qvo>eF*3lS<8sH-Rb8uI6mG^fW(&*=JxPdlO15=y&^jk*;B>&d`h*s1;J2vO z>H9nLbUdUONE}URHya2o8)+j^d@58?`h_L5S}TDo@U~SeJDib{wPoGEn_M{?roA3I z{q@Z3ZRIH&1LhxX{>{E*c8+lUwZ$4qY2kgTdCrBek8kXIo#zR# z`%QOK9bi2}%PX%Hd7rIHOFs|R<$)V3ZkDWC>eA?E z{CMnG)|hk2m7@=hJN?GZO@3)nC-Z_=R~LB~b804obZ1>Yq*d zby?K$tX2R1@%Pl5D#T^gp6`H6dKE`F1`tulAb z#dF&(>???rG)y|G$x+<;^_F^5*o8Oe&rxEc0}u>>3I-~%Pcc;Gb^xwWB@TsIf{(#i zPJk4Iz`P)EEvW5;AY~1a6M)1LU5yhd!R6Nh%eF%mIw;4M{!`5@_AbQ(KeJ4+IPP>>F`8`FeKi7%<8$a+!UElZH5=I-+ zlvWUa1aeRxe0oF};FDmJ;cpyS4r4tJQBg6C!&Q)%-hJFu`l_ve9e{lcYeL|;^E)-gO4jvbq+d{(IQDzdUM1jM54MR`Qmr^ z3#ToSJ$g0!mz6~yt=jwk@P;j@WbZu@E)dbyCs_~H{^I`epI!D37o}~zoZ98?EkhmJ zUmYk1dN4_idGpw}CFQoNA{-If8bZ_REPK*=V))a39IJ^B;5^|nw9N>^7Xw;E6b?89 zrHwEqHWdn8({|4CLCiBLM%|STVGa14UI#VS$QIh4GrxqenB*8*Q_mlNs%hi&oLR$d zcU$V_Q{eNDBlwI;DK06UsKkS1@Q#d2Q{Q~tn#|d`ho;2zEm|BRciY=^XW|npklg7? zEwZ1j3#}O$T2rG+IdZ=`zi4-Cful)3O2P~421N%TNr#9P78L@KJjBB;_EWf+ER>F7 z?PlY#1Et8#feW6PxRTd7{YT9V1D(uTi2Q`67QSclCCq_?xq;YH3kxO^Yh1rrJdM+eu}mKxy{# zH=^BUoIuf3B5K3cBDBeGRofdc>26yj6y=qaG5`2@}WZ|hCV}hKit%_!g3J6O_3u#iB0VhyGXAFZ8oSz5Vekh?3Nh$2VOwx@i zr3m-B*kgX9C$lL&DMEFmg>K@hpAIr&91=}rqSNZeUn@hGdajW|2?mP#M3rbmO;m#^ z=eVDx5J*Yy@oFG?xEO(bu_z=+U>tBgZc9@bAX~1EOXmbn6mjqlD)>r+obq!5>L*D+ zvzb7Hrf7JwT$Z8Wx`m^wy4#HDM$P3!=xKotcE^aJv2_!Jv_#jmYX)h%fGenNAuuCK zH->KPvFk(6C*1+75$cCj7ep#!00|Ik`9=UYL+g~Db_+PUb3F(?R2{P;WhRfIv!_oi}i#imD_=z+uo}q9Sco#~Sh;&hK0_i!Rpvq)? z+zEC#I7tXw;9z%lfYsMP@ba{@ERUr~=TgNE^})j3BnP++wDW}PLW??>R=E*Fgc4<*FRxP z`vDe@&5}cgdt@XuJYfBVkwar)Rv^O(t)m)7b^>5Z-1|bL_iIeL98#8X4Neashiob* zuy2%;0SswDMy99E&wknbW)S-}!fw}2v5oB>{J9R8re5pyW?VC@J^1VREStJGjP zy%Qkl>4aPb1OUC+VlFxQt%5DaMu08HZVfY32u?T_75dFQj0700-u^Zl%rNFQB_H~^ zqbq*H>GUnf?p+-A--{przC3y6x9Q`LhWd#enHZ~ML=my&lJOjIF<=B7Vi)*QMna=X z_s^_4$h-G=%Pg{9m`qE27M*q_q>v?}!{J^+y@UB7JHq|~n62BOt`|~gF^Ic7s zgY3$z-8y>5f`5KpTA26fuYbD7{_p*7UtIEh_27?BMlSyI*SN#Vn}zR+mwfPV)AP9p z$1Zz*?yj3BeE#N^aKpDhE?rdEvS3&Ffx}_nWK=C3({dx_(Y@Q5>+JU9yb1fiU#dBF zq9?ZKy_QCqEWRF_A=4c15O`3J&%I26qs?OCsJiDlKO8Cw_ ziw;M|-OSd{Y@WZlTT-w<*z8*{Iv?hn1*;B^j-T=LKy{zH%ZK0JbS`6J>$TVK^m8Aa zTHJ7G)n8@(uSQ)Rw}A>fhP@UUncF>@^r91yU zI@@z?xwLzdaLL+T3s>xa{_=-+Z%XTEs;!>g5P8|R}Mc=Y$r{`uSI_~{~h z`WE*{d-HE8TVraYdWk8H0EU~0>M{jGMA(RwrfB;~Hp`8AS2tGEJ?yR`Yu=pQY1*d7 z*n&B+_APlmIGw;_851DT%VpbdH4(KAJBi=yx%Qjvv&h*i2k7{rvuFNT>i*@=E8qY4 zWcAwaVOd8$Y?;2_vuEIqHO@096ILxMTJ}`2VgK!0pHJGiwxfPu(Tjy(E6&`%&f>3; z*rIByTc*@*V!JBlKiL(6zLCX!i~CK_SwBxUWWvEEH&;A#mNXxFn?LMz(ibnz)R!;$ z%zQz^gv`PHx` zcXxep?cl|}{jQefmpKGw;cC$?QAGFk3p2vxz6VZ!H|fnmoy;*BE^XD}A=>*V9t;~F z)tvR?2UpiQsu8c$A*qD0Bfd{6nUfvjr3QPZp#(Cq9C-bDLmU7KS_we{QDf!H4Q--> zN=q6&UCHlt6d7?_CpgGW1J=Oip-UH@&Ojb~t=J}V>k1}CI)Kp9bNOsIC^#tgP%a1- zx2K{4q5%9y0y_=1rzU@aNk1@Zr@4D+T+0th71DNsZR9BhCaQ;k1qrZaC!XO3^u1Wh zZBb>NkpS}GC`nr-J1pf;+(NMJl$r=ViA1M}Yyu+QP!Jj6P+JIekLM3y(M~!>4HfUw z=M)e9cS?cKVk_8^sy(=2TAx0h_ihhvNG(S2#8=cop$Y}_q;}Fdj@;1$ZkDEkyo&<;$Sj?IrF>V|gsu@}d*ch{7 z;lZut3vP}d)CBKNRyB-6gfkuaZ#~N7%p~i642sDbLfiFuye2{tqL;d=kRY_#U<#9uL(MLCTVv;m*B{v+R=3l9g{n&&!2J?&7M80 zQq@^)VTTMf)>-l^BxQt;-W(lPUIHaL*H#XhP91jI-E_M}pCb_JVaJBK+Kt9ay+tP_ znxcmGk14f8(!h73*u*Lq^u`aRGOTlAHU>h#aI-5#fev_5a$I~S5(6w*?PUk~SkCyU zCZ)YSS5~d<@nO7K}zF|&9&X_>@6Z4+^>X?0QO=tMgeXyLVZUp^a$S+o%o3QS>Z-ilsS_KCX(xB@ZW&V&WR~L$;n1W zScA_57R`)2p7mD;>8&s^lU8GG{6?YNJjoO_E@)6**j-&rIuP?N z49=9C5t~4vqmzPhWSXKA%P9;uc%QJj(NS^T)>Bc@61P)=<6}&3gAB((8lqth?LoFc zLW+gvMrdt;y^GfXEWT~!JT)8uOcxtN6n5NfT_CJ=wgQI61{kI`6Wq8eCPdB53ADS3!vRK6C3Y|xd>|=Wp|8-?mrWzj% z%_d`rJKn}dP*oKiC*Fl^u;jl^rP-YNVTmko~ z6eBPWZhpP(EIMug(A>gEz~&a#z)4F~ikuPzD~Vn_wt-G(F`5w2rJTrSxn$L$c_#*b z_Bi*mcM+?ek9zd-=a+{Mv*Qn79Be$7>n!`Glo+2$Vfyx{@gOOd*kGaSGHhKr_RwP4 zjMisShdfKa-ni;i%E!M29nL$tbW?n5@Vfl%QeN=7+OmCf50%Y5_{aTfpPF*n-r-z7 z^&p=2fDS`V!Q;pa&u;wrKjGMCAvd2FfBb0fw@Ytlq~F~&Z`mc`5BEmh_+QsBPw5qX z|DD4>^wfMY?^S8unFCLbr3`$3!_4w|)2>M)9?pLGTcP`eZ9)3;CqGQ-345OQ>4U~$ z|L(~-|JjV0@q(xED;8Zic5=nAPe*V5{;>P{j2CfNw4Jiyb82I10hSu&l+8QW5uaY| zzb-@JSD*AS<;dk>>8GPPtm@^~ZA8L4m6P9QCroRV!9?ENbA`FBr6ji504m+?i zII@EQd!N9Ej%{RdG)M(_EXQ|SO_g!#95KFY_C_#j%_XoyDqU86aim756WhE3dVz1G z0QoOO!yS1R;4bB+&^}GR8HBT%xGmT17JApz{2u(Ka`VkoEg!hv-Loy3fA~@Jdmlaf z;+tIumi7Gd*dDO*>c(~1oy`x1Z9RVU$l=4w{`~7zW2NW$SNHYZmuM@}!exGL*o_4A ztvE2^3O9E`bl@0BEo|xC^Um30(J>wMdCjI4-x~KhLqSfv;8d>tSgL#U`bHiOzkI%W z;H-gQu{QoT_bNw>hV^o7?S;1uH&(o8c{h3fo!eOfKTnx0GoIFM_T5`MY}um?bFMF0 zH2;e^_QI_{y^1cFckyLnCY$R*q8yR%!P8<_dw?{`Yf*(o#kjDGoQ#iNH$ zj;wlgb>-h1SM`i~_R;IAN z^-=b|0$0k7xE1?_Me{yBoH^yt+FiR6*9{)OdSbXC4v7s`trBO{{C|I_01_ne3a2wpzW2z9K97J0w0^ilff9%G8rG}O!#J- zNU^>TWswroR?}f(Bo6@J>M?l5OAz*|^JR?XD4Kv#)#j(f_Dh1!1fJW9pfbmq1gAcQ zeGW+xxaZ2zpF@{ck&#lR)1)JSru0+D42}Q`%F~)IZl`Mm{GILVPA;y!+7vzHXPp?$ z)(l^(GWc0xgY9th0^&n^+=Sgvi7|$y4grJ#{!w-02afcR6fy~kd2}x-1*{m{n}oz5 z0~Mk|;vKjPi`Vd}ku+=?faOww9ouRB(B@;#n40s^(r8<+>P+%+QWmd+(KThdb z8whEgNtBSO_GxeNC)@<3%b*QX5fdS)bITkz0T%j~WT8x|>I~^Sm7F&jWx$I)d&c4o@7+%Q(sqer)8z zcpQlVsZdziZGHk&fNM1&Bok;NEWTA55kts88pHT!;JNLVT&%yb28ZU%L-UD2mjh-Q!4H#!XpIu2u49bl5)kNk zBG{lJ`AImNIYE=jlpwv%PXc$JgUcEC5Wo*1kTKZ(F)Wi~jVUhEDdI1zAx&OlDwsK@ ztcUSTVVzRE=WL>ZGWuG|(l%dFK0dV|$iW^(7L)ub5+1SvhQwg87~&yi^oik94(DD| zH4+dH>DrdqXhuIms}Xi2xv1h2rT@~nh1b*$ZFo~!HLC{Q!2XFVf|xtUB>Sv2h0=o6u<8wnG1 z;Sz(C-Mg=lX+>=KVbU>hdeOyR%v2{rkIJ&cWcrORe0&LgC$C+V=l=d;gc${=V_`f6gzC z|9f%R>%TwyYviHVYYvS%+>+xzV1Oug>!pLb*0hn2T2}m9cx<37VDX$4_7lx}>JQWg ztnc~sy9dJgkAF>F7j*4-;iUm%UfrHk-Dk+v*2dvuvkwk^zwg&8u9b}a=lF_m7d*IabR7Hv`3NNq&uZzZ9oR}P9GD+$%fDNz&)0z46x_^`9?v{r~8~i9A z*oE9|1;GI5)?ugH<1N@hz$jXvGL+N6u90Y-^5zn3u}9|bgIae53dl7fAcpYo_Xc|q z;xn5p1rr&qO7z$wPZB!<;CUqxYmMnJ_+8LhuxM{XOrUAxg8cA(`3>_X3$M1w?DLP! z`1JayR^HpUSO{HhOUnAtW7gKbdo^p?+f7$au6(`i=82XghnrXa{_7t-Uv4{aY&gLa zA*GN&0`3ZMZ+tBVe>~i5jg7ud1t?RQD?6V$$nJ}!q>rszKp?MS_7aeWa-`lEl5Ikw zS3C~%t_LftR-Y89D2abY*`HUBEdOyu;YApsH&0ZaORAFJC|dG++uJ4jVN(~ME8ko& z`M7ztRli_$Zl}xOrIscc+GL8Ko}c-$cExr81r5~1W zaouY@TsOpsC9kT<56+n2owT5XPABNP6WO2CpPDtP5f)CB>t~){#@^Rke=K~q@@>wj zh6X)9$x3oe<-sOW1?RS&Hjv=PsABL6&@N4crh(x(QKV~43gBGMUd2^FL25Ca3+ z{$v&g9g!FXkqGVtT*wKRLGJTEg@!!#8QS^ z+6loGv?tP$g#0wr53~;8mtMf~=yI?Vh58{zi7MEQnE+cRUG|0)f|9z?m56JZOcgd2 z&poZ{v8?4~ey@c;>T37rtX|-b#MqlSk{ifA0^5{v_0>H)&(5iTw(HT(0RN%4m!&>G z_U6--4H+Q{FCaX2*rL4DLY}*?4r}hp*xFyWMt!hg9Gqf%A87`9$*-XeN7Un8c{*V9 zoBKcQnz#9jVf;YC2j_h(=tZp7Dh~`2+qG=I8n--b)f6v{eWd#Q1YGryCwEF z8*luw^kI08EVwRm>dc6h5i2J|?c2d09J)F@19c`@w*Z z0*bm~xg*X{9G7wVA|GvDX58CIHwfogz*;DPk7hwnsz=jo8+An)y7t;FWLpfEl-Tl- z<4koD0wl=XiBWz+n@lpFnlfLI3^foYwM?qsPeEszIBW_(uqcy|%{Hh|SLfSohWy^OtA0OX3d%B-Y0ZNtZerG}>m+;Uv+QE~g zw$=*|YrY)+#jYQAE?+n>@%yR)llvA|#Z=M!qB}lIYFvHrQulR2qSE_?T>a)Zb9yvm zbVl)b>4KZnHYX*_`)qSabcjMJkNG|M6)K0S+df-#CzNOGyJ#iSzUQz?ZY2WEVwq8ot`9(E2k*6#ij8=7&n-*f*e1(Hhp9FN~+o#t0OEH z86aD_VrX(mzU#^dV>MR@paDz5bWp^7kY*)O<^XR}q?AiwH#CV*%Vf!c`FQ-&0m={y ztym?REq1wY^Xktf8=*C0*hPyGZp=K;qaM~}3;aBGDLT%mg%>lqLIGO=h@AuE0~oM@ zv=7w7pcGfc*3D08q>FdF>r8a$1w^PoX2;@>LyevUUw>T9vr0{r(H=gHosMV11`?!k z7M{{bunZzLJd|j`+mxuw7Yw^Xiii6VaUyqPrQ1l^Pgn0Q=Fsin?_sCkU8Zvb^$u@Y z1n>}~lLIq?R;)J1!s9X%%3!Fk`7#t9D<;*g+%cHuqBse^%sC>swg7+N`>VO67$Bt` z;o^;iwI1MqLLg@hMl?trD!>kwkK+t#4`w+LoO!^wLB?@o38v!197|%VL7q^DAIuG) zybb^?+`no>;RYZBkch$nOVPRE#o4U_fQ(HDtw!VxaNhYbVukRwc?yg45%NZgBQk%0 zTo$A3kfn1XEB`pkjmF$WxOP?MsP-{h8PJ7vQ-`iK{}t&iU}`V9A+VHpAjBZ zTfUWp(Tf?Xs(@Qr8O=^Vw3*wnXQ%~QpoRrlv@Hmn&Kmdd_E^70kJ?RoT@<~(t=3i# zsNjk+doUrUYQe?Na^$<|xDW?n_+;o<2wg~FyyfG*P%Vb#laP2B5fmdVC00ry&ZkhB z@N+~34sc}*J(y`gj{v!EGBm5%ULJzX*!Q~(Bei2?YC@}0!&BMJXRGBq*-yHMv-_Y! z0Q(t1lhlLac9Y4@s-)1o_~CkEsb&KbOdR*{mpitv|MBeZzfN9QzDyMo52pqNU)>F4 z!q21nWPaKf`iRCi;?r0SVFJtx;6 zxpDT38~MYA{&#cfKfI-<#*Aqp7uAe7Z4z$IjH`;7ySR)p_IU9isU9`U)6di-oPO~p z`J*Gbu0w14Z|r)Wd*spdcP~q-?({xh|N7O)uYTPAe-~!1{cYR(SKm%}eeRm=#<#aR z?|f0%|LouW<~=VxzyAL139rkio_>A#eMM`2oKmSFn`9++T0)Usu7I~FQK->dhYh1} zMb8%?yd}`mgnkWBPU?AlwnVLEuf|?Pq{k%z3_wzE#^%}&JMbn~NN%$OvABxVgyg|k zO{;=IaZ@w!;dd+WbWMaZ8PCA8hTy50h0WpmKy4_VNJE07@))G`*+z^2mK18ER3UoG z_L6-@CcKLOHjQ^|EFy=m(WbrT#M;Mq@<*-BP21`kdH>>!@jr4djrjO^s^P?#)i1p@ z4=x>kFFx9Il#jfLlR&wR(@^cJJjc*mCo;sAlf#~^JXkX<$kmk6Wjx+Vr+I{Sp9=eJ zBw===<($QX6@u_q&y7oi4T%s(S9ERpqHX-UlizRs^6~WK{@M-GFQ|*&3_o!(`}Tcd z_kaoJ@2b)awdD)Fy6|QYs&y0R6BN4B=oEc-CN$+ycks|RpAP+U`KqT4PcDtSrysrU zf%)>B^>MAb0ts|H3(ZngzlKQK~ z7B`im)>0awI(ZWtho21z+P^7&WdFIxer~br#m07N_~K_f-e72 z0^J9$2>5#JyM{~pQMD%yGGexF%+n zg8R}hPw(pUcGI=x`iMll9Rt*MUvWtp@MlxP86hDfz0#e|X08?y@809+f(OvP_Q7@mpwPhp~5N?J!Z}rC`=Z;<5 zVeUU@O;Xy=JCHmAGD>f^xD)ROWYuD83%j(g+8H^kaomvSz-17K+!;A12(%c(dSY%*7!5V${W2@4O6+hi6@L;;HHxKbAkenIUy{~ z>7|K%7HnPmgQxJp_Z>Gf_NkN{O}~DJOBtae=A^KcfJhE6;S9|snd{(wTD!p>&QeB0 z3^5tnbdtzp*~tez9pgrfFc&fHmF%QJqqaDgF*-srb|y$YMpj6Euw{cd*BFj!k(A*4jrcmYE_63Fna`wfg*2S+vJDtj@pe4jAccLW zFcJg-tTb45ykmm{jlh8AEF2KytY&+te0+?xeJU z$bBV@7+)L(+~tfFqncWrip^sZCiw>pnNc=+vqG7u#4N<(cxx*dJ~H#5ZNZcGZ@Yf< z#^<)rkBzUy#MR-g9dYti$?l!yx7!kPVa|ab$ZE91#NcEJ3+&5;fqv>(RX}5S2zs|f zWJp@XnLS6+0_Ud1eOhs5&(K$&%}tx9oe@1L00e3rhgK?!TbQ?@J}NkiF{r>T8Zm6^ zovdNsb1ol#q-(oeLPPw3tt^GF$ZO>MN-W#l%#y+Bj$rW|5ttahy${yZ@ZPxLP3t3i`A)&ZY8L=wg%+t#jc&2+KK`r1Fr}dqE;dmJ19L=JkXt?ebYd< zM-v~&%EDM}l`m+CPbqR8pd%SbX3OzVIJ)MDn4mn0xpXUujtuZ@iA=t>(#a97$Y=X( z_A0u#J3t#Nqy%#tHbVO;y_nq{kSsx<8cICC(D^V|9=(XN0l*5poD~@of&h$ zxGlI~hCmmCjRKe$0I_|Kol=sbKrTZ=Vhc;bX$4`%N7d4*80^$!2}W8!A-HoQ-JnLW zmnSlW0>Di;XTI8nWrn%KBicFID2H%*8lL(Xy~ z)nCa)Jspame@)yOQ&SV~t*kL%AfhoI8pAd(D*ymUUSJGMOJL3viOe$8Z7rm?rw1)? z98QTE8{B22FpCezsES=Em7%bhsoZ5@dPP85kx?dzCPwc`I*{%sFJMzOq9%V)NQm7Y z5=~PpZ=o>~uW+feCO&B_f)xiZ9tnwPP_b-{OI)|F{F6K2`MI9!Tlzm2Y#QO*d2`$QXAg$lS@T?Q_qA=w z7+0Qij>@qm>tM*6jxd4X^~S7~-D5U&L=l_B5@CX+h*S_`~H_uk9br`_ED}@2{G9|8D8O{;wy+H+KE=^Cy4r&sgwg zk@N57_5Up&y6#!|`48F&-M8o6>so*R#edy}Z=dN6wg-F@Y28QNi=?6bRD+O(31Cx5 zK=a0F%G&su2#fJd!FIGTGMqv9=xTk55Iy$2iK!u$c=Yz^Weht$eOUEzg-rwxP7yE< zmFit=lofU|#h_e|Y2Mmpv6oS^oOBq6P#+XO}>9x8OV6q4AN2UpI2y3&CLN1?5KoE=VOVV2;UO&M?zlhaWzCIr8MqUcsWmT|4E`Xef@{cO-sG zV|ra?=8_}(9cHu%F5lqqXr%d)LpB19^W1}nHDQ1KQ(k@dlj^Z&K5$OH%KEyjH7Vuu z8(TZ|SFg|vnOpmwS^ZeE^vz4tMvXoES^Tvrj%CG51|xRfM<@z)^4`l1<}e)t6Kx(HQ6CPOUcQM^Wq)trz-Wpt_s zCoO)qaN%5AxJEyi(XkH@K-< znOZ~&@~7_pW#W?Gw@*C#V*cV;l;T>3v%YHU>uq2C;R&i*6lBgXa@LS6br#o=&l2Jg zN5dqF&*N0+$cuLP<0(RiqliXjweFbH^24l-w+X+rJS>?Wab`n6qo~Z0vy)H%e#TL{ zrwJjeu0$^`+0=miUK0Y>?V1`FKsO$!=D5PXs(4+)r_?#_C%6sgzf;|Q4(cuju z{cMM)FeoY^$Uj9@kTQEr@rE%EE&CFV6_sU_mZm(pek)cWX!FDrd%fyVNkvrslZ!@U zN?54fBP6I@Cg=(KQ}hC*yD>A8+$)sb4^U~^`luQS*mPjX(I~@mi$(dBvQmGAk`W`f zu;s!%M%7u2d^uao9+VW{>{#xAu!S2K(G07#N=SBQ5@1>+7E;VGut4xsyQ$Vl5%e7k z8W-_jLOmXOYD%MvrVgYCHQ-f6bWtPn%JB4dbA_RTv~XJPte;o@8Xgm(v?M6g_64pQ zvFH#lpQ>rs3rsdkh$1ay(%eHwuFhQb8HcJr&{P;TT`w|;rw!mnm2(P)rxFo^+8=6k zbB0yVI##zc^ZW7AjfpEJ58n#bGlPa*TN#aOA(tKZpR#(Q0uK&}A{tvZ z!1ND1Vg?m)BSZFuBuxvLyKsi~&QJ4a{PU?lzuC2Gi7PFNAy9Zz`#!1Dw_Q#QV~uL3 zoKPRmzPxzA-Rj=YckldcIw%KXLLpJdP&=_4v~bJq6ahu9bj6F9vDLU3B@2gSsD}g# z30mg3p@Bv=*9C=@q=W2=J(kNt>V0<#F+DT_MI;u3AFeERw$w}TF?+!SAausz`Cm&B zH{$h1%^y?clDn|x27fci8_?-t2Wa&X8aol|v>4nB0aoG>cqDeZvhCLFA;*Jot776x z(~2nxQm(&I-U!CC95s+sVX!5VRm)}@LCP7Gt#y`hxl9e}5hpR0{S4lK9HMVSp&L=% zYV0GS!MMk5F%54NQd~iNJe$FshKvRk$%W2t@6k4 zJYTg>jDe|VU&$f#IvAPUY6w%9jWh}X5V3oMn#y-WL?!ql-x-UUOpV$`EdK>i4$dQo3qF!y4;RGq4fPTDzw;3)1n(YYU<8xoGC@GXjLX9CK=Vkbfd6?UbQ;|^2R|GR zu?$_Dh;FE{R59btK&7DdlVBn|D*|LSK^|bHkWC5{6A_^ifoCjK3K2y}g!)2Fic%R>{xhG{n!b6GbC7J$a2$+mU7}JP zIX(Q1+8^% zqm3foUe>IG3yle>l8!B?fCIxf=>*N#jZu1c4C2rv8vsXaz!FE{jRzKwmVlIsv}7cu zU|J1@#L+1aH^~xfWs=lj&@1#bhXH6)FcOiZ_LSuwt3)wX- zWj@427Q-Cp{3er2Pij8cHsR%?&)>dX*R8sm-DudkXkNB{uoG28>GO9+3Azee4l?|Z z(B%_dp3Ky$EalhphR*%rix=asj2d@})`!Un_~rY%EACdk|Lgnpuh*WtT3B(+eBr<% z;if#t+-FOEI6P;~kCDqios_DzTb-Y6V2DV2xEnzee$yVti64Jl{Q3R8Z~y)Mlktyc zu793=_ru&O-H!toAIoqonQIYNY}#c0c+=zyOFz6R-u=Ovd}GepzrB~{bhSG4DkMn%#$bo+0uVopJ9uePG3sdUj6F$@|EI&1CRB* znX|WruB6}~0`=MYF{d*VaFdE!%s^tCj?Yp}Boh7_QiG{Ynh8!B(o!y)B_m+0O;H;s zRwvimL@+$~ zX@vX5)e96x22AGH(Zak4~0%3%6oKD#ejQ5IKuGw=3@?9)4s zU3&DBIgw}QG+g)0>3b&c&96OYZK2@?KXj+If`+bx`52LI8Ih^>LqNzyt|&wG9o7ie zQ;PJ1S=~Qe$*Q*5@_EC+*&8sT@BWFSj~wV3fNWM<%CVy}zN~xsylCjNlaGvp^4oGY zq(~xlDwM&I&M%@UY9bjXN2XX9NZ}!(q_^i&>^7Z7Ao3#|^|USL*1meTNdg?OX=(fpHSiI}ET$QZFE#;m>7hra)A62~F7 zdup3j-puGNsjHh3Hnv8g{FKY4CKVM$lKBhiT5ib>w`%9bRAXIvJKcFYHhUM9v>UF< zEbaVe*>{~DfHF9v;_M2{2{a@zh1fK}$3Rf^+u|mRPH;JCXTIZdID}BqKoye*HC^7a zvee>E@$%LCN|zZ?*^L;(^DWpM zNt^m1mq-z?@2^XQWF3u@hBU#)LNH{KM#ijh$y5hvl5>`S8sNWbb9G|>Gynw;hkR2I z9+D8va)AEojgI9g(x+eBH>3k#i?0t1eU)GRUC1WoU?Q|wHa`}Uv(BV<#&hC(V)AEQ z@mOC!e7#5WYSHGrpI?_e*s*`1Ep5q@l&(f%M+r^J_mir1@GaF#J=ilva4l3tgD?W0 zfM{I^WyJIV7}_^*zYE{Mr7e1L&Hf;omLtjN_3~%CT1s6_7aLdK%pExxyWuhqv(jK@ zHLU(d+FkSGp|69O6D^WRmN7g;cvLa-+L{C3e`+E)4vWxW0ng9tYAKn2>KA=Y*ISJ#(cu(odQ0^&q(f8f#t()7*`Ja8v#T!Ko``|E!aYWPYBeG zk49qUOj7IFCPI);gu(%hAh_~Z+AJy#T^vN9=rO^o#~Ly5Q%5}=5L5?^(Z&#&;x6`b zGd<%F4ibqgvr{(Y?Ig^kjA5yXg*4IBAQYS2;X=zawLe2Er%OXCb3GfT&nL_(abxOq zS}j><3~!i*-=c_yaEFShoyHLFHNqU}uaMD1Gef8(aJ$uFd!NG$^Q6Z7!Id&RL2~sP zlvBd(XEp2wbQckuNTpV%)trrt8!x>c{NQ2OZ9B#A!4UINC&X@$uk zBFIpTo-vb-T-d*9{F{FNb#Ggjx9ZO)$L+^`y_7W{Z%z+yr;8*zy0gm_l1|vwT^vw zr)b6RNw>So`*>W(huxjiGGy-TRmZ>TZLNAfdhN;!wz1#8dfE5p&ENj}=ac7WUcb3; zY23?$KP4W0+toe4rY3Dc{mX@C9zPGfG4JI2flJ?QKHoce>W6oiZvR>H;+^D}?fjpQ zPkwvqdCQwOacl16y`A~>jZePr-t@!ewdY@J|M#N&gLn1aE3>zLhODlJzy=8zV8qQ> zl2Q^5B9%}kMPe9@VYu4cNpXw{YZ{DRV6Vzx!$k(kKaqhGOUX~BGHDLj{pcpdo!xXw znXyKRH3K+N8L+>dJUk$=yiyrC;oy@{ zET>b91wx_F&~{m>N-vST7}>vk%eeTD&*u!Ny7oog>}M06{dy~7;F>2VcQ1P}aq8{& zZGG?l-_wa#c8xhV;y|C$o;>mD5Z|;3J_nnmTZ2<>mbsqQQLvHldWj8nrn(??!k*!< zT_{m)OQ;}Vi~Qi7Vz8tK7+R|(KFI&jlm|y2JiYVJ(A@*|bB7%qR%27?%vm>XZ0SEV z<;eT;>aHE%{`UObvfhk0|72`Czf>AKa_tNK<^Gp=Eo1get4EJ1877q;_J;)o%HT8t zKGd`XZuaB9_I1z20`L?+t^Vqpi5I_2aug)SW-GQvB6|&y%c+XY|zP zNMEpBA)0jGIpl^?vscrYmr}K-E-~)Dr2N`fR4K0_-e@Rno_)}HQGflI=ihgOZVgMh z>Ag8;+r$`xTN-JSbCtCmx=8F51|qP9ra{QX(CUSD3_KxRi24Q-4OmDaq2g;u6Aels zUvYn(0%fkwc%W7hY^Sr~1i6SlHXm^?2=I2cF(<4$hi~H1F+jvA+gD~*jR`Y&NNmAsPzIjV26ZQ4gZL-CP=59 zy*Bgls84Ulh?zVg5JI)!z6R@%tRrr4=U(w7-kx*u=-?47V^f`6J@S$Gi@42mBwOmE zrxCm>xEa!8Nvppp)`{yN)vj4_Id0_2P1@?EpY)m8SW6^bT~&2<)1BdC&-MF7A2?FR ztM!$`)XE#^H0BP%e7eP}gn(GfW_0anwirZK9nMs3=hlT)Tc14qb4+=fIqcWW)B!`P zG~o+-XT2Jc#7}9oxt_c}lreeE&5k>o#l>gB_ck3JbX^;J<8;{Vs8A7V!@#}8dKlGD z9-$k(xuMPAl!X$^Dl)XV77Dc`h@(%K(>{Cj4=XRF`+qX!^x3c%J5HT_w7Xq*7Q#myiI z(ps8e+9bBb81L<5mDU(yizVC3XyQu4;Aa;%rpOvy99MpA-`#c3vtymOZ~KrY*H9GT7^a>A*x|d%&jm2svQLxup^w zgn$e+*AF>bI|d>EgZ*a^4FnDonzxTY!}g{gWxK45hn7-TaFqfs|GmUs#^!x!@gYP? zy@K=U#Ds)nuO{`JSX6j!|B>G}%)Z@kI)f==u#GZmyVX#hA~CqtTuK>Z&1a59uf>PI zoquRx)vkjBW^XfRWB^?bkZ7cM1u#AG7%wr?J&AAZIBq5P>WsCzl4FS*(u=7jJ|* zPxC?(WARaGR(tweEZrGeF#&QUqiY-{Te^;dJfFr2cD#TB_jV{On;7Kas}3z@XtMBJ z7vnMO%C{R*!YQs+zfPl@e(`;5gq^+bSNDvA<+)FoftyhWz)d4KKJHutpC;7$R4;ox zp+s>9?&}cuP|0DjQ9y^r*cGV}5KPD|R9!^Nu+CClR(KF@hH!k#_)VosGie6O&VidX z->rs~jtTZ59rD36i(xgefDM%Mu5=I)8X{2T;VE1c%*PZCx6}?n0+f(FvS}OGBE>9)gh8Qn2bhC! zZlDE2R)94kTxxU~)y(E8XhuKM?xr&F8i}0oxD_)s>|954%CKCvNs_yVShx_VAQr>o zK1kD$7yFf}xXyZ1&tp9-)QjLIG$M~8^Z#s-*YwW*ZTRS5#Y*6=B&E57rAc5hA8&mjA_UI#(AGEmKq8AKX?dxRiR%+jHJC@58I_ zC*;+G7qlaeew+@7e!^(|7#w)3-mlyZgV+ySF}E ztlGW);f1AnB`e;3Ja_H0?ytu0KKpjr;k7H+Qa(KeQ!H|>Qv9< zj!f%=->h}J*ktFL*H1g&Eg5s|{QI%z+ai{B#@sWTXMVbQNz1kT+wb28P93|Z=FWTV@^ja_4f_Z;J|ZcWjij_OFP$MdZu)V}m$FIX{L~l}0YQvF3Ex z!NaYKM922!z7(hQ&KlXX?-8kUD}OFs63Q9%Zq|>_p1((l)$WQ1mpG%+gg{Wy*>L=$ zJ4xo{d2wp{PIt(qtY~K>JatYatTZB8DbWm`pFITbGA)Tqs?&EfOT_HPbbx>aBcZY} zGuIL)<9ZPFH(KK9q%&ncthR|ScA_N@&x;0WOujV|TSPQyJZ3X66M%>&MzWmE zS5|#YK@NPw{1dOei(=-+`~;GzNM!NZT~NH1g)3~6i`_V`*r3YvSq=?=*U4u$Zp34R zAF9{F_e_z1R88t>h|6=~W|krLNnyKi|CVxHgF#62tCb-u1j|@f16{kYxa&8~AEQ*i zFP=HYl~N2`ML+5?YGc#^pgN7ReI+}t%-3=RTXwAa)MR;f5f{V47JcwUtRZI6llF$o zG**Pdd^dKI)U!-*5Xp@CLf7$rBj=6m8vkZ8el$+gZAEQ_@x4wv5o$mu|XHb$>{NWB-gH2iIthmF`p2J>B@^&)cv5IJf@rxwX2u zOY&o!v`;(s*{5uc8nm%Hr;RRdEmQN$FSUrOHfEDdnq(T)VtN=*zMx2~*ewoll5Q@Y z4cJqZn93MZoNaaIa($J)vAX?rH3KqBr$F@qVL&Sv`WxAO^byGplz8;pyf1*6z^^P_ z5>>IWPM*q^<+yUFeJfRuOP1jB6g0|4J8@`B?Qe_jUYj*@QCeJDLnMZ}NeRmE%5c)| zuP7KEQ2T1At6#IcoL&-+Ga+K_*Zh$ z&EO@jqImdJ39h$PcIyfl<_uH31FcX=qRz(LWrTXz)$74TDJ5bTJv5k_Hmzu)g~4%& zYxf>fjtJkE5Et?dV^Uho?-oT`G*u;OU^^0&4SQlLP#V%&wtBuckj4O2Q>xbJy7pPZ z7sb`BJlI~h^0?%-{v#>EnXFtvvk*d}gvs?7MbC(7HrVS^<$#6%|7*2FsFOs7&B5pPCT4sU+gaA?AW4f=#I zP|kE&<33W+V|6N55JibtfT)Y1ccV%$kxC;Nkd7&Ep@( zQ_rP?IRFOe1T!WrF?ahc{IQEP4yW3|(9?_Byh?f}!>kve739_xA)6||!~)hBhDG?u z(JfR#MG%O!WQX0WO>q+*|~eK;+k|Fuzd!FeWhU;NeA)T^~-mhp=|3WgC9(00&OQ+-a>(=Ad0y&!y2Bk<`JBC)H| z$mR(P2e%b8rv%98luQOSG!_#UY+n+it$xGGa3gx0-$iQi^h`C=Cf+&>Jv_Cku%e5ys1bSQZ4 zw1Cen(Q>7T7EsN8TYNeeRh$fBqEWP=np#<->O%E8+-Dw72fsL`seAawlrCX29~*H3 z21>Da&Ovk{dI-stC{tvp))_})jJ4Y-1QR)XbXiXKbKCc9oDyc)#ofqY3Ck^|M<-7$ zL>9F`mTMv8;U+?d9$eap=?amgiIk@oFp|@Sq{dEG3f)9BBVIb@Mm0~5)VbA$FG`6r z(5Nyl!mwTFYyi~*r#%CYA^h4D(UoX+`7_0Y`+5AAlp9J6I%8!?X598|>kiNS^47Qi{a&|b@(nHEw5vPBB#{~` zE{)$FnuX`xvc+Xvxd(o0=sbI6_m3-n9OI~DP=wCg>Go6s`SGOx>-^;3XR9uqywm%7 z-Z{aF*~hd;5;8}}+bWAJRxy`I;Am|)3yBr zm%pDfa>=)6opbt@RPV}6STpKih3%&widU>ZeeTVfiVJ^k{Pvw~(2qBpCp`7L^CWWK zn*-JV{e5@6XX$@WDz?A5G-2(nucw}Q-Eidmt5xU!DxW&=de6<7*nBCcv2|2NOFs{= zk;x4_v_&`!cseT70?WnYp|L1gG-zUVR%oBB2CqY>0|VuLnFZZ&2+i_pF{tl%yBHdF z8EzJ8KL{)E>l+P~(8T9Nfe2%w&>BEdP&D9AVMQRjjO19x8` zjQP4zq7dbydq*s_u#rqSeWK<1&i2)^8?C%S-FN=C>eQJhPw(a5U3c^A^)Icr1*x~* z&Og~Quy;@Kjomjty&8Ap^JAB;a~VGTo~^iL_!2P98okm=gI2ezQA$9#_M z$P%&@hkm6ov1$<-RC_K`1v)LavGnxlp;OPTc$@cF+Ecc8Q{sx8q*Err?W1SE$a{Nc zSa092w{Krpc4>EB&f?IKy9YXQ!?RqP%z*>?O#W!o+gooR2EHxnT6+HP9a|^-o3rNQ zBZbuyiA;|}jN(xdLAw_-vU}C>Z-0NXZe8o)6({cwJ8|pI?x{V}Z{G$?X|Fqd^~yg> zmaflUEA9Db)_2j%o(%qi@0p#PHlo#NJ2owPW6UN^?VQCyMHv%Ig;vV3OKEM_6E_{D zQ5clmko0Lup&9GnTGn2E(WmeFSB1G@;UvXK<7NUnO=u#l@d_nh)?lQdst>Eo2w?p+ zY=F}N6LS#U1fc+XNwq~rwVYBkAe?29Q>mderP37#(zyd`6h`5K8V)2n&}5*i=1oBP zt>CB~msFTzsKJgR8*K;dL}Dqf!j->DRD6*|ZuEIXSc=urqK878-oG|%blr5NL%v5Q z?ZfN>Y5_-QlZU9qa6<=&5O1VV6vpL~2W+(HQz@nOLLbH6Cqf|w>}@PW$^eIA0l}7D z2`?N>BZzA_euV_UVDT;+XL*>l!Y1u@?%ud6wb(g5V6&sLTvf7qgA;N@Y#>D@q;)hL zz2OO$j@5TjYr6X3rv}OUJqpw<+lXUXcFXN_+o?_Th8`=J_Y4nK}vOTCOn2A8BGanryIW(z@ zg6UAJNj6Sn9A<2uuD1l{hDqrQ&X_36jzd&};!>HW_#-8XXp#j0nKyB_(1PW3xgn^A5Lh2!a$%BS6lT_Gyjl zfBam}=B%x|+ZM$gOrPDXX{r7W{gO(GaX@%T+H`Yux|#c_e<1_O>Sm&lM$apA6W&s1 zBmsJN_bfe(YGC%}LRYGW4P>P{|?!S!#kNrIyp6fpsx)5!MJy1}C~cXDaEsA;;rn zYBWbFMg^1F17O_TOR=*nLAS(W&5lPU23-7QKDMV)m|~of{T~v3%iFBQAg@F-6iVf0 zwi*{kEmpBavYI8N`J{InuJAM=sB~5tp&$^GkSh6ZFM^SJNt{Lrj29ZS^!Oc>LOeie zXke_#8FW7&)M9hP-{w}9vegm&?0TT-`783{bZ!*TK(oO)&u<2#gDxwLH-Nmvgb56lgJPPpLGEF6MY%H@qG)&xox$9; zS{1UQT9moKayoHXp=A7s+57ii*K4%|OUk1&WeOoqU>KOE+uhMOBTbg5w#Vw8FOZoG7Rn&GR3OM2 zrTa4lqBd0<>y{d2QkdPOwVc{uF@ZYWSW`V!)XW!sle@6%(zXfRk3N5KW&N|Y-L4AP zu250T?Ab=Kk$stFHFWWkvVJWs%Q$>{)Q}gad!PT9+<&$pQe_IFv*3>6(NhY&6))S@ zy`EY<{#D;Dvy0bdO~dQKWjE5zri4*)Zz`gLG$RurJCes|nQG#O97hg;EmeLxMBSyJ>qRT_RiKNq z5Onf_l|bV)B5$C@vv+r^6gN4p2eewJ&0wzgz~F#8R|v;DI&?u)#^Q+Tde8iG-cxzw zRzLgd%fBl32TuL_Z14HrQ(LzE(EWV!?NRIhur1j7aaYODU)|oAw<9r`%dLG>GR$TO zHRh05#CSYVc?k45gUXD90a0lcKTrk}2<*4sC2{>63s=)nd2Y~E)wCb`_v(bFkN%B3 zI;&h#m|}KsUj9Yh@4x@CZs~tXLtlG`O`d$AW43Z&)U1GO`_>)rx;6T<`yF32PdQ>X zub6uFJ#*W;^2Pr>f4=F5i*YRr27WZBh)}I|sLl2KSl!K%BTwI@AJm*!BcAY0`Pg#H z?KzvTA6Ye_yx;uO6Iw?8qrJpid$zf5&FY-dkx!P)sQprJ7!bAQ#F0o`So#9k-+|@SMV&>V_{=M%mfAaqIgj*+8>8n=8 zS6||q^bs^yB#X}s4J7`5HYk~TP zo*i24mr;H+7cI)5YG^PL57;ohLzJ87n{m9|>tJi5fwzd7O>_)X^@3^O=3p&DBv<;w z2+~ETi3ls9>=FVKGD%S+ch#WU_|y85o|=Bw(p6on`4LVlKHVtrLGWGT!8xuGkY$6d z{#2Bb>)Dt$2f_TV*F#P4$pD%xb(2s-Lp`yI&XQ1*y)It|q9($;Xg;Ash{5**5ch^R zw3hAOm^*uF&$UrUk4Fk|s}_+MP_6m#o<{0mnxZ;?)+bvgwLHGMs$_$KW|XU8nkt;F z+Er21@b(Xpe>us0d@6iR9Fdd^IEA z@-%^D1X3K%hz?DP@hL;~{8moI*?`r8|NCF)06dHcG!dI9p+rBJqVZ8AL&X3S7*T?Q zia{#(0i6~esp_-gr~>;#C!5o~tgSt3_a~dGF8w8$`?hWK;z2XRZIoHjY{x{Uf>&En zXh2d+5GWAak@kgc#YnNl+9?`$xP-AYID$pDD8=+bB9@6gjAhx+4Ma>4CInr+V~0KC zYFLJL*YMEzj)h~lXcj+Mxc`&e|Lnikz5GPxl-{t=pBzEQMrSOZ{GCI+V9c}bl;TuB zsi)RJP!wuEo{P=Rr0->XbI38fcXRHpU-qyWd)XqDBSb{Wgpy)keY~nNJGFKH?WhGg z$%0*}ZoWREOG%GtN@Qq+a&B$waW6FSSS@%GiRxezcSBt^cMv~TA4>S=iajD_Iw4}( zVK&cXIE&;6Y~Zp;@x#%igNn?bbkIf_{8WERmKk^WRB=jOT|}_0efUiwM`6s4P*L5L zmY`azII+QH3l0>BaF4^U*&r@730GqoO=Ad!ZXern=aM-1o>ls9T zkSKXTU254>ML%(_Ggh1tR5|j>V-~{Doo%LFM|w5M10Q zP=48^IUaz&o3zW~H*|T^Pk&Drcltzl@s1QV&vtT?YsT-&%ibs2rPNt}vbe z0M@qv79k(6#s@!df`~-i70y0oLt`!QZZz-KoG^xRK~mz5clk0#e~w&6J1{MwD0wek zq)0f#uqeDnu!xB44K=ZDcp&kFmAULeR4xshVe#^|lwoC+xi(t)MOQnYB`w^=KiEB7 zn#c^$0w_+wb`y3L0)8_c&4{6oK@<*8loSMPe|I8dx?Q#s~}9gB)K-H5P~l?psqUGZ-d+q17&@M`$!n3Xxt# za}dx$4Q`=WlIUsh6xw1DAjNm0UopXy9U(&i*b>*|l?wg&EG}XqI|h?7Pul#`bH=~P z{`~Qu>wB{v+#5f412@aUqOO=Ah|nXJJv)k&o+_<9zvjcOzt3*%(--!q3PMVdS4cZ8 z>Fkk5yC3~=b;A3xcYi$bK49Cad&_=Y6cjyUenV*D26h=essEPU)@ui@-KoEGb@s%T z<*u~;gWlP`tav-O!#?AI^W>Nv&(Dr}{M*CAW3%_q{bAYD$a(+PKUntm#lHg6-mlH-&FHPo?C4$4cj&HphN-Bwx zJ)Hkr&X)MThBowd9k6kok?6$^G0BBZ&?E&+JOPyvGPR7`;G!vEtAfE(59&FVK7f(R zG7<14O>U0^=|H%{}#J6AL$gP^8_SqO8G64$}E!{~xR3>iafwnq|Hdt?*6L8Cuds$J{| zpTA=50`20pnRCyd{NKO5D<1#Xy>;!>CAa?EQ~dWK!N{fOK3shBX6u6Ztq+`+^<_Ln zr^a%qOmjlmgF3KT(aor32U*G+3_4_}(?LDvU2Ro<^hFMtOIeS+-|9X0s{F@FuUGUC6^S$UN z44^SVbA$3FD|YS-;h1*DXF3O#Z)mj*Ojj5QQ&w`*o@!qHhY!p(ck^z1nE1(Sd;Fk$ z(hm_m#NeUed!yJ~yNiJSB}_>&#lb#R%1#QV60uZJh4DKae%NC zcK<|j3Dr%4K~or6u!}^tF-SZO;5m?izQ0{XHOm}WlpNynTp@%9tpMG;Vy%{ThQ32dAI7 zI_1;ipA$j~ow1125`oFoPP)oP+M&@Xkl4_yS7Tz~o{7+v9QH^vMpxKLY-AzZ<&GQgQ;s^lboeXlz4SIE52aTu>R>FO z^C^Y!9tCW!(h7EN?fK)EO@0rI7JPtU#fj(A5fOy^C{ydR{(nJLkSCL10Cr=fs4DG6 z@ybSZAdLruN)mZ<%Co7b$Hw;6zPVX4>~cxIRbI;6D_j=MAv~#imIn=Y9(5b|pTvy$ z%!p3@N7PW#PcjAQJBBQm6<*`uA&g1}!lcbYCY{nYi!_A?A55Ea?Bb~MW2?8uos{-T zeKu#*@#E{;3j@ar*7izb-X%}I^y1u$SHqs4esb=1#zzmXi&vjgj?VY!UOtRcc10uE zgYw)1HcV>PQz^1Ajo!^{4>_E-s92Z)+1k7Jx z(167pWvLN(7_?FqtC2d0NJ=bm=wrq^>Y}3T2cjcs#^V3S(YePZb^m|-a5xeuHXt*M z)((2Sl{TbCHLD?+fts0Z<)sz|)+{LP-nJGbRu&Xuv&`(OS!)$qu`a8SjOonUvpt4C;v0_^BuwS6D$~^iliEUbFsCq@Sg1MZ&Ty$ZrHrjFl|QP_KLJk3J!q@kdU?- z_5_VOpTDtuPwvK@C-xlbZ{8T0&b>nR(Q-XRuyj;Z=+TuYk|yr>`1f8HemHUTgZ0~Y ztxKnbDhtH;mQp*bNYDjohSDVQW(DGLa5N**UTO&7q0><+v=*D81(ZX(-WrbBSttxJ zoiGIO)jkMbI+x#oS2~BdCr9j_gs`%jUDmkufbVoP0sZcy8G}@()begSZB`o|(^x;T zj_vc(2w20c)xrwvbU?lWBvp7*z8w#|U-ZL9wJC;G-$RESbS{k%h0=lrRAGqHaF)AxNMYaT}s(zMG^v9eO^;L z;+qn*1b$Zqi5PlqOpCa;+LK9uxtYZ+tPq}yV1w6X=EGdTtn9zZLF6i7gdsSxh&(qU zxV4ccgVksnv|Oep%@pLit_F(BB^i}E5o?u1h}nb*S|~KQU2*JTELs3V^WiBpwM^h( zr<#NlxePDGCy(xlqN7kgl)q%;5UKd7bMKV(ZB>HZeT0SUP zfmD@|JKKHQNd25qs*MMC-kT;r;?c6f12$5=4K4b3mefsK@fMcryRdI+4vS>dv@8>< z>hdo63d8q->xy76eG!pL(w0C`1kS38ge0FDD_5Dg*}K(ka%0Px<0Hdrq{c=zmtl** zgbwW!6L$94*{D@|X(tjr)@$Tgvjl1>lV2tmK8z4JR!M3rWQH17I}My!@t72} zqZ`A~J(hwfCl+CE+~M;LVdXM16{m;4GXXe63e`d4&OjOu3^p-TLYpR zgJrQ-$;ClenT2L(0Ps=)zZO~A6ei0LF81B=6vt`5S)f~gtY0#R|{@W*{V zdwT2R_eo1%^}l{-L;RzR5lRo{|_tE>-{Y$R@^xYZTFP9!%7-lT~s-AAxQ2v+Vk6qUmzr1#}+uv_| z_ntl&JbPH-)NgidIhTCtLiUbCE}i2lob+Me&B)<=J?q%(^0KS$&`I_b-}-^ZTZ^3k>- zg)35sK<+XSJ2Q;6Uk4acB_#T5!;ws+S}nOHZs0*pc>?E%0U zMndR|WaSBR$6=MI$tCSNbwR?5QHKF~>nt_sLI!jD%V@pCj%P7Y5lV5eoU&PLuP0bpTvhU zc?aBSjf3tw`wkAi`s3Q&V;pXiYHvt=RKYC6nRAc!y?gUy_VrIs46J-P`oR}A8Vq56 zlzTZwaVBV1Bq+{q$vc6SWQ%+_e;^Ghtz$Wjef%W>Je@>}5e^m!E(BZa;FESLJ#-NP z40jk*o=`a}U3Ef}(Lx2ow@H8*AjU*)Jvd<|h#Uw-lPJ?Otjva&47w9b9EcJMgr?K& zlgcrE>*E;Dh3_H8P$n#`IOThl@zB{G3}{bSZWxkVUBHfTV3LOefn|R>ree% za40*l{p(*-r-ycar4p`6UkAPw6W`#gZ-9>n#*2&}h2`vKh?YOmX5CRRkgX>e~Irq^l1jzP?`Y!{#dkJ~2dU-4sur zm<{h8ly=}>abrM@Vtc>?%=84C!HR-;k7_-5ru^(67b`c%ALRfKxr|y)gb}=4 zw{XpzSu>Vi+c`73^0(XT{LJH{N_#s-I=C{;GC#7jK2WS?;oS|c$J$$Al0`GJm4gn0 zKxB5pp(z^@3$dY)2v%u%MK+50J<+-@|9{?Z7oVEnYu{({uaAj5`_c8E4<9Pb*A*W8 zbNRj>kIGjqFJAI0abbIfZSIj5T-9fDpA>Kl>>SmB_a0EAqgh8mf{A9{G}-I{4mB*&;2Z*#$Dbx_tzkr92%=G z8H6Sy*iH-d9I~^z^h0e+ghomY!H!kNQM>cE&0A(p#q+B+Q@d(LnjpUral@Fz?Q!i< zkrCrAADocvq4jJ<36kJ8E@x>>lwkYvwnWfoOHFkwekP~W#k85?$e3oSzNR!xHI5st z68Zxh+yo+UzNC8JdC}(1@h{dHzvAD|oi}snrs=t2x zxF+c4#Ta!7MQd11)!aO)yz|bsgWD2qyGAX^o3I^Wj~90pN3Bbb_Rm_T42@|an;Y_y zHgppRLRnI_oV1|O1U+8?U=pm;nq?GAOBf*Ow_&n4x1#RbbL2uoocO(buf0K|+PFy+ zv@Ct4C<8~1>n>%sWh6<>scckpFuJCaDs+V4-s(dnY*%UBI8$+KF;1Fh5u^!fB8kgj zMrbW~k-Yu<^;x*(YK=z?4 z^LV4iT;@nDQ2wfQ&baEjJfsoJhllIfZiEaMOjVb;_#{&}s<#d~Y%aAMmv)a@mnAD#BAvO7(e zBY2Y^n%7~g1*k(wa4tmha=wt;L5E@YjT6IQYOHqSsNrZ#QHL#IyUa>e2Bi{W+w4D- z%c}^Lsw{SAjZ)jfadWe?1)*-Q9Fr5u-!T7lkRXY}uMccWvU|1t#|-2tK(a~;Kd4WR zk4p6}_4C<6a)PLrD}1YTS{x~=O{FO!9MeBCAi;ZZLa)eRfAsBZldTkV?{vp<@==+(u0Q%6jBe&D;s z2hUt|7F+$&!mP#U_kQXsT>7_{&FOXMwAGDll&2YPkiGH+H*kHMS2dmb2>)~EBzl})WPZkqYt-%4h= zd>dL9F4!E``Q5L^u}c=Mmpp6!=9}qXKJD3k>Dz^~USGZb?Z1^L{eHdMZ>FvF(Yv#FJ zueR%t$qn3`B}TNXBE&?3d&MyA)%F7ETe78$+3FXwsmP6e@15N=z;Sy}?}EuHr@p z%TH%EWezLTOjmb(t-LURQ4NkY$t{qmgz?nua^TA?;V>PM152w!DR#NikI+ag( zGz)m2JsrDs@d4MryMLvsmqIakP1T?O3~=Q90fI{+P4>mwmMl zUKM^7TccDs+M`lbp|p#k zVN1eVLS%OI7l9LDY3y15{{t$tSf$9hJfgz=r@^L)%Qc^VYo&bJfX=Qg57_g#l$Wp= ztl>O2*Gvo5Tnz+S0d~R5141y+HhG~+9>jJas^zQ91>dX6H}uv`4G4qqd4tObi0;Pmb2@uZB~%(uEIz_z*Pmufs>j0Sqq0^9DzTqBf53T zsZ0rgO*w`y?%nxU!IF80C-vRCGj~pkPL^*jJ`hbNUFt2&km`%tu@fr)V(Xrb=XPuv zx5p2f9Ik8v9xIh-;z~|fc23Qx^?f6c{?M-v4h=1UBAP4b@|A>3lR<7}h4iajU4P*B zqdyFcY}vlPDp(2pD0p&0#YD!Gc-i4BmT4o^S_AB{)V&I8xXi;b3+;*<`WeOuI~|JZyXpB01}v=g2Td`S}d_TOD%N* zQvysB4K%)9j0CU|2J{z>E?TB+5-H0cPm;WocAl!AwBkd8%hxKS+C`&GaX4O$);c~? zaszq75HP6Xq^fbGW0!s!<~&?$20>_@C=A6rQR?MJa@)GMfboR< z1R%sAZRTL1CVM#$gny+ypDlits^C10>E6tNp6H7o5^PZzP9Z_?Vd{=S!D-6q5NE8V zAXHFt3SfNIjde1Q82_-0U?~VkJB}C!3+Q{uS!?YqtP?$?wSnv$(!d2T5kG|@(san= z-3HxwiNShcTWWMM3Jzxv4dKgdQZuHYZFVLMP5>gmjoaJn(y-+|lLYxW8R8Xndg9~S z{Q4lZh&u|B=vbL{I?0i_M4g-EzwEX}SEdHQI*nwVqJ*wgvI&XvlK&WzHoo%czIl_U zgvVEvV>zZYZQ{h2$SO1ubNcN{SB;8NChiJ~jw%+^lT72l4z7S> z#i~iEMM*vpIp|)8)tEv;K~F<*CnN2F_?Ki_l%M#6wN|&o$dho<#OQI7sfNVnqNU{` z;}-ZBE8`qPeZUa)@bkFM7+s|g6hBrO3Er5ai`7{-Yh z8N#&9*4W&DER#(Jevlv;Gf+o^3qwC36|H#$tVS4~8;Qc=P{I;5!12g1W5K}9G18Rc z?9VN@lXU^QtRd7kl9Lq-tuba=ovN-a9NysEGjH1hdDwDli&%X)C>{-ZC}8O#yMPQL zNJ^z9fyd@T;KC(}8KF5b+F~d0S;Q!5sesw zq@+`^GS$FHWlH!Y=xR4d37M`ELSTZAj@HLPdx#;|ureqC9dTa#c6d8hz6RT-NyOo6 zEi4M1E_iHMZB(Z|{sSV*9v)MvTP(ZP0sXhYETEM)C^Lesc7L+L8pD%Dn(S`1coml` z{eMj2w$T1emcU^l#wSuzH6@J!sRZ!>;u1=lm9!k7|J?BwH_6KMc|fPD9F*TtU00=u zkV*m#tk{N3A0v)w8AKQanN8?69AzN41V$uaJ_6$=rDe&zNm|Tfd1O{5*`_#`0N)Db zRcni6@TPDAkT(ExAP`GP+jM*DSz&5*8Rl`AotZKCmNaK-^-#*VtEQ0@PA!wWDZkj-U`l|s8b1uj8!nE{L`e`&;Daf7eTdGyb{pPOdIuE?iS(8}n!lC2#FPK7$&tBc_d*GY=;d#Bb*;+dupZ+54L668k za?kxS{KwF5TUsN%FXlZk{;_t#qgM~oHVqltdHJu2d-4|#Qs*f?{>69Yxbvq&zdbm4 zt7yT;kG5Q$Jw0txAMft|U#!XqyUJ}Ymx&EQ9vCJHLOV*1Y)K$U+4^P$2C9)wEPSqd zNkVT8&}k3^)S)Q_d>|kUqicz2P`x0{?({>tX(<5K@EFVNfjXE5Bv5H>p6KIYDc*^> zM}h;{z`{_wEiXptE62{9#nlNwfyRoNEhHgBV6heVDnv37Pi&4`U(&KEUFow|+aFTk z)yQ1>TBs&zLs*c*7P>b-IePW>9K$c(w3htgKW_f?@%8WixOR5m6F)G!>y+_+~;J9hyhVXSewd>0f65jnz^vT2--F#0|6arkpiKD@IY}aOWo|6 zc6Uv{so9_1Ot1W@Papo(YwylB&&*DnHKrtb`Qp~~i|b~-KCx!+1ySvHwF`s2Pe-VSffz)O3i!5?lon0UE; zUF?Ae=#>|&89&n%bSU6|=Qj$%hl#~WKixaM{lO1yA>15)?XMBLYHnP~JoEU|h0l8} zUHC_x?w4cx`tH3b^b-}Sb3ElXnMVUj5=Z9EXEfz;O#m9;M79TJiWEtXI_Mbm#A=%F zE3bxgzn%p`qaG1;D1&cJfC zLSg9Tpc+l`AXhM#orJ7qxSz@wD-uFmRHkBMr!S3fg8VqX*x=3pE7xhOAq=>|Yr_rh zE=Gr&q20=GyQKltq)h)!!Sc-!KW*FFed3C4EjxDX$RB=_a+?|t4Cw)kNp!L;gGK{M z@>b3G#jrDLY&48++7zF|YGpAR6PEL#HNR)aA1&DzH}kw|9C9rujSJESNDHzZfz@%S z7*}*ovkam~K;#BwHc5Y9gd5D=?m!As~AS~4;0dW66T)Ig2K6-P2y=p|heUw6 z0_?QqMklkmh|n>-NG{JA&Ojb*=vsGRW#KN@59pyD5~2)1=+ z_$BQ;QVEJF2QxkdRuUpi!ZN=Iy*RRBl0DpGsc#IbZns6`2KYr3s(D&zz`7DXsyW?1 ziO23=e*NXc1XNV9YfnylefIQ2Q^}@Z?aYPz6fKb_4xrl?1pc%*^+4;6+m$b`F1mH? z(YybxfB&lIfId|*Lt@b(*)_E|9-1=&k-%N$um{Qs1SBA*qL#7OmEzP)k~ifelds;8 z!x42j_#|{C2({IkOX2SB;$BH~m~Kd@1yc!->{-C(W^F2A1SUK8!f)GGXKzpLLa+NO z;_}u+R83&~`SuwkOYReuJHPjtppv6EWiC%_!h$A6sSRTVD z(5RAqKP*p{`cEDw^f&}qVA+cajD0yp6!N~*E=FmRaqW=zAYu=wt2nNqlkSrFF#5J6 zk*Yeji}PSAX5meyu}L6WAoFq)1#ji6!uHw$u6+m(A8X=&ptG2kzzk_Rx?`9LTF^2&`DHK%TZzz_DQ1Zi!{% zSD{2EwLMX3A(}-ZpMOuOMwKBHNf`#}Pzct@ZTLgN+$KVBOTN0ra>wrE>4DxM#KhA+ zmNNrE_~D{mvZ^XvTsy)X!UCiKXw)6?XqKVR5K+r0q=g5Yj4fJS8Fc(whdO>tgznQo zuR`n84BXj{X(DPMzNys0bin)SDmAiA78}9nV$7yN`SMsjOkMIS5q=StD?H1js?OtC zJ)Crc4l*O?!YZiO^zmwS)}9_8ZFf3L1?y3BLSD))w>7?HU=*>#z=ZC|L!(x-CN%T} z8kbk;21DJBC=nTQU%J#`l(>u|yg|kAC{7BA@-{?IP!3kQy1boeB7#XEqQFUF0f8q# zW<4KC1tO_4kWwi)QkFdlzL}ziNz#>s9MD`fhqR1@YakqTD;;VN3Qa`v010%YmQClv zj=>3mIT-zlGEiTefY2^>X8EQ}Enqv<<#E*-c2v6;v&xl9Ze$bDL?T@^ zBG3dM*t)F*!@uR9f;qB4t3rX(;$>p63Ic5uO=pY*D@$s zv9xRk(;jFACu;{K0OSuMGF}WTErpA0R6<%Yy@$&N+&oar7>JjdO20}9@BZ>RlfY^s^6}AG;^oJl{QS1yNuMrcm|^qYL>}DPL7J!_ z=yQ1?t20tc%07Gha_o_JzkK&-?nnRFb(g9PE%OuSAKi18H}=?*&5w7EKJjb*_Hy&geb+Y+xN>RAH@6Z#xVGr> zmiIT0bo*@4+yf6E?LWG2b%w$f-0gMB7o$46$qJn?!!^sgml@#DW< zx-_OZW5>D;y^YU*TwC?%bi?nz#|}0g@0j`7t8Po5&OTs^uUu`|oncs!Clw^?a)Hr+ z#zfgPLrrW!&h_tvEwlG60$sO!Q4ErwQpu z?8>{i(QzmiAm9d}Mv~y4tEuR2Ugu)Mxe|>?91T$qg15Nnq6np_T_w`Wq~=oGGD-$a z(^AUUltIWvJXdikAcqW#gv!W4L~1P-hQLz6SsWW;vDX<=%uVywjF}UgH{$wK-JU}O z*Dt^O?p2#{;grjVzj?p$^rK53?zyz3W60vEGiS~macI&9y6!uw@=Et9sS_d%;_$^*rPq2xYMAIXEx5A{=0GSg4-MVK3(-ei8}JZ-9?wK_IeV(@afT+ z3yx+_XvuY5n3-G~zIS3fmKWnI<;m5<$3*`*V@T)u-Wk^~g;p3!(pNT$?0YT3faYm7MX_UHV-L$uldOZI5<-@-dJ~%e*P~T!oFd-Q;MMDbXh|Q(QNY1+YGd+Pr z;o!Ji2F>#Aha25##4Ii5z zbGXKIIJ7#*=Q_Lv8d1~XGwQDP+e=%G0<%GYB#$JM(-zKa!!9&fX$qHgG=(CcGayDJ zpS&lu`rhusK?fJ_AGKe=+)Q!fLeQ&%^zHg{5ASY}&xoZ6A!XA`8X z{7er-yHpxGKmI`CD7m*>(62aa?Dg@da@9!T&1DO;c8cJ-<)W$bp6_#wHLEx6WcqlP6|78blG+&oT&8@;dg=qg9kTpC zGgA>PCtN-F%FAiBRhnt8>Kb_+GDT$;qQ8Zeva&xJLd2uW2-mob6vI*X+1Iq7MVz#g zuVa^kZot3w9Y?l4gmE5DH6=LU0d?co_dCZlgUH2F5pq&Vq2eQegck)z-J+MIeHl3y zCa z3;g-y(7K#c6M8IJ_#|b-osZ9bXngzX`tfdV>Qj zRZIuLQRi?a5d0bB;Sxg_z#x9`40SDEd0|e>Q_JHfW^!4hqOWq&Lg1GVlZF^0azfRJ`Uu$Z@QP-i%K zSr3ltkVlqONr%g*BeJ||PrWg$BbZ1l3yj9T)M4xr-X(CLdTN4QU9Xe4@6~sO2zjrJ zMPOYjaVPc8%BXSdz}sKHzfk}kO0OyeGK!SHCV3pjD~_#MDm^r3U)AhF4Cwi6)daOk zxhnm0Z_<=6#>Bb8b|p0V^QC5jk9QKxRW{4Zu^v7{LI)6HEjGm94VHA`agbPPo4#_n zOlu|zvZXM7)Im~^1F0|F5e)D&nrQ)_MXYzebeD6 z0w1@V#d#(qM{JnxIsm#LfgQWg3+k zEhBl1Qp;4dATOec0XYsu9LpXjj(@~6bSk4auJ=vaRVlS7hZu9qpjr^F=LMk-q)59x z&ze9>yV&Q1Dk`We9n@@xO*~!gRj?ogpg4^Kvp9y%E@39dLt2nJ202==&10Spv&Lw& zu(~1{n5Edj)oA%bb$uO6)B(p?sx7q*0imMh(>5(=qsz((G0!ZmY_A4yi&MI@qk`O+ zhgq@~r3nL24`@*UHYU+-4tBYjtfzGACV`* zVyg_JxCEaLbH*WmKFK#J!pT~J5Cth=wmDC~J#zq=A$7n+Xq8+itA+4R%7rOaXAYEW z4OU<-wfpRKPP-pRQVC9u9c%)mFC>WBo+KFFxd|#QBCsT36uxFQXu=F=@D`aD>8Omw zZNgGQEN}?Kq=01M3#XLHidL7O7H0Td%4Na#!cZbvv|7WtK?3ft1t@0Z5vCL#_hDP zOmsB(GCA$3m&Y&D06Hl=Hx1_cG%$V00*lxYdmtOy$ArJH#pCT5sG3wKxC0_|W-y*xScB`;YAGHU8M5r{{Of`qtaNeAiIO^>B~H` zdC|CUQYK%2nLISl92+@6zvGk7^*1*jI-{6AxX+d?SFap?8TI7w?Grmr-LL6ec&~2l z&+nf8gh%VcUbBz>bLX$GKKar6-?xgG+EW*l_k5z_*vQt+*-6}EM@H>RRC8-T44qMT zb?1-a7j-ko$GZkTnK5J_1K!f!yuk0dR}_lipROHx*=y<2U(S}?4jOan^H8Loy5fSh z(in`0Wh!o1$ujs|3M;_O%_M_-7#B*VVLXe`&J=_)1Rq?xl`VX27J^z}coC^RE{i&c z6N0-{sPfQ^&goX0Vw=SQxj8}{1eOGamyC8M2wfO4YvI2rk5f$SiY15Vnb*l_u4dSX zx>L!^1HJUn@tKY)u^zd!EUH=~>t3B+IcNC2cXNKIdEn<_G+arv6VhEWcSpLZ0c9ae z+nI(HHclX^PR7;21S(5{qE(NtiOfwA$C%;dQJORa^a_NG%gZ6up3i0HPP^QSv*owH z&i*KH^or3fJHC)aVk-mO6U6tqkEa(Xa#{UEO{zm*{r=0;3Dds#BG`^(DG{>XpyL4K z8jAmH9e;nsU&_Gso}Yi4Xo+c2iOba5aIFO+6$5)^D$%hld(PaQ8O_gSM~YJf>8D1m zlCd(BY6tv&{9q{&76J#0kBc!0+)hwLa*L`ed}-}%71pxa&r_T!yVO#~VvkdMZ&er= zvk*k}l&+qjzG}JNU#6RpoY#BVAR1yqT1F&^37LmW^dLdoAp?;4BP5Wvqt78Y2^0sz zGdY2rK~QGwF#^t*Kh+ySl$HeK5>_{-Ny#a)S9RI!OoAqld@E7VPkod7W1GBuO~;#C zDOdluZsNCpUZ1@1VTk9pY|7r2#|_QjJYM3ve)Vb7^gffOU>BL+Mw!9|6S*<`reE)z zKYL{2(toG?d?t46m21~Ve=~G>!l34Ix`)+P%opbt5tfY_LVqy%#j|5y{*}A*y9dSN z*Dm#rSu@ntpj~0XF#@VFBPs?Q$_k@I2*m0fo`_O-ylE^t1e#FD*08ves}Vm9wITd? z2=^fk<@!?B z_d{&RnZpH1C7CR=Es;*2I#P|Ep=ehA@SunCBXqC0keMYMAhlEk!x6-66jql*dTGCKt&#d=+T%XnP3 zNDcNiA?-%$Cb35*sU|{Qjc^iY3@<>S1v8&vl#h?K&6l*x(%KJZPrH60yT7l4;D$*; zR-g~912L}8P0_d=7u)9d+r}-nuH4T3UKRbrwhZi^1VXMptcz=hbRiAI+?H5S2r+aJ ztvpx?SIxu51~vXG?RbV0@6$BAH_n zF?y=C>#sEOJz`!M^n67;wa(6mN_z;+Vys4n!UP8osFo>Gt)nf~0)HarVQL$7=4-{* z7nYGF@L5VJdpS#|4`U^1p|GkPgdc{KYXmQ`GeHO>s0!4K>{gCN!ZoAFPWTnh0||1) zbV`EO3l(Z^pL!tygfXxXvV7|%0$>nAY)#-;>&9Kqr$o!}{EFrI9Noa0oCB!y{5Z~n z9U(<^4X}w4&_I!H$boYMM! z>hPVbXe*&{ga>KE447mcNi9zx0e3Yq31lX1Cm6ab^&>3TEEJdwjd@UC3eGj4d1ccq zEwoP@3)t;aXYBN;*ijY{)c=F!fE)rRH`ghoHLznL;lN~J?GVuDMuE~0nA?e4^1|Z9 z!7T3vr5I&%1WN$uTVXMOt2;^SM-~b3dppBnM-#xRAWXBA!Y!HGbPyyJZc%uy6x!!p zJ0RwEzJ;4k6O=zWdfUq0=V`>DNo8~b_KNaz3}rU*@a>Njdb{IexFJduXl42t$zHF| z5I<&Ms{&J2QPJK(v2j{aIw~n03b+`unE0?``Wx+sEz2F?i^+`>n z0efvOQ6zmdtu{`|#DwXkra@vB$E`q>9VRS|?r*hP(e61g)$_Mfuq5;6V9HuWVA9i# zZ~<+ph24Z%Hci%d#f!7MB|9TJg&V+L5;^SE1)t7nzOgxH_SIwaq{-dn(aMCV?NL7@ zv$lmkuC)gVMGi*gP>C$n2L+V}Z0rXu-`!aM(TiOxj^D35zMwOz*OMb}H{bP+obtA3 z+DB9R3>Y0WO0MvB;ojt4?#+4Xy^Dt*{QXGX(7A)J4>w)NIIyu>w-G0v{;ya3i}9YXXsE5;*)yidpOo z)1x4{%F~qO)7s-)Om(?N@%;_CR7a&1>Ft4>lr9khA`8Hov9lP;WFdlbH?*a8AA0`6 ze*fkKwUrzY(%BjL{@=AvhRu*ve$^+^Z^qwq`qW07gAY|! zeYRBa)A@2;0Dopk8bsd0y6K7F-0;)uZK z^_EB~LQ7>gpD+LDyOxqIZ(DwO|K{UsC;I;S?&fpF{{Oa){qCpri~ntne1BvA>?f}t zA1&+bwqj4=lJoPgo{u?_mCW4!sv^JF_w$w|^FnH48Pv2=Y1?0~j~^PhcESg^}ik~9?bv#@R>PVDH%j{3=>i$>uz!T>uVC4Ze@v-(i$71 z!1%l_$P;a_SdMIAHlL>X%bftRl6pgo23{9ron(rM0DU#`;78eq*p_jl z2W7SV{%qU)8VWoJr~yqBln*=HP(rY@s1G1MbdzxDx@kt#DRM22c$Nw@#M4#H_;a0UYS8lA0cY@t<r^zpRpF}AYy|vk z48O;NxL@X(7mt3fZlVi74RBZs=^|)L73Um0Q)ymV;^q9ie@^Q@@yF4%r#QMAqNqnf zZ^XrrZn9I11O!^bdzg-tyFNIswPDgOHWPu=NeC~L+}tpRu^5^hzE(vVBz|BU#s^DS)J?m?K8}{MX?DFm z*2!X=7+aYkvwlSMfZ0oewG*Vg66eO4A`3i#Dwom`D8_~j_5}_TlA@+Or|oGyd`Rx4 zgUAv>r0XOb^ZW^aQYoKt|6rUcT>WEXzAgkXQd1n}SppNGQ#zz=q@C4gtG$c}2qS5Hs{#8-fLxx21u9@!S%Coz>>7$-OaHY z(gFh=pGI{@=sU`{26fP6V^3tr(#j?;id;)wtUlUCsNI7ELkfEPY1L)-o9$YARi+Q6 z)uw7qyS1Imhush(#tIQkoCHJk<}lO!-Lrx@LPuR7m+wio+bu%c*@MCX;apfjPw^Ka5Yk9bh?wV=sS~4Hk-aAR24LoF{sLRCrsS1v9hir zJ*91sc|-5zRJ9?k-CEb9jCIO#ATUG-9r@L9 zit2>=9(Fxe43S!El{&cZ2W$5odF<`DS66uD!Len647G^XaQh_Of89Cjo69xNrq`_b z(=8npy-Jx8Bq1JBR)M--%{o+E#gbR5zP|X^)}OBYyJ7T*KfnL-pL>;Q=Po{|A2#Xw+$Rl&i&Y~IfhhmS z*$-{w;}=YA@0hTsFw^$-=R4JBs1@sWezI`Mx}bqDlt4%YR#WGBCif%ER>?=tGIx z1SRQeh{pQ_%^=0G7G#q;ODthvht~1Q+RE&4@RG;!ZXS%2ZcL#uDCrun>at8DC$)vP%;y0gV>FGPqBxmTR){1=N9 z!Jx-j!8p-lWKdt))ufi~URQh1p8UM-&x((7*6z8ms33Rglij^uDxM4(GW2A@qo;FT z{d@21#c7{C7}zOG?bvzHR%eMx(Xwebvs6eQk-n{?pT22i~q8-ST45?bh03117W-Zmcig*!sh))-;CE zXxmBz^+JsLym8@c9-aAP$)(HHZf{!2f8Q>@y0dVjx7F5qa!Fgq$#35bpT6(-v>Ac% z)rmKhVwTzjqcA^18&BoWt>_WWbeahUOfLnTduk<+9YC1|ayDg>?j+OUE#XpDc`*?m z#5HK@W0f~jQ%Hk_#^@M*7$36o(srIlY=30Otj6XH=Wpmw7NHT>7a55dN?QbHBHICj zY>_+oWf{bQ4kPeJG>(lNNl}ry0dvtEPUw>v)oSrwUBwpM&{`r?11hrOBY zo%62br<2c*_v%}if4nI>XjWDOMDr=4UxPJ67yZw+^u?_YUboLGEIhOLE9XFC3v%_~ z+X_I~*P;krfXAoMuIm^b()a7DTgI;aXU<#yg-^CPKIQ6T`X`z&Dp#qMgb3Xl&DK)h za>^8#NhrK(3@u2QtqDW1TNQk6YEH7qQrfPiI6`%KDJC0;Fx>ia&68D4(fO_S2L*dF z)#Z1X@abjt1XYm5P)s;+yDKBmSZn!S2APteeV}? zbq@FObi2yeh2JxzIO3YLY;KLsemIrZ+imt@z`Oc1nQVe&iVmm^mpaEcaYU3@!cGEr zt49d|>!@3-XVYE2liEO)2O}D5tc58;;GaH>4Xu{K!IyVYv$|sKFmOW3cew@IZxyD? z79n?=og{+Hek#Yvexp7?n$rx5OpU&LIV!$#GOtZ-#_)_baZTJ}?h!7gMN;=lLX!ld zDTc=8I(?ScB;7)`Tu2Nw&ZQc&f;&3RMDT>L#Nn zDStb2zz0yi$P%90MsTfxoFH(-Jicf)2IECM#8JZ3+J>GQ(L?Anih3ZJz)VOBEBHLc zg6alFD>7`-Zmjb1JnDMd*5LKpHBD{01RAs#(|nf8RL(qsScPVf&P_o>;f&koEW0V z@WAnwP%7UrB}wCO08ugv5GaAhzxGI~gMoerEs`X+7(+@MArNgC#I4;ZMU@_-XUl`- zj&Rjq)!YU)1BAun8S&0PATWcc-Lwj4R-k}+ozbS2cguJc5Ly!Md}(n2yGyNlT#WrIr6-DKj6kqmPM4X~FSDUG70sJmdb5`)gy6Kn6B7KiJ zH=r%~?7KHoVEw1RdGy2}l(Ix>T0fvN_TIuPOJ1V%`ux)9s;p64qf9DSU1{;CbR|tj zV|gIWWpwCWobEdt7XN+b{`IA|+E4!T&C{Qxlj@guW8S^oS?QGK-T=)tA!&Hv?`^u{h-;(VI2^v&}pulJ_xfALrQ z>k}`EzI>Fsdgi_k@h|uP{HkZ|AC;?5oZR>LqwXyiz83GyKXao0xbxrtd5k=tCaS2; z`k>JHlYij;*ZzaIe5!ceu;qQ_u_wn~ZfuX7xJSqm`4;pJ0jGef#<&Pua-%Z=Gl-BB zF7DvO-cMulH5lJpRm!P$*^puZC{YdpEroKM(8yg#7KWAGNDq+0(~o#`_}kWJIgBAZC&+tB zkH0e}CD>aIkC#EIwOIYOhJFHYVPj7ut*mc$70ZAUg3H*-@*|ad^Li-H2hNvtqt$Q-&UO6^8CC=ZxNad9(h;RQ{rmdli`B;)b!k<;O)pn*h55VZRV=>QCQsj86a4DL z;}6%Y9}x5UJJ;N)U;gjr@9D=@9k?i-kTo;*`}{LNb1th+T->(z*upJWmsUMEw)gf0 zX55GLHm9Jeyq~xwdGvbr{IHLfOkQ~EKV7fCBJMvM{pd=~i@K`6f0L{oemDA$E#Gzi zcYAflv5YdnQ3 zA&2lqF_Hfw zTPRmTgpi~0z@*G{Jv%@I5tSIUhH_Uw2JYCgmf$ zRKXmE#fiyfm=1a$v|O%Yi`&s}{9JlnKCh^*edyi8eJ-`Um~o`{ir*^`PN)R#a&Cp2 z9NCov$8e>)6EQCyb^rCsWt5t1JfPvQ95%hAF%QP|jWHSC-fd^+g_QyFIduHQ5~q=f zk9ERJRYk_c8!hs(^F#87Iwy_m_l4_=Jx9C$DEfTc)^#iG7L*QL83%(0FtY>IF6o%d zt~hW0;P$q?r3(h`jr-)M;M*Hc-MNswr(qAPGbf-v72{R6&ImSY;SSAv| z&B!MR(n=*A6Z(ypv^_1jE|*esmf_Y0OI!AVmO!sQ#xxSP1C2iP+j+O|ADeOywb|30 z&EQ54AN4>HcdrjqqoGR&Zk#*!!T<95zGz%AY3{kb3y0mEJ?oq1_%Hm&6tMnTgWrVtyrJ${TQ1HeS_&co{zF1IAUK(}s^)AW#?_L%> zxb*I3P5JFZrO8%(#X4BYDAJE`K`v;rIaz)~+~rF30+MUBBw#3xdLB5@^nwZuZ0r#P z2ocojzai&Y?B|9Z;HtO&UI)XjF10ev?QX(!rJZCvrO-WsN0q5ncKR(g5qBGXX2e zBWGNGw*E0;yo8P5RSmzi#$C9v#7a$U8u$=_|J92P&XNCfYS+ul`G z3A|z_9CfhG;le>2hS&``o;$P2RSHN6UR-2iV$s9S^kGM2C)_R}QrRhniv~)Kj~PDZ z5Pe|i$ZbJyu(Qu}lxh2@t z6Vg#!890(^X)-!+fmW1aDpX@e63J28wS=-sth9@g$R-A@m+WOqo1WI`|Bs_H4@)Y2 z-}qsX4vGb6hSCChG%YPOCEF$>C2-57#ia!TEe*>yn`)Xsu(Ys{jB+i@)D{gl+6&1@ z(`wRE%y!H6nsTh~w9W7F_ea+?S2jj+c;9Ea@6S!u3DXH|h=_u8GOQJ%km3SGt)!Fg zv0GAa5o3c}Y{_aITcWLPsz{2opR)=g8+!s}y=HwHQ)O?-AdKg7Nt!I72+U+dDLw{3 zQ$3qTE@*=ZG7*FhJS)ovXxBDI1ee*&-@#+3f}aF~=@Urg&M>C(1qmRN1A9|w_?#he z7Z4s6m_-7rRL_=i^emelh}4-Vw)?~*0eGP~DUxXt07OSj(49RcL@Cd9x#I8=ss#Y` zB(=SjHEG{awvA4sG{7!NCPn0I0v{4bbuvwKcCgYO=OjkvBTNX1upx&qnCcFpqIRfq zwE`PWN;mmIF#)^MAV{-O<{@^)77xsZE!&BZH5wDFU~QRhs!oBGk!}m+U7BfTtO5~I zK}1DC>JS)&vz@7R5lG8W^99UZ1om0LzK1pe6h&q3N*L(No(1_udo+z zQz%xn*D2$MBFK+!0o2YSl;WgE!fu96Oe47NgQX?N5#Kp7l!z4JNzB9Nvk*6sFe0s9 zt#t%v6Le0b;_{M6lfVd6MsR!~q-mYjj7)DnzR!_(a`1nz4s0G=G4sQ`>nVkUmwch+ zt6Trup=A#)YZRRLdVn=d&$~IMwWU-1G7#J z_Ah&sDG_m77@DMTNZpax$>a4nxgF5oF=a6cRN1{KU0R8mjOrlJ&p^L;Bm5mcn5stz zs2Vi0-ck-Ju?374fPpn@89b65$IBE4%%(&?Cj~_ZtY8Glp+0O3(-xNq5paF>MP4$5!I^^O~94_&A3nFkD{y^~632mY78du!2) zA35jdjV>ygZVWsZP_(hJCk2o&>vrTl53U=dcMlErl*4Y1s0#<8Rd-F~)pesczdL#9 z>CF+_P~ji;^j9^xz|m5v3b$Q->!VCJ@m78;LPJ+Ee9Um z|8Q)fA^nIeGydR2Zz9i2pZ)sxg5-jQm~$rJsGf zf4+VU|Ab55yC0=@a`v!6PimmW;Sn###Q+0S(&#K69rA?nJya(=Uaoab_W*__$wAx- zTt6{kILIkYPGaYsL@|{t(aIfQSA`G+&|WDZ>Xi)QRlo$}RWQxrfWynmmh*(=b6|U- zL862iws1x%5d6^KfZaoa+DYvWB?N4nIjAyCMYRa|Bz%W1hyksvEz{XWz2u!X-Nn-X z;>6AGG0js%3>mQF;KRt*+cR)@f}R7<9ax#tL)W>8KyS30Sl47_$w3prjk&Mm^cTqC zMZ@W98ZuOaxC}I7^9q#69I@eje@Z~j!mI114S(yKct3>><2{YLfeOj`Z;8%1Yf&3{PIOo8PK&dIP@PGr45_hBdN%Fks!9@w&gied5hHlouVBO9{Qfkta zg}F(~<)^y5hn+7c8WYA9=wDBmGQ>W>@Hh*~Ya#72bGdw-Z_YV07KwDM=4OOd==*{z zDrJT1W~DMNCDe|+xU_z3fy=Qv-+kW7^unn0ERjgzdmA$y#ye#!e|k6n)LcuRL^jLd zGILL46E;vu5gCjGD#CiLLnB=c3a;{@FTi+UDe*JbYiaml!i9zg+ft z$Ca(G0ygDq41e7Xf9lr;Z@t{q5(kxulnzr>utJObbZ=hn4x9XETi=>lTW>yo^k*7K zW6V%-Nia7Y0EaR$HehVMaTb;Y)DUEeo7w~&n-d>_fi8Xqe}|UGryr(Iz_Ue1SZb^c zZSy2zE%NpYA zBrQ$Itqf@i=;h$v@4t>uD zoAXzDfi5lRnXMa`x}E!+-&B&xXVif~_3mSz7pD|8E}YhpO$L z6%;en$Wf|Acg`D?z~_)aYhh7XHhyGY3xXfUkbp*v>!k2e1CWBEfM7`Ai`a4WP?~{i zOq+)^PsyPNx1`u07EmZY^COovWFfr*5L83WqzqyqV9BN<@M7ygmZn9iyLhfdBM1Z$ zI#(hEi*_%(BB=RmX~5PdIm_ilQ1yng%YTjPU$A8DxVvv^ zswQqYLIl!ULHcqSz~m@5WN+;IvNdDeCdu|_uaG6tJ~3tLZznEKTvA;h|9;i$Z!stM z(GVlbz12{1OMk21YgS{pw5ZvFfj+%uW~`7jzQ9Z>dTuLCqDy*QI}vl4A(q|(Rv@LU z)iw;yLxfC?afF36%E9rtEACrD39pH4d8LC1-=T2txfL#zM?Fht!PU}s^xpARt1o|O z+Iukn(G0L_F zMh-EDQ&y~6_4V1g$^Yutq&>83z4Yv)>*2=!6u;o^VHvAL(fciTt_C*tCxms6+8rFC zk7|jo$lLlcep$!yvoGAYC3p6IFHl96R$h63`NHj+BYIc;_Jz&-`1?T9h;hHn>pRVy7t7rUCU|-hi6KXh%gk03U2K=tl&&gdK@F;%m_gexDHodW#(nehc@6h%*K`;fbK2=D2Fvc?KIXhOno_f)#{?z@NzH z#}#C`#?!?#6!KB5+5U7Sl1*09_(l_5QLbdBMeEv@ zKVEll8F)MP$KT_=^<4jX=kd>;*pDtyWp6xa{QmE=ALp*FJ^#N?{I%r5KMj>7k9$g&txuM+_U>6YK61^e1F^yRle!3P z?$TAeLpChf{`2eCna?dH^L{_H=yz-Dr4Nwjp9eo-j;#hIJ`FHX6M~+ zCvrEBXG^^veydqJo$>4Qr%jXVSEt?FK5%-?fA!-ZURv7NH-26fC)WutHBl8r)MN`% zpr_5{L|YikARtB0NO%O;s3L!o6VJFG2)y3Ovw-7(82QWSfGA5?N$cnw&rzI#&@H*r=#x z?txbLOZZkNozNTJ+97seWDfSibtfiy5Yx7C^{Mqv3v9@mwL(};VW>CK{u89PfT5>? zM@)$`MPka$9x5MIxaYgzI^fw>A}cbnvJIh`R1%Nt*J6Z)O`=`pM<*Oai%5!ftrOlsYJs8qG(N<3bMwG}&;hp6m8{O&H<~4knevbc6v&U9t zm8e1q{3^a}8=@;Av5{UU3;6vo@bvYj^xlk|5y73hHFa#!^}MzJa8etet=zveY)8}8 zS9+{{g>S^zxu04@2Gm-XjWLhUDEbadxI_@yq`PS4JBd&YwkrU)%@Y&g^x6mNFdPTTS(`j#=`(lN zn%bkmqI`h*~4kWE#o1UD@?(yy~V>t}C$eslZmk43Ne zk#3+q1geJ##6+5Nhw^^+AT!wp1dYwfkiUJWy8YnO*%{;Pie#=l;$g7mYB^*i&WUb> zApr^(BEd-GDr!NHkp&_lu<*gmA2;FH4p&D{zHRHCDEoVKott((1_)T1qfL{45`R>Z z@5Cj!F*LoaEzMCB1Eq(Z(g&8JHV_kNqo8P8QkX^h)uQ{W{h@}P9^ta0qIODbieF+_ z$7+jc`jlBcDV0sYR}jffu>Q%>)c3fG#@qIYomCF4C}iju^3ouf%mT78icU_56hU(})%V4mwNN5JQEco-tL?WqU-vd9jjXz&KKa+mK zJ+x|;&NzfaOQ0 zstop4I%u-69$^ZG(^^;%vx!e!>>-T@1d*La#vJ-p%q7DQT}OmV9zY+60H2MLbF_Y= zb01(u7c5z=K6Mlc+*R$g76g7G6t4ajwYdAhj*xn)*g56##qZfp-OdeiZlkNijVl8pF4GCwS8H?^V5TlQH&bb?fDtYFGC{RH-dDi4m z`=i~tlDmPMiys_5hEVvfLV%6f^+?2l_ZzLSxKUMrQhuD;3IEDa^KDqi7~MyK!<* z6B=*yDFx`j9FQU;g7$$29zQJ~Vv&>@wT(dGi>lM$CyTDl@*T1bF?tm?FeSr5Z@g1x zNK)cdKtw>tMxpf+_J1?Rx}2M?v8W=|)60X^H^Q7!XXwz=+0L ztvBk3xN7p$)Id=&|4BFwHfLHq2V_JTWq&d_BG_mYn-}9U2T%4068c#X1p-)3hV=%#T*IEwNQ+JQHm9;2*QSg!UXR<>|mR^Bu5Pr zKd23<2puGQO={4bWg8IfDb``f^Wv^^BSNc)?(=OMs~o5MzCF0{pZy`%FZ#XppXfc^ zspLFQ0a>oX;Z&!uVN6csF<)a6q$39ArcqoCtoKo~T;3i#THEMVnUXq9(-~;&>WDhB zVgF^pD$KbzI^Mu_1!8Wgsf^UqPFlBuKNwFesf`H z5%>JT1^fR}b9TV)q(@s6kd!ci?QXBaiRgeitjo)&C>jHMBNS%@-%GC%SA5mr(i;~x zUKYMw2{D0bLtr_!G^(PL%;K9Z!HV4C*MonJ{qpSe?;m6TD+@TFl~WmYZ~NzM`_?() z>({r-?I3cJxGSL?R^OGTNN0dFf+cR|Zgrlo6T|h$hB0Z2$Guw?IDPAn!lGNt?*BYG zd;5>xcORB*|6}W{$iuvt4&o$QU%B1fzB}t&_Hq0FD7~JsylZ#6KC~_%^mSM4jI}>= zs$&xe-mWg>rpilm#J@#!|MvVEXz*W_Y#%tQy0Yb&bm?c>$H8w!^Db`tTDd*%z@IDs zYdU>pR?&Xdg2d`x`9i*Y&0yQcRj=s@_V16+n|&qVD8*#7os!E&i=ghu%xhIr;5@i3 zRJcaKRgERG<6Atm#5x~!kP`~2iy|(`fWU`D18Z8PI{{c>iFjF}&K``VGEC+sQa`19k31rKAUb=~g&DR}MwVd>e1`YGQHo3>YP`lD~y zf31fef3drg(c2ok+o3Y!R>?B^<3|VPc0W2hXqdb7!czM)5C6pddp9Q}dF;Cpv}1Fm z16x+kovVqpi+>e8V%n#=$!p(#s_tp}^{DCG`c01p{@L=qXVqRGr|VM_ii$lapgd9( z{b{oOTU8Pze!lBuq%E0d} zR|Ub}oK|DV<%uca#{*Z5xH2p4g1arGSYoiEsT_$)H0}}*%vZW=po7nyqvKfM80K9A z;n}U`hO+7deQ#DW^mCY%?ahEr<>A>Ny|FSdZSzPS(Hynved_GVKfTYV8u(5JfZL2a z*Z}5F9RhlIY9NlnJs3{FMKs*$e3eq3+mO51|9ojoG+AQ9z1?qkmpQsRW#!t2Jx3e6 zq~Vz++VI$f12PgzM5CLzfcKFYCv*chK} zzc>FX8*yNoW_1doEO_V1iyNBr@0Qk7sz<8Lj7~WdTAU!kQ!U??AsFYg&2ZyhVTvqu zHOZl@#&dL}ffomqZVoi;BC)s97w!%cZ)k;ufrbp?*$6C-R%o{701+!lXRn~!VXcuP zEw#Jm=6`;cJf|?24A_z&252h5BsUtQD|I+EBE{ijbf0eh@zs6xzu%ej9!$3{sn1T9 z%cmhy7I5bP9c9@6;YiK6KRRQ-c8&i!yynt|-fuI@RZ{$^dZ~`WXrH*7T}{){^4LDi~nZVuKBj^j>;&g39(V4kgNI9 zw#)kXQH`F#YQDfv2$mS7J6VId5seOxLl7!kx%wz8z2lzHl+n>qI#L&2Cvo@Kr(bP} zPuP+g*|H(oC=0FV+TnG*d|G9AFPBvm9$-l8HERXt*A18n=4R54C;kkHTaDHv3}wTv z!`n^{!XQ|Yg6|l($7W;R*>)<|)^2S)oOL4C5*7|`5K-fDlGrejVd3DSh9#a=r=#Au~#Egg)8~g zGWxE=>TfZrD?KM972bPwB2_)NtEYe9)iusBLYZ6ulLuSb$V^ZTC?5hWhQgRbWT4~g-C<$9cEjvt%EKt!#wXlggSE>hS+S)Rvq-bD8LWF~Ycs!;m z$jf$qCaUFodIs%3QboiGNd&L3#S)CdVuF~EwGx0X7QUEJ4l>JjqV+IQnrIfY)Y>L7 zv&|CdpvuiEW(VO@f)nZymL1PHY|1%cc|29LpmsXY^19143pbPcY#V5Ok~lbS|) z+DtMzVT#xx`X0c1@lXxJeVPcEwKjQ}nN@?vFZO7K!jFujgKqv#U;pHzNTu&z7hQOeTSwoQ)5?(r8b?@GCI z{gmaDVA;J*z9(y6UA(g@%6H?D{hlMedF3Ou=>7a^$py8eJKi}djcotamrE9H z4N>IfVr>ZInOIX4@;Q5sO6pJA9xEvjSPv#wvV9{7D4lcoRk)rw0~X~v&m$T4`u;w= z^S3u2=PkML=)xwqWXGc|#mNI79$ec!>ei!UHAmICY%D}bYZR+YNQ$8rZW8c@iVmAB zfuOeC^i%HAb>Zv7?(9`Hm;Oy!+L!d`@3cp6cJ!_I^=0p`&oy?#rp`P_w{c_#dBk9~ zi~E}{A3Z%#b842o!-0&QJ(QeqPMo{#tE8oGzPWrjVIKajVGd-sPnnz{|MOcRM1IcR z{LEqXw&vG!FTK0^ZP~Y9V5Eh?;iYf?;Rjpb7xASxZR z!h>SeRY@epzE!v170;}#U%L17;Do(_TUUP+ZCd<4)s^!DuQ!crPabH2*;{FYi1$TbwfWxvbP)~YC)-~&7}&=kYigLBOF@jm~v`On2yJQp2)w|f80C|I{Pc(BMjcZ{eiO^zESjt=< za<3kf?>1phLpux(i%A5*2v$U8QT-Uy1FgZH_9T?7%tFHaY`ncN5Rk*ZU+qc=#_ ztSM>h-rm@^=I8klTP`g+`{CU+)uI1#6PJB(ANP63>4C#VtBaS--0C=Re%bO_#__YB zewh2)=ko{t%z0b-<8D}A`ag!9V`p2JT=#}yvbEy45BI$NmKpV*w26DjJG?f5?r{3% zAAh$8Y~A#5uwli_jW3^VoBG%==W%YI?I@b9-wRXP=k$h|+dqBSUAbpn^8R~O!w!9z zH|`@^-Q8KRZ^re#Y2F9k#_aCkRbL~yMeo+^Sj%aA3%wA;I}pleX$oG~kb?H42rC_> z-@a`9I{d) z@dF~&z$}=}Q~}xvf*FTaXc7Y56FM&xSAdFS_o+>g(Zp2q7FSRq^+3jk$P(71`jGoK zH%Q2G<(#&%>WYP{>?ufr69Qo+bk8)TmDS64GByD($jWMkwYDEjN{OynL~C`xag;hV z$OH{2q@CcnX2IfQ49W!Da2dQj@dT=c6n;Kp8YS(LOZUmOF5_2Bw>R2*DSh>_q7`AF z)aF2o%?>#py<*Aix2Yj{EY1#O7)i2zHUuj|?n98p71w6X$xGAbM(k?t3@&=$VaZwh z_aC&Mnws_1u1Jt;F~+sZ{3`TEhcB9*uqwPenjIarHoTB7b)^ zYUEQO%F^%q)RyE#OyP1{c&Kjh;M|joYi31Q#TunH_3T88Z=)&GB!H-H6`sNn zNs7gYd>9ykz+OG`sw)FloN#d9oliy0wdvMAZ~lJ0xoPINS`M(A~PD)6XT zc1oI4T#Ms{pgundQ>B39aQ0s4c^ZZtx;S!Fon56{lQD_Hnue&-pz(`w#V+Lc{7=g~ zwB`20c|Uts6c-#}Y+C!jznTAiyEpFV_sV$>in3}Pos0EZa1jmd(sE(oVg{@rf2QXqKFij7)^Mhpy!BqO!~i9LAq;Bv|cOM$bQT zxhtlMZBvHAIypH1Fo{hA%AFPqJ2ie>b>+XOCOI9O977fQ2@y||Sc{Vq#HPg_CK6<= z2u;Wie|!&vaD zGVzBP*iKeXQgWD=Cd05RHhHP;L-mTtx*Dy26Ils^i#TS&n=i5uFyS zz{q5>2x3Tu;PIhP2w4(!GBtRSSCCiXg0$OG>Daj^Uq7kx;oi8FAzHzu?AxCLf0msE zYP;t=x^7Mkm9J~AXUJuW2EW>-^0Z#6SVjrm_Zn*9EYBdX31t&@dR}vf@NPS`D@x<* zcznKDz$qAP(OPs-yycQkUDrzEDY}|hzV=x&|1c|aLTC&@ZF*83vD!$}TAnlqMtCry z@M7r<2dNvv0kj$!!Ra&xB`o>ma+6hILsDTXHE6DUkpf1CkRg+UHHu49LRUa>#i>m! z@Gby+Qp^SxfenkIAONpKh{>bGYG2mc*(1T%2Z#=VaGeX$Gu`!+D{yTR>0%rxCKz@~ z(DT<4Ng^kPL5msgz6+<{8J(-BIcxVVbliy`^{#9%z_%H(UcUu*BR9xhZr=-ErTG$= zQp^~?w>9uw!EtADHXqGGY!oIPE6oHL7X~b{ioM8Cn}G+~fT=;=01`KdJq7TZ80aYGj{aP@0^=AV%6>BohA7lHg-;Hm$()Gw zLhk`l6ZrztQz9GUu5u9>)TB6oyTy?eIQft!69E?sAYpKJuq9U8DCgkS?(rTtH&CFe zy`^LgyM$W+WEKb~3K8OLwFts2N9@9d08BwUght4X#GyTkw6N+tkt$r6xHu2)dSH$~ zq3gt_vS>CvfcV1k!S^qA9UX+r3Z(|Ilz5o_li25k0Vr)36;D)TA)FkWlpd>&DjXg{ z41s}<8VR@dFifDxU{J*>1m?EE)SyutLbgd3J{b8eYSC-kffF}NLl%sxF)L{0qFxW& zQzDwqf*j^Vr@;5+#3ep=CWemE**l3%sTucEavk1!bqxZd+e?{J2Bqv<+Xtu7u!~CdJ}N{&8(MSw!c07VcX|zrhY)u)B=*buf7^kwCsNg@odm6XpKmA^&O50Lzd3w-3-O&P z6Rgyjn1yIOImQgb^mPMW%WE$M6ph@kb>-`$sp^^U<*Oh6FpT=XbN0ofA5+!EvFfg? z8?H|&yHWhZmxGLyj+K8OwKKw{W)pr z$E0N+Mvfg=KKb8QqqaWZIQ8M*hnZ79%xX*fN|_vR?rmxX!JFtKI_VxA+!przj&R@qCyaz2|&nf*8t}!`n+4gVOmVUkW>&v|VzD@n}zvH7O zl|HC?Q99%6p^UFjZ(iT@Eurgb!{Wwkr&!pCIVYpP*UWrnkwO;uV&mBRf#IFc@13aL zQQO#DYN>tukL~1)pKmz-{W?Cc`1VW76D=Qs$q#0NjT9LxZH?1o!ZxlMGn6YXh^fLzze!&ZIBR!5L9RImau_v z?c9ML8^dS?84}im@Zmnx$Z6N;&rtIB~fu%{$4q~Dr4aj3@nDhDqAFNPWmuz!oZyog;!n{&HC)K>^pn+t*^xof1Vt_ z`1fN6w*B39>G@#dlyec?%ck5;a0<~4-}`3PrX^=ToG+O>^Pm4c{5tm0rmw$VcNQ@d zAKtn1``OupOGeLFxW0Yu-N5hzlg<_0^Sn_;HqLt|AJcno!?S;u%=@F`{r2zb>yH9w z|Jmt#X6;I+1;bY`um8+dRnC6><yWyt?XHWIS!NPrsqrQHv zYfL!#0J%n0c!T8Mk77k}MyO8CvI2L&O@6yv^>8`mygG0dLXw`Vtd zzqr`X$KA^3(v8(r@li;of`ltX2Dc$w*(6kU43|Lrj}t&~JtlOLLuLbH&f?fWDG1XJ zafV7oC;{G4CL7q0uy4Z%0xM#ELe!X0Dgp~wK?^C&N(2+%Eyp?vSRa0`K%EJ!RxXQY zCUFGW6Xlo$jy|%+9n^U^@rUsg7MVhSf>!#9!NUN~ICo8q@qI%%{h*`oG2oy)>b@-Q zWx)jt;UYnJH>oDb=))t)B{0$G0Ew&j5K07i7y9?%CxtDLQsY$a4s|TUZlBJO$Fq`! ziZrqcwoc}=q)?82ZHHxacjwvCb*TVKv3U`{X6>=UhW! z9|oIw6^_HTf{6$g`H`A5c`+hj6gBuBUVbKTt!(uAxGCe-{kB3H^my)jPaBbV()#-g zE3W6g*mX7FWRBiHn->f9&4hY)@Zj-)_RwhAB5PcJ?s@vPZ!K*BCw;Fc_t7_$yqs0E ze$A~}hdMXaEWpokVLJHC;#x!}1KI-SzFllTHas&;WKG?C)~RV-%$bU}cSjwFQrC7` z>mC*+-bfBTgEgh}_RQq&l~%mRK%(cMOV3sNMP^cgtN=U+aLDfSY=VznFNivnIFXJ{ zRM7Ygwk$jothGZdETR^skrDz8Wd>_H&sKff6+O21RWpkRAs$fw;7B1XLlz+k>;$a{ zko^3R$PB0Nd(Zu9UBR8)e;3wYaWl2Bpl9IBq;gKCwdcXsmVkK|`aWELFtxO%cGJM| zE1PrY{``{L{WwYX6)((!D-qAMfn;+sqLLG}UMg)8gn&WXF<;`xgjl=>2w!ar&xRZAxpd44lD5Illp_ldtK84K|5xFZ z+NOpL6`kvnSB;%g@9Pn3)Q4VZEG|yzkkzM!-QYz^YlLbCh|fgI8q&~WFipdg>IUiv zXQo6AnSx;;Fg5y+5u#@9UI*uw|85Fr9m1PKX3m z<+C)gK#2lduZsGl0bzr#pG9<4LzXDpnLI~`Yk_27{O-d%^1T??z*U_*_V&o>Hzz`c zIGv0v64L4TV4^$9&WRdHo1n|2=W8=v@(=U!R+Jc>0`6M+`x4j6r&QdDjpg4rb{L23 z3LH?)(MV)$n3{!hFkkoTa}lS;S71en>njRt$KX44zP6Q{=DMMu=B5Nq@t?*y|3(1!t^T$!u(o^zOmWNGkZ38b1MV9G=2IXDO~h8`1> zICtnleJH2$!J1|^f)>zr7z5_$T0p}u!N-^g7t$!FduQ}Kn68x9V zk|@~mkEG?B1iIV^7iI9MyJpH}K}AQQ?)YZ8CPF$8cqhFAoNQWwlFEmSQzrF558PCc z<$+@=lMKx(T1^*)$@vWSZPV0RNj3WU!}1!%R)J6STQH{d6O z5a@yyh0K5vBALKBV3i|~)MYEt04j(_6JQLaRiJ?VOb|-pE%$>2D?~FSKLLlbD*|f> z7S3RQa3Y|EVG6D61i)muy6!V15ts}ZfMW*$?)|SOWi&&`anb(9>?O~ z-9#1%MTnOZ`MmoAKBy?v=`O;P0fntZuoB2&Ap84RL6+-1)^mjxL)7qVG~%b9AB+a0 zIa(aN`z8gtb$NV=xxkv(!*pfa#B-0&1U4@yX&6PWOJQ)MJ}5*maP z+4BF%+MIN>EjM)0-Hq)Nw=J*_W${{4RG^`^8Z|cly=2Rdc2i+-hDSl6%bd2ge;pj_ zu_I@r^q@btLc?x5UprPxjXxH3U}0)_K#_oZVe`S6jq;bJ~h?O6z%J<5;Ix&lyt5F|z9=#iJhI>B#*hIF{Q2V^NrTFF~?}77;7v%dw z8|%LOj6L+}pBKM2zcEMFi7c{&2*4eNDBO0X$<>(Fq;!vlT?$l`Eh&p9PaYG+?TVeX z`DWO~pIfhdUv;tnjZAxW-b%Z{Fz@D$F4q;!~ z&dGWG{L>css>|o1LxY3Ws8#MOgy+iG)DIN8}T z{R1ltI`0-XjNW;5_sJJ`s@7&2&($9ESh4Cg(XNMqk)`NJtW6AqZwg2dg}h7(zLzbJ z7nLCmsuRI{`;&=*;S!h*y3wI;ff z8b@bfh_o!*;6wI+=sgOngAD#=064jkHJ~cx^zRDBEJ7s3?ZW{EPe|8yPKzMYj@_+( zb%w~C(LL_n(*KzMrFR!yUi{x*iIImMFZnR8#&Y#|@bPUq+1ZA&Do=ju*l#uR)vLF6 z&imQA>eAru*$w)lnuq7sZ{Hp;X7#(fbAS8&i{_=RXygjr1YfkTYE@a$p zvHDa-j(c2s(|JeNj*gqst^fKW`5nAG0Ka#4wl`A&NlqRew3S=DG`%OmBi@MGXZ z#BNzgA|yRq1t6dkQU&EcS^0p4@&;)>- z&bwFCQ4t`@g2)JuC~<5Km9FqXoMEuwiuj%5JC*SiN$azaj^Xa*d7dE!LgX!br|$)z zvVvJsr55E+#wPY=aIW6Ke@aoNF89S}u4jHRS-3*tj@ro-X9KzoIch?mJ@fi23S z08}9DU>gO0*jB+S=t+o_GQ0cyBMWkx^l2(wuTX3Ulh9_X7aL|t3!|yKV!r(r8kZ+q zZ%t7*S(v^Y4R?8P}4$^2_w@ z+?cAe%gH&}NUue|PrkY$VDHV?w(u3pWxd8uI^C7VW~to;3b`m#iD=dE!CRbc5)kWr zS!_sd!6{*N0)$_n%Q&I(8Y)W$_&*6jXMh|jq|mZay{ux=QnwzD@x%CB+nqMq!bE(l z0M8`H$C-D)n39}`BOhKqt++FH{D-Z7Z~Xet!?UGa;$Iw=Nx*2eH2|Rr=5WYP$BKO5 zw;!v%`EYB--a|d-2a?8q8$WgF0AX1hkhj(qq5cq)O?yW zmlp29He$}X_VTpi9YhrbX4UapjNrPV$BBtTuofHhC_qqjC&qbRg$G-PxXDXzf@_vV zPzJ#c-L1tyA@#!LNg(23Obja#IrLiw8yp;;451dH41gDi#IYR9TthsyR7^*yqXH-c z99W7YuXZIbDd~=De9?bk^IeH}2`&ynoylreI+2uva3GcwHuZ?*4y}0R z!Y?D%e>FE(Ro}E8d@4)D%J+LTSuJ`{(W%u#$yaRWq8&N+TJGF$TQIhI{j}%nR$hJO zRdSPS->1$0V!dyj>E4$gJ0MHcGSqYMA%Tb0N2-KNBwg1p=Esj(673bEmb)FTeX-@n zAh_tu&K;YA>rv$T_(A?+OUCq0g$bxBFh0&o2(#bl{>^1c<)kY2)Ut^uvOI~w(STuP z@mQEz>mH)W25bdRco>nYF@p*3g&4q;tbk1dg(PWnvWhu6U;Q~gKw_3VL-v;&c?O^o zRe6XO^3M_>+f~d~gN@tpj+f&DVd{{>WmRZ{{J;XK&5~>9_z45E(wdXXI3O&w7b*}` zRzro!2#^?YRO7jJfggXd$6TU9wDN4hXq?(@bcWCTJ0rWJ799`rxofHjsB9$~qN$vT zg^PIP*DEWIRhAcY<%_~b%2}D;TWEfK9cvaRQ;UX?5W{Zk_+AwTevon+e-maJ_oyaxpRuUxW}k2sMD7-pCw0=@9DJM;hv!O`&)PDpw$wj7yw!TJW8eOp zu><+57gi*urj~{$@ZCcTB-5F8@ATncw9eO!N}R1R_`b$4!=HM(YD z+n_(C6EbNcD`OP|FP;SM>>bt^V8sh|P)_^>*Woz{Q7VTxj=ag>c} zxbX2|@533>FJGbsc_pn`6MXXWM}-7Z4g(|Je80abscV0X>n@H$ZC2bgj9vR+!puwf4>FR!frvR^0sBT36s&!JUOMaWu&p zr@GucQ=QD4V+A9qNr2fhd#xmuJ)Ws-LiBPwxtvpHXhK0T7b;#+DECsiHLU&dZQ#K9 zL*M#lEPI_i`-dg>ZOxKX3$HdkT{n$Vm+BRL#NWAm!(i+CRokB(DE-lW<~`-grrRg4 zJdj>~y?)u-uC2qrxy&f~Ik+taQoj6>sP%@+-{O zjy!&l9lwZH#=@m8TD7(!q5tl>)M=4NdB+;OI;&%I5JUR;U`EM>-#0XjJ^gT6sXf~n zc%r_HyE?5YlHKb`w1T5b)*C0}8foR)w4IPA5Cjc_v{wfiuS70AE)FJ-VUSTMLW{tC z$2NgFQfE3$Wk^4)&|r#i9{8v=CNsW0iDV$w0ZI>Zw(D^M8JQwY=8cfuw7BLZ3s`k* z5GMxk`I%%;@ne%56d=i2TR;Q*pw?c|;(r)*mhxE~Qfme(x9g>|%N!Rr=P#|kzIoAZ zm{7b6))ArhfvDtOfiextk7U{aq(g~w04&@DT_K?pa30$v|p$}>lWfdF60Qb@ zk^^#JDNINdK|nRt+1J5EN}53v>`AV4cSE{-Zj?_yJI=bSHsGs;&s?88C3(qRTbuZs z(;^Z^Bvd=^EH0!7Lc-k>)`zW#<=%HZxxYMa-stMSCx3n4`CH&$O=Wu*p4vIuW8Tf! zN*sdDF=~2Y^9Eq0+2ndA*Io0XSN1L5bbOuy@%`jH>k2S}EP>z)@R%vnGLdc6(pADz~>@qZNd%EFs)y`k< zea<|nsF~s}bO^oy9gPY?M>zT{x!jE{!4P6gojtKmLsJli{HX4}PpW$XGZLA{h&>&z z6%8Dcv)1kA%6U0y<9Xl+St#zs$~z;aiMH~@9+o$(v(tSJ>yuyyF&pjg~BmF~Z zkte*eP`)FZ=Gw#;;0bC+JOwa1M*C=Wmc}Mfy)UMxXV=v^%dB7TXp3fT8(CG5-0M#e z8|+bBMrJOv`dome^=b>}_gPz}Z3*~&*7Gf?Cyz(moC9J}d8cW(x^|yByl_gyeetAv zoHPt?XDUOZ`AhCxoLuj+ZBeQx-<4iDD>+%$BJ>NY?=*rQkyNa(2fm7m&q6TAg0Ypw z{Mdoi_PUrnx9r0wk4?Vo(pa@{V_Cvcrvp*hVBE*UER0O%!Nb(b(n8k>PVH8(nt&34 zW$?8sf>MYuSO8+O6!vL==Ci}`Epb%3R)HFVcA0X3Dk!pYgIEaULy$093s@%odSL2i?yW+f{{Q;~}UeL0adstpR8!_n#*xxJ9_w;6Oz# zL)c0jz?V2A87N`#n2^d)1cPG)<7I;zhH4GWDlxh%5fi+7;5m@6aA-cm4Ob32NhwGo zXRyzPW2k{@OcDY6kqQD_HY85k3!w&1W5dsc=gK-4PB$jGkvRf7UXH`}g@d78O9QWw zRE2XB(rsW}(SvdnaG65I-eK`HIl=e7DMsk3V6-R4q@##22uM*Q`;ce0Dj2sTFiFQ+ z;d@{l7}-D$wknOv_q2z7Bpd`{0!Z~)!I`-fi!}ll=%yYWl{q1`Y6oUIh=PIu9jgD} zkpm%R2dgv!#gW;iyG<4gbg%6{)o@+Isf@`WkjE^h>6^sfSX&^Di0YigkRhPxRM_jh zi{k()lb45p`5Ldv<+bp^nL#$`AQjRk5@uE5w%$Q_2GVO4s0}!~ETI%7Q(IUe3U?LK zSRPQ3XKZ$I^=>8gp_`u8aNhc#zN^KP4MfsJEL-kB5!Ao5U^L1Rh&#>&n&Vz6tyT~> zh(I8__VeA9xn(JZar2h$ndYCM6RnC{O(Nz;b%!|O`7u>hpzcqfEd8O7Z|NI|C=N^{S{m1dc@yHH}4bU8hHNc~3=|VKJtlxl?@RE7y;-wl2S{O97 zvfJ7qFtxN0jl9*;OtW=CQ@X8&RHSLO)C{G&)z*DmwYJ*Y@6#W9_B?x@Rw|T-v3^-zMb{=pSM=M-My$L#QRnG<>AJoTdM<(ceHsiVzPqww^@Oa7}pKgOWwyH z19Ck?BH-fXfg9R=>I*I5llDtZQVc@oJm8>GINecjWE~3`VJQTTAu1BEQBJx7L(GSw~j^#WiGA(K|Knfsl`{(enETW7iU0lS{@tr9FQ&X| zn7FU*@7r(w@fmGBQ(k_*;NG5p>%M;7a@MK){M&!g;|*<#kDG3f)bIMaptIez_RXeJ z^MJtUY8eo?oeJDup)af5!8AH~NiAuFVY%Zkla7;`pa2y)d>GFg)$wu$-|~O1Z-Q6*7i4Mg^YII2$V0nak8Y z_V!R&zfI7M3jMx#+|cGbJ^fg!GW3Q$zHZf{uy;%MM~ok>`k~^Dm3L|?a?d-rT=geY z{(IM?`u+OiYsD+Z2XD%&F791?colP1^~~&Xs`>;~GHUkN+Vex`r>18RnS8!t=*{bV zK@KN+g}U~~2@&ak-|g-lo3aXJh+*rhs5itQ)ltj`9diN27bBP#6L;E&6ci)2DP;O6 zkhyTF+i|Py<68pSxaQD6v@Dxmh(f!W25~N>P*8%Tb)%k4g5>ay2qpUscSk@;u6J+D z^7JLsexLN}@}dPdBRVOpqVf=)eT+h=7bWOP^i*XpmTcs35WmelX_O(T^~$^CxbR6D z430t`CPit7T6ZG&q!=hFuW#i&IzRmUx%-Y&e?Q(QA+^GOyDONGJu1>KRd!eq5*x43ZJuki`eKCzpY3p7Qd z$4&6=)bQHQ&3d?&`st~|48P?)1@#N%37}m$-WP5eu#00M8_Ps!G8iomcYk3kRlC{% z=LC*+c15T_ASHs_{YVhEH;|~Z{35HCrZJd{a5E21K_Hg_->D-DgIt^;>dN7M zGE9wS7+5dZ8sUoc_%W@ATIoxIHkBTMz28?5pIz}d^76rV2}>4W3;{~Q(;CU0Qkj`V z(nNJLyj_WAQkSavND6BebFhdDB4=?xIo%G6K}Uz8er7o&ce^*dhPE=Z#W&z+iz?)z zU@CMKb#=prG011MnIO%W7i-KL_#=5J;6%Sbh|h3u>r&4JiSs*L^<8jgskP$7cnbKh6tfnOdOf_ljk3DzgF270~<$ z&}RApTf^pYG+cFBw|kP5*Q?gM{Y%J9!4q?8Ng&M<>g%h zn)tFe_zm`Uw2=&kKt_`uDo23@pH(p!8b$Df4iX3WS!`Z6@a63RYLtDF z&~OBP9=4r2c=qS9u|JPJC9XgfD8ib^9L1)gx$NbQUTdRkR<`Opnwvvs1*GirPm!x8 zNamHdg=RlGA3l99^!xAOV}sm`u|XNEw(6ZXpEW-cbSi6`Tjw4wms^I0W@pSD$nA!K zgfh3#(xI-uEE_IePPVdNEK>kT!NpQm+4~F=%B(?DJcG1Q$n7x#V3N$S3Ok0LyqWS{ z-uthX%v?7z)yXP;f12zSnAl0mBn39{r0s+K$$@%QBshBG+=(l#Y1^L7Gd-^xb)5U9 z<@50qCtUbv!&SkJr`w#YjH7S()ABoRp6(dASv_hD@H&=oWoG`5w+n8S{`8O2{nMY; zKW&(HWl`@NUe1d2;CJi4imLy~{B8fhmBYn_qi-T_)DQoTY2%vp$nhf z`S$9I!)q6Rb3bLu%r}3!FI#){Q@?G8!E|4KLAAwi_i(b&KRA-EEJliG3uV0ylj|fS zgGFr*0~38yD7UO$*;3w9KT=hAKtrnOr9wFkGU|EbiZHR#oztUnh3-w9OiKc*Ua32Y z9fW$4$R&6kO;&_(#4xJya^3Fgj7i5iygv2w_lx zSQbFdteRgGLOj@v8I&x&da}OFlg1a251r4{k{GIDk9M9NmbXlHjC)yAI3kc~p_Xb$ z%B#@}Q{8CBfr$wdGQJLZF(cx{`zvQI?jAqy&mW%d*l}a!`v(huN)4RVDH!jpzVq#! zcc1;2JN5LV3mMOsIWK;=OMyD~*HgI7oQs+3um0`+`M=*zdAniCe|NWkFojLL@pOwK zs}^~?M7n)UYlq3QWBk*L%2Tgi?0b6T&dgOCK0IiduzS|&A0OMxSx1~Rzso;)GLZFZ zbHul*wv*Sgxl}=+n^o#{A!6=ZK!bl6yua`E`<)X$WG(yY>9m(0hA%Gp?Ougf#hk;> zQ$~K6Rq#IL_Gr@A|MXuhzJBWaU2z)+c>AA^MBljh$MWmxmE9&An??r0=B<7sQT=AO z_>;Fd*aA{bpB49wy2w}xvM3ROdJ(6W4qhc z7#nUiK}c@*>D)8X7X^qaj{_u z@jWx9kDI>u@4Wq&eOPdY+-ZxjZ`l3A)X}J%SlNTT9D#?+`_}8Vt1b!J7XOm_Tkh_s zoR*%-p1#!qS0Pi(ln2XI1+N_i%Y$2>L=*qNGfQ&9vh5qj_hv^fepE2LrPGs!W3-!B z9ba&TFb%Hk=ovj9Ug3G!(iUnG>dnEu?XIcDB0bjRmEZ+GK^KlSiDW7loYs!(yigYz zRUm_VKT=8~$G8avQdh)Ju8qo~autz9v)$^j8$(CFzw~s)he>IL-9gubhb^!b$9bti z?!t%)J*T{!UY*F*R+z`8;^Kuh=>xgbuP$70Q;2*#h5;Y9Z!Bjj9J%yV!IHEk8=p*A z@VRrO(!KjW9~OEtRt#QN!DDRUNpV;$GKEIs83w#MjGw%Gmg;|RUevufb>h~@NG(C3 zcXK$pysYCntm9D{4+l(6{HS)mRD!BvlteO<0?m>98U{})U`|%cRV+>F(iv`G(x4E=#C}6of_4 zVJL#AVkDY8)I@8d>$@}rBzG}^-J%A@yOhC~;&7gUERWRKCS=H5q^LGDh~|*E8Q`_2 zU_pM0ifad?_)eZQ*|8+?TXo=g`0&16~xZO(h^~^K38h6R16$` zSe1RLL)0EB9b{}fQn;z76^?K5;KT_#Hq2JBvo)BCN3ly8GC$-2Z!a|STfMF)Lm~V6 zp#f-~PTo|ZSF@~-9|c_7Ida3=w3}awaOjPCv0H;d-xT;n$IZ>IzjUZc95Ps2t9)z< zxZbbillVR7?J?r0!Q7&_prl&yC_zkH#wZv;0m)katOG1B2no($?V&4a-G&5;f!!hy z*Ca-TaG-D$3l<^5C$de|LjS0Tl(IZOCT>@yNlr>dtEV_Q@iMzcx8 zZYnI5Vid8t<=JT(9v>{s&=FS?RO54@Lj$)_UaBlogaatddLL_epu#ZL|dnMdt{ zcM!%Kn=6AR-*GJS*?9r_gE#U?k{L^wTxl9NaR=m8s%!fN3CRcpGlGN?elw;HNW>Ki zQUWUoKA`Y~Y^jK)n>_fMo%i{E!ggzF5KL2fCZJxZFmG_u>Ik8wjqWJbd$2PhI0l~$ z)G8G?q!Of^6em*=9J$KCv(*3|Te+%;B!n+Z476()pyJW$<6{wrOh-oq46-rYtwI9b zEH)ijj@e|Xi%b(Tp8?mpJ1MUR0V3Ss#H z0uxSrBo~~z`8-3ZBVi^p4RsMnEak9}@@Zn|eQ8`GlM*G>`V(V0DrN4K^R#;!TB@&%4tnPnE$}wX);l>+q8`9sRI% zY6#b04hd6XZWGC-o~(H!EhA>@q7X>yyO5_xB`v%b)47j)?8#Y4(CTE5*hC$7E6o@x zh?Q5uPf=T!Y;AID?QBe)gsjsl~Q zVM1sYHQ%jhWST2Icjfe;uojc0%{3wv;f9d_4ehjqmWG&x5?l{aSD;wM*bwhhLvWdh zn}Rw6^ql$=-+w*xpYkjJy*Ym2?^i1+u4Cti9fWAC*jVqKTtTyyO(<5T{xT?&tgSCE zUj9^+{}27v@5Muh>xO5JKX&`TVLRW~xBkrg1z-I+s5?4b-Fz)7vC*4V%81V0^sr&t z*LOA+zP$e-^=X!=t$NM2^*=2={xB&rwS3;UPh4ZByve#T{?6lp6iZ*YJ)jE4QH8he zWPG*u^8K!9<2ODDD_r~b;@OwYN@|i{f6%@2?3k?F$B!8KPaNNDlo#H+-?i!V(=Y#f z>g-?teCou5Gi%RoYs|AKFX_$&&ApKlSJjAf&u6>7ig&Y)o49KzVZv9?+g{gtaq)M* z9Xz+>?a~eJcAws{v47LNb@mI(Zm#+EWw+-o`=diIR|s0d#09b5V}hE-VaW*Ogm$HS zZ@TezflaGw$VznB!>LA(1Sk1;{Wvu@EceFsrIVy3%aUP|ASPD|U|rx5cxQcm25b&ZuU+GmxgeD?5ssi!=$@PzM_2`|2U^P9}??NMj?oz*|yT4y`f zzjD@ZM?aid#QL=E>UNKFsj;)puF6^;9-$n!=bx&Lx9^24edc%j@3H9n!(aW;SF`?3 z>+2;WKV%;KB4oj~Tn|xDS9S(#)4oo-s(JL{XKU}QU44J>pT5!;{kNaUYPPMP-nQh< zgU$(k*~N3zxi4INSTxar`5zC5OCv^}Jw5%?rM5+z2Jg??Q}F214=?^nSs7_Pn=@z1 z+wR@dHa%obSaa^r4W02Te0y(;D$mt=!S&+(l^63a|9j~BEj`{2rj<_?7O-2?o&|R< zssew=%#{!PD4|Gc;>N09PZBMagv5{`QGmPE zcqO<<1Jrr~w#dLhBN>Acc%+hnEG-wuT1)k6DD?2#=@6pb3^px}-pa&4?kD8~q)E!Z zs^B1`yYP??8raN`SWY%hJ=$Vfeyv#Vj|5X-5}j$t_Tw4b)R{!feuIYrLbE)0l+lEG zg52cX|vucDFYX(^AJa#z$Z*IE%iU-o;vw`MlyW{`VG73W%6J&ZXL9psuQ zpcfE`9~R+iDVyp)eSPksi6-5Sg{s5DwP7!PlAm^7yq17*K5MiCjVTUIHNry9AILp4V2h~qz8b5B@PiOv`oWW*hHSOmyKwW2mugvE)!Yjj zuMRUQzov@}_;?!GDUk?DgS`;=zcGydyZD{KZ4GOf)O$*(sWh4dEq|o zpL1ao3OinGZmmd0+`3^wMKdVnh!eOk8dqakDBHcv$|YdF66YYhLzDmvQFc`2w0PJA zWCPT!85R{QhQpJ`c`*rXmjmQJV5~snng|zDw!c)Evz=)$h}o_(29n8G);w1nfNMSV zaCph~i2(wOJA(@47eoSkz8Es(8Bj%8JPMe<2&6XxvqPK@(eW5E%&5|>3m}Pc7ilK6 zVIkHOm`%d?_rK*(rDM1d)m;cFFhcM0k@l%IK#8f{Ob3b!Wh+D)V@s3a7`HXCo8}PK z#<#@4^%rX>sa~6XyZE=rW5u68f+nonmMq=b>59?FE_LH z_|}e8dvmRVy+VTo82;TIW&Qw9u-dDm$RKmTogtngQzA6R4{yJp9{$u(y(=AuMFJ*66hJ(p0qn=m+{M)Og{9#xd?^QE5mt#!6Vjt0 znMqKxL0Lro$MXyuV5KnF1)@Wpuv-9OdYKb6a896r`emx1(jb7k42y(Vz*GV=bJ%=B zN*Ym7NNkFW1hg!f;4abX{rjb|KKNm_2As5kIXa@85REX5228K%I2PLV^Us$$PfUJY zlsq_gm$+zzZu8g{j_|J}$|qa-$qos>8cTx#DVO9)&V;(vFe-nsi`@@SPr)K)FcsBdY+m&;z8HeP(r%Or zbBWhB2c!YW0& z+bNVX_!`S%Kr+MZSD>-rif19>ZVmWc40?kv&E^1MOFUQ9Y*1iQtr<&npXw!!;CKX- ziwxk=@=A)rTTa z^h^#5QT{my0p15gGviNA7}@Y!?)5RdW~AqL)DDfFn9wpb5}utSU`6(vj~J^@5{}sR z8a!DPEa4-~u&g{3g#$7NIE5gA)maN;ZGi2R!^lDiiFr!YweTZP*Gx%Tx&He5J+DWH z$!k`LJHJo*#a6fl^SYN+zsICr{3v4NUO}?+(=Q^ApZ{}q$19ootCtsi-i?p`exW6F z=#z?&lFifJJ$!oh=DzJyE`9iLYVaUVcbk*=!`Ax%lX+B^^XbWloN0^0Uaok)V#$Qg zmYHkTG7CTovmL}%$NtFL@xL=|X$yP15_9L@TOCkidN#E12TJJokL^zdN6wfo%>47y z_W3~%Oafe#jQT%2R3-R&zpkq~)4E9vvq1Es|`zj?Crt3Mt&Uz~mY>AdOx{W9;wUoAVn z{O_-fDM#!DPhN-4@hO&gxvS79wh&cC%@A+ewR>UF{HEuL-FPp>l3@^S!A~NVyx!K% zg>lbe@uo*%tP@S&iWhk?9Gb=AXty9Pjfn-sN}n`V1-c2120gH{8t~{rZc_;uJ<86p zsdNtE<4bA>hQNLgxVy)1R+%|ow(QSKN^8c-n_uP~~iUlbc?&_2ygG!Ryx7 zo2DN-P!kMTaB9faC8<}A-f|2-`E*C~<@Ggh+rug|RU3<+j;xuAc?a_NUO};6oob)3 zW!34YtZ7e9pSkpS+IPbPZJ#9R>@%Nv*Kz6kMU(3>Elc*{Kj-G)*`rK`4pYLzV$f@)Y%O;|bHqKtNsq|rZf=5ilkcuT-9laz(rZ884IKwL7 z3`=EDVS%h7Fd9%5gaOl35Kp(@OpNSmw|J3(ePgLmLy?+E(6|@`TH8fz zf+mJdTCu_fhQcn@h&-;nEX56;%i6BJh&a<19>i9GoqZ2NF1Uj8i7f!M*bo$VQ)T*r zQ3U|hte7SWKqL#Ku%9855_EHAG$?a7(7+6axId!-U{TR%O~^=w^^;WI`=+Y1ih;@r zh{S3u%7I3xtuVBeD>7^rVS7jn3MUb2DS>FkP3o3oG&^uHOc>M`*{V1OlLdl$%v-?z z!V`75UK-XCRNQ*_qN>ydm&ao@rQ0w^tW(q0M$in1RGjP;oz!~ma_sY_tg0Y$2n|ky zi*TVga+&V9w0Ud#eomZ}tuHUDAV#eVfnvdbG`(9RmHM6T8l0IBU!Jcxb}{QrVY9zD zNgVB%AQ_SioIO>0YQxlW1H;dsjZB2{geM>tVFiyTGMaV_4J~yk_j`3IylrXdp&!#b zmF*9c51jdBNt)_>)`V9ly^ryqK8_s}>xoYy)ZyjRkGxv`aNo`yrlm(`9y+t9Ug?Lm z>!Zg(5JSs$>rA7*my! zE5`T7_;I)Xvb#`l-?8xd!J((CHWq)krsM4T`t9Xvi|SS9vY*#TudL4MU+mpJuo>(1 zHqkU;6$YAsJsDy7FgQu0w{`NhyHCFu+1;{bOnkALmE8=7HwyHYU`2>AdA7t$=94F? z8<)Ge2WyK&C6nQEv}dl20|k&|sX_BmAOTTI1(7W}{mI1t{!s2X_0-nMmV-zP`rS^c zHxuIZ;7&A%y!m7~OS=#Ab*?73hgHz2+!X$(gQCH9ztyU%Q|j(l}wXxH{Jg%C1+WYZ@HX{h$jgC0uG4At_R+Lo=X9GV5pw znbb?5MCJ?7AP?9TOGm@6HdVECt8y>zo4+;ofOk>jLfAeSAfISDP?UVVhi)v{i%BfO zJfz)&W*`Uac54i3`NvrE$v!3zY!Vo%FF#?^U>Xuo9j$Bts`%yJLd>Qjb>J2vI#=m%CJ;G_6cNq(BFcuv}>iE-W~9NWHrLCC?PN#I(G0TGUpQpR%# zgZbaB&H}V8kz~_-vBFgmt{2DVvd}prxkLY9zx$XbF5X1?}d47l$QbtOQ*r_=MuhIL;k_iQ7{t!OXdz?kydL@tG5br7I>C4+n> z7)aoo0eXxYWS&~KhsHzNq;}^yjAnlzi}~x-F?w^1)|XBEE=09f8OxdqpdNtZwS|`A zdJ!9CAQUZO0ALDaJQ23Fy&Q?`QkK$`C`a60PV*YxB4qoMITXcYQPKI3^#Lxlf^n0( zGm4Tkw!&8tpc@mm(sR(<`m?*==keE4<6 zoxeJpTkf3sZ`!<*zq$Xk_U+3L=T;7U({`qFv2$mKC+r{f_6o2Up{?>r~h^v@O052$s#^kh@7`VXdl=&pmCM{|8FF{%ZQSsf5u$Z8O zjaBL5hLXT!%CEV>@0R|xJT+&-?W^9e&Mu6W#>S8sAdc5_3BAyymPd-F#)i<{2tWM; z9@#|$(`$hMuba%!VM=F|=A594rg24=d1dE_gIs^e&f>}9o9Rrs6Nw2Z<)JO*73#^M z5L7mUWeIjl(Tna=j`74z~Oc#@dZX6ggp+7Ct)|!5} z_fPe7#aF#UlJ5f^v|gKYW6eWLnw%v0_n9PuIQG9r1qqGb~3; z=AK)9=j66X=eEoNUU$Za%H;~^Fs zRYJEfJl)I?$Bo~NNGG~6I6V$22Zk_@+<@$e7=vA_4Fex%LNOV15(uj}Jcx_$21XK` zxNQj-n*+}k!)^&mtsw_Nuhowu&*O3cdVyQJVfTx(pq&?h(lkXp9O8rior+nOv;}lF z#`oqX9#ao{H+kSaV}eK-C>$DDi0;JqZ4g(CAroE&=Ny{si8gx^JVXI4&w%uLOPN5L#sXMD%Vs=RCa;hl8tT9} zY00&3N_tERV-00*yt|7mGc(g25|Ioe0uI+1)2Ef_0Bx}3gU&W(k zQucbWJxs9&VLX$cHRp!!s{!Szc1z&aKYBbsv`hy6n}pa%$dY zf9Rl^yQB#1<~&&$BD}Z#8bCE%nOYCPc^4U=IRsN&A-gD4<7KJfh?(p*Lq(g?-~RC3 zUtisM_v=qTy=l0-TiPp5MVK*m$b@BDVG?qPCLE`uF|7=#gFvksAxhR->%Vj z$#9wtTrz=Xe*ksU__V+%>4GQjOMWiSr8RIi@f0}%ci)ejJQmVR9yS?5EgqVpezBd~ z1rHs}8=jnx_@kJ-m`mu?PKmKh3Q38!=UZr4jj$WJ%#McNjI`ijLt`SYM~aD{D6g^6 zB_%?yn1;Yf5JV7j2$IIi=5VHO<$8%TIj$&e%fXS*m)GOPg5$3T`vdBBuQXUDPE26+ z{#m8Yoe*%eSO6Z3xe&c_vNOx*0t*m+816JF?vHc9tiT}@dZ9OotRuMxZ$@SZtjj&r ze9ag)>-5HT=5fc5f40P9qPPKiVmj3_G{K4LVO77mL!DtGm_8g^D&LJq<2x)k&*tsG z%d8qm^f}1dfk1>uwhEexJcMD;$WcQVwvDg~y2<7+TB?!l#h`O=_qb z1c!z+Op&4xDi&?_U~}Y1Fyf*iR@I#BvnLolm>l>%N%`a=A^aI&BJ)wbLMv#V%^rpV zRSdwiB$jLz357I@fH~}KAyI7CWxV{-V3#R(Ia-0H-rz+FQRFzq)HTYXsAorZ~Pk9y5wr3`kdM+!ngvo4? zlx(I-q%yn*NS~$PHzPwKS%YLk))H0Gyft$X8=p+Os(>aKaXxI=gn$_uGXb>Se8L8| zJrc9Z5-dkz65LfjJ}i~6)PqcuvD_<|ayde6rvMNUFd?`?|Li;jRYeRM4m88|3J}W^ zz=R~p%GP_c;+X7Ew!AE~J%~%9L6;P9DG|#23_PGslv*hg4v3bVi!+1sEEqf^{n;uP z2D8*a6;^l(ArR!*Xvk)-_6AZw zTUik_(yf6U#DLUIhE(r$S^!DgHs0v^_yIpgVDRPu7A-^OLs;E(>PU#Ca#T*-ufjrO zARl#th*a*!)9`x!jUR`Uc3@nCrU$2(9~g+LRBr;V;wUhabO7qrhQf&+1PtK!fs-LT zyy1Kd`0Ln8r8}ZC!>RPZB`6K`VS;X9iNWPyV0846Mza5}+qTgL6N9$yEeTKc-ck<} zO{-qTDUmI#z8+yo@=)@7>{Zh(g7TAl3Z`1#z#(we)cD>v9gF9k+mL?vVy16Per0s;18T=E&cFdvX3;!P9_86H8C7T0VVUYUHPoJu1pd za}29i{E@f%F(~ctrd)jVN%7N;^z;)|(#V#4dBu(I(-*JGy4FAHICW&^-;dva_vY>U zl!T-Iw6|QXumAEx%x6c>~#W*+P##4zU`uV9R@sq96E*D2CDrRFP zh~9une||PJQcx|PadzyKSKXc;|2g{BZQ6(a&u{%*{^gt3&M6btT-@$4D%CUGhZ!3G zUb5Ggy`C0xmy(q^v8E8URGz2Y#UjIa7WnMzt!z~l8KO2efZUm9%X}qBG)FNpR%lU0 zDFQ-v-}9EF`{|o-@rj}SU7KGmPwnhGTX^hGpvSUAOn^&OJXo+LGWq znNE=9+Qa89yPL{)*IcgvaF{b7OdUC3E6qb40Eq0jaCSohgN#M^GH@Z-+5C_m&Q7=t z2pNbJ)bRo|(@L|miGIq2kdEp#b;r8TudCObAF00j>8Dd}ZM^z-@$Da96@L9s^3iwv zmOW?MS5=k&1`q7| z!ovqNtpg5wX<+h!qx)ZStriqi#=r)Vt{7VLD(%Zo%Y=(>t|^=~4g5R5#$Eg7_Uba$snFsWCb!U&ph2{4 z{jS1h(Oo?IRYby8gA3A+B^dMyC#(a4^)`!wGR7SE4 za)?yXX5rm6)hsg2+^?oB93U`Z^2@* zB`l1fIK?J4$VVCA0VQ)384S&M8RB9PNULM{bElW7nPCHDyt~A#rgHk-qN=zQF{d@K zDR65^awB}4_N%E;ty?D%HYUodvcTFZW{cS~hU_Y2h?{D?wht=iMhC@o^O=fd24u72 zm>dlFz;D;R!`RkF-)E+jReo(1q1{1{q1wKhff7`k z#6r;sEpr>$KojBw(~Wr*W`7rn{a8ZAwurWrdFqR;+b>+`JJa1V z?{G$W-JCgf?>A0-dFuV6iFe-qwyO7Ooj}K}k%(8#P$w7Y{ipdhdV4aXqOLVrhM(U# zvFT-N`Kwp$lcxGNFAk6B-1JNL!Q+<+Jp;sN;6;QQfJEk_puxhqge@ZH7a6dK3u8@f z1V#zOWUM$6%+e?TO=1e0tjgo*Be^4gIa_8u+VTDC!vC z-(tyD#0qdYn5Ovn#mOixsSH!LuHGVI>v%Q+8fWxi!@ENZ{=J{;$w5M8oGgYpY{HsI z0Pb8D;1ok@HN>|YD$Q{CB6*jFeiY2eSURfAOSY^|)k^{mIZPb8lWB#XhYyUM+T-Ab zFD!4Eu6~BqvsDTeFV$$^)`w)X5V|bRjoL)Qq?#xp*Iz?m&8g%P={`JDp20Tg0id9B zBWo2jc&zBf42j2F<+N$pfrL8|@!33t z%t;aZt3?wJ1ru^nsk{6 za7pHJfa1DJx=9iZSgUa#*t8m9i|ztuZs_!@q?4h|12S_tjft?N#PAqbdlcJ%_kfl{ z>*e3*y|V=0**Nang0Zb$@Nc?^vNMkY|1CEWjiP+UiMtyWOSI6L?kX{~ea#4TaWhAw zPQD5n5lv@qB}>WC1@H1 zb``Q52S5EpI{E-b+wfJJiV zHU7b9c2h}p%J=gD>9&6V_SL(M@g z%5fK!%#mxkGa}NbEIL;(_3)N_X0!5=ptFM%>2)w#6lf*Ob-NST9yN0x&(GN$D%Bu$ zhH?ndYhc~g8lRGKJY~X%oHv}KM}JRDnlHHYNN_DW&h&mw=P#>QZ#%$Rs8shUALh>+ zrfn`6qxZ1e1=Rt};>CUIYUX^E68r4)&JzAyX<+r1H?5->edbDnz&*PZxd^4Y$gIsaSz^v}pY_nDp^shg*+4|x0PKr}sR#m;W5y1B69%ElLI zTO9RYC&z{Oi&JKAO}DWV*}bU@4&vitJFt9l<@v{9k!x?S|M24dn3bmrSNylUy1CVR z*Vbq3P=<^mL?M_()6n2Zz*EzH@65)KB7Wev|X3_UpgRbw_J9^-ufXizEBS zy&8^~%bbSvFcF5F%4Ebr*rv-Hlq#T8Wb3VNDmJ{g^i-UZhHxl!BMsg{C@s}nE7j#U zsSzEpWm8RUKx?9*!s)|z9Zj;$L2dr#BK1W3miZ&h403QVw&1P5xFbT0~@5 zxZn#~w}2Ta8jHf|$?Q+MqpwB7O?m;l%r~mU9QXT%P3u;^webp6?+2&0j9J#{<;vO2 z?MVhM3dRklCs!G0mjsp}nt!YwaYI?N1B_CtsZMP^Mv}TIG&HuBWKcL49`F`xC{Rp; zABBhtR|7@HYxf9(lb{c&FDD(?dTkE1O4yamVtkZR_!`eaQ}R> z*QkLWTd!n`B_*mo3#V^Sxl_DV{J&KjMqmDSZ%@PDp*w!eS#f%8&I(AZmkoPwy5suq zkJXbXRGYF6F|-+k-HRX5BoU_>OLm9W4cmQ;&yz>MonK8syh_k&C!DVS5wYadBR4Q z<3t#o{SXpQHTjd8k~E&Q3JZ}58b&!M0~f`jiMXFZ1w?GN%8$fmV1WDO5M>0{4esDX zCP`)(Ko8;0Zb^i{j~~^6)dW#`nhxoaV44&)i)2ELI`Vlybd=N}VC!iHxM}JDQ=}@} z7L(?~V03HP9){L8)l07TVF8$ik%7S5ITa3)2r%o^EJ7=SwFH!nVyQNG8=#CHh5#1V zypPVd3<$`GY)l%=`#|$RJyJ8hT58NM^VCEXj`0VmHAB<$*eWr8fuJ&v7hv;A4&M{6_Xc-7CBu}B)P)aJ^(JxNkg}GY?t8!C zS?a99V1f6wH6b=Pg$u_DtpWiqlzB-58&j{XXp_m~>guxFlCCaY{MC%=EmI{4X(oR< zpgoT6H592uPES9zzCBEzAE%3E#K*j@N~b=a*|z?dxZA&dwqxeM51yCnjwH~-pF9}z zHmR8LK4g4su-VEkvoa(yDD^MSDMNhV?^H&@G!+Ph*f|E>M@Bzvg0yt_E|R9#KA0bP ztZMO*!VmXacl!c-^R9Ss9SGNq4=vW9uzAA;cVF+)oG?!pmdD0<;pP{oG$u88#aZTY99& zLH1Eqh8(Nu$d^JXQf`Q1=k*SaD3ZJy8sXRh;bJfeyXd)wa~8INk*Vzp0L_achE1Vx z=0}Z?W0({@7(m1*(Kps)H6jKfWcZ=co+)PqBk~MH~eI<#zV+lrf35?ik9Q z&)w?l@258)-1+lk%hTtJ{pW9m7+{51?@RaRHIa(-6(Up)uS#z;9#T&w3GioD`KVa? z+uEML4hJSo$Us#}Z|lQB(EMCZS)sm^)7(_EdZfk_Dk}nFA_o~J_h>-Is)cO^y!Op% z8m@vmlyTu5Fqn@Sv;B*uH}5#=)v7Bo_b?xqp0Q{=HxsO?GK{P>bU|Pa!R%mwLsZ%d z5qzhHq5E3acCwGnA4sOPhagUdK!Qe+TuXOSjLRPzwh|?{*$`D#z4O=8zvlLxs$R4I z>EPNY;{6BoaeDLlFdvNEm#xG&$V83a6@T(`>Ya6Q@BiJD8GD+KnN@W=#(f(RbXz3 zz&y}^;I6hk{c;;dE1=~5JocS<(E=SKnGHLCrkN%j5fDaC4)Hd6(}HnVmE}DhV9o4_ z2o=gWx+<_W7t~JH zi#47?3fTn$GMIxb6xa~*^ok0zRRS}uV5>|ok|i_caZD%T;qGH&^2B(Vt0pwu4`F@$ zQlfyEQgLcYJfkP3i62L( zE$rHo`QwC5?+JN$l>nUpu|NR+5u3GP8BW-``c~ z|6=3iD~1$HgGXHR*rwptZOKVlfS6*FTrBxshd*5eFZovuH`HKE<6RrOfBc1$OLsel z_N^Q~vgz-$-*5V7)?42nN9(>k^~3M_mI=4lzg#!4=2-EUidT2@PMkOmXNAe#oMUxs z_8-*O?`g(jJw$hIoc-nI-}mnJZ#bEoVo6(+xI6uaX#c7jw=%@5W??D^=?=eZ=RMpo zYtKwee*W8Eeb&BM`rY${y8e*&>&rJQ^dJMrfbMdPX@z_RnFNRUd*ORaHuwAbmM!`G z>pw0{TjJRLzrQAbD9pdSrXznA22p%kdA*40nm*}mwh2uVJIb?_<1{-$s9^St7cgkDSy{aZ!lcCa!`7;U7MrCRGSocR4;#=*nEMNcSShVqEas5y4 zZ&vR4=0jhN=S9o3k*KK61JYD4ige?dOPST_y$0{PTlPcoDV9fpGgcMIhvwAPUhBHI zVOD%y-M=dDaJ`o|^a_mq6e%0t!eX`=viB9Z_S}_pd2an_^A*MI8y&NgOY>{rC1hl5 z%bYcR;yq>kyKgP2uUD=8;o*tJhv!cFe$8!Y%Kugk%~|2eVE>xC_-4k^ z6RYRv&Ry0_K~F_`_zeD7aTc z6)?7h^Mfk4;~!ijX|ZFwz5z( zQY7d0=t(>wLjFHT=N^~j-T(jV0%R8o4bTjwwF|v8DQJksEbAT+8mKuB9X!+qffWW# z?X*)H$Ys;Q24tkEt%HYJ+0c|u_jVH%;mo#a2h>`}*;{Ek*$b!-t1kic^`SByZefd$@FXY zj?VJKvt>d^v80Hkfpkwd3m&%uPW%1`4-S7`(xrXx#u;@a5gxbDRFUJyKQqo}Z0%7~F<-&HXXXaN6vd9JRFHYO^ z?`!Ki-a1h@>Fe@ENeM%_1%8sl-8N2H=Ji~UJJpr_>PNxI4I3{0xamggsYz3+p51gl ze{FZsSJ`W+fW_`nA!{bQNjZ3F&Ns)OCrtUH^NsaS-ZgzUA*arh$Jt~^yE}9ViPuTs zhEN+pDitHp1ask_V0#S?1>6(O_t>?*fZAfOA>sj^v9(u03G?osZ3-hF{B!HdjekA* z;nRQqyYri0hgh%eu3CphFx7rG+>dUE1ef7R3>Xsl>~O;fZipB{sy8=lO1Wub56dfN zrjdm-3^uAUCbrr#6pcZwU*8G>It+>kGQM{DPlZT~iK zWjw#4;`ro}u^+Foe<=A<9iTU@tctY*dIb2|Esz3jRBaB+tc>ekfS#Lw}RwrySO%-cUICx0=0t(#&!(l#o zc4FqsAAY!_)q>do4x?+yRQip+4Qk$#$wS=dN7;~FOx1w|@8;d`2uY?Nf!P^_3(#H# zcSCHL5_KoLd~{Vsla);$32lSTyUjs1N5Rk12F7t6(*j;|l2b%SUF){o zR~0287*4SPr5oXfSq`VVAd7-;$k{a@Lb!xUpy?B-+2F*^Z$N6F!$%pkJe85 zeD@!ApuX>);_aUG#@iph_$F)C2m6kdc9mUuMbdt>9r>RI^S4P22R3yUu3S;td|ko{ z6t2yF??N`MNsZY9KimmrCBzZH$vC=uj(vAP_QloJZ@+i_ld%&YJx(vWaI$Q|vPpe6 zF^?xKd`1MqrQ*B$)u{J_DdEn*Hn}>#WOd={_x}9l%}=hrG50qxgm#-AfiKotkJ`-H z(jbhkfU*mldEhsKLq1GRu_puQJ)2^!fwuf72PtnHXb2!7I?WL+g8{}!FcXq3Z3c)x zlyJF;Y?3$vIN*RRpw;JvpH0yy(D>IkIk>Lf&80)IH`J28i#a}IL&|Qu zh_MR!8c+1+n)qaE+i8P~ehPK7a??#Cf|0OACdNao-_60pV<>Dg62bAcl?fI%8Vr&)?EB6)i^(x zs5Gn7AqTv6?@XOd+1FsRUH<)u%I0%LYx`(intz3Eqs6c}5%Z3W}xRh!fON9C#V~iy!ctW#C&;n97ZF(3- zprZw}j#gd*<6wl*Bc zs4y9hE{8&B;zLw(WTHmTwVjr_qId>2{WsHwa6XOKpw+8w-K-*iw32Sn#XA`mR#JVp zWJ31)SMLAUoBP_G|E>_p_CHwa4*~=)G9wgP3>{7FbTVhTQlKMBG0lMwSI@iuO>x(G#Zb#6G(I>OaB^3*?8l_Ur(Rz`h0ZRyUpvYowR;7JttTbz5Drt2f3}A{>%FGNpSV+|C#yj z$ZOm+Nj4&x=ZCC6hF*?P@_=M(0(?dQaT{>CoQ*}mip1ykB;&R+CWd+e*XvTqUXu50 z52pox^8fhTe@;Gie){avr2ib>n3s2ab0FTmw-vk7-q9~%Q1HNNMb@5Xx?C%vICc_(Sia$o~t9feLN(? z>3}~Uo2-V+Ls`__3kXA`siVpRGEy$s`_jgXWlLQ(_GwnLLmBicVGbkLGOKB}yb{ow zar|C_=B|{-Y7n{v_<%m19)NRgOm${r8SQ(MwH`51p~50yx1|ZueLPPYU!yrg@gVWV zMS(2&7Dv|ckwUNZAT42GT--j|%zal5oJ)|BAg|-N+Z@%tJ{4n!GKgtFxZo8G^Tuj( zTD1I;P%ff3ZBMHiHgbo$%2tb;yC1E~>cHkzw@Hkp&?^*R4AXQEgJfC|PuO@k1V-@T z0oLKo%X+&*%;hKMT>I|Y=;*YW(#Y%}7+PWBA5?0YP}frFY;dGMUfJ)3PMSapw7w#` zzNyyN0|U*i;JtED6pnBxusa4nj8iSg zV6p}D5g_#OvjJeJXE+qNffmR_66=XEuq0FI5+Du}x_KCwrs;}m(Et_?=aCKsZ=K*3 zsGwj(OD5bk7>HeqmkKz7v7$_4=0`ka3zmO|b4mH`&s$F_yBctUlG8C90_tCGu@-@v z?XmKYP^es!{dwd({i-$M&bEZ;kPIv40&|5`lt}1jY)3tIpDx}`q69Tf6oJF+f#M6f zVPW`xfyr=kS_MOyJY6yvjsnO)~t_ zkcH+QwnWlUI>=IOHiRFhwS!?c+hPxMEAYF$ifAt@8W6li2YA`Cy@-Ruuq3-lfEQ^p zVV9%T?XRw91$lgr3Jf0#KTeo5UX-fj?MKwMGXAQ%ni{(u5s>wyFVr~Q?gQ~off6@} zbZXI5_z0%mLbFo{9CxnK5HA5eETPvky*>!2Rs<1D{LUVH1G zjqkpA?bF{thZS1#{=o;sfA0L>ii*F!KC}OI>3{wV)SuaZ>-OVcUaa1jwP^N>k|9G! z-qp)-mejrScfQ(WeDCWM#V2R%Ti3Y%r&Yt3<%_lHWc%fl5VE&12`P8x&t5VwH*!nk z=(_Psfya;kpYd4hNB#3}@bV62v09*$)FMpUEr}Lrli&*?MWAem(coi9((>4`z`wuw z`_PU5@<09Wz4OPsdrp*LCP}7L$RO1A?s^h4?bc+1^3o!q+TwV5P2 zu>S~i(FA!(1i`V~O$|YuB7xIrcsNphwyt!x(=0G~9`$xVIvW5KSDHCpfv9r{hq;Z| zAtabZh-2`6ViYK+`D`Gf!X$Pq$fHoB@c~&*QdEZJ5jGJfRFWk;nv~nq&TeYj5DSPn zD}Fj8koU9>LP*JqIQDil0>!CX(;n-ihMEFwZH7F5o+~e@jg3yDhhZ5_TNX|iTwNy~ znefKfXXj0N<4I%ToiEK#SN`}+{O+w?kBu_Ya1 z)`P{X|5)a{zVrCK-Ph00{b$>xPwQTJ>!G0Y?aA+|OOABdY&%|qx!T8zhlP>Sf9Pq|T$AWUwX{%B_tOt2r;lEHSh|{*W1)@zzjOP~Tz>t zSWDO>fgT!tp2M35Y;0`i;V4ArCOS_ynv~HS!rRUI!<#d>gg_$=IDj!9;zf)JL=ZcT zl{%zG;a!!B;2L7GcVq(=#>yNIhjk7!DK^YeKzIq?oT+@DZ5u*+ME6UE#&#&)%&~G09I=jz6lBj;K z9M=nC2+?)`kI--*hT=JtY0H1u`H1z}w~xHl(%QJ@_jl($df0wy!W84{XEHBm4QR-p4CUQNXU_fOb_EkubIK<5m13a3TPR{Ta?A64SSNJ)R+*f*^-q+DiccTk_1N_ z-7H>u>Dm>sPI?P2(K1~mX)Z1DT^fa?osnJVO@#wjRyDDvg1D-i;)#SkE@htzm!zQ# z#d0f4ONCDfn_;b<>oEIVd7~?2%{#uYIx%NXS|~JnV45*LBRB}7Z$TJHrb0lO=yW>r zwFUvh6Q=bUA!LIGPw5y%Z$cyp;GkdbKAdz7WlSq5rKscK<;0QBWO$#hwJ8oNxZqvG zgv3D-yx6nafC?tc!w62%9tU!2L_eN7>roEUqK$7}mpdpfRH!!z`woy<2Oj9xUJtS_ z)alAxAFx8KVmYp^DB*@STh3}76XVP@20&iUr8M;_mUhV93X8F0=0_AxhidbI9sl|{ zqOWkt!MJLSu%=X=6p)TeWt%Bo5zbLe+O^1Z>{42Cf_^Ag+~oS|?TUMYp>Pe)%Uc}&g za1LU8g~D`8l+l3xQ0w*lVwYSR0F4k60=H~t`S)ZFcDOe|qkSn+EJdVrsO|VF3~WVq zw!ATlfT(YhEv3me1J5=ZEU{>256o4WE`v^$=#DFE=|7rQX5~mTxqjRrkjuCfd95$n zFRaVakFhbDoTg*aab!DAFnLyxKz1v@Qi4L-tgf^FEH1w-W!S|AE9wzjyKC410wXmm z)m*wY84d3S1tW=X9!s^7obU`) zLz0WAga4mpid`dYPBpH~ZWflVHtM&C9D+xtS$&PW&R^(mPvL^+W^2bP>Cq21{dX|^ z$vbz->p#p}ZBD-T$8Z0vy1x65wzZ#s^V1)t|GsGZ+}tpA?)qP^q;Kvj-gIf6S2pQs z%*LhV3;0`SZ|f?n4s@5zuFeYyd+prR5l$6_ZVHT7R(0T6`J=F6h>Bl5A1hNh&*`YaG6_h6}CIogq zrlAXG4}E=h{mKoa5)ohli-H!D1nWd?tdKm80o2UOCIo&CfT7ZRSh?{Q3{1gF&fZ!u zu@Zp5+skHWWNg6%ZEV4eqY#IMP~2NOLEiAh#ro$)47_L zk0OMBfd~`$7u4`oYv>FKJV6Gg#R01S>a%HKBqDVh0L;U8$brNOgPqer#DO;g8F7S` zCSrt;K*E(hC}1Qppr_#sY9Q2jT>zUl2puI>+9$ZWcFIjJwL`{;tf4F}J$Ih&TqWGDCA z);p*C?s!o9;hp;P-?jW0_y8*8r4#xtbv-H;JDb#y$6Weq3ck}*aWoEceT6$w= z!T9|713!JZ^uo&gg{vRFK4IYLi_yaKCudwalO%9{e^r|M=*VBsuI}I8@H9;or1K>c z*ahDY`CYqAQA%uN!kh9QABf3;chNYmvWmvMsAK~-<5so0bSV%?UCFrEpC zs$G>k=7NQ3OcRk$i>4r&0MA5oXfdQ^X@|oH10}6K(%Kqe??F5YH9}D0<^Dar{bXE} zbz#RJ-}f}9hB#dfL+b?$`AA1pLxBUN4!Fjc-E-Payh1VQed?k#qXr9u_qq)$ivSslXIrncdgoqOk>>Y5C>izOA+Ustw49R>UC2YF8%L-dj#U z1wj8z4qQ$+Tn$v*Q_l`iI7M#DC$|efCY5YV? zyggEcj)$*(OIOjMgo(^hCg#f(F{Lqk9}OP=C+Ebib#uSzI+v4?ndm_6R-DTWS60Qc zt&_t&XpIk)ybd0-8u0H%IcexGQX2#G!1peb4zdA!Rm;gSVqy|PTb!fS78 zM1uHnNkIjeOp}FRDvTFMESw^^OReaBcg#DKstY+Wc1?_f=AxLaH3XZY(IR>(o77l2+6b<{%>X%9U1mU@!Q~ zJgm4@+|)#q1NS!DWzB&bPl9-T(11@>yL{eciZfSK^YAQC&X8c{ob6_TPv#m*s&9ah z$fB3?oFR*u?T3*W2mz%N`n@$U#}4QFlu+`45RavWPj6Ajt0A5v9;Jv(6%?gZIM%d) zTOA#)VRKw@i`p7XXac}ZaJX9>1n`;EE{q|GwwlvZx=TA8;BKT4Bxos+=A4cT!nNO; z#AZ}Hv+s(jGyn=L0PvY~@Vj6Om6;*biz=kAR<`g*9Q|mlwqiJ@1HL zeg5j3vNy+%?p~o>_HGT7O{ap!t!IHp&IjE+WCqK_ zU#5ToX_^UJtxUuM&R$Q-8NW=5N9g!)vA*q6Y6S#=`eiOjD8R+3Y@F?K5KsUIWFard z>oZd865_kEqYrN0r(z8%=at82llJ-d8rH;dG8K%B0}ChSS0DK@dZHCBeRUF+50*3% zEAD}$UwK6o8CzV&ALQ z1-nw4nD;A}ud>5GauzfZk+dzzB7;(q1)FUJ8Z6SnU>a`i_pe3i4o#3GQih8=udi6lZOe!N3pm#P4vfi9t+TMKc+I`ti zX?<5l)5b6L^tlVY2WK8L2?YSJpSCwHOBIzt5@CXVoJ2c2*UdhEg$N6iguH9Z4+rKf zJ$6PHJC!xqmE31CSDkd2=eGX%<*TPY`6lK0{o%i>4iD_#@O#n7$S-3J?LW8v_{+IN ze>h6Lzn=1(y!Y|+gef2DuT`9UWyZ3SzV5z*8kJ)(Vc&F|xyJb{wXC_Syf_?f-{VL! zmv_mzPkH2PXJNFV0DP@Nmhmv zGg2rv_=1=aEtsjqb~v^~P0I&T+}=Dmr#PIw1?6gi#^p#TR&wbgfIyhiVW4iQhhrj_ z+BD+2Qgs2!*IaYC`S(j5sv?MZ22r*^&$K|I3l!HhOb$zZKKXw17`+AK@H}A;)tG|4k;~2pIFW zh5~R3&=nYi!H$z>6;IH(&QSCR`cyyt&$Y*WQ~%ue`Nw@bKMwVqV*2Kp-g`Dydi08P zctb{cQ`ZNRJ1R}CEJnrE^JzKZuccq!4pZ;@y zcXgesi)_A=8kQ#czUp7U?i_eJ_xaM6%WHmE(vyLb=9pI~U_8wh4 zU!KV5x4=q-Ll-dp8#-#Dsyf=_m<^`tFqZIpNo;MClctTZIZ-%aiCZ}}^4yBp(rK9# zxgSUGM`bbT74T$LZLY?6bz=7a>GBPcsQumCORTXB0L1t>Xc%35{`+~m`CmfaIgyY<~X0hrZYfR?4z5C z5!eAB^7W=vV&X(4_>fmO6qI*5n6Cee%TpzpXcN#LCjkU1=s!uCmKd?L_OS67yJx|2 zuv0;ZPI0u%PcBP2pO*rAc!tGCgkZ{M+B$G8XL&Yddyx{Fb_2A@poYp0s+S7#LUoFl zj89(xht@xNNeId6FKw>;`+n7(nLpj#Ha;JH5;p$4KAcHj;%)fHYmPn=3}eB zJG^ntTd_;F#tLH-#Vct#^Tn0?H^2C1-QV32Pq-V<>7pSWpgs+DaBYiFX#nO&utw&k2`u_ZQ#?!@VOch2#)S(kMIS`=_%Y!ut+x3CF*CQ5qhM|r`bd31s zT1jHE7mYJex8;p`+YvovoFS+TAM*#J5hA+B+|)q3c(+NF$jv2e(n7AEPLmnqNpXLG zUhDvcx7S%u%PkGK*Z?tcu?jGonG3ypCgD(n1G2@9@EfpV04pMP)13yS{WZ#Vi&NxC z(8Ng-1UvF@SjQf55K5`iLM4=(G{P3ugO1VVYH7Hfpb)SaC45twKfBOBc(WlnQPZiA zh1@KjlMLrBX5$ICJMvx7wHSmJ5CR-P1o^qUK(4rFkRrm-H(;aC`va6loRR#R|5 zsYWTd#)`GT#0&)(T>wmFe7S|}W`tSHFd2f^2;e|5y6Fa?X$XgS2?=oI9A;(#RLqDs zELvL{4dpdo4u!U&2%2+$KpUyl8sa$)y2i+deJ{ccmwQ=Ql(*e+n$F~6AdcrlqZfj& zga;jtR-*Qz5D%7bSWSG<%g#o!7)M!pvtCI2n-8W}@oWw!Fhrvrz zqqf8P7|f#PJP3+#!be3&lL1n26@X8zS5e#)6Rxn(v}LiZB3Zi)vbT0O*} zFu9-(1Gu6F-Zex5<0OqN8c5pENr2&E{1ZATE@6HFNLE_VTf=npmr>-x7e zxW{9qF>+jl8%7}_5;Xzz-9d~QC>Zr%6c_`Y8E)|iO-^P=WX$rBuR)N#zv-?WAbPO z2n*_ZeUx~FsfOi-58+C^$>BPfA3*Y$!D|1YgPjQ)HDFLV!LtfS5hY&FU^J_EL=(L| znH5lVn}AW3uc|FLAYk8AX&Yk;Z?D^x+SrSZ$zz*)o0}4kjl0(@UJ*AyIe4h=!GjB# z_uI-w#Yb6PeFyvc6Qv0cP2y6nlndFn>IMfh$rJVEOnE*ng!k`x^hf`Kw=cST!Kc4^ z4a|v@=J%fe{Nj^OR-9V%-JOmH-e=F(_BC#Mt(kS`x1SG`J<0yp?|)qB*j@S8C!=p( z?>&0#t?TQ|$G*PYwOKQg`}op`$T#ame|y8a+3<=22daEExZPHsdSj7(-m}yn)~}Ck z9{%!H>f-Dx50-Xy6u*0NMiy^tZj-t1+ba)K)8ek2Io|!ljdj<5`_J*ehOR$<_{IBY z51K5j#+4j4N;ilEx-ko*292_!rIvO%2c-wk%43f`svjx+=GmD~@4x-O%e(uQU7dIb zyhxzWv39qDN!usyXtfXmVH7vX0TBaP2NSa3UKDfkU__P-L_r*t-NY^zBv?IS zHHeSM`sB>@`=KjsWm)-@&cl7{`f~52DpZC$2j4#R>$X#GEZevu zeLMGJW!kYDiysKvy1GV||2V6(B%|%?cP4aoH(veoFmI@BJI#S)ubcUzKsp!FN@NRm zcO;ep!Dch~jm4X8{28AC6i6kqanaAfcq=M|XT52wdn-?Oi)* z!i$ox-da2P4#_rZyl+N7ef-fI|2)0(_@v~*mFqR$cb?as0onM&-;y8w9FR9t?Gf435AmxNgrDF56LkR;^A%Jfbl*z=f2M-l|5DSVkSB#GqiS z6C?m)C6`K>Zs1p7)47Bae3nW}&C6h>_AqGD2uts2Sf4Uo7?&cD2vs=nqkyodv9#Xo zP2O1+J1dJcz(`!CrmG#a4U{BgI+bwz)X>l-cR<#AeF{SZV;hA<<72oWC28fTN+8dz zzkiW4_~78v!h>8TPSHR;Fd1&qhbqi~;&Kb{Jt#4em_EB;G|PsPkV@vpc5nANjQvJ6 z0kRsx>f=o(^oj+aa^&rvUeq(p-2)_ol$6L$Ib7a}TUgN+79=^*7_`P-HpP<{ zi#b_aUx5RMLX1$>*4Ptd(I=lR{QB0e538n*zn0P1Tkn%*T6~BV*2YR~4E9RY!0m87 z!ZiOb`9<6RXZDFx_s&c#-0IF9^GYZhijI0fif8_j+pFG|i@u2JA zj@!xoz2=cQTP4zP20|ghM@b=RI4)PZKnJOxakRSkbT!RxZfP29n$<)vj$irO)+51^ znI+$bLq?~vF02SVEYy*nj3xJFOWX1gQ2fzN6+8nICvft#7tvMBvq*4;$kzj-1kj?x zv%ru*5=AM92Ki_(mq9Rl!jc@r;b;g{O8(roC_@$uCbXnjWRQ@p>O=uzYCz~Bom}e? z`MllYba4axr2}fMBLl=?%1pRlF}@vUh?WG2VV7eF%kE*jlQZXR66QXlr zR(IE7;6_LzHHjj91@w{8ArR}bv0z?EidbRw8?K@3W!F09HDG4*;VXx9bCbq?(?5~q zM(J`~{s2sgV-O~wcU)|CBaJB;5%=2Hut8Ow>vf@2I>2I&G88Zv53ugyGKrE zv#nw>*`l~fJNq|;jKwH(0l5;9pbW~q1R-TvUar|FEx_3|4SAyowjhF;Ee zy`t>y%-|F-vhu~hY$?wd1JQJ$ zFpIudUX>*v>=@J;2uzTC1=WbnPO~VuGT@udi1b5j9iPDmNC9%YiH1=@;_rs57h(Fr zRX$QjqFBESVr893e;_mKRxjX;Fg?H*Xf&e;Y^xF+cIX5m2Ti?}&5ID4VBYpJXJl_` z$R(|3d(Taz>ugRRmo$M)bu4;t@`4r0w7cAOHAg;Ne0j;!urOX-9MZflJSLqQGcVjw zjOVMmE~J~lJDXDYB-EJrdA+bH*2s^-0gFXPxs-=UHct+r4w-b54Rt7ZFab00?FI+J zmHV{>M1{$%^`rzBR*vG^=?G0bBNAFg0hLw+W?NW4A_OG!!FOPd?8oEBaGFJIuzAjv zflyGkGba0GNEVohArAvKyH<0QwcZK6tJg!G5Q(1TfM?!PV?ApjM!W*aJn zet%p_z3d9_XRGu+$`##uhcsq#$-!oMvj{hcE<|3_3dmtysX(Rs%sl1T2?x z)hWtYDoSVKBk+`m#+%>|68WW7yzK$)FjDHTs-`*UR0h_PdtqJn zn3q%MAmJ2KV|9rPfk(_u+MC<{)qyuC6?ldEP}g9+d;9%U-=Dsl{MFpA<=r3sw(7@8 z3FhSM>)%V?_{saBdEU<#@A_`t@9)2RXmeTmC(HH8Ux>%Ar`ZeF-oI3`e8_u!m-ABN zHRAG&H76_AZhQ|?Rew$Q&i&8h3(r1YJRu;-B$sd?d$OW@?cQYL1%I7r5Br3&T0!RB9;5 zs;}i{aQ0%0gjqt4V6U8_Gj*C9>ROw;po7KO&$p{WyIYFrV;6H8E?#IEG7h!129jFq z%yvWrYby z;ou2foz;NYH5uI`dFe* z8ci94@-yCUj;RRG5a#dC+k9}@wd)&?tVx^l-qZ5VA0I7v{g2IWeDrr(PW!jhb`RY@ zc%tk!latX0IFN-Wht{vVZ@le4SJpiG?Bd7WKR^EWlbgb~zrHu|o!V<|sz`V4COK&Z$1K^~lzo(FXC+1ygpc9$qwf z@9&YV1DB^wdeS5qhSW#~pD0_stUh*EpgS6EDqd~u3d^)))nVLv{i)uKm!AK$D`jd{ zy>W7O{)$*)XO{Rka%Ic^-kJLA+S{SwfYbP8&)wV1nJUiAC|G-7!s-%;2U@r=Jbxmq zex|bO?7~$ORhtRGea->Ke>3O^C-~G8wo!#+cXP2&Sr)aH&ODS%}{i$E1Y=C>>=68_&ApDl3Y^ zVUi`stX7(hR@bUd%UC`$P7We8elrqbHzWLtGf8qw4T0C3w)l+dwhIj$4 zi+EPpw!FBZ#mfu!eK2=d?v#V&n}qFIkhRbTk*Pi!T@GTLkvd`wn8Fmu>9G3J6w(dL zb=wU%Q;LBUC4|uRV_O_dwG^bnZhI8e`a2FRx@^g(6(oWA+;9YNY22#+5mDGmKzG4H zi9xip0Kf`ODO^-gW5vhJgGN{kc=04pWk+@q-RFn;jm}KekiMp8cXLerGPeU^Q{bb} z`?X;G#O;1yLexxdSg|$La$HpH2;-2P9y2*yb>se}?hhZ`|L4ECf3!{{jPdp`1|Xpr zHU&Q7?nX>Z?(@hH;!i9*aP!sH$MA}xw>7`S^tPcIIz;!#n8T=UMNi+SjrLX zRI=irr=7}`!si6OtdnNJPv`oYh8qXY{JTQ%!k_ll@Zq)fsYYaoK>>TN!z&_gsj?#5 zA}uNkN}-tEd+!(Lv7dKmKUjN8P@ZPRbMB`fNl$M5al;a@?8DlYr<1#VJuDbnSH8S7 zqbW5AUoK7T0tXBs=`UW&P z2U1s(*Gxp1S3D~U*ic?(c&_PE z!O6pJX@ZWL=z**tQZ1by+4pM~-t6?jrV$4!nCCRc#O;XBVz4K}R|e}aFoq){-E=1e z%P9j;h>7}fA6Nt>v>pZcF{>!J)yegQ@qpxERQly{G5sO=Y^o*4QFFQ}iJeJsF=bCT zIwJHq?H?r0fER>B?z4Y{}k)kuI07wpVBDDR#2Zm|@7g$RZZ zA?4*Tp=MiX6ggL}iqbi;b{JHon_KR0HtTJ6pBw;?RF`2)n=Re^G8+!q>2`r=xMDjE zZqF^g5Eup}e)>vh7721kr8-=P%vZg8>1sh7O`zeb^5U~BwT=xd9$bF$^QyjgSm(Xt z8Q;>v{ZjYwFUoXOg2y*8z4%a@8B5pst%bb{p-!5$;OMXtmuhtBk5+7{K_ga>Iqn_ME=F>~$HN)-Ms( zlw8`86m~0zpw;#&EgBKbG2_=ZK~)C?8Ig`^K>_tZr33Alh?hulS~P%MK`{UlV>@9p zSld%64miSN0KTnIQ^s)831l-94U5@sB$;unqHEvblKvFN5DwE(ngwmaX+~sZsoMxe zfr#O2bFw#Np<2BJcMy6gCdyZs-r43*9pC&{p3uwq;K!6-FD=T-XP6%53}os=R0qR* z+J)~SKdSpOwXQ^OVh%p|Vc!0k(quO*Vhb=tgDaLxFkNRpg6mQ27EO-eC|7Fv34!v< zS}!0N1AeyB!Gl??k;!eEvlRtZT9lT`mRnH1yhq?f)YKqEi-88-tmGL)Bmz<{xfk+h zB$#1{9Yl;!cm}-&K7rOHyo?1_$0HuZVMf8Amx-mLG&ssEU>yK`q$BjwES*dNG!`GO zLpjA!Xi-{*a2RCAOJo)S&9PaINp3gY1-?lj6H*W88oVE&M3mP0WE6QO3J)}IZE>uE zq6})|V*n70M9VCySOiY;b|j`bl?#dpTk?0yRV7l?2xgcegg)lQ8ekbAQj~a;qY0Oa zf;X?^P~ebdy&qEhbmb4$^E-vQZ;EqG8;=%0zdQCUds2Gy z^^qq7#qY}AoOb++_4nR*^!B~Z`4>+f*^0@HG*_Ga;<|yBUGaBs{!hif?>)|bW&W9_ z;nHP`R&?|S3+7yP%ct-tZOYvVf~ z{`M$k=Bh!Xqnkz_(^^kAajghbp>`b?4SqOx!kN@^YlE|Df;v zec-!){uvt>k2$t}TvgOW#_dzp|4Zpg+RM$)YN$Q3HEyCcj<6B}97-aFq)l_U_Yn<7 zq%F^+LNE%JhE5bz**d-z0EeZfU8q(rmF>M_VfHF5i62Q1NRFMVy zYVO;^M2!;HAmL38g7AR!R2UU%K*H)O$wx0iC=^Gs+gywxUFjX!U{dHwxCZ|j}V=DN|VgO3U*BTb7*WoY2CcJ^c>D>aR1W^P8W3t;&v>=3=u7Q8 zw>(i0wRc@^AwMwryz$#>*IHg18?kfmq-mt|ES1;$^~kSZoqy{^^U=TVJbU)rg9+#R zziu^(I@L`0;5rpYp!{WDR2_C`pPY+D2@1Rw78B=Ud2!RSq*d74b>cSHDsDW?uCN?(gQ1^gGx4O668P&w71?9L!PM0{`v``PJ8FSSh{3)rNaXNI(bvtUC z56oM*CqZXd+?EyxazQS87k4DzkIDcIhKUJf2I!06t^pD(Za6#9kHhs12v)j0Z~r=Q zjiDHjHsu@#$i0`xhXHsA!bHKJ=kQS?gF!Dad$gdPbog@F7KKF)jVm=teeHN$z5Lr8 z%~H2K&J+Vp=+re;)!ho7X`e+dU5voK1T5M@c$g6m_=`A$d!m$eCejo5D zmK~XU{fjwMj$U*{>g8OzykNPVkO-|BM!y%}(a8whPx_eY&6};ZdGC%6WPkKQMVpR@ zOh*O#*{-NLg^0HuXD#}LIu)``ty!udXHKDolNc40L4m-NysC9nu9$Z>HRqK{W6RFG z80vnsW_5D7TGW8kaJcp(e4)CESaq?5W07F}i*MH6>{xy3v)x}zcy;Zj1`cJVQkb6p z&8L+>8o|xRC-m|xi8~qBK?Fod9?s;^+!Xt;x&SxKgXvBvYy0;mL4;{W3L@hM zAlivPrp|f^@`O*r7~XZ7yXGJphAQEXZhK`UB1@vK@0j*7-9fz>sZAALE?C)j(~fDl zf*J@+Ks|jY8oxVv#&!mL*WIo4qfQoQF`%q~RbXYPeIcZcFLsK@jQkNgRaz|{L{Jwi zvmHNW1p_U&nv}qDJyB%P3lN=vPxZFtWFu|B<48;n)*)pbNJaQ>BADOV?cJ&@p1?FO zi_54ZOc5j%ZF6#M>^(FA-eu`N5%XE=x<$Ge#ERS@9`z;%GwY3Tbr(3nIY=jI;qx1? z9bC?r3yN3GOo<;J{3CNQ&khHI4mRAdop99y-HH#Y<9u9Q3Nvenq6GQ9LxDA?N--M? zj{(T*Z7C?;IBH-kz`l561~sq(nE$;X9*AO1eA(iP~SE$c5nzi;J_ zM}J;;Dk;OIG3i?nx7uz`hEXd7^St;rv3y3MGWmItF;PHrnZ1PE}c~mN+$v+RLsy)H#nFek5CkWHqmJ?+~rB& zp@Y(dF2`YHd6@np2rz9L4kTg0>A93c(KUp2GTl-c-3shhd zwT?lBGm+n~jnwj;ya@0)Ct{w2-REHDWx&l0emeTYP!R`1_&WXo5}?p<<`z(a424GQ z#}A`Y?T97Wh=6LJg-hrR+D+B%COeF%eXbLJwLDhwZPtaqNqHOzZt5^9Gv3=2czpP)H=YGoAA2)>4EHTo*IK&j3$ibjj2}%hqy%$2+#?=zNGKYPoj?D~ zZ>{J0IybI4_2jngz1i+3p=-ZL&3fcFk;`<1?b?S(nZW!Qz67(eN18Fd=Gj@2=VPoP#t-CQ{ zZGed20}pz)xuH!r12w#@+d5-IK}Q`1P9|VJ4A6XNAkK%%#?%EOR$w@smCt3N-d1Y2 z-PP~o@4tGz$`?J5u~FC5f{ut1Pe0q;UqW6SHr37 z@oMWl)vuGZd~c(57e5VeKHa5VGfP;JEv*Wr96#CtRE!YuDwG;2(H&t+fsRDOyfT#Pc~m!V_K;`xcTLGO;vYYL$_uwc2Rh;+e*#N)eVm~l90mLvrdzB`rUY36U!iTTy zn{oTsdsi!G{QSq6Llv!^&a@H5p|@78>TY@KsrwY0HfX(YTULc6%U$9xkYk)eVWbA`Cu zrxl7#KBE{sBXeivk(-fZHn@L1k#a*>BiKHTBKRpefGt|UjKhF*7D-7sw12-%=IU&F zye27fzxsA5R|Rc4@b--pTi`w|>Th!t6oiN_s3H|36|-z<2BC<<_@Htx_;M?tcX?#8 zGpr>yCJu!|iKnzx3Fh>Zz|F=YxXOSWmy@_3@CrDbH=Gc=7J;;|Rxd%yX=;$|tJ$?% zRo2g!m(<~7UL?P>LN|QpOnotxB*J`JF5XBgt~Pt36w83Uz!q4Pfsz!rJtMqw76HtQ zx*BCkP^~hV&$y<8v9Kq7FTr9LIFmVf z@}aW3Paa-m3j5L6FDZq$n_}8YoaoAOz4%qpxqa`{kquv*>l7R~^T_+= z$#-XM{P(^_jx*9v5{Er7Yr^Fm$C21NA21$~VS?J3I*EAWtG1?F>kR93HvG1X6B5|E zVI#ZS2h}`CQ@`WngB`0b3_UlmV%BHze{3DR`|C4Xe|=53{rzlxy6}fTGg}Wmd3Wim zpFi0hIEl|3dgNSjVQJ>OLGK)=RO23BaCsrNnLdO03V@7b;<4i-6f5Y8jLX|MQ&icQ z)&z}?M#w(qfi6@MD9sB)Nkjw)2#5(J=94Tok=p%KNPyh6!xrf^@V2{p6QPr}ubM>k z5OxFq5jM%+uj0czttHVsS!Se`8R)?1S!B*`OXF@?)RGEYURY`vVKyN ziGuwn4i74pNmHVM7|Z4;`ej-=11i4uGNy<&&_IN4SbM7}dqPL>U$CT`g!$H*{@=0|BzjDh{wv$M6AtNAj`T$6oZCVg{tS)gS(B7Ew8^cjU>sERkwZn&G86)b3D+q=zUP6Nc}Ma}XWgyqK8_stR{nMk*?jM#A141gZNFP~&u0=9iYU1%h)FdG9O$t-?%%~&@NA?X zA)4fCO61xI9$P(0D^;v{b+AXO9fTj@)ut#5Bk+N;k{q6NNX*HMP`sql z0-{6#CU{Z`O!c5qq6yH*up(Tiq0_A0WEQ_9Azd3W#vw(X`J{eDJO#P;hkShPTGEn-j2g4+m(L4jN51OIihv$l2^=oN6bL7ap1^nos?L6WjmGRCE* zN7&T3FO~y$QqVt5l$EEopg6{pX?a*H+fRqlQ36y33uTmUK!sv!HdX>C>a3T+X2B;s z$XI~%xzsN=WdVK{Qm-fSo!u26j;MMp_%J`rL#2XS13Cub-hXiUbCzw3YHSUCK_x<| z@t*GaYJYGjR#e$puecumbb6=-K)waB@`4COFeZLeumIW%`FfmP4z+%AtpZW;)q)rT zO5`9X-Nxq1VgHJV#C8agkXHMN4^e}V1wkYet#EJy7|{h)0%pQfbBYKp4Fiw=h0z`D z#mi?+PxqR~NS`|@H$PlIusVI)>c77D;FBNDzR>fp(~Cd9bNlDPpWZlM^yt~WxvvdY zhbC{o{A20j?W;a0o)+6t9ai%3rs6N22v-N8EL!^2;~7oH9X&HziCX+C#Yaoi5@nyQ zHJ$owtfFjBwwix9r{0_vJAdWjOXklWefq3a)gO?fDpmME_@U8}Kw$jI&mX+ zd(R$Ncrb9~%8x4-#tbYG!RvwOlD)zO8e3%Xk>~~DC#QbfcQJ+Rm`;jUpd^v4F)Vch02&DXvw-V$xX5j&ec&;3#;s z4aJqQi`7u^jpeCp>U<<1rXvO%CNXQZ0H%T2BgW(cPZSflP?UQSz`utt%{=7f{`}*n z=RV(XuZB0DapJtzF$ zC_>HC%9iFXxm;c`yuQ)J9z*!CXC%?V+c z#*5U38AHx!SraJcZJ9hRUtbG_YJA-%*T^=dmKqn$jh(x5-p+ZsKLqQFw%AaGn$4vt zgO!(b6SpDuLU(zdOAYyV2#EzCA(Gf7@`y%AxFy?;D^-p(1J@x1hCf%4b3Gia{*Vgc z6~L*?7{nCh=F@@ruIQID2*%|Dy6S1e6v1>W`mwAUMKHFGycHAKVS){VUoEc=M?yw& zI#A)-IqD^y8Bnk~K!ZmKTbn~qMA#x76m4*1DGL}Q*lAe-6$j(EOTUEnkMs2>KieH& zkKh8x>_0GZ)?8MjV-iRg&W*Qkli}yqbvpAVPkQ^YZ~KIQAHTSA0ZWgB6(Bm$c*(=? z9}fS7wWYSAHt#uHFs70PRek}iU4>$jcUaXO>@Be&BHaMq^G|bK2l%&wc#&ukZbYZz$&zyuc(0a-_gQVDl zNWWb6t3nlY)=G&c*nK!qgZ+5^(~CG_qHH5doCXuQU*%VU$pt)BiUf< zgEb;|09zG{rfp23G{wWwbD~8d2Vaks^VPZbZW2`sJ>48`E)kOZp{>W}L2(WSt(xHO zP68ZlIlpMx@PsC34E)j!NwAe5g=BQ#{GKU1fu$jmvuGLDFomXxmDy<>ww3c=AN=&i zBk>!%$`;lnSQVTC{#elcO5)z>hFacLhDs%(EKmk0!ipTwR>YUdkorWQ+&ghiSx+sl zuCMK5+knoCs0CaM=d*DYhOnO6`N!xJlB|}g&1^_xIf1N;nby8K20a99#mjj$FnWVR z+&GiN;DFrB*lyH?GN`0zvxF;G0@>S>hV*A^uk|KEVhOSHoO4t&>-RptcE67L$?g_cgH~7h%iMo!DbQ{7!+F3&LJiEV$IX0gJV$4 z-~_}jNd!$m31&FPAneZuHyMdL?C@|_xzO_!u_Xcxo2&A}(7=;{ut^!p!4u(#fnHDu z7DKOl0v=p|jOFU*oa`9M)rb6@2w7DN*xj=VK{yJ(=U6TGdbm}}6oi<7(GwkNI3s9u zoAT=W`0S_KG-^yhF-(lo0)KD&QCW7WvRkHv4qsTee3n@sS~RO&<&F%XvFctb_r1T~co6;hTVMS3 z^^>zN^sfDO{~=NNs*z>iE&cTP%Ho}~(pw)^Rc7Wl=*u@A`nt>+4~6MJzkl~Up7txW ztaWi0*lPG^Er>4tP~g;y&%SrY_3-4~7j8XL1sCm$$q`}6MC+;CGt%2DD=)zksXLJ~ z+g()Sz9`+^i@ZKN)tNvEd)xB>1*MWl< zj{R|JDmK0j*03KGzh5jY2Vkn~i|&TBuJgJzt!0DfO|F6vqLlHqrA8rqFKPyFGKv5s zhP`Q=2&oajirWU>Vxcr@+6II2v?eGE;RTi?)l4(p zf&AHK$dp7|MoQ!WJe`xhzkTzS?_XUOue^IE;qWUHUwZx6f7iVDh5X!_DkwlcO7UW@YT5Uye1<7b)bWuo&lNA#10i_+1J72R!D&qT{?slq# zy6_tq1KgT8PMmb*)xvP>q-@~|n}OWT!8Fs9l(G>`+~X|D+lIwW#Rf!JjB~+4IHo7e z&!(F#TVrON{BcjSq-UF}uJrq%CuKE+hK|WTBB}MQZW=iJTSp8}(QlJ98OOXPJSD-+ z=a*>x*RT{@_9oet=Hkv*61V(#NLqc_Yv#!@*y2&isqh3Uum09-e}7Zilm;`nqpc&c zG|C_xp93fB2eSnrb3slB2Co>7Y@$M2=Tr5Z@Pnkb3ySmPC?SNMm9-ff^VAqiCE$dX zB$;-eC9O6e&M$#pA6{gHAQDf+i4=bSNoCs|U&zv_(zw!zfZ~8u}yiMD)hR zn=kIyZ}|1$hCf|*g10jcOwqx=0UH6>mk=zK-%rk=`35nr9RqK12)bnAq=(XH%xiMD zxeuSzKE+?aMhJ}s4Tw{H850_OGlG{(uBD$aQNDWwEHiL#Q z0(%~FCCph_Y*672OVx1M>eDi2F*ptb0+4~H6Q~n9P)hlrLD^AR6m2fY^jy*snGo$k z^dd5nLM&$6I3AC}YIzeoxc6>qm^YCn;wTA9>5S>wW$O@(j;!;5g5GR2MM0^Q0KXm1 z!7&P?K^<&n46`eQECH;lK)eb$&^qWXvboQc$ZU3)uC$WfJ}jhS(0a8GG9iK|MtWwqOhob%+7D3x$uwk!lN7zzZt0 zkcfpS4|vHOzMz`W4}&N=t;qw9c7aqa!>n0+Z=@q#PM|gqBol=SsOH72WVa6yKs!7o zRb^I4^ae$Yi}#V-s5-KG`I*kEMLg}L|BUW2o&Pa>h8w&CG~LU^soO47n~nJ~BIZZW zw$WyL!~P9z0^yKhZB0Y8l-YFEWv{SQ#@i5&nE_}UAEtg3N}e%KH-hnLo_AQKbasPa z4UQ&zcd?eUwv?9{>9Duc?L_H71)p(Jcy*av+nNz8FaQU)CF8oRQSMN{nTE)FP?j+d zk;BGrHrhJX6ed$7L2wAAP%XUL;5!FChd7q1|7x%8%vxgFbUw##1fLTsl46SNa2X7q za3PHpXplt+tQaBZJvKoRigB!VtDw7O=F*Mn+kh|8nNkJskeH18W{Hi`@wZU0Q+#d=VH+AL?I1lu@JfaFusD zS@Mciu91~3MMpkAapP*$u~+{Ln4e#_?7Pv|KK^g~OQ&uL|MBF(yw86yewq2NJ6|kW z`%7^AdTmAP%Rg`RkF*>qJyvoilH)YXwIRWPvMIpiJ?dD?F6WHJ|#X{pF)okH_*}eC$}U z`gpbe#095$H}k zmw$h9NPi?EBwRc4aO0ghM{{@8a22*mv2qNg6Q*%ByGt-`^C(Y0-G zj`kUc1J$$IH|2-4;xiMy>4@9h)gCBtd!SU$jmz-@$->lME7!l-b>QQ5ga2zhHtC&U z!>^l{e!k(?qpdKLtsQaQ{l~v6Gp?*}aX}DhN)-QGOc4p}A)ZVn*NTv)fBCV>)RVW* zk4~QR$q!e0?r$#r-f}lMb_clpd14MrmCX_BsO3lA?p>Mo?Kl1TmPi^{5rTmrLL%xs zrrz+g|6b$djoE`ZKpE5=yZJxMz6*`te_`jV?;Zc_h_1Wr*{!9oe)x?uyZ$50W%QWg zm=_}AWh>LlKl$(F_Rlw7|LpaLpS}0?eb0%v?$$qC$w&rCM5zeYSMY*81Xksm2*4v( zHhq2~3K3>H(n}8nXb<=?Ryf=YO>8SvtNGy*W1>1P@*G^HTBL*0%<}l78E&%z+Ayc$ z4yg)AkP3B_0L<51+Sg+)g^e@aC*NKXKDOzM^_5I?*fA2T4KW2W^A%544QWdB3QKYo zF2a<)X}Vh1xF&jkept@@y{gpG7Tqm5nHi;kM#Z1jU%(m%R|D}9Lpqt zgiqO1=uX(2lBj%sv$(aP0Xjk@TXvOXK`L$Qj|WQ!R=16--fus*?7K^+RM{!~F;K69 z0!#M@ZL*r|?H?sxz8Qa!e`MO|QQor1A9^E69K2>cr#9iX*FyXNL{%C4olfjdU!R`w7pYU zc3I-sxg_wJQn=ZR@e>LR+k8xEmlY*=77bD?yE>2r~zd#6qQ zv2x){v5Eb-4ess9{3r`!>$~l8E1>lZg>!c-D(cq_OV1xI`Casq{nE~rty{;Zia4;7 zh4d(icu*ibN%<`R+^R5 zd4GMg^aI6OK1&64r@-w$GE=C8nd&MYhXVP7hSpscq`}CpG*q5)H-CHS(J*2hxA=e# z7$?FZYXNqiSg`g{Cfw&00VtE2st1q1-(Egb(lPj2;jP+GSkpCW&G_q zHZxcN)mF*_wlUbK;g&EqUc%qSM5<^m%r^piBF6&E)e;%O@S*M^7GbOFabB>1i;X?) zG_@X2K=~$-7|{BF9;g_jCklqOdF)2QN|2}l(Xq%-5y8YeQ8k(x5#x6Py=Txksd3lo zZ=~asSDW5^{H_Nyjr;k};BFMMxildC=^-gq&=2FOM$7Qo47ew3LSTHN2Gl%2|yi(otJBSbm{DXCS^WXv8A#xCW&zGuqL@H}C>Oh4osRxNyv@;dDEyy%|GAu+9u-$>G!SCm@eVSP#L1oJP z%xutxaIL~mAQ4=;LI`A0#82X2z}kePYQ)=kT#^NVF&~i3WZtM;F{)+pYQN-t7D${4=%gtaOO7{hnstybHuG&7#<{^1cYaU3MUW;L5&(i2!sP` zML+utc#|dEa9joUP#O4Dr4GZ>K1pqBA&i}%mI@#~i#yC#ceb3A#x90Hu;R9Bn2fL@ zyq+u?fc7|?&T5z`fowuWaKmS|Cx%-jst`!4%d}D& z5y$aliv{QekvK}}sI0px6Y2{|v5tsR7NtXGesO3`0@shbH3LJ%zv4;5_NK0NgZbjw znwXcHq68c(nVpirBVOZe;X6RB9ZLWR-C7q7ws21$Lc{^c1%B5gi^S#pB+4K}LPVI7 z1Ly-@NkD->w`Nb6Kpa<2$i~5J#3=YGa1j!qM3;D@D~?np8TB*XiH8EE_OYI$%U8rV z$zcMRzINs6>H@Gfn`X}J+J7`XluF>%r+y1%yzl%1XwjTcWa&X7c$(ByZ@XEWPd!H6ASnvJh?4H*pCkuO1yQ)BBVuz3| zbv(~M53f43W83M|>0Q`wGxrn4cfRymVBi7MusJ?q4$f2 z7vJg~Etq_u%iDWoer~F0fLGlats|3@gKVLtHhkK`>Cde{>wT#`a|8yl8_hrOkJP_k z{Jy^YgORT;XI89oxem=V>wLiAw`B1#$WKEz1QI7c47G)P8uUiOD(&afIE@G8YH#gR zmzX1ENhdGJi_KN;%j6|Nl%76*p6zpSfKl86)X6wlcUh>$dQ1c(CINtU9xfBGLTCXQrQpVzHy$R$967~5 zmmThtxzr9*AwyP)gc_ z_Ly~hO6n_wTrf75@a60_xg*lg9xzJbO{^{fd^94~sIi4oOQC=hLmyJG^(LVv!Q`vP zyxk4ap?)@184sQ4TGUpR6jYq!a#AbENm|4{QClXgF@1aX$8$V((K%_(l*XLWZ8Lt{ z8gAY(VeQHzW2#p_%u)XoGf`8tZRNg*hmC6^ccUkoS9b^R#xDJSTWQ+S?8UjSFF24p zzhU?iKQVVcsjNPYz1B=Vi9hgAI&J%nPg~1`<<&<&?if|dCv5(-_q{@8@_O%c8~b

!d0c{14#`o?FR=I0M^A-wcT7g9a2hcfH|_c0KJwB zfZz?`%LgVb0-4mWBE$nsQV#lzm|ZTAnX5|WZLa!;Xm}M@E{l;dppTg-;a;Y}Y=ga~ z1JZGarMSSfGsl)r!fS2Mf$r|QyLWp^3b%x55g%!jcp9OX%;`deY4fYxJ`@JQc=EGUP9NdNfM`HcB$K2J}n?%r!9iG0WRNeO}Y$&R^M4J^y$< zX8l)^Wu)=K{t9otB#K5fLB*~!L6RzT$gXvs5mBBFT%p{Q5Lec^a$v0cVfv%Y_GeFC ztA2Qw^SFJcX@%6CSZhZ6kytjc5Mo5G-idxMy>6L7RKE^3)Wfla$)4pmqI|g{P{mDk zugk?E!1eJo=%G-uxh2Gyw~kle4l?+Nmgjeo9003i&58uGH10-gxv(#Z3`dd^P?;}o zk-EQr8%-fEvBJlIY2Y^d2o?yIfb6Gy^%ayT6q{gRsR=HmKY)n>9og_zfGVHJT}*?? zr{oK|o@O99+#p8bEw-yYXB=lL&SmsS5Cb>XPk6F`FeaoFVEidXptSy}4rQ_eGZ^YX ztez+rA!;h{Kr|oq@mtm@Yuq)qVu%6IW*nqRE3bNu%VyRL{l(s1ML``2p^-EANHw|KhQ&4aVD2Xb~rge{Fr zH;&`Hr(1ZBufEonX0P=rk{pR#fqgs%7%9**Rb7`s+e~{iFc9E?G@usPv*0_enX+ff zN{&XLLq?<}i%z488sL9UJJLr-AwAub{Q)v7K6ON;4bkJ98f^%~8O!@+9N=q!+%B0G z(db3G3W?OPrxUB#Lr8|SA5tti4BzBG-#E0ULGDPm%3dEs%JW8mtVm79MjTFi>UAr%^qsoi<%C-Yo7$LMmv(R$vhx!~$Pjk%B@5VwQ1GB>-%`q{;>H zn?~R_G_uDW!w!2l;NCG!UZY zDrEtHbpU=wtPQcZ| zcNyNtu<}ln#v;UdmH=9#gKUi-EE8JTzjHHdJ?01=;8(!q!PxC^sR}9sf-z_-gbyh42|yY{V1<5{F@XUL{xGwc1^gTm2fHM^WwjwK zxKIXYhUxB(0?9%KtY;=bBf1sKY>`mX0-i9DJzYU$#d{DI8ybzv-KeRY;PBA-DOpi< zd^G|k6e$AcDGf|LJ#pkrv)efEhG`I~qooD&m^=A=0}pZbWzM~vO0ndzQ>LhPlTg8M zTPED@X0CUL}A0n|jHlx5_0 zDW8RwAZmo2-A^hKvdO}zu(x(kNi1mEm*_R|Oe|u+1zp_@(mPa`d-p`)?1a6K-a6I2;P0t0q@tdJ{F3u@<)BNc8p+zGZ zrRr-0n08Wk6Sd9NtGI_6ii;~f$4>sLeWmrAQy(9A*jutLXrvT$_V=%?>VDq5A_;bj ziQI53_j>&4mQd@F>B%pB`1a2oul?gk!JdlPfj#}o+wTUnpL7hd2vaCfFzhwY**Ch! zHxw+o_*2<}trsTUpLcKFj4O)+>Fq7xBanjEP7ba=2tj*m#}h8a7hYT(5gIZKR-M~@ zRA)Nfd?PqIl3~}kt}(5?Bd^Fiwmd>gxCxsr5hbNg9wbazwpu%7&vqvcXd&Xhh2#>B zsV0i$g*=HU&)@HbbH9jG5QL4s`Ys>#!--Nve!Wz(wsa3670iKYq;9ayDE&&-bf)FD zv$_*7A{oJeQD_;VVWqC>f&IBs=~s~`X~7wivQ;JtPzM8ggem7{ru~^8zQ5n_{G+e$ zKPq~$`bHA-Xk|+vePmH~TK8x36FDZKth?&+@s4z3{^fqH!~~jmDZeNtTOF?oIe)qN zz{R5@C5vyYd<8vnm=aJrpx@qbzt~uOa1?gVVFjS-LdXS+^Pnan=gFyqo2qr|7p{74 zxFyvG8hXfm!XL}4z43+o(N|3$uDM^k_Vo1CpR9l9kNOw?9{vDQQhRUBT8l3~Qoz?T zwc*vRS1up#9=mTE`ujR({l*86|9bGkKi)m@)}LuVJ6D$yBT`YEUqIEX;Z6%xW(qWx zU%*5WrSRb81Yt+p1${CR+d;thtTrNVzRj)JQb%ZZ^P@Td zffv53vNnc3b7a7q)zhavmLd0Mc~M1D7_6`w)u1_;;FX0)^cpR=USwKdy|O@W5<~DU zR@t+_AOcYd*2Ac7Num(HrU;j84zs}9O*eJ^Ti2bBK1wvU8E3=DeCv$n$mV8AHS%$P z;wD9sZx<5B8OzLm#(A=E&$gRWa;u)ZSCeo_`Qj7)l&>d-r*NH1Zyt7@Y92mo`(V+D z4gdJ-+W+pJmR?x#=RxO&uGG-IYhQo%!-cfmm&Z4atf&TbUNf_2O76bwW@R%!q2{9> zp`-iaNAV7KLaj1f$8vCUi&@-QK^zaFR_fr>1uZuPq}d1s4IYFC`6AO{X$M0#8VP+1}GPJx>G3MGh@^`VSD#_ z-@Q|hKj@t#Xl8g>7 zou)&gIt2#11T{>W26WMBBCH^Vj1Z?rlav^t>@~NS&k$=WHryTPdi}`8`yCmoCBc8_d6IDI6VD}?&MYuxHwB+`gT$HT{uz3a;e$v^{;Kb#T z2x>`Rq|I|Q_-tA5{uAqL>00=n!tP!Q?l7O92R0e#cMJ%~#4)+Up8oVBq7D?lkPWhM zkU;DS!xOA(Q#rVkAv*`nf2b1x$CQ-Ahj3w28~`+JQNbn4B~rE(o&dnY8YVeR&tUcw zpjFZE&_FSWls1?cip%zu0I*+9OJ+~R`f-M90E+Hf7m)c$K)gejduu)<|61$$tq|$D z`@*F0`<-h~1wERs1v~=CeqLJzOcs>Y2NH-M(g{2mH4Ro151vDRK*ue4xk=3fxVDIi zQYnFXZauDqXgNYeFoZ#4qrR4bMNXX?snj}62MZEfkmp6zkOyS39}<7vp}mIs=y+^A*#1$CtORo7zQ?h>50XIx9aly z6I1rYKHgUL7${P8xQWn>+ui~ zVdn)PG+2@vAyq)+D2&uAFle1(^<+7bE^thVJ%9=ZFQTXt!)%QTZxoaia+7Ks5PLHm z-V!l|aJ3w;t6~fSw0**EcnPsed~l~oshou=Fe}PJ8F?KXOcS^4*~FsoIs`i87$!xa zQ97&gOdYlGy#wBc_CVGVnK?9+D*HBn`Q>v9SPq-BH_+^^FzLlSK@+kG7m^qhaPTcW zrAVpHR{I5b%A{EMvpW+Dj!_MFyVLXKG2*Bm8xtkP)#%Uc zFrA)9)_UePCbV5}UTVAiY2{!4*+1{|-+p|py=9Y1YqfQwrnRngQc5?pBQ9^+zQmZs zL*INg!TIy8uRYHPs`7K1%bt`~%WqUJeR1;S$hS89^85KL^#s(b5q5X)Ou$Y zCU;uk0AKdqwhhniT(9z$pFHZkvwy>mH7%E=M|C?cH=hPwaR065F`ID7fUB(`Klg z)fY6*alnTjGWPejL*Oj^YK9+_XpuDyXUEhjWHROTaIuCDn{4fzN*6apDS|ki4V>vQ zW1DpM$DcWMOZ<<&t*_tuUHRI9uhm8Bjjx9h+&gFZ+fy+*K_llE93)XhFM$9$W>ARi z-##f@IlsUtvGK|zPi7Sy_{R3i&ns&pWnU(EMs_~D^@i)f!t(PG0gBBd&{(-3n`DU& zKI~umc=FMUw+~L&B378bGGo}agsk-0k+)j_wg29O;mDUJzt{cT>_3kuUwLFp{`Rl_ z&EJ0de3$&Faplt2^XAKiJu^o#f7obx;ro{bp?QCfMxT1{#a};FJ^t4ZCtH*MlYu8B z@8=*QgM~xvSBS#lCaeU=;Z$w`9^TOi@n!`$Y-p74gR2^(efv~eLUADj4h{`lDc39$ zvG%43=g9Si>McZSj3^bU-&41Tmz|>A4YdTRHZ;0umca@%R;Bh@wzt-YxiPkySA-Y` zy3N0paXd=UhzPiHLL>(6x;Zq~(sQ&oyAjs$3HwZq;{-XZ+Zpy?1Dc0j7kgX(8Y9v;K z114oHss#lAFmz^$1luylY8Hh+?MaaaCtv{CfZA^qR+3blo&`iP+9y|n6uJX;tC2yi z5IiP>PvedVM<2l{_4XmzT46TnNynanvr*2L0fEHs(@KP#VM5pl{kOcVSyHVJ>FM)! zOAy#|`G$AFWVStD0ULTm%2&tN!841z`q&S3)^-|g6 zXe|=0&BB2C3&Voh6UD1%@i6!D*++wyryZU4!GxZpXCKMqT(F3NKxYty*btn;lxPqV z1r(^G5QA%!2&Lf^wCU&(hAO4A=sD-|LCk1S^mrQk0@}4X+Cm#PDbPa_9KA*kj;Xn7 zfTtW!Rk}yuBxK32(s&3s@8nxwuw5~H9g7NPcHf~`S+1c*|yV>Uge)<&OLtM z^1iYK>)Ug8$1a3Y7@ynR1U+rGMjin{ev;rh==`#eT%#?H{U>I0d<%F#txZ9IKVee_ zJ1kfdt7yT695~+O+g*d0JrY71P-PC4<|u)6K(Ym4DH%57NiU%_{1CVo2?=1p%pOsr zl>S!|OAdh&krdP&%N*K{LIpWT;jTvpwLp#{b(CHtHXve?fr%u20^XX-JuofDsRX_UQ73yDLZV5Y zmtf_|#5D7bGmG*%RY|Vr@03)vA3lE9>c$@KiTqL+!9OK2wp@m`~T<;*r@k zk^#1`{Hil3(96<;USrw_m~-pRrW^U83%%3Jm)*GS9P7;g5O_{!o9*Vx`h6QYXEVLuoSZyq+WN1Jy? zU;xY#A>AWugKydRw(ptrcJ65ki1cbL%R}@fZ;_#_ADe37^kHz(8qdpiiO)Er)9x zFq19k&;Qmuv!bW5TwqXDsWSC}B{RN@HJ za8NBO5P3qq>+dc7=igbc|K9iU%l9w;rQ2GRpuF;>K+1+_unqu)QT_tZy#aTk#~r5f z1asl#uR7Opol#l**jeB^jonhHu5a%( zlz6Lt`|j&?mD09M`HML>F5>JczNJG!f05p`dv4kn-4IG$`;V=Q|Lqd4uZ~SV_K9xe zZ#R>_-!SsliseV2=gz(GaLv+Bu;x8w`tQJYF=6wyFF#!Kc;4TE==UD2fAh1T{Mg|W zt4*3gvT9cA8+C&Qw1vLDFZ%?(p3PcO9-~i#S3{Ly}n7Dpk3wkOVg`44@S@CF#aB`?6E09GlW1-BZ&Dwa6G; zmG?nxt<71!Ob>oB4;qq#c|K7jRz9^dgKW-EK&)Z?fn5;46Tu}rPN7(a7wG5g7_>)% z;m=abZHNJ{@~`<$gkPSJ&KN~uN|_*!Jy@hJ%1+K94ER1(>I^rd43A*C4SZX>Aa1}I z(bG}ew(z3*She)v<1018`v;5C%H&siW|Xa6mC_z}r?P1zSK+;weZZobIVWxWr$tct z1fu*B$S)cu!R&2fvGXvi!Vy`by|;n^8)+VCqHGP2>RGZJBGIt+MhJVNkJ5sVMl>DO zL%xCAW0xfN!x5;!#3IYtKTY~7m#qT)6HbDniBjBvi z@`y1NI}8C>5@hc^S>fa%s1Z zcVKY?Y9!X>tTp9_cceoCQTG2_#R8!y4t^y*HCqSDBvNazM25o#FH4JXq|n%15Fsi` zQub7cU(1HZzW6PLw%q!%z4!AL@0t41!leuQqws9C#jarMB3M11w5FcOdh>2VN_ZL# zJo#=nzEtQnRAb{)6qJ8dH)v0zUl9Lvgm zP`(y(bRWB8U+h~8m(D-*(b@SoD{aWk4M{r1RcK*zO+Ejo3G`U59~0*hGtH8zSy#T~ z%e7Um^rxvn54iX#6U4KaXt48X_2`-%f5dsR9LN1iWh|xE4yQ8ex){uw78S|MPZtLqefnxfRhM-!bFY7l|U6^ zqf}BFryuw51Ss@Ca!DJCDz#^hJZ0=rhlw}^3E(TCPNQCOErW(0ZqUt43@R}ha1!U} ztWj{p)~}FZYJdZy7W6?rq=5NB6#)g6pk}eO97Ql3CVmTedw5#C&;-e4@YkWZ6Ru4t zNb$NbOlL9hutJiEN{I0jS%k>uV~P}bVjTmppmePQ>cz}_Q&0D5E!P!rZ|j_~;NKC9(o-eM^H=}GU3khS_+TaQe&gSN)Ugn%1|@6 z#EF{boNLK1uiio3bzWGv>Vng_;_{=5!%5|X=g-HiflL(mdCK!V(Q}eodd>N{TEs#{ zT_qT)7Ax24xIJe3iSxHhAptSbkVNo|OcoN55j=|o-$QUWA!PUTqZ>Z``~OIK_qZm` z^! z^}xXsHXy`PwIR|J3Tg$l0qWL6%dS;>SgY_`K=-)#=mTIMXxr!{LuwAAgY3d+6oO#VMcdQl4IDo1K|E*Pp|r z-rpgS5U4nlPI2#feEw?cPidLm+B)I3-+xP7x#ixok}-?DMl(8m%_+CV-p(9zrT2J| z5BH89soe=3H~aqh>cYQ%_>%#fo(|&;~J5dI0y#k!&wF~Xr4J5>g}DoyqtCOf*=0$=C2=J-F|-bix19}Y)O{L!xMk(%^R2h4%lJ1 zmVg72j42u9(bR==idNs_we$ugSy!H4s{Z@> ztGjOf_p6^|y&Ky;dHwdwYu-4$;oh@`6HNsTn_7N_N~$D!Y3{s_@BPcN>78ePetF^1 z?*BdTw*6!6HQQ(Zn0saxH|Z^-YBXugrNR*`3FEv1XqHZ=YMGlfX23M1JA`u$Ts82e z5ha2qd2r6W(11V*gB-@p2%Kt=imz7c1V|#d$U25Eh3|E!)R8&7h&cYDjAp92 zk|$>Kbzr_#LyCc`Thz*3AcQ@PP7=Y934Lk1>epmZ(l&tXg3DO!K&)aD(4G*S>@8wV zyh0trAc6{UaynX$L`6}&iE7)1m4Y-FeoUeo0VGWGniC?#&7L~Aro5Cs-O!9T)PZFl zi!eYIC4`?&O5rP z$vDRo-j~;Bpk?Nr#%otymYGsH&0B=mHa zAkteTKH*gH{big5jI0@>cpN^G4#$xQ)=FWz7_ra$)k&e<=T(XGgG9mEmajLg4tD*K zR+QoDWzGK3dL}yJn{kC#vG6h;b0ELPefaG-oIdkeIEiSY=kQ6t!D;5gp)bN20LQ`@ z;U`<>Z~W-n>Qk>j`F{AXpDl$KWf!qSERGCw-n`+?c4`5odMlF>J8iHP921VQL`c*; zv4bK{7QNa4E)AENZ-}k(Sx~!1h<1i*$$o)?)C2ANmMowJU&$4?=X>JdOP(%xv#&F` zj;%{WBQP$lOsi>B5M$shhI^b4h>iqTcgyF6bUp}KG~mw+gR_bxdLcKcgP4{tV6o$V z@RZn#3PHsIL@0=3NSM_}vXSy327zr0o<|try{QvI?!l^`s6Yw&y*wejOHtT#z!SkW zFg`MVK?EsJg2?en!HVXFBaOfwH5Lk^wE^A!i*6$oV< z(GlefCt_Tf-NuDfZwST=D*-cGd1KkL|0}+F^&c&V{tVmMl>5qZZ=KWcMZnz*zd%r+ zU%_}Prr@mG8Z2L+Mxc&HV93BIFrlM%oP&CE$?XJnB%&h1uggh{&}fpbF1@~g_T+nO zODqNJ)uW2sZ-w}i)O3rx%RKU1x?j+8dgjm5x2$bHx?p*Bn0PU0$&e|uS6A4(xRU+Mj_+U8clMjp zXV0t6)ZXna+uPOQt1^qZEHHZ+;A027-@YVd`T|f=#ZuT8BO`0n`>jVj@u})|QO#NyPwW4#s%k z1UPDNdP24aLw}Y7oXe{J&zuE90rNlu9Wq=J>ct@kI>o@P^wAY6ZKo{>-f@JgPZ*}6 zRT2*-F4t80_z_7m17U~cJORQMPU<_MCI+P6F|D9JD;77qsyyP_uHj%8RhzjtO8b^R zdMrz7MMR=8i(K#Nfcn7`JRzof6LJ=Mof|YmAEYP=F3Wz#pJy;O)Ty9KiSRHew=)@m zzV!$Q`rqo6KuB_m+1|r~c6ShiMM|O3r;A_`4@}zMx^}Kj^y;a>8?Vj&e0$8z&N#x( zs0>yts;wvM!T8`2P+aPhXAQ4mr`;S<1nXICQ)CKPvW#E@)w1-YZN`+P%vR)qlgBbS z%p#-5R^H?FApwh7T8`$kbQ$2sI5Q{=lX`5uC)s@Fj9QGcxEyn=bA0USgU?G=Ke}+D z?a{@tOi5$v~AMv=7$?1j8>o6X=PVmOl{b-GHcEEA3Xo+ z&DY*P_iKhXk}ot_$AY@J%7R$D;PbXeFD-rP>5Y{$WA>ddEw#MYy{x#r@?RyVf{ojq z_~ovLxns+h4}SdY)V>X43(l@SHF_=m?TnYZ@2!eSE9Jla^Vxru{IR_0@x~h)A6*zM zd3bK_u@-ltI7zY?umD*iQ=1A55Gio((?CUE27fT3)H!U%?o``(L&vdgsk!5IbGogy zU%O2oG>)eIBpd(swQ5`Xsa^m@z_US$mzmq3?puvMl z@Su%lwRFyzg|@^Hd_Jb`498@FveAHLtiJxzn&yhN(I&>(?9+m4BSZKAw>y=7;o6Fx zTQb&s10HV)(ze@OMFYt(xgy1!|Ll4C{$tT6n_imPe(ppN5|&x9)B1Em1R#AnxH7|L z-{zrwLWl3Q-PvHw5W!-l+r9kVvqxs^&aIPxdIoZq@7{$#-ikBd1S@$9Tzg!HiV9D( z{q)LrrmQLCgPi$?XM4THEpE%IdyNIf>sx0HdrQN|Pwu(&bKr}HD+9+rM~71%KAbsu z_uUT$p_;qOR5+XlAIUxU_M6wP3!`89^v3h;yJsw)d-mynZx8=E@}Ym$lmGn^^?cL5 z!rXuEoRu(jghM{FH zaFd5X!nqtSX_@JQG*u*Y!u8P|Xrm$$9B(ydae_N;ge_Tsryaa@xJ7e7s8o_6AW*+8*20tW_rIwDQd&8g8_xpdP+Gj0|aAb+G9Q$vN7 zkEK*@rR*v2V<=Z76`_4B2i$5yNQiPXacZVgwysq#g^tG{{0@Omh(kxF)6qlMT94oO zTiQ2&Zh83fz29^LH3y6`u+_i;iCBS_=+g;cVMOAHgs03iNcSZ%HV}w%2nQQT!H5f{ zUD*}02r|9#Y_7XD5rX=CL&HC&%*w4_bGcZxH-c3`B)<~Y|Aiiq}<@d90wKE38#Mj@ZOt${aJDSUg58& zEhS-lWGsy^wl33j?*s6ROiuB;L*k&dd6034+opq2dWeaG&R%pi*yX=U#i#&K{6{(GKDSBY( zg&YvEgp4P-YJh(g@PRI+weIW_DrCWTg8Z9IP zah4H2J8vj4;%1m?zM;1W{$-X`2>>go79`bGO6-(6hk<7^X{5Mjq;qv^k@t^lowEbuH(pzKxzZhpaTNls z0fD9oA}WMLYUmzIKg*{jahjSjg;a77J?xY3?BIr>EO>H|wQoRrj-n8@U6-`upr#J4 z3`aoC0&=R_WhPdq?ul&JaYB)yu9;tOs|Uimp= zaQ?-J`Tc84j)}j%dcVJZO>z&#_DZ?_sy;kQRg953KpTW4F%DcGg3Xp4w-dwtv(~=$H=&1_tqe)a`mHCq*G_o*CY~?Dv1)b67mu*fJ`pVK-zWuy- zL>3GXpk0O%;4%RBjsP8u1hD%(d^AmUOY)+dC% zZW+to&w}$3{Oy!y69<`|EQD6y4B4Q*W^*^a&x|1VNWh zDhZbDm^ca>at~+mp#2=$M;>l?rGpm?(#bj{EME|o%=@Cyi~v9Y0mHwz(4b!yZ=7*5 z4#gZYIU7J9=4>RYc=h`DPaUSE+rRs$eoDfov*j0m3TT_IJdf^J_W9GvZG(vw`R_iz zaO0rUy3*?oDii=Gp%F1ulhb0KDckaZ)k=~3Ay_XZ1gYNB~w zj2P^0JN3)CUxz;X-*wyPzrQlML0*`luT10%c300I8xxgHUh>kDB~Kx=cl!OVk7dUL zt=T_p{PUxCc1S!nf#-1d;OeH0KdqYc=Ql6E_S4FbpI5E@`L=2GNHp2fVb#Q!=YI1Zqnv9mK~|!sI%)l$FQ$!xQz`ev*UL`D?EQM&Z7v>F7&7{VRS1@^hMFq6 zNUWrLi=d()KZq%zScp0S4$~=b)#nzk;4yk6LSp5*C_5-};(p8B!N%7Xng?QrtCG0{ zTm&L%CB|iqV5rMcItt6{sNO%Nh|h0;_+?T-iE!GwN8`u7__2ETqyRCJRp?R*5C~s8 zpnJR{91>&G;7ZW@r<&%v9MXNePY()mAFa6h@STG2`3+CwQYr^}PbOYkadkPQ65Gc< zTC%MpdFk-g&Z)_T4b}y9K)MZ%ubQ3uVa(WHe;0kdP0C-e{G~1JC-dtc7yV<`iRp{_ z{z&V-c<6D->*1!=_XHi?BN?0jeeFiYpNHOicHxJ=55D`uhn`LE8{fDx?b)5b-v7Py zY-wLlVwd6WhL3GCfAYLDt68FqII|&CoUitGQWdC4DG$2E&L1^)6l|B(GD5&Ksw0IC zKqn-C3D>HmeMlnhq~Q64F$Fb5fbRfabr^)L97t3K>IIUaQqy;>G@6&wmjj~-6qZ4; z56X&-nj$dBI94^LbahM#0l(3ZA|1Fg0varWD5DOvvUwJyq8gTL3gwC!Q#wPFss@Hw zINOZ%sR4*g@F3gFgeG<%GQyeSmKn;ctE*MuJ&%Gtt`MLBJicA2IHJiDplo#>Xh~yQ ze^$9Y71(E5x#3Mhf7tmf-08@JyZ0;GlwzZ6!caXpX3_!2)wZY{UF1_ z*gT;FRgG#O%wk7Hki#*T!+0M~gZ5#SA%^l4TI0N(@;%vO@X_XZs6$5HRxT4)IB^~y z^Q81Cgdvzu2=-vNG7qT)F9Vws*QcPlY|ar4gQu-sAKzl&ksc*fh>4N0@xQ~S+L;+U zu<@6de;%?=nv^%`xVB)$1l36R0tDFrC&hSFf-K4;f~OGEAZ}DmJHmJPszNnF&!t%- zIt>E8DW3xPPw==A@+t7=8a)2p_nX&LRvLfKdilE*pP09o65KrlP<{(xbJ+I%o*8d% z?I>!kq3kH;TPF4cyHDwdd2cL|j~T<1%Zg)x+orF*ccgpmip)mu$@VorYrqa2Narr{PFosDc(H9z14?W3Lgbu%bGL$ zt=K7Rl2ejrRfj+&pD|Xh*V%1%i8h=o z%(92G9zdQA4eWQn^Qo;dr&E)(DE;1!l4`-C)$9XK2$Wczi#gqgiG^!n?dTAR*XszgP70Ks zNWU(C2v(&3m2M1IxG7zT+w2J^zz#pE z1RDZ`9Hfl8E2NR1_XZ*ic19}hoqaQZLvu6%H5-le%EVvb)Kub5=!ViiiE z)dwlQDgvp1RpQaqg8HDNy10A8$wF6E4;+AT#tdwV!OBQ=pofB%<74r3Y5F)_JRFC5 z6T)S8+Smy~IE2cTeS4nQ4=|u{2|Pu1lnc8%An_Q0%8>P8Nd=!Xln@k zL!UNi2!r+|!wHW#LV|>lkV49416W}O_|CW*Qi)(1f@C~OLo8pifANc8lQSctW+#MN zLbd53a6Bm0eZchh8Dv?WT!Y|LZ(nP@TWH!_A8k6@(x5j{rrUp*Tbo;k5yjHx&5`VK zCb_o=h&?MH27_Z`An)Rx;ZRVv2Nzf$WkRd2k`N(!us^M>M<9F&y?-{5g9r0pd{MSg zb|u0eAPFd51J)Z|XEDR4Xw|3LoVqZnJy~olN6fseeR@nL_B`l<=B*hyg9q znX@`#|Z`Bw|x87xv_F09}F&lxdIUvB97vaujHxhUncOT}B-`QkcO;oEhB z#4f(^z9#8qCHJ z5xYOW<%6tzN=ora`fN83Fw;;D7>f-;e@IpR4*<5p!Ra+Kbd4#YSviUoy>$a zEG|sqn@K*5y*g0MBUvU>d58G-i1h4f$KSG9f0gD zSKHQ`yfKe=e)**N-T$6@@sHDOV=KHpcitcQzVXt^MdzgJKH0ZTeoQi7pw@}&E_V?q zHl_xp)}?IDj`xFKC@L%_pbN5iP+8Arda|mxKc+%EuhvD0Mhq2+;m3ggQVhAoYn7sz0&XrYDSyhe_7u3q!!N7~9$5%< zU4+~UnA4-MUfium724+H0foPErQBup(U250D8GLTdZ<$R=TMlZs z)9kzD&l4IXDkQB3U_0;tR}vFL5E3Rv?C?}=j)!A~4Dn--;3SneY>6~`dTC1Sa+bbQ z>n^zjSOqpHsUSV~K}|=btEo6W!c@57-!ohycDxW}gh%g8l&rPhzjGYpD4wlK}3ygEA^ej~BssW2YK2-@4b4 zq9`cNKpMJIuyVcAXE6ijn$MHKXKRMh1FD44yhzM9v9z^c3SmRYOu3cj8s{VAzo_?a zTzuiP(|?|Adh`2}A1|zFI9?~-rJK|39??@m#)&q|w0o4n01cE4SaF(9IC(b1-fuoC z#)SiFpqBx00Tsa;qMuX(_W=<+on?qJd0@>EB2+?IUlcMO8i|BJLxy-C4)tFO7bNpK z5c5c+K@5}_n7zRTB`W8!LWR6a84(8H_aLO;T!~)=36uMIm8B0_EI_9Egv* z5fDqO>>mD7g3Ie;0VZpN1#vZ-+HYz(M(lr{w$BEz^VTp@Au(o#>4_FG*Y}S@xFA97z ziZ9V6@Z6_trD(8%EBxyb1&E690x&QV%Z@+e|j!waoRO1qbgRjJ$sI#NlH{D+I0x6@LL|-$Hi^y?GLg>l8XVd_jq|xeJh6jazZF zIfX#0^xMrop$UW>t1l9o0^pee{pbBiHh|aUhD_mn3{b|gkROF-VobM9MvFUOG=vqJ zj3$%05{%^f`x1w_unkS=B7>tPZnj-js|>UCkq~L5`|W!YvKyWSE5rL|EUC4~tS7D5z6) z^uUh+Ydu^Gm}95rpvT*3m$M}yCca?$$oH-z0E03$ zw65Jdn)X5TSlUmiUd2y!u=}%FO(Qg@!)6qtqzE>M#;t_wZM*2x!10!KvY|KEXRZ1*J?wxXj*K+9^;nZB0vADa{ID#?Dk*J z9r`Ja+rD^e!|!jTAeWjoQSIZys`%Qj>t!Agrgs$I!}fp~M{Xitx9VQ$j3-(p|>;$+H)eKY_2^SghIyz%|-5J}tbz8vGe zd-dwGp&rkv#wDv?J$9{gL({45hpQg?Z;q~ceC=^_b&)S?EE1}4o$WrY8*sqMZQi}D*Gq!)ISZ2FRxG)H zeEOpc4Ucbract)W*b9C)w6Xh@bY=%*6(s%{U zBWH6jmqzm=xP}pATn;q_;~bN(YF9kktkk)h3o6WoxM8SjR^dS7gAEE`MS~361J?qp z6p?y1lSX)rRq8sA4X?i7Pp+UE-qxve$Yv)JB?8Y2uDCLvu;LT$5-5{RL4;t`gKP(h z!s%O4c=Xr%>t>(W-gs%cP*jTLMFtPkU8mmQ-ameFbkmFTnl8%X43|I^`YLklkvUmnCpfg1o*aI%5H$YgDOO}JzgY6?h*@vi? z(J3>hId}kJ0Ci5HvmzjU3vszN7=Vl)rGzL>zd@=eD#9@h2ZC5^q@fNAF;HvYh{7!< zz1MaKG5I1f)WS?v0BzdBu;)~CSYz3gM+F-p2pJ&xF548pFb8)6lhsG?$XX1xX!>Zl zB8Afkh>|@7*C24>xSI1KtV48g3(e7S^ot@~;Kb6yt=Q>-5rmYnNWCvo5%3m`(GC?U zwPVs%Izn$@z|dmEbrV!4n2r%({^^&Ya60p^P$F4?WRm-Xf&hX+q7(%!s>SDp)nT|G zh#7tG;|V&!8ehf^%=KN-EQ`-PqZp;??6dIjZ>`Z~T0DvQZhoWfOrUzpzi~`l@ z{}0M>(ka`nKA1W7e%Whz|7W=Q?#HiuVq1N6`&Q>vxOk(`=}aM3N~T{gYHMsAw`qc7?SKhcx^pF zhzL0NQk-K?0aSM$?6x~$H#gOv*GF^rgWRGzUEA7TecrS)q(8AJA0SA=#o36Yf_X^y z;nPEdL~OS+4mu%Nq7XPe+l)l$BI|bZ`g{X0rTH+73T-scifYU}LD;|%_ZdBTAs zFPgad!Y`0wh_zY^k-SJhRQZam<`bT9PLxRu)anqmH-%t7(7-;T#tQPKi|a>RHi%hD zbzvDoYq^>n!)Zq~E^y0GT#yD0mJlR2h@4Q@#0vs3K^AFHPAqaECV*2~&PYI@g(2VR z!?=Jl>!*tZpx@d`^XU0BdrMXQmgHTf{W)9rUY3mI4y4wPxNdxJUCA-hgE0w{YXciv zhewV>9~B@MOiqDBT1z74HgGS=DxIi^hbjn4+NdC{wLnKIa)JfMBgIVIJ_>W%d(*1- zv?fK+YC9KqF`(=tuQqf=2z`im?WlqMYIzN=pb_>bd&C zUPe;qtp=8UWT#UMflgR^Dv2t=(E}GW$v>xWSkSF$zxwv|qtTjdzd*2+P;=1EbHiQC9-TaR>kW? zHTa#*{gQ@M8X~=@P@WQ>QgTltY{(Rh(8F|5o24q09se+*nGXwO@MYD&FRcFM13lyP z!F_P5I<(4(iUF|=e{5>PXpBI>Wom>F6e_m!1b5_m9%)t*42)xH!mkU8#U4)&c^Cdi zpCyLCy{DxI;vze_mO9KD7*BaUD|KEq-z%<-@OBiqvJxx~oOKsWQ6wscDa*veoNxf| ziFhS~!F8Yr@QiR~h^)tfZbUl7wlPH|T;MoL!ULUez^IP&qCAw1q=i!g6dY*aM>ko4 zw0iTT;BQG9t@u|`%{zXYwxttYps@&wDP@=x15&mcz9`zX_5Y|WLtSM z+;OxL6$?BA6D=8_ZD+&mLN%7{uim^g{lQd+s;uRY**E6LE=n9`&Ydu9TPtka;61VK zj`_>;uTK_!{n+&K=4b!?%k;zlW_|qgs>e^;-kNr7Z{+fudp17GZ+hH)KVxaLbE|Us z+f@R4op{b{?`s9^n|8nX(u|nKc^{YlT9NV3C#-^@E9Wk?Yt8c?t(bkPCz1ybgsd6m zd3PDWH%jDls460&vTOIn_fs7)GeRLyyFB^PiNTeBesNzhezN*P!=~=C7H!Qz#*+!Y zCKGJ`bd`vb1V}YFNvoAcaR||<$1GM;`F=*-a%|&zaiL{s%_Y-#>SpUcAl@%~%eKn4 zYGiNQc&cTHS(Gg~SbI(HhJv03s$LDkN0+0b2=1KkV_D?2tvjsTh-j&?WS9@HEIICcPkO zwjC;4tr)llvkA7q%pTLhR8<|TiyiY){muNuQliis=TSu()g@lIUu#{U#8lPxsttIM zFoT%}XH9WQ^_FrZ))UIfmq>p{)O~&gAY)19STp#k!dZ+A@?~Rid*3tN0cB%R2mtIL zcCGD9Rw}@v2|;&Ad#fx68&dtZ+(2v5i+SoqM9*Qe6Ma}4Iu@y9czHrfhN=0l9F60& zB&x|!n5M+Ii-O@cLO`<73CA%2{Dk7M31v!TwT@X8s}3 zo|eUvhDdEoj{&d0g@c#?^B)b;J5`D#HfL+-p?HBA;y`|cPWJEweZZ4VfrC>C)^EF7 zJk;gB8*z8fd==*Vgy)9~ub)nq3F3D>sXKn-!OQ>h?*sq&nIYK`=$8U!w30^EK|jKn zXVhY2IgE8DPbis)RO6(~E`^g!8fI4o?sTShqUEG53ZF0tq&eeC(~vP5mJlIiTmFdv z*iQ~ToLctXK55%0Up1yqcX^UxV+*{~k)zmBCo)7Ng3ht;V%N~bvOeiBG2(yyLImnQbc-Fb^>1sk6$0CVZK7XT@cUw1mcSps^DNDNU zI9Bzg4P7mG^^CIq$bzWjY_42MBOjIw2QQ7gDZ0`F*LMs8XVo$xxSB(}HA*J}Ze40( zi|+P_85jaX^MXoZj0J@=e3n!hG$gp-dLKeV?jTdb27VWtjAA1P>R{r8Z*|$$!6Jph z$djbNG6w`vQANsbJw?NmnF+%*Easr+cZ384LtX%8fH2Deo+l}S@`&;w3siH6ZAg+4}Sy5g|H^WcY*~Wfo!vF2a_B07~$e6^}t{unl67N=OV)ESZ7?q<~tmM97@j z=?~bLS!CSoL%}}@m(vLJy?AUuAE0X}aMKA%%G0iNs|YJNW*n%eMipeZY2kUGR*L3>TaQEw zU5pKacCqCQUrSIg9(cu^V9~A?e$-Xg7k7Bw55t@OSkQ9z*wvSIVetJ9&q;(pr(r-p zOHtq46mZ5b%+L-C5=K__r`81Su|OutjM$a^!?EcbW=ouzTXmw^DsgS`oTm8UOU)gY zBkncT8;UOqs+j6f(3-q)2&(SPB*g5B2!dhw5SFVX(zDA6Nj6=Cexj5pRXn5<{(?C{ zm~zPskab5U0kjK5CL7|M;sgZ&0Y(eUqpzhGtf>7qGrG;T-C0xE0VD(Iqo=tGM&RVpFx3|2usE5XwC)k&Rz zWfq&jABF;#Wcn}D!!v$<_S+X&R>7gTyLGm2l3wpt!0FUjkYyThCl`7L-GO?qWe!-W z4ow&xMaI8(WqKl@18oP(EZ3#SRJC zT&(Tn;Il{1-~9Zs>+6>{6t8{%{S9m1JKx=%=AAWj#onQ^t$3t`$`24qVgFXmoxj5% ziv%GT?6heTky+i18;d%A`|Gc~_WYLzx&t=~I9GSc!)?OvlEJt0sqM-pZ?O}2q6I5g zCvW)Um6;z8zi{E}`yct2{g<;iKs9mZPgvNe8?{FNF@pVNYnia zSO$j}<~X6S{s6$ZO;P%~qw4B+h?G;hWA$1^ZF1WnD1(`~pIjQ2g^y@!=~y#nwGSt^ zTf173gBaoP^jp2*TH##}?G98~@okHvWo`>q*3knVT52(Z(-giHm@kx`oF{L(l>Seq zF#hzJC|{Ms#?$p}tIK`TRq#Wp;tLLuR_A*7-JgytxLXpelhjTHkFtrBBU;la3bP<5*A*r8Z#G;T!Tr^_iJ%%KQNNS zd~6p{5uxL2>Y^9$D@m?**qe-q;p|{jBonbHy-E%HR=FEI>s)%G?wPG8aV$hl`&^LY zhz0Ey$>^-UX>EhLTsP%tta_L^=4X{+3IaqG2KC4QLu3+|A8b2x=54?`!E(_FZooay z0mtq@Aqoykgv4ykpqb5)cGTh79N%_&kgli>MGyARKU}3>BO49Sf{=71giTlTgLX$z z7|&4XB9hd63AX-At{G2aCy-{oL0q^5angK%v_QqGtLhGc$*A^}>S+l-E0Jv&nJ?CZ z0!i+AlDau&&a%!;hcjMyFty~&lGP;v%mHOKv=2))s)0qf8a(#8ifW#RnQ=U#Z{6Wi0n^G?2dV$PDRHDBLo z9eLc_omAd-RRK3bdT?<;?$NjdNElcKfnWlAAZ+J!99nlrpcTYa zl6fiD1#E6GyIYXoW4L$fxoJ^_Ckovf{sM?2em~P`*T{t!kepRawTujvfL8u*MOXE(TpTu`~!f8Cv#}kf3VuhX6sJ%%G>?vos z@OGU#K=XBS1Junl`@G5h0U}n;XE}XB%GXDhn+sVEorn?}tsxi$BGi4_&NzEG82tmJ z{#Ghh%i_X985W|A3Qm4mw5D=fkO@kkc0{-n5h8lUD8|cXGE*nk*j0s_nFd(eI(YE7iyv98NO z{wP@hADN3-B$2d}a8&_ORS4rF#S@Ydq`2yNl(DUbmk!z^d}CQAE}ReHI!QIG_Jfh?bpngbZx{iA;RP$W>XAZ6efA<8XYrI$< z^}^@2esW%dX+RhT9GTkcVk_JPVVxn^N+)V``$eUlY(J?q z05=~5O=@=)BEq12#|pOy6vrHXbrud39I&7}Z1811Gl;lUdoqWbE%!3_cJyxu5j}8c z>NAEE?xdU=f~#ePnNW9;2w0|U&!r-D+K#grR2bgwy@!i<+mK2p*J#IKAz^@~FbdCt z0&kNTPWF8}nQ%fJ1!Xwq2X)HMa3ylIJ1Zw@VG;($wqT0#tP zC53`tO5a=!^ei1{!wU7SRGJZlV6h|qfI8sfd(8_BJTV%n#>jAzhF=vmDP5si&WWgN z2V&A=K5;$?H8|wFj*ceKFGyIK%s7dHk_ax30R?Ac#SN(6bLbb(^}n(_6n9$%W8Z8j z_Kpu)lV{zOkJW*cvCVQm8W2p|juaJp2fLElbIdJLD#I8Hjzx%|m?Ag>=4ky6cr^id z#RKIn5AZqsCC&gQ)`@7!=9!8F(xgM$(+$@j_lWOjeE!#p$**6?|Mba?ge%oj1Z7Xdf3tZ)$tQI{x&yy^>-VWFP}O|00d=A z^nmQwGf%Dso;*3YaC51r;6z)2X|>6FCRmzv{r}27-|}eYU%xkfy!peJbK`;Xi?Idk zGitNiq6|gQGT^Swl*PTBv;2u%k!D-DeygNpu~z`-ppZP^%vM$QvUKa~JKCWRsM?HM$gV{R%fl2~F7fE3K&trk#mKF69n^CFZ@fXR% zb$-DuTyIwfNXkcw^#ax+v$ILfamuz;g7#(SbvEaSbvf?}Yzk&V_ApcCKtP`DdjJYtt%Ncbc4477RIzL$01^S@Dtb_zEX)FX! z`aooIDt=6NcU))AuLO*2FKF81e;4S;Fe8KK=vp9*E_LEGHxG-AGJ<6a2mB0d(U1%b zC#^5I2m;D(FYE8#I&cW`^-Z?i9heg<6p$n44`SvNtUGOf@6(JoW2D{F^dT%I0(2!Q z9tn6rSwKzTeWcjeiG%?&OLhga69@*hB404zZOlqgFchG{0ks#P&CUsfmK%|BNn;2q z8?n6}o;>-}pa1dqIp?RgeRBP7VS)7EuZL$-87x?71}vw>*Zx~}W?|O!6y;vzT%0RV zb)!xXwJ`e@s%e@Kff9!DuJk82U1~2XaQ12UBzD@SORS&-p$dWAu)ZQ$-c+A_&jA-w zt^w~02B0`jj6=poK>iNo4Iq1mLVy!d)Azo+`_cJ*16nQgy+-anQj_~xPhfmYoA=7i zk1pMuJm;}P^w#%VtQ|i;-*{w74!EDUtu^Icn(<51N6&7)`r5q{+i!09>)Fl6vvZ$p zSuU|UZwyCtr>kjI8Ar^fpj;Eo;>kXBq@fw)9-$f9Ux2g8iZa=q9dSse4jSiJxB)Th z0N|w@m!p&*$>YyLAd}ZoBSX9t0vlgo8`r>k7-4!tqHwGnE(d^+t07HFx&~}q24^U1 zeLZifE|?@r5^YlgGs+cy2Q}vh*kDlVCmj$OOY{X@@5dYG(-qL<=Ba@_B3UjIz!U8C z8F)`K#t4xI%o;3DvM0{S#mroHox;WQ3*bPB_p#W_0R$wqWX(aJ7L(B(&NwR$jpc?J zwN@UI&i6vT&#OY@N=(RD9TkXFDP;G5|CV9pz2dR2KY4li=)BiHE_?K!BcqSoXX|0V z$aVPwFsLD(B2nn+mf_Tv=-g)Q0-cL8SL|5aEVx#Q#Vu|o)DXNoeC_b;bTPiQ%d!pj zu!8c^QP_657sPuDKPb68uE|R3%WQCu4Bfr9_x0JQHe`U_f5~gBRh0cZ^MD5=U40;t z?t;E2#GazP1CNa!@!|wvnAHTR?(joOV~^-Cm4+dtaANm!DllW_)`g?&JX%fv2!VPR z?BvQ-(XF@xuL3d( zm*$hAs4$1KscaElO;Iw)sY2#huIsdk5o4Ind^a^qa#X|D{l{kCzk2b>xd?dIt;i6pKjA#XNG47Yon6vH+SMpXp1{h;Y65&5{?S`KYMNfiM83}sn) zS6q-3!m**QUY1EW7U_(ilE7A2JUo_Q-l8xF<)EqKD{VAapSJc zYrHwJCtT;^K|Q6@!}VaK(w=#$Du(Y!3A*t5V->OR&7(pv}G$i z)R41&!}2*_bbWc@{U7F?|0VprKaYNQ>6OR-DPB6@S;OX>Z~}4FEP``^k?Am?JweZ3 z0Ft4yyuQwGR&4m8g~z&^+pd3mkVs35`Q#J#Si@uB1vbr9>^{Hg^xS2i@aJAQ*>UFZ z+lu<3G;hO+k-vZU>ifUFx8j`ST-I1s)8)pTJOx$(b@TRQ z1VC}{wh#~giBkl4{o(Jeln=>S5rvqn5kYrc1=UZ;y8cLAcx>(H>)1Kn+gHDn-#7hZ ztUOsu^N%ye>iQ))xzo0CdTklQ5YG{>CTygMPrIV_lc4bFYR7SUG*c)e` z6$tn{lvt8S0|U`3t`hls{j!v-IS$+F<0UuU7rSCcW$&Na=Qe#(oheRVl*HdblpNL^ zCJ#CPA4z8)*JQo_|7#Z)>lzH(2GU^Kxi&5ka(D*f!tCbSCEx}~fR-rg+1%8yVWMVQ zS=ZQwf{q#kQ4}o|MDwPBx-?HVmQ4`N0`-8iQ)yY2H>cCxIr;6J-;4A6$3OJ(P}#2Q z^LgLAUe6bp;WqzHOR~GSL1K;|dphk-#vK?_!e5@j>K<%Hft7zr*@8mvg(~}m0^qZ> z7G7sKQTM@Me&vTB|FME9%s6^_4XlfYQ(4d& z?3$m7!5O6Jp9mGR^f4F0(`sO$WhHwOE_}Oqit*GK`?QLZA6^{jXneTx`Cl9CfBd-f zKWBbCJ@K>bQ82*oTM&qif z1#8=m!&<7adc-CWR2*=aaVvE;UTshfTT2z@f?T}vO=pfKQM3Y?PdHx_!htBLuKu9R zD7ECF+-`zGg+xiC1s;GL18pPh1f|pZ^XVc|Mu~ikY#eFR6${CIqSA4d7FJJYkkze_ zFuakR$dhQm-Uurjxtr=#j8I*W#HY$p9!8%@>5yXAWPORJR>%DE1Zh6wXRGALwXgEg_-7d;9Ac(^UZ-S0-oO zG0`JYi4tdQ)bMcrT(vFp!Ie?L!nv;MNzGYcHd@UDWmT-C6*?W8Zw8=MYal`~&Y)5l zA`nNDfjAVzlYoTksbk%Z^z70;;ll9aZ!A14I}bM8j`s_n{hOEE$R-(v&b)l?qm(;$ zR^9S`lsYiQKI^D|EPSWX|2QhGn5;08P?(AC@ko%Tf>yeSfqqielPUUBN2LA2&f!mB z7ZwN0&A_%X-3qnF0cH#`#f)1mJ(-%C4|60pzWbnN{^6^4Pk(ZEW>?@`!=3k!CTU`q zOn!e1KG$M?^thSu^o8Zd?Eb|i?y+Lktdiz=gLTB_ARNp-M+)|}G(F1q>B%{KvTezu zL!Kso*7Y8Ggh+=DFrlxapbt`upHqKVP2pqk6ocOhZB-%!;e0xV&nh9_Kny3&QDaDJ zWc=qZo%^_G+P7<-&aHDeihO&PJiqtsPW#dqPXBn|&A;BtcyQ{fyXU(ion9DkEFpSn$fl%m>$fzxgl!I@NWp=0@}K*ME%MJ$dW;_vdq8?94L+uKYgt z>D@8gfcgYN;4H$Ww7lI zOI_ocrZt2WlPyfbJxXj9J=J1XD|&etL`LTn$S!krH*)YAa3RuJYK@>J4HBw?@Ng(m z?d8KI5qdBHX}Q5_>4}$FN}`SM!)X$bPyhyyHz*ncsZ;@Y>V!^Vb@3%2Fk*M4g8nK< z0F#p9bV-75LjwpEDU43dh_Vl`a&lUu&flwcA7bJHq&<`@RHP z8*8XH6ojghOy>gV&<|0jeRW$%1-)AlouA$k{SK=vm+2D950rJJZ&K72PiuT1NfG7} zRYYc;xT(0dci%|c)Hfa;DoOZiwJ&gVopWmEJ?+kQrNnBZ$d~{Xj0eL>vZXxjm4r|tX_RL7DV9i2Nq&mLNSt2G>`LRYF(6>3l&i$v5mBmqzC<^%@;Vx2_5&dSp$ zRy$LW#huc*b84g6r>Br};)PK@D$tk}uBGHmztpa`#o82Gr(mM`Pv3#OgapRLaxu!? zpm`s-ckZvPA0N7+>QvQXx2zQXUSdXWd>!1BT=}pO^+;TSDmPxn1REsmG)Yv#iX}RR zYKShqO=+UR`B1?5uZ6!G89z*{P>i6IIBD~(oWNwzMk58oq(oW{#$sc)GiYWq>fX;D zY4bc^G&1x1&5s^By|gUn-sP9RUv`OOZ2n9b+vH@>TDmB5GiL6`^wxjqt!dT$lVq7y zjTu!J?AHq>BkEl*;{*szJv*VYhp2NHzZ3}os-giUEPbSlcj+~h6-FHyM}}IfcWjWC zKp?lhJ01ZMRrY~3izZYJb~H6r50L)u>gG_x$zm%dID)*?mPat!+NJRhoz|PT=&Lgd zX@+=am0#WyXRcl1%Cfq9(_da*u2Iu z&Zxdtha2=34j!UWsiRpcQAzCt=t0e_ze&urhtxqwnpQ4Qym<}J)tXfx%m~5kaH~LP zXE8z!ozN4H*{CyCyMmN@nHolhm4aP9i~*h27W*g_0}&kUiI3izR4I7!lildAX+kMf zPde&V8c7=fqnaQqEavu3nZl!xie*Rmy!6JC#lt!7@m6oIU{Tag`tIA^AA7cqIDWz| zVb!>OzkIr(X5NE0a!YP}y6^mfnQNZERUC`8i_B#zTb998N^71<(YHW4kdov|F+(N{ z)8LRwRh--&aL6t3otKIp`t|A68}I#LeDBr4Qy*NKIpOzT4B8Dfz65Iu9Kupqq(q#T zB6J#rhu~U!jf@sxLjNoweAD(^S<&iwf0~lec6zPt_3mf>^rL^)g!h(ioN=(|{__(m zH@{~8Y~r=-87XB6nUR8b|F-_*4}bZl?CF31G;Pu+Z;aP$%p)ViAXLoFR-|VQ7pPAu zFzwFjUwm_99D%ABH?Lae4>Fw+2S#?J!_E>>gp?9ATNj^G;aV{f&kA(s+{h2w-!`PB z9eXEr*>hL6e0-?#{I{D=-&=N|^Zco8zbr1h{L&wXHkYSsqkZfV6kR&L>>bvH(^SRe znN_f#Lqk%;HhW785 z`~IZh@eRsE!L!AfcE@?FKU1^z_^->_TPHsK(Xm~F7W4XtBGZmuXk7lv(GAbd8fDpU zXpPI8V_yipYC;`o50V`@3?&3hj)<&>%8i3QWrqkjl_ezAfQA$# z3Wm{wVJQIPEs(nsazqD`Ho(~?sI2|CB33;mk~az>Oh9`tnrWz zMnQAl1F)ATX-!wxU%qth(PgtTC*fE>G4s%jKj~N9`}F?CCo9grTw3H&!NKNgfy%?} z@8w}tmzDNmBNzl0nG3C zNkO$z5{c4(WJg~9dd26H#<$#fVBMml<09`wb~yDpKg^$&KfG^h*UhSP2b!cd5Dux_ zGJe207pg6Zgoz&2U&D*3Cu}JMvty?v?Luu@JB?0V@TWN3YmF{o8~JzY=FYjf{y=oY z{Z2v>nx6*wJx_9vH+zBGmx!SbFO-XI19Eltf=PF(pS*SCfiFIIX~F(&8>qbfi@W~w zf9{Lde(ZVk{|09K{pU+VnuBkQYp#k}H@$(=$$K0rMZ0qH9tk&h-Ccij)^ATJs%p|?)wY~4C>R;j z;$lXGwIw%Sb2Z9ck`!mx==Lun$k7x_Xp5QvwZV)nvdPwA09${!iud{JB$90{R0q8) zAEhwCXX8*%%dmBo0Z3(^p!%)ZK#H<{wS@MHy((*I1vBt?GpPHr;2PTRZS0n~Bpc;q z5ih{eEs9yB&FjQLW1v|NN5b5>%^NgwS5?+nCtf}GET8BhSP2vK-QM@V}Xo|PERogAON6XIXcCOisq2N7jPj>`bkHGa5N z6q_8bCW4BQ`LP*};p++cCV%FELUSM!Q3@E46*j1R>AT^wB$Zb13K|qY&278*KCN<6 z>HgFX_>=Z^PVTO@H8-}FG~X(oH;}Pv*{+_(=ABb*5?VX@qd~U@e-CtCN06k1b)Ku2 zabXpyqA+15M9FOq&JOwTv$__va&RkT58s?S7`7^^{Bac&9kn_-U#H#gTbGtpWDL~ln~87*aB{WB#NPQf?EvZW=w)^n z8!WKmkiW<}AH9+D`^y%k%+HU0B#}!C z?EAUpSi$qlZWXt)W=Ob6nFu;ei&sRI$3i#`pRb(UOCjf3645p1n2j=srgEAa;-_B? z3=vg>gvmdBeFqE0a^c%z)9rnERR2~$QI8)OOmx|5D7rDAU>R^TN=T!xz> zgY}eLEow#=4Wz%t0#=cFRol4q_>|}htA+wb*zbKUs9|Pcu6eiO5HWEdq^HJ-}KqGLc|iK}d?-&6IqY$gK``h*?aW zyjUjV?1a^Gl{Oh-xC%=2} z!(VGQH+PM@oa7~&T!6F4kek5TA|26!(*TKX5Lk*j=iLb|70YEfqUbY=@o5+k$YGs; z3Qhw2Hc481IuF&#`!@0A4dtVT2QQn@Gd=lC&KCEE7S)uVKcC#TPgx?sT>K6TRHhAz!7I=}Szy`oHQ#0qTzOK9C9W5RBrM`Cjmsc>H3Y!e+LORl_h zbm6$pgoJ+eTv`+5BMd5n(Pw9I>be%eGo1)C9)D@Fgh^pJm^e7=!+qopDoJyjveXZV zy`*yjnWS+8-;y53ta=JEE9ke2B(e&#Y7Q8QMc1=`)Jx3@H5U2u4nj8Sc5u~!;+9f( z@~xmu<>OJR;xPh)QWh-WNNI}J?uPlp85+^MM6WMRWP$k_Bz9x`tSg5YjD~}$4F3q| zP1=q<-W3Yf{&Z+HFxDC;^;Em5Ds0l40*)ybMzT_1^{DM(??J4oa+BA4@_fa$r;%F$ zi7NimQMv)k!q$d?0J7c*!&pf+ksUSzVrD@XMq&8olvur4VcNwGGO`drQK5iIg3xt& z>-d#x6Q1v0^G14;laSaZ2tjL#yrVIWq^R9oSwgF*jl-%rvYS+FV(ML+F+|8poA7-Sm(;?oebX_5v3grS9yn|NEdVuma&F%g{8LI z5Edp+=dJBh|IFkhv04vv`-IkL&V9LW`0C1k{HN^hxEkm5X*;@4_J;ZOGx}tiJ7-EM zRREVV=~`@iZr_ym_NDicQ855`PzV5HqO3tq7nC}u4GnXXp=&_RQPZ|AF+ysin9J8s zFS}AUksMLM?=R>9!lk5`9XgNvPc!aT;A$fhvl-`&ip+;zy7tqjU0?jM{}=z8{{8#d4`C<68U zTH6joSjK(X;*S=pqtG1`v^oZ=sGjkd53!K-g|< zGzCPJLz@C5LePjaFbw-^wKF!>sjw9%yTop6Q)GIiaT3@YbGD+DwJajU%oPDiK3pnj z^&~DhFJt|2O1PS2Um_n6%C!sz1_2>UCyuucD1e?sf~{sc5{DA8rW6~Pp?Yue)q1oR zehIQ9$tYvE7JfgDbh20*)Wdt@I(6XMwX4f#UCoFl0&x`~sPfaq%+bQb6O`hUlfy(NYhG|0Q%g%hvpgL| zIXiW?C1y(dtz%=cfNSJXHrSF>k7^<%6I$aCEQmT&$pjfDh*gWUt9n%Z?PMc9h;c+d z_k>;?-_wz7iyBrZyt6x5nV$;50f#+eo{ZPc=Cy1F-7s)wF)zHme*?lX`z3(k7rU`-AX=yU_w$}VQb4Nz-QGTAPlst z4u}>LSxJnJ1F5juL?Sbfu(Mns%PLpDEx}-(mB~_)Sm*=bOEB$U(}_m9jF0K;J;xdv z^6C@B)Gd7Xgx%a8!Wx7&Vr*zws)aFD+fW>Z$qfqa*3yi3pg3`0tEM9DvbF?ul-S*9qJspx!C8PQ%%;3!4yS%=+W4=M zzdv~Yjr^{4Grl-*aJCj$zi?Fwsl~$-l$fu_)I8;`n_pLZB*xWWaCBco#uHN>ou;WT zMv6-wtb0+ij>%clLC4j!JH>-WoyBP=j9Q-7IJ0(C*A=m6z*{ZtqX##aEb}mpETTZ+k&S{~QO`-?Jn6?Tgw&yEQ)HX7fk-nMTv zYNTrEKu%!R&AFl%mZof=wI3*q@I;6ouBFf=x4!ew6)!Fd{NDcHYa{Qya{T!R=iDf> zKl_nY(E+;xpgBI?yvfUGhemKt8np=|Yp9BJNJeM!!EkHz9`o+L)oJU`{`Jr9_K}je z=Cwc8U9;AppEIkWXWMV83rEU$C^b!aj^`Kr?St=&=KuET54%?Xt@p9SKaQ0sb5nz) zpU^1C5u=oi@|uZ~B#QAn6u-qosRd`ZSEBcyz;g=GBGfV+Ue?Rzmx&$w7i27G&_$yW zAUjH%bjS*W7pWANuL^m3PYb zNY%)QYGY&xO5LX4lNXqH*jt)Ah>a^2i9rZ!Eu^!qduJj;#I)==?H{pSJ_d)?rER;m zSKhp|EqT_<&SQ@3j>+AoumV-Vi5S$sax%r0MZ;`UAv9$X!;kN9QPJ4~f@G7#;*PG? zBdSuJqV`zh7IWf7(9i^JS8GSd>COLk+Fm$zvu1m^CV6Ak6UQzu%iiRzM>8TW?mHGY zEX>|>Xan`^bg~T!NTalL_M!Fbt3M-KDXIyqVB|P~5!Tgg+0!cWlX` z$cO{^0(qi!tEM#_JF@pl%%*$>bfZyL!dQ){&JKA?3RpJSA4qZfxn)K>OejWtlZit zL^(#Fg3TvW8cO$rf}{xkACn*_p(HlqNH0$2v-wc} zrHZGe)22*Wwrc#?-6}>fu5176yl=ny@|W$uSve1R5BC(;;8HbGtu^0dE2>C*D=E`sNSR*>G{fX zYtoJZoJpj!tJh0FYHcmguoE@~fpjarbkqIh%?pngGT?xqfk8rq#F`>W3^9g22D#yg zxk4l0Gud1J*xUHiscAp_QljL}HKgVI@aw|swu@^&-+F&wNb~fLeYK|)<@>T!Bx-H7 zC`r0OSz>0jYhS%SeDdt$*E3%K<>#~4UcS4boT9xFocZ1a>$n~!kLP`|9uFwCTj3`y zB1bo&Hk7;?3&|D@KVGRDG+Xg7I<=N?co+seq&0_K=l{^#5hyccCJL7b9efq2XKnbQ|0u zCGDQfvsc2c_5skKz?O#vQW8dGnc@M|QtBoACvYcgEYg}beN_F@o=jPL8f&=tF*Kol z(Eo%G#@$z7)#DL~cTrY~wgjRRNvfxb*sg^5*eRw;(h^c*%E>gy68dKAyt5q^m2$*4 zZ}y6WExOGU9o*>J(4g8z!C2yn#sTvW2X6P&Z7sN>y)z%F(-SUNJ%Jx2D4i~=X**NA zU^|A^g|UFJ$jK<7W|1pvn8+|7K4Gwx^*5UEWuZh6YGVT9h*>Ysuko*zJ@nnQi;pb< z;`}cM@{fNywoX3WMmr>=ot0}RHH$N8eQczJ$dlE57xQ*&2dK8i*-1OP9PQg~ADB9M zdo>7dcnKxisTGMh>>7aMn}V%l21rCbKAadbHesB>Yj_k-dI?D4!itV z8xk*39rh5elf_{|MMqUY|5repwgXaOqQ^S%p^2=9}A*b zm|3A4As};WV_0HU-Pj%_V~CMswiUKYcyEAp^>%nOYo3xRr1CzJV&FJMo6TqkTSZB% zhcRK5&ZL@!Ovluqb#5O+6#uhWDgkK3U}cM8$8*nAH&7Nq#Klik0-=D;p%HDSgQcQh za_paZ#nH|HwZ_9W7)xkMjo#E)*)s0Aw48UJ?LD{JxbJ57apSrtif^4Z; zuFPAqWZzJr@kBB06bX5fntC?9+FXCEmvj}jB;SANlh>}_f9jtX7XEmCUKScrg=Xh9Zv@O|6;!wbLK{_gL$POW+P zpKrG|D=?s%YejnSR156l+Y+v~IXNPnXpOQa#+oxH2BV`Nsg@#)6aU4w@|8$6sf5;t#973E6>GDD`Z?Er{U2 z1*BDEs}&WX4vb;Xempj~a_T2H*C&**l^u7AqomN+s2EmKJc}9ZL=GVr5yz=3He|zuqbuUa^wQSz_ zwd2Oe)aeerla8aBSKAZR1T2~nX72C?FRVvNUgXrf8XFq6)CwK_TxHoBS*n5|r1o`+bDpLlvkwg7mYB?2C({Xm=CQ&lB0e zWB|X$VpqWs2=O55i(?&L{BN%#?ip(>!d_dZX$t5GcQ9LFOX5`( zv_vh(O_ol0(6j8az*U1GAD3#PQRD>(!jz09Kga?8=rBX1ScE9Vv;@4}!4j{b#4a%g z{Lj^;F6>Xi-ywBItzpg_rAokMu?T#bj^9+zB&e)Q2gy7&Yq3p7nuIGWeOwj%eyo$z zdSrg06K{*3NUH4F8Msq?uwr@cwKVCC)dT6K@eQ0!f%x>ByVpHo$mwZH?8Au8pb~mV zoqHy=4HmCqbI2H0*HydaeaKCM)5YH%hlv!F$HNWXmPlA?Hw?pyxaAlRCnH9v0C}#t z+7^g|fU#FP7k5i^1ucrHMe&EyUb*bcYuUcwi_0ZS%53wDclG93^RDtCcvtp$szNgZ z;hQy%_Lc3|<^|Zps)av0UkHc!1<^A2b%>=`OS4R+H}Po6 zf(CCET(Wg?o7<^JnvdAXTM-4T`JW!roS??H7Znii9{m$U!*qx;|0)thQNmP9&4XLAJ!rHUjG>6OiDOIn|?wE2m@9?IVxByIZG zSXVW@qDbZ_UsHQnlq#4N7$Q^$2^T~puErq7l#nP)rt7*5efTs=8Cxve>s_Xh*%&rk zM~tveF@Cuh9w{~0Y&qd_qumu(6$?mgoSGVTDXKJb!O)hGhsHtl)ZNY@-LnW_TUF`$ zY1J7kYEKq3(W8t-#u4N;1#5G_mN6A%*XMvgHOy3koU$~=Z4js)y{6x6^u-tXs=+1p zHyVVF9N5_Ml3j#e<{^~G2lTT+c(iG|Q--;V1=g6>{$tSy$unYk0LN!}8Ow@(%@{Gh z!z+4v6)LrXFp(SZ`jPXgJ~Q)NVT4&hd-G@+$1@T#s8vzrP3@Tv?a&YZuU!4L zJKo|LVCZR*B4|UL$Y{y*vr!~fAXSi9b@ult(oADOVU7!{?F`UKEaEOvCGJYCb`dZU z(-_fIyW)^YK4=_cP9Y-3Ld9@6UCeY2m`4NXsPHmfu+1kz*OItF!JTu}uGpjl$I?=u zRMO+p(^XiiLJProFkjY}Gw>G7Ly7N6<_9EKg|t4Sv6{B_;lYOh@I zUx;d(C`aV94N*E@_9~#>zk$CQ}T3Y7N?oF!noHQiBwflawU4go5-?0{hqK zQI)1akBOSrp{~67n8-2-O0$kW(E6ROP?4{E$Hh#~pVZ54+LPdQIwnXLKj!6$Fn;7| z3Zkm3=_JqhSs700Yn05@(Wq3>h+~1TsDN&$dLU3eHymcpwA9~E;;zqSF*lT@NEkoi zmq3mH`Yc#Yaihw%{q?%rIrf+5-?z%n#iU-keEXHmn}6T_{AUNKRQWKVJOalEXBfXX z>up7q&>ApVQ?@Yj)b_xw!>xyAyjyVfOv}R)o<4A(>C0oH=&;EYyuwslO6Mh8r1<6; z*1&@*tk)U{MsEjUuotm(51Ok1Xf2Rr#4X-=|4wjVN z?RDbKZV%jveNL9XG1Y5RZ$h* zM8@Wb_%PEHKp!ho2l@0M#DPI838jQn$oXwmvKM&kpmCIF z3iWqTJ%J>nsuYqcBEuP!0^o`8Q)|#{HRR9D>6|=XVTOU)Rn38mqad~sGoV0_w+W{5 z!oEqRo8EtC>gB%Gf$S$rroJ(?u{ycSwrnW3(Oz;RXK^57^5?$Rl474)pRwXP-FF6( z&Fr> zynKB5tbrvDQBtHeO7|VOH&V|NdLAEvnqr;N4*gberJO9%k@0BGoTT0Qi+R zT9u)4W?W2uSz~hQvb-|tkxlibdC%0R@Ajhf=T$0R%uG4rZ3re|d;mq}6} z<4GtEP6#-Ju*`%8k{*yF2T z|MAi{cV7C_xcS55cRXtR_UPRADt^YiY7(!$U2LzUD*?N+sM4vb_pa=d$te6>_y?1jc$NXv7Sd#e8`dbf`o9b|A29bI{+*uh~m`Hdm8Aq1c%ey@V0RG>ie@VV&$ zTmlp)F}I9ZQ+tA^^YWBZNe?BeSVL~SMq+HH1eUeLuv$yG$Z9jl3|#`S%PMm#YcX2^ zur`kVaXQ~XT6k$ky&;j7YYn7~5rM!6^1@<8Po_4OeP$P$Y%rvK1nrPB&R8#j{;iu; z5CBH1q)wZhksD!CjoqBFGJ4`?|0}1xC(dK+PwNSpUY0>_DQ%!x?DgtPwFuBt(shRL z{P=^h$p4??TRgMMsX$+x zM7TL?u%LXAE80jvP$U`sLOjlCdWS|Xk@i;sgTu<&miF{omzx>-HH4iQ+7dPCD_cVoc(+p5Nzr9WMF zA9?=8{f?J@_|Nq6Cy%Z>JMhFmW$*rL|JjT8UzsAouJt^Q4T3G)cnKb7>cbB#kU2_GX_4m7fX9OT1Xzf&} zQ-0LD2sf2$V){|L_AxTK57oTaA@3_FR1g7~Gg$vXk6)&Bc|Kl@hC41)ojseysctz((NyJs{#CktsEy`^)QMt2X zv?M_F0C8`0pfG0VR7m@YR%*?5LR6}|G69pekh6FROjoJ|lVKH6p@RI}6Acs<>x6udMY}2G!dOOm)n0QYuLIXe zq8cEhSm{P8cQPN?$q;fJMYcgYLlRN-{@3KYcrA#{N-q$Rqpnn>M{&my+%qbvBv9JwZbBXSKpXC}UM>6Qyd4ad+hHzPhJX zT^V>5ZoHBSolPU>7uOz}nH9EnnVZ9yKRQ`1Z1rN+4oyXr+JfPkEJ8votf#Cgpx$b~ z=B&tzR-&wKHA9qxqERZLHL#jWiK0N93TtzXA$_N+yy(qYAEhe*d$QzD+4Jtl3og-9 zF6%b3&VcSa97C&N?|36gkT6ujmg6Vo2f@WNbIjEgjoE=+b zQ7{QKMALeW4KcrAp|K9QXH7p^G8@8B@aa_(h~DX@`_b`JVbCt9M4~|IJu_C-)996x zu{InKDPW_RbVI(u`DtBB6t2{;84M?z0)-hjOzY)b1?_eO1%EVH$`Z(MHH#k;LGm z^tH!o^%C`YEZABp)C#vLJ{xYAlA=P`1c6QQVoGUL8C4~;pD+kA&#F-7mPvcC;6;iT z7l<}L{(!4{ZCXmh{WdBnvqoh&T?gvQ&m4N}d2G~Xj)aX<-a8OCOS2KnwBuLyIWu=m zj!!9XJ;Y=_^tdekt79z-=KSs8-uGT<)-0cT^s{-h%w8zPHIbP7M(4@-B?o``bY83K z=#kY6ZWU%mTU3P92KBv*TA9&1dF;b|*7ClNowuk7ZEd&c{1#P7@Zqyn-Jex2UvqY& z(YO)z!L)cv=(}0|۞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 C23olQ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/assets/platform/css/personGovernance.css b/src/main/resources/static/assets/platform/css/personGovernance.css new file mode 100644 index 0000000..c314d22 --- /dev/null +++ b/src/main/resources/static/assets/platform/css/personGovernance.css @@ -0,0 +1,768 @@ +/* 人员数据治理列表统一占满内容区,数据超出时只滚动表格主体。 */ +.person-governance-page-transition { + visibility: hidden; + opacity: 0; +} + +.person-governance-page-transition.is-ready { + visibility: visible; + opacity: 1; +} + +.person-governance-page-transition.is-leaving { + pointer-events: none; + opacity: 0; +} + +.person-governance-list-page { + box-sizing: border-box; + display: flex; + flex-direction: column; + height: 100%; + min-height: 0; + overflow: hidden; + padding: 10px; +} + +.person-governance-search-card { + flex: none; +} + +.person-governance-list-card { + flex: 1; + min-height: 0; + margin-top: 20px; +} + +/* 会员匹配列表的查询区与列表区间距缩小为原来的一半。 */ +.person-governance-compact-gap .person-governance-list-card { + margin-top: 10px; +} + +.person-governance-list-card > .el-card__body { + box-sizing: border-box; + display: flex; + flex-direction: column; + height: 100%; + min-height: 0; +} + +.person-governance-table-wrap { + flex: 1; + min-height: 0; + overflow: hidden; +} + +.person-governance-table-wrap > .el-table { + height: 100%; +} + +.person-governance-list-footer, +.person-governance-list-card .el-pagination-container { + flex: none; +} + +/* 人员变更列表位于 Guava 默认插槽内,列表视图仍按查询区、表格区、分页区分配固定高度。 */ +.person-governance-change-page > .guava-main-content, +.person-governance-change-page > .guava-main-content > .transition-item { + height: 100%; + min-height: 0; + overflow: hidden; +} + +.person-governance-change-page > .guava-main-content > .transition-item { + display: flex; + flex-direction: column; +} + +.person-governance-change-list-card { + flex: 1; + min-height: 0; +} + +.person-governance-change-list-card > .el-card__body { + box-sizing: border-box; + display: flex; + flex-direction: column; + height: 100%; + min-height: 0; +} + +.person-governance-change-table-wrap { + flex: 1; + min-height: 0; + overflow: hidden; +} + +.person-governance-change-table-wrap > .el-table { + height: 100%; +} + +.person-governance-change-list-card .el-pagination-container { + flex: none; +} + +/* 配置页顶部字段根据内容区宽度自动分列,空间不足时自然换行。 */ +.person-governance-form-page { + box-sizing: border-box; + display: flex; + flex-direction: column; + height: 100%; + max-width: 100%; + min-height: 0; + overflow-x: hidden; + overflow-y: hidden; + padding: 10px; +} + +/* PageHeader 提供统一返回入口,并与基本配置保持紧凑间距。 */ +.person-governance-page-header { + flex: none; + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 10px; + padding: 16px 20px; + background-color: #fff; +} + +/* 表单页只保留返回入口,移除 PageHeader 空内容对应的分隔线和占位间距。 */ +.person-governance-page-header .el-page-header__left { + margin-right: 0; +} + +.person-governance-page-header .el-page-header__left::after, +.person-governance-page-header .el-page-header__content { + display: none; +} + +.person-governance-form-basic-card { + flex: none; +} + +/* 第三方接口按Token与数据分区管理,一级页签保持紧凑并独立于各自的子页签。 */ +.person-governance-endpoint-tabs-card { + flex: none; + margin-bottom: 10px; +} + +.person-governance-endpoint-tabs-card > .el-card__body { + padding: 0 20px; +} + +.person-governance-endpoint-tabs-card .el-tabs__header { + margin-bottom: 0; +} + +.person-governance-endpoint-tabs-card .el-tabs__content { + display: none; +} + +/* 顶部基本配置横向铺满卡片,并压缩默认表单项产生的底部空白。 */ +.person-governance-form-basic-card > .el-card__body { + padding: 20px 10px; +} + +.person-governance-form-basic-card .el-form-item { + margin-bottom: 0; +} + +/* 两类会员规则使用独立页签,页签本身不参与内容区滚动。 */ +.person-governance-member-type-tabs { + flex: none; + margin-top: 10px; + padding: 0 20px; + background: #fff; + border: 1px solid #ebeef5; + border-radius: 4px; +} + +.person-governance-member-type-tabs .el-tabs__header { + margin: 0; +} + +.person-governance-member-type-tabs .el-tabs__content { + display: none; +} + +/* 主要配置板块占满剩余高度,内容过多时仅在板块内部滚动。 */ +.person-governance-form-content-card { + flex: 1; + min-height: 0; + margin-top: 10px; +} + +.person-governance-form-content-card > .el-card__body { + box-sizing: border-box; + height: 100%; + overflow: auto; +} + +.person-governance-form-content-row { + display: flex; + flex: 1; + min-height: 0; + margin-top: 10px; +} + +.person-governance-form-content-row > .el-col, +.person-governance-form-content-row > .el-col > .el-card { + display: flex; + flex-direction: column; + min-height: 0; + height: 100%; +} + +.person-governance-form-content-row > .el-col { + float: none; +} + +.person-governance-form-content-row > .el-col > .el-card { + flex: 1; +} + +.person-governance-form-content-row > .el-col > .el-card > .el-card__body { + box-sizing: border-box; + height: 100%; + overflow: auto; +} + +/* 匹配规则标题固定,条件组占用剩余高度并独立滚动。 */ +.person-governance-form-content-row > .el-col > .person-governance-member-rules > .el-card__body { + display: flex; + flex-direction: column; + min-height: 0; + overflow: hidden; +} + +.person-governance-member-rules-header { + flex: none; +} + +.person-governance-member-rules-content { + flex: 1; + min-height: 0; + overflow: auto; + padding-right: 8px; +} + +/* 会员预览固定标题和操作区,表格独占剩余高度,长列表只滚动表格内部。 */ +.person-governance-form-content-row > .el-col > .person-governance-member-preview > .el-card__body { + display: flex; + flex-direction: column; + min-height: 0; + overflow: hidden; +} + +.person-governance-member-preview h3, +.person-governance-member-preview p, +.person-governance-member-preview > .el-card__body > .el-button { + flex: none; +} + +.person-governance-member-preview > .el-card__body > .el-button { + align-self: flex-start; +} + +.person-governance-member-preview-table { + flex: 1; + min-height: 0; + margin-top: 20px; +} + +.person-governance-member-preview-pagination { + flex: none; + padding-top: 10px; + text-align: right; +} + +.person-governance-member-preview-pagination .el-pagination { + padding: 0; + white-space: normal; +} + +.person-governance-member-binding-hint { + margin-bottom: 16px; +} + +.person-governance-member-condition-relation > td { + padding: 6px 0; + text-align: center; + background-color: #fafafa; +} + +/* 每层条件组对应一层括号语义,通过边框和缩进直观展示父子层级。 */ +.person-governance-member-group { + margin-top: 20px; + padding: 14px; + border: 1px solid #dcdfe6; + border-radius: 4px; + background: #fff; +} + +.person-governance-member-group.is-nested { + margin: 0 0 0 20px; + border-color: #b3d8ff; + background: #f8fbff; +} + +.person-governance-member-group-header { + min-height: 28px; + margin-bottom: 10px; +} + +.person-governance-member-group-actions { + margin-top: 10px; +} + +.person-governance-member-group-relation { + margin: 28px 0; +} + +.person-governance-member-child-relation { + margin-left: 20px; +} + +.person-governance-form-footer { + display: flex; + align-items: center; + justify-content: flex-end; + flex: none; + margin-top: 10px; +} + +.person-governance-form-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); + column-gap: 20px; + align-items: start; + width: 100%; +} + +.person-governance-form-grid .el-form-item { + margin-right: 0; +} + +.person-governance-form-grid .el-select, +.person-governance-form-grid .el-input-number { + width: 100%; +} + +/* API配置顶部字段按业务宽度靠左排列,同步方式具体值单独放在页首右侧。 */ +.person-governance-sync-type { + color: #303133; + line-height: 24px; +} + +.person-governance-api-basic-grid { + /* 按业务宽度紧凑靠左,剩余空间留在右侧;窄屏只允许整组字段换行。 */ + display: flex; + flex-wrap: wrap; + gap: 18px 16px; + justify-content: flex-start; + align-items: center; +} + +.person-governance-api-basic-grid > .el-form-item { + display: flex; + align-items: center; + flex: 0 1 280px; + min-width: 0; + max-width: 100%; +} + +.person-governance-api-basic-grid .el-form-item__label { + flex: none; + float: none; + white-space: nowrap; +} + +.person-governance-api-basic-grid .el-form-item__content { + flex: 1; + min-width: 0; +} + +.person-governance-api-basic-grid > .person-governance-api-request-address { + flex-basis: 620px; +} + +.person-governance-api-basic-grid > .person-governance-api-timeout { + flex-basis: 270px; +} + +.person-governance-api-basic-grid > .person-governance-query-action { + flex: none; +} + +.person-governance-request-address-control, +.person-governance-timeout-control { + display: flex; + align-items: center; +} + +.person-governance-request-address-control { + width: 100%; +} + +.person-governance-request-address-control .el-select { + flex: none; + width: 100px; +} + +.person-governance-request-address-control > .el-input { + flex: 1; + min-width: 0; + margin-left: 8px; +} + +.person-governance-timeout-control .el-input-number { + flex: none; + width: 200px; + min-width: 200px; +} + +.person-governance-timeout-unit { + flex: none; + margin-left: 8px; + color: #606266; +} + +/* API配置页签占满内容卡片,返回结果文本域随剩余高度伸展。 */ +.person-governance-api-content-card > .el-card__body { + overflow: hidden; +} + +.person-governance-api-content-card > .el-card__body > .el-tabs { + display: flex; + flex-direction: column; + height: 100%; +} + +.person-governance-api-content-card > .el-card__body > .el-tabs > .el-tabs__header { + flex: none; +} + +.person-governance-api-content-card > .el-card__body > .el-tabs > .el-tabs__content { + flex: 1; + min-height: 0; +} + +.person-governance-api-content-card > .el-card__body > .el-tabs > .el-tabs__content > .el-tab-pane { + box-sizing: border-box; + height: 100%; + overflow: auto; +} + +/* 系统表配置不显示单一的字段映射页签标题,映射内容直接占满卡片。 */ +.person-governance-system-table-card > .el-card__body > .el-tabs > .el-tabs__header { + display: none; +} + +.person-governance-system-table-card > .el-card__body > .el-tabs > .el-tabs__content, +.person-governance-system-table-card .person-governance-mapping-pane { + height: 100%; +} + +.person-governance-system-table-card .person-governance-mapping-pane { + overflow: hidden !important; +} + +.person-governance-result-pane { + display: flex; + flex-direction: column; + overflow: hidden !important; +} + +.person-governance-result-textarea { + flex: 1; + min-height: 0; + height: 100%; +} + +/* 返回结果下方的映射配置固定保留,长响应只在文本域内滚动。 */ +.person-governance-response-fields { + display: flex; + flex-wrap: wrap; + flex: none; + gap: 10px 20px; + padding-top: 12px; +} + +.person-governance-response-fields > div { + display: flex; + align-items: center; + flex: 1 1 280px; + min-width: 0; + gap: 10px; +} + +.person-governance-response-fields label, +.person-governance-task-cron label { + white-space: nowrap; + flex: none; +} + +.person-governance-response-fields .el-input, +.person-governance-response-fields .el-select { + flex: 1; + min-width: 0; +} + +.person-governance-task-cron { + flex: 0 1 420px; + max-width: 420px; +} + +.person-governance-cron-hint, +.person-governance-json-hint { + flex: none; + color: #909399; + font-size: 12px; + line-height: 20px; +} + +.person-governance-parameter-pane .person-governance-body-json { + flex: 1; + min-height: 80px; + height: auto; +} + +.person-governance-result-textarea .el-textarea__inner, +.person-governance-body-json .el-textarea__inner { + height: 100%; + resize: none; +} + +.person-governance-result-actions { + flex: none; + margin-top: 10px; + text-align: right; +} + +.person-governance-body-json { + height: calc(100% - 52px); +} + +/* 字段映射与请求参数表格在可见页签内直接按完整宽高渲染。 */ +.person-governance-mapping-table { + width: 100%; +} + +.person-governance-mapping-pane { + display: flex; + flex-direction: column; + min-height: 0; + overflow: hidden !important; +} + +.person-governance-mapping-table-wrap { + flex: 1; + min-height: 0; + margin-top: 20px; +} + +.person-governance-mapping-table-wrap > .el-table { + height: 100%; +} + +.person-governance-mapping-toolbar { + display: flex; + align-items: center; + flex-wrap: wrap; + gap: 12px 24px; +} + +.person-governance-mapping-toolbar-item { + display: flex; + align-items: center; + min-width: 0; +} + +/* 两种数据来源共用右侧清空入口,窄屏换行后仍靠右,不挤压周期控件。 */ +.person-governance-mapping-toolbar > .person-governance-clear-mappings { + flex: none; + margin-left: auto; +} + +.person-governance-mapping-toolbar-item > label { + flex: none; + margin-right: 10px; + color: #303133; + white-space: nowrap; +} + +.person-governance-mapping-table-select { + flex: 0 1 360px; + max-width: 360px; +} + +.person-governance-mapping-table-select .el-select { + flex: 1; + min-width: 180px; +} + +.person-governance-mapping-switch { + flex: none; +} + +/* 系统表配置项按配置名称、来源表、目标表、同步开关的顺序自适应排列。 */ +.person-governance-system-table-toolbar { + flex: none; +} + +.person-governance-system-table-toolbar .el-form-item { + /* 标签与控件作为一组排列,仅允许表单项在工具栏中整体换行。 */ + display: flex; + align-items: center; + flex: 1 1 280px; + min-width: 0; + margin: 0; +} + +.person-governance-system-table-toolbar .person-governance-system-target-table { + flex: 0 1 300px; +} + +.person-governance-system-table-toolbar .person-governance-system-task-cron { + flex: 0 1 430px; +} + +.person-governance-system-table-toolbar .person-governance-system-member-match { + flex: none; + column-gap: 12px; + margin-left: 16px; +} + +/* 长标签按文字实际宽度展示,通过固定列间距避免文字与开关重叠或距离过大。 */ +.person-governance-system-table-toolbar .person-governance-system-member-match .el-form-item__label { + width: auto !important; + padding-right: 0; +} + +.person-governance-system-table-toolbar .person-governance-system-member-match .el-form-item__content { + margin-left: 0 !important; +} + +.person-governance-system-table-toolbar .el-form-item__label { + flex: none; + float: none; + white-space: nowrap; +} + +.person-governance-system-table-toolbar .el-form-item__content { + flex: 1; + min-width: 0; + width: auto; +} + +.person-governance-system-table-toolbar .el-input, +.person-governance-system-table-toolbar .el-select { + width: 100%; +} + +.person-governance-parameter-pane { + display: flex; + flex-direction: column; + min-height: 0; + overflow: hidden !important; +} + +.person-governance-parameter-pane > .el-tabs, +.person-governance-parameter-pane > .el-radio-group { + flex: none; +} + +.person-governance-parameter-table-wrap { + flex: 1; + min-height: 0; + margin-top: 10px; +} + +.person-governance-parameter-table-wrap > .el-table { + width: 100%; + height: 100%; +} + +/* 参数表头按文字与加号按钮的实际高度紧凑展示。 */ +.person-governance-parameter-table .el-table__header-wrapper th, +.person-governance-mapping-table .el-table__header-wrapper th { + padding: 6px 0; +} + +.person-governance-parameter-table .el-table__header-wrapper th .cell, +.person-governance-mapping-table .el-table__header-wrapper th .cell { + line-height: 20px; + white-space: nowrap; +} + +.person-governance-add-column .el-button { + padding: 0; + font-size: 16px; + line-height: 20px; +} + +/* 弹窗和抽屉沿用 Element UI 过渡,并为本模块调整为更柔和的缓动。 */ +.dialog-fade-enter-active .person-governance-dialog, +.dialog-fade-leave-active .person-governance-dialog { + transition: + opacity 260ms ease, + transform 260ms ease; +} + +.dialog-fade-enter .person-governance-dialog, +.dialog-fade-leave-to .person-governance-dialog { + opacity: 0; + transform: translateY(-10px) scale(0.99); +} + +/* 弹窗挂载body避开页面过渡层,短屏内部滚动,窄屏保留周期编辑器的完整操作区域。 */ +.person-governance-cron-dialog { + max-width: calc(100vw - 32px); +} + +.person-governance-cron-dialog .el-dialog__body { + max-height: 78vh; + overflow: auto; + padding: 10px 20px 20px; +} + +.person-governance-cron-dialog .popup-main { + min-width: 640px; +} + +.person-governance-drawer { + transition: box-shadow 260ms ease; +} + +.person-governance-drawer.rtl, +.el-drawer__open .person-governance-drawer.rtl { + animation-duration: 340ms; + animation-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1); +} + +@media (max-width: 767px) { + .person-governance-list-page, + .person-governance-form-page { + padding: 8px; + } + + .person-governance-form-grid { + grid-template-columns: 1fr; + } + + .person-governance-page-header { + align-items: flex-start; + } + + .person-governance-timeout-control .el-input-number { + flex: 1; + width: 100%; + min-width: 0; + } + + .person-governance-mapping-table-select { + flex-basis: 100%; + max-width: none; + } +} + diff --git a/src/main/resources/static/assets/platform/js/mixin/initTableMixins.js b/src/main/resources/static/assets/platform/js/mixin/initTableMixins.js index 9b475c3..4e62470 100644 --- a/src/main/resources/static/assets/platform/js/mixin/initTableMixins.js +++ b/src/main/resources/static/assets/platform/js/mixin/initTableMixins.js @@ -70,7 +70,8 @@ const initTableMixins = { pageData(data = null) { const address = this.pageDataUrl ? this.pageDataUrl : loc() + "/pageData" this.tableLoading = true - this.$axios.post(address, data ? data : this.pageForm).then((res) => { + // 返回请求 Promise,供页面在列表数据加载结束后再显示主体内容。 + return this.$axios.post(address, data ? data : this.pageForm).then((res) => { if (res.code === 0) { this.tableData = res.data.list this.pageForm.totalCount = res.data.totalCount diff --git a/src/main/resources/static/captcha/slider/0.jpg b/src/main/resources/static/captcha/slider/0.jpg new file mode 100644 index 0000000000000000000000000000000000000000..78b3ef65785f6aaf7ef3c9aea0004fe2722e1eeb GIT binary patch literal 23785 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⋐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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/10.jpg b/src/main/resources/static/captcha/slider/10.jpg new file mode 100644 index 0000000000000000000000000000000000000000..83858e024f1e0e64b42d6b7f92f5e9da7ef7544c GIT binary patch literal 22582 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 mt#+2uRKh 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/12.jpg b/src/main/resources/static/captcha/slider/12.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a706b3a5f6275c02a50310e9a3bea9f80e312ffe GIT binary patch literal 24308 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%0A6Ucm6~Z(Nk8Xo^c|WN{45o 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 Te8RG+B^1+o{{UKvN6i1($nj7# literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/14.jpg b/src/main/resources/static/captcha/slider/14.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1bae6f695da369bb369bf01f86e255a2529e32ea GIT binary patch literal 23363 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

}Ltt&!1>}!mx?)Oc-r2_C86u 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 WNzXtCB>g+qDRVn@Gm~lEAOG2CBMSQf literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/16.jpg b/src/main/resources/static/captcha/slider/16.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7f1417e09ca6780918fa6896741af7b304cc4615 GIT binary patch literal 20895 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/18.jpg b/src/main/resources/static/captcha/slider/18.jpg new file mode 100644 index 0000000000000000000000000000000000000000..51f2912f418378ba23bf8d7c0e6cfc809d0788ef GIT binary patch literal 17858 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 Hmp}j6lX}N( literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/19.jpg b/src/main/resources/static/captcha/slider/19.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b6311634d51cfef4b118dbde7de45250c828d8c1 GIT binary patch literal 22110 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
0$8LjMYiMWZpqHuN-kU8iH!Tf*5vq^k*CRdEP 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 pYmL=ny_OY`*QCU=RR2 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/2.jpg b/src/main/resources/static/captcha/slider/2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d572cffda65a932c9919f3ca280d7f10871c8f88 GIT binary patch literal 24622 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
^zl2xjI(|*d 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/3.jpg b/src/main/resources/static/captcha/slider/3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6975d20c3d54d9e8c4154826ab0f5fe221f4dee8 GIT binary patch literal 20916 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/4.jpg b/src/main/resources/static/captcha/slider/4.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8dafb765d32c4e01922c07bf2067f00cb03e091e GIT binary patch literal 22824 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/6.jpg b/src/main/resources/static/captcha/slider/6.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d5a959c285e085a1242d5535c887da5d968f6f46 GIT binary patch literal 24438 zcmbTdXHZjb`1ctg5}GstgM^wOy@g%{L8|oLl-_GXl_CU1z|ew(V(3kz_bSo}y(_&) zliooD{jLA!+1Z`hSG#+iIp@u}=gj>%=bAI$tNl0k-x`2gQ&mG1KtKop5d1p;|1AQP z0VKr4AmV!@AP|U@l!T0e?mh)MIRzu_11dV^N31N&k01~>m>?G$2R{@7;g;m#7Zwo{ z6JzC)mY0Id35trr|K}kDq@<)22s`}$v;EfzpdkU|5-1W8Z~zEt2#9D1 z{_6#>{@dq0g8yZJ|I-KviGcTrK_sMPS*MEC9if&W&A{ksnU(%hqE z7f~X9pl=J}@TG%CCg+hrpVoBI8%&42|Hk@v{oi2!4=$R2T!cU%5fJo0Tm*!H|4t$r;5~K`Vp=7Akge|n4tOL9-P7c} znl4hPsKE)n9b%G<0VcN2dHO$S|BLMZ9T@8W7uo*>_J4CN04RtE{(U?m8o(1k!jCiM ztDs8H>lhB2ege|wYA|#n0`&X=F1x|BpW)k2vHt*d+Dx7|5WXYXh!-V4K|1o|7E=sm zW#$cE8iqCaJzLdb$vQuxT;{Wty4WZlpkGCrJ?g)Hrya}|Ck<)iEsPt%(-AaNu5Hr3 zN($raPwYoe%4f~%Qh{eRKD@}F`}CK=y5g73tAzYgZMpbunWVKF+Z^!tvEpA1i%ibC z*S62N7aW??d*e3G&nY_}pm_x@~F zia~x46~pScEo+!Sg2Z1W`@2T^&W$Zd7%99w?%{|XofO+SI$$GZagko3O7^wwqFGi9 z4EJ2YF#92RBNvu4P|2HBT=d9IxC6cquQXdz{X)XXNW`*atYIx?rIXV8FyB+ta=3Z^ zZY@FchzU#($#ngfBixE&*2WG?ZfBd!EI{P#rC}FHsET;fN^;3^`7yZkz2)$XpTRHn z34iNCu``O(1nPLMD@vR_Eg2ptUHBSX*`x1Qe{#-&*SCEOFf|~LY+~D~f~TBa4S2O5 zRZa+&1qLxIJ`@%$^^%Wa5+OjuYQeWoD= z+SfOk`tUOIQ9w�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 UN|G?S_sR6`YZ+FuV$~o2*?qnaivR!s literal 0 HcmV?d00001 diff --git a/src/main/resources/static/captcha/slider/7.jpg b/src/main/resources/static/captcha/slider/7.jpg new file mode 100644 index 0000000000000000000000000000000000000000..81d456198960ebf0367d7a0425341a4a7ce02329 GIT binary patch literal 24061 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

- + position="right" + :style="{ width: '100%', height: '100%' }" + :close-on-click-overlay="false" + :close-on-popstate="false"> +
- 已签到 - 可签到 - 未开始 + 已签到 + 可签到 + 未开始
-
-
{{ selectedDate ? selectedDate + ' 的活动时段' : '活动时段' }} @@ -72,6 +75,7 @@ v-else-if="canSignItem(item)" type="button" class="activity-schedule-calendar__sign-btn" + :disabled="formLoading" @click.stop="onSign(item)">签到 +
+ +
+
+
+ {{ locationMessage }} + 重新定位 +
+
{{ row ? row.courseName : '' }}
+
+ {{ dateKey(selectCourseTime) }} {{ formatTime(selectCourseTime.courseStartTime) }} - {{ formatTime(selectCourseTime.courseEndTime) }} +
+
+ {{ row.courseLocation }} +
+
签到范围:{{ row ? (row.radius || 100) : 100 }} 米
+
+ +
+ + + @@ -126,7 +167,17 @@ module.exports = { weekdays: ["日", "一", "二", "三", "四", "五", "六"], selectCourseTime: null, signVisible: false, + signCodePreview: null, + positionConfirmVisible: false, + formLoading: false, + popupHistoryToken: "", + calendarHistoryOpen: false, + closingPopupKey: "", markerLayer: null, + userMarkerLayer: null, + locationLoading: false, + locationMessage: "", + locationRequestId: 0, map: null, circle: null, mapContainerId: "activityScheduleMap_" + Math.random().toString(36).slice(2) @@ -181,9 +232,11 @@ module.exports = { this.currentMonth = date.month() + 1 this.selectedDate = initialDate this.visible = true - this.$nextTick(() => { - if (this.showMap) this.initMap() - }) + // 所有签到模式的日历均入栈;上层扫码、二维码或定位弹框单独入栈,返回时逐层关闭。 + if (!this.calendarHistoryOpen) { + this.calendarHistoryOpen = true + window.h5PopupHistory.open(this.popupHistoryToken, "calendar") + } }, dateKey(item) { const value = item && (item.courseDate || item.courseStartTime) @@ -230,18 +283,43 @@ module.exports = { } }, onSign(courseTime) { + // 确认框关闭或定位提交期间不再切换时段,避免重复打卡和签到对象错位。 + if (this.formLoading || this.positionConfirmVisible || this.signVisible || this.signCodePreview || this.closingPopupKey) return this.selectCourseTime = courseTime if (this.row.signType === 1) { this.signVisible = true - this.$nextTick(() => this.$refs.scanCodeRef.init()) + window.h5PopupHistory.open(this.popupHistoryToken, "scan") + this.$nextTick(() => { + if (this.signVisible) this.$refs.scanCodeRef.init() + }) } else if (this.row.signType === 2) { this.makeCode() } else if (this.row.signType === 3 && this.moduleType === "brand") { - this.positionSign() + this.positionConfirmVisible = true + window.h5PopupHistory.open(this.popupHistoryToken, "position-confirm") } else { this.$toast("此签到模式正在升级中") } }, + /** + * popupKey 为 calendar(日历)、scan(扫码)、sign-code(二维码)或 position-confirm(定位确认);无返回值。 + * 仅请求关闭栈顶弹层,由全局历史回调同步显示状态,防止连续点击造成多次返回。 + */ + closeSignPopup(popupKey) { + if (this.closingPopupKey) return + if (window.h5PopupHistory.close(this.popupHistoryToken, popupKey)) { + this.closingPopupKey = popupKey + } + }, + // 预览定位不提交签到;点击确认时重新获取位置,失败时保留弹框和当前时段供重试。 + onConfirmPositionSign() { + if (this.formLoading || this.locationLoading || this.closingPopupKey || !this.positionConfirmVisible) return + this.positionSign() + }, + // 退场动画完成后释放地图;快速重新打开时保留新弹框正在使用的实例。 + onPositionPopupClosed() { + if (!this.positionConfirmVisible) this.destroyMap() + }, onSignClose() { if (this.$refs.scanCodeRef) this.$refs.scanCodeRef.closeScan() }, @@ -250,90 +328,214 @@ module.exports = { ? "/platform/family/mine/passiveScan" : "/platform/trainSignUp/mine/passiveScan" const content = jrQrcode.getQrBase64(baseUrl + "?id=" + this.selectCourseTime.id) - vant.ImagePreview([content]) + // 二维码预览关闭时同步回退历史;历史回调先释放引用,避免再次触发返回。 + const preview = vant.ImagePreview({ + images: [content], + closeOnPopstate: false, + onClose: () => { + if (this.signCodePreview === preview) this.closeSignPopup("sign-code") + } + }) + this.signCodePreview = preview + window.h5PopupHistory.open(this.popupHistoryToken, "sign-code") }, + /** + * 确认后提交所选时段的点位签到,无方法参数、无返回值。 + * 接口参数:timeId 为报名时段 ID,courseId 为课程 ID,lat/lng 为定位经纬度。 + * 返回对象的 code 为 0 表示成功,msg 为失败提示;定位或请求结束后释放提交状态。 + */ positionSign() { - this.getLocation(coords => { - if (!coords) return + if (this.formLoading || this.locationLoading) return + const courseTime = this.selectCourseTime + const course = this.row + const requestId = ++this.locationRequestId + this.formLoading = true + this.locationMessage = "正在获取当前位置..." + this.getLocation((coords, errorMessage) => { + // 定位失败或等待定位时已退出地图弹框,不再发起签到请求。 + if (!this.visible || !this.positionConfirmVisible || requestId !== this.locationRequestId || this.row !== course || this.selectCourseTime !== courseTime) { + this.formLoading = false + return + } + this.showCurrentLocation(coords, errorMessage) + if (!coords) { + this.formLoading = false + return + } + // 地图展示使用转换后的坐标,签到请求仍传手机返回的原始 WGS-84 经纬度。 this.$axios.post("/platform/trainSignUp/mine/positionSign", { - timeId: this.selectCourseTime.id, - courseId: this.row.id, + timeId: courseTime.id, + courseId: course.id, lat: coords.lat, lng: coords.lng }).then(res => { if (res.code === 0) { - this.selectCourseTime.isAttend = true + this.$set(courseTime, "isAttend", true) this.$toast("签到成功") + // 签到完成后清理本组件的弹框历史,返回时不再出现已完成的确认框或日历。 + return window.h5PopupHistory.clear(this.popupHistoryToken) } else { this.$toast(res.msg) } + }).finally(() => { + this.formLoading = false }) }) }, + /** + * callback 接收浏览器 WGS-84 定位对象 {lat, lng, accuracy} 和可选失败提示;无返回值。 + * lat/lng 为纬度/经度,accuracy 为精度半径(米);失败时坐标为 null。 + * 预览和确认签到均重新定位,不使用上一次定位缓存,是否提交由调用方决定。 + */ getLocation(callback) { if (!navigator.geolocation) { - this.$toast("当前浏览器不支持定位功能") - callback(null) + callback(null, "当前浏览器不支持定位功能") return } - const loading = vant.Toast.loading({ message: "获取定位中...", forbidClick: false, duration: 0 }) navigator.geolocation.getCurrentPosition(position => { - loading.close() - callback({ lat: position.coords.latitude, lng: position.coords.longitude }) + callback({ lat: position.coords.latitude, lng: position.coords.longitude, accuracy: position.coords.accuracy }) }, error => { - loading.close() const messageMap = { 1: "请允许浏览器获取位置信息", 2: "无法获取当前位置", 3: "定位超时,请重试" } - this.$toast(messageMap[error.code] || "定位失败,请稍后重试") - callback(null) - }, { enableHighAccuracy: true, timeout: 10000, maximumAge: 60000 }) + callback(null, messageMap[error.code] || "定位失败,请稍后重试") + }, { enableHighAccuracy: true, timeout: 10000, maximumAge: 0 }) }, + // 打开地图和点击重新定位只刷新预览;请求编号隔离已关闭或已重新打开的弹框。 + refreshLocation() { + if (!this.map || !this.positionConfirmVisible || this.locationLoading || this.formLoading || this.closingPopupKey) return + const requestId = ++this.locationRequestId + this.locationLoading = true + this.locationMessage = "正在获取当前位置..." + this.getLocation((coords, errorMessage) => { + if (requestId !== this.locationRequestId || !this.map || !this.positionConfirmVisible) return + this.locationLoading = false + this.showCurrentLocation(coords, errorMessage) + }) + }, + /** + * coords 为手机原始定位对象,errorMessage 为失败提示;无返回值,不提交签到。 + * 国内坐标复用项目工具转换为腾讯地图使用的 GCJ-02,境外保留原坐标。 + * 定位失败时移除旧位置点,避免将过期点位误认为当前位置。 + */ + showCurrentLocation(coords, errorMessage) { + if (!coords) { + if (this.userMarkerLayer) this.userMarkerLayer.setGeometries([]) + this.locationMessage = errorMessage || "暂未获取到当前位置" + this.$toast(this.locationMessage) + return + } + this.locationMessage = Number.isFinite(coords.accuracy) + ? "定位精度约 " + Math.ceil(coords.accuracy) + " 米" + : "已显示我的位置" + if (!this.map || !this.userMarkerLayer) return + const converted = this.$coordinateUtil.outOfChina(coords.lng, coords.lat) + ? [coords.lat, coords.lng] + : this.$coordinateUtil.wgs84ToGcj02(coords.lng, coords.lat) + const userPosition = new TMap.LatLng(converted[0], converted[1]) + this.userMarkerLayer.setGeometries([{ id: "current-user", styleId: "user", position: userPosition }]) + const activityPosition = this.markerLayer.getGeometries()[0].position + // 同时显示签到点和我的位置,并留出边距;两点重合时仍保留可辨识的地图范围。 + const latPadding = Math.max(Math.abs(activityPosition.getLat() - converted[0]) * 0.3, 0.0003) + const lngPadding = Math.max(Math.abs(activityPosition.getLng() - converted[1]) * 0.3, 0.0003) + const bounds = new TMap.LatLngBounds( + new TMap.LatLng(Math.min(activityPosition.getLat(), converted[0]) - latPadding, Math.min(activityPosition.getLng(), converted[1]) - lngPadding), + new TMap.LatLng(Math.max(activityPosition.getLat(), converted[0]) + latPadding, Math.max(activityPosition.getLng(), converted[1]) + lngPadding) + ) + this.map.fitBounds(bounds) + }, + // 仅在侧滑弹框完全展开后创建地图,保证容器已有可用尺寸,避免动画期间地图空白。 initMap() { - if (!this.row.courseLocationCoordinates || typeof TMap === "undefined") return + if (!this.positionConfirmVisible || !this.showMap || !this.row.courseLocationCoordinates || typeof TMap === "undefined") return const position = JSON.parse(this.row.courseLocationCoordinates) const center = new TMap.LatLng(position[0], position[1]) - if (this.map) this.map.destroy() + this.destroyMap() this.map = new TMap.Map(this.mapContainerId, { zoom: 16, center }) this.markerLayer = new TMap.MultiMarker({ map: this.map, geometries: [{ id: "activity", position: center }] }) + // 蓝点与“我的位置”标签独立于红色签到点;内嵌 SVG 不依赖外部图片请求。 + const userIcon = '' + + '' + + '我的位置' + + '' + + '' + this.userMarkerLayer = new TMap.MultiMarker({ + map: this.map, + zIndex: 2, + styles: { user: new TMap.MarkerStyle({ width: 80, height: 48, anchor: { x: 40, y: 36 }, src: "data:image/svg+xml;charset=UTF-8," + encodeURIComponent(userIcon) }) }, + geometries: [] + }) this.circle = new TMap.MultiCircle({ map: this.map, geometries: [{ center, radius: this.row.radius || 100 }] }) + this.refreshLocation() + }, + // 关闭弹框或销毁组件时释放地图及覆盖物引用,避免重复打开后残留地图实例。 + destroyMap() { + // 使尚未返回的定位请求失效,避免旧结果写入下一次打开的地图。 + this.locationRequestId += 1 + this.locationLoading = false + this.locationMessage = "" + if (this.map) this.map.destroy() + this.map = null + this.markerLayer = null + this.userMarkerLayer = null + this.circle = null } + }, + created() { + // 复用布局已加载的全局历史管理器,不在组件内注册 popstate 事件。 + this.popupHistoryToken = window.h5PopupHistory.register((popupKey) => { + this.closingPopupKey = "" + if (popupKey === "calendar") { + this.calendarHistoryOpen = false + this.visible = false + } else if (popupKey === "scan") { + this.signVisible = false + } else if (popupKey === "sign-code") { + const preview = this.signCodePreview + this.signCodePreview = null + if (preview) preview.close() + } else if (popupKey === "position-confirm") { + this.positionConfirmVisible = false + this.locationRequestId += 1 + this.locationLoading = false + } + }) + }, + beforeDestroy() { + // 页面离开时停止扫码并释放地图,再清理历史并注销回调,避免摄像头继续占用。 + if (this.signVisible) this.onSignClose() + this.positionConfirmVisible = false + this.destroyMap() + window.h5PopupHistory.clear(this.popupHistoryToken).then(() => { + window.h5PopupHistory.unregister(this.popupHistoryToken) + }) } } + + + diff --git a/src/main/resources/views/platform/sys/dict/index.html b/src/main/resources/views/platform/sys/dict/index.html index b0969b9..7d16480 100644 --- a/src/main/resources/views/platform/sys/dict/index.html +++ b/src/main/resources/views/platform/sys/dict/index.html @@ -35,6 +35,14 @@ layout("/layouts/platform.html"){ + + + + + + +
+ +
+ + + new Vue({ el: "#app", @@ -187,6 +222,7 @@ layout("/layouts/platform.html"){ "info": info, "basic-form": basicForm, "make-qrcode": makeQrcode, + "course-manage": courseManage, }, data() { return { @@ -208,6 +244,10 @@ layout("/layouts/platform.html"){ } }, computed: { + // 与后端关键内容编辑角色保持一致,负责人通过子活动管理维护签到。 + canManageActivity() { + return this.$auth.hasRoleOr(["SYSADMIN", "SCHOOL_UNION_ADMIN", "SCHOOL_UNION_ACTIVITY_ADMIN"]) + }, // 页签沿用“设为模板”按钮的角色范围,不新增权限标识。 canManageTemplate() { return this.$auth.hasRoleOr(["SYSADMIN", "SCHOOL_UNION_ADMIN"]) @@ -218,7 +258,6 @@ layout("/layouts/platform.html"){ const address = this.pageDataUrl ? this.pageDataUrl : loc() + "/pageData" this.tableLoading = true return this.$axios.post(address, data ? data : this.pageForm).then((res) => { - this.tableLoading = false if (res.code === 0) { this.tableData = res.data.list this.pageForm.totalCount = res.data.totalCount @@ -227,6 +266,8 @@ layout("/layouts/platform.html"){ }) } return res + }).finally(() => { + this.tableLoading = false }) }, // 切换页签时按活动表中的模板状态查询,并重置到第一页。 @@ -281,10 +322,20 @@ layout("/layouts/platform.html"){ }) }, openEdit(row) { + if (!this.canManageActivity) { + this.$message.warning('活动关键信息仅管理员可修改,请使用子活动管理') + return + } this.$refs.guava.edit(() => { this.$refs.formRef.initData(row) }) }, + // 使用 guava 的现有公共页面插槽,返回后保留主列表的筛选条件和页码。 + openCourseManage(row) { + this.$refs.guava.public(() => { + this.$refs.courseManageRef.initData(row) + }) + }, openUrlEdit() { if (this.urlEditInitialized) { return diff --git a/src/main/resources/views/platform/zhgh/activity/trainSignUp/manage/responsibleForm.js b/src/main/resources/views/platform/zhgh/activity/trainSignUp/manage/responsibleForm.js new file mode 100644 index 0000000..c810f0e --- /dev/null +++ b/src/main/resources/views/platform/zhgh/activity/trainSignUp/manage/responsibleForm.js @@ -0,0 +1,133 @@ +const responsibleForm = { + template: /*language=HTML*/ ` +
+ + + + + + + + + + + + + + + + +
确定后回填当前表单,保存或提交活动后生效。
+ + 取消 + 确定 + +
+
+ `, + data() { + return { + dialogVisible: false, + tableLoading: false, + course: null, + selectedIds: [], + responsibleList: [], + userOptions: [], + queryVersion: 0, + } + }, + methods: { + // 打开当前子活动的负责人副本,关闭或取消弹框不会更改业务表单。 + onOpen(course) { + this.queryVersion += 1 + this.$set(this, 'course', course) + const list = clone(course.responsibleList || []) + this.$set(this, 'responsibleList', list) + this.$set(this, 'selectedIds', list.map(item => item.userId)) + this.$set(this, 'userOptions', list.map(item => ({ + id: item.userId, username: item.username, loginname: item.loginname, mobile: item.mobile + }))) + this.$set(this, 'tableLoading', false) + this.$set(this, 'dialogVisible', true) + }, + // query 为姓名或工号;返回 Result.data 用户数组,使用 id、username、loginname、mobile。 + // 合并已选项以保持多人回显,并忽略过期请求,避免快速搜索覆盖最新结果。 + queryUsers(query) { + const version = ++this.queryVersion + if (!query || !query.trim()) { + this.$set(this, 'tableLoading', false) + return + } + this.$set(this, 'tableLoading', true) + return this.$axios.post('/open/common/userOptions', {query: query.trim()}) + .then((res) => { + if (version !== this.queryVersion || !this.dialogVisible) { + return + } + if (res.code !== 0) { + this.$message.warning(res.msg) + return + } + const selected = this.responsibleList.map(item => ({ + id: item.userId, username: item.username, loginname: item.loginname, mobile: item.mobile + })) + const options = new Map(selected.map(item => [item.id, item])) + const results = res.data || [] + results.forEach(item => options.set(item.id, item)) + this.$set(this, 'userOptions', Array.from(options.values())) + }) + .finally(() => { + if (version === this.queryVersion) { + this.$set(this, 'tableLoading', false) + } + }) + }, + // 多选结果一人一行,已选用户保留手工修改的联系方式,新选用户带出系统联系电话。 + responsibleChange(ids) { + const oldRows = new Map(this.responsibleList.map(item => [item.userId, item])) + const options = new Map(this.userOptions.map(item => [item.id, item])) + const rows = ids.map((id) => { + if (oldRows.has(id)) { + return oldRows.get(id) + } + const user = options.get(id) + return {userId: id, username: user.username, loginname: user.loginname, mobile: user.mobile || ''} + }) + this.$set(this, 'selectedIds', ids) + this.$set(this, 'responsibleList', rows) + }, + // 联系方式按每个人校验;使用新数组回填,弹框副本不再与业务表单共用对象。 + onConfirm() { + const missing = this.responsibleList.find(item => !item.mobile || !item.mobile.trim()) + if (missing) { + this.$message.warning('请填写' + missing.username + '的联系方式') + return + } + if (this.responsibleList.some(item => item.mobile.trim().length > 20)) { + this.$message.warning('负责人联系方式不能超过20个字符') + return + } + const list = this.responsibleList.map((item, index) => ({ + userId: item.userId, username: item.username, loginname: item.loginname, + mobile: item.mobile.trim(), orderNum: index + 1 + })) + this.$set(this.course, 'responsibleList', list) + // 旧页面保留第一位联系人展示;完整多人数据通过 responsibleList 保存。 + this.$set(this.course, 'courseInstructor', list.length ? list[0].username : '') + this.$set(this.course, 'courseInstructorMobile', list.length ? list[0].mobile : '') + this.closeDialog() + }, + closeDialog() { + this.queryVersion += 1 + this.$set(this, 'dialogVisible', false) + this.$set(this, 'tableLoading', false) + }, + }, +} diff --git a/src/main/resources/views/platform/zhgh/club/common/clubInfoComponent.js b/src/main/resources/views/platform/zhgh/club/common/clubInfoComponent.js index 98263f8..d95b32b 100644 --- a/src/main/resources/views/platform/zhgh/club/common/clubInfoComponent.js +++ b/src/main/resources/views/platform/zhgh/club/common/clubInfoComponent.js @@ -8,6 +8,12 @@ const REGISTER_INFO_COMPONENT = { 点击查看流程图
+ + + 暂无图片 + + 暂无图片 + {{viewData.clubName}} diff --git a/src/main/resources/views/platform/zhgh/club/join/apply/index.html b/src/main/resources/views/platform/zhgh/club/join/apply/index.html index 1256e05..7bd9504 100644 --- a/src/main/resources/views/platform/zhgh/club/join/apply/index.html +++ b/src/main/resources/views/platform/zhgh/club/join/apply/index.html @@ -2,9 +2,19 @@ layout("/layouts/platform.html"){ #--> -
+ + +
- +
+ 返回 +
+ @@ -156,6 +166,9 @@ layout("/layouts/platform.html"){ } }, methods: { + backToClubList() { + commonUtil.pjaxPush('/platform/club/join/list'); + }, onSave() { this.$confirm("您确定保存吗?", "提示", { confirmButtonText: "确定", @@ -224,6 +237,16 @@ layout("/layouts/platform.html"){ this.$axios.post("/platform/club/common/listClub").then((res) => { if (res.code === 0) { this.clubOptions = res.data + // 从卡片进入新申请时预选社团,编辑已有申请仍使用原记录。 + const clubId = GetQueryString("clubId") + if (!this.bizId && clubId) { + const club = this.clubOptions.find(item => item.id === clubId) + if (club) { + this.$set(this.formData, "clubId", club.id) + this.$set(this.formData, "clubName", club.clubName) + this.checkApplyClub(club.id) + } + } } }) }, diff --git a/src/main/resources/views/platform/zhgh/club/join/list/index.html b/src/main/resources/views/platform/zhgh/club/join/list/index.html index 28f1fbf..4320609 100644 --- a/src/main/resources/views/platform/zhgh/club/join/list/index.html +++ b/src/main/resources/views/platform/zhgh/club/join/list/index.html @@ -11,9 +11,36 @@ layout("/layouts/platform.html"){ .el-tabs__header { margin: 0; } + .club-directory .club-card-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 20px; } + .club-directory .club-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e4edf8; border-radius: 10px; background: #fff; box-shadow: 0 7px 20px rgba(55, 85, 126, .08); } + .club-directory .club-card-main { flex: 1; min-width: 0; } + .club-directory .club-card-cover { width: 100%; height: 180px; overflow: hidden; background: #edf4fc; } + .club-directory .club-card-cover .el-image { width: 100%; height: 100%; } + .club-directory .club-image-empty { display: flex; flex-direction: column; gap: 8px; height: 100%; align-items: center; justify-content: center; color: #8da1ba; font-size: 13px; background: #edf4fc; } + .club-directory .club-image-empty i { font-size: 34px; } + .club-directory .club-card-info { min-width: 0; padding: 14px 16px; } + .club-directory .club-card-name { margin: 0; color: #303846; font-size: 16px; font-weight: 400; line-height: 24px; overflow-wrap: anywhere; } + .club-directory .club-card-meta { margin: 5px 0 0; color: #98a2b2; font-size: 13px; line-height: 20px; overflow-wrap: anywhere; } + .club-directory .club-card-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 10px; padding-top: 10px; border-top: 1px solid #edf1f6; } + .club-directory .club-card-tag { display: inline-flex; align-items: center; padding: 3px 8px; border-radius: 4px; background: #edf5ff; color: #397de0; font-size: 12px; line-height: 18px; } + .club-directory .club-card-tag-label { margin-right: 4px; color: #8aa7cf; } + .club-directory .club-card-actions { display: flex; justify-content: flex-end; gap: 8px; padding: 12px 0 14px; margin: 0 16px; border-top: 1px solid #edf1f6; } + .club-directory .club-card-actions .el-button { height: 32px; margin: 0; padding: 0 14px; border: 0; border-radius: 16px; font-size: 13px; } + .club-directory .club-card-actions .el-button--primary { width: 108px; color: #fff; background: #1989fa; box-shadow: 0 5px 12px rgba(25, 137, 250, .18); } + .club-directory .club-card-actions .el-button--primary.is-plain { width: auto; color: #397de0; background: #edf5ff; box-shadow: none; } + .club-directory .club-card-actions .el-button--danger { width: 108px; color: #fff; background: #ee0a24; box-shadow: 0 5px 12px rgba(238, 10, 36, .18); } + .club-directory .club-card-sort { display: flex; justify-content: flex-end; margin-bottom: 16px; } + .club-directory .club-card-sort .el-select { width: 168px; } + .club-directory .club-detail-cover { width: 160px; max-width: 100%; height: 110px; overflow: hidden; border-radius: 8px; background: #f8fafc; } + .club-directory .club-detail-cover .el-image { display: block; width: 100%; height: 100%; border-radius: 8px; } + @media (max-width: 640px) { + .club-directory .club-card-grid { grid-template-columns: minmax(0, 1fr); } + .club-directory .club-card-cover { height: 150px; } + .club-directory .club-detail-cover { width: 120px; height: 90px; } + } -
+
- - + + + + + @input="selectFundSource"> 校工会经费 @@ -88,11 +97,11 @@ layout("/layouts/platform.html"){ - + - + {{item.name}} @@ -104,24 +113,6 @@ layout("/layouts/platform.html"){ {{formData.userName}}({{formData.loginName}}) - - - - - - - - - @@ -149,7 +140,7 @@ layout("/layouts/platform.html"){ placeholder="请输入联系方式"> - + @@ -273,7 +264,34 @@ layout("/layouts/platform.html"){ - + + + + + + + + + + + + + + + + + + @@ -399,7 +417,7 @@ layout("/layouts/platform.html"){ - + @@ -438,7 +456,7 @@ layout("/layouts/platform.html"){
报销金额
- +
@@ -587,7 +605,7 @@ layout("/layouts/platform.html"){
发票明细列表
- 发票选填;无发票时按支付信息汇总报销金额。上传后须通过验真,每条明细对应一张发票图片或单页 PDF。 + {{ isManualReimburseAmount ? '发票选填;有发票时报销金额不得超过发票总额,无发票仍可提交。' : '发票选填;无发票时按支付信息汇总报销金额。' }}上传后须通过验真,每条明细对应一张发票图片或单页 PDF。
@@ -821,7 +839,13 @@ layout("/layouts/platform.html"){ // invoiceNumber: [{required: true, message: "请填写发票张数", trigger: ["change", "blur"]}], // invoice: [{required: true, message: "请填写发票号码", trigger: ["change", "blur"]}], activityName: [{required: true, message: "请填写活动名称", trigger: ["change", "blur"]}], - money: [{required: true, message: "请填写报销金额", trigger: ["change", "blur"]}], + money: [{required: true, message: "请填写报销金额", trigger: ["change", "blur"]}, { + validator: (rule, value, callback) => { + const message = this.getReimburseAmountMessage() + callback(message ? new Error(message) : undefined) + }, + trigger: ["change", "blur"] + }], condolenceRelationship: [{required: true, message: "与被慰问人关系", trigger: ["change", "blur"]}], marryTime: [{required: true, message: "结婚时间", trigger: ["change", "blur"]}], fertilityTime: [{required: true, message: "生育时间", trigger: ["change", "blur"]}], @@ -835,8 +859,8 @@ layout("/layouts/platform.html"){ ], files: [{ validator: (rule, value, callback) => { - // 慰问项目不展示附件上传,提交时无需校验附件。 - if (this.formData.reimburseProject === "UNION_REIMBURSE_PROJECT_1") { + // 慰问项目无需校验附件,文体、日常和社团活动附件选填。 + if (["UNION_REIMBURSE_PROJECT_1", "UNION_REIMBURSE_PROJECT_2", "UNION_REIMBURSE_PROJECT_3", "UNION_REIMBURSE_PROJECT_5"].includes(this.formData.reimburseProject)) { callback() return } @@ -910,6 +934,16 @@ layout("/layouts/platform.html"){ } }, computed: { + isManualReimburseAmount() { + return ["UNION_REIMBURSE_PROJECT_2", "UNION_REIMBURSE_PROJECT_3", "UNION_REIMBURSE_PROJECT_4"] + .includes(this.formData.reimburseProject) + }, + // 社团经费固定对应社团活动,复用文体活动的基本信息和发票表单。 + availableReimburseProjects() { + const clubFund = this.formData.reimburseFundSource === "UNION_REIMBURSE_FUND_SOURCE_3" + return this.reimburseProjectList.filter(item => + clubFund ? item.code === "UNION_REIMBURSE_PROJECT_5" : item.code !== "UNION_REIMBURSE_PROJECT_5") + }, // 按选中类型的业务编码控制字段,类型列表异步加载及旧申请回显后自动重新计算。 condolenceTypeCode() { if (this.formData.reimburseProject !== "UNION_REIMBURSE_PROJECT_1") return "" @@ -917,9 +951,11 @@ layout("/layouts/platform.html"){ const selectedType = this.typeOptions.find(item => item.id === typeId) return selectedType ? selectedType.code : "" }, - // 仅系统管理员和校工会管理员可查看真实余额,其他账号统一显示余额遮罩。 + // 社团经费按菜单授权查看年度剩余额度,其他经费沿用原余额可见范围。 canViewFundBalance() { return this.$auth.hasRoleOr(["SYSADMIN", "SCHOOL_UNION_ADMIN"]) + || (this.formData.reimburseFundSource === "UNION_REIMBURSE_FUND_SOURCE_3" + && this.$auth.hasPermission("unionReimburse.club")) }, showInvoiceTab() { return !!this.formData.reimburseProject @@ -1549,6 +1585,27 @@ layout("/layouts/platform.html"){ this.rebuildInvoiceSummary() }) }, + // 手填金额按分比较票面总额;未上传发票时仍允许申请。 + getReimburseAmountMessage() { + if (!this.isManualReimburseAmount) return "" + const value = String(this.formData.money == null ? "" : this.formData.money) + if (!value) return "请填写报销金额" + const cents = this.moneyToCents(value) + if (!/^\d+(\.\d{1,2})?$/.test(value) || cents === null || cents <= 0) { + return "报销金额必须为正数,且最多两位小数" + } + const invoices = this.formData.invoiceDetails || [] + let invoiceCents = 0 + for (let i = 0; i < invoices.length; i++) { + const amount = this.moneyToCents(invoices[i] && invoices[i].invoiceAmount) + if (amount === null || amount <= 0) return "请填写正确的发票金额" + invoiceCents += amount + } + if (invoices.length && cents > invoiceCents) { + return "报销金额不能超过发票总额(" + (invoiceCents / 100).toFixed(2) + "元)" + } + return "" + }, rebuildInvoiceSummary() { let totalMoney = 0 let fileCount = 0 @@ -1573,10 +1630,18 @@ layout("/layouts/platform.html"){ }) totalMoney = paymentCents / 100 } - this.$set(this.formData, "money", totalMoney ? totalMoney.toFixed(2) : "0.00") + // 三类活动保留手填申请金额,发票及支付明细变化只更新张数。 + if (!this.isManualReimburseAmount) { + this.$set(this.formData, "money", totalMoney ? totalMoney.toFixed(2) : "0.00") + } this.$set(this.formData, "invoiceNumber", String(fileCount)) }, validateInvoiceDetailsBeforeSubmit() { + const amountMessage = this.getReimburseAmountMessage() + if (amountMessage) { + this.$message.warning(amountMessage) + return false + } const invoiceDetails = this.formData.invoiceDetails || [] // 发票可不上传;已经添加的发票仍须填写完整并沿用验真流程。 for (let i = 0; i < invoiceDetails.length; i++) { @@ -1904,6 +1969,7 @@ layout("/layouts/platform.html"){ }, // 根据报销项目获取对应的附件说明 getFileDescByProject(projectCode) { + if (projectCode === "UNION_REIMBURSE_PROJECT_5") return "社团活动附件说明" if (!this.descOptions || !Array.isArray(this.descOptions)) { return ''; } @@ -1918,21 +1984,20 @@ layout("/layouts/platform.html"){ const project = this.descOptions.find(item => item.reimburseProject === projectCode); return project ? project.projectTip : ''; }, - // 新建申请默认优先选择分工会经费;若当前用户没有对应权限,则按页面可见权限回退到其它经费来源。 + // 默认来源按按钮菜单权限选择,保持分工会、协会、校工会的优先顺序。 getDefaultFundSource() { - if (this.$auth.hasPermission("unionReimburse.fgh")) { - return "UNION_REIMBURSE_FUND_SOURCE_2" - } - if (this.$auth.hasPermission("unionReimburse.xgh")) { - return "UNION_REIMBURSE_FUND_SOURCE_1" - } - if (this.$auth.hasPermission("unionReimburse.club")) { - return "UNION_REIMBURSE_FUND_SOURCE_3" - } + if (this.$auth.hasPermission("unionReimburse.fgh")) return "UNION_REIMBURSE_FUND_SOURCE_2" + if (this.$auth.hasPermission("unionReimburse.club")) return "UNION_REIMBURSE_FUND_SOURCE_3" + if (this.$auth.hasPermission("unionReimburse.xgh")) return "UNION_REIMBURSE_FUND_SOURCE_1" return "" }, selectFundSource(code) { this.$set(this.formData, "reimburseFundSource", code) + if (code === "UNION_REIMBURSE_FUND_SOURCE_3") { + this.$set(this.formData, "reimburseProject", "UNION_REIMBURSE_PROJECT_5") + } else if (this.formData.reimburseProject === "UNION_REIMBURSE_PROJECT_5") { + this.$set(this.formData, "reimburseProject", "UNION_REIMBURSE_PROJECT_2") + } if (code !== "UNION_REIMBURSE_FUND_SOURCE_3") { this.$set(this.formData, "clubId", null) this.$set(this.formData, "clubName", null) @@ -1986,9 +2051,13 @@ layout("/layouts/platform.html"){ this.fundBalanceText = "查询中..." this.$axios.post("/platform/unionReimburse/apply/getBudgetBalance", params) .then(response => { + // 切换社团后忽略旧请求,避免显示上一社团的余额。 + if (fundSource !== this.formData.reimburseFundSource + || (params.clubId && params.clubId !== this.formData.clubId)) return if (response.code === 0) { this.$set(this.formData, "fundBalance", response.data || 0) - this.fundBalanceText = (response.data || 0).toString() + this.fundBalanceText = fundSource === "UNION_REIMBURSE_FUND_SOURCE_3" + ? Number(response.data || 0).toFixed(2) : (response.data || 0).toString() } else { this.$set(this.formData, "fundBalance", null) this.fundBalanceText = response.msg || "查询失败" @@ -1996,6 +2065,8 @@ layout("/layouts/platform.html"){ } }) .catch(error => { + if (fundSource !== this.formData.reimburseFundSource + || (params.clubId && params.clubId !== this.formData.clubId)) return console.error("经费余额查询失败:", error) this.$set(this.formData, "fundBalance", null) this.fundBalanceText = "查询失败" @@ -2016,7 +2087,8 @@ layout("/layouts/platform.html"){ this.formData.hospitalizationEndTime ]); } - if (this.$auth.hasRoleOr(["SCHOOL_OUTLAY_ADMIN", "SCHOOL_UNION_ADMIN"])) { + if (this.$auth.hasRoleOr(["SCHOOL_OUTLAY_ADMIN", "SCHOOL_UNION_ADMIN"]) + && !this.$auth.hasRoleOr(["BRANCH_UNION_CHAIRMAN", "BRANCH_UNION_ADMIN", "CLUB_MANAGER", "CLUB_PRESIDENT"])) { this.budgetTypeOption.map(v => { if (["UNION_REIMBURSE_FUND_SOURCE_1"].includes(v.code)) { budgetTypeOption.push(v) @@ -2030,7 +2102,7 @@ layout("/layouts/platform.html"){ } }) } - if (this.$auth.hasRoleOr(["CLUB_MANAGER", "CLUB_PRESIDENT"])) { + if (this.$auth.hasPermission("unionReimburse.club")) { this.budgetTypeOption.map(v => { if (["UNION_REIMBURSE_FUND_SOURCE_3"].includes(v.code)) { budgetTypeOption.push(v) @@ -2039,11 +2111,23 @@ layout("/layouts/platform.html"){ } this.budgetTypeOption = budgetTypeOption } + // 社团经费按菜单权限过滤,默认来源与按钮可见范围保持一致。 + this.budgetTypeOption = this.budgetTypeOption.filter(item => + item.code !== "UNION_REIMBURSE_FUND_SOURCE_3" + || this.$auth.hasPermission("unionReimburse.club")) this.reimburseProjectList = await this.$businessTool.getDictOptions("UNION_REIMBURSE_PROJECT") + // 与协会经费按钮的显示条件一致,不依赖经费字典列表是否包含该项。 + if (this.$auth.hasPermission("unionReimburse.club")) { + const clubs = await this.$axios.post("/platform/unionReimburse/apply/listReimburseClubs") + this.clubOptions = clubs.data || [] + } if (this.bizId) { this.$axios.post("/platform/unionReimburse/apply/info", {id: this.bizId}).then(async (res) => { if (res.code === 0) { this.formData = this.ensureFormData(res.data) + if (this.formData.reimburseFundSource === "UNION_REIMBURSE_FUND_SOURCE_3") { + this.$set(this.formData, "reimburseProject", "UNION_REIMBURSE_PROJECT_5") + } this.appendCurrentPayerOption() this.formData.paymentDetails.forEach(row => { if (row.payer) { @@ -2066,7 +2150,8 @@ layout("/layouts/platform.html"){ unionId: union?.id, unionName: union?.name, // reimburseType: "UNION_REIMBURSE_TYPE_1", - reimburseProject: 'UNION_REIMBURSE_PROJECT_1', + reimburseProject: this.getDefaultFundSource() === "UNION_REIMBURSE_FUND_SOURCE_3" + ? "UNION_REIMBURSE_PROJECT_5" : "UNION_REIMBURSE_PROJECT_1", reimburseFundSource: this.getDefaultFundSource(), paymentWay: 'UNION_REIMBURSE_PAYMENT_WAY_2', paymentDetails: [this.buildDefaultPaymentDetail({ @@ -2076,7 +2161,7 @@ layout("/layouts/platform.html"){ userId: id, }) if (this.formData.reimburseFundSource) { - this.reimburseFundSourceChange() + this.selectFundSource(this.formData.reimburseFundSource) } } } @@ -2085,17 +2170,7 @@ layout("/layouts/platform.html"){ this.init() this.queryFileDesc() this.queryCondolenceType() - //社团查询 - this.$businessTool.listClubByRole().then((res) => { - this.$set(this, "clubOptions", res || []) - if (res && res.length === 1 && !this.formData.clubId) { - this.$set(this.formData, "clubId", res[0].id) - this.$set(this.formData, "clubName", res[0].clubName) - } - if (this.formData.reimburseFundSource) { - this.reimburseFundSourceChange() - } - }) + } }) diff --git a/src/main/resources/views/platform/zhgh/dayofficework/unionReimburse/collect/index.html b/src/main/resources/views/platform/zhgh/dayofficework/unionReimburse/collect/index.html index f34e924..1d244e9 100644 --- a/src/main/resources/views/platform/zhgh/dayofficework/unionReimburse/collect/index.html +++ b/src/main/resources/views/platform/zhgh/dayofficework/unionReimburse/collect/index.html @@ -51,10 +51,10 @@ layout("/layouts/platform.html"){ + -

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

KDWcvbK>wuK4!+n*JhN{Zn}(c zZw(I+#rNbM=rtg{^CAJ9^xuKC77oLVp2sfeEPFgfDJQ_mlg;9Zi-pqhPTWTeJ-Tn zgioncqyH|$xYjimW^*gQtT)C+B{v`PTz%%EYPzSqwP${3?uK3a>MXvG+BTRJRIHoM zKegd4B|9KpVHbjy+Zl@k>aQ*01c=$e$EB7*P-vwg>yvnb{}fIR7O9mJLe}$27B(cU)=24pVt1~$C^DTC_h09 z=U4sSKDU3~o0`;j$^#`oHxP&FM!lsQ@^M%T#Iu>`YKhbLI%R(<yPi>DwaE8h~gKo*txO^_WzcyK>ZgB)tX zeG)0dO?0ExBTP;jRMeP_MDWxUnvhRp(G(t3A(U~6Jw$3w>v?DfP(O!h3tUAO|=F18RSR=7xHi3aMKs?drC z#iCnCScF;wY^e8O&=)`g*0UIKE)41iv$kqD3hx^K- zPW1h;>&^GALlcZy;Zsk;y_uZXKlWEOe%ezKmUIMus%Srus`Y}UPBXpThR;+tJ^v*jkrs>kZ%+@N}M2s%9D817k169j52`)M4(@(U7&@GcJXd&&%^2Q zgs6^)L)S6Tf;b4K*vDC>|~o-`Q&6+@ofal15@aSaompluxSE=@+vp?gg(t##FJ z@vP~&w6sj9r-+JAO6UyjdBx(4fNNwxRC(l8`(SywPptjUcQ;o4NT^#P%&&Nyu{gr*OvCn&T;9#O_&82Ng zFTVODjW`8%cJ6q){g3@O{2r!Ee~q!ffA9`wMJUM!RZ3(qRgGblWjXVjUj1)t)B+~~ z-l`eJ>3CCT>UZAB`Z>c6zbopk)}UK2cQHZrd1fx%b!8UVg;p zHn&}aN8P>w`*C39oG(8{uS+)XT>dj{N`2mkYx7L`+U&-i`KzA1I#+%1+l9SbcDU{_ zd)=7ey7}z3^7P3aZ5D^-KMK0M>-?3ehtD=wMQ<9N-zb6m#_E5j1`qt4bD&t|R}%T? zNYsOj>9@MQHT!Q^ZTcR(WkF{8ff)NY5B4n$+;om#GIu^!Diz3-v{)9~7PxdJ{wCye z!dWX zCMOf5c6NMTtMfCj+Mp4RI5*_ffO%-;Ed0i`c9~>ihz$wQF$Zl4hS7-}OU(bHgn7`U zeY*{t-*~qE!GJboZtSGLADR@K_blwr{O-H0Vct>#`#KYx=vdAxrK#5a$Y9onfw`@S z(U=PdYY}ar2RT&VzJcqT7UksPQEW3L1mQ)K2*AhT8U$s9+4qgEzHRj~DOkHay7}2q zc=J93RqdI}45TOe64CqIf1t)mS z)q7&72LTZ(K{}Ych3Wo2W94O{AZjMtK&N2!*j5uMdK5{gMv(3xH{@<8n}GUpgkrAqFYkAfEK?efAUvFxSfEd9*}y<22t4D5B| z;ad*fdl`SO+TzRMm+Ka!C9l7E%9SLimcB`&Q}VAtFEiwpd3f-qQWlO>+*9eUCko$$ z=d)>)l87E{gpWvLF^5h__z8MpHyRCc+1FeT}MHpV5z2@GoMKj(^ zKRmKnce>GYs0aW*RKl=e_R)l=4>gwteem~qG7q35id#@hP+xk%Wkb9UAPuqo<9;Cw_3xFTaT^tEC{b*I8;(_0Y!2ZW(8rNrVe z6o?H=F}YHulBgXao6ErWAY5FWVo4<^&|Du8Vj^cNWY8r}yu;Y$UsCFos6wKLFf+dY;37v5CTzi_-0VcC7BARP}!-DUJ5J8zM z>#<3;S;HZSpJL;pg0lSWOce!esdXod$!H3hM>Hl?S&rxAoH^C*u+X;4SBMwMn&>_Z zkw>6uE1uLkk7$-f(Lf5CpheIq28rFn5fM0UF5U?`Nt?wbFt%lT#Ia7ad3#-rBCTm4f31 zF_u$XoBe;xijw1ZZt{&R*y=%QsAFjZc-4h6&zU*+E*h3ZXrR16ttsY)xwx=@am%GoAQKkE4}WlFGWljd(3bR z%a+P^HO7;K3lsl(8;>`xIHEd+Vc;kd7N?a;A(Z{lPy7!p8wp^eB05&nnoMVs1!FdY z36kjLJm2wiPrIVyT%SIz6I8#xMz*+pYFR#|X4i}JX;;T*A2aY)m=d`yp4N0`$z1C? zOfB2=Os?&z>lV&aOLpwP9#b%PnQcW20Y5xZ@8oT30b4DKPBzDDsMcgQ&}3vpl}KrA zm~nmGDK>?wvkk~^k8&&S^>6e*lMLWoM^P)JG8E{JST$CR$WS@2l zNt1&NkH_Q7U1F0Mv3pvZx_iP6J=sqTOvo~DXps;mFcXy4;$##LjPL+whB(+!F2Z?? zi8Q1eWDC@WC=n6CP|RhN zj98!O^8e^TL|NOWE!^QD#&Q=288UMbzyYR~BdCy3v=CKW+81hZSbO|hM@UD;V9&RG z)2r@JU!sqvr|z5J-R7w-U;g{puL0*nBP;&*t>A6Vy^f_N7TZ$RkKWWNx-Bo{Mt&M< zEHGL0+TM=wx7S=R+DuDe#W|7CMq&@JzdzC4{)quN1-O3n8Yo-)I_Q;ct1u}nMN(_f z9-LCWEO>d98%nmz25{Bd*~zr!7dnlZ3_y)isC>YV5y9O`NddEVP~fG# zJrwrhVNZlG(dk35&(iUI6Lt7kKd-sB6l$0ekI$Ay-E>o>l2O@~mX~20~2%@+QQ~P{%uYl zD|jEj7*?FGddIIFy3|Fh$cjV8#l; z22MXn8M-r7xYNxhD5e-L6Ujn6z$YbmEj?0KVuus={S~8o?bbWfD9EO-Wv*+a#m2FU zbBTKeTid%!rMp!mF-Owd-T>ecIWz`~Fe;I4Bx7ZEW7m&0gAXrsW<)zDf2`48N2BQK zMAt%c7EV<6HAB?*$&R$WgEdZDh0Eeb7n6>ZaACN~RTc)@l>2iVr`qvvjjLAYe+t^r z7^fBVfoTz{_gH}y)pkp_B=)zCef#wKX^i%c4WVI3$G&wh{KDlbT`U0ZYYf#+}kytL@AS^dtzWKgK;Sh3=J^VOd}@9)pM@5YSY8c}?b zGoWz7#x=UfB@OPG=Qw$<_E2f6vZC}2owzR8RH4pfVlY&oASMVeoEmKE=*U(Fp=Xe& zG(WQ4JVm|Q(2mB<6;)NQDm{35=iVb0(-$*7T3`LAPP{33(-q^tSDP{!ckQ^n4<1Dx{#g2h9z7i=k406bUtw z>E(q0isRD~=?zWw9u|#ri$-|-SedNT-=wAjqNP%5suz~3%MUrR`%>bT=sAn+PMt`w z3O2nyjL`_k;L`KXeG7ElPGF9OT_8Ee1x($X&Gdhk2P66#~#+0H!bZHTt_ zK-0k+$O%L(UY=3yx?NXU9^hnVu2h?q3jgEq@rSxJp~b_C%!?T7p*|b20;?A|?r~O= zyAzt`n4M{iI2(C(rLotX8>*y7gH=3pgr8oXtkfSN!`#S#s6YXT$bzan6xdK~0dYMf zM3Ufpi;OA7gm*Y6$64wq7D5Oewcvrq&5}FL7PmMS8KivIT+zOr9(`6*(DpowUIwP2 zlO>Zpr6zhGZgh{}-jfuE<0vIc=2WMn8upl*+;g+#2HcZ=tlzpZ^#~Wbp~w&dfV4uF z54ipuBq$UQsf-umDWG67LO5j7$;cbuC!FpVF8xEkP}?mUv?ZvXh4`Ly4P%Uzm}qEb zw2=rTe5>n}$CgQd${% zx8u#)Gv~In9Ozkj)IH9TXfOe=lhUTrV|M#uV)qZ8Oxn`%M|)Se?znkuyx{^@; zE{Zv3nbhubodZXx{Di+|+^Sk^e7Yszx|@ZeLoG|A;K(r}qS=NPa!@RBI6TMKfmNT( z7aNP5cyNG3z|vRlH~l7v{RF(~AXk8jMy(9wcu^4koy zFHe^2;iTd5apDF!qfn*?P+_+$ELh0IN|c_e5SX4c3n&%uvW4ONwX%ZU`g&+33sHbR z=R@vQVK@=UBDZ753|W5X{9_lIk#UiK(G9tVmTymXnhyAYHO>i%=xOypbN;i`t#Fif zf%^}rE^~2pl&*h)#>0XEX9Jq87LTBG`jr`4pR2CEg7~i*PH9)8~3J%~VAG zMeFmN)=-9K5qiV5;A~92eh--?QlDIWWF}WtI2b7DB9m@KvgWn~)cYBVEB zLY&&5$$hjhf|)tWgepu9=T>RgU-F{D!a^t+AzKJ7Vod{erG-ilBHu`0R7`<`9#t4^ z2yZqz?}xdJB#cwFN0}Y0nt9S!RZOWr>!~pI9uM4E)rEg;6O%pOBixo(oG?DPD3ZK< zZMxPtr@ZlD^4T-(yHlHnvwdsx7wx(DxUQrk&3B$5qEDgb5f+0Bg4nZ2N)yxgECY$M zsHliKXiRbtb7hj4TLxD4LVzaoEO1ndSe&{P!rHU}rbsBnmm{P;S?`72Tm3Vg6NGZ5 z_2M>bCB_yHM&bh7paw(G4j0sav=SUed(kA((QlFXzD90FW76VU&-Mq?_wbvvv3XC(J-J36x?Vrbki z^w6sPXM~G0cDzPApou(7M1bjkxXO zN~intFV@_1TXiE=l_OpB!+x=`fS@W)$?5wkfRayh8I+AoU>tf8v;1TEk+r`1`Pg!M z|9t<2^(A!c;<7Wn+j>TL(NBO94goPMRI4?f3}ghjtKjpY8A((qw?;u7r@#Vwk&x&O zU?^u|2So5)L)EMdT$~&!a3yB&z!NI!i#z+*oP3U)D3WF4;lUw+rI*Oj1S;c(-nQHg za_-yK*f8K9&#==W%)o^-m(%4gJorOGBMULd3a3Pw!@H&!@PSTvWPoD;5g!GfqT|5u z3Zy9-aLf=PcLeU3avFraz%6PZE;JS=n_EH32`E_{v@%=fh|)0O>#@`^$W*|ksYng# zEu&PL?8kFZ>YGt?WHpB=f^~!j1*|i5ndJG4O{i zW~c45$353ro4K*#F3!h&uPzMO9BvL6EJtJv$I6qY@QWg-m;4c<<2OjFfA*H&@|`D zmj~Zf7jGHgKcxG2^xcCGflKaP{pz@&@!97yn=^FTdtFO32`hT@I*0@j%RqYm4@ZFm z41P*Q1jsimOB-)F_$*uU^KS>SRk5_)n3;#NfKf#$%41+|b1$~3W%gdrl{>?l!ohD- zizQ;4>Pr((w%k>l@hpt&>i=V?Sy;eDLqtPC)E4U>ReY)O$ky(zeQVBbj+lzen7d?M z|IV9#4@O5@?7-V(1sSCf>MK;wn*tX+dbuL4Bi%)~Hg%1?V|06blP3qbfFmOmp*Xq1 zHDEy{7y=VYx~F}A*bm4n9?QwCAJdYs4#oj*ih7e1&(A)-uj9z%ogFLY$E&aWyc z)nC7@zw*uLe$9pW#YWmO8HG?0e7ZV2{G+0gJm)@N6K z^PP3|S6S~T+Cn=F$&9K_;F|FWi@ypFWKPvu&660@AmR2u+opIxCN`FrS zj$N)(9||HE_JYthM$8-yh=?xudvyNV0D`K^(#ebh9v}qsyj&pL4W%y0!ZSg$NePYJ z=gUv>V};Q?xOLNEP1li2EHMJ-D+e)`?M)gpjTg?Cw%0q5;lO_7F_2A3%X!>vL4h{3eFl6x40H%sV7D&hqD{p8z z@1_-k$(D>*CxE+%rNN#l6gs~U$0!`2j03^)35H@1@Fb~u>f64HUwaMo`8Ks)6|^R8 z4d)&X)Ej{{1J8pNID@UdLmN){_K4JGtq1iIUoCi&j8q*HJ#M59Ql zPv5fY%2(s5#!3G-_>(z!6)1N>jfs!?wzQ>2tbKDg!RkK_EH21)93TgLad*#!r;EZMm8`_t2_pYyN&^R;Q7%rQTCY*}5&xGgoC zu3_PzL9MOwQO5fUbEiPhBaRdr8(5M`B896$sLEb{j~Y4E53G=6JM)q%ezSGQ*bu4jM^vb}k2J1a~i-eNe6qYJ{RLH>9qZ zYIklSpm)~T%qdb3G!15TBMX|IL`4@jxkZD z@iD=%;cW%@lS}UEXX7g>j(B3X%9yRPlF~ex`dEymH8+SNb@0eVds`MI`?2rT$2BHf z2no<}FF{x&o*&x5h(@ zHV{Uro3%bz4|4IPC<)r4GTz2nTv&wS1O8bJ&`t^(m6wkLHS`5FR2&lkrRgP~t(G$H~BvLRDH5pcIn@LMjTY3&hEl zMOd)^^f_3Vzn0Lcv!OkPhEyFR^wWe3E8aSp585aBuCes0eR%WL;Ru%IKo@nljg(5|9*D{V-gk~w z5D$7}pg9Z3RDL5AsE>ERkRnFHMcIU-<%rZN7dZ|f zsu+&4S~l|7g+MXou$fSyhEkvi6sc!Mw&jkx{6+Z)DyLiHo#D}?&klhYiJjC7#vukQ z#1IIn0KMbuNrQTNU-LGuc{e}v>eq#*fBQ8qxmXkYzZ~YA@pz#ycT;IH!?;~MamD(J z%ptLA)%6y~nWY;>t82b~P5bHiDaRt}(P(g@=IH0N9rc4ZT>scj_xwN)_I7kxMm-kr zmuXs=Ed?J4_i+%WRkz~|P`v4dC=6u$vl0A&Q15m-TD?oKA>pA3Nn>`rNrVxnX5o2T zVmCY~BK$Nk#6yZ4&Vv#sq>R9%BIYwlBB|6^qkYg1(!H1Hyhh6lvpU%L>_o=L+R>$R z8V+y2zhbfKQ`v_=yTv9vJ*45(5WRZJe@lF$b9KTPLR{xHry-~Q__Ou}(WBI5Sko-# z#se|?zf1#xazXl)&@K2mhhtU-o%{W*PwKhjR)%K5Tj^tUGk5<8?WlQDx+ZSDxlAfu zZt8DE1-CZzTwy@i#Rt~(0v%s%q6^bg3}5dpo*J0g^-FQMdSu1C1^>3E|M@Rz>GY-t zr(LPem)W9J4h)#&yNab4kv;5auXMhcsYv0_KAh+Y~|Xy(26P2Q)J^ zxHi{`UGkxC+2ZlPV$O~>IN#Lzr+zG1xcl;>&FP^Z)6d~57jfc7^FsUnGKKs!$|ZUO ztc?b0gTadN2R27jD||eY`tsrq&Zab_lN)oly-Rs8KHvZRUH5I<^6KZ4 z75gXuoO$P6aQx-3C+`3L_QvJ$r0S|KgDfW|+FL|0q;k>3+R23(uU#67O|sETYmZ^j zsoCfK(M1Gg1S!86_R+QJ;&f-m>CJJYze^dorlzfe3W81b(+k3R7e5VO-+18tQCnoN{#E2j!VoMa7ZX%Wj(4Q4w;2th$If!QBJ1>&kGj+SkCk{Y{KiWNMi z*RwPR4k!v@;SGEHV_QYGW%{LGx3&A`j9$Nn&(>QPN22OSxW$iuJXSo|(d28~G4$DT z`|735jrk=BV|^;`HnxZW9YhR1JD{1uNK}v5P-yLJn9rhs85E_(s&QBf)m<81 zytBk2JZY|6O3R*Y8k|K487UW=e)xE(a<;^`6!_-=?M2f7!3{bPS>TTyyCxkdPIo=k zp=7lVmNWVVh`0-GXxOoK+3|*^-W!3pb7{$XmI4VaI)t;#w-#LQ;7`Ju6Ua0NT;jSB zM-xAVP{`uRyCOnH$+9j35*YjtZd&VAhd0mt^XM$tnn-XGH@g))v%y5uqk(0P8N#!P zyK}0x{iR3jqOJuJ{({L30SVFASUHALCACZzr_7Zg9Q+8g6pph7GepiSm-(9@X5i-2 zw$2WA-FS87hKsK8e%`1QJsh7T$CU9S&fY&=Yh3SFVrwSqVuojNtjfE~9sO!nwR~%B z*f!d!tA04WcH_Lvr0Oj(1VmvSl^&HaFcRJ~0#kQnk^c&duz+$P-13x82qmp<&N^DHE#RIR-Rk+?ctAKzs_Fl|807EX3OO^=gLpF zY8xu!tOm-?7Wj{uDW(v&sI`Zer(ZL^v9?2ar;#KeVZ@FoSYZ)iP%h+TFl3?91f2a8 zZZwzHf7ppf8oC`e`qz{st9)MYP4cZgPoujYmhz%xNnv4^=1_aA>(gH&i)AL04Y8k| z>}Y#4T9&Wi-zclk8(5^W26sP7%i-w((G&C{>hu;XzMet(3rp$Hz+}mJo?rdc?O{fA zOpQ0ZfshjBGC52%B>&J#$CAu+*flM1V^}WaAEYdWBZ>{hHuT2;7OfA}_i}i_|Auh;d-sRXRcau@#g$5R{dDK)uHjW(P; z(asISSQ15EcYfgy&%_2LPIi*I?c5eC&9Cxb+y=PfU> zw{v-*qy+~tMS=p))NF_s6GXMtc2~qe!-so1Vv(6TGoj*#rXuKo>kQ>oVZ8M8Jfp$D_+W3w(-g zTDkzm&#`ra=_<;H%|=V)YG%I&A>uC>g`oa+cy0)0m;^sYk8dnAT&_TyuI*g0_V&%b z6*o^B-wCI)~yv=hm`)d#7p6%%)Sr1jtB~cr!9iqu<9FI=n z;90qmbff3q`+~ejh=!2}#|*(GRE%f!F5>jIxolNoAb?MUq6N%|0!+15RJ~F;E|Svg zgC=0X^{lb!B17j4Md=8gNwRF3sJ$BkUCn9$RM{Yd9!EUuS88}9niz$Wr<8DfSJX-Z z%@8yU)L3rD6lry@bVi$SleJ`}wXq%=_^o7#ywCxNs64d~j~|Uz(!ly3>jzaAWTBi6 z5p{Dtk(9urV&J}SZsb+gEdm?Of7eFvQ-KwiXSKKuaI_c=4viN<6cLdNkXz8oC38Y} zcyez98;Rh}(?syN8~6wnB|;>0Ed^!9)|4uDGp$m~Q4p-+V`<7FTLtB<7{h@Q=}Z=n1&6}!HVy@i7J@a)C19#MVdYoq&y8QwrdPd<7^)E@9oJ^NyWgz# zCXQ?X*Hhn5ns2b3ez!9h%5qeY!0TdI5cL-_gWW5y=PcWI=GXVlQ$K%>x9k?4ZVq3t z9vjk~^^5G7=gSrPQtl?VY~1%QblC;dS$lgo2wQTbq(u|=Y8&Id-hKSjoE%~>%;miJ?Np+<(J-Gn5wQk+#v3zjn z7$8;28B?nMs$CfBSFJvd>G#L~emU=M-;X5iv%F`!%6M!ve~bW)YKlQ^YfkU2E;83ZY%GZH4YM&M zsC{1anWMynTBVh}o6o+RcaUiu zO3GXx(^fk8^Gx7P{?D8DH=Zl&-~Zv#EuEd688$mx~LFZXw@no!;N_u->| zK5cgId^6`mbHJC&&p%YZS-bM(y3N8LwfEN!Zaq#yhiKUeTVh!A7Vmh|x$A%BQR)6m zjmAV>D%9<`=L|hjpR*3(fXw0+TF%7!VKEzb-HnU4a2{Y{g%}F#?96^k{>2jZTx#93 zq5Jn7?_YoanHkU1l>$~hcyrFdO_leng@MDNnXVhsT%RtgZZ(e3LL+)_DUFIR@eO8Y zp^PF$g-;26Pxc4$O*vQ$X9V#f_3)s##;Aj|#=KJZJoId$fREPk{Zx)CSgLIH-H~n0 zJE!9kHd54B+T!B#Y%)hoR7r`7WUJjPQ!*EceUgMDyh5wV6Po~53CA|z4rM+W+GD#W zX*hIR*k9+h+*(ZJ;bhj7y0ewq9Ci=z60J}S3ar#YbN1Qwmef>Ov=%8_N_ZB%yk! zVqsIEhq<&%RRRj1Ku&Oss9N>;=8eObrRiZA7HxyGt~>`L=RX0HxiJIJ4fzFj$^ZGV zF`{gYf%~6}5?{H9P<*iPm|HY$d^bM1efurHTgE|dgM+^qpJyJQw!_-zTWVB;rL$KwJ7pOX?q-toe;l28Sd!`6hF=f~6b;Y}r3DnX(n2!Iv_e9}B}*-HX@Nk^ z!qWC-nt{aJ&=AdXoidj;4N=LZ1pw{ zLle)YwuMH#eLgYi+SUy#UiZ&4-L^%I!TJdxga&{R=s`Z z8(Uj{$iTn{L+KPAlupzwH<34X%Q)y$yq;B(Tt1OTI;m1IM0$acPGv%CT{*?JMJB<> z3L>gU7RI>x+d+{8^30qh_jW8w4R)|Vp_sv?&B;N#AdbT1GL5SriX=Fs$Eq5-5q7(= zMak>vdj zogGfIgkBwy0o!a8GY?@5X|o0I5w#_q7EGHenKMryr*T*MD~#J)(M(u}kCYVj3J&wE z=oZ|(Tyfoe-n-)wWCq@unOaA9KPRTVdxTiFEZn|->SsCHw2b^FK39?nmQNMO8(6ZMw)38Y|s zYnQn|lOF>e8I_U~F2rlRTM>|vHVE1eVcWqa1+v?QRs(j39Tdx{6?nAxOFqw=SpK!y zv$kyOqTuGuE$7e8esRC~+S4};dk5eAFLmDYg3R4LVI?o``IfiEL_`PRG+Mb}$Rg*s zO`K=#dsS{xP(lKsqI$W@;E?O7k>Z;z+U9K$1G#knU8=3}DZ$hD2v$T!87Q5yH6HXA}f~2S5 zk_1!+3agSKuyv~hjuaY2A%SX^&J?0S&PLz@rkN<~-l4Il8l#N_PfT{?Yfub?@PuUq zZF-s`0 zwKEs~iv4R<%;4YoF;BJ2cO6}~Vp@jwOm*H8bmiTO5B*+2L+y17wDr2R-%dY2d3jfQ zkL$w&fBx~Rud8Rl^^MmGPL0;SIQY$f!GlLHv+G`ZL~0{%e5$a!m#~KClr!KJ#7O5V zTz?Dg>1|Vf+hrhFWregNEVkSgnN@4%H)Bo1<22D&#FXO>3yz$*j#juPCTniUr?nKs zhZ~zh1%8OH4Mfur4w_?-@oF4kf5VxURkqwSxDQaOT4(=s-8OPkxV*FzQ@y@R3TK;6w0woMr@T~>rDYc(V{`y)z zwsi~3sm2930AzsQy2mu`TxA|MzqWhJoOBY$*3L(keLdQQnWu-c3Ia3u4umc6r*;D2 zf#E^N2&GVx)}UJRp52L9xx!-eI?1T+*aFv2x^Jd!kyfdJByR4lqM7Yi^9I*>_(&tf z%f@Vv;uwk+wTqZBl&7~TtUUZ%gN9&FoO@-`?%Y&bTymvsx{t^!BYfw1#|7yD3ZyjC zalyqIKUBWQbVYMszqm8&*g0)|f~Cin!T4gYU3JaP-!A^uyzkobA7+DR#`ig#yODORgTcoOHA_d7)QdD9ka&Lm1ey8lK1EDeOEnS*ZgAZ(qY4u>g5-8e~#_jc8*x09iLkDyy~y_ z4X3`{+BR+ER(Ey($Cm92Be%JJ71=aj@ulMxo5WG(UG;ef*UbEI^T;3nb}f0m?azt1 zfB$dfuZOo^l;5i8zg~Ioz`JVG$pisqSYZ%wvtYie7xL%xLt zeRDcf`wUIvMN-F>$Ie^EI}Aq|L@rU{nTB>8UTSKLZN=7~4^_A0aN>FFnbq6FPO0+Z zp%%l`O-KpLlwyy_d1V)MO_@C#3t(?b;UI=tB^3+9kBzRxX&SgsSf(fef~-1}>NLjh zg+Bj?O86Qh2UV+|;O0&nB|*4pEN}$A*<{gh^uWjne6lP%lO)p^^R-av5#Kqa5JbPb z*;sPDffNd^*de|FeC?)EBbtlGB7m&zGsxo6W!S8Q4vyl${Mbl=P{x3$V9kxr&u{WF zU#^foJ0F9e(pa7eVM&6@WYh7$*e)Ayyi|%2tj!KOFfemu$?goNES%+?4F|s4PtI$; zxc+}zHp?{@_`cV9k|#X0Xc}0e5oQ+8HolkqIR`cJ2t!b2y>I@s>SF9Pvpxnl;?&23 zAJ)C=AFw{>mTqLP&iu{X0uGN7-ccUs65na|x&(#X#18BSCy~~zotIX*!E5i=F9&_r zG&RPo^RB9Ie@QO?;9C0_Qi<}o-CHU`k81GNSyL~6T|T(<)d#=&djE%KEVyXOwF7Z*)6)f8OROvJHtxRh z;-pjwf#Qimk=e&O+p%p^z*aA&ikXt(wD?Yh2h$o?adWgmG{a&>^lm5J|J!B(tPTnF^DZH`PmUKs+KN>#-)Ne)-T4ff8A5wdxt?5Y!Q46sd z2|-7~2)n{6;#GaJ=)$%zoaaPuuT}w_G>#C0Q1-TdJCZRdtYeS`OMs!#t(lM9^B9B< z0W4P$Bb_T0`x#LN0~FKwh!tAN@sgRrP)n_6wW9TuB=6RC*Z^})4ry3ZP!Nj-8SDa2 zQizQm!-cE!tIY2m-!)*uu^EZ;&I}14X)RnlpPBqd7NG4qt!^_EOedNf)QI)6Y@8lm zl27>FG{ilSh+Kn42oAsJc77*ck!BC;sGI8zDIsUt%0GD$(xl$pRH z8cIW!kZ1HWN5Op|o&hK$BTE14x?UlN-M%)4(-9<=NTi_(UI!bCY8M)HP*l zr$Qyc)*mg8Cl|3*#{+$z3~Ve|C7r!&NOONzQ||XKeK#_?wx8bv1h=Q#H&60CH=gx8 zV?);`=`3Pckn3WdGSJa5RNzKaE)Mo0Jl!v~w%o4i4T))(QeKoC7n~xt4;yH)oc%R= z_p$+c*UdYdi&;5=f@ZmE{;HToIi3CPbVcTgbf0%YH)4XX+vEI*G!e`|p}gczbvh(- zFU^tRBn~+$HEJ4E;|UbKT4~1WFefNZmzu~M0IRn9Xr2-=ZlxnyE!OH0jIS*NQ$aYFI);N6?&j4;pa6J)W1VYksLXM&!CRS6- zCj%n@DsbM=8KUcT*+lpUjLZkHCFr&v-5P0Z%#X>xzC51!!$(tlzxCj$t%KuRUvIlq zF*2mQ9+S9Vy18R_0J&UnKq?8XNU6BCdi|n{Uc-xRW~b~aDJ=POOXE9-QB(GdO*i&D zcv?CAW!@yW5uwUz-ltEE3Bis>g3}!v1?2j(Wh0O1q};QSQqh}Oh%>?HO73>MMP`hR zs&Z~^bw1M@4{ZPCStSlVWSWJ2K97=wBDP-ZNKiPwx>xIJBW#Oi(NNH2H9{F63@!yD z2YE{Oya)t1vd4xxP9x!pyBaRJyr`r(t8vL@59_E|YX6U;m)08o&I*g)QS0uBKs=a< zm1j5n4U$Ysq4VV#`GM)qHDj|23wPBHG6M?>?{E7))Us{Km0dUXWWD+0)qit;m99Nt zHhIaY;Y8Rb=&mv}RR+d8*+EF8b_!#sAz*_6x5Z_@=8E$8g-V~02$ zkh^_iLPf-La#W2jz8+(vL_nGt!f|KkzUjI8Yr*X+k7t*hIZKZ+X!{TmRd3b$d%bmt zv3cFTeLw#_Gk(c%H{wQ3)tC7PhpH`&*t)V@-|6?8e?7bZabCrC%cFT66jP<1LMKpE zf@7DH-t>wF?=7po+q84FNqrdWngC&0301^!1k`Y%0Ci0!i8D{elxbXzC{Y3fD9gOD zflUI7-E~`zOccNTe0zGg`N+=Az6+$&OY%3&I$!JKM4*Y7X35>_e8+dRymRu*nSA3C zO_2!^6o#IMpdVwRf&yl>wjXbc(;V_zGIJRrD8X#oUH1F{+9tK(_@G<;QruM3!hhaf zubG(0*)sg(S>mC@`hu`6mgQkZq~Rs|;0*WX;qKVK;`Suoum9Me=s`>6h%o47{Nxa0Gi>4KEMKHWId{P|PBd+LmLFOU6^zi&^&)r&Vz zM)unV%n~Jq&Z=p&E-XAdWks1v5M}#sKf@_`Him^Q>t6|<(&zgQTl$k480rGIIA)2k`*}!4^+?mZ*3h3nyLT;E{46^v<@3+{+nD<r)bKrc+jn*Iu{leg z9x2)X-?LprD)qgHQt}`5uLrJQsp~({Q+&Hpw{EV=>|@TS%8O4DzC1{J6Z`Xz{bQ5r zeb-VebsO)Pq4KqeRGP$0OC}9z(qK!XKXLqg($SQY#}Qvc#UnjOfKOHV8D_=J$D6y>nrFv|OC~o~6c2$_DovFmtx|5$8pA=AfIUjI zZ1pH_2_1RUzAvutS+HEGLXwQ{q??!7`A&}VZkYSv^eq@DK;sx{Dt-#OpR&BJO<1Mg z7h`aDo>ofBz*uS}QCS}j*Y5D-EW@Xe8IZ#_g0&t82jHKiVv0*4+9BJFB0w&-mmBQ~ zzBtv#BQZH!xqN?7_>udYoz7Jx7U(Y4)t7&;By-Vvw1$pfQMG>2KX+Ihp%@4N5)_UA zTQl!<)r-}-dBGT#(8AV88FDxk5kND6j;gA!i!a-#P%uHliuE3buMj4}&r^ajPb{I+ zAZ^7U1>Op-TQabYP^+eQc7%7N&UVqWKxGuJUbzu=SVQW3{zM&T zR`2!8ZNZj7o-mAIbfp2<+kaYcnwlA85oVK-$Bq+-Oj|{c6wi?L%S!?dI@7o9xiorh z<_Fe-`>P7_O4MtsCi~wR{o~4=_+1h6qHVpACoBN1pruLKL`aedvt=Y)UJhItuqa&caPNQD2crMFK7+I{wR+#8o8LCiDd6MvG;0((xrSrC-F(Pl>PNre z@S)k4KKw5?X@oxzb#TV$)EQGfXm-h_ zaUPk)v{SgLIIp>_XCHU&)E4veYV56z;KnanYkS*;Keh5`4DXsCvHAv3(*>+-ql~t8 zbE8AHkXsib3NtOds|6%F*~o!L0xV8M=6bUS4^)1q+~X=;#TW!@XQ!9Bbn23ca$K_Q zDzsfvW=kF-kEbCD#0T%p)ky-luz>}*K879cm4i~L%&?t+@uqnDnL3+|{%NI~7!7fW zwed?^rj`Z_Rj?yMoaL4>oZQ&yHGu&kH=>LSBym6E-aG&f5m2zGXCf4pqNP=xX{#~D zzyg-T*Cr~Mcp(Z(y$np+6rk-fAjayf9*YgJ(ZG73B`zYsw_UyG>h=?p(7RWb~}5eWlN zKnc@`R!$spIM!N~3d$)35zQ1>p?!!Z3}cEhg5^-?)6pFu;>>h9)v=b+6(*bEF0yq=RIw==1v1UXG?fkY!;!LSY_L@vc z!K?I65<8Rvqs(kU;-roY+AaVAygD@NcE;Be7RGDjsO1ZT1CES2$Hkx*NEi_;L)qed zEX;5rql?0HP&6`Pp4%~N0!KlBnKU&CB?77S@z@Z=$({%WErib!bZ9db7@;ZMT0;_m z;1olqRTCj5tH+`MA&XBk3zsX6(MbxFt-=*WgOwCaCX@)?hz^Y*AWU>Pb?~@POu8UN z%kV%@d?5}4iUl;4WF-{9!k=g*z|3;uk=C8I(AsmIB+%GoLKqi}acYjOx7rL#0AqnE zfra*V%ky8U$66;r4_t0WgMSOwG1i!W)YV$A?&CMBUi?_|*RHz8=f0N@%}fmN`q0!< zJ^m>y@#jBNKfV9nC`Av20ab(BO?2S2%)e2(wzko$;O)%U_x4N-#Q$~R#s_8d(~9x% z?)uB+h1FfLUe|8#RnPe9^r|9sc=*3BJDL(U6fMe$@FOC@wlUS628yrtjAbbW6h>IM z6N#02bCHoygHj0n=gxI58_HTu2w6R|zoe++uo?Ca-|uuna(qfI!S`7Khw7PSuBUN? z;GiHr83IoRf=)$X91UHq--Bw{bp*Fwr=YW4)yEHhyD;7Ox$L75HUtV)^7XP;Tif{7pftt>N#0sO`Z=-)r>q{?w>ays~fu_lG zUe?S#)idXFScj0wW|NOkZA03f^fvs`$`7{`hcJ9U)clGwjlX)9Hvc<$#nQb7v-i&* zi(FB8nrN`$9!rb0;GSe@n)ZAtGkO@>v?=n!$j|+|YCd-sU(e4nn4sm4B)fyB^=Z%IdwbV!mn?56& zlqstc^pVd8Ib*OE>ScFSg$Fms{t^v7xM z{`R54jWOaBg3YUpuhoTX9A`LQ#7F50zkRt>*b~-u>VDZ zgOlt>AOs0*5e}K0ihKQKbkvOM89Uc?YUR|Pv7O6I2&C=2iRPiwBO85Evr=Dvb9#Sz z-qBZiS-BW(8ZBO_TDxhv>u~?Dq5W<{WOdV!bnRfq)Hy#s0hxcp_tE(HcbgYndcEcD zmLs))Jo&?|Ffwrbqx*c8y=K*_Jvwo$@46fAwj?=6&f{*$J>(5-Hh~^wf<;>ow>P|c zF`n`H`o$j;c0V5+`G^0oeOLDRjqn1uI_#jN`fp!1Eq48Pdh@qEZy$CATzy|yAvlsl)zvyU)tu5?7@Q8<-ebeyVW7pclK0n#^ zVf)m#O$mDklP8Mj#jnkati1c`%+()LJqJt9R>r_Fw!1rz6|&JUCoVt#=KC!_h98bk z{<-ABee3lf@9clwQ$nz!5V(iy?gw_U&db+!p9&koS{lwfM4Iw2k8tVJPKKs*vRYw-O1J-X6rulbd3 zEUa{Xg4(q;{4t`iXKcz2y~AHaomOGTWn+ES<`y9e;nr>ckj;X%9YmC^3(qEB1rskk zRYTzKHmK7C{h%(PNKmY&ZC?U<#;SbIxLc3tMpS+Jf4;6Bpo=?-Zf`trt|Nylz_8(4 zc9|?sJmfhmWzrNonm%cqMH#v#M zL<7B_&QU*>d;)Ka_v;AgbuYT!I zx4Yl7;9`@OWb^scEwet^W*fgV_o9}>&-W7Fxxe@8GwSQ^4VyQO|M)ol#zpqrs*TXQ znrHTV%#k2a(@`VHt-8U`Ti3EMNs4$qR;d!*R4*^A6|`4TUi|RdUi7i)ac*q3$ocZ! zi~Fj6C9H`uC%31o7XmCBOQ6uDo#Y|L=9@G}A<+PhU7W_)zp@4AI~-Ra$!!-3lJo|& zha`4~c^I)cy!&gd@A$)mtvSO6hhs@+Cd_h@#P8okS2usD8C)V+ALBt!Ms>-u31yim zDS-`y8Yw<0zOu!Tm&oO+x5vE*+w)-FJ-3hNM>KzpoypRAjOYT@*{xwC)VZwn+uiYr z$uLGhVeBWWUo}}|oZ2-Mb)$TK&?fD{#LLpYb(0s}*_F)N)rIr~hvjfafr#L}=q!<<{ox^XZ;Spt^ zP_BAbhe5Ts8dJ#(rqC3{r_n`Xh;|fn&^T2*;ZWc?gv}R@pal%@gkr7nBYcCyL^sAU zFFT%c{*+svN6$2hMeD-&-n#C(33p>UlrCt-23%(viey41cEA{xErd$H9@1-Fy9;I$ z(69==&5+2A*|;cLH8a&6_byNy&(IKAfP5mZ!6^xF5W_{aVpWUx z`kB(3<|bN9nO~n?$fUs8C~RKZGU)XsyAYuPB=4D`HN#5h1k9Poj)SmCAPLoD&J6b- zXAi+ z_gCWE+;akm-V&RUFdgk|z4h=vs`VwWx5UlvI3uFLi0!&ilK!%-R9veK9`i|A=7h0S z!8eq~O@<~@(Fg`wn%n*(o|J47e^(^Tv0+uP}3wy1da@a zGMI>n;RXYrg(JXy9IaBim02^>=zATKRz70-d^ozq%XI&pPGe45Z&|(?s#W4%p*tHd zTaHuEGk;U%5&DRb{>G6mNkS=*ByZ6B$g(lyNA7s|O|r~J3r9ku2ks0S_{_J$7#Y%4h&mK*k6jZeJl)vv7B4vo$z5D3#J%6Np zVJ|m8YDLNz8fA$P388~##}Rr{#45Knsj)1w&`t!|5i4w3TXuAN{KXqpD>kIW+;?fO zkFC#D<$O_AXC&GEeUE-9FHb^5uqgBhmM+nw#WLr7n>a10cl0p(g~{W?Jp-4%cfZ~6 zzoS>fvp!c<#(Lq)R}{-{HNSY4f3dnetfJ)4q|>Wf6h0R_=T9E!%z6D_JYZ_7S@pQb zfnz^ky?FX8Yr!_jlK1YMjlc?UNK97lGq*C?*I5_yv;mL7VbYSd&vK7_T4yzN&x@r$ zd}EjXD4w}fGO{)XoM|+9u^^9_H>J9I$$@{BNxNfr-o#5D*HndFai3ANp)E7x%Ngfm zFD9307u*lZPk-JP4goDm6rB8_=;?YW(`-Rv9e>WXwiDa?F%z54R!zwW3^3`AM#E>* z33l$}9F*xBNOx2NRhD1AR$Vj8a27e9X=!xnOVw)6?f>mhC_J%m8tMHPudhv)65>bUY_oLGyg1@V{$=tX- zj>-Q0bWjn`P)ZbndH0XS;KO}C$KF4sruF&bqfWZ(zEu~_T@*(oC9lkG%}I}u$OPvT zIu=f>JiO`DCS{jsSHi;S)tlB!yJL2KzW?X#oL~P9c>evzn_IEdUbc-F?@eCuNBiRk z54|2cUr6Y?luLKMUurNbNXRbzI}r}gE_!8-zX4x*-02o0CnP=>o5O~eqjD2AYAkM3 zW5MjJueL4t^XI)~^}E#c<$lQ)5`71jh{A`A&5xcldBYR?ZAJILZ@l_m{MUz+hwn@; zeBC(l*wgd9Md85BJw_-Ms9T{96q8is{49J% zAk~pQ^T+Vqca9H#71rJr<*J{~dj0X>i*3I${@U9ye&vHEa!7$v8ISo5t>mhox>WeY zU(Wm+`)&E6#dg99d9j9gi1^Z+hn~pn)k$f&jPtDylKe3@zVXt2Z z8_voeXm@&}i=6TLAWK$$`1LHx^a7pd^_qb-Us=%(0{5ii>vd^K(YiB23#`T)G3YRW zgF4?{wmjs+y1Idad@o2tjDfaInTDLTH_qw`lFLfNzmz#-?J3 zT)~8;8U`x>19z1J7Z%OfOk&Pg*zi@9#QbBhzyc95RAc zww!cd{rQ7laLRD?;tcKT0*fh={d7V8j1e-NU{Q1tft4>aqe1)KWe6J}N+PfV{kV~b zV|oz*7z`Dbt;l1dHuq8FtqYa!_dIYs)2~;To<5tn+p8h|*UUNR2QIujapTsw7c~!F zeN1)Wq8c+`g(LPt(`7d^>!OQJ+n>(6|NQcv=?@n9gz~es|9kUeB-S^BS6YFR2L~*W zS|^p+qSQ(ZkrpV=+{b%3-Jx;&G65?@xhWwxvYnonbHn9nTX@6AN8F|HOSg~nV{L|T zNtsNrXa)gIPp#*#jnU_UwhA$|BMJ;U?_9ELpH5FB04WPYgG87;@QawYOI5D;wkdd7 zi;yUkOZVK&TYt8-SYtazAq{Ay=>=Xn_GugK$yQq#hls~I zaYQxuI>~=Ft66%-Dc{=x3*391J%>$ZBP_Da7zd`QEm*0SD8Q?VLL%ivnx8tJ*v>`xC^g3`R6v{U;=xPBsG!L$r7eeAAzUG96etk~ z4RJPA+q?*@AI3Z)92(%|C~odb3pEo$#waGjrX*>+p+CdiZD^H2kBNaHcJOs@t`;$H zIJ?3wcz)Kv3t4Vv%Pm*=pl}#k;!-(kgd-pUD`zMOg@cSSQD*N{I$0aK+!Pa65I3Nj z(Q5(H4=Gt{6b|!sreL9Br85pN%_!h_U|4nTAvUzWG=hw#h&Srs2my`ZmvC|jFN+6; ztwQ4p529M1$3T^3GX(-($6=0;9*TyTbgPL+S!8K@SaE4oeEjJA+JVkeO4pr&3T*q? z`2Qq_C1d;D`>%x^sW`4JXsWoXv6-R0?<6)@x8jIpQ%E5K2YUc zYIdR9*4(0Fujj8`AkNv{6wRq=796sCq+*7R*`^=o9gR7fc{A)r>B?6sUR6 zFiHi`43cXIXfYCi61kWJNti+MYzZO?5T@X9Dkods6gn420CP!{JtUer>^Lby;fAxD zGfx2;QG14lV1+eeAuvxS8n86377mIhZqDzYvVWgL`n^dMRj~guv0$>rsr+t9xf?{q z2pl6qD_gBnWUAnRZX^&gP;4@!-qB*1Q$l0m!kabC;is4}8ZpUNEG!gOhJenV(VA7zJxFcC=3K4IZ|3hh3BGQ1W z7oi)^vE`ATuu!bR#i|%`E z8AQTizZVav6d1VDqAJ1<$9nw`?tA#}@xqHUzWsM&1N(b} z=kSW}Zys;Bf7e`mCw}+)<+j0xBq9~~;)4=4+HrEtmE5Ogk5ip1skf!ut_)oJ`Q*sk zhMf<;gzUE(S+x6bq3^>_l3Vx7$7i-QHAcPcpMPb1_t@5nqIZnXN8N*{h~L4ZCg-xB zljg5F;JbpfN{SF<@FVM4(1rIoX(`*?MxL8xv6wAH$4jlO|zPj&Swd2f> zPm>=foXM%IYW(J!xA(K){b`y)wr}(8-XusCo{^%k+Op_42xJwH(K4aL~(35!$ z<<8_fuoU^Myw}UfW(%2UB9};~Zlc(ja~L(#>ZjeG#$D+3d`#>(WBZfbw~h04?BHiD zC^SCFHfC|v-uY#n>_t(l;^X6|uW$PB;l|Q;Z9Nx@8Xvp&JzD+G$Fr+Rx@>O>fZNEr zcul;r#(sF`=J5~h*GIy-(%66|I<0%pEo1#+wN2A-j81TpYJ+lO5lOp|Ldu| z_tktse96l`@o|o^a`~G2%cnA3OKssY3MJ8A-v0HGZ&AaaJKla;`lV|k>1xB%nVAWfom*JGs+7m~EJ}9Y&se%sw|ZdwB#@GNZCiqd z-DecOz4|)ohVO&6v`in@-GvEcZ8nBtz9#Wa$oVzMR%WhSwI2eXE?9K7IL_NCkxc7{uFX!P4V4CJQZ!~fz>4{Bev({HHj>+F_UDl}_tF9c+_ljscUUhbs zE!AYf;WKL&xukS4WeMApy(#adx)z*LL*g8T#na8Ul^OnNb&KoW)j%OGtTWbS+RMG$ zb>4?CM1E@=L(-d$aO7rYqLWM(I)Fu)t;memBdLL6MyH6_N~1C`?LbHx!MYUj`9yyy z{h9lTR07!pWrrxERRz=eCwJa7DNi)YrXb|#4m@@Kwne%{mp9!xahMT6Lss3he165~ zO+#gQ*I3Syhkrdgv0>4}TfcUn<}a-tW`_HfwUiYH2~O^` zRm2xsqATN*TyryBc=(aE4n$f#*eD$83Do3X4*vP2E|r2PW322NGuUqPICK5{{fkpC zmJA-B9*4opm}5jXS2C;7g^@(SC1GUVaYl^8_(=Y|o^XFXZ3qVkDUHfIU2h&i$~kj# zxCcE6&T>XQUDD!f8y@cXylln2e>FJ^nD$WnAj|sL!lF1(H7OOv28uWu-L7phZ+v3o zx?`9c*+tII=VeW7+B`d%p+t@FbuB@9PLBTxCl=WuSUl;e@w$?p(X*;_S+B1nmz^F%hUjB{PhmEH5%0!tF>_dZS^e4FgB2 zEu$M+gTKcRowy>TLkGn-wZhCvugi3SWsw+>NaZbaB#w7i3Z1>_DXFD9iLV@XU3W@0 z5yeJ2WUN}w5y-eY&^q9aw8ibMsl2q#x_E&diR4tKH*2w)U@$x)=I1-usc;+w%|X%h{?-b6R302N&w%LN3JFqrFGOv=bGV4E06b&l zj%3cc(K}ni3hFGR(h)@G3X?o}hhR#h|2jH($b`cQa4d@!7_o#16$(W%q?cxmXoy4r zh9bBmsHZ8iLC|F23Jf$NnMFrL%Wlf-{pg@D_wAoky7SKFKx)S6gU4b@%QCxim7f+h zYR;#KJyxyDs@cA@afL_DlG0R0SbV|S1RO@8(eud=ICim!xcRI=e#SR*huyk{Bdt73kJ-~b7A?9MQpPdC$MV}Qh2jfdwq~5|Dal`JI>i!)vWJMMB&jCBgdn79 zyxG7zIE+D(%oMJ679FyERzsXA#ke!6WaxAPz!OVN!z@E(1V-T`tayAvBz*)-B5F5Sf~oZ`R(bBXAL% zGE)!C41qWllOswisulM}$QQn{Zp_X6IO%7? z59*4)-%y$s!7;SJ;!r2!gcC*V7c`Hc3@vo1Z^JfY=HJ`%YLSmI>L_t9~v=dFRg6beqje1=$ zL|~iKt={+c9FnC?^fYL0Y@et~R+w>y)lvq^01hq)wYe!>CROlVr9I*YNyS{1vO3BKRhFTYH@3tQjNTb*keI810V0y4f zxws(#H-CHY`Hy9*!%jKhKf#(lGHpR@gh}Z8?M~lP)-OkK%ku98b#IqW^oECA?@&Y7 zi$J5HsQta-QzTS-JHsk;8QLgtR*FR|J8Q=FSG|{J#E|826g#RZ1`ly47lIIFGQy(a zc@=Uec-4y4W%f=eO|fgH!>&ovNEU@!EgV?xyNr{C;=i@&nMjxEFalDXa2~Ax2%X0d{zt=EdH-zqBuW& za+cTIx*G36u?RTY1d1JOvfxQy*F2Q@W8mrSbp`h?%^UX4rmy2|F}ptSuFR|XbyEk`pQf9eAlo2d)nLw_iulHfAQGurd2^}H%!!>bu})STX(tqIswf~)w@P(TqMj~ ze}%U!lPuQwFCx=L%lm@w|GT*P>wildA198dbZ7NdTob+_1n3al91Hm&%k5pPrF};O z{(5&{!^d-7wHMd@_0;TrQ-dcCo2=!on;N)gq&*<_JmNDn1EIO&(`ORhh9hO2*rbuv1TvTavVb7)G zKDoJ4*yi(2Tgb<4D}v43LsCQf4|gBRj*c+#6VOBq;=(P*NH!DKfR4oD5y}aq!4i*s zqu(D?P5taY=pA6^>N=&> zb?3s<)9NQW9YUg2159U&qwV{59`n~)?(4qOv6a-d+9PssAf2f#W~=oO%raml3Re(K zYcgl+&?_s-H@TXfI1^oA`^;U9WTz1gluiN8+ZMycp-ha!Da;T9+^B#mpg0fFU@07G z-2gIJgJLj}-6#QABbr#R;{bh6VRt&)C!#ggU2HcUaDlJ_g|BGLLRV7DJZnam0UhYS zFlcW3xUM%p^mGW9XRz@JsjqPZu}xWC*=f?# zx^1Ho8*M5@WHr9B&ww>*MJO(MuMCw`!BrdcDa*Fh^&5_p?GQXi#z^JKjDB z*fWrsIWaNOcSUsYopoqdhXJE<_zc+q^uXDoys=q+$< z)ZEO=501wBZD+?`yxbVv%*yN`3k>-JSRBVA%3zwvC=X-E!*sBpu&fzOE|JFQGzhqS zST55v_KEo|u;tg;OKjl1I3@E8MG`vqoI@843UO+PW`fp5`klhz%&v5p~fOrziQEM{oO$kujW}yi< z$Mc8R9(hoZ5y*sAEI51dh)83`l1aJ#b*$N^Rs~q9%~}BjMAH*-L=%tSouX;T6RqWm zS=6)f`Z+FR0e0N^cqOgi6U^Xc$ps0nV6`;$(Y>i1WiD^kq&aD7=778v)cL3lt;p zYoO|e7f@{NVFT{yCqQC6qY=}fQKfWnXaX7jX?(poV{io-U%=vY@mz$X2nCdcGs>-(X zI9Y4ydh_@l(@lz2nS;AzDB$hpta-Wi_i`4;Q&OTzi^l@+QT-~r(=~UuxK)-nubf&k zWiyc|X9VJ40?jVV^hQ{D5|y-?$!1WE3b2pE2L7mqz}*XHQSsklBq?K3gnvk`*HzR#l00(s5CGYIR=7X?uTq>pCYzV5)^@ zG&|$+j%$ne%y_W#{rCAB-XDJWt*5s6#hhIWiZ>s8yXC_BdFBlX7pf09rA76PvMYnW zd@nBA{AsOp-UgM9$T`I6o?7Jf{J@+3pB^7g=YAerP+wEN$kD_KOW=Y4he8Z~xxjjo zHiBvPtc0ywy$OkuzvYcW0Q|R({)q(wtw?`wL5p%fEjZ@96b&dmZ{>v8JsuDY9fq?0j9H?~?C%`tdoU-hu!?o#;FZ|m2xz}Uc;+Jg=7xVaijWY(nH{9Rxr0$g4ocj7@9B?rMXV`_- z2hYx|(`PA@uw=M!(-1JyL+XRW>o6KRzU>4jb2dZiuh}~5^639jbmn16CR`MMStM`^ zkqo5;6xXy6jkFa>3EVPm(X0sqH4RHmEo&+WtTZTGa@WdC+ry1)M=H`Wv(ySB+q0?E z_L`}$=DW=^|IEzuOg;!N_nv#s?@;;28z&?!ywEV`YtT>AII*^8cAtaFw&G!%?;+D(v9rCn%iBL%bbkT3hl{EUzg zFO#spjxHYIpExp-e4!@>UgeV(xH~yXkFvjS&OS4G#`1KvIg6UQ#dywT%w2e2cCK*4 z0)B^3+)<+Bnqn`+GsM+_e=F-ttO)`ACo zJ|BzdY<48-(JpC=m%r&1&Dj_`<2>7(=9y-ejqm`z9=4@!}N6Iir)zmw#NFKJRSJy1=#{Sv^$` z-=CZ{A){6Gn#BHJFIwiKO(1f#tf9B5F*0(mEi& z46L(Rbdtn-i#2A&eV#Gk{`f6k9dOiKu2^&_WDCJiFC62G)7B`@A#ik7A!BDS@ASo>#R z$a>Y&^6AQ-A3wjQPX6^?6q{sgsF_gwZ>@Xn^m)%8{wmt`>)WtTNLVdI>U^lx*X*SyRa`|9NRDZ%ZOBqx`kFfFb6YDVkUluze(t@=+j@6YIE z3!is>&CJZ)H2TnUux#L@roF__);iqvX58ebHy$2UC>A+0@{)YXo_@D z)!iQsHGJ$h9+#|@fh@#{#=Z^OwZP;W%JJ&~tZ-P1inZNzM{-$dYgm7v2ehOqeov#pXL> z+6q$1=j;-)pBxLU;^WLXFlJ&XSX`$NTtJ9EHVWk)sbHn{k&^sOg^dL^Xb8MSgF8S? zPM%r>3_wd}q(o)M0uCH*zRa1WCbl`6g|mp+XwdJiDV~jR0JEW3L0|-4mkhUWt}d)% z($3}2)@Uad(k#H3r?q1np%_ftcGJN`!L!Q8N8YU0kH4R=ejwu5^U9g$VuqHqWv$+R zyYJnU1#ioIYFqE!-u$t?ie|`bk7Pm*lgXiIFhja#%^-7g%5}SLTfRa%)xJaLiYoIj z0oUPSQSDeyW{WYvH~dZo%}3$F6$1JjO%Onuyr3Cc<71XQ&vHL+p61IgaNwVoZgN<=y=w3!)0`Oa;s zgD2kHH?2o{^9NKu-`$P1kk-uKp>9VPv3aXmK|C)BdH$3<*HtU7w|k{9pJ~?Sb?$8; zb|~!?OwF;8rcI_}MdK>)!--ODs>U^p%`SA7V1`)0kb{;~s0y<}R0UWxh6Uy}D0;-0 zO0+gYGr!3vuM3Nlx}YdU>}7C~4gy3UPEMRkNE(Rcx9pKSKD#9B$G5F6WpbBu2x`kca>X;?@~C{*EY4zTNxdR}1N z2Q*QQKELM+;IPHYEFAcFD+cG_6P5t45V$}i0ay}qy_pp7U3y1ba*T*GRL&5zjhrR` z5owi`m#Q-K?pwHp-f;}HT@xDNE3`iG$UrZiBa1<3dN!L48>$FALR-fMu_w_Q1zlxHO=(vPRem<1 zVCy}dwj5073Qh+iqn`_xVF)gsdJmuyU&C}jb*nwp3xHe5(z7v@fyFU#5Q`_3vwI{M zp$LQU@OTYpRI!xOt7ta>yNRmY#CFje(HC58?$O|rHo#}Y)dv$R^riw1NCV+PL>i_; ziS@EgZX$p>t6VK;-V%K>5uJy~(RoDAaZw$X9{lKon!@NKtooXk3vJp545^^8 zo>g}i-}~Add$Ka}sFOu(a7T7W<^GYtn8Ta`XZ$(5h6WZ)PDVu%OUU>=s>>oOaNYiW z;X8cM-izUJighT&FA8p_TYAYk&UJbr7dM9EhYNa=7>(BB1ZSq44gSt5kT1X#$^(*S8IPlW7>YrO;Q&ww6fWN`IMuS68U9Qq%OsE)d+=YO9)K$hL=!e z2EUV7$)JLUiqj}jW-glG_`CG8lLFRns4#{~DMorZr_h&%Nb86uIwIHC57?st9i|7; zI~%Qm15GezH$p3jSj&+4?u1fnWjG&7s0?hOMC+^b4J{ICB=G>a<{@R+&K)gCC)>e+ zV8f*63lv&)s)meaI+*wYc5f0NX8q8fe+vcB&4I-O4Zr^RIDY-98Go4PZ9aXcrPT)V z1m(CmgreFpGSYOIs8s4Z_?8%&#IJGs{l;Cl9t6a%TCv{ikJn2ge|}v*IHTqY<^H4| zwaSN~mEJ-7Dj$s&C9%%U-+E!+PvC;j5 zbdRh#lx@x9f@7CM!J1~vd}(?L3N3+$5=E(I%1~NVJR8nao~rJj);e;?I{fpe{UtMA z;iVh*p9%>yP2QPx^HtDthk(>@EDm&PRgkK?OP-$b`1;U_>AC&Oc^=zam~ofYh~e%F0K>tIju3@bcq{J zW2bskyi<5;}wYMkxth+Q2<_yikpQfc4GVwY7)N;fl!UmUYV`eUB`! zn6NNa-M}6^Cem0_0>SS)tT}dgT*Ipo6YfV>^4;^Nk9PPt(tp=E!qW#`#gn^YGn@nl zw?0nA?${%`ABRiZzCL--eI%7p@C0F)(RJ780G8g-;wnOd9|&jJbD;4DL&GL-$aOU* zD}o67AC@H?a|93&KG@0k_{sXR3bM1K+eBNZN-d-QUjCP(Z`VJty!Y+Vozj{w5BPS+ z?>?W4k1k2ovk-LW%mAm+>YisqeY;lv`}XJIhDTd}xn}%%WNnZ1PIA-n#&b78rLdu; zm)oI(zMH=0jU1b|@#&i9Hxs)Ol@h;J_E5{E<~z&RitD3OQa@@lREu_2bg7o=&aS^W zdT8vn7ZGF4$8P)@UN~un`O3T2RX>jW8lJIjr1{D})OWL1OuF#ZD7uurcH^qpp{(^S z|8738dGuiXyOq1kKCT%oZcP7fwf#%as$Z^=mrO1TTN3WxOaD^MPf#FuiTK=(qHwsu zSuzOT-V7>Gwp9_Iw9PTwUhW&a{a4TA2`?Xb9Cq8|tmPO`J9b#emeh&|5B#_~`e^c% zbSH`||Cb)ccQ*u9H7Bo%!e4 zna{gRFEUr09~rJb`^Uw15C7=8zB9497SZ|nFe8kw(+9ub&Z91zdszK^^TeP;UCG!T{v6%D%g{vrOgXZ4;k?aI2HqXCmsy~bWRcf0;t@Y8K8W0cZhAe zGccHue0MPIcvb;LF;1rzkfbi~xQfKWH@r}ustO9f;jsDdtegI)srL^IeO_9$YcUOM zU04Sa^KIKuz*Xj{dS^L81R#ladG`LJj1mMIW2jQ8rtjKfc7Of4*mI0lhqE``#)}O3 zG_)YvblcOTsmbmsi4@ckyVSGkVb2@InK{2&%dd_7*R2)7n?8afcT z>oagqIcLCgovXx4L(bxWgg)NY){;!)YUU%5#kAYLw|VtQT2d&-=@!9 zkF!Qk@A)?O@YizHEq`55h8u;6543?wKWjG7eXyqkT%%gTF}X1*)5TAbX>YVg``Z6DPrEfbu(D-oimD;|BmI60 zbzyjS&bM_NpC0UwQ)S!lJxKbiWGO6pvI1Y6ipgG-vaCMu%ZodA(jJsY+L6%l@>D4e zGSfm3?x;&+BASC8A!CV6f0veEMqCVoF(gfE)A51oxnSu z^-YM_cYfXG{_dLVn*LKE-!}HdzMHlrw3LrDwet}}*%Sr@r=jMC38FZG!-Jtcwyvt) zRcTXROta4uzDZd*_IdZ7Q};LBb~$@Nty>ZHG#o(RE8JLqgVyMS1J`*pmm0x!wr1<2 z)^ByqZ_VRxY&6oRO{%%j5*%`5DI|Q9zBnuhXR1a`0yS;N3qgAFz+lehRkm}_RmV)R z+!tG3qDr`+tfr$N`mvuwS|N`{9s z@arW|1^F8msibi&NwW}ZtR+*1h!JZCg6A$Q8)s1m7kD8S2e|+e8q3csV9>z@+xOxw zf@1S637R0H0jFwnCc~psyHc{lO~3_OF^x$wB6!CJMuI)SDBJOf71$`bHt}_8CSF}` zJHtvqFW1274k)a2YA(k>3(^&nEipQ*Oio62w9H3@1mZFZ5pQ2hh?4=7hzjg75=2L* zHv2HqQh3{dg~M!F%iC2~pN z{3F4HUBFDquwgJr);KJeRoG6GQU_rCfgwZcy&=~|DC)=45f^O`O{t{O81M}!&((X- zzyJ!(F?76Ag)mTs&SWB~P}_bKTjEU=(zO=2PY4cVY8n$Mu@(|Lguu={q~Vky7%pPy z;L}1p$R0s>O)!nfFc6~odFWhh;kj@W4i(G#?O(NyHOd%p@Z~`J0aam-;mYXx6(aju zTy=S_k?9t`L!H~5fR=g_lto=ikku3t6-p`dCpq6t*r~BWbD-3oU@enqC1%9b0c{{M ztVZXZYjIGIr(#J>!TCf75;_mPpUjsl8J&2GfN|q@w)K~G#~n*1G!U0yPiKeKGYU(L z{0d?C%(W^ll@Ak^ z7iw_7`=YGbusqP{#Ux%+K`;#(u2&PV6hQ}C0du_&Kz|y9t^i*bu@LKkWaBwRl+ckt z6gp~vLCnRwkT51orPgA%KMIG@2m=djOo06n(6u&1ItFatQWr^_ObNZ(Oq$9gY6pj8 z-~x*~;jkMOwc8*4oOnkQi2cAyCf{}`AOm=Zpz&8W|Lj=4O170o^4ww{pM~V56KYyn&Ax|ox!$*uryECkL z*G!#va>W>_`mN-p;zV>zJ*ROH5e|R$-nU+MZZ6~`_ zz)}_Mx?`&RRQAPEx}hAwvW`65+Vinyj_+d*XTi-VjofljWx3#jS8jL2nfsPvYm!b6 zMi6gvIRv{MD3D&mNuYKTx(UQ|f%+vqYbbgRXcdUII^*?hGe}SxxzbxB=i0d&Nbk|getHn^8@`*az$4L)k44ki~+46=TnX}jJ#VlJICw$<%G(K<{I|+D;sW%Y@GM=-o|aO zOHWl+CKl$xi~tWur5ztli%NXFaqO&|pQn=6Kc3y1Is;=2G6cN*`oRWnskt$d@Dq*k zXP!M-qfjrH{rC0BpARl5J^%Bw+4l1P#%%vS{QSV@aR}b@(vj@fkN$W3@uhzSS6#X~ulrBTpS$>A8F2~O z#e+i6zmVNCtUE9_`@_aFm)0GAd@*r)1k)>lSe>F=8N-FMorgEt<2JlIfk=@nt)Rx>U+Y%SoEzto&mHF@1(CT;MFq8_9RSqP|GwBkxk*LI z5uGM_f0;#|`(YA!KNr6rT*!rKmQ70?=7?kVAmaT?Ym5HM{P@}UB}um{X+>E?R zZm=?r6p`oB=jcd@LZH3Ux)8fllNzL4;2*%S`>mSL(qt%&9y-oW=5(DKA-yHN_3)Gv zcWA=v2kVoKc{gT1yL)z{?!T{u?W>afnso+|)OjQrJpl1~DU*xfKuWjJolqytQu`1D z&T2&J5}5it(~TCKxCh*LFI##+^+7XWwjmj0bcV{t;7LgGlSyY4A+t2?G(p<{?|O8- zwH>MsHHHGGSOgvCGf>kSAG!bP{+@|$c9t4@^tVHv)p-UAT?rd6L9fFT0)v3|W=31( zs$0*FPM!Mv(WQSgD#p!TzVO1)=3OHR<~yC;voDx!#Ok=jnSFuZpK#(=5{i-)2#;&^sat6|ga>%^`2eEW3e_bdlwDPJAPv6q(8e` z&iR@gxWKuVF+HFRQD^fxKj)vqgq+2ux20{#fBuuDo^apg^_P3jle4R9HvQ06N>T6cwvrGQ!}@OETJysPpk_@|0TVy|&9{q)vS_M&N{N2f z)PmK~8p%2z?v7wfdQpcbmAWBU-4;$ktoSbcIFksnLT-DyBw~)JS4p5<|C?eHe3%ky zdaakyB9u}lT@=qEIh5EFO(hbH1A4%gkhViYS2Y6QiYxmqA0e2Ik_kA(9cRr0UL^G? zmY_`)d22?(tuScdrxWzZP9@qT^VL}xcqXBSWJOiBL(xG`A{-Gww#zFZ@?;PMO5+F> zG^Mp0hnL4S$ORIC5TT2QTU=pA(L#}rSy@|fJxJluVOSyZ-nHLIFgh&5)5XYhYi}wE z%PYx6tcZAR)UzF!4IvzoC>}Af&|(*4xswM6A{>MR8~~dSrFeMg7*zVgomv!+*Fdcc33qV!^0N55 zCPs_I-$txLw4hakk#2<;t&{S}d_*+<+!T$M1&W84qHr9R z5#nGPnge+-Yi*0s#W9lr)_`r5j5?$%sTE+M9u5;DF2rvHT*6 zwt9%=NL7OAz<~ljfJ%S7HP{7(u$4j0Gc0>ppL_WAQ$%#Xh2kAWlnuK%Rpzs{?l$KKM>dUDyi`p-?( zMH7_OGNyx&L`2C@bPP_8C{&H80k^2nRkJSKDtLPEu(wap52gAHLGFm8M+rvace1!qXn^Qa?67V!`kMOy>V^ zVJ+lR$FQbc5IX5huE7Y=J}vYd2#Gkpx7JnbBiRt*tk27DZ`P*} zcfF?b;Qm>0O3T5p zho7JHy=Y%~cG^(ofSWXM&hiuOJ_!gcGC0ZN-9MlHy?*T2zq;=yk(3RpXx;kDA4ZR@ zY#Lv=XZGx1XT1?jU|}fQAxLt1w(n~j3flgDY)_eO{FMPZ@yX&NIbtzJtg!T`N)23h zZ=`f{$FVVw-~S!A{paI3Ip30gy~w-rzviC5N4Gxww(aTK$KO7?|9P`?+tnkU?6WgU zu9BxN=(@TA{FpQTt^4t&wQI}Ri63tl3p`KyZEf2+qS*ew^zGl-SAK0=|L>$3Je!5D zqczrOJ}Q>t*yUrv$8(MR0EBEpOIoE_f&0Gh-_H8))Q@%dZY|yH6MDQX4Y^(-@GyBS zS!r8CJp122gn2I?Q1>0Cly*fEb#$h#v8o$xdhUgqGQLOiDRI2}!WaI-??!$N_562d z@~^K4=KSM3WA>ZtlRt)zz3}qh;jpt4z4tX8%}z~m3n{3mvfT5`TAw^dm~{RKb0@Yl z7VS}c?#BhQL&&!Nh?oD&p4A#fLYB^bd23+u|5l#e;y-IeYcf_$N2=f{0G;<8yx~dV z+dmbzjYv~pv|q|u*E9B#Z{+$5XP)?@hFG&2qw!)DBha3zLd0YGNkK8XoFoCx1%oEz zIcQWNSC-&B5|BUT$%4Da%Gy?5$V z#j^agTls6&4TM(roX>Uc?JKi?W{Dw{!ZPdGS6<}oit1>x`&N{jV~bPu&(N{%>OJ4`}r5 z2q7JSW#lSp0TI0ZlaTf)^t5q*Q+B!han#=_9n7u#JbSoGv6ByjPy+Yx^hhTkNJTs3a^zl z4c|Onf)Aw(x1_#6=<%MnCa#=Wxy7z5d-Q+pU76;}pIKM?8S>y_EjOPdQXwJ)Lcx;w z*+p0(Y&cxn0FIbknPgAlpe1mW3;->5 z(BvFjPli?>(Eg;Q7~q`TXndNQQuV4N`L1(_N8v=SoiH3tp@sqC$;qv+-cd}@E8XMC}=V{B=GqJTpqM8(Smn?GUrlLRG?(Yy{YNB zo7gBm`p^yo$=Sk^;6l`Rpo{+6Nv4N26(Ee7h(cyGI9Eyd_-8D!i&c8AO<9s}i9`X1 zF@9VyZTt~Xm>Sy*2r&4ec9%mTh9w zMPaciVR#F%78-{j=e+MY`kUG zjzd9XLTF0Ylud3u`7>P3hOP@<7ksPul4fPSATPlY3+B-4lIIR=BZY5uf>27Kxsvf% zN}9&`$j(z7Ij^|GWWuYe0vdf;P4j`FAVi_ibQBG-(i?9(yJh8BQ>fDC_>^`5fxzsb zQEBH6fUm$4+hh$s>4+Went*~vwH_bGrx1?T=0|2`*d2t~SOqn;GI+~0jZ#Er*5(t@dQAtLS?=%Y<^mo}i0(n6NovI? z?+SJjgZH?TjZdFPzyLC`Mu1bMV$n*hX*bwdfI2mQHv;b{Jw;{Xz$2Mth$E3^^}7yE zG}X$A!H_Vtt^h9z>z3K*I3aPtM74FhF<6F)tQL-$uk($AEB)PHnt zdW*vjynk`kYWbwUKdWm}&&l;PL~HR|*PsEV#l*);PlFT1nj(+^ozRN7lev>fCxf`} zNstqEVI3lm&fR+P)_J~*D8_P6j%xneQ<*F4)cPi$nuyxzy`x(^(Ry%!qB?NYws+4m zN13Z1QC)z%O`7;{;{oS@oKw5(9GS943n3BIN|!^x_;nDYgaV=5hhyXxAJ^=)4Hs=w zrK91>mVtO)yDhb2{yBfj z*(|FmFpA02d_w21)@b?S{*#S4p;Ro0O;UY{^>j+i#^I^Aq_z#`6+5FimWYU02=ALt z2bsnfC)Z8{zXlWnDbH_}JPuJpSj$r+GhqEd2iI%HzQ+%$wN<{%M{3wM?;R;Xg0V{5bS!YGq~Rg6Ebe zKUbGt+;n~HgDW5CyB3H>@LYYmc}h*2#)SMpowemmJdW5>R%>VD-uV<!^*A-!Mu?74E zslVLMMxOm+&Dc5Jid&iHPdA_R20hw#dCN1u?}wM%|8mk#6pi>yG~mQklnInM#|L-3 zrcKH`k>^m<{f1^+GfIv8r(|vGoKkK^sHnk$7?8Tyn3taN>6WVsnKdz}pjK&bpX{PU zh+H12R6r8}tN+}!%#n1T@0-34_MHpktk~#1Ib#ob^Y_%gQIRjoQ|pR|vA9Ae`_%q) zkLQaQ`Lueyzn#B&%9_9OJh-S3I}b)@q_q^Z_-+4ri>|NEntX0gqQfr4sv8cAx(Wa zjTA#ep)oj(J}<=>IfPqI>RKLuj8BtG#-N$We;M=EuD|%McWctOY5kW^U*g6Jt!aYn zP@S5{;^S2z(6>QEOpAN5G$1Nb329CU_1KZVrd&x_Ap$Hvn6yQZ<3&qdG>nD+b!)`%Q)D-r7lWqj$KKZ$SH7(NZK}ql&6+xoB1o#o9zJ2jO_X0 z7**S1ABe&)S&=Jnr>pzZtsRN$l*Z3X&;FVBw&CsGB>k6$PrWmzO$hN}Re%Gw^j`W` z=A_LP)P=!`%_tYKG)zW+P<-J;r(OJpI^XVo|MKv_{q=!v_m3sBvQ2e9bcwalnnmM0 z3AaB{|7pvY-bJYqtubr=xOs74hFu4jZlK*9*92rrt$vfk^G%t++09?(0!20Mwo_=VdH`$ARULEfID z3om}_efM+Z`J)%t|HwGppIqgv^nI$)<8pm<8nggyAy*Lr?wJ=+e7-ec?u*S$^9w>@ z2II(-s$7!Bf{matG9o@M>g&Gqm##k8Z~HPJ@OFQwSG}iem~Z5y`CI^TR``e%mE<61 z(2M-^Z)xkdWGe=_y!?a3oWfu{M5?tah=`UCMlog7rCq(i!fh1z_HXJtQucA!INRg1b!J9)Kd6_)WfrHYT^!I7*noje#QK<+)4< z?_-5TZpo&pY#D748df;){ZI81f=Uhj*AhJ&GFm=B+4AAUdic_)TCB_!IfNZ>C1$di z<<=Vo$^ExYl#$?=2hQO;^n_UFm=3f+2Sx~WJNQ`z<{eJ1I+zfip;qI_oSDV*Z>|$uu_SiBUUOelF##fLyGd*lg%n71KQWMJ2d)!5E@p)bEB&9nCm z$J$wX!+7CCGN7$Xu$po_)}+%&&7oDsr4QITwY70Kf}$;=*ExR++K&#C!Oeq*26Pqz z{v%{3KH>b6mKd@`1h!Tq&(6fa<>T+faB=adSdMF!hp!`9h0b?^(7$($Md2zWkn02(i9%PvhLj-=!5^Nnn zLrFwavIeU==WUnmq{nFxn9Ug+3WqGhm=HT*JRj0)uo7C6$cq$lM{le=`eZ7jJgG@N zf^~U{EAk}O4zNnNGE@|Pz=6x*tX3R!q%s6BA_G~J0#9U)0SBo}j>!POT6+$J>=+^| ziA#E}F9|309soF$2sjA4{bdjt0)3c?XNa*PP7}sDuh@v-#A$@Y+{me5uD~q+G&K9c z)7Yst_p55QKRz&YW^O@W!`d;TlC`U5zi)j0W@eKei1HT#Tx!-^f&Gx}09hTI;1 zCEKh`w6Y!RIX+<9j>IXsxu{~A)AHf85ySYNjF!4H#e3Zv2*Tb?FFxSMg&sO^;=rQK zP4M-;H_UeGoi4IH(wBcY%&WRfm0lYWzH7oCnXmsGcH`;s3V;z!(#Ik!go}Wm0ml(S z9xJv(1}naTgQlrp$Yd=j6h+~EoaNK+w*FgR>y5Dc$)QX(ef`a@+?OpC53^`Yc%S>? zsnlQ}I^a%3)}$siIPso5YVJF7_3!NC&7Q$d@r35TGWB5Ks}eSL{wj0^sISQbi)Knz zbE2YTHY~iEi|Dj52#G>8L? zM@Nm?CVFOy+) zr5C;k3!8SnEO%{shwH@&e_a|+iNBdB&Fn5}&Y6=E9^vVNFoiN^h(BT-fQj&FaPZlq zR*qo74sC}nYAea;Y5!mHs|~NdCof&<<2p{>&cLOi3w!fW^sa|JCib#AlmPCE==otT z1g1kw%3t8$A;Ku^Z6z`1y+6s-u?72&l@|xCNf9r}ITk-@^U2LQ?!ESC|9}k zVdX&(wL{z&J@57Zb^ZFMk*8xF9S=Dwoz|(3eI8%Bwo^yo!x(Ka#_~NFK?v|Y^1qwb zPX68&|KIL0D_`xfUtrgqJYmW55vFHoV#)j5OMM4Eb?v(HCI0N-2J`Z_*Z=%+E%W`d zcmGtxJ5Bztan*QSdTGEmI zA9_dLeZ)=sg1d3{M#J3P_;sG2x+jcTgbXyfKHVAaRIcwnzTYF5LO&Q=pi@my?UJs2 z@b1e0_MQ2!`9r~j2OY`knKYDDxF5~kZRU-wS1z^vxN&-5=EH{%WB08MbkV3zNpToA zXEOOvbbr>$8B?@#A6$92cSGr|cawlObV~iYu5L-~=TH9*C03VysJXD-{G-o395;pi zmwMW-jvE&{r`$aKctS&vYk$_A;)uG#4g%Ag&_PrFgDGCF5S<-R?sxFXx^ZOlx0?Tk zB8R3g`1gq{ePv3&X8CuMgIx=Kkt`-z;w^#7L6+yN51Fg|BBkl~*KL?`EO^E8lEYam zW_QG&e)>ITur|0p7dDgU`u63ewhbeWv)sqI`q^X%y*(>k6VAIL*-DNBA5BF$9OU3G z6zkm{bWY4V;{AsC_F4Vf!_&G-a=P={`9g!I_^Z- z1FZ46BpZS)+n#rqj$Y~+4NJ~twH$&h2oC}6m|YO}uy8d%2Tg@cnFSxNMYao?3Z%2B zjVH4_S_M2P=h0vzr~J(>y)&5puCK|qHm_x(bE-(sHsav`h{4%WFf=QX8CjgmkS@S$ z3$!`)EetbT$HBQ!9R)+%3Wi#g0k5|#@kR7b5%p+cv*{&E6ZCljQp_^Z2mMz(X-93Nv!*+z9%H!=tKJDIX${xFBqI<2uKZa#@ta zqWKQCE_uBfE7(5qE6?64ktl6q(V7C4jS$l{Zv5D;U+15Bh&qb{bWd{*@VK;uJ+yHp z`SFQXofN%|U)(OmF8R;>mLuO!-93C}VMYqMtJ`*rmt@YBo=aP5n!F@RsRg?ZOQGpm ze--EUm4r~>+rmcTq>+jlnyQ0jc{{BbhwZ2`crtZxqA#z`IP}Gz&0NQ?k1I_7_`A~CRfV#K zxdkVcr&3`XU?Tx25u~}S(a?d5W;ilbAoi&>zT84$2Oow51MP!1Z~mJ!Ys<)j$czj@ zLALWTRk5p=r)Nd3L|fI-VaNj>drXJM&AXE!@o**Yc5{+Dlk|qb`JFLrrE*zImVM9SXZ+6kdzQ5V^4)iz;adxG$ou)(tc)7QL<_cy8NP^&q zWj`DdjA6*qMUIl7c(F9=4qP4<3-K70QiG?*Av~Fdj-hC0Ill}p)Ib!T&(G6f(NHhN z5YyqG|xcS^;j689-V8X<~R0)Lz=jFJ6(h%;c4G^1I|+b%pu*oR}jP4y6Plo{!lLqAy=U(k*&&EpoZ; z*tvr4?v$kptoK2Aw?ttuIPmaX@}j!aw}T`5nN1uL^daOWzs{`p8@X3ij-ygBLd0c0 z4Qh}0NBOSgLIk66!-q1V#0}kG0V<6`86&X_r1#56OPL@FDZ9WWLQviV?1B0wdR;de`}frs$XE=)@%bfb%Zi}}witvF3!Z9771 z?1OnjFG9ME*-jh{P1}fU$Yl_Dhzu)?M;9PyXQl~{FsMOzSku6X>#^ExD0l9|Jm)dC zbUNH*ykYg=6sjZYt%5s*R3_e_B=X6qy8X9%cX%cg5J+IIl4^VlQymw`a$(hh4onn} z1;5iUJPO7U&`50ncmh>dV4qenNxJ!P$U$4l5F%gb=^aL+E30oyAzz6KWlsD2)CtcJ zcoC!C*IwKD>f5BurvF;qKb_du^SmK(Tq3Idx&mT?KDDlv2=>`IM{npl&&y>-+oLt9 z)Jn~K#5hp4ar14(jCEK1CjHm)(q+lIocCX24x|T6n2@r;?A7?-{!{skv$5``qSnUU zMK>;IuWWnB#Pq-TL!z^2T{%_dQGvu8fwUP{~K` zW-Vy_!-)`&!$5>d%m6{OBt)k6neOMm+$BocYeEa2S<*3Fd~ZTv_Jsvma~$-W&b&_B z?Q}Ec)}9}=hv~eH;*{8b)AqL>4-FKC22+svXubgnMzWnfuS={+T)fH-0X>Ao-tF}A z*ab7S`Rmb`Q$~;R106D~$4HB>oS==)D*#uT#Lwc3E@P|7X#M*_+htpuWf#PT8vvtt2pP!r8EDU#H-#f8hhny&Go_U zKia-rzx3<7IM^$OOR+wvRXZ)??~U^0BVLZvm-Nb<C z>A?-JzAp2*P$az+8~BrwT65???uzB&EG^8OPkK-NF>g+9{%P{T#tAjQz-#u@@$8k} zEf)tq#8kc-JJn|8U9V|_TPV#DcmF_6-TFRIEtsay!D2NDpm07|q?YZcb!K!mQa|KA|?_7USi4 zPKC6!N2ZTVPV@JOVe6#o*LhW}uvNOq)T+0!dlm2dtD;^cPx$MD{f%`OMZ+^jE+5#~ zSh97J*{2;Rfd{{SG%XnKNU!Opp$sNILJ0Wq@Ii7!r&r7AgyUR#`aHTL1R+M$~E++Q^nMbGgVJHr7I#I$(m^z1d-&-U` z?Ve(-lswPs8$CXHYHeb$>1*+wFP9Tb~&#sflZp>J*r@`UG(sviG^}YLa{p!pqA$9qXytZ^s%}bK*}+N%1OWgZ-MK8J*p+gA}N-p~>Y z^tX6RNB%fKleTS2yFqz-Hw|#vO4Tr|und}CUuMtkCnLLIRt}e2Bn;}*wBP_)HeFUJc+~9ImS%c z71cF?pf4#2T>-0h-H4f<0!TgC)B1fQZJvy3pxDy%z`Ig){)eznb0pX4)cN^J|48YuKLwIMEJG7Y3T8r0F7U~n8vN|=Gl)hT z(LBlJD@SHUADM3BRn(QgPB8B%HE-N}-RX0c6JoAOTAis=BvUF<{BK|_4K#_1H+4LO zc!UG4F$_x%5Dn0sv|?MLP=YO+BH5MPqzR&E+xa*}E)n{)zu6;b4MzrFyN+ff^he=< z6-|{=Wj8a!SdHmBAUec?(`zanT5+bp`b^L#qYTNT?wvUA58gY%F(I+EUJ91P886Hy z__-?kDIzpS=psR^hvJ|@kAlGqkXW?HEaMYt3~jYezI4QP=sLA}{L{G?Jsx>@r`&QL zUvOP$etk_i%atLAABfnb)?#;0313d@8c_K)N1U3T&~Fx&PDFa#T#O2=zP2#U=KW;X(~YR`kKJ?C{xlR_&Zw)(4zPi zZfSCVj-BcM9G!by%l-SuKU-_IT5Ky>CAL~8D(hfH4r?83opf;MAhud5R+8j&W2=>- zSO@7yI&u^1V3Ir5%9Ip}Y=ti(qQV_=xZU^f@_Rh^%O6x9pS|DL^?E&@NRyr`hDRb+ z>FNM+0LcF~dktwx#^xixlc4ebU*jwXC!7uCD7qBV(KPr>hwrcmi9X#kro&f=EMV~{ z!r(9vOOR?I=Ko*AVj7B3>2~RmuCz%C$73aS7^yceuZhqN-gp+UULm9@kG#Hdph)-qGxI|~xe1kSktN>u_E+32^f|L^^U=6* z9LQ= z-ffB*J$h^=zVWp)zbR*L1H-iIGfmCa4W>(Gq02*Y z3fOmu^sSg=HAHI>Z(dVgpf1ix7m4uNHh*(+>7mXB0O#bS*Jod93*)aXfWkzl>+1~P z_rAOAr!HOAl%L>|D9Ff${G&0B0^j+T9Xu^+I;jVY*kf?4h^rN_=-_@ zp?}wlz$K=S_yqT;^oBf2X_1}hWTE9nnb0{lLErph*|xK32wxyfZ>-2ive5CiG&iB} zbPtm%1x$n_x6otp;luYneNjhV-7Onja`i_LMV1jGjL0{`SmsI->_dim3K*el_1zJq zwV=1TIt&T?Z6Jg|plW6hPJA)Yn1zJ=i2M8?JZtQ;_3{@JS^V;ey^UoH|0)^%`?%FT z=2(9a5EI-RQYvlkx%xuEI3hASTZ7l3jnkl zc~XCfA(?eQR1I|=kNnT&&Fpz)w|8wDOp1Ro<^K4_Kj~Xuu0K3+Ya#S_er+`=tBC)* zZKyA~_sd{g%>1JC_Cp^oZ~0pE^U$Qr;R9LvCdY2M93=#s^Qm%Ad+WZZA3wV} zZ?{e3pWmFbJ!koq_V&K$BU`>cxV(4b$(AQyX4Y=HJMTuygU3%;HopZ_3M_=JXc)-r zNT?Gpah189svgbgf~!AXtiJK}$;6Lby<~%9_D6d9nh2C&=L;?~zxq|}s}CjbJm1f} zJ-@TWQ6nR%NJ@dzQlH3mnd!|}pB@}ZICcE%qt!K=|NFYX`@*|dzOwI?hEDnrvcWH# zxM3PMGd>xA*!k(#-hJO@ym~Lqx%E;tYxRWbvyXZ^)UW#8rrKuyxfZdb9jYVk!Ry-W z6Y979?_R+Cd*n;*IAG#!U5@I7AtcQPmuF`lBCfmr>`A~5y-}Zh0#2c#$P`Sa(sB8L z!2c%BfB7fz)NEb4xj3n+y7Ae;2Up9V-)$_uf6Jrd>Fc-FnSu>RW}P{2GVKtN&hl1u zKk(~qfqpeXMMLmhET7I2xF573(V5Ss;aR%#l4sa^FZwMQBFwUIT35a_JUqC{X6f{n_Qf)bAYDK+8aE-p=#+!!5KH<>cU?=|eLw`azo;3dR>mNz$ zHiYCUMKR`FYA^IT8Vh>_OK%sV*lPJ)gbFl1ip<@y##(tlFqDRtW@xd|bL0I?&n!7^ zHbVJQ^+uNV;}DiA-fE zIh4Cj79!QdHavYzore#LN3doQIg(Q6a50rEMm%s-eXt7%r0xan+gjFLp)=xbiH2z1 zXagKx8(PJBSUS4Eb5?+@FY7~W<3Fj zjR8q1M-!R6?|Tz&@8)@;jOgdj*2RsV9V~qCP_NMA%e*zFEskx16uQ%f`sQQhdu+WQ zVdMYIpg1J!8)jR?bS9s))578fG;xypc^950&b81WJeDi95#qGwEF_JE650AXVx>uD z_+{Xvw`EB58B_vYlpq}8iRfH|fRO;t)zkqyVmwWO;2^n1hWXB3LvaT) zpFyIqHd!w7Pea$DADbDu;J|k+*URiex;I%~lI9^MXgWbhmyQv21Q1;P^4{bf`{>>0 z)#CN)ucol#BNsMFWHOZ7WH|*z??pH$9u7r;4FL>I>8NBKLcp;kOS_2a!qj0qCx7dX z?6gd+S_jx%qe%JZy_$`i*}290?;X7mrvr@Y^jAYq$Z+u(YpGBofFLI7nAH+R5}aEg zhL&M~IveQh@`^}13bBp5PDTV^Pdn87Ef+8TO|)Eusq(H#m0aV7<^A+ilYYpTVE`R|v5Sxip8)Pc!Hz+o%a z79nU9UX&nlN6;W~LXp`pHqR$G7PX#fl)011>r<+*Uex6ej;*rhSbMTqBy!~2x4gZt zN~W%!t{VCJw>mYiq)$evd-81Pujp-IJ`{-eVPP|0uJls2jO|>s#=~X)qtwt5$Kk*~ zJR`1N+@5ghXY}Api3`)WVFNxZ<@lwfUcG6z@au1mKTX_TaILk)cWZLri?GW(QZoh8 zkk7iQ@;_2oE>_EvUk&U_4YJl=|#ttqE_a7~sz5%B&ibSXo zAsE;(Dj`jVYQ4N)b+EJjjd76aCd&}k)Z&?Ef4<0?wR)h$)g8wWk?vVCM0r46RH31} zC4p!QLd0s3Uft=9G#oj8dM682WHN|L9xvRxvRjlC-n6oI$y9@V;^XOgLt7I=YjU-_ zDMIgH2eo;CQEfJ*QOK+_% zhe6D@+Qhh#W7#cs7)Ki}nZ{+oEFhU}$w7~7q6wE4oG+pS-^(J7+nLQmAok|LY`JNF z;KKdq~t)PnQ7MZ z>DJ}z<2x42>=_N1oIhvPuRoW3l|5du^JQt=wOzk_b4M3mt9|s!(sIcJZP{|`&Vnu9 zU(DLGYW&{DgrUB94gTUXtGNwd?Fr9H7kteey_HuzeKCO*k^1zy9~`s>`lxcYgUUPetqaL>s{dmqX>86Durr@`ZV*L=Vl~@fBOXmfb#l zxOLyCy6OrlJ9r$OAB$|X-MxO^f4ouUl5&mfrq5;gNIb2{%Z@B}SKC{(1;p)s@oejg z(etNfo48#L-~6KDOXbGTF9i`xFF&66FgVB6*4!dL&Dyhm^u+Ovd$WH8e|TH}Ys0E9 zTZaxD_L(|9Z_dIQx0~x1?Ei7r<>_agIS224CcEsIiu{pzbHC5~13watn>X5y={5}M z)aC>Z$Jgg3m<#DbJWy!k$&tIvwoHuK)O)hYnJjq@N;XgpU!NpwA1(Kp8A-jW0665f(HItO8Q#DJ304AYt!Yq5>g zp&lqwxR@w`Rqi9f#PpBUO!5HwtzQZ}@GN&OeL!UZIG@Mj3v2BimDwd%}f<+JkG-vQIFvH)3(t_kWqyaH1m34(B zmBooaf{xB%kYS3(gX=spP=uj!qneJ_bu9|s$@Gj;NRV=>7Pna z%6z(U%l{Ux5L$hmsq1{1*c`IE*}^DEhmA(hvn`+~U>}=f>u@6ef^!);#Rv@=ocsi- zJ2a3AzkdI<|Mt{`DmvtT>B^<1ms}~;h5-pRJ}q=pkLc<_@2ytdSXe@ia5@W1-nIP+ zz7{wvbAa?%+ELgYwiD#15|VW2dwc7L;MSAjQlal1zi8Fxp{mFO^S3s06?L`QLr-oS zte;nONEx}mr|fzdp|5;p>C^o?PF5FnIC@t@!m@L>+hO8`#=}3_hr-sLn-}r4<$mh{ zgOCa^DX#%(HVxDC^kQtSHo}Gj5|=&h*_0qgmFkh{l({GzIfIxwrVih-pPqZD<{?@t978G+V({vbh}#SQc;~*X=&q*-YD=8iVu zV#!uaP^5xl82fv7>d&wgz4B`lAyDNq^TfHAo^?RQR(Go@X8yPw6O2-oimMYWZ8DCi zXX>zb8Ob;vIPwwy(v}1hTeh{7h)tK~xW6o+3lI|&R-v}x4|tPBtfmsnJRKXEi~;Q# z^v)6msqt%RjU%d}xk!2_>+9+ZysU?~?ZV zaM)2}b0GUkfD;B#zHxbS0O(hg%tmx=gjVX$uRgtt-6K$=C;CroDxAtGVwo&ySgDNP z8qOCBGs=tTf)P}FTRm&ash9u<$<|~mU$E(<`_X%5uiz7!BpJW? znQWqKAcBJ#Bqmf1X=_4vD3xw&q2@8LCPJ!yIZMaHip~r*M8g0%frgCyF?0#kgTDUI?$b+N_tM; z6}V_M!3w_{&7yts%V$UuOb~Zta|w`B>B4k6JY-59fh`BMA&rOznh*Sf@E#;(g*n>R z3G`8nc~Y7?9ACLbn0`;1tZyz#P_Bit-4VR&6@cE3~`n@@Eor4MmAa?9MJaVt1wG@u2YV zmFBPV*G3!Mj%pZGr^$!kGt z%Cj=9X8$VloFuJ4UyM#2{{A1whMU{E{=T2EEwQb7*az8Ny4&nIrZc#=rY za5mH--y8G$d1Ge7js=e!w}&-YJQHiy-#qoXOI<(TwS! zdt5C?Z!%5_uqVQET;C5wXn;0ix4(%&ey?Xc{`tr&Z5A*`0kanY!EbEK1 zfOTikYQTy&#}Cx33=1(2!P@G6EZ&rd84Dwb$}_8J_6r_X#{O{I`?q85p}`VXFa2n8 zTgr>H#6$JF_h`*KVfNU$`O^9Bj^el1U);F9`RCjd?T^YQCuHRC0ed~t))9mgraFvJY`OFbYRJ?W9{616Ysks*M2NGG}g2B-$y(CdHLbyi-(`y zC$^1soLDh^XUVURr}lmJ{p->DwTJhNR9xU6eEukX;n(N$+-~gq^f767%VzC&9)fK0 zraU^#QrOgdGe+KW=91~s1oqJ`Ginmnr#4p`sx)`*hfhoD@0!UJmN^x1TZ=A#yT5-L zUpIDrcFN;}*GkPEmM84Wvsx<{E0znQN2nuMEe<+en#0)spcC?Fft>|6Xr`@(qLPBRv z;xB;IeWvRU*$dn=vq6dZ)kBqMHdaxJvoO}wPb30z<2-&(y7)BEeVQ6%Iw-eDgXHJ z#Lk&-|D3%iY<%Fa-M=tp)`i6Ap#?i*Z6l59iU<0pUiZCZ1u5f+I8=b3%AkrO5EH0K zgvdZ8x7ElakNMYiVtc$_#@QY?@}Mb|@0A&6N9xw659-~nz7SHUN0r9wgmgy?W&XROM$$ZMYB&5y+k*0(&$rIsLOL(Jcsdx-|0^mM0WS(*3 z&8ZL1&X~?_H%mIo!2jN(==KD3&6Qh}1g2W}mIXJVMle}PW3|Vw@6kN%(SJPOcINPl z5C45V|HgjR%TlMye@oXq-TRM#D`O)P;U%0Or=9$pHCC;@E6(cEqr=s_n9 za2gnO0NlwHhWCRD03zZfW*=9~)^KPvT3Bc)PFO}_FA6>ieSb_oLT6NR9OvTWub5i!(}vaNfGMO6jTAce!~zR>>z<;sH-cb3y7k= zW-gDLPnVFW(+C@;7rJ5#G0L2dBS7Ae2z3W`zCVP;JaxkIrS6VA0s{LUIvd9)D&=$l zEgcci0(qwkvZ$|!XdfcXNO898(Aslmwid4LtSwg_H3!-F#Hm$0p)e57MQgl&qeexo zTR0>%gZvv@1aw9*0jEWdbEMS@258qZa5Qf*dO|y)BMam~jf|%FeW^{@sL8OAxanVK zm)_ia+SS-)s4%;DU13b{!}x36UJT!Y{2-qKnE^E}?r5-?fe2Xpm~4S2(||1QaO7zb zd5#=?n6sgk5`3^6SZy`Ad7W4?#9{UDA_ttf(EwttI1ti8R#9>*My_pmPoOJhU=a{^ z!y%3+SMY2hCubAbCaNXUlo*3NDn}-9XyPEzAl%hNwk{E#d@}V{SaS7VL(Qy%tvVWU z2fBW+KP75}f;X4yQCW^SI*L#@F zD}X!^MZnfUaX31dA|hL@rovZkA|SBU&Wuo>!3jx`b6lOf@mXRf%qgif2nbRXlutrH zAb{WqD8neZ1XKi&BQVI%YpoL5VdN5&Eg!ZyA~*`U=EfjyC^3RZM_|x|O2k$h$}=qZ zZ!QzMv#dQNfRayFP#Ej)rhDDbhJh`|{4M)n(2{v@;{s5B4-Zl%bQ84gQXpB?X2@c| zCsS@+fVEr6cG5GZR^&U7r92|e2*zh6lGVO!l1c+lX3hOM9?B@o?#eBZuDlwi%fK(U-uJ zktpdo3NzvySlWbglr`Bb$QW}1i5E|lpUoXra|{agJ6T)sjSKobDelHbQYEQ#TWgZ+ z^xVs*H1`VQ#YjYO7QwCBZYGTkhWsjB6W$yXFC{+Siwk2`r zi*uWd7kT@Xy(+QQc=KS1OA(-mWaZ1FfySQ3>2_r;r6;|~MSZ;74f-NL!-23ufi|}# zxyrX*SW~V!tj>PAIhv^r3{6qTCQB1XQ%Io;Oy=ifLhJmuo%j5mkSTINN3#qe6DB2j z3_f$rboV63nti&B8%*ZSZ_Ue^?K0Z?>qkeF}dJN)ED&zp1F|(5Fm7+ z0vlGziZXUCYyX`4`01g^&K<2U_-os?e#txY%jNK=ITzx0Zra~C@L#~UON#hY_P#D- zwaxWwKb(2c@DqZkZAW7Y#;r*&s&(I3MmnwhW;gtxeCK(_V0TN+XN_fAXiU+rGanc1 zIJE8HoA322zkG`_%owxHJG*oL@Mub3?#{{G)=-Dg#T)Akzlu*@cfqW%C?}$K_s#Zi zw^q-;F@56l)3S>38hZalo))h&of-{l%j`BD z*|Xvock74N3%5MpA3ONxf}h?A(QX^JZ`e-XR$rC;*WQ`GX8KhZ?=N{GlLQ;GM1JxW zaf_0E`KCO+>3MMY{p_{>{5UZCwEXbTe?z8LeEaghKYonsyPep7zwg86y2}TjUa?vk z)HbvyvH6y)y>-X6w(X@;t4i(VUq}rpwGUUZ;=MR$omtkCFS|C|FT1+&^2q#waWX1d z-}z{R@v>SwNp{nL`>RJUy?A-HBDu~IP$1 zg?JuMV2i;dKtGiML~AC=M~g#7rz4VAm(E=dI;J8$LD!o;kba$0C%z=~cFyf(&bB}9 z^K_#6>dKf6P2Kn57*61gq%l&%C1nw>v{T+Bw=FY$fA(0z_w!{NM+l>v<<)ha>m#YqOd{}TK@L&jNXHjMgHdsyYJeJs8lbN&pO&?o;8L~ z?y&zsUw@PiRv%^H#cMdemknR2%iu{-fjq0|vYNMZBMSCxsP0)mIYbKk?eT(HOWER_ z4&cHwd2~9RGXMz`(BqJRPfw8`i02hlo?L*zZC##svBino3nC%-FF$RI7Hh*Fn_yIi zpwaaO`rSm@G0v+ho1nT1s<{A$gBSC=4apLYQP_Q(H@k<6UpIbFG27s_`>pSj8}%pO z#F%3(N66hGoG@MH9~-+XovIfbmJRY})&jUlSh z8f=cch^i;*F5(o)w4sF~vcT}bv$g3<<@SJk>u>Y(S&O8g z@nccul9@4hLat6;Ui5|)qBuiCxqj`&Jx^yOTYet7 z+4yEo`@fkHGhhGvdivMft%s9m+W$*>^Yrp}+3mlE%(r;Q%K*j+J$G~|B8y!ukDan~%vMj6!qXgO! zg97M6Ei<%$g=bRAS~|%-g_aIH4yKz`j3vViL`WCsQacckLW}TRi4*~H^RAXV{E|cm z%Z-$D$fdBc(|+DKVrYQI%ZQ#&VxmXbR3QQ@eVA@R@SaISxKsp<<1k(>!^!Nx#T3nF zs8`Gy1?CHo95qkwiD2Z42~`5PX-r4gJiAvyVyn7wfbAA*djk+hW`_ucIIz|m0zE>D zVlD*iiZ2=i1t!q#z(ha^`8Nuq$>$vBiZ`ngrzv9dCltv6nw%c`pnv~{$=pA~Is)pw zq6$)%?{wAW<ZL>ZM?(?E!SP-<;&du_s6sDn(UnXLjHr&_uH;DRz>KWKb1W0TK>NBP!geax@ql` zA6UIwi66r8iPP4J+^v>}AQUl6L+wb$fnt*rP+y<2D_kk>;0cklT_RF<03QxmXc?%l zI1px(>oI4XPSxt+pymb?q)<@;@;lE8C5_+vXiG(?sDnvClPDN`aZ3z(-t~g5cf9&0 z-%UO{)_?5XX~H$!&XPvps7FI3ZWGPiQSZ0^72-Zjm}_Mq5M&gZ;Ae_lXEq2e{3bCkS_CBt;Qi9YW=e4)l9Kx>R5|O|lps!);4T}P%DsxzO8BT-Qt9FbyzXjDat-$*1OS@>JL9@itN z=R_mi?%6c4Vm6C{hIbj2GlGLhip@jtBS12X+jMcbTw|kudbxUGR~5p<{S^R0e}giD83k+h`14c=O49(y3u_6}1xQo+ScwenR?LaR!4JWq3Dj)jF@|(6uy! zu>ekRe#&*{)Wfd>)28xECngJq)q#_NJ9Rwuu^QE-hmO}{N6$X)@>saC{lWLAhxfh= zIsA9_)nA%~6V{J!zUnX8zKgfv&EuzkOk5h-q1)ly)8qU$Zew#nqJF>=>iO6W>eaU! zqg#$+j80r!Q)fPuF-$v~gj?HESDqxz#m!n&wPEhHr7>w8^zKl0jWzoG%TKJx{jFWK zkuCSr7rv-4NupwKCJKs&jh|NHIZ*`%q0rZ@({iEPUhm;rQqqmdH0X;tqFEfOwx55Z zoFU&Q@1kM(b>!vX2szfOXv%afgqpv-;`E1kZ`c@GS?PUc5qpOL9=sZfmy{x+jNI zANMxx6CR^k2I~;0vO!qX+cHjRiUb6}HL8mxuisWXJfS=4M@OG^mNT*gjfM8QL^+9U z352rTp!Am9@I^tsWQ~ZWD6EO;RTd#V@pKDbrB}&-)sIh^(fj_8uWH_%a&gOGcmZ3k zC)W?l0{KBYcz8Pk3IejpL7tM*m6j!9#woZL>?$FOpbg<&qt|<7!}d`_4G~4DcO$J2 zQ8`~*ms_&?S^MYo1qyGt((VgU2gw);pXO%wxN>xI{Uco*Y+M> zHo5ZJ1+V&hJgEb205J?PzLr|o9KsJv{P}AGEc(}M`M$ku?dRNPFBd(1uh4juBPBTW zO5B0(uipQxKdpX8o8ZbZhJG|QDRRfl({3OB7%n&?+jPc$&i9-jFL#U<)DLg#Su}Uo z*si)3f1j8-(<@(|?)$gu(zuPOjnNSnMJT{s6|RXc3SaQ|yT;Iq|NXtV`e|zNo4vVB z!XN23_q{vwYf^v9#0!^p)rA{forx=6zy9%Yz&&rFb?qYkaTmh$o2^o8p) zC))PauB*xjC(d5h_~cbo|K#|+(+@ZQ%9}ruv|W!r?0Rc7u`hG;-=t%gax`@*?aps6 zpS~FJL8Dm4tR3ucdA*LG)^IIx#e!uQi~RRQe!kU7&>8Q_+W9c~)`&pWf+ zUcYJ?x87aaQe=tp^c1-S^q<&rec#t7%MF6EtRu(c3RGXBo^2Vvo;0)aYTtoV;Yk!C z4bf^!I`W29RA*e+1sEL_+q$9V!`AwM9ZuJt?up;J^lse>;`=Z`wy;RRH{qA{=5!Qq z1vI@ZkHy1e2zA7O4T2;UV4<1a6mtf4V+5|oFCw1{R@3?f*((IalhP$1h7K^HLuDOn zGe`!YFHyPs?vKTsDet{fjo`53OICgp)>4+Fr+lEW@ZjX(6pP4Q; z%$dG){XKeSYP&q7xlSKd+$%Imm+6mKbezYtuZ7*N(8wOGoh})Q*0|*uuX{j;(IMY_ zKD(&{gfw>LO?JUufA$s43VY~-J72pYY-(lriWfJIY6&z)qkfz&82SEu@J6Z=ZArr& z{i*JquN>wqax)3IN)$0LWN&h}H?=YRcKgqmyRJ8~_MKTzrz|`^vH5RTc8{}Wg1XbP zvxd53IVrLvd|1sCc_sZTyV=?zyy{1gzf=Z2%7YlMJV%ReBRNJo+mc~x@4vkGo$zEx z=buLzhHOy|M0}+55voZB8HKgV7uM%>#k_PhCt|FnG#aCZQvKw>2mZc~6AxTAyIkCO zCnW&IN!2+S7$sH2_h1Q4%Gpm4Tca14=rW|qUw&f8%DDHh8h2f&U$}XNuwkjOO6`pn z&}fk2OGiw~;Z#5`KThifT8!ykd(+)(qWcOv(B?Ui5~c&Q5|*junJxS8?7l6JJ<0$4 z7AtjRc5XZP?c0GfJJ(D<91c1C$4^Hi-&5~9{yt=K_}#*P|NZvIo0tVZ&c(OS#^W%K zR3ux}g^)vCp}?8-#>_~Dx;vMtgMyVd4UXCX6O^H}i3pjMCCx+WE(;3J$JvmqA+Klv z*}@!uINbW8>8Ng%qalJVlhxo}V0<|oi2(`@J2ppgFj&Q*9a&_ah689A3p^i(m>6mC z=v*>Pa@EU?Q(Bt5oOlrPB9gI;P{%YDwZxNi*UTm9a*;ek8&v5;$53>w-lEcNLD}&> zIp7Zg*SL9JKrakE$kgmN@D9&|kRxmkpzzM+K#?C5v-E7DKF6CTljcE5#g>L=qiHfb zyi_||BB5iT;ipSO(up8**Kl0ze8GbR{F-!h1c#l~E8v26QDl(M<+Afh#l2_?(j6p& zP0AOr9Mw#+GAgC69bbuMs_&%iG^5ve+K4l>&cz5(kPFAW9|rfKI1) za(H+Mjmf1Dc@rl{5W3KWJEl{wEz;*dAe@y6*J=}`Yz__e_wZ&jv3s|_Yt%ZIVB@^o zj@6fTF|V04T!~7$xZdg{9qT%94)?&SaUCI;-ON#BJ9d)0m6oj3;ceXMLg#dS7-Mqa zh}0{RQlS-WiB`l@*&=;}$g_766^c+G_(KK&8|Hw8#WfV!pm>F#sBV5~EGCP(n5@P0 zPPN+jWWAxq)#W=LZ8Er5wSJiZZ>3@u`+=rZ3r9mSMHVQz1BBXAebDrDSgqv1CLU(8 z94;<`jKHgd0o^#co)queF*|~&bA*T^n!O6o;(3NdMcnUsw9fTfoJ-=~X6w$7V`0uh zA@Nj(0B`dON5Ir3U5s|~6zmM}#OR=KbS;|L6LpN3VE{y_odanYlMzm37tWT0(9;!Y z`0?UpK_la#!b9n%jwbR`NEdh#<$mVHPB0&7cPp~*mq-+OP9)ZV>2c$9=wf1y-Mjg}XPtgA!`ZC4n~Jk5kA~I z9BJ&7Dj(WWYw+9_oh^w474G_}^nF1`d^trJc79S8(F-HNkxmx*B`$vVzyGaIJ-&UF zZhdv!%H>DLoR;kju^#Z-+dl5_aP{boQ?CDA*wOxF>ylmRKfKP=j*a!bezc3#YTH&wNim{4LvRMf8gOx%;Q9o0d#FxtUm{9#6b} z%&VuzOKVc<*JGVv9<)5+?(U>Y`TtUm4oQPL^hb5FX*hQx%Z#5DXeIKitF*jwZn2+@ zuA&Zuig)RL75Dh()t}Ed-%*A<%6_k2)%lNWfRd{4RwJCi3%7%sQ07Kb_f)eNm<+ma zAOn&&@mtNU;F-|Y$uQ7YHPn}sm#5lzRnHI5+BeRp^8zXc7~Ugt5T=MV}YKcclb6yQ9M zmE<4@einH!3%v+~VEIAp!QsxX{`hr)9ZUXb`rc#6Pr$ce9i zs_pi)W!H~f(NjLpsh`z+488BR_j(oi(Isj(Ps(@rdCyszhoAanaS(ijaH*n2Vthm544Qh9<}6 z*kxvxXYzyfd`_u~7g@Y2)UGOQIqCU|{=dC1>uzs8(D`HP_Mry`We;GFo-#?X5kE~v`^7=ZTt@(r=vb-XA{7rM>!Iu3`R~uC}n`Xrj}lo3}cRB@zUWDvBAcvEXA8w)O6A|8(oe zznvQoe>*vE$?4Vd=121aCWQW)fB(+j^Us%%#KT?b0XGMHSNzR?T=9;5VBSpsvv%XB z^5Z-H8t@3X`Obg(aO(%{IXk4H}e352X+ab+Vm)?#VQVCBDeR=jP7Ndu>(+wiqt-#NSE_1uzfon&s? zbaj2N_U`5)qxlbJ&+iTPJ|B~huJ53r;?tctCs*#fnsWJ9)DrpCL;p;!ZI9kLs28(+ zd#S3gZ}jogR@cM#_Rsv2pi>afP*FBDHc_QqN0Z0 z#?%|K!>R47Hrd7+zCdiHo=1CM8QH$FiCnkcrdp^t&sodbRZ71jeA89Z=e4^0`nm}F z@PMO_Y*l6~3OOALt=>E-2^g7l(DEr+h2OLFAJ1O%^XJcb2HF-B#2k;917QRhL4l3U zwWK2dI=f{tZgvVoYLAW)gy|z-9gPDux?{X!y!U-BxDi$Gxhkh#H!@xDbtop%#p)fu zY$9>?YG#DiFO_`rhbh)xNbnLH?a z_>8uu;eYUqQP$cI9!)o&oI0^&rgHx~^@P!zx{-SUk>BuF-&F4aL_nOJ=%|7WQm=e+ z>|diddzGdo{rV9%rX+@@vrYAuAFk2;X%V3=X%dV^St&<5FHiUM*+g`DGc76tOpmvH zSuph8+M>ZP=T(b<)+5izjhTUCa=`gOwTOt1_x4bUJG1e+G+?DL$oa$?e~CUB}fA*w-*(UoF@vHBW$%}URYDc zg(}IDa9=AQUsXv4)9uNYiq$Kwmmbfd>Wke&b@1?Z1<#N>nY!kb9oOYi=lRX*#ixpX zJqWyQP}CtpNf{(1lTrbZ`|#3>AT%kXp=c6G}`^=ul>RUr#5u* z7S_yiZlT{67L|WH_x+OY)-CU7Cxi__I;TLqh)56##+uIU#+mR5u!d(s?7|a1n7F_w zfTq3>F^8bp2rdFgCn8G0OM~Zumb2441I!V!F^){Or3*DYh9hnOfN9wBe7`IlU7C<2 z+S%#q;LVSYpb`!9fj=ck*FUCUdpBu&;aqYsXd+_hs1!*hjBeS2W#QL8ba%nkr-v8O ztrR(g78Npaq=Bj-J)e0c@nu~cxdkK`(sM~AMqyQ+XESP8Y(ObUg-I`mvQMAa?vu+h zP_`No{fJe$d;t7DQdCYMFAvQMRZ|%pA9{M8#Ejt$5eN9&sE8y1#TF$HmmY=B@ln8;7} z_tne&QmASu^>YIO)`TpbAj{Rm!BsPYt@f7ZB?zSoc?M9)dFFf&F4xm@=wgJ}JsS@R zU^{#?PV6vSU_w-5D0mHU$ApYPMBL#@FQCfk-8#~hdQt;2?N**OuG;fFr=ZZep*OJS zZQaARaqDPqSlh)-kL^#XR>bw6E7`rSgvwH7%KPWn4drKQ&t_0D{a8+u{~cyx8hO!C zV%B0h5&GM?IVccb%e1%@GJK_>)~JY=IwreHz$FG}V$KK_LmAj)IZ|^Wa?&`Vd4K)Z z=79DmN46821WcOP2ah5G1`BAU zM@wZ2YK}BlN;jt=80?6*n&W5#vMfAAFzG-U_^qyDsdzY|imAjA09UQ$O6R9n>aU;j z#A{QvaJw?h-=^)me=H3^4hcRWw0DF1nJ%q|;^8Evn&1g)GR{`Ul{nOJ3#4^ndP4F* zlf({=+n93hT?atw)L3H4u|0Zj^9B;Gg1c zO*g>>2G%b6QF+H}5mhP}>8{gY(+g{*(?t%Od!4Ip|lYO%fy{95UB5!TBWwFs`fsn#;8 zSG&ER-a}gdctuu)$$I&?+gkl2zCYZX-xWGA(Ix}=h~M^eFo@J*B5=LH%5qtp8a&C1 z37PKs^rIVQrn)C~y|=tz_F$IIx-8N0A*$c=7G8PF=IxE{nNIVrRH${b{6-Kg;d#oI z-Eq0&Mm(tnDqEW@&mhY45CU7|&O2rH{E2;U1hMofkcQ5iairyMh*y=6lyvEsZ`Y!Vsh)P+{?eG%ZTH z;y0x*CqWU}H|f|Paq)KB&5ONf>wJBc`=Xi?QU;}sH;>YK@1q5}60TDiXFbBiS1%2- zixkXJ=;_J4_N4=X4?`^s?RDjbJAkjTMkPx^dY!ytp0<4%= zuDp!fvaQ83<2MVD2>EUba!dL}nWy3|wO#6GM|Gpc+v&D)cmv5>yvlyu`s%y-ZP4`2 zP0w~8_}{&}xojGdssI9YRhO`6l;cYZY6)*hT)n*XX>y%^K=FV@^O=*QWxrZVlb;#` zO`>Z|WjZtY<^lh+Zn*g(rHIiDz#RnZp~eh$=R_QT^YrkqIhxJkc%Ol()H|PMU1>f% zueMA0V8fdL!if)a7S3C<)z^xYAwabeSih$d673J1J@&|_@Y@-q!P zZcZ-UGX83N`xCo2A6h3ro<8v7{g}7wE{bim?i=UV9sG+M@9rPqpvyTqT7z9x!>$8* ziyB@>Z8|vmVc|b_1{YLUykD1fH^-hDA$~`0K_1-7{LmKrWtP>oh9Thp9F-K($HQ(q zT$p*X>+6UA#xA{9UFd)I&7<{eM+kF{>Je!?Q%_}xPi4pYhOKXAzjUa^y>O=S%Tw6{ zWO2qw>&Uz8Q}#>#>$tG`$8g5%wubNF$L}}l-zKk|e3oAS>`T2>Z1b8G-|l+sXdS!z zDcAV*v+GM%P4?`0^6mNd&0j4Rd=6gHJbioZ%@1p*mW2+n|2G(pIi4gUHZ<&e(y(*? z<^_NFM=bsIEArFr6VXc(pMPt={busbAALJh=Y0O$+_;&4J}l4Ry0>R&(}TZ$JdC}t zY-wwXVq0Z5JKLivzULtt?dA?2832Np(WL?e1fLR&m!vz>>%92&P+NFW!-~oN@u^+A z@Akha3Rsq#aBpJKp1j=jN3Lbbm(=dlMW-%m-8vU{->*@oZ$+_9a`nCY^8YwG_i(2B z|Brt*vo^<>Lu0CK=2U3J5NhVo=9EJ@t1UxnB!$j~IfiB=a;Th2MRS^vTGAp>A!nUa z5-OE%2lad3zyI#8`|7%Ou|A*o`}KN0ACHBUd#B#~FLd26k^a9gyBD7y8~w8F#Vrrz zxyaC^iFDhq)k-GwWp`rA>s@6EJ@cyObK0$M$nI3njMkWp5L=$vZEI!YXz1u^K2tE% zd?&EHGseU7d7CLbDk56qIy%yi(q0&bUwoQEXC$`1< zU2$*H$Px8@a=_}2IX8}^_@TfPR-_2Wb22jq&z-8jVsIA_UnEolI|xp%N{vEz=5arX zm_yzWvcMVZFKplnm_aPinE;h&2?)yvf^2rOL`slh0rj6wd(7CesT%KXhl*D6BCHz2 z>OylsC!QrEl;}Dh+}-)%*-pAwPvFPulwbb~()@7dz}akOW_F$g2Vj(_81Vle2+kNw z-zdUHUPNP~HWTxtv$2I z9oTH6&o1v5x)pU_govp$GIPQ!((^U4-JRQ{)KoC1S2NqtO)5p*QjflViG zeZ1#!ySrudQS&Qey4WOWNgNom*~;G|y?;);YcXflY3m1tw?&o;ru+G-cu8;Cq(w={ zu^sxv^SY-oJQ|@FBUHn7If8EmjR3*^V<~z=VtYCglwt}reZqL@OA6boW$s_;wTzsU$jp%GCQ<~^YZ^iL!*5z}K}%z;jCFhZ#a z7~aW15wEG^$)jN)2I_Qp-8LuI!D0oFmP8>4nt%>Rv`;4JllLU6^;ek!18IXQg|%(} z(6J2f_Q4=0Ih||?P&lo2y7JAeXJb!cBld_NURHTvxao)Y_p1U zm(*52^iXjWa4hf@;Cu{Dq#J;eA)sZ12ylHRGJ$Ih(qSWbl6ZO#)gP{MW#WNOgoSIh za(_GN>+toc{?~`M*X&EmeyzRf3^L8|O!A(TvY}>c4%G&R!Mx<5&Sqd4DnysNYYen4 zbQ{~Hvtwe;C>^0!(b5<``+Y7fES^ zC~_PHB*3f^0N=nLLTLeEERn6sqfo~f8sN(C@@q1QcPONEZbuKt2ALD?KNltWsx!+%rywQ2VfKIQ8^@e*-Hef`P9YO2JIe zaZ{2a5kq_LxR{6pe~XqFFi8RA9*%C$-uP5?X=h z9tcz93I?IVC^P~~MM&Wipk#xKQV|TeD#gd?L zgaPi}Lq7L9&&!TQ=_=P8^5}l6=HdBmP1|J(T;JRP)vFXLKr!hIQdQuv?3?<5=Qg4L zzQvus-+OE>U%AGi$oc5qLBza_m-}WJ47>z5(gJnudYO z+R@7%!Nba#zF8Po-BC!DIjU!V-Q>jo9brY z8);-KR;THjHG$)@ng)l&74REWdJLlKq(4uto_I3h+gkeIRrvVy$H(c5^X;9(Dj1=5 zVU8}$AC{>|m-4_~2_D3P0qX=ONQz1k3?+38x^N6@Q>H?`C##km-FGOYLbt*0%sbrg zxnq=gpAG29njH>AtW16=S-L|9izk8$IG!9pg@{}{A7HVGFr|Re=y&nk!q1ZR7!sVO z5d{hGZUnXwSUhrQ42WTDt=0Exhi=?H6KcaK>6<;jp`ZtKcU%iKWjt2DZhLVz_Yunc2f)Xsg*aJ)SIJ9mLweqn4^ zOK&et?nUeQ_{-Fyma`Zl)-beQe(C4)*tiqoyH;i!4MbemB7tg97eRrf=zo9i88_m` z!VS^N==QC9&2X!#hc_voUeVO5ym0^KotEWuM`x)=(H8po0sAx`Tq=xR_=B;$Gyk;Z zM)7ZTb(b?f0huJD3gq0o)P$o=qqknYmA?7+xBUC_Q*G=^j59isvQ|-T7OhECvn)3k zkmMgpcgz&-sp~!56o1nu{mz}8FMda~PK88I6vcT|u1`f9=*8HlUOj4kYv$$l?MuVa z8l#Su!rdu z#nhMr`yg81U+zuh{LNPuM}OY>mcDy%bm#PDs<_3Ov}fdTW#QSS1LdcFY`k#d@dzn* z-K3Sc)8XUd!pVsXTmKIDoooww{#keJACb?wQ$H3D+&NIi{b69r)}?vhifZV0Gfd@goo0^svbuvjxvS&2T~Jx?%iX%J%mT1B^X(voSmBghTN> zguUOCIvE3Y{}K!xtP225oW~^x2>CiFQMO2TgW8pj@AbEqf{TMoxYa4ms=?d{2e~(% ztLJ*7&YotLgp>uG?CZ?1AniqMP@tm>cUJ6R_I-P5W&8D#Wyn&(znH%x5!~q$?yb)( zZ6*&7DO$ceeP?+0pJx{qjn8?@?hsY(@VF4HJ^87$LOzK^ji-upjdKT-vSKbO1n!Tz z)toTPI*{;ub*8~9xQd1gU%Ro<|Imig^>M!Icl2;~^m|+wvu--{dhADhmd!%P``!fG z%9cy{*Qy?&YU;1=_ZPQyQF$03mtN2(Q+VWFUf!X==LwH}>~%%04T}sdMC{8MxGg_qelcjmCTBit5dinQNqD zY0XYr)2$_|m(NV7HP)D-rxU!Ex#!Y%pQGZK46&!Vjq3G#aYpB^%Eok2dJA>=&>%q@ zbLH-Ek(PxTrzU2k>*`Uvy-zzHPM*9ymeZC{5V8Dlyb>2;Y9=5^2(VZ)kMhAtSx5s{ zWnR>Wn32njFqIp323UZDP3lBA0|VzSxd|H@+PXvuUtY3HCP&vy{+;{15d5C<;?vyq zM13@3AYI4q9CKEgOOZon3~X3nu~#_UJs;yjkW#Y*c&-AI=O7}XJ)88Hr}cfr{Ab} zbQ%e2YvYw3ap{2lrySLbHYlHvPSq|1Ubh!tQI~s*r?FJF*o^Fbq1W${d^K zd3Yy7tRAcfRFhy=#*$a~@65(>1%(-QQUitujADn1b&2xw@=V}f2a3qdyTZFDpi#(# z@D7_m+5qgBS%QNT26?*U&MGKuHr8U$lO!Udb@HWMY_0-YmY*ssn`)QYE!A^ZfeN8j z3^+FkC;$etD}SFCt9m2NU}y^zC&|7GhY`zgEv^~TEm8`&0Io1Oro`vEy2ORP_ud>= z(l2gM#6j5-Duyv$<4h#0vG@RzVrFOwPG$l^9tYxQH<0mcfg%osX?2JxX!I*{2BwEvh3FCU`IyHX zCW{7O{W+!4PWSy;lA?%xnH-6SL`oft7Tg+6q%?}!I#B>?g~wj5@|N?#?2H>pFaeD5x4v*e=&Hpe(smqVxP1k=+WGXUG2BO zwG7h@vpf}3X*fybU}PvKl)^U-r9Ap_T^w+5cknwws?&scC~^`@B@p;z9njz6LfN7m z3P9TfW&77gj96(>x3aB5nLT0I+97HYK*<|-P`o2q}8g^ zNiDDIdVYU$(AxTm0{XxslY)X2Q_FVJ`1n=Hzznx|Z4?s~V8+DgRv;V^uP|}}aw^2^ z23<#AHG`OkK4!(WrY%(A8%}AavA#xhe;peSj^wUAR5BKoZ3+qRI`cRpSZF;3nHd3U z`LG!|B1ZxwkB@Ad`Qm`7dJ(w=Q;Zg*-Ev)4= zdo8FJq^12?be?XK{Oe+cF)`SO2u1ct^nZX*P$&c)N&t+OXuJlS8zczp%HzSQ0c6&} zJ`t>a@RL{`04Bny1T+egC4h`6m&U*;$W5&}Nl}%}(nhg?x0RNmrA8!sqO$GBl-NQ4 zEhSxn-w&n{i7}%h%pfrg!5bovndiq>m`CEFgQ@C`YhXP*VCUL^V9^n31{GNn6`_H5 zh6IP`(Q{I1l)+;8if9J=P=IQq?l=Jeb3w3~#&{`$lXhH^-|6L~?qpJdO6m?nLP?G+ zD22wtV5LI7uDTbEL8liIyzp%^{^K8OI(N=R#09&rq)o;Aig^-y@$f_4Fz2gA7mh9d zet+Q3`;>L7H>Ew3jAZ^TOh4Oi+?wYJbg9J}W@CD$fXTaM|$pAdT^u4Y};O7=X%gFn<1@Vx6;eo#zmUq7IzuoO>H!~4nxb=tYnSVJij=uhpSvPvJ zO^xjWIvBYwZRJ#*mi$AllR&##Jbjel&q;2QLVB38Jr?DTZxppPlQgUJ%;9B;te z7VuQS##8~pOEuO^x$B()AxQTt_Ws*ra<2VHvrF8e0!YV|mhA2lxuZSWcI^1*XzudK z&XVW<`ZoT#?~|teFsC)3O)_wPze(4D&E`l@l8;DwbO?&(rGQyFsUXm z;L*nubxW%nv_BR#cMG1l<)?8PwPcNCSqS){tvVE9HrVhH5j`k^mnu?T28;s$944t+TjRyzBY; z;f%APWjn^MI9b)qcEA3g&Vdt$1J-4~UnuIIkupGTACxlyXor6#wU+txQGP-~LMxz5 zwa@Mis4~BZF03@hFgL67H`N{#6}@OUe)x5FZDfndX=|VtDU8C~2bwVeE-?>%&Go>K z#>w5k`XUwsHx{pJa&HQMFnBYd+Du_v!q(g3ILp)Qy>i=z*_|J47Iy`j^o2guc@gKo zv2=ee%GJL1$`h&CV%qVAqn}($Pt^I{Qo$+v&D~4U-hOrGc2#n!==4C?}P0}J1kF)D<7?X@aN;33tu9BJJ^U-a2SHX zX!>Mr@SjyTwiOP!Rc~e>E+x+@_zI~o@3AbkN|IcNW%MIPYeS^l_8dA9cqU3cdg`p3 zl%^CiHt<0_o{SD)P|dLMZuvu3okAK)H7@Pxu;8=@4lEveaB^4Oy*$kUZeg|$PXDHr zYMz`=#aaLD>*q=>%P?UNPoCZBC-rpICA^K{S1@+&*%xeUb)+rb_QU;4OUguBbC=KpE1@bE8KAIiq%=K_VE*@tB zaeJdq9u_6OuuDIF&SlhEH8oXMxR2psQCZwqvop5T)wqeH{bKC-=2M^E4rJCjB_3{W zU+${zNO)Yf^_G=EWluhZnD(Txdq)-++u0C?s6Kmfs! zKSdz}Mm`@dp;EyR#mF--(hba{fYJrUu6$CoGBof$*89q#@IBlV z7#`1P-sLLhbMB7$*9%Cc-nalHyEM;(KySH;OO+Jf73R>y4lW#g5Ha+!aymDMWF7T; z@5haGw;l!uCG&t0oc9@-=s^FnRL?e80rNAhZxq(a* zdNK?rY5r!cYzZAaCtz4-(#cydz;82n>8kSW*)&!C-CrKLm*|VjPmJ0nepcRoq&I!) zeA;e9s4^nU3t#R!uEBy2R8B4d!Oi_`R{Rs`DzuX zr+c@}&E`eSEZ2P;T6TU`%)lpAJa2k<;O|hPRnMSHaN_&vbw9GeDcfgsFV{DN#v_}B zfpcDRv%PITB!VacX9%n($&e;T0D;DZ5I|aCWFvA?l_vsDDdZXj7(gOaHJ=Ql`}+e< zX`WM{KVV5=Xt4q7b98m!7-62euO1K19P>AW3XQ5udsr4%{A)Jvn{k{xZIx9a`h?b* zbfFNKjARj?%SVvT3Y18W`~AN17Pwx=0vsx|tMC5u-JU9mCms zWO3fY97q5GvwYRaU;$Q0c?^WA5;^rZZs(0P5rAR_t9dyRBX)_iXOO8vH$mg?`WiVv zCBV5->B+BoS0`Gs^&&`Y2ZN|_YUYmlo)Ius5qYy@^uU1`j^aa?XmVhj0p}<%=mwl^ zjEuu1I-G*yb0IK$0jWX`mqt+YX3&%D;TRNOhVG><3`sWfcH|2L@Bru7f|z77laV1H zgAYgm@E{{FSO?{>|71TvVaWtD8Zet?V9lHXzEw&`auEbTS&-`$lNA_n5H6AOjM*yQ zd$o7eV;=xty zp#qYp@yBcJE+u4WFghplD@DxKPG_I5c~sioljCyat9jVw&r<25+3&b(=#3?32Qd{p z&U*Uoa2>u{fBLrb3n#zIxr)V##XTeECTbBX0Q2#xdpxgcaI;0JxB(Ul1q8FRG4Rl! zOBgDONEnLOLa=n0W4KU2C}Qw9cz}EmA$q8E6fC0;ff6Z>Nx_}LorPeG(Fkm&unNNX zt2jCu7YHBvy84>BN6&KMzWpC}bPQq)M2_gLZ@}7?MUtR;3IV!XqpQ*0`y$GaZm)JN zO(Lhp*)vSr>!uS_LbH|>kkA{u{?XdDj*nU;7%h_2!sYu!(?^=i4+<_%kpyU zFJgFJEKUj}QwYYc8W$l5WV6ASlMQ;H2ByfoVj2UavoK)Y%rk~2Q8MBxUh?lJwngfj z4Y}a(2^At5(bgdD45sHv_Siz;&?RJN!@$2Wst`u0Qi0HsK&4AI?pwvu( zv+-nwMt8srSF2@|fry%b4kwf4Dac8=R8zjll$D~(CJPWRX$-MSAy)=m2Az0eOf|1d z@|(R<9XnIGXlGx84F^|;5Gon3R(e+MI|ZlAQG<-w3!^PeWQS600UHN;tbMV5}pRac(J}$Gg&GcIuxOXeAv;FScGDCq|?N!p58rR>?Z4yBEdHJ{G z!Ks%eb~E<+r2glzu^x-R3(uVV*LuuUmWDWf{CDEl2Z@u5!K>Bxlaw?ES^{27aoH*_ zr7@Y+%?%F5SPyaxFO$YVk`+*(I*bLTdNexQ8-!e3h3l&*PoFB8G+4dM2}O=yB4=M0 z7|YWME_w39fqV8>zL+w4+ntpjGBj^QQcXGH0l#9Q-f?7whr>nLsv%x}rl5Pw#yI`B?iS}tly!y?g1o~o9~{|P zi$6b@=i!>xoX&|UqT~wx|L(7;Af!<>=tbcoF5sEEdhfEjzHM&7e+`8I`WZ5j^577~ zfxtdS4C5<;yDQnNKpeP-+-9JohV>_5{2MdB?~sB>uD_3TUq+|;wVJx3weiVCj~6Ds zPj|fWeVd~{S6l96XnEn-*leB8o4Ul29Gz*pIT`a`|A8w3m2HAk(#o^XHu0AnH=HK!;*wf9bQRec{ocy4@%K zS99mq@XUiKpNc|ko}o=v@2kD710C${9FvDub%eeJ9k~_@^>LuV0F-k+W5*kdVt`L zc3~Gy4PsT+CmHuu`n1@-Hom-)vh?_Wx%&^?Zu{|UNKGZaBrQ|U3aq8uqYJGkG@WMu zclvVq@u}874})%j%fjpLyB5ApC#;N2r_a54pbZ9bUHtn``ImNh`?HAS&XJ)yOqF=J zm$pi>(Zu5;A9a7|ZT;}=rjK7!m)Tx5KF5BijktE)$P~#YxTA=C6^tC@N*~*6UD(v| zJ?4q?g^1kNGR3UDNS#lI549bBqU1MTQ57icF|Gp;)2@q9Z=sBzTXx87joJ2RXW#E% zr`V=YSLxPL;$nWb;QY=HSw$|NlvOx;ykWOd!Y>A7apJ)N`|9 zdi+`PrRV#ptAi$^vw zLT=}zW=5sZaQqxK zYNow&@QgW_O$zwN6bP=SqLub#Z066-U4N?Awly_1nI`rqDzD`0Z~eX)-T8hh_Js6g z#PW|H+smw|Z&3sq&lKypUVz}+GYhZOzAC>Lv>4S|-;tuN6Ulc z+Ja*Tz%YZ<4o?t;{cmU$#Dc&~BdQYNkjz!hq=_lZO*GKQ=D`TWC>t7aoDM~@jRwuC z+$X41UiSRq^H@2=7>-TU9B+(5sMWBz^-Ln*;mlpQslMGLEaYK)P`T~;%lIV`3?ava zP~MCrevahG`6;so8Y+k`23$h1B2oaXaC;g{avGv^dc`mS$jC9N=L}2jg_#(R7F&mb zfm~F3luF#5Wf_}nnlW?bqw*PYWVYa@8-msKQm9xlmkH)EQnc^-jI6*z`^CnZGC1b? z*e7(~@bfb>JNTjkC6!ACSA0o>RR}SYV{=!kS4Mc_I0jdhlHQrS6!!tjtOO_HjY80Y z!Y+l(&ByplS(;=nmyGfv5Y)N=_?H;KqK!GJxz%iTWu-Jkr5v0Xc*GrW%cluoNJJM2 zBI>Yv#V%eoWEziP+>0Y3Tr_C}T`YkHn8h$>#>-|?ND8_?kbIJ$AqSEn=s@hrq77Ub zpy2>(WAtnz-GAeEBQ2Ob?vK;a9n0a|HxP?bFc2QvN?p}KG<-yUvIeXZI|HsEcu z-nJSby1RsG7p1=CDseF{p+Uye48wcC&}`q+<3XcC2%fxB9^unrtx11Fh2rsSb&aZm zcpa}A)u3V!EeGjcJrM>)&ff7MYp~h5L}bi>6sR~dUed#(_(Loj&Xw+r42VxkK0W0W zAA5JFN#ou|2R`QEqpWn(9|;fSuLabO0qD`oaSY`MCY)5>!7+=X)yB!iS1w_a zAbFUxP>~K#${{1Dj4m+-3Bo*pfQ&^FL)8Q<1qfHN0XvA(GS6o*C^$)x00QoV6SX(#*TvPH!A=O` zdOph9kp%#O;NTCIEEt>)IKL@iHF|*Egg|3FoaxVHo8fB zt@f4=e|F#cnezAV@W{SSY{T_&y|OTzTK zk=Wgv{;$7md)sgELfV`qHS2QC2t8!quD;~kt6et;PsJTR{HJ_(;^>1ve}iuS%uIRr zX?pSb%Goa$(DWRdj)b>x8g z5ktU@P#?`ScUPXFl5X9|SkC;`O}=Q>7Un)oviW-KFlMkKB? z+PsTL&L2TlHrN{g%(od!CrKC0t%ML%4HBSmj6ngecCCKpW+irC4-a%ab&iZgR6`CV zg(?R#B%&CQshz3kG_PsqH<_qc$x1WrQCwFNN0kN+SSxV>+vUO(?LXZ(!LF@raO-us z8qynPJHKZ#=<)IQZBH#X9+~xth;ILzH}tnH{>8M#W}pF;(0jl@DHQzVh-Yg=9mi)i z``D-U?C;brrKTzL;y4mIM~~4{=d}BRc-Qex@7B*0%C&Mm9Z{qGX5(HDK_EQ2TM#`f zKGo_s{j>hg?Zc63^$hLl%m>Y0%^aL>)748Yfi6L3e3nks9DlqfSO58mTVG6v?484% z2epc+;}UPbLkZ6=6m@>x@chIPE470kU!6HM*t0-xI@Bxxb|d`Mo3UDhHcbf zF*)`hWsM7ZmK+ja7TNUc>q z#oW|t5sWNQiD#|yR#Rn0E&aW6_TZjf<5$}JmGcH_L$su)Th=~{{MgzW_uY%#wzr>d{Ys2z z)(YBBVqE8XSeTtvx)<{J=F;n#>+8*{VXt3V+WmUB>(^Pop(DRTfc)+S;F!Nk@!*#2 zT3DR^^=(JOO3J#pnVIy`t+&3NOR#+t*|9vIGp8c&%4p2<@n-g$`Dm-sxX!eV+@N71;S$Ux_nzE;a`t{f(LSngzIwTzvT<)& zSfm`W;~R_y*y;-_+{i)NRyA73m_%y zINAGRJ)D~H^@dFWnrl|2-#%PWshf)E`ftE)ty1+H+kcQ<93f7BdOPYseEf}T?6<^c z=Pe(aZ&WD{Z@4|%{pq#WBtA=50ggvQD+%-~!&25T?Tp z)d4#}BTn1X$L*6Q^QR^k|19+5OK$v6l)k2Z^v;U%cDp_2%cf3r-S6Cb^6Suzv$N@~fVN&)-;PjeH^co|DBJ;6YEqr(LfX?cedcWg_ zdb_9WZXU3!>*MOl6oKHJro1KsxG-X`_AC`IpKD*C&!%j8@b&5FeY=ipOX*?n%#g-s zf9!4TW-%sl;C=!rQO0I>gx5cq(z$SI_VXV6k2IB0!=WVI>qg&ukDvNl?Y8_h0T43Z z?s3Tz(4Hi$%pX7gFXlnWjn5g|j^ft92x`vG5bz=DNP@!^;6Uzb3gDU=Ah4;xJE8}Y z>kJ_X_Cbuow+uF$22|1nCTNEeFM0A@u4uqi)KnlL|11(TJ}NN;BbO^1Kg!r|T9aXp z;*%$lFbyfIR9qm;x2pKGeP7MSi3|PZB8z_|b>l}rAja2Rs5ysATV?8NEtsc~F#OX1 zLyB{4#BN8^Q347Bimwn+#t2*^nly4y$f<&K0)&b^bSfO6>jCe!(HI;>M8WZK-La&Dojb|UshBV3SAP5ejbs)}lPlgl=&OFYx0vb_{dxwqfC| z$KkWL5A7~a;C?&*-E`4nL%~&yoFNSXW@#|Mvfu&?6@=v}5b0vADUMyYpxXz7mgO|Lkm zCz^Lw(W>mtl08wW09=;BEfu53sbW3>YRnU=uu@Ry0-^eqBm}`GH8pHCLazzo|MdH{ zFH_U+|3>e-HlI_{N?kW>x~{}555aTCVUQ`XP?XKZm!#FfZ%J2;8lPktaKIn5p|N9j{;FR)5 zQqD06FnCM`50GIp5qL*>vXd4QI7pyS8I&OeFxW;C(EIxWArSyc#z`@zRe?!=C?5ky z&_P}b4nwkO-Z=XV6h8^-h2%>3dJ%9`YLV>HMdhmoNkCE11qk6h1PjJWAp;sb9>L3l zxb&*K3<$|rgv@w(6pb`W(sI=RlAjTn`jb z+(X4MktqlQ4moD7yaUerEYxwlx%HUCGi|l}y=wR9`;#4SvQBmEZ)r~H=zP9xe&G9&@y!e3 z}nxcE=YCStLq=aLOIF}?NntFqSi2-}se);}XYi7yvV%{{MNGjrLt z3dq;{?0%hm@ha!}LeB12_7OAJ;yM<+H~8~a^s4F|4dpT}w)}Z>r#+(O{5jP_IF$MB zBb~~sUJW9Y{av(bpWQW4QKf{XeMQY1$)*5P51cQ<6!K|?Eu75J{Ma>ZHgk*CEmnzr zKc424yqVeaA=E&*Bj!l+twYDU>dw{MB+Q<7n0^xP5ixHxj${|4IbO0}_51Wnhs~Z5 zr|SCFa1$1>T-m{Rn00S!kX$271MAe@~VW40LGv3j)9t^dNh|{#3?^!>y1986BbFZYfO9*IBmgrz*e6HMV zB#Bkk%3+L!Jdaa``A z!4?rh2eAZ@JqiKn;A}kZ!7he8S}O-HC1cEml3;Ss3wYzxg&FLu_@hzcSv$()QP-lBNF2 z$$$0uLhDJM9t;vTD5A0(OsO8@#kDN6?QQR;o=T-NKe%x>uVN!FLUb0#&6b&Ingb(u63$blnw`wMITd5=J&Gu8sPw{yco2ydyVSFsHU9(9|NRiuCYsmNAseN?mjt4-a8^Zl5xP~VxB-DMf7`i5PKf`0X+O($k!{&n4d_4Z!t?iF?F zjgFdu_Kkn<9=h{o_3DRTU;m0+?j9kn{VV)-dGZyXFO!lJO0|7A_CMuUE0rS=hc>P@ z58Dv3V{Y;9w;Kz#{~A~35?>#FoxO35K^9Y!0ml%Esf~fhwPL)h<`t8qrhXf0ETUqm z6xOx*HF-`a)4L1}4KDr6*38Z^jM}k2!(i8C%jj&sBQGjnoOt*=wMl<_$Q^BE(Z2c9 zcGpK!Cb=3;FlVd^ykoJ#rfrGep>+GTP2!uB7c1Xi{J6jFN9DhmlEXru{FZ6^g?+@>SJ#@SUhY$ zdoRrD*{W(}jbp*l;mwnb7q=RY3}06oiurq`%>6=1P4$|l@z{q;+vXZRwC~qAbMmdj zg}=i=i>F?{DWABp*mfj(%c8Ekb(oh`o@tudhWAR78~=ToPPhn%`>GD<9$1Lh{ zbEOSuyZD!=API8B%Hmn_q*d;N?Ni^1w%z*F@}NFw?e!ap|Fd{wJePVobWVQz-+R07 z+-zMqaC;&8tMb1ej~_4Y-n?)BdJKGgtWgFESdymM@pDPu>$_r6Tw>|!gvV>wtZ9h^ zta%1pryLxOT+PN95DT!UzzBjiCC!#aHGhf-;!D2xIp*NejPb(?=3EA8HI=jC{v!ycJMW z5`Q9UHv0Inwc3v&F28SR<65cpI0G3eS)U~f0PkHqcaMgL839`(NUDfr!R9Gnn&EvTo;Xc; z>!B;-{bLU^ofh%iw>j1$r;i&h*pB+T)4O`SIf1(_jGYhfbUC(ny0fGGcSZepz$eA| z@}(AkPK{Y_!1o;eTV9*4E1dlpknWe6#S9>DX~a;bIEn~znX){tYon^F+@$SkML0GT zNU{*fUY;?93N_jzJ!^tP&z>6m`Z+W4yPy3?y~El;hpqpHCKthEW%s|&Lzn;kh)l41 zRet=8^k9VP@t$5)Wt&6&w&w2pNrF-u5$?eSYluHXq9x>5S>L$Zd02kXQ{z)WoNh*~`BZRCl?xE-G%n`TpgTXN~S~#*UQr z;w~V%NP;m*K!-(2y}t5{X1FI=BoF{(21|icqe!FgNn+w9GsOt1kV^qTdpI{`4J!yN zI<>oiT>%5{qr;hSB1naRqZtU2YIwIp2BoqPULTbm1_RY_nxop;iYr-!)GU;%Mo~9Q zQZ?@=ZqmgjXW;fHY-#TZ&%IiE`uDH#kdxE;)KcoT#+y$TZFQ7qa(rZm*Tu!TJsb}2 zFKgWJZA?yKEVA`*O_{i~hfsioHJSnh9TzJ}8ln?1W(=GN1L(o9C9aSR@!Ku{07(xH zU(&p3S_no&k2w&yKm~_m`~YYXonky0$ps#Q#?-Q6rVIfCf*9TgBD7)EMbC?x2U86+ z-17B09PO*Xic=@-9u%7bMG6Dg=Rfs$YP$j42Fzi7 zXVt^leyte=yk;6NQv_V99(V+I_Qz%VsbfhEr!q)Nq6@?mhVu3`^0I4w9F#!|yJg768U6iIXy9;=oA1nE~P zMwT@96iCd?sdd{no|{iojoYu+ky_zsPM5uo0f%N37sP?@QW5ZM2xzTY0*biA)pg^l zNhxa*U1%8FWAWkY@7&v=BayzvkImgS0xxuoQWCkB zDkMvgOgIH-U692890)KegiHa85`!46%ngowa+`&vT)`6rwUI+M96s;st{JF2ZsZd` zs+CVd!>perxfoVFwCB^kUplMl;N|h3YLBY35(?ctz_^tage|7B`o_%Z-aU%x1*kUp zeNW!LHd1Nv@i2C|qqT9%JIyR#a(DfAGta~fn|bRiAy3TMOWo@&kI&2-0m z)N&(TTb{&u(OZ0spT>Q(>E9gZRDBUc;u8Q>02FYsY;b6Wy3h<(zE~H}!Gorv6cnzQ za2o`Y2x8wL!2y6Bd`TfkUO|on;M{na(1SK*~0C1{WI)n2vy-DQKNRpip_2S1M)oK~%CodEXC2zq!pk-yFiy z8zCafC`rX1!1U1~z>V-!-0a1t0hIb>j)d3dM&OG0=)6pO!X$)MVskKsAcvw$DT3IU z#YL++KR7a+3Na?aw*bit1fx>he0wY|6l7H<;qplhFp&>|ltQS38{w-S^?H4roewxU5xZ#HqJQ#8=<(Me)rvGV(MTMMih5Q*Wxm@k{M6^7{Uf90 z0dEVc((32L;*S=iSC$-hfA3y>Ysz@>*YfeLUmhgpS@Josys-Fr;J|l{(^_xd zo<3LTiE7!w(v%YMGnrs&j9p zds4iO5Gc-58dj{vpkuIv;YW<-k%o!c#p6%DC)oY!UbweiQF*KBmQTaaa~|AkQ4cwg zrTdcK*|tS{d0_g~@A>U3otHiC93BNny_1jF%Zz3De)pnYR629YZ{4-3TN;~4Cudok zEpDj9o?nH*@or1+dU>eEX~ge=je)AZ0+23JAeJgLbu`|#Lt)J|-w!W$nM}P29c?_A z%ocF9u<-1Db!2Za(PWb_ha*E^;K^i7$ybCP|7I6eIFa@2w%EfVbYkgMxktHq5*~%{ zmWagp(K4&+_qw0&+AsI9z2;|rdF<=O1Jj9ZtFQe&?%)`a1gs-q%Wa0F38P}r`&vq5 zRjh`30QNpTcBB`q7X?w^Qi%c40R=chs6b#;nZ`xhy$CtrK2F3Nv8Bxf7f1eGVH+LH zW(-xoxJem>90}T4S`0Zi9;|;-wrb_%wsF&t*7*m)m;2k4q(7^7PH*)#K6osm^Vu4w zaMUAp4~Y=0e|T=^GjW>~E+HnJ!PC+z4|b+LA$Ztl;o&o!d)u8K$FfmMtDO79UJk~g zbc9gLxLfB&+wA=V$DSO1rMWrbMg-m%<3+)xL_wus96rfn*vM|%Hm5(GaC<7YzbM+r z+i5eOP%3pc$t%Q=QK*Tr(L}4`vv)UAmtS2fL61u@P5}AHg*iFvd0X7|7n`4y^ld!# zS7IsfwTiIkj}SrM$3r{Fde z6La(Uj*&^rsLsK@3&%bfGvk|n`6PBMzu9^s!iH5ZfAq+;jln$;f838|S`OxHq^_wd zLGZ7gn@m6R0(W5D#K*mz4`(7rmdlI|Jff~!woLq+eSGcIomcwJ`wx7sc5or8PWlrW zfyeemE0&1DH?@Csu1D6WIEGM4uJH}11hPW^t`x;FMGId2mAQ-G1s|5$+&qj>A`F^r9JmSrz zP2~ByxW)C0p^YP@SEjx)1%Bu?Q*|onOq2c8P78 zyD|B}WIFzF+2fmUSR*eQ62FK$4>^d-1>Hr!Ng@#x63(w4ryo@d`v8v_lL9An%jRz% zMU0(nJOw~fdEiq^c;K?G!^VT+d9ex(gq83hq07+;UM?($2h+d-EIW!VN-8n~ZQ^v1 z+da7?hb~6dSzoNN41&ki=X48NmUoCC5LKiwZ~}qDTzT!FB5Jkm{{ECboc&D$mNm6~ zLrb?8f4?bNnw$CFEWKe14N_+>(QuKVyXacEg0%I&Gw1&tG$Xloa|_Yjrs(3o31_E^kn*(t?}T#BZjSyiak6YP1iZ1MUPH9JNA0{NMZ;0he;41xncerEp zBQQY%U`~*({!Le&0@++)wYEIEvVD0?-0MaB?%VU%gCbPww!K>#z5OB8`qX#5xCm>H zGFQa;e%wyKYql-9QmK`^4X?~F?c*u z4^p8303I6l@)YZ9`RP{V)1ules^zCYjbi6v7OgL1QO)dlgqbRv$u35_$6CQPNSXoV zlitGPQ{-5EtM%M&?m?cu?1NC^5Pmd$ zD}Hp@c3^4xTW~{+`P9{xquSzo+qNzobX&J(uO7s<`H-qez%YU@8>ev82z(C4k{d$w zYwUnXVhahq3s78<7)xicp^*|mc$lq8gtPGENKy9Ya2bfDcvS!oU#SLLNOv01s%q6GNjcwK5M2h+jfM)We6C5@ll= z9X^L}FX|xy)3X0#D>Ee+gH6lOYIID$4j@774kVwjwt5PMK%mHQ7Y8c^Jv}gsWs(6A z6!r$G__4d)>-cbqa1K*93YY*V9F-R4l<> zgIO#t1lL3x?9JWIJ= zR@-ko9n|0UsW!~1Nh`>>#iUDxPDe7OY7BlS&?z}%FQGvd;F~)fCTsuzL}+@9-CLkW z12DuS%(adIQ$wZRXSiZ5e-E}Ar+;dx8|N)Q_?BPqtN<1ZE=1S;*Y^!aZs|hMNQnrU zm|eV*sGw?M5r?)bJ|8H}8=5+cO~>e8A0Gb^b70(Y!&~E=f~TJ{Kb6h4Jh*%E?VB#i zp^rtX)^nHJ-wpm|6^-^jkMBAGI7WfLn#CI1T{?AAqJ|%?1LV9d z{u7*cc<^&bOi)wMgfy9QvW!RupDKotg2A0A7gQkOOcWYj?U<22aJf=j(#(Mgjjrz- zNxz@zpFyB`%^c~si@8`|lj@3bK)?&b*sb65nh_yPSfdhy3>I(Y5RJ$N@o9xbGhP-K z();QT2hDp^D!fAqSpt|Jf&i#KWOyP3rYiDkDg?eZFwSVISxVK68;DnPYj1cWxODa3LZ#T>ym;L0k~2 zXP&Dg0nRT?40tF)iVVC0Rw3CP%^tm4dviQ5`kH%K;OP^y8bN!Eo6LTfWrAbT z)C-O6F|7XkE&kRYLz&&Kc^C#4Ma9X%DBMty%Cvkh5+u%$_&n+3Pcc)D{Z$Ha2V@(a zDokI0ejfhdr&;)=Y}bRUZ&ObQyB|l14}5s`*edhv>2Ez|){-YL-}MYf3|xv&QN57x z_1%xlL6c{zONx)KWF7o_XOp%4`|;VM_ObuV>$eJV+v!Lp$#=aa(R_}CKb^n7Sp49- z^`GBYCKE<)WEHBmDP6kE`tU1T$r*)6g-deR{J`zx9CI4=OHqTbCI;ve1ibVUCqF+X z&!+9Xa_473?()XC$%mKPK^K11v{mdJKX#jQqoQcDelAC`(sY{rvOi{x$*rG{=aZiv z{5fm5vhZ}tivU#-NyRtM3F}{sOKx$SCZbvg3XI6gu=h7gtX@ahA>;%X!x zU3h7wtnT1nw+CHrrf-t27a-C3;6VlhKNEZhN@Fb1!Wpi}1%I|cM2s&@h5>4)u|bKExq&aL=q(Cdu$`l9 zT+Hl_o;`YQL1Z0z+^c#yvoywNAaqJT*-StccM3%7-bJDquYBB`agc(jgQ2Fe<~x7+ zcC$CydTijMGN}DZ1QLQa!!y{oHI04r{@=3oJ}+Oy+1DAR%kN^~1w&wlk5rUN3arM? zi#E=!f7#|AH#)Da>~mh~=-Ms|ilPtY)oEs82XMVsbEi&CrQEY-F`tB4Vx*2JwN=E+ zP6l(L5Ct{;_bdAozW!FfV88rr_k{4W$|>Ar|8o~Fw{WVu0lcJ6XIHWPr-6yh6R!g5 z&dn^J9NhhU;p*Lj11n`R+Zk3fV^RjR6A$Z+-|ndk(!^)x+Eu-pn_T+$kM*PWg;LH^ z#TUJJIJX&p)Tg*IN;{uJxg6i~r{dsLPnPv)eesLh!I6=k)-$g+9lck8uZlmYJ-oZ< z>DKzHb3c2#JnIvFu?pR@?#J%jz0GD@eP&s35+#*AV)1VHYn|ctug1IE7mF5Jwl_@v zl*O{P!|ksV94pg$lpKwIyUs`6)@SM-Iih?#n8Y6f=O;z5Rd5mPGpIY|o}K;a^gviS zcn|V|PQ2TY-TL6g*0?{CT^CO789s%7q=i~+I;)*J5?}E2xA*x5kc!;!J_~Tnqkl@i zEYDv!^{@5W*+=&8cV0fRJiQoh&v!~JoxwJmx(6fl0a%xUlyjzz+vn0TTMk!Op1t#W z+6iC!QGe&IN%ip95)PSIp~6t*(yLT58lr6XCqIe_6UKHY_0)Rpm_FPmQ)WN2+V-h( z?A6=A*P{_>^t8^w zs2>r5+BzJk3FXqcX~U0`y{BwGOAKHB?lH9g`bGW3H>2WvcD0Tzr3RgX{16g0xrx}g z6c<>u@Vof}Lg7MloO_zKM) zKW;p-lqZ1gC578H@TNMSX!VHU(2V?CG+Xkk&~_rE>`DBHZSzaJ|CV>_{{7C{7%R#0 z_3+uAH((hPtgz!T9JOEw3*Lc%V^!rGd$bSVUdY=$|9sO8J%U+*rmhjgFL{?esuA5c+B~q)z88yB_i24 zSDmhfR|h_7IZJp3#u6xGG0p_Q0^-?kzW2C${fXbhtXl>yGKsLaCs;v`uiE8|WaBXa z50Ov8_X2Aj3c;A*^5`n!RWOh_2K&hnP~Yjp3OfogmSQE}Mw*nNr{JPY(gUhlhFcd7 z0uUP%kC=tiT!+_GP5Eq zVx+Np@JIW?#xVSNqtAr;+n&TBvk~`0A%YHP$WqE36z4di$d>AKd7?KM(h9(80_4%T z><%vI=)jralgfnw_{e@78SLE|i6DgC-vp}AKrRf}a3H8JP$7UdFUXuvV7tU1zo7^R z=j7lC$wMp-82VrmXY3XjIFi`qtTpoVWf)#UC%Zf=SXZ>F1qGNZ&;(ZE>$Fdtw^h5VC=7d(4acOpi(G2vehP=qB1`w zlTf7noHC;Bn-20pEt$fY`(R+#)uBP&7&dJROoP+JfM!A(0?Bx!M-YJI^eOpZT8sH1AmSm7iZ?4?(WN) zKa^+eE{-|!>}g!ux459TMX$xkrhOCoUvDp5ba*EZ8ejrIedqwWY#!tXCivnz{a`NR zk%KFF=B@>>m#DX4y>yQ`tHyy%#yo7ffDdPLt+)eQEQ>~L8_>+17zd@1$hyz87U%s1 zF`sL~N`HH7-jifbr`s2$8k9UEfLnSV!Hd+3q(&PM5<3}k;MOh+B$B0p1_BFTAOKp0 z6y5HEWT=in0~moMuVyTABmmYm0+huPNyNAC&1zey^sAuZfQ9QJe1Tw-A%{D@eS%AX zVZhfaVRU%pN-2y9hG^0qo*|$DO%?_Tv`O3s0f?g~c9^IDH7bsjq75Lz5H6F22dh{jAZ&K2|sECE+AL${`2?ZEp3^}3O$L`P8Dg@^#jNMVFf0ht{~=7xY! z5R>1~DU|jY!4-cp#@0o@n{Js{zVP6fCVt}RZApB@+NTl2-!01)UN1fy$TW1_s`dU; zQ21w)RD?cq6$=8vnpF&*k~2J+EQMrZm;%0xZ4zV?8~rWySLByX3*)k}g3;hjYYL`! z?&OqIm|0|CXpj9XX*24Njn1+0i?Hi||Kfb329#IE_0jb9G8FX*=g%Et_xsl=H~M*BO@jDzv-%hK)1NVhsUX z;-2PyghDxV{87biw4APPq?N|5Z?-{k>|X_{8V9D^j&F>b|NO8%=wR!nC)UpN-Aj9p z)5C>Ih9r*?h}#fa>~23`{ci7p`qOuIex>X_Gqq;>U)F=)J+og54&2pgcgQ>-i9PO^ zK{<6iXY}#`MYD|yr;a!nyB;qDKkkH!|Bx#I#oZSyLpqS44ge7+y7MwUX7|22<#6MM zhQ^cSKM7HP)G~e6sXEY#L>&+VLZq*@q}dm*a_)k-*Yr77`*4aZ>MCdDjTVJmx45X2 zJ-x*&XKoJlMuY#IrC}RYPZ5!@+5Nm{GBwoy!k>}t?r~oRvKKiKdRP+pfda^hK4{X) zHKuS9v#8+h3UF(<4qq_%ky7%(Xp%1{P#xA@o{bJ3o3GQDeSs&EX_E9FZ{O%aM*|_* znNV&8LV(G4Xku8gRpHBx4&qK$G5cuO5N`MFxcdI&hG%Q@hCUyDOze7MCErWg?~8R7 zS9DN{{Nrw$EZ0K2%~~}o)UK(mg4iO%hZTEm0@2kug&w>*H3FNCmJ?TZl06cN5B$n6 zULQZu`*r4=#wGI`S8NQ)Tvc`et}ssoOI9-IZB9>JXgd+vaHVvMxW&Joiw;TNz8dBD>tg$Kr9fNZ-B(`n`lQ>|uTRoix1Kun#b-9+L4DO#eOmKi>saN5FL}A6 z=Jj_@g)jT&4O;H+8?nlIM43Lgq#F0<$(7yTA5{giOd=lokYCgKzOFyp;A|Ftz;=yc zYSio-m*Sy$y?61OTii#sRec@b^k`w*>8Czdk`62}zXjhKGY`tk;hr$?88=9(uh}C| zVos49FOn1~g%kusQvrz3@F61o6t`=8Y=^RLzBrJ@K3c&icnWqyBl5~jnm_AO4T@etROs6#Nfcs}P>{qTS^iaKFJUCnN#cut4 zM}^WhcEgp$m+@a-o(R4lbsL18y-W8sH16(ybRWXF0+F(sijb6S26LR^3JB7+lHcD} zH@VgNxi;N*`g&6s7IFD~bq?x!AxQ|_7!we@Lp@pxCbYmZ0)(6nI4_A@N2Dbh9uC;_ zWNw(Eo9FC}E0IuWSX6(=AXi0fkpT&>e@*py<@+hJG@x|%QR|OZ?n$0fUwV+-bC8g#cLDU6cLr9(nUvsP<}`vq=_;P;X`gX1#qONz=QR`3kY&)1jWuf{YGHR zFH*ru0)t(QL=G}QERw@`A(ZX9cxBW|&=~`EmpAzX`GO*TXLOP-`NaDI8-tN`oAhf! z9C*51l2&j?d#LQ;ZT+&%MWUiSZ*O-^ommNQm9mS30vMSX37sLJcHxL@NR<-2IBec# zq@M-H?32H#>4V>G zpC@Gl3MLijJ3sv-!M$A1CdrFB|C>#wlj|@3 zQi<|(wH&A{%eCDyd1SRlMxUB;7Z+xVvCQvj>c#27D9+M+9~ds&mkWGKBrH3F`ragJ*yMT&{@|3^@h}>!@LkNFCe; zUZL<>)RrkdLkV4-?iZD3`qnS>)dz{GdIGzj`HJ=2>EPyC69)vY+*>!K#31SrdqRSo zV2mLX9SG67L%~o8yBCmDjH}Yu!ZrQ4m|R@l3CaeTUZXE-bGvU+9xpvT{lwKbmciz3 zC9zYyYKuzM^Ce_`rqGjwrw%mkFnRbUtio->L!BDl+RYcszTK$SQR>cJ_&M3G{O=jc z5!dy~AlUWd^mR2SWQaSgTNW7m1k^45iF*+BI;Gnupz7eq=Npd?O)oXugE=(MlxGUL zaFuXw47LE&dv~Bf04b3JnVN5Mrn7ihm<*LD=uGcngn;M|1o-Eu;AByTCq2*r&^vfJ zqJY7oQB|BBXF{x`d?z*H+KW%MZRQdCe{YM}Tb<`w#}gnFT{dmTkjm-IU^X-N8Mx)C z5J3AFo|tpe0IUzuU@s@3+ZO{05-gZR3UT#x^o0W~O$US;q|0A6zKU2IK`?%g>7s)y zE(s2k{Fi*|1xtT6p!x7hW%(f@j>v^9!vU|IDVO)&65XNPi?RXeLpce~=q>laiD<*= z$4)U#m(LQt`r|KpLP=DDX)skvz@Pwh(9#e>W`?bHH6`kmL-alzi4Ma-6U4R8S0#`Y z;-6=bv2Zk%MhFS8M248FA`@ZYM28|y04|jxgBlnNOSfXV_AErl|5NzCwvFvSyQ{S8 zt9~s#nR|2iM$@N{UU>;sWvsxP3wCGOb^g&j|Df<;WjtRA`OcZAD0{iP3#_DiHlYWN zRG`99&4gP%K>u56uW#0=atT^_d>7}B*%RP(m5jG#5OCCn==_MksX*>ag& zh`-nN*wb$fkM4v%m^^)Q;Yr!ZujMD(=U?`=FSLDa!yj$?I{xlkmN0j+#LTd9!A9kAy9hc}y# zo&*8(=R<$zy812{9w^G%wb}+|wcJzLO4(5nX#03mvbBb=(|)zrhL*zxhX;ZHe$3HvR>_2c_(@88^p}d*r>j22-(5XI3LjWAP@Da2+g%1~@Ft#OF%B&4^z;Byp0CTtI{4L6w( z?c=X$%b$&V@sK6o=l~24QH5#<-JpFwan0Gmj;_^e*ZjVhR`hUFGAt=|RguO3Wdy;Q zWYh$N8}rybJF>&0B)%eT`+2vI-(F3aNV39s7?PNr)C?Zs;!Z|}kr%V{e!{Ur!`*GQ zoI({CWyY}r>u*?_k7W@r8W}5YF|rs4-+kxH%f89TAUpd#1Pno?F$e53sf}t*JnBq( zO2T*BjhoMmU4`% zS9df#=GD9N`6lnA7{t)CXT)8m#;*<>drk^T|6)`v-9J< z-D7^+q7H1VYXS#n;roobtnLq=jn6&UzV&H3rzKW_n*onoz7JGN5V{ zVcwkzhcPx#y$?|#I=2LPqu@ze<8!|CzUvwru8lM09$S5Cd-Q(s*72EF>u08m?H)aS z)`4M+)@$YWjZB|er-F2mG%7x8JJq_~{q>)O2fzMz>yNBW^VJwV+)Gf1B)b>-LM$>v z5hyyKF-8YcAc_hpM=L6o6sl-sf4;J<;$=epy`Ra;Lldgo*vc+qC1*;0PD$6h4AuD} zpKXEh5jui=MxY24d*~0(pMGT8{WdJmC*fR>nc>baCr&llXWhRf9EpDX zhBQRUaADiQCWJ-}+b^DqypEw*>YDB(sJvy>G(9|Yys10*>2lkL*stgd=YGHY8*%F$ zO`{f-j+y{+cCG_M(BL>)VDspiS5*U$Iw9rM;d~{~Fo(NAfWZeo_S{qIOd`aG@c_ix zzBq-g$CYoqwns&VtJAW&A~@eZ3DZVLEb zF>!Ex7RQv>o0DzadZc|O?`d7aZRHexmW4AzkyNfI7AaB)WHm3hLP_I;h*_)iMiI_k z`FHvmreo9c#<0Y^eOyw9GTH?gUjmMruU>xVR$?1F`NAVxPM!~@!X>^>dS;qMXuF0^ z;Fo~QNdU+_nay-zu=Nr_0gXH4`v!=kf!!EFz4hon?}`f43i1?%_z@?}Z;!uaQ(cX& z3c7-!aw^zVz|<|3p{m@%y(s_phoEByN< z#|93;(-eWz1WdrhK9yIen*(bq#s15*T8)T_h7WliOYxrQ@Kh%x!-dNeMWJmv>E)c> z*zqk+*Lzsf<}98P7@y&d0Vn~?$wDm|9r^!}H~328QUeT5js`er1SKSRk7IeJ=DCiv zA`D7!ia^wy=yH~&(*w9{kWkdr1aaUD{mU-g4jTBhGXQxK>5c*w1H7Ie3xNb5{ajz! zKp}Sr1D5Z=6=_TJbt5~y_n_H|+}qcyt;Q}ZsvARzL&TQh_~B>-i({#CEi7w**>|3! zsp86VuY2yer>hI6NQ?C+b~wYpZMzDsC|-MwXT^#v5bi@wP*8k#i@nhZR4>)(Mswl$ zs(~VwwPLwNqk^=M!+sa-Vi0-y`ydmo)yC8VtgzO3Y6s zRm5{W((|lF$icGm(#?;yY`9WW-Qvv$vZp_uF3bnn|DGMMD}CPR1>g5}hK+nkViN*#s*Ic+i^J4!8aB4QRX zD~B@y>YeOdqhL#Mj%i}2HVcowg=eGQO_~3rz^!v^4 z;!EbR7yEB?zKuAwwD9#kY;&~sNap<=7wMM0se*>9`b0SjR)yh4m*tboVL;o7Of=Q> zWYvi_ou1j5wQ+g0b>+#{)oZfdtQVvPdvrxgqBB@YHXgqq)N>tAH-Yg%)ia zf9%SkZ@vfOME7ss{rEEe->z2)aR>jT*U$M?<=ftzZLI)@U~u~efmv* zMggZ^yL8hyqvD~OcsS%;4-0Q777fV+5R2_e>HtGgh` zI4-DQ;ojkhk7aIiS4Lh?0u1dd$jT+)1IfW~^{FV3GE@WzcarF&x?IR{kKuKR92miO z&4Gocmd?&o`P2Ec_L~*oK!uCvqYlmDj8U`@?!_aiYh#cj147cy(F=Wb6AO2K`mdQ) zwx5FIcz}W;5qN;u8^90%lBk?XUFZ>IugnfcMtB2|e}G_5Fdr4L^WC36Z_h*|z|=AX z^bis=_&jMtm1FdwkPuKbCmwz_=B^snerngIC~KX3aJzhBD=ICDZU%lIdi}52?tepN&m_CX zw{<=*Z)2uiI(@j($h}tMv~=l-^T_iX=5Xdy-NDO)oW`}E!&|PnxGFZEaNBJbx>#{@ zbUypEIp=$5c zqW|ZvPC$#4RuSb<9n1ByBRtB4&7 zM~L4Jx4iQ0*B?V$0tx6~4CnFozsctqr_XZo2hvK`<jpwId_|&Hp`c1c0D-l@^LA2 zr-69!PNq=TYJ_DP0^45-oMF3%C(?^e5{BKPM4s5g(m^q zwBmnFxT&+w5}Zg?O-KXxQ{a$BFm_;M>gom4-lMZi|CIh3sEYgSK9pA*_+>f$==kNQ zm1R*U2*QC;`+#BYA<|9fUcmJX1Xkf!ot! z{%G{x+al{T)f&Z%!nqf0ww$q@nYFe|CSd@;FhuG=32t9;Q1?YfrNBDicvCV8kspFb zV{lB2lq%h8o~V?9vJ;irs9vJp0IG^TQMa9LNQuV_MHV1D$%naU(g-96F5jQg;*O@4 zReu;zoAQu!IT@NuBBEE# zl+dHG@+1hXm#IRkha5fK-37=tAOtu?3bb*2h^N9OiRis>G#VU3L}nPkc?l&|si5R! zpgzb~qOsgSAj3fo9qNY0!wA8e3c(;c;>&Q+g@HL4wKkVnlh=rYP#3)tMlB-IR}fJ7q6VNu|oO+tVb3zFSu zki#i%J|7Zbp9{W)HIYVmu^!KYhia6OgisokSdOx~sDAMj=LMJ%N?8_HlwI37HJ;(D zJNo-<=ccNs_cZQZv&mb&??#R^-^GxG+OUUarrSN{714I+$jGSOt?g%*zHioG#u_s* zOf!s!RB`CHU%+D8&dFCjVR=SHt`VG2x6%rDx!0N@cy4i@<8wtI)f4rG0)!1miG=3yCiUbvULJSal;D?%`sS*M& zgp}w2@Fr+L=>;eMtgJx_%1=hH8(0gzQ8)zB1r$sy2na&G05NTe#?zr-Jl=(oXl6`e z3IseQ8kgR;D`MR$oW2+XDFxC@&R^HctMRYC=6_?a%4fTXoDes4rK&=pNHFMZglV7z zD!vS!ni|STS441Jd+(*jyhnpwN*57M0&ZpmArD6lRKZ|UxVo1Jj$qfvr9zD=`%zFb zg2BXp)kZKBM9^TDdO3$l_H~_@Y9xCMvy&YPofdj-p7iondwRa6aVlwtTDUCwe1F&u z12esuYLj9MoJv<3UQQ2&;l2)Kd}3DV;1A z9FOFHo_5&yJ8~mUit1V6!@ia%f`Ag0f$@dlY!XPU3r`_i(dL!)_(qmq`IK!tQ|;W=SL_qs zErw^mj$B!4V6M!R`q{~@XzbXbXC6{DXq?M(vhHR;=wQ-XXiTfuxc8c*Gr9H39~0}# z=j!l34o>y|^TsDF!0?EvxIEj`JzwXjkhp3~Z;v?Foec$m3bLFrx|qsUb=bnc(SK^# zY~JVf4WRe9b?y^7X77R2Ur1xg%=gOE)fN6judeN8Hxwk^p>;_-yP7=Gb~a1a!UYap z>R_}1<@82u-NmfwDGg6M{Uf>lWCRe+)cb9TY=y)-S1@9NnW_`APu#w^ z$Gy&Ezy)=Qs>=7!B&G06E2R`+r%~r%{NoX;(Bq>c{t6y`a81qrwJbN`%>MZt!|Vq# zz4|*}{`vIuX#0^58J>OWjYFudLIU{>0yH*gE;pUcMk5Az zoUWq&XtPe|Ti(!x-i4fn$xD|*{!eAf$e|O?8({L5#^|YsHm8~-dYa;+jI&82D&GXj<_G73AH{{m*i0AP@jcP^ zf$;cdZGu;7mGMNL7)EtS_jVnQINn?Yn2nM9+TPhsK3SS`iPQe`;@Fqm%ul7YiK4K8 zF&*aC+gIAvUc9JItN-$M_HXO9fAclY_4m%kN{)wferz@8+>e=hQDy)2a`(=>(KC-; z#0B0?4^d61m}N&=W*@EG@O&?dzX|39`VT;E1yDdq5W(VnhippT1)0eIa8x-tEypj7 z*OA+F;mEqnh6h>WE2S%$KVm195{#cz>hep2_6Pgd?f>>GP|D5XS;#6eF_Z)LXU4z$ z9qGPsPYXYpm%Yc$w8)_gfNOC~@IYkBK|-=n#MW&7RCz>PdBdW`a`w=x(?`lUdpO@G zdk0hujdaw#vS65sHpPvLn0D7u~P=Rd?Ey+DkaCiFSD5)CEH^2 z{6hDOwxG|C+n%upJ($HkNCek`W<;P>7>PXJAX2c_r>(x#U*Q}xFZ{dkeMDc`I}L^Aw)AVs-xfFu40xDOou@A1q_J5=n#$tt9?RG6CIA`rwH!2 z!%J9buvAlIfI>O!2A9K!$TAS65OM&c0oCD{S7RHh>3?jO;5;$Oh`~1It3V6~u9v^_ zLmGjngqk3{McA|-*5``Y9kJc|YWJ#V^V|Dk1+QejoS4}TA&KdRbE%zM2+*Jf6g}Hq z_p-#6=oJ0t?*92#Q)S%z0$f#_t#{>3%R{<34Na%EwiOCW*7@uhdUmLvt_y=h3jYaL zv#1gp3Yf?!ATiv)VbJF{j$XKXUuQy4l`eF87hmcu4|NvU`ag;=#b7x!leM}cRT%e_ z!GyZyrNTZCGA-|`*qiWj^25?(go!15gAt#+|(J)WyszMGxL>*!DfA z>Vi(-IQUKYaX(g+y*a|D>8hIYhK99?X2389UUiyoN0(}{XbIKaT~x>NGh5u-`&h@M z`JorJvp@GWZ!Vq`Klpkn&NL*V&|jDAk(^Zw{@0zsrc^G5hMe1i3)k%gZ6erz4mzHa zlp$vsjCz$q!I7VYpr$aHGbR99ri=9xLr zAUHH31o;|_4C*4lWFV==3eu%Ko_p>=_?3&|?uLs7uf{Ks0qoy-2(6hox{4I0P<@ zM)0B$B9++8a!<3p5hyvVc-LbYGPe-bI!$rNE(9P(h5tIP6+0vuk*+xsW2y=l6`X>g zDj4pdB%(;cRM=HfNMVUC+!|YqArV9=JQNWPruis5DKTn9i=>)*bEeD zv0#yaM@X;~u<^qMP%OC?Vhnc`N|0riN9ZUgfq(}%MYBm%q#r7ek!xUn=x^@ zA9&@x;`b<0<{r8*&nPDc21`m$7o?C9Qvk4m3r$ccAgcuQ!Grv)A+u_67D63Igi;RY z1J(yJv4RVc6s0r*Q`I?kr@Gs|>ku_hSf-XTWn@OGS!EF1xY~Fi+9vj*-~Qg7Tvfr4 z_z}f6%HNU3(=)U={b*QL^!lsonmgZ$e0DGV&VO9ASs(~%OINfu)}8sBlPY&m8`pj# zt^4yKWzO8X@*~IQvM-qq(7R9}|g^Cmg+7HN_u~#9g2_O}Viwm__C9aW&=zWC15B`B&rIkCcM69v%%fu4$3e~ra zc5m^^f^*rXgE+s-H$#W=aCB%#0S}phg@^((ydq9cBH{9jQc9mRD@p1;#C~}Yj&1^rT%B*R=W z+6>~|Mh}^!(!cyrvc{CiFdcC_MKk9XRp^AI}AsDDA zl|Y;oP?Ilt(jC;j2s|prl0lO5Aa<2T7*=`sHv69l|U`msp8HO$u^U@iqy} zJpH`4v~kUk=v#`467hU<=N2UZlw|ff6c4h{85kh|M_XzN8#MVv@4atapWOqd-C8F~ z+W==e$V(0Gx1#gl%vawBQ7d1!JkXjwW6o-M@W|`$!cgU- zThkX_ty_BXWrJBBLVm0{OiP}mNW-eoy)h55$N*vKmQak0%PSGe!;Lx-6HTKD1Dn45 zse16^pLZJT&eLO=5yB`X844wzg$c8F0TE!7R6uFEpN{03%1Ib+Ny;xm&uKP2c@$RkFr>`op;fpe|3!33kz1u(UC=d~0If1` zorRP4Wp$U${2p5>yJd6s`jwTDtsgH(Mpi#@eOL|!D>4G8<7s_yr$1aeJ(Bj)Uisbh znb?{o(5e5I%yaXKzgbcGY2}&fd}`L-lQ(sN^V|0t=rz#A6zcpe)ijbyUVq5y+#<`VFsXa?GW-;2_eNB!o#%*-zV<*D4^TC2Zo^(vE{w0ZqM`Og~mD_`;yp4jsrx){_}r17&Bg01KKYb9MK z0qA37*RB^d_VL4h6PuxsFYF}-v?hQUUz2dr{u{#okxjA+kfrUxP0Q0Uw@&u zx=Xewp@{W8WRK>~(Yjw@U#eFA-0R!!clZ5<%Ue#x`>$K4GtW83Sy(u5_oMi6+3Qz^ z>lQLK^i{l7*4@)SZ29bB!J;RdiqoYcVIE*61hTYP3IbAxPpE_aIH;jda9tP4ZJT3C zi`PCgP`Cax-TLO``j7DmGk<>hgx4Eib5DavZS^-tIrk1cojyJYTJjW`pt-(y*QKQ^ zUr(R=Ca^wPu{R(SRUK-;UEAnDAn%ufa~cE`*gP6Np*8+Pn$m^4;%kFNt{MIX18WPt z&d>K-6*PwiV38ykBdzWEiOz=k!(L0-(apI%H(x}}-dp)~Z_6E(stdcSD3#t*Uw7Zy zeVcRHX148lk-!~yK1URSCZS#x=v@?Wbst2-*$W?gmY38T%p01tju(WLKEBC! zLO<>a3^Q+1L7FD>rblUW|XVwe{bJ2mid9Z{1dBeq(}P*V6CF=sOB5 zKG*ZiQZ%vz00mH%M2A>iM(!vN5g}K{Nb}_Z*R6MxKxcmQY{G~ZVeGptjQlMn}ZTU ze%rQ2c-y{}?W?tU6@;_@Aj)1O)Ot$YYt)4NyGQpqrpXoC>d*2m^s-cd@&E;-PvjS9YrF_OHWsF@YPl8YJ_aaPV`^usamG}XZpa*&VG6|8ibB2vHv|s_ zLxxeKtB%?Q7;oy5F^I%O7&@6cWr@b9L-}MGorcTwgpkJ{P{pgb9AgAZjlytafJ#J9 z=usLt;9xEpcd-a4Py|fm!2snmnFhjLR3a^OE8m*^^uSlI(buO%zroUP>FR8@Q>$%% z+2C4JJQ~=xR^j-7%EnN{X+oRFA1CK#V_j9s`WE8vo|L`FMVn4+VY==T#eJg0zv%T4 z?b_66?UpZHvB-t6_+-A4B+wv{z!oTeg?##YaeR_~^W@UQX?%uH5wz=<%{9NNgM1Cj1MGVt}B~rm_5R|VJWdspW zi1?w#kR8#FB`kRf$U02VNdD=FMTo2AN?5At;rS1nmSxo=%m+ny1l zci*TE5&r!%u4)Y0#EnQ1a)H4G36KW+DoA!R7|%2(Gt$IOgpsEr1bBtMOSusQ;1(K& z*(CLCnl=n6q9POC1B)|DMu`wAHV~oVZZ7)LavD+cX8u9r+5;T8FW6%cP(6M9 z5^rxRZMl1)Wu)$kWO0?={rZGRUY7c^YToldvWfHSuU6N8D|Yt}3lkdWRaB4mk1U#P zn`?ga_T@f-QAJ-w(fG6aNl}7*h2=#No@L6?(Tw+wjoDcO@EBaQuq#l7DwV-3vBXM% z1YrdLW&{nkaV&O4K*4J-wRU`(Zvz#r74J?YVNoQYGr`0(z;QpqAfdf0Ol@-Od2Spr z+=Qw{2GUlT2|6ML%xw}|B~e!h=2H?WB@#QE%Y-uEavhZbgX9S(qpo(woOaQsXvi+) zTz=8W8>T6i*`*YAbUmWN4SNFNRQT$1Xp|O+`oXL)L~{lbkqn_dP(ZM!F!hxLwh)WN zt7PP9>#_YkCGqZf0y#p$rlH#Zb6f#?z8V~B_DSt0J)@0s2}F}_ z5CC)nml0LFAsY+VFxajQIbbOb>Mc-!Iz|B00RY}%151k*IBtoxkrV)~paHNOf(4h@ z`mVGttskSm_7ug5L?+&)0S7~;L)9P4N^V65fE=XzvJY7&76S}AGHj6dv@5^XeuXOl zpP^GQT~t>bhim*EG!d; zbx2&!2`f~2mrU#90l0h=h#OcG6J%K#7f^1OGssqO@CSko+~rmj2d1xC0Y=MukZ4ef z^})L|Um@(?dSJN=D4TO8`#I~o_+NerUkK-7acN*!hw@>d1QY|H)vmaQ+%HxQ5?eMX zAri>A8li-rDS&T1`KU%Y)jvIUHDPqw+@11YPkyZ~Ss%CWA=P*5rZYBqf4=X1zUr5{ z^Xjr+?wZK!TVBKZ*?w@|mZmgPJ|4laFMCDva>VNJa**Ok6ADZpVULNKSN?El`cdJj zq$i0tf7TxVdZPO6m3+EB>jE>@dhBcM9*;|wqFfnkgwJ{$-#)V`8skhaoLfm>tF7^tk3?&)9+vAH-6W7CEwc33(aen)AY;w z7Bcd|)`*Q$p+I^?kmJTvoAT5BC&mKSt(!{vI1yX*yL-#p{=x2T7f0t_6#F%voZGsh z^xN6=jcP9zIc`JP#tkQa)CidR58luLsszwy!~qecU`@gBw{w+GHN2?7W5LVfc;@f+ zH%A$wA%j3R4uvHMuz(>h5rM6)E{I`JN}qsoYj-Cz0~*D5-Ymd#y&hRKcyPhq*K8CM zmVGHH>wOd?WC>s}=i$VIWkG2DRGe8z-snfgJz|jCP!!LX*h4Xtt)$XiQC4xOz!Yz< zopmvYYT+^-ANTOg%yz5rL?2ck_W~8RPZ6Kdc;|mA^%PdPPP8pr{3#q$#oZ4Q=VSHFR4l2#9w^;)R`kyq-(2{`Fp=yPCxec z)1UtHp)J_2E|7{L?=W*$2QOX!VY)lm>%8;FQz`C8YCG5ee$saS%j3~DIb-#jQ=NyD zewxMS^)S__O=v@Z6QB=4RGtR`JnZ@Z*sCmsw#2*`R_^2hgm1!|s?7_7wmM$(pPyrB z>yP^Nuk0m8I_3NC=c{@8O)>Gv z6NRsB_Z9>%c=_@5wmIqgF%RjBb?~dBN-JQq(_BwA<&&$t` z$}QaWrEHR{gFW3`I7_iT88LjY=i7Af@f(SD2OA?E#C7d@&`ptVX*2CvNA)kL-T!ah zu{}g(m9Gq<8!;F{!H8sS(Z5Z&*$M?pjE3Xx3j;eB4|9Scg?}# z5MJqB1{MbolTbeTzd(Tavl~U0or>XTfyMw21&|bUud_~a*}@B}4y_#h-SFdk`l-Q{ zc8e#MEiHQbOuorYj!oYF{Ay>MQD@MV_W$Z=NjWcngx4qjQh(jj67lO^Y(ap>r8M!z zvRbAT8`c{M!Y^1PRVH*5E&V%tX_Ci8Ww(p}>13HvX5%W736H8_$LJ!IobK_d-#ZQs zr>>D-F7`id;B0Te8vE?MY2Mpgy7enhJ!zR>oq2q@fG!0srtP2@7y($LOaj!UWQ=X+ zp*|wEbF>1J?|N)rL_J~sL#1-PR&;OzfHz4{?@Ci>vxR?3xN%tke5gGfcks!lWs`r# zpZ~6_yrgzD4KFh5p>Ts+EFf{t#k@6Fm(;q6?}!?_c&i9AIT2Z?FeV-J+9DWoeSjN- zF(70+_@4fUE^R;i%Z-!LyAUbtfEsKYB75qH8&ya|0y$zM8-~n;C?txI6VIqh4fQar z*yVRVw_#{xbDmjP8JS&Vzc0N*9uV$#>E^^!ZSN(Fp_}IzADip-E|D&B*KFOG+Ekw!6J%M@ z)GnzgZGvd|V2z4EiF3GA(A7#)63CiNJpx4Nh<`Lyy5$p14QvZYU%6OW#YH0X8pO%V z)vjb7f*leCpdbI0jv)1Ii&a^#zrLN)X-IJ<`gR#(K~X^pFy4T2kQcy|O9|8ZPZjkR zI3Yn@0*o3gQK3v|0&T7iNFVGHXxr-%Wll<@5TS&?ry_vbUS33n<%&FO4<3K?aBfn4 z^IJ>N^z!N%_XUwpRz{^s^2nHcj1pNX#6Sa(F`p#jowDwxUcZ&MHU3Xm+lnpuqCqph z$djIJP8jU#Od5{uCcm*fT@tI>zTrb})8aPs(ZWUB8hzpBNQyZQB4|@Epm>dkHi4nQ z;uK8I3Jcf@eYV-8WqrL6&(Y5R+g@+O=QCS~@w>7{4kh&uF8FKi?#{Wl>9-${c#j_h z=m26HPr?sokWm-~#89v~;PGt5t&`Bmc}hY|w8u8K2jIzY>ag~HUPa^qU~OSCe9`78 znwRFu?%ts?tJac+gQ^FJ2rI59@GGJt9AW#UP73bu*k_+{8;iyjub=#$+LKVy^!|Zk zDyghk2?C(f0S*-(1|m=bp`D>`;r%~d&l;X4IW3yeQgEY|6P4fo8A!VMS5=;T%=7r9 zaxCtkuF|bvZ2`Vs5TzYln8*R{az8I&&~-IBMyyXY<74HfE(7OI;4QUSC{W1_t9wD9 zCq&u1v-K(ZLO|z5JoqdkUkBPB0?y^Z5Csk{2b9abNMxVG>I$#uogeS|of`gI@ng?J zuLaWUD8~X&9-i>%Y0a(xaxRM~p>BSZW}DShlMHAqq9X*8Fdih1L(wv#8`{ZCFlyPm zNje1Wg2T}M4O$!$7NXA@81o&AxY#VavK&&$$EIqF1jsd>h< z#i*oQz&qe!lkF5S1MXDbR5Zqzr^dM|aKu7^fXN61Vml-eqF4mN8AIN}P23SW2;VY@ z0MAepwb|`#6B{inPEPhM?Vf7-_l4iA_Tb9-UNsH3->S;fLw`-zeLQLCk^znl{#kKr zva16Zd{a0rLH?{;)hxl+LHvP#Ebn^rAvu6 z)+TEZWGf7)N@>qm_5ExqJ@0-kX4`vKad2goee|2PA(t$z7H2Jo>#{b3+!x7>1%M2& zf)&&}205$bk20OFccZLX{6HpLl4o8*oGc;07B~(gmg%HWDT` zEyL#fR5i;jGEJ%7WYX%eU}EK9K^2~X3@&Ifi~zwzL25fwke%C9xN=ZVv4sk_CY#}| zC=r*74~eR22ldaXrkkLEix)lxggTrJJf+_9`ta`P=wIKJ#j|Ut_I;o5tCWANa*e(y z`sl1QMsIHJwXym2^-NR9k$Mhe8@pSTm!;mh{&n2*AC;%tqF1fomG~}c$B(x=zPwyu zn4XlH1MN?x$zi>KbqGc!zLrW3QlXXfVlO(~S{O+}hnY}7*CS}9k=c&X!!UrbfrP!V zgGUJYR5j{9t2u-N=}6#uPH`fVz;7rMn?{&nip2K6TpOqzCzmNA0gGI3!49p!b2g$+ z=xwdK*S&YX*KK@o!mzMW^*-X+;KD4t6JnLSH6?K|{o(;9n5aXMU+)xt+Kt^y{&BV&N;x(Hh5_{a$}5_gvF#)~x-|wCundz(AG1D|#Ao z#^xg7zUOj|@~(2Tq7TKz2q?+6Xy6KkWc^k03Bu z7=QX*Y;;lQogIyRa`n!tMZ#U{Rhz2r*#>i1DwKdH*t6wTc<^D@=>x?<+}=a8QR(Rh zK9v;`U$99{$Cox~115(EK@MgcWAqhXfvcBb))3nwBY2aK6Sg%W=h6EvJ0zTXwaY@i zPx<5EQY*FPftyE(o0d&5p3ju;oO+`q5dR*nS^uRj@!uK6Gj+^Ge;O(n+mIPIwBvR8 z(wPf>odN0TcXqeh9~?Wq_twj}=!Z)-mmG8{pffV=_OTjsVsHO=qPytW_<}#iA3i?r zuI+2xIaS&zKlH)%K%?3xyNae;mD`4LSyE%`*Fa4v5@DzXS856XT8_iTye~b7I}kumv|~ zroHT@j@@69^s;&9>v9|UKj@v)*S7rdn7>!m`t{_UJzIu&n{7~)rKMy)Is~#9^9!V+ zg;cxxHNRDdjyGMUw^qZX(l1`TvLnCZ$bVc z@q1SP+Yg^da=-coyLfxlH!p46od4eaai7}mNKwTTv7fZe!r20^k1~vZwM*@FzUW`Y z&QI&VSZ1&B^P*I*PzN#I1==55*QjR`QkJ0_>JJ@fXhxRLv?lIdmpEKJ{QS2pEUDjWuk0G7SS4U!xFF(Kn2nEbs*R4z58JR>MRaKX7v76Yz8rov=i%BvkH zo~!QM`*feXX3oAjqaEyF8*&iJOnoX{ikWZt6ccN{nsuLa>KfDJp7p{UHH)o?5oM?H zv=l@%u4AenM3kxMS zZ7=KKP-t=pn-C6JsTr9AJC=KtGZ@2@-{0^OwpAGG!UEuM!*=&pr(~+|0ztdnLa*;p z)#+6M+ped50j=0)W!7X!h*z{O9j2$%RmZmO({u-XwunTD_$earIZ(k0l1yW4Loq=T zyPnDg(ozR`0Lj&o1A>=a4}^g!YA@YwA_PhUY-}bJo5mw%xR*y=<>x1EoZ?*C@bStLp+4j) zfHorTMXl3o^hDvxDc$}Co2|ERiS@l-V3_1B(?iR-j)mtux{^grSh5(LM<5X0LL$wuSHvw}4(Jr((8cv+@4((OcIKU%o&L2K!g=wgEdq4nApcx))?XRvHn!osF_GrGncMS=LSfG7cSp zZ$%2Y84nAW3<`j?SlYsButmZL$XPOdI?*s9IOlG;ZT+5UQ)T7(wrSbKyWz>hK@shi z81TwK9z$r0)DTnoc2T*-c`2*fs)?b-xB*VVffscxm-`l_FZd8Y@Ui6Pu>&sE zg{Q2S#r3tke^UO~pzz?{Vwa?xO0$#;Rf6(x6X3EI!L*G*|DqneUEtZ2r{DERj4-RU z^WvFs&Dt_>JFXFQPT$H$^;mmMPMuAAet2ZVjc*<|q`@mDsRD!lNiuh#G;`1&wlo4kaUg zB$wYE5+yc;DN$4pJ%KZl$3t-5G~qestGFw2aQnKQr4m#a)QvEu(g$3rfmoexIaP>9 zSuSMTEOZ%JdainA$E?%sU+%*jNZO;}Jo%nFOp z?^41ud#Em#1Fm~f@XJeaI#nVT!1+-uMcH~NH!>9{)bJDtt50zQmD}(dNRp#3aDr1W zWEih%XR|>?V9$KE8&cMe68u*`{7OexR|H{E7~nwDB8pw$NL{KMQZLs$dXGbB;_nxc zdw=#UYWs7tqx0CSzn1;|F24HH>_qs^g{}p5RWBNvoWeX+_-Nl;BT%qtGW2k_<{a|L z{)0xez_MH_o}w>uz8`?hfHsoDFzhZQP)q2Rx^4_bAW zj2-|c1}95kV?wt-eV9*^`?0!+hFAuhfTBsYHomwl1i@WFHpa51$-2_S}3D z7rM@9_}cl~Nqx+>Ps{grC&9{qN+#=(WuOVrO3g-z#W0}90uw!Uc4ZesAFc%&nvp<_pbJ1u;BF(D zsRCXY3^@k?p^5*cBq&r0Rhw+YJ?ehd4353Lwbfa-T*mD-wX5#E-eQ-xKgHM2`amjx zL|?)Wxm!OrT6NjjnTgIqS+H0ZG`au+oo6XxC#8S}0e=+ClcRRQw`SF~WZ)jNI=1E) zKIKJd?D^sth(jZLlcBIMM@YymY-eC~pl-N{8xB@6G)`>vlRG&Rp#nH}>Xe(6U_=?vkoMj_%rQsb0GB0)Xf7idw<=Xv8x#xDr(S#@OJE1)>2YhSb}UOh)aSz5=9ni zVkv^TxrRA}1J3C+#;fTshgB)phmDm74b#`!FHhez*sr+Zj&AN*HhiAPl;3 z8W&fDdAjsQ$4wMhYaV2ZLiX$_tbOh7Pvy?jp`r|+E|B_MyV?*ELt$U7;7`roI^+Fm zEgb#u=1$eUo*OA!Hi+N4mzPS+PUi0#7?WR;qA8{X9D~CCshza7Aa6+1+1$GM_GkaC zyC(X=T7ysBJDbmAs)$r|{$WB~fu2BF0kD<&lpGuV`DuhrwO)^H*DbzyaWFWkGo#UA zV5xbn>*mdAO&{$S2X205@w&$EB!EE_KP&31h}*m?sP@{gAEevUJ+bRwqHiCYSb0*y zN=R-Orp2A>yMF6Q%AL3I|L!|}q^Ws-{EoJBWg2J8f|s6bUS7-9xuf^ui&uy4|4_c; zRpi5|CB4d-aW*%XSYE0sXP$Ag{N{;n23p10zba?vF*4gprbi=8S{0#~c&O-UedW zP&`{a8CZ4o%cIU4-@h#|D*1Bg+f((xLo_(}O0@Hts1zP+jK19+3%Ux1`v0lB^Y(Yx zfIn0uB&lVdrT6pbrR%4aeYM%k-~W=>WyiW%H>FXs zqRJa#UmCKO`0w2J{MTquXZ_iV0Rn>7P(&S; z{?J9hi!dZ%0Wh1{1+)pQHpW8KksH-{_|b~DOEwHTV}GU3JMkxwL#0AK9tXeKWhbpR z;26?g75LW8-KaY`H8)ZD6!3D2Yw)EAOaQ>s=HzwdgAIq5%UOh9&-DAk%FgwdJ$vLg za|T6LWlyZC2rh61gE<1iB{(=H;oQ+LzO!!}@88o}Wwxbt=~*)v3N49Tj9ge0JD#`j z0@hW)f^cMLd&WFkAQ)ia5>s`)3>M632a8M0Kh$LjA8Ob4%sjdtQpWwq zn{2pUh)d15AmpJlBpc`Z;DxjTGixdrPmC~;nNqkZgHmguX}peQnlm>LFPVQpbdfVkC`!vIjgql}N{sqYgK?5iR02$yBEfMG>yZiEXBsvA1E99AgeLqApCHCaQWFK~&ijebs z&dl+S_v>i`cM};-;|Nn1kH)LcpBX)taNoMZ)1#^5&W_+^;z5ai?#k*9HRR}^E@^uK zE2eTQ>lHnR00C=4m>8Dn4E)tO9yUyc@#9I%rk5gYUFZCD$T6uY<7NI`bP5p|g;E&}BF zy2-p1CZ_0RkoHODBWP7(z*Wc_10*h9ZGZb5D1OqXEejskMz2#g{ zCHVPMQ$RzFs{#o~WxD1UqE(0%M!J?&1ydU`ulLe<>34k7=kaMF21EBQ}tMlXg%+Ko)hlheT1J z@=%tx6GKCZ_T9G}I3pj}Ear~j#-9WPe7n4>Y1@sdC)--TRFN{6)Fzu|%zAzA| zsR3IXq8iT3h;AHYLk$4rodcRTu|$a;0VwV{va%+<|N6(<39i5%409DYN%FI^TNMH> zm!1O@NYJr}?RwBOSdgG2F}=h&*Kp#}J>I|HUny2>`28d}p=9msk)M+WCte@&JCiXxAf%#q`L4jar&zfOWN7^a zp=VDQML$;iket155xzn9P{O9_CNCR%c$h)jd~G&?yih{cW2jVV-~?tO!!mFT1p|d` z$fl;qV8Yg3c1$W2A#F#dh-6Fvbpj>ra0IcTKyyau7(*iWj0+B{KQwvQg$DGWzS4JWX!u)M z(OTET>L)u^hiTAe+;%wz+u$*L-tqmv(@)}O%Lfh)De~TmB=@9tY{o=ik`1Po32F3U}^#|ph7eh zsXJer4QN@EItd1}v0LtQx*!3x7xHGaNzVbVYo4n}>=g^q1u-O3I4qzP8Jc~~4TTS~wG%QTi zA+Tl8*`js@vB)#~PUfZ4TIm%yoe%}G`=Zay2KC+#uQ;-)b~;ruuynxhjsls- z^7S_~M=6?|jlr2uh2&X5nm!H<#6(ih1Q%n${L2jJ^G~^X2v1b1y5G9!dE4xOujC zgLKom&Z^S}mB*&9#wMzwe$`xaC>dP;ECIhZRj+iUD$`ToOu1c6weoEl$#;=jI2M4ugE$Bg4w1G57m_Bzj!vhn-udc!Fep1&eO`WW_N97m z)9slRE3OaukQ((a(M{kmB;M)%gzy^&%nB5z|Hny`Mx7yb4G!1c#}8=KFQ4gF5uD$v z+`^S-onb-=_;OIYu>jSKg))!KXK;jlE76rB&Oyx^wKpc~I5ga@-m~=X#-#d&GWE{jNY%WW`oIAfld) zZs>p9R1$8NjGNL4^%?Q6FzAC6iI+)lWuf3AHw7 z?i}51KRdf%>gdnns9hWD{#rUj@ITVfohS7yzcgEV{@AW#jWmm`VKU?h3>pzvcN|EW!K{LFo%;9 zaYiJA+`@%n4|dqA{%s#Wmwwa9Kl_fq`=T^&lvNqNAjbU7jB8AH(xT2gtMbQ+PxU$6 zD&Kyv0;aBTSh-TWAa;;BW*il~)!NX=OG_k-*}Y(W(q#4eG1FHsj1R4E&GjaFgGSN) zppu!2VFHq3ezuO`>}cXt_%3;~!^yrndbq;NvNERS@ORh0zNGD)$+|kdX-n++ZyOJ- z`%;yDCZE6fw~R#CJ2Nu;=iaiXvlF)y)-$$jvi4i|trJwzO}0gJA0w-kAusO|kg^=f z1$~#@W>i>1=ZSaEUh{W;TJ-OmtN;Fd(nvPc#1lX6vcA9h>be8wH=b@i#9F;<(|+;w zOe5PhyNivNCiOgsT9z}lqM6>zllvk`V$fQ`DeU1<=?;O-mr}kx2srfc-q88EZ&OV+ zjn8(y`V5LZIx`JM){fbpE|%~8uzJ(zpJ|uSy~`XoPWzF9_ROu_wm9Kc$0s>j36j_x~BNp zVVk9PbtQJsgD`gvx9r%vw>PK)f?4>tt(hOOr}l|76B2`VxcPm*`aHI@eSJY$&D-!H z?b6#Tz%gFH#Ov=ycx^8$mg4rU33~Im?lxn`%dlrw^LpE&qJ!jl@PhpKQfIJF;y@Z^ zvQdog>94=O#cesE`-|?$-(Atn)^ZiJTTp2Xk+l`Y?E=k50Gy;@RpsVwIvb5%dq$UL8oNn| zBwdjeucVu>O~q!DS#pv#FgBK%?u}wZ zs1KLXw_i#{xrvw%8VC#^oFhFE>SSGSzgBmZ;yMjO?TNr9%2ZkQG>69yolVIFXqDU8E)9BW?p zPf+Oont!VuD@JoHD3xyxjISvkDH>bZY$kDI;Z%(74RfDfb*xRaDp62sK;rC6oEJeT*QV9AvYZgCNR^(dhkV?abAuHtCM5Zq*>V$$9b&ZGAB-BowNVV3=+x<4=PRf=a=d5=o8n>;9(j8)2 z-ETT;kk1Q07=AO*Yw^d;njssjO7^@47#1WHT~%-`bQeTc2fFKu>cP3OX;8o~#NF@3 z0(9u41TyytFSv7c{mYmI>%YpfM^<%RCf|*8F~$3`K`&T74fWMZsUn0~2>rv0@@tp8 z^!;!nxYzym$yH8742Z_(XyeknlVOH{IhLu1>fwMHDhux`$|{$zq{es!i(^9NiV*WD z`WL$_oR(i^n6%;aJaoVZK{1rzVD64g(EicI2-B#fgBf3X14`6!zJGl@UHROxcwK`( z4a}E86_b}s9vxfp?y^&8@YhGiYkR8TUA8-9N0o6Mbmnq<88*3Xnb zyL|%gJTjPaIQpg_dhPVxC5hD&e`Y><{2ovG>(&PT0f2vzSWBoH1i+z;cJ=P!FD4<) z%|twDo=^%kyGuA>5turvv>k_}Z(c4YpV$?jqootGovcOg5^>#J749iyTcWPuuAJ{A zgt$dWD=i|d6zs*=PE4}4sl`iNKER`zT=e#YU{X9h1+}EcpMp}xvhS+3qSZ)=0%u`THpWyuVFq=-lP(d0Ve{TY{Q)3027SWmCi=2qP7>v)xHlr#1B;Bx!{qrx<9{ffG{y zA=OHQGElk3vyo0rwwbxU&qc^?SpSJxsd_7pOe;OG#`BEBDYJLGU`swU3`ygY6;ml* z+c)MIzBJaZ3#6kAw}%iE9Gn$Ti_wJy@Ig7XaK*VvDqJmaW~)&DS)-^aVw#FPAO)7@ zE@Thz>f)f@tamH3tDH@(pdnV4^h0tTHq#T0pHDLMG$N6L1=?^Ytcy;S8=LLyoYR3f z^GQ!hFR@RIYFqd6R&HB*XPeCyo0;per!N@ujQJYkKw48=5Zrju0%N#k!=l-b!vlxr z+xTU(@Xk>v2h&R9r!5EUcc>iKHZ~WGLuzSokgH1Fu99j63;D80pa!#nGQhZq*eddO zMoL*%B)cYe1#I(|;kEIQwuw~{wZT?}^bLt}BWmC<99RGVF+rkD4g*c`3UKpi7l1q< zsHUZ%U~Eo`6I(9gT5ZqgW8su;pm_r8qkBK6;X{qS$!8jDdS*e6do*GNxu4Lj{7n8|kL$DGr`5Eg}#}r2(_0+dH2` z6+NxfS>++{HJ!ROn>nw#ExOTV_*3uCA2)ap-*v8NUUhe+p^#6nFIFODP7u5R53vqo z_2Yj1xU}uqbmp0)yRY8;8B^T3+M2-d*y8s%VBeFj$->+JEGRkFb8yjy&o5Um-IZnW zDA&?3{i4L6Kw#>E4WnvHLFfdm2O+8nMw)HB7)}=5TzWF}_}9-3SC7o@{H?TJZFBud zaq-j4+|H)}M+{arS}cwgw>J_zRM9D9emnLBfWRM1ZVhR-lr}joNbY$5ex<{{iG^2dw{omBz@%-1# z+wy-uN05Fb9&cUycfsnza}A?<6LG{wOT3xBS@Ge47sI#0;TFzh6N(VxVF5xz7j0hPT;6+u z<7AOlv2H>7`neY&X4TE`b_23CBhx`(Wr~6^^6L?2AN@_LG=9HgH#ULLGUN0WfEaWR zmit^WH4)e2DO6n``%^U~H3v`R!EXC z&Tbp+C?RMLCmXNE0z;#Qto^EhiXjgWE8RD&nNr={+uT2NC5F$ct-?}lk6y>`or&N3 zGyK%yAG3dwHOIeP`%AoW^;@yJXz0V<8?zp_8;74N<2{$pw{`q>?a;G=30zVbJ%1s` z6j(dKx=H`OnGaWsAWbiwdSiaOGx*lScS(cpjdfQkmUtiKH}9XMmZ`|lXsfY(BTEE9 zxn^1ZD9*;eW@N=btb)GQIBzrNo6iS}XhRuKLqsqNpiL9B-R7Z*#AwXjU^AV}*tMqTL4^3j5=aggsmO&E{?Y)pgbj zwio#iN4$1sNwdY^y~D$RUM#^2i*ZV@K&}_HcmlpGm_5PKj0+MwpsvZYRh21a$PQ+$ z{Hwp@%eB_=i}q`SVtao|m_+JpT#o6-v=dw{4ijRfy$|ny^>OFgKi^aKT7;UGOQ;_u zyI)Wuj6C*OhmSTaY+l?(Tum4W`u=kD(WTaYj{rpitXD>*y?IP9q*hwzAT@a&^BOxx zgC2f*(sYhq+hlD5cH9(-3C}Iw;+zfy2UC;|7nIbJ#2}QRfb#FifjcZ02blrVCIC0k zP*x|le$%!L-Ewv^X02`W(%JhS<)l4jY)Ic1Ykf&&sHRg5v`zI7T)VoKS#~|-5HA)f@Yn6zWR)u2~87cbacPf2^Sng1cHW>*Y-qml1KX>W8g zKJ&jkG3*jV>H(58Q;@U7tmw$@TYrBZ&+Z(Jz9{HmvpA$O5Z^FG!{pvX@F*d-b9A}6 zz%JkcXOVeggg{R!%9iNMQ;8HSqHTf8b%Y|yjj0qUcTIM zp$`USa$)=78n-=z_VH03r*7S9lPy2hW)l3k%UJ-^f&-5*NTU)B%ZmY@%o9#fdXY$# z+MG%QdRbE(o@S@(X!q8xzrw=jL(_Vxq<9WO zo&!asV(4@j4z})7<53*lUaJH&=u~PM%yz;hxKnU0 zcb9h_(Iie59-lMyTIaK7W?;C;q3G`##|?67k-Nre=I#6IwKsGAT(w!hEATIOzs5p; zIvNd{C`e&gX=Ye>$SPe!H==N*pAxR^>6goFs7FZsq%5{H5*Td=7ia-buvsWr_d-{J zEZa1Xe;7b+Z75k>q11^CO$>7_oquR27u=q?mFqZ>{bTo@gv>MvwH%Mbk=6Nh zf19Z@H!n#Imd6%kbv0$aJvy>;iD%!QbJ2sTLsNibl5lNZbDpH#0+o4yZ83@P4mYt` zX`hW{K)dyr3Zyt&#*PqUfqOy$u{i@OBsQi!%+Ny$7!mGK&KyGlRvHvkiYl)sv)u{2 zpzF@});GBNQ52LmhlPCv$;l@Ec6*PX+;>@n_|`|u>k`n4sbn3vNCE)OJb-|Q!D4b< zTf#1pJ#~c6U6cXW`RIXI;Nx{8w)^J1AzbiOC*0TBPC51LeMRf*N7{IanMmZEzUZZP z8N9W}R>tQ!+H!bmI*KC6=`bdXoKd1=$&*K&9UjlV&;FG#Y0y)X&^YhmgLP;7hnHgy#mfGBP+JS+8#{i_LAPN-G2{_ba)xc=@$!!7FuvKsV1ByZ33I$(Nj zh53~fy9X996?$B%Hl`^AqS|)wUJa?hw1%Q7@j*3tdPOe>CP864*@VWtlIeNGnW)7y zMxD7p_<7OSBGu?IYg@#VBh^127uB{#t%8H09soa6thue-Y^k40M?s_^-2{M?C*}hP z9t18!KuG3DTC9Mjuh&@MOcWXn2zUb=u^xwH5|(06W(P_GOR-)i5RGXJ;sz`fMTD?- z&H;srT_EIvm3Gj|JJW`}+TOOS-$ukfyESw7>A2;R@}~!9cNUNSI`Q~^4@xI;`Rm`x ziD!UMJa3_cvq#VxJx;FN8knnvGFUlq^MAB64R<(Pzv0%E#|@bAaZ*MIPd-uczKZf9uVLe__5f`UNdMe2~yRVWb?s0TbO1R_^N zU<+>#OpEh;H=e%kXiLlS&cT1jeEyodU@zyJLkc*B+zw2@;Cw)28$800Wv~dNhg=VD zI0*x%k*N|)2G0u;@p>bXAXGU3Hpn<64_x~I^%8+&vWO&59-|FIaLrnPTYADdmU{-xIQ*CmN1pMy7CKURF`@Syquuhl3$`~7vS z%AOCnb-lb2r97xgx12ALUf61zhcm;7bZGnGjmSU$g8_+H9^ijZC?z^>(DXVz5(| z;a+SQW)jxUCdL(rDLw~ql5+!64|!DOwV$Qi>X0kAj*)ImXOz$>K?e)m_%wO;X2{iD zE8t>NSJR-}?VWvd+sr?lt-}v4olXzH?Xn)UwjTVJx~4i}%;#uO_MJbu=l|X}yhQW$ z*6g2qLw}y_JJ7P`>CXBfl9KT@{+z3|`PG0s|LkkNeO&XWzh%e4uQsQYyp2t7)6{dX zckYMJF4FR+DfdQVa#Zzf)KH2Ux+yjyy=CT}Yv_W|Mc z_p^mdf72Hv9&kKVJ$20eaq>J;H5h%qCo8BgnPyvYrYu-oRs7Funo ze-?b}zTT;$-#Tyn{&jrH@7TQc%=FA$ z8a}adhxvR$us9_$DmCw1&&9(ICH6a(B@8Brg7%BrysEcW#7U7fP#njQ^JLZm8+WWB zrq^4ptNvM78M5Z~ipOoQPRBiZcy{m6nrFc=(J#qat)E5epMQ_4x?IWCGogq6yc$gp z{_9iv4JSW|)3R8$6QTePcq$MZ3dB7m5Sch-j0h5IlOrH4hKdXW=jJawR|rX^l|dTy zQ~vl!=g*k0482Ik!|9Hf@zIHQi$Z`%)0>Q z-O7=cpd%DR;Gg-BHUszQjmZ(;nh9Re>EcV@ctZ@I73mz%?Y_%PnNgjt%bt8$Dr1%Z2R4tK*ZLYqHG397Q5M0eIlk;20@JfG0|@XC;wg zo6mI~JauGxBJ|MYw?)_Le)Qbd6#pY_w?xqdd=iP|8>8NBJ>onf-EE6WC6H;Q0+SK`Y@_9wVmi=CHN8eYLo~pk(1;Wi~c|@$h!25->O2MF$ zA<%q}buEMGnw~L?5WYqCyiVEjtAF^)sftIdg0CkX3X0t6e&)gYf0VCVS3P`!S3pFa zn2D*IKU#18?3ze@EcF$i{rEPp!YcF>NQD!1!$2OAf}y)oOwmjyd0~ck@xy<5PmV>e zqoB1|@HcjFH$}cPMD~ye`{iZOh2_Q|NVY14X9ez-OdN3)xoUL?~??OWv!mzHypf2 ziFK9p(`gnV&f6ek7)C*M2G2eh6qAEWak{eSXLQJi*-aaM`mdAknqAT~_F&vUeBLXE zE+Q2{G%f4sdO?j0Gl>8V1lbUcL4n1v8j4*dnTT4x&$ExVr=DF|Jhh-X%dDc;(;c|M zQH@| zwyG(&Nw4(|PP9)_0N)rMv7PKhc9Y6rsWm7%!kDF>x zIQL|D?@daG$$S5 zy_ION<$xhEER+arlHn=bU^tbQfzdCGazmlI1%m`KjV)bbUyGvZBD7PiH?A-;s*IYq zn*VI(@}zl4+x}1ec9okQN0SQIS(_ITSY(gfE8(qYpAY{XTO{{-@Xz(W6I;`(zr8B? zmOUZ2G@s3d(3bF2cWoI4tlPq9?A-y<0;Hi#(04I{|gatRJirAKAb-ubl{3qjAoyF+=cN$lLzvJB=e0Hh8yI<5eQ z1;GD6fc*e38=g52hr_c?P`n;MBShGg#bH@&FUh4YDc;6zBPUlPmky*Dnp^RD2sUo2 zRh9*mdHBWL%Y84L-;vF!{up;|0TwI?{zuWd_%r?gQT(%+wYk(RX{@v{x1vTGB{g$t zt`#bm)YuTFNJuJ^$!#25zhCEd z&hu#bkq{bWQii<9>7GU=PCc6B$t=;nfBz6l=MdM8en-(9dvB_UDWkFtV>k^H{kg_;l-}cFB%4xqD+%k%LlWK)`Dbs z+=lGX;nLJ|mhMTHcU2AEyvHF}gC(ZashpzvsWzudN!V_jhdK{}OLH`!O?|H~JoB3n zOP&qbf?;x&@h@m7{9xVc{K-H04TekCPs|?Pu^1nRn42G4>R-MXT`=Hv3u-IejQbtQ1s$TvpXaUdONC`zP5T$&m zxyQWYuu-!h6`@1`69yQ`4h#|wJA;u;Soc@0!9FoMRQWdOl zFhO$n08VR*MuMEUDMg8OWF~22D}FHPbbCvQ`rqAkd&-~l^$e-s2kKDE8J;XNue*gAcN`GKw>6-&orkI^~uNIOjegYBAMyWI3`e0c8J>Vr)y87FHZXIiR_ z>PBr(JYA(p>RPOBn9m&aSb5@J_OESA?cCuV5uLk?HfR4B(%9-cM@@hxT8?VM(Lj+V zj#$y(%P5Crni-d4;0EQ&N58Lr-Wd7W^IzX3-|(`Ak69wO1H&-jO@u}WP_Y?`Dw67> zgVr?7SqBtw9$A~z62hf9v4 z$P@-y(Gvv|6G#{=q0iDpcJr2q&o?5!AKd>@XaDMhhVNzzOP*0nKP6F1Yofkaznw01 z7z^@R2s#q5f5vvykL<^mb6R|Tzx((7MiHsQK+rhR^7=nd!@DS-+#g5xMTV)#;$@#E z25K;5(Fo1;P`{?l!sQq{4nzQ1fE+Q)z@7viaZ8#@R)%qc&_WFzcXnV}t-7!Ki)wdP z@1X+@=@5(qCIueXlE4P`gp4#e7%uy-`{h?{D76e^kPor>5t?Xs0Hq=mZJxLS`_XYt z_IS`}rf8?T&&vb(#eV)jSSAv35peuJ7T=VAkZ*Fj_Gh|ec;ohmJLb!N{E+xNlZ)a! zH~m;+MU656;Qk=Di~JV&;?6uNVyL1(dqp5AsW!ySfrzH@4bu zWcq#S?VMCu6I4IZB3F=K^m)0VCKYX#CI(fGSRYe_Gi?nrM zmq3{-Slc*I!_dih>q2Y7qePFVf%l!rSIZkYeWG;8==A2uxfk_aR`{dgdmrHs^itZd zBKQecFsN7#w~>Oqk?E_z+3WBiskYW!CpheO*F$c=i>fz)M!lymkKMSm^lr7k_VVY) z^Y^nK^NyrU>ew5n(Po|3?!YqH^95R=!JmT`x6CV_oVXg{t{3c5k(?Yzv%&bm-8sN9 z;6kHK|8{klSr=7o^e=b+YMiap*M}L7`A65yoNdkz@lCSrb0&Vi@G<_5Vo-@U>-?wB zBPA2pJ4yZt=Q@4j*bu0$)hCIeiBGFBo^@F^8>X>3c0n4f00&!rlbj-+bBvMJNRjC=|z#gJ_4iWIhCnhU5qk z2(;@X!Bj4dBLM^qflPo9@_4AzdS>^ppylDm28_6y_Ws^0BAz0p? zXEzFn&x;V3^qAUXb}u<>TjONX{}Eho4qic^UK@!jrS~P`{5uY*SXfG9@w*cExioNP z1qQ?rwceU%;6|rISI61aOIKwE1hzJIX*9$>y3f58(;CbK%9d5$Z|Wv zL+VG(wY*JKk^-Jn5>g?9ek8!Qlq*67PKJBAw#Toca;Y+p6kCedNuT;b^mF|(|}+okksuuN0)%~B$;j~fI8o>lTy=_C-r zk`JL1H1LgEdwJ@IZPbRbbG_fJYnwf?7biwG`+KQm&pBu5_`Oa}i3EMF#(pOc+&cWj zrAeT#mRn)g=63@^%jzQT{dXlP$K`CiS{&cnw{oX~0Ms0kQsIfZ$1Ty0Cn7(E{(O~d za`4RTs6tc4lP)AdgHvUuK|+8XH@<@-|FR2VUPR0Y4E`FVpW>ktA#O7XD~6{vCssYj zZ#HpPxjN{XE%L#qU-(K`*u##r|15UjzRqavweEuj=%B2XLJZfdBJP}8baG7>BqmVf zSFEvgFf&6;uu$UbVnq55>W5UIn8ToVB-SbMl#|+Sdb=H3m@}iJTD@3hbm7yMv1f}_ zuF6f`b1LI3do?x$QwtsGvf~EdXga|yRi*PBtu~;aql6TQ zbQ@aQ$^ed$9@$L*uNOFpM(m`+@l%GsPJQ-dYZ&?jgoW(U_bis%u4-+>{4mru^w15y zdu;YzqVs6Ge-Q_?B0`19WEkk|QHB}3^Z`A{S~M3ID=UT+0V1+^u?h?j+_WMo0&z~A zKm@=LZzhB>z=1oLt|P*Lgp|5NVq-M#5c~WK{Mx_{{U+Cr;jEj3YCQVm^VR;jCQ`i2 zpsQMd&w*{M4F*IS2&!#8P^F?QGBb`JdV^(SknTjhD-ok0V~OC%kfe8;R>|3xI81-U zzK#DZw(E(1>C+(?d9^iUENkaSD>z8BDbOt8w5^VM_s?Fh70xQ%KPx{}67YEYzHeRY zjizIljMwdc7L})pp{B)wH(ic_lMLWPez21h^KX%YTpuI+6C6N|%mEy+deUbwZ%{1i zoGm>$-Fjm6^)<0%OfvemX5oDyAgDE5dedsY^ff%{+i+Q}kw?_@Xv2Q|MhVUSO1b{J z{in2^x((%Tz#8IF)(YArOS5Fu^+V{`D~DX7lbr2#fqY2Sz@AWoeMv+@^!eX+7u+9E z1$fIHVHLa~ryYCZw+AgcywH1*Cyv}^pLk;X6KbJGiX$8bnhZ%0QHmi4LL;_ddWknY zR;BOm;~d+P-jeiWLf6QI;K5de<;x$v{(d6z=93bC4=`ChJY7>n{}EM;Bw-#?F_8*TNo1URDFQB z%ShI53L6D$p(ZgQ2S_i0R6&0`t&Jmm4)p*_1mFc>1@bsD2HWTFpA_p;DN?;reHs&L zniIH>#KL<9H5b-aJzETZd?T`V&ck?*^MJd9>9^PGE}S}6OW6$;c)%FS!bf9l@F0+D za4#dWXRfYe+rAHu;NIVv#?CQA&=O>D9J$yWB^>g-? zu*H-A#`gaaU;FpU{aJJ5zOO@(msby5o(+9FX@B~%IJCC*L3j5^Tb}rIf_z@#&N{aX zyOu9%N+?)yQ@p1auA;E^K7XYtu(o-m(mFFjwE*S(B|VQp7FSs*(jOzW`!gXV%;gYG zhDs!(Irf?kk6G-V`%mSsf65e4YLspecZ|)<8|sXH2%UEEO_B?3MH>J>79IjL$wnL+ z>{#WIa-Va~24s2cF&?lw@MJsdZ1*XZtvI0^suAl#c$!y#VT^Y~jhh3kUi==PR1j3^ z4-2u4?6SHt?WMo%!T8&TpGmd<-tSmpQG&44(*DHM-nqy1eh>nedd&2di5ILrydK19^6cFvaVGh55mzI!c-5iWSPB zy9l^4E7pTbSB8KplBbIX54D^f7>PL@HD(&-st$1Z%z-x4y`{Xp_J zV{vLMaP%r)q1`IsBcG+7$G`ym29|*!XrEA>EsIMl`%$rQakAy>qwj@DS<`7X6Tg`+ z9*ws`@2&4ud_dXTA3e|f826$Tz}1()zAG4k=@7k zm=(ycWeQPbB?@4up{Z~M>^Mf|`l&UYanC+9znu;}@zvz=@5hf*PWCH0<`#A3#uaV5 z*w>dFw6CreW@gdL;4b<&7LmTh}||_E4a94 z%d^xO?O4A#zk-_?A1of5m7F-pKK&x-Nz+bXgoveqVX{nPy$Ty*^Z~k02m-yGMKpmw1sQNV1gPAeej?$a;&+SOikvDTZ*aS z4pVhs*>DXTQ{&^R`$c+mcYztE@Ppy#TAf@5M0e-TUCqxf>%CRGQg-|7L_l53-{*Z6 zSMra)oY(1Z+v^l~ZYaM`HOyx5^i35cp4vp?NOO`AB7i-hFvbnBbYLSZZ9UhYx!vEy z<@%BficDn7DbvMPGM?lNu1BJ_2+ac9dnKTRHn!0X04E4XzM)JN&0^r7xy^thR6zB$ zap2?7@rxxBj_1~82j;r2+oU_Qr})06J6gNK@M%Y;=wr)GXD+v253e1Fz}dnHV11_q zwm=TRU<|?HK{+Sax-nPkvSThC;>A*n4QY<$Vs!ghUk-oKsP( zc&?3jg>@I~+&}|DrI`VeMTB@mi5;tC2lw-B;)<%H2HN92Fg+>{EH`hf@OBq)gH`xkX}Y$&YkaFQTlZQP^GsxLmFXFe0y!NM)`k%j6~ZYJ zg`4RdZ)paw>(Im`4uF{8WR+ccPBYA3eUHCk`NVoQU*;4&$-Em;UbiIUb)`_UwcoD<-6U1kTosrKev0*S|lWsXe|O> zBgmSgVMd4zWKJ1ovR+5NO%7BkGku%8`)>2c^Szeaw`)1y1;StqH_+aCXQn|#Il6X- zx4{9YE08TN79m0qrRg%RE){C|7RI(G4cxQOzxwL*vcP*!a$k23Cd{X(a>P$dq@kch zkP=W6KTQWt{r%Qc*O2I7w(zBD~<0fTdufexpQq-$;5c&6qr8Uzbg zof{FZ}MdL>DGRf?WFx%YlA=pSSHM|>(!G1g=9T2tv1tF4Ex ztD7W^(>5NM5%57oLehp*@!IravC zwKo~zEGCIcqZJLf+33k1(Aln>%hc>n^l6n=4o}^s);v6Sd@rSef7)!+-i9tDvk=Ve zuyx4nLj^T7Ybu;hd-7nZe)TUp{JQtdruVlMwG2h=WDc|I(wTo_eBXRbXS^s#!)>K}Q?cw*u9$$VHxu*8v zKbWW7D5}&8Jx9aa(NiI90vocXbB^LjxK-&HKRE&x&)Yrfa?i!jLVWD5ZQ4EI(UH5 z>>xUpK>(!&1avBa1W7eH=t4pwH(S9Y^U+xS)TsrX+KF+mAOFpiMP%ldUS817N`1q! z+nIQJ*YRh|eP^SNSM@y>UH-EXifY|9Xs8|4ytueNi%>d}86hc@s%#_=jJMmQJ~K-;e#7EFCtTe!udpJ9*}r zQI?yl%LaqJsn%#qK?0t0UXw^g3PI@~aJ~fzIMQOM{Xu@|#EXLs;%#Gp!yAkw;vA34 z=Ck(0F#!3;l?Fcq1RSu_5vY;9X$VMw0d481#+z#}99<};5eb}Ka4HrgLOg+kJ{f>D z0WemK;PmfJYqSDuLg4;H<^$Rt5S4MtyJeJEdfu;FzcSrTw61yVsb5-mZDnO}-Q^cE z4Id*1&i=&j|Jz^oWl!1P_hnzi`Gfoc*OMEbC|FjLDQ%OU?e(${8;=po<;VGCYu`O| zEYve<)Ku|O8CKJI?&BxVv!&^fCv$yMMw%NemGMXj2@%w0#8nPI&m8v3?xm#*PJUZT z%FXV=>KhxqCN413vNqVnZQX@3!$cGGX-KJf-<@>6qnG+2wc|x0kLQ1Eoc^5Ty?iUC z=|c6X2;SfCLy8PE_|UiXxcB|Hv{DkcN+%Ky$+%luY3d)nmwtcRz?+dgGBO89cEzR> zqK03!F(&i#FZ^B)-|QuYKCh{qQeF90_V?fUtbUTWJf1#b~#owdD z=Lc+sZw6~5iXKCGIV?hXDuw|73v5Ull>Q)^I7c)i#dV+N*3^Awp8R%w$D8s!E(V*( zn?CYYG7i#|A zwQ%tM>wD1s!rpOAH04|m=&${_Ze9Yjd zkeT0IK@R)gq-Af+%}xAnsKCk?%2@aG^tR2NuQdt^(%ZkMQ|MU&zlshlRvQEL4_qw| zt?rsC1f77_^F8-O`CX||+F7LDmfHHJI{(~#%d3uF^(A!;H>W&S^K5G?)qeZ#U40bN zY(HGzb|CE91?%48(&Us++c&oqdbGi)R}Imp`AsZZ9w{y33Cw|x=O1#BmX_I`2JsZ& zd;k&SP&M@lWTjpb=m_Q`+SKMo)@rG~mu<+nRYVD0Wvj#uUZ~U01~t9Ww&_I~BYDoz zBs^e)5<(nXo`r?~>z;UYsU+?}{;uK;78xUE$5Q%Q25RnYIe4qU*`OaMH)#;Vf>{~R zQDBkPM8Q~E;S?NPPn??@P3vU3j}_*h{d~{FrBd}&Nx9B*gJ^P|w@)8CKhNs{Pg6P` zur(kt9W3|c=OD6~HEa(dKt*ulPDac0}fSof)AMAip7K?;kLFE(#n&>3}eNPSr5~Prq zFwLOy@tE6WMa1GywW+65@BITF;U5i7dQGH^eNK^O+5$Bly(aMx0ZoiA65YDteG)G% z1lqYS)CmbvNz?51(tK~b=ChGgU&QRe>q04Yi316e<|tHXsJabI8R%wnw}1@%GvEC*iqEX{Rp55j>OhslTqrP5)?kVQ7l7czyxMc z0^}*nw}Wuj5EvujOxp?=o-_hfdNhKP5KEUJm7#2I-ZS5m4d+TCzv34^s|>!w&i4( zl}2{Cog zu>xJ?zM0U1kVN?Kz(})0&NsvNlWdwp&>oEslN3r$PnDAlYt#0Wd+1E1tgHDZJN}l+ zwhoFup6d+OASZx9Ezz#upn_0gzkZ|UTG<&#RWsEPM_R>tEmuBF=L%3GI|&MTHkMgI zyK%n{$=FXH8zoQvc4aF(5HRj)l>v$9*qs~}H+ zbEHdNa$5kNou$hp0g$5v9t~ko9E>QCEFeeAA`GR()GM^;WO63AoTevl_449oDm0nyD8yATf|6zMod+Ow8UIyI zTBe;B#-PcnouiRdP?&sx2xV1o@;h6~U_seSpY%iQdV^5W5U5F#YeF_cVMruo?XXRa zSDwQFWe$9OhLG;61Beq6W9u9Wg9vd!bU+CEKcL(Z@^pk?!BEn)+74OHPL*!YNVa``-1ES3oOR8|+ZZcx4w z@1wqkfgvIcL>Mvh>s|yBL{dAD35p~>gf%emj2mEcb)U1?WTMwW8rcR|*ySi_ z&m0>vgNkglf;VQgUj-eD*Ppohx!MR7?wl&3-@Um<(~_2|V5a#Icc2H@U;^1}VU1d{ zTpRYjW#ywB@pkv@Ly?LY5RZmYmNEzejg~_HZ;2RXr)`m8~2lYA3r<)TdY&2 zuDDCr@|gcSlSH*En0r^*wlAw#ctS!|pIB@ROU?YOpJ}I6i+*!w*EKJ02dl5|CD}!6 z6O-D(f*k$Q8CEY0strm%)1SJYJ`!G2H_C}l0J&&=Y zPn~YLpKjY%6R-2Ks4j6{*iz^gR(qi&y?R%I$xHU<`&d$N0&ja_A6J*_y$Z=E%FCxLw|w7FPl>6g~t3^kxKJU<`!U;pSAR0f-|+i{Aza z)PBmILuk#zDZ(ZZ*X(R+?fXaf$_DO~)dx$~nSf?rI2;g0$bhnqXIVoyVES~_t1Q&e z;$X=X0kDUA#^}j`T(AEBnNy@j3Pj(V1a|PKXyBz2)zHMaH7>Xj%|ihbUt3MDztEHH zJpOd7S$4v7`KrHO*i|zIF+H>GXyCxzk{0&MkFTfsRl4|)Ou34{5HR*Pf-rLGqHEOr zd~HhEe9h#*)}H;ps<(vweAQh1@8`sp<<+?(>r(38PbSqlr}UrqyfOIp+x*PF`2%N6 z`r6{^24mU=BT}w@O0p+F((#x!5nDk?+>T2FmPmQ9k7ol(060v~*6fKGlkfkMc<^`j z{-_U~>Ayl>d}EZ1M#BK-1)c<}&~6|NwLw^t0V>GRuuT8Z|KSp&cbJt64Yil}MbZjQ4H!sXMwGroLU~iWeaL8O_ zeq5aUWB9u38QurG$5xuhaAXSB!Qe22>%d7km{cqrAf_AJln-(FD7FwyOik=7e|)>v zH#BhSV`B4lBcphk>;766&p8Tkupf&Cop%mo5-d~P#ZdWi`+L>kPSNQLvq>J0Rc#W2 z-AsS=ym(h1KK|4EV4;E%gWCjyM+cLt)g2RTNE!WxCUUn%~>9Nw%sa-w? z9t{4SZ>?RZpGsNWcUq zOM)GjI-6C$KaTpM6}b`@8ZzEhQvIv#Pmf8@yB|{rBifV3u+^fWJVi2S5C&H21UnG0 zH-_=0X&Hw0!NP~lRq@)6GLZEZ?$#kE$)~5sE{fI5#zs!O`*9<3alLoMdr)t0_BErN_rJ5l zR96JU|2_x3t1?m+`c>5r>>U2}Lu+Mr=ld-D3-QldNu2FeajVaizMgCQ9q`W+Kywt8 z7R}o5pi|rGaMHSKDf>S?J$P~9@oG!is;VfZ`W&<9^rP1g*FNrj(sC{+_{+d#r`fFFjrI=<@O2SJp$heSI;qvu=#L zRqKI9;nS{9l!TO{@iyAdpx|UrGxNc=hV!@F zbN4^qySL19xYX==^iZSr-BgCTmpPV0#T+#wB49K)Q{D3szY+Mp8j+b*uto^f6hhz_ zp>U+4?MGgfuQ7i&TW%lXbNJ=inw-!&xEzYSU17p-56#gB4jge(+SdzbZiK%Lmw<@n zSt4Sba%49wPVVmQIN4>OS#}0x$KU15o8S@UL>K} zy_=00eIOa(O8*Z5lw7tok_~@(XtjWNBkfw8jd`~qiLZ}BxHPp{fz%9Bt_=wH24<)% zQ2iylYZC$5R;^!MO3{31?rO<_3T}R|)nO=F5!q;ExGPo1Uaq+jnLG0+ z>XXNEPVM4sf3L^0fQToOivutDbHc@fHD+oZreLe3k+P z=cuhqPFe{is6AtUtqRe7;j(M~=^;BEeW2dIO0p^41s4kR_MF37_I zRo#pMy5rcS7~l+KOM!4{0fs?L@YRR&1A*GYNd@}TawT9Os;3dS#OGJvTVMEdX-`eR zYOsA#2Qc-rG3!8`0;j5++gf$AM9W{l$O40+8`V(t3=)##`H(iTkr15NgujqC`NC8d!LMW0J>P?7ViO+(eJGFS~xB8OEo|kgDa1~MCG|9)WN$h z>uT>`(#fX9buP|?-P;aak+e1keqS36j=|}q@+)incDFhC-`{pESn|^FrE`G|*PNy> zxK#!%d+4sx^*pyGi_-6h3eYx+`t$_p_-!OPI;R=CR>yWXul2v~*Z`TBVD0B^3@IyZ zeFD`XMvp9}Ff2IF6_);-j`-to|F8qwZ@0g{2TGmDY}}jeO;n6D|Mwx%iD*+@taJGF z+jCzNz)T$$^-fP~%jGA_S zft}alu3v+&m|LhfT*>xriM737{ljv-KmR{ICP7M=SE4=pI24JWoC492^C2FU?m}~cP~bZ} z1i?XXB!e4Eg_AId0xBx{IS1^G5FBX%gz42}lUQ;{;CGE7F~8cOkz6xN66C0spN@r5 zu)trlS<}D+tLq4N)ISVT5THO8L68C@4+XUXlx4DG+jrrQfm1#<#rb9B`-NHB*X7u| zWEJkVKuAfZ-}dz!65j%-zK--$DN1)8Ed+OI+PQ)}owdLZ4f>@JR%-HA*c&=rGb>MZ zEi_A?Abr0|+tRFPGt94}$6~F0W?@;<<-Y}y3%eV_`InwM`5?I}@P{ff$Cl^EDDFA? z_BH6gIC@|AI`+~r+d{**rcAm4RT0$Q&;%GdfL^f*GyBp)1T-suYa4kZdjG72l1`Rk zUX`O^KlX!NnU*g$OpR*Qlqc}SD65z~7Z|*}RJ`(ILis@Te|$^2au}L}g70Wr_1Y^k zKH2&9;fdK$>)ofO3&-kbe~i`RUZM1y2?di+=zr=a?fXIY?4tl7HcowBAV=8K*=j892hRdJU|1l_!@L>O_j5Dq9c=MNc`{L-% z?LYh9eH_hYP8BC@v@u%4X1eAns#JB@Z15Dq`WR^7#EyZoeHAEl2IflF@v@%1KZ%E@ z`?o9?uS?mpzpnKg-_6V>1~_2^07AlngwHdm3L-QYWRfsACO8A+#B>e}kLDvdC@vdA zXrur&U5XG(1_C{sga*5GFqDFFBwbL#L}}s#ft26c+!?d0tGQK7u(52d#%V|6VMI3Oa3h1vAbu2n~quHSdd5yWbA zK-zY5q=@RIwHrFdw|oA+^$UJvZ*;tjl@%Y!%tvIdC}U7u#}c8FdBd|AefMzS9tn8h z=kU6~HL5%2n*G7r)oY{4)jd3S4#wC{MaMQFL!(l$HavJ+lf7Wu+n*Kx>n)^wfWd}NR>$#S$@x>o~&^TdSH!i7P ztTuZ4eO=U7t;hT4Zh;xaD6-e&_IIgw-%I!w)DHK_gi1W`WJ)UwA9@W&97fSe_OYl6E*5|W~_E$_HA1I z)V)nnpN~ZhzNr6=|1-bi@4(5`zh`z#;;SEwxaoW>TC@LD&gi%Q?kxDzGkBZ5l~&hZ z{&9rC&5jUy-s#5j+2wW8P4$6#sifFU(C10ECB*w8wzIfG( z-$rjlwwsUC8uh%@Lq{X9M|Bw6*TX#@VZ?VJ<&kJU@y;j4!>F%S&5?iSFXq(ks&y;N zyxy8oOe_CzZs#7i)C0i_brbLYEV*`X7q$9?nNduR=o;OKI35*ptF}L`cK-4FTfJ)y zA^!?bUM$utRwEK)tchljHjsP}G%Q`os!h2%d*0-q(!%$mhF?=rt07U}(v8EeUf$*- zYrj5lsi^Fd&E|$L%!8&XDwap{PR)!DTs`w7>~&v4DcxyX;i()p5#s9~c22xM(AO{a zAH4Xs`?sTP^T1@?+N;6rS2w;;L%JTju%9mY9ZGZ_(DU&gES-OJceMM|FP=%*$?4>M zAC~t2G~W__a5eYch{@jYS3i#RZ`HDynM_I9Y5c#gV2n+)F5TAx0tU?rOTqOkG`*&2i?XFOwr&urgeB zBa)ayFYuNsh*gL2J@UFECr$se$YhP44cPQ3RJgVvVu{@P_Lk+zp!JlnD_XKJfgqL(!dh8uVY=)V9k?gHxitk$v|Sp@+z2XEES zzaMXHSgqT#zagr3bmK!aHR6FpnuXq;kX8HP+|iozD}5%aSIsvTl0g=MErn%lliNTR zkR)L$F@e@1Gk6YFrLm1b6K7^9!T~H7DF<9Z8JeS$d0kG;CzxHQL!OR1kBokK`s>g3 zjmrT($DH99^x(OoZH0<9hZFtUJLEiY(sUc(OCL$3BIW#!-%E<_&fk#yadP(5P%;Y_ z1g9GqA0{YcgJgmr#&%inD}1oqfp`f$8$aw)ww=4_9Z^n6@gIUa~hw=y;%0FP&**yPShWpZxQtVEVlacIAvscf~6~Uyx2UpcE_e94v$B4GdbFe3;WE_eGv#y@?pX`TslcoRMR8I^|AAR%ce zaEK$LQQwJ$^%S7BTAWWD+)TB z$>vGPN@xJt0?IJdf@ogKBNSwCCMighqpztagrzydh7h&%qa45o?yg z%{{FK*Np+DEG0sWp1T2(DpS+0Av{EgE;mCd64cnv57dDcR5(*m|M6jjs+?mQmL-9d z;7s7KlBeDC&cIHso7uA0)pz-+YivhgyQ8qO&|Hxi4L~6w=~TD1BR1vj*3oL^FHIlV zM!a)6F+E`J5b7?E2LH2?M5>J(_`)su-5gTPi*qvSOcI}kM!>0XDvE4?h4Z}KvG7KC zO!;%LT#9`TZf8)7w*z}b3>43V^1WY@sxRXVxxGFb4!~KMuDFXcSl$ zoE5iT2FER@;&exh%{Z~;@=y~2n2cb?A2K5TYO6QP#L(K?EM<0c?Qq2#5?SnYKu3!f zk|`7!h$PixDALvN=N7Du7fQLS(MC|Eg-7nAWn-RmtYHKMA<5T(AgyM}8SuZI(Iu}{ z6?rdmt>BSTW|f95#jiNH(z$3TWynbrZes0zi$H10%v=8Qelb0bd@;o6F#J%UjhV(9P`#^`1$kTaHeXES*e-qElt-z}`ZBmNKxE z6$j!QZ4MJlsnSOpaS!;pYjyJJijY8hEnXOC{POGbMM=t;{pG%ow{?6N6kh+H?H%P? z?*5YOAY#So3pO`BFZ}pr-R|5S!Iy@|X7^^e=0?k1g=EP(a#SxKj7EFxrrTK;9)iKg%HmdZLL4bQ9D>0Y?Vhxl(LCZ7S5V?gTG7;U~Cn(C)(RcUhJ)K=O(KK{t1C$8%c3kgAo zWgum=92{H?2(yMX6kVMtn+aZq489x%>B;@V>a11YIQ)6Y2Ib!VYL+a9I6Qg~K0C{1 zP^hYUX|*H!TCc&nxTC*E-jocHNI48C0|pDh?|Jh!XYB8QB)q8dT7=l{@n7q=zn)Z7 zU;pMj|3ESmxBT@Leko(k!Jo~N+ke+giBzLLxBLq8nsv|(pAP@??d0(b)6WWP3!_lnXJawzi(c!UyP{so6+}mt=;qR zXw*;J{VO+*UHo`p@3+>!v%{B}b^9*NgkPTc^=$v%oI7*@)h>BR7d65mv+iqD-hg;DyWd&!107%cUS5jDP7DmnmwH7Eqzt+iZRQu!9S7b!`r}K>TNKMT?XsU3 z_YXaH?%d}ur=n^`Pd+-<95j%zGEq3T^uQGKH14}>FA>))eR;ekVlFxO{nNv{JzovD z9o=QyLVkFaJ#k;}*v!o{&%_Vvf4??fecikIXUo5#Gq?6shjxG7skIT0f043ze~7=R zM!Y-hY)D8zNWjqWo|%=*KLf>MzaQ-XV{Wwn&)pr%(`6C!e+u{ixqi~^U3hQRo@Y~! zYU6@kN{A`jJ<)MIoz z@zKve_e-q`n^78+t<8pAwh^E4XLj#;cl_Ni?%5#g>U<421_gd7fFwo6AsmkDx286?=W0&ZNsFL)KQ7+Iz)g)|>H{ zf(mlG2hY!z-7a4?*b%b%INX}(>bHS~mLhyuwa&@tTR#eGK~KVCd&^5p#MeV3=| z!gJ4mnQ55C*9|VL4vueG{SnKS4c}b3`vq+)T{{Sv_SrmzJBB0%K^~24d;;M9jFwg1 z7>Fdtk-upO&Vv{pq>RC$WNkA@P)u-Q_s;LdealK-D)`F!b7THB$G>}^3-!2-jxAz0 z3xapnN{2WDYgrO{>1*HSsNdo1BFB#5>RMVe^x;8Pl>Qt&ck>DWK`OTW$ru~EEP8W3 zFS~cR;IKZ2#b?XWDSop-UTiIHvWAg61kZsvs%Y8eU+qv31cwCZr<|&A*EEBY6*Hb& zfrvJm1#-{U2o3^vg-m=3C9ZAtuAd=?Z{fX7+mHc za4T*is8bzP_#hn#gX3dJl8kcyMXSm*eJ>sz)B?k3NEoF}0Fh+T>ls2l#gurqNA1#^ ziMYzBv{0Ta=Zjn|ZbK5kGI`_Q9}Aaf25jp(mW*;P_IW(svMIMSO9bQdh$M*!CcNtg zm$HiQRD@#@I4a@J?!&kP?UbW?%FVgwHDemBngpy-YBzSbh<5dv{H<8;mmu|ZcclV277Z3uQ7%@5wE=>4b%z-mON&$-Z zRd7L()Y*IlLpC;@fPiRN4%C4h$uI*q5i$VHFocjCvhn6NL=z#pl+gczVjQ8X=9LxC zpUbeI3*_ldg#SZPz=aY)yn&Ksql*I+np~7{9Y|0Zul`k+!k1Y$e>?2-*MXI$cKCYF zSvPF>)H+E=a*04E^UB$`2k4)vqQM{=K$pr;?r4 zNnGw#S79Levf;p*FeydR<^$&Y3X`*|8+uCHTXjHHACb!i`+~cCb(Hp9H)pu?F6X2N zIVjgAlynb2y2YZX|M|o7ySCqYx^goj>b%$2fiJ`YA(;bO#oI-~Cp1QW3kRYaqpx-x zu=Raurd9}#;ls!V3{NtOAH>lZ0qAH>d1}GF#ZKJ9-4db5Ssgt**o3frtV%S_1>X z!3aPF0kR+9c5C#qzzar^u?Y*hq+mimY{WQ_DP#eNhO~jdV;WTfgh3V5{>Ra|hco^D zfBe0fwK=toG@&*|6dJKq)GRc|P|2~j49N(IN@bW+re?HqtQ?cnoK{E;5jj+jLpqU? zL-kQqQosBA`=@_C*Hzc&D);-oU$5u$@u1P^9ZKr6VdybcI*RSkf&>S*kmUe}p(F$< zO*i$WrWDWgM0(=$A_N4YUmV2L(W3hiwGj*-EL==5 zihpwJuTSHJG7Ig<@^Tfx0R}J17RvhzEsU~!!><1MoZcg!3y(U9^&QRoX+4wyNL@LR zl%r?3>a-OSSpBk<69HFq59ehZ95ZWIRuBprn7Y7)E%{|tmr6pN0ftZ z246*p1y4!{@je@YgM;EO6GDSd4u_a-gXigl@BZf4(hg^m_!t2Q+;cEVS_qt+T?Yt$ zajgJa2GFPDcvK|0n67*+5C=S8VnCHw1IL&=4NvM6?t$oq9Z8*^NmQhtw!}vlXml`~ zI4BR$lISQjOW~~}+s4Zy2&T%>kyJC>lk$J_CRXzMJ}HpRSq4Nd2-LGVR6?A~k(rVo z@5?_n2z_d{hV)Djhr5Te8-pvJNlX1p2m1`MZRJ0trL}O8aSLP8rBp{dJ;%uC`4KPQ zQR%M!q<}0i3nr+*7#M2P7efU~jp4|I!wF9Npb^i`xu^KKVDIf0OV$3<#t_6|o zqzvFAlc)k?Bn$^3N090W4k;TU0&6GWgkeFB@d#ZTjsypx_}yDQ;W8kkeh38yK-x@< zi7LfIDy6V+;FlI%Es)(>t50pA&=4Fx|G-7sCRrJGRNB9ZBF*}2Xd>&F)k-OsnY?{$4g)KpvOx$nK~MyK`;Fn&&`x}kXHTwv62Nc7T7 z&Fa`E2J^quqLwndrosbqSs~-iD*I=2XJ?%Eoro@N`W04tzhQ}?x!lU0RlQjqGe5uk zPxIsRiNhBvS2g`taVchbhu7`R1lwt=UGn=ERT@V z`v*z`)?D!z_&EcH$*l<=_H0;rAG_%N*w|@e?9q&O_s8*SP6{0LPI?>-16}8CwDw5$e6w^1EYG!1}B1YI2S*RGY4! zBmVt4ojHz8m2H8Ojm(n9U!C8S8)zP-Y%pL}s8uMRSl_Lt#C++P!p76^kRP?$L931@ zcR2LR-xY7m*}KE%ejL(JT3RD}`NdIJa|?~tm&9eiY)7(>UUAOYJ|!w>Kj>GdvFQGB z-g3u-T8kYX>nn$o8~5(*DjIxuTQOu^Y2@8x%AKZI(dc;7u?LY4{=|Lx_iZ8ib%RHD zQSrs!I}(b`D{pJLe!MdK+w+jaO8LE&(W_^hwmtmyZuOk0<@{3Y7Nym1KIgxwxsE+r ze|TO~!)LT9?78LDOG=k6DY;LaEn%MexhfX_@|3UISXS4mBMD)2x#I)4k_zJ06teB% z?vK6SdUyX@vEKP|uD#0YkHBdJ-hp3EXaZXk`A9M4_+TLmsqoO z>ZJ}kMT8~6=q$J#$S^_b*3hP(lT#1s-USb@_%`N^I|SOHi4UV1rzgwT#=J;4xx{`Q z9djykM;@Mft&0@*fY!oLXZpEOK%NZs_HEy1yR`v%4>J60)aB=!f*XFMHbhlsuC_nK zL8R(QHzjeN5GoMP`YGI&si1SN`^8{_Z!vdw$bO)ecD5to(Wllo-|}~Vm{}ya4U|0l9vvH&9Co`kss<~mZTQe|A+T{P{q{}A=y&O7 zEWIve-}QC9am@8o1IqZ$R`mtX{2xRK-KQ$nR7n{j_bKMe#aSvbj2*S(Va%7s$MsW_ ztpIG}0d*uD0*rh-FzxZr@qwjrw;4>;`e-JuBu^Oyo7!uoJn2asQm_dWY z94bQ{;A?^$J|NBQ61VX;7pXqB~Tgi)Fdcj%_e0H73ZwJz3bc{p%q*P z?*QK6ARSC)f_prH$496#h|~_3J3T{FQAKz5>`AvqCWtT`Kph4hGd5Mgy93ACXPVWR zAF$C$-%n6b>Ptbb*|6SXV&A{T;lpzuUVm@-yVbq_@11+SNn~4;f+|Q{+=3YD2#`Y) z10!ZU+;3+_2};M7;itB58bhQ3wHBrYBcMeWZ1~+Yc;`#h*^u7yD|%|@>)(-XiW{$1 zRCT=6I`Jrc=1Ih+wZaT*Vmj=;K@KTfLLu^oBy7g33!1j(!g&dgGs4!}3CfR3e&y2ZF3!H1vwRZKh z{`narjV%9!Dt!|hd!(AY0#u$--d5G~!!LAnZ2HtY(XN$8BZ)$S_sH{%fDE2o& zi;T^kq=pAu0Y3xDl*b_BSPC>w=Kt^n2#&uRkwpTPs4)&8DU3nw0AxiMTj9y=1V4!h zO^>uE2c@BP=BHW1g^gpyH`Z~R#cWb1SZuN-bZ|nGG~VIjRp_izzV+zT1xh;uA*@Qr zRKs$ggoi$ETzRy^Ny$u}u%G%MZb=ya_txQ>t%jFJBYfM-XDjV(>+Iz9GcvFomIxZL zt!~D{fKU#p4XNMn4#LM=dAjTSRPvFSalVu9?or>=kvmVzQ+_<~$wH|R)kW5ORft#I z8jF4;ZhXD4@#^S!rKzh7fAIdw^!m%z%|cN~SI`(hF^FwOr9s+k?Lx-pIsU*E_VUEn zfrG*u0o?{_)|hGtq{5lLAQ{p@vQe!@LANCNGMuvDqZ8*dH zH+e+qUgX@O;(d*OX_*USAuI_)1=uhZ@Dh&9x^-@H$ITT{F*&vCOwEqNsP@HFPP#$X zwSZ)vF`lXy64xx2pv9zpw-dt~!k+&sv;6+O%Le6ji$lYyQjiH)6M%t`O1X&Y^k&qU zxRM_t521HrJm5R25HbPuMrrmqmpGF7xwO42ztXN>_~YDkz;E1QZ*Ndt^T?t43w67E zzgaoDbIB;cNKoMDF#XERuzUBvI&*i-@-yE_jNNwin0n2^Fnjz08^8YSN(i8)Wlr^< z@3{PE`qG7O-`!4Vj5+-a8#7#9HJt6NYsfvL8y8~NL0Szucw(1$w$WDb_iUt$0|yfq zD@MV=%O6EXBE-gcc3-jGM5KL?gP;>=1(9)F8NYXu`1pj{J`$)V(B#w-nklLP!$RUA zR5_sDXGmp~)dW{mQU*$s)LW#*uk`dAp3v|mF8D6x5g4i3kfaTk=b{f;Fh8`q_V&sw zLmmrDmGa{O#dysc|7PqnUYXD7pQ*nR_m6#4*=&|7g2{vH8Cq?pA$m+|ZC;kQc*r-{ z)3l_&MR8{pyUghz#R28zM=!0SP9N`haFdTng>Rosl38;j#bq5AFbxR#aQb~~W&061 zwozt=j$O5mNESv#Wj4Jn6^Bb#AW4n z3A(!d0U%VOY7U+(MG{bcfD{O1xTvZMmIV*bW*f**C}3a&6JmtmpsbSZXlH!1rf8UB z#n{^KS7ptkpXYJ|L%S)OrNYS+k75P1N0668^t5dXp=|1m=6dnU_ZiCHv%wdR zum}?h5Vsj5Ua0V5hya-^d)A+R0Jh@2^9>%$@4dhDe{)jx9dgmP-<b62HW~#?FSWj zMygE?*R;pcPB+^z)mpiy*4iq;lnQWgRRB>!7b@cUouNG6 z{e9rbiJ@gJ9l6@uLsyH8N*{T*NGA#W5C`-A+N!~tRSOO?P9-01@|F%?GYY-zw>!3K z>ep**a_Sz<&)ronN6vl1o80zcqZ1o%AGX$WX%^6g&8jJU14tWWe5$RGe)EBB2!ZAx zI2j630hSUQGS)^Fb;CErM@B5=2f9C1ZOutkecc4;ei4uyNxti?ve zN!nELzyQ_KAq>~@W3po+ws%-uv$dIKRENM%X4e~#HtI$ls)<>xI#Z?14ziryccSs* zpO?S;QjWihUYuT4F<7x{)_>b_Pk1fcszw&?Fp;&968LexQS#rTy}Qqy41afG^!&ct zJD=+LiU*DsvA^*4Cfkg-`E{k-RJ}g(OkJ$`I+}J-d3?TPzWnh5AjO}4@Avwvleu`@ z=&+od4#`3Xgqy7CAi9I$Akes}5uknGJh3me4Mtu0`tD`#P}G^(t~V>IW9tv^3p_kK z6*V2tQX%l$wkAp-99Z5gW%BABAtIYc8bg7DhuYFEWIb79iw_%x+QkS40&2%m#36PJ z3>}zeaU_Nefs6tPGzy@}Vc;0(eKrqNUMjEP4*I=mBaDhhHMSLUi`I!hu4Mk5+EN;R z?(3cn-wr)qh)GMY+;(ARc&5=rp*$Y9al+aQOOG%yZJ)w@H$zNJhIgN0enC}(XS2F` zHbU9Dv;&FkUx${%8E~<3s4$ReS*IIFGj`8?`11alLv+2=W_Vnd)*35~SD#yBzP}y* z!A?FUV;6@&qrCMVbRW2;Kr0*xx{DFGpw$@LvljN9bzFLS{ipMmyM8Ndms|Xa{|&nr z8~-hyC^#KfyQ^;7_}Tg1CWqzay?ggw6;`w|Pm$OA>^S#p@2>B^GoSu_d+0Akz2DS1 zguTb%zP`HHSn#AhAohX9@esI4^2D&l&Z=*3C&s+@cyCFDIV6R_dn%piIeH;SH5TVj z|F`?kXmjskZ)9Zc{b>H4#^p<`fIBz?o+^V88XHZVbXBgPPT8D)lhK*AfMa(%U?cP} zSmGY(bSJuiK)u-aBT-^MCd62a?aG<;>o2+It{B*R;7Lj4`Q}lxotGOIp2tp{cs-kO z;??tjezH)nTHupx7hNge@zOk4%c7|Dh?U0lE{|qk(POz&d(9l5Ue+41g=bMjkJ&R;7-8Y20lMokwNrQB-Ho|) zLUF@iyL(I3TYfEmG;&;Cbw?xmdT@nznZ=clTPl|pFMGuAXi!pk_jLI0H2an+vp??Wh`xpqd57AM^BkO`|nu& zr$8O>4S=KTg51g>j}AQFx&h%k7g2X{@b~O)i*HjiheKQ<5=E}ZH0qb!qL0VCzLMdn zQBgI!Iz06LPA{Xc?TbUVt-Fd5XenV&j-yF7E&-~(vF^C*);ULciCEN!yCmoxn&my} z9|*HgQk{@~7_j{LJ3Tr7)AjH-%|~86ijDeErOYRCmC@QG5QC_Pq{6#UJXs~D7k89S zp&IR4;0aicEP?N@z#u84bgWF?crvZ$f4svM$;7ln405p*28RpcgO_&d9sr|Y@vG?9 zN+`JwT?fMs9M$mzC$31+yvBrq=#UD@#cBF>bR{($*xjp>6jVLT5gz(`d*oN`TfVaU zw`-fn4lfEDcz$8ponX;+oUYVatVrM~;)x01J0T+=arq%Mk78nfZ=@p0&LUUymTqfb zl~SpG-@$w6CYXS#jv3Xezq2=dr@uF+?Oj9T!uxYeqR@lNb}IVwyTbMuVfmiL^uFny zk*{CXCw`XJB$E6@=#FmlXpb)=gBGLNzf8yeD>>Nsz$mH>Tw0~K96QS^r(L%>l}(}d zAK5=oCsLhJ84%5xOoQ-5i4u!|;IgP31v!YvB?HR_ktHE8sSqkIM4Q~s0Ygj&BDrHq zZY+qD+6C~OR{GHF6pACv!j;@QR$s6_qB>^M>@H76hi0e6XMyG(P;j(!WI@3xWtX1S zDCkcLAez0OdRkW>!@=aL8k=P>8L+`{OtdQ^$-$0Fkk{t!eb#iffpW%DSaj3t1A~9i zh3}ySBk@_emHTPZ2$*t6plt7X-&G07ha(stAp?SBd`JaDh$$E^?o6bA1=BNiD?Tbvr~GBDJk0s+R6%BHlz6C|M7CWggfvC9tQk9Iab zxD#?)??9i2O-jI;4F#VIBHmB>ZaWea9kh1H{iOHzxwaGL+v>)58fo-4rr#=iTCS>1 z28eQEf&!d{;DAQ9w^Rt+J2C`tDeVH8i&xJfIvoKA91B9KwGgLsT#p#Sgtd4)7}-B+ zw=wPtbr z#~A7^kh8LzL*>Rg_XGB>57cOGqgK|0T>TA^J$08YzP(j^E~#^gH??g6&U!zB>(OK$ z*s{f;*0RRp;z(f~ax^+bL@US{DbuRKOcusg;WUF1C|rgC$&a)bSEZASL;S#dfWh_y ztW^U99L-cF3ixOz0v|;u!xeD$Bs+nM7NjAth6FmKg8esKxEIMZfvzmY{VRJ)?q+SS znVQ-d9!EWGpOc@;PY3l4BGD6jQ4gy#U}BAjbqHLn=^oN{v7P*ymY(A*-gM8|Z>M8B zJ5-EufTRI;0Q~}#0;)6Hckm_oU)q@JzMbm6A4?V(pP$dWO=9%>o)w$z(=}wH-qnV5 z!Aq1uh@ZJvCDU1c%~G1lzMW26NAfbu^vAMPV1R`O>tMi4GqZaY0s%Qs=z^gMWYiP- zQMsnqK<&PnBLWs(0$(we*Y8Z1nEHu`RxM&Xzbrbjla6FtXF33!@rhVz>f^ELFX;xb z7m^p09k+)P19ozQ7*v8;@D88nMw+MAm$VGn_d6Q%Dgp;0#_zl)pYlKEwbSilDo?uU zOek-~E}pKTwEQG*PVMT@I^BjFDddHYo?f#oy?7<~T5RE42+NQWKxF-w7(y5U^PHuw zfWjaMYAmiX#|~(Ut3fkC;eECN)!ra=RW+7lNQQI6*o1qi3g0^JcRmDI`=Ei9^<-V z;SMmkC~wBT&$LHl%^ z^Y4)<%jCclmNCzZ?!|bZM_B|O@x{PH^S;x7ZTZ4eTK)0ZtqPnU)Z=9Yb9P-a%^NNEjq0QAP_x zA>0*N>5<`J^BD*i0I40y4$=clWUh=%kA8+-noA%hAn~q}VSZ&~j+Zvg=IQ-yp)q|E zuOdD^ncn^T!;wc*IWvd<)*TjSh2v8t(tu-;ieodKT^XizsI89MP0O-%H&i09HbNE7 zY^^~?4;0F06*-|;^emhkLB_fI*g=Q2p* zCp$f32y`}j-~p4QU1(rsY?6s~p;r^LoVLG=80_g4o{YWF-~6R%Wpnh#kF9gDzm}Hw zRyD?)4vPI(kkLtN2!1wqd`!o;})c&HbsV z>9Buq3m!L&O;gNL!|`(g*jti2Gn<$oNw1CZs0I^PNJdv#txN}oVpN0WjHH^#=N$MX zH5(2s*kMB%k@IgzIpuu*&553=*p;2JEB~GN88N);&(B{U620~~lj0oXLkKE(`8Y)r z&~6g8f^W;^T+K2{!-`I_UtEq~V|dJR)wb8gE57q*Y)Nnv7%2~ui_51$sff3xc!{}) zm0)dO_uf3_uI8P~r|KHAQ5IeOtM@jG;d90uO`uyAse{4nLmRIKtkNno(a)Ej0$k(~(H)mo_4j7#84ou5$s43c8 zkdx^%`tgrW)M}Hxz;Y(=rQ_G1|%_Gsa&5TuWo?6+36PoHLhwUZpJ|&{{7MGL;Yx_RTzLtJ`HuJ6F zeZJ>>_Cop<`%PM)*G7lpsRCmTm1Bs`BxCfGNa}G~RJb~X5pb=92u`{cgW#UH^6cB^ z9A^M7R#V`xcIFeP2%!oNPM~vi3p43BJ355-MuimLuU1RP?m;_nAbIx24zS22_>B>) zOb<0W91Jos4B@c|Fl{RijER`4CRmF!o?l7P6GEayo~(fFK##bkw<)FejBY{(fWN~f zwn7ww!jTm>xVuZ_x-r+UE{yn*&rbt zqI3}0FUgqdts!KN@*2D1TrCV5AU8;?dNtrXmhS{OEpGYonIC`3*G>(yBi|)>`VNnh z_ELz@PVWHgRLZdEM##bRA=fko0Tr~_Ogdg(owh0)HG7(quglWT4O?d+*1f##`n6t- zz={)XuO6wdoi`#FP^%%Et!4LzF4u>fi}9C+J`^m}1p2(P@G*4kz>AI%K>Y@(&a{(K zQfkw=3JgHE8uMXNIb=#o7fFo|sV5{_F(5mznxMdWI$#3wAUshSSf^k-!)!va@%h%F z&yz`^V>3odFO#N!hdlnC-tRt~q_4tBd;nU-RFGgHvD9QhzR-C;wIhg%qewg2Q>$Ps zb*oVbNEO)7hw`3xI_p)UeJ5W#*q^0c!=MQztKG-VZKsb_^3o5=iR>fM4u;!fzN`GO%s36(>sk=iK28D+822>OOdouLds_faz28(aKuEu+j$r#`w5ri<6 z8Gd)}oR4MuHS&vfNOrVmC@p{mVS&2@n+w+994wF&+L|!D;SLx9f#ivclH04NNa&=% z`F1l&`40I><*BtX2igQWF$mGOLCk>cN22U2-Z-Li{H2=Dt<$6oqqlJE!J&9*uQN0DwYLaz5U-8(;Veb;|d%_Ys(|8+$-z54Yd zyU-1Li?28TDDv!=Pf6(`nSz&hTe5@LejBBr_%VCnC*$_NFz@rD`3A#+b?y2x?Qj{| zgN$1x$*Pr!8q5*#8jrW6D+0Fi>(SSvUhJ6{bgTf?3D>3@=<)5@>_k~S0sydPCANy2 z`RRQ`D^y$-wT7mI)@w7NGZ7pR*a8)MTRNw{+l0fGx8gt;BO1XV?th#yZX$>8k7#q| zR_RB?)jD(_WlSgt5}rmUfD5~U71gSp%SGV1RF@kZKGnm+#93X&7KWsn*t7f^N9@5r z5MIAd#}kW8n5YW8kBDf{?FV*l6G(=M(AR(*-D zDdpm2%h`sf1>2*5-kRudf;IeLTUw&R;gRf^@(3yGWbmaz$DMGJOf^Kt*&}d7xel(L zRdI#^4M6ka3<1^FU_@$CEOBht>X#cM^qFq{kfcCQ;TxB~%G+Rh?4#Yb(A_~5uMcV5 zL=dcW9TXOvgXAR)F8}1kYeKc?FIS4J44*zhZ`VJNJWc)ZC`fE}+PJN|J+<{fwY75u zonKvSYUIw8O;%fTQ8c1b6Gs2IN;4Y{6QsRbm3Ctfp_rq!Dsof437`oe+>Syl3BG%U zjX?VOfgw4cYpCWYp-YhndJEhWwUEby8H9PYs8OnQI&nhDlu3BD2&ON=1GJ`$7KsVD zbX@D|J1)dXTlk<%3d6_st9ckymcVe8OaY${r6E<5TyfaK)S}c6#h~FJM@Nz1Q&;Xf z*R4MgC!fACCrKnEI_z%8cFO(#%Kl)Pq=R?d6?$ z+fN>?^Lq0)=5g(}$)|6A%H12ve;6>jGll82);eP{;J&Q~1ZZk41f!aCktAD60PUz$ zQ(G+I-cZfRpQNj2f5rS=+;aWf#>=rUHt!bujw)^}VF2u53k1qUR89y45<#GZKt+KZ zFp1?yeeX#Fbyx_J5j>#b2ncM;waujYKrTSc8yMAK!HUKjrCtO9mL)QeqA$vb%gQZT ze`3ki!PmJbyEkbM#qE9DoyM65C2F@b!H~!1F@!0h>P66H;nxk6rky%>a!d9Xk$-ZyTNrypObbYy|`YRJ;Sfm|S-Ycfbzo zdR*Vzd!?$stT%7hx14)Td0r0`TTPW_!tp~hgJ+{-W9xh>hi1Za!t$Cn?tIVc9m-)u$P*hY%vg!PJ=bXVrtl4A{}*iJgCD5}-86bf zHP85lC|$xKBNIS9iRggEdfj#3w)?Z|oy+q-lb`OJxj7)hX&kduDBH)jeD?)7(qsQb zpZIn3-tdx6O`?{a3`n7Jjd2V}W@NTok2ujmM)DQzT<#e)-1wehFw-2|=HRpR)?0j8 zaob)%|)x{KN!>Om)_GE+CCJ#%6 z6R3DAWyk~cnCTFLCc6r&CE`&bxVog>+=(GES1dKNzc)8i`PuQSxnt!C9YmFvQDDv8 z&4bzWc)qBnPEXbV0oaJ~die))(vqh8_FoVGeC5dRTXq66a{mFP;ooCrAKDE9|66qS zsqwuO5_33tSLAb>k}7RYf+r{4P<>;3ifE2~K0PgFWw*tZgrbr9rk5Gp3O-Nj?-vY4 z-+!aLH2>6Z!@!jtqZd1Hhr9Ra7|omTymtKiJNxtg$J}+fmx9+mD)k6{Gv=XhIchKe@ju;c{YirM#Wo6LA}N! z$SOX>JB1%{WudJ+-EX6jPlIxWHAtxirB;lDh6uOcJVnl;!}p-n92oKnpk~ODAMmja z=)Jfm!n#J;^Je^=CrA-U0JMNw+a6AXoQWVE#F^z`1nh0!jj8N9YrB0Ea4Usq=IIDL zDg$VWLH>`Meqd5zcB*zOq;X4Nb9-8@B*|N2?rwzdU>DIft5_l|dw+Br-|Kj_jrLsk zlgc=nlAoI0RCi(1tDZ9por4eZ=C4I`Hz@lD*A@7B-Jf+&`&GS}(#A1N>w=4@3?7?I z!$HLD5PwY^i2Q;mA#P}>{#`dSbj!InX6hd=U(qdlmE(EIx5GCs z{MMxHzTVNg+}4ttvs>=F9i+5(NTvM6JfFx1C36_Smf!9#bV#51R=WR`@is&GkfJR& z+p>rWJnZo&i|k(=Gs9!*6PAq^ep`;MU8K0xU~HsfL#jQfz_Ar*EyQkrIF-Q5kkFtG zNL7j=#TgU053W~ zc>Kt(-ne4RG9mvp-g}QgvDyE<35+2Tikj&(RVgILUY(wFF&$vBs9^dAR{t`nK#=Wc zsH0{0k?Zb`Jex@KH2e_su@sk2NJkKY$;xH|uCUlYs{`a1Ci#X4#{5PYEfH{PSK+SO z#U0NdKQ;aK>A$zpIb(0$oZ0t%JT2eiTl9Y7-Rd%<>v6v^7z7ky<{rvOWjB3TN9fyPx(68@Q60OlwD|5Y>^43Jg7PPy7 z2!mwh%y7^PD}A=9e&zdOduRSgcKUcvwcD^~iF1ulzHQm8lE~FOg&OaeE4_X7?wbpr zQ+vifhU*tb5t)tep4`3J_UGs}&9?>RHhFf}=^Dk|&apuikN0^ckf>5s55R^%X7y(o zcGa&$d?~5cm>F+0EE`NHkIn)Rw4$+2r+*Ij_C^rohJ0|CkyfO&mb}%(g z4WIe_V)2~y_^;LnKOR+%4|X2(HC1YqUY3gFgTR%NlMaJPF*qf59Lo-g7Fj{Iz}c(h zpbwWNMXck(U@cB8J-#tj4%F)iM3P+x+L{qI3T%CaNjka-L6o4rARG{jsL)Hj+OR@V z7$?J6D$Y=r@6#HrWPLILWd) zjqYdI+%`RWfF$RXR_C3T+u<$s#SOb4k|8PqB_3f(X zTac@6Av#dhb^)RzyBG#TQ2}hBs_pyxZSDQf6=U{Xai9~m%LWZV-p7EA9uvEo!(>v4 zf-D$W4nSGP&ipjo^6Q22c0R0n>fp-iW4DjdKF0`#8&?kf20tQ&t5y&STU@_S}qK;w_+rUqtjC{8d{nwe;1)azB4-|LKt=Fl~qt@%Q_ zs0vo1IP$zfxooP!A$r%`)eEyfwGV&Jxq8+=WZvD zM#pn7s4;rnQ|8d~yRn^D8<)TQom|}gGdK6hoX%MDVV-u$Mr9tzp8hY_8%LAU2^fGU zmq;JKJ{>KXHRXUFB>}w*8&|bt|pRV*dH{pWE*J*mNSyX*dXvg5~Jm4?t*1 zN=I%umg)DsEB?UXfj=UH?#G3rno@pZPHISPN*GNJiu;=|Sp#>bcy= z^1W4OTTV}_{UF}!nu@x+-$+hI*G|3vl8=&u_aOe>xb*yYvl#y`uSdelgDZY@r{UMG zG&~P5JbA`^!&8T)*G;iw@22zf6N1jY@{LLNsdPVo$oux#r>#!G=Z{dHvkU5fmA>Eg z+wHfUtAR=d^Rs=^^5XK}#SI1KW|dDrkQHVIUzB!6rMm4Y5xPA)`nvpVy#>2+V0558C`aO#B}yf2)jlwZ!P(&GvVI05wkDuG+d<$%aR@lo z1Qfa03C34-P-s!Q&Yfe&>b!PMfBE}+=<)BFT{Vlo0Y@=Jr%J=AmCp3^H@~uXpRYP} z`bolulXK@kMwPEY^Uy$?N*07ro!bNM$hjJ3;k88_k;isad0xu?aYJhHHzoMq;JcEC z%Zs1G6lJ-P-~YhJBFF$Dp&>LWYm+U) zYKJRqIx4WQe$}R)l^wiFT-ChpbL#F3{~dW89K*7{NU}nXakytF30R5%K;w1ObztH( zHR;pyjiG0&)-E@%?z+G7d-wVc%MG6cw_gg{c~O~`eP+tK{$0bbYlkmycMJ_e6LJF2 zTY6QtPqjJTq>q(aXKiA_P*_1R3Ra-vd*%2|=UerNbzA21&wYKLx%=zXn_tUmZx)J{ zgQGrYAGTAa^YTlqYRdFSPS_VuX>EqG%q?|D`-^l!SqZRhT?hgO)dC?2Adw5!zi2cX zv`GlXRN1u^H!jM-WsndPgU6NSS7&_F3mCQV1DDU2?abr8bN1Z!AfNT?uk<*P8Hs{!&;oThDp#fe zFv?c}5}u(gfebc(4D7z+nUp65Dh>fvX!G{yRYDc2lUS9b`r*l*_1`1*&WzVA?J63Z zm6el41YO*^E$4nF$JjLMnwB0st{JWZH()xBI*S^oDuucGw{Ab>pRM5Olj!KM&qXex z57CbL=7?jUdEi|~#X$lpmSC=e}{%QbUTZKQUvFNLL7s0TA~koygDCMaXo!F-+V`%v2#&Uo!weo zUVA#p3X(FQ4e4h`&qvnfy$*L)M%jfbUEgi6ufb2O5xnilk=<#>x%o+wcm&TeC8|HQ zsPfnMfyPGfFJs%imShi_c}L*ws+(yb^zUcKN21X>a6V5#pg?OEu>MDsZ-H=dvMPiG zZ7=?pqxBVY2B81o_0Q5K+DXrK^f9__P`}rWh|3ouju%AtNb+HZ~@3sIeIW~5(updJ+tn$@q8W0UYIQr z@4j-^cGMYdz+po|woDKp;)<{wt}%fs&Oi`HC;}Buh6;^9_5U#aW&Y8Y_}R~--SaK; zzjptdVS3%ayFcD;&ySLW^Y@nKe>d%pS=ehat9azUwwC`U+or@iSHyLL&jVH>n&N8} zgJdX3wu68)X$t29(*+>sn}8U3Fnhgs7MW(tne_?z5g09Ye;ROAYrN2T{zd#0r8h6v zZLPhITY2y8ly>*nZ?40yf4|sz`OWMWRa$X=)E>Q8UfKs~w}U^L9vUfl6E=U$uUKCC z>GIvN3%~EY9@g!$wRwx7(m7TDgm!Pp$KuoKL+1-m^=q!}O5C&Ih)czm^?JUAw{8|b zybuVmDYeE6T0UA!$=}4wkwD+tSfD)U>}M6vMu@SL_I6v2j&bd~M`?lkt~6!l272YT zw7n&HwM2lEion4l1A{J%zOZiH&$0s*6tsk1M z(wj@tVJdS%3??H9-c)Od!A!7kF7*#catp2Pl)I@PMCn1!N=Q~TpB=oKnp;PY^>6Jx zQLr=5KVV97I;eF?b6R?_2P5bgNC=tqY6F=#9jHslO$Qr35-&~!usR5!_}OGn=<$y_ zDYm_VlHn){xH>A-qZ(Q?INOgnTe}sOJj=4@3{{(z0Z4#prZ}Wa4NtPO?{rImm;~6K zqkXhq_dKx`jsWtgTE-|e21!gn2uUTfK%T_sfqAFGcEZ*)eufB3ecM@0V$+1-o4`|1 zV>$1H1}pFJ)OY25?74ubidow7wiA}W3R>HKeIq)Y&{XtgF*MVCJcPpism8ueD0V`K zi`Ix(5m_o6tC_aicy9WS$YNH@r1dS|-tba90Cb41lvDBQQ2#N4TWVTfY9(gXOv1^S zkNbMWwBwaFc3mJPYoK6qi5%p|#dKWbV;CF+wtVXI9pi)RN^JMv8%&)a+F!FVc!qRN{gpCaAXTo&lWDMTGVBkRuUX4od zCLxst+q%i<>FIJHfD`!#Pn?%V#J7V3KRLr>ZK zctqjjiSG7ylL&MiWOpqKdmdN0N#|5};BpUs)E(O>c%$ zxl|MaWQU4pw*4y=bq~q5YdbqIJb^5o{l61@78RA;v(qS4v+{VBqnq_;wr(dY&^0CD zN3&%`_+W#&>cU>Sx?lV&oD~8dCo5LC!DlHHGPZ}X*BnsLGj=ISx8Isv9&k~VC2Ua} z%{4V`Ag7d0)Cn`0A`hoA+W7St6}nE z)e3?r)}OQll&>hkBDRo28Q|xyB9P zWuP&tdd(CZyr11zH{>^B!PB)_V;oo?=z+$8 zq&Z%lPm&NEIUfQ5kjVx9zv-Gn5QKnd-*S7iG|mnv?$+`Ob}iIn%iCE^-8pt%6f^V2 z^6#3%U^YH-u4z3$2oQkYpr4l&ROTH_Y`2=Ieitt>hw*sW=aXRf>*)>>yfAM#Y5QiI z77ueM1@g`gFzKLqWZy1{T0ZmqNMPduaev;zz-FJZl9A7|cGq{dHkPbj+1`htxC#P}B zXSG_!$T1VVJpDd%M}5;uW9+G!>wmtz+5Nuc?q=U`Eij-b$h4s7zyfY(Xxvh)3DZmW zc4mwf3f@Kik*03l`E+!AUuu)@pqjH!Ge|MvTT=t8GpyHHbJ>#;0N3>z>gyTW_bYkZ>4ii8c!7WB0#{xsKYjWz&#dP1 ztP8zXe0bN-oQUH)O9yj=6W1m@>}4lxhix*HE|1<(evzYdAZ#5m4olvoQ+$%#s`6G2&UmZ(`)1){?`AY>YX(3v5Q z@Sez^WOS~1Z=wz3QVA%1NQF+&CQ%uyxW;%{54;Qm@GaPMvJ(B6sZ8xNcIGwzoo;g- z;=}hEs!>)`5p@PSQ|DLfk%-qy-R)&hCK{`v_TKukT$HfV(=(&Ar6AX6b};x-AO+hF z-$OP0^&+@S`-H)HeHWes<0?j0ZqQtz+6s{*p`p5J-2&GtZR`EAG(Xq3Ze8`C*8KkZ z*6Nz^Ey)j-d^|6YpPL`V^!Tb<*7{ru586GyqwC$xep~Ga0;OD!jehR$oiv^VNP-N-{r^4`8Yi}-D19MT!lI1Qf~H5flet-4OT76fOV*} zF#M83ifq-&3{T!^Z#LDuYdL_Q4AL98>*Ran(wf!#=SwkA2MvjUP$WM)K;t1nb}hEJ zj;P=sy-6|Y7>c96H4u`BCyY?mj$l-^lZ`Cck zY8kk`z^wh^wZ1W+!oVbCjKL?=T*0+wv===IYV@bDMS7-+t1cciG|Sp{Jtf!q$N6m= zhRz&qjLr5|-52xc_1sz|iviVesd1!9yS|77V;}@sNO!^FV=4qFQ<(o%z5QZ^${ z$`-j~0!dw@S+aZk5g+B_=kIK5Jau!VpksU`V)$2O!UtQmsDuaI{Lj6b<*)ANJ@2v&a+X8vij}UkhKwgBr0e|%j~0#>Jq$SM6?rDez)&8P z7}&?{v}m|j_0dHSHtHop=4c&jsk+X%o7zA=Jl(^x zsi^R5MX@y;hU|n?g(YqW_V|^m({NM=E~!4_tu=#Q2FN)q&vpvnF{87C~esP zQFP{kO#goz-)3fW)QseAV?-h6oYgEe_f>M%m?Ih?N2M~EvrTg(XXQ>IH<5^3IV!|h zNTTHE5GwKgy?^~v{ZrBQ+57!^J)e&UnVu1WeQ-)B*6D&}&W5L!Pib7h;X6i$au`+( z`+^E^%g?!~({9j`QR5?mb2uNz$}7$kQ$h-|P{I z_E?_L9$uXO`MamhQ0jG`v{``tp?wPcWC{o<%Vnf^6&IK~p0<9OQPZTtccHL!<)PqY zOWNLJM~zm-P8}5*zn+lS_VQ_$UXDRiGT9c(U=qc_1pY1xgtCQGyTXF~pGF3(Gl|Ze z%Y%7x7G%8|pK7$foe89v7m2qM6;@(s02mp)8mit&7Vqd`1ftk>HD2#9&3`y?C-a^j zwK$zytSx>i8_EEpDIzwP{i0}oCCGYvY;mmIrSVf?*eicPTbD-?DQ5&%WX7+AC7hT( z`bFa>dBCR2sp-mF-Il;&U~?s7N-0u+%}h^?!^gp$Yf~}oST=Tr*+B-Qbh;_PG?0*J zq<|C~4E0Hw02LDohp8AF?BkCKlsIp0iB7LEzfhY~Bci!lj4hcGb<9-OPC}|%qyq{C zz9Vg)6B&t%RYIDVQeN&OV91T293qSmB*CNr)IpdoieL-t)i6YHe3@(}F)g&Gw)-z< zF<+|pzP)c$gmL%7D}eO8gPBk{Gdla^{ecuID%bV4+p^PZ+P`V-N@aeGpaaEf3b1hQ zqj7tW{CL1xo%}fCQOQ^4x<4RgJ>h9UA`!-Iuju|69&r`#M7pB2`!j}%CU z_)vj(RmvNs2^UL4o58{E2oY2BBC~r;r>4E+bOy)wKj${;O*Nh$2Y`jzcQs)#nl*<=SJ7kJTsne}LfY`cSjQ1U;x& zC|(_Gw!wo5WOYsYFlok6VjoT(&$O5Hgjp6B3h*Zr_1M6r%Y^bEs^7adhSjm8-lTzG zc`6ZW4sI02lK2x-WI|&e9sI}8Ate@$^>#QT)8aFGr&_*w`pF)j=-!F=C&8yX8yWUf zY5z&;3Tq)l1P&kym>$ItNeC|o(ZO+_8#nkIYg2!rksH_b?oZpF-ACv4JeBTU=t!=P z>+%OdOpQ(iv{6W09uil?KXNjmSGPx}XxcaQ@U&M?e~_F3u+;KUa*HRGhQ?k2M&kRv zct$WT-a9Lglg8{s@ZwIFTPVLHO^Eh+iM>_UI(5@VQ(G8l*VEWUw753T9D=#|pudM7 z4ROd>o%}mRwY^GnZ%&_|KRTDXI0tkI0R?VXvog4`U}FxJQXRSMx@DSLR!(LC( zG_+n{un6^hpiZ!QcE85sr0|Q5nA6(x%C`G#PHif#`khj8w)?b7sgf2h;D_?Uc?Awq zP|z3q(jcP3fWMEA1Fs%$Q2Ss2>oJl`x~UxlQBPAi0g$>U3bp-5;NmJ6rbr2hT$`CC zNm|I0&-a1i1s2DHM4M%5Vjm=SIFmv}t4E)n-jkxbwlWW6$aVN89|F^96fCa?^>EBC zqxkDkSzCB&l(7n%bIp+Cn`{K4k zo`{7KR$d<>ip`n-{bQ)Gd1rHDrYcw&cbfY!8&oIFdqQ&zmTf)ioMnX~|NS^JyY(x& zd12qV3pctpM%RL>#)S)jz>}B?@pem#0Tfm!g-e2f+&CP$ztf7Uy3=rEH+k#m(zkn? zZqZwB&Rnf;YMPwYGKOJDF~)MR4nX8cHFE$fGBy~*qVO0vLZSm(rA`J73j*mTnjo&i zL+-%}%fTtikeERqO@#X0Nu(qj%;v?ZRq6nGoY8?Wzj-Rjp}ekY__IB1BuF8d1Ofy| zjc>~|+0lmrk+Y4*-p}f39XB|I!pA|Rn1K@2qvAQ25ZRJ$JQ7UNR8E=-6D5e;SJnXv zy&W)l9(D>{I|)vQYbqsb zv@sSx_x-${^ON4#ouVi;S@*B6SW-uJd!skEqJR3?f;}y>k8d{kZ~TQPZH>R8|6{gl zf7xJ)4n7WCWXLZuAZuUCGqF9(yMG z5BK7B-2J~p0;|`iT{Bz;-ECyK$s-dk(L3Q2pX!0Ice!P9@oIRzY-R#q!sCsAHpzHT z$@q|08kJY_Wn|QPJ%uDrk7|3gG@pBfuvJd5R4zGe`p}v3o_x4tPvMiV$;oU5Y=3<| zfk2dlOg0Kr+#pD}CWKTQ*av3>N`a;x7{ibuHfeodZUrc;mevb#tRMDWZ(F@5aQk{( zLi@kNZNINp%h=z_7w7H76D_jfcnq(m{i#QIDzR}@Iv?fVueU^<|GO&H=pJ7edB@*t z90#mx;Fg9*VS${*jK5k6a_FI}r+^e+iHuCu{j0)(G&2wVqH$^oLN`nkgI^1zd10*c427p4B zom{1>4(s*r*4ux+oY@{Vj9x!;@B6Q%g4?nOSA@-P`fp%#gT4*UkMN%upkxWwgcu&dO)TRohSs597r6)nrJy;r?&Hz#m zA{Yxom{`Dorgpr+KA6KFq$&4XEF~S|78A3(s&iUgJK2?2p1O_~+QDP&AdbE!0Aj}L zFCb+y5&1@CX!}nIcg-MVN9SZ#bIVY}oK7afONvY~Fb$T{wKQI{TC^Q0 zjr!Bs!sByK3;gFx@0AbLL-!)8?%c}sQ2Khbv%830_AY0^Zf&}9;PfXYItWd$S^XGs z2{;`O!K)BqP&%vGsxz|#CKV%Gu2(DHW-q;2GM?#BmudxpWp^M!SUtu8y_^=+Mv%I$ zMJ71Iu~70M6XO`^L&CDTq4S=5qZ;^*|MJ8xkv&R%0cJSJMKM*q$^dczbp;uV=CxM{F;Mv!pIC1< z2Xv3SVhl6Rk>3<5_yGbog`RkjQ0=skS63pmcC#ev4BodY@d=p4bYIQOZ{r-03BMkm zyrI_~)mE)tpyE#Rj01`vb-FQ_z8>=1yLh|x`sJ04sfrVfz2mofr(IsJg?pS?G0JHv zd*3T_y~*XMRj~jP2C-9Ikoc^dP-7J+TOv*r^8|k@nD1t)lah?nZVF~#U;2Qe6huHJ zg98JoY*1w!N9N*|@WW+I(2+`Y zM7lu4L2JK*uE5lwtHX*jO8ar|*nw^^INhF&0)`}NK{1pJs{J;~q81h!bMYebd3s6C zHVbQQdd~Zk>T6Qf`1QEp!rwivcJ;Hrtqt^^}M3(re;yFUm90PfdyHG?_{I ztdHe%`g6(NUuG8O&b`07bpar9&u`m4+up18cji$|m~#>@0^ebj&V&Ywmc&4axEKic zgPmTMVrluxljXVOs!JCQe9nkFE{lzxD)q6w;A?xp$X-)ffgH z`;lQft&o3@9U>>dwHXo5+sq1xpiUjK%{|aQ;Z&gP^hw)i?4hdLhvXAD^G-CSS_}K> zVKPJ|j^UlGfZyj+x$68`D|a=X>bM^Et!i!h$mhGRHl93kDuDNZoowuIhIw;g40Y_} zDAC1|TYS))0V{FyO~M$L3e#0^xKHW`k|vBRCy8UQR6PxG)y!0=)m28lP__~Tn%0qM zlDqR;?8s(u@4Y|Vp{o~)A<6*q&3t+3|7#P=maUN$^T^k^TvqQHU77p7`Fj#Z6jc;k z-)a{ic{vm*HtW-ZMWj%;&PJE`I9pj@Zg^|s*aaEefESH%8gLE}OpzhQP(JYTB>4}B z3nQvoFBFYA;I^Q7^CbZv;9snMhJ%%m2*#=~nWG>bW5w|tk#5M$cB_@K@H1e=;Q~{= zTO?3ibXvxUMcBi1c{G~>rKF1*R$o?(Q^yb!2L|`01q!Ayp=dJ>)-#q}6Q|BG^JIRi zhMFT_aSlj*Z&W|IxkATHksF?Ng2Z$p3G8*7nq9k;{EH-~c}GPvv+Ip(MwMMxAGR9r zc@Wg<`A^uW$Q`&=I_Nh&GdDJ&xg0)c*Lt!@njdeXJO_FIAT3y_Y^9-j@mDyv z&Qx_{jCMiHSZdn!a5+0L3EAJss!p{sXR2#gvt=4lBUV*HQVhN+o9Nfn{agDQruO9R zPxnobhGdR<3D<+7Zp?Nsgh!q=u&%IG-P7UETMNx2aPS0dKZ-;VWZOt8)Y*u95)GVk zXunc==sXp(GrfP~cht|17Idr-GR8Yr71d$JA18u`4h1|7zx?aN=;PY*d9C|K4ObG? z8aHT)^HrJs#U6No=nbU4bxm>HBOf;?$g8PfRGd4VgW_Y{;q)}?7}6wETo5>Y>nyae zxFCp)u;rD^uzl`Gv~VisiYv1+KiXF3E9x5 z5yg`|I*l1J=tA?_WRJ8FHnJM66ll%{c*|~ljS|0vU^uw=ihGsMl-AEog3c{ihkK(7&#sBIoxey@ZU;U@3}jT zq4@(SjyW7Di9wt|R#fJ9#~yJ1))p1McFo37S(qQyX)}q%-Ndr#jWyGOLH9Y__HX^| zKdEI0cGD)>ehpk*H(6Ude6Wy=P371DcpePBcmr5<5#TXTtJZjs7q7H1)%)z_n%2GD z`q}>ya?gIv-2E$(qbMb*otG)n5szg+0ryoE4uHB?8i2#2KtmX;Om8C18Eo`0p2bRq zKpnml2{A%9wIK+wafNXq00_YWK?yg&cj1TDp0=Z(wp3kfaou)N_Gl!e94=CNhy1_P zs#WPwe^141`?s~&TT#71dPN`EB;XLF&WCwP~Hf#-&cy&IV%+&OE zR5EFVm+>pX%p)+#NZ9--n~0ovpSc^gsE0lc->*+p9@t9!IVN@S`Np99*|kp%z0x(2 z{#%srxs<3QgW0oT|1xL)>uSIDbM>=X_gpo99@WiuwdF!p^q-AuDs^JhOBbF*Ki0jz zp?j_J3}@|K{13hxEBkMJI2pYf??fiOjQMSGD+d#>5 z+p$-%Rr>ueerg=~(RbuGWAE?E+3kV$_Vt;0U3a&ya&mmVPh*P&_D7x>SU7IaY5eRWRw^js9s&>!gs?;7tcn zIXMz&IJgLtJUu(~vNYW+@c?6=kO7neyr2rpQG8KLG;{am(TuMz%cQ2UtRCx)#=lez zi_l;3a6LZ%Z|+w3Era{4%E`Vgfb76DYM6nkcij2m%#uT-?BT)8Nlg(udRcj3`1-tC zS@`8IxAu$1i0}(TaLP1!sF?#AW(Rc8c90b>ULf?A(tGbQbGMgOdCwVjZ%wHc}xvoF8#D;88& zk)~uc-5xvdt?_tXZ`H$fb!9L>$Wsc%%@XxE7a&YO{BhH8V!QJBiu_{aS=ap5540ZH z+L98NCu|Y9J`-^wT^J({YM}rCN(50Zs4mm~0e@*2T^&P@K@ih=%n3Ago4kmwP80>I zQ~|s5&>^M+20Cc!6e>0L$II$MWHw=rs5Rx?f3F93CcI7mo5gwY-VpDGo%dWQ+&O+WQ50GAu8v=;U5_ zAo!Ng+T*Ub!YZ4=gL>>3n11(hkcF!OFUOyH(z=M2nLTB{7@$>k+-ZOBa^+S?^`Lao zEvr<2G{;@I@d`l-Xc)brFscBw5ejEJ_W)U@^6ih9FmR_k!SU6QnXPL8IZy}HV&SX(1-udUXDA~jBDMp4jMnzoxo317!gZwJlB4xY$ zYjLim%e@RwT;xab5X8hKske4v0x=EW}#x) ziDj$GS-P+m&L?&iC`zCE>($zQB>ayohB%JgDJLS+7b+m_FDUn#kk zGNBnbPjJvjm=oY2CIpc;$C8u6T&lvg@4Pc8tr6T)M7XMV{`8{~Z_Sd@x7UZNklq3k z)kJHJt2wlTWqEfkHLM$g&G2eQ?7dn+d+UeUe0Y;q5>^4M}@eUh@WszfJ+CTi@fY>G4Y zKWHN#YuAS&J)B#FOMo*@B2u}U*YWEMzwsxbJF`Qrepd1E_*fzZNW`Q7@a*+?+Evf? zl_Qp`uRK~u3zrG|S7i6uW{6*~s*8KvCOZ&{6re)fI!lEgd)DOqO~MrFr=x54Y(Hyz z$pZU%ofz==`adEXiY-9@AJv^$ZGO;Z04(Vc{YbEpK~pd>ya2q0V1vgQo5p0<1j5DG zXzbgScUh{X1*KRl3t*gNtd^`WY!#6QwalwW94`*#%S?%S*lQNBqNF-C# z#XjCZ#2AYML^xuy2OEpd@~fkv)4c!x7FJ?Qr+J@by6PS|U2Eo_&0zTyK5EvnO%^pz z(IKZO?$=!?u2Jv5UdC3y5gGXE5l%pPp~2-JpDrzI)_G?-xLtN;y;ZU=hB@UbmOp^R zya3Hc6&Ey8-whn`2Ng?OH-}fPTS9L9{4`u@BCo)wCl5<^fH_@aW^}1J>9{_eQ^dmy2{zoei5a{^?_j$na)Eyw8t(nR37=_|H4kx*2t=d;husvBc5%HL2D`%|v z9^unI#qqo_1^%2VD?ZcFLybU3hKu>qsU>X&qk{7&)l&sdTGZqdlfY9lvTNN1kt{_v z15WQi;_>Fr^f*;`Cz_1m7ls+PRAlef9sI_fc^-JIHA6KAJ?g99UUOy1D%#EQaENjp zqZ5?I%?*VpVCs38SNyO@hqv6q$inb6C@u-L$k{y-J5Z^vV1ZnL&;%5mkOF9!30B|E z%f-?C4B_njqSoG{V%N__H2z)(Lh`og|1x|k5ByHPeR)+&cO}0yY=wg|yzMlAM9pbi ze9qADwHY=OAIVf0P22e5Pu}m!E;yeSNWNlWJBPAe%Jj!S?oX1(B4dIdusemv9`u>= z8ymn*pj2RRq>F-#zXUBw&UR^`WtM+ln|DB5sy{o8kqSxhw$vm>{BqlE`MHs#DZqqGSwR5J&+(-hfrJkuD(7 zR1L?n(ZUR3bMvG?Wz#E*N7O);k`f$A(q`0jAlUfN-loEH;SsHmgTm;e2qFU7N6z>Dd;uJ?f{2ZR=Y1*`UvJxBXA7 z@0PF=4|UL!0NfVVAr77*66y#%nI~~Tu-RHK<@hJh>G93U-s6?+Ta@*e(odJS4VI}? zo7GgKY%5KF6oS~-7{`W4;CX=Z3;8D_qDi92j z-APA_s}tosvBn^3fdh4wkJ-f#2#+XU329#n^{o^8#BSN00Ll1I-hv;Bb^Lt6U0KJvnN|N*bu~j(N!J2Yamxh!*k_El_UW3kMk6kq*euJ+2g=7qm&3bJiKewXE6 z|LU>-wMSOO{m_Z0x3;6UALANYqknNu9{uz;_dqE3Pg|_#)ceWjo1F0}`C)^sVNJu8(WJ`f zQY0tFDJCQFn4Cq1T>9|fAnuZMJUU2!&uG1DnZL8pV}g}FD=_Chrpezz1m*Z}Sgho* zzD*xtbnH|BOAb#J&=j)aCI#NDy5*{_Zv&9G@Zmw46FOC2IlpmLX-aBpb-&Z&;^oi( zecx(2I`<=T`gisIOH-T}h?IKqr+DE`2vz{ExPqv)R&?~@%^XGg(S~n-Qz4XIvYiMm zsj7qRBR#~T(*Sz}-vPt~XkK8Bz_IfRk+<)vsU7)ydD3958C{vWe9Dy9&4yYyQStfv zGaHpWbL2tfrR)wfHJQ3Sac53eOpHKVZC&;zw68bWM%6W4@foNMlwjw@n`91YNyO4S zNVRw@$%0Wn`Q9Rna!Dh<&2KxkH+pIG+)Bgo)dOorSNnsghxz=y{oHO}`99oJvGVTA zg~5P~M`R!!CP{O%SHD$mZk;jY)>R#`q28q@y0FUL>-?LU-@7(*AXM_~Ca$-&Qsm1QG)@^S1l%oh{^(F370-Ix?DD?%c!q3Tn@!UF^3algsu>TKJO(&q_lmK zKd{Mv(DvvMo zUo$*|Q|7t^10q+Zq_#ofaChuSrPe{+NbP2sg&*BX2_9P?Bj4|AW%CqnmMmfAMU?RX zr56JQdf5(a_F)FTA2Mb#q!vNW#E&45sf#yY9Y}T2r%JTau$!U|f}@v5f9x7hs0Aoz z^QKayFM&ox(hzHRWp-Bop4-h6;akt&dDt2?FO)PYQ(Z%$;6y63R@ocwcr(8#hzpdTBVBhkhe{<7V`DDUL)rn;Fw2q#%YGD}DI7V{qgkPhj z-#LRECu@aHheSRPttie$@0wBMuiveEdzqLRnmpP-x_5{W8b<;bXV{+!JEN_)}H}syra4{ZJ(g}w3 zSb0x~JU}MIFyW0v3b=SelLSurm1%Mu88tMhoDYOllBF#Ur3;!h-~FtiJoQP_Rpc!b z*yvMVAk@Vf)go-jiYN?p+sr`NH?}$uFAuLprgAUIhMbtJP;kItOtVZNh#yu6Tn7aZ zxG6EI!hM?`^u+o57YEgK6?IO!`zJ0 zSwi57!!aXdDYYgn{JZB=>18f%Y4hE#`qcY=k57fUDS?~U-;H4ovoIa5x$@dNc}aJ& zlCs`SKW~LxsKsbvr3^>Kc@RzB7J^E67jZidM9*3tf>#EGtx1R&I=PP!zl84~_c@Pb zY2>nW&uL9Jr^^IpUE4B#I`42GD1Y2L@p;k!44inMb|w`}HnOWjGL;I@Uo9iA`SmvB zA8q!V$)9=HE6+L@cU$#iw^v(TxRQ)CYx??t$o6Q>_+leUhx$pI&X(e!3lrreYrU)U zv(xBSZsNQqaNGz;F9_pK9tkvA3jLmV#~8`0$&nMXIVi_wXdpWpjoDody|2{2j=VC@ zGt9YvTsp;RzFg>{s1ujbwys4#R)cAb5ktxfE|q;SMX`UD3A zxg;z(IGP(jn_crFae&EWvfvR@1QOX9ni*(5tWEB0B$7#VI2}TxWi;k5(I!{CI-L2* z#O4NRMbp!kcyy9XpMb2MRT#^Tpu<0!c=f&Z(tD-MXL3N z^o!&0|9`!`5NupPrh>8mq4`CF4>0Est+d3@!$kTAS?`_Y|5<-gVt3l6wXc7IV zrZun7;Sy8nYJ-2%X;gyVH-Ky_YAnu9e;Y z-4uN(__9~c4>#Mkjg-2`-MQI+UBC@}rT5JBk_3;)p}Duu8Fki`3u8(p*6TDRiA*Bl zx+BVZ^D5FtwYl+TIjln?RH~?3oUgZSsMWoZ0DYn1_+-4o!$%gTYljrfffJr}2t$IP zpgFF0Igk$-XVQmd0%gB>XzR!2YBZ`cSCJA71x;hUX`}dtrmt(yPYthq){g1dCZ>rG z5F()blMZSQ+3~k3wpxco6ig0zn`6>Z^77!KYM}*Y6f0J0bwczPAl@lY1nw)Mrn7S& z9SI{kzhTtCVUu)_sdZ$>(NHU2E6i&iosPQ+iS42X1U< zEdFgq!P2R=t-rhOeru9XX77tFFMWD;R?x?yQ;|h<<`=ZFtRK6c;FI;YsJylQo+Ye| zmq0+$>rJ16x%KRe>#Yf021&@&b)|&Sw>DJ=wjK7)=>HyA`l!`%Bj$uA9EpNRKqiqR z5MgaQmSdT(Vej9fBKIfay;sA6>!UQz#F8kn`8}z)ehVvQgBzjG&sMGdU7yw4DsFF^ z^Eu~pWAwz-4DRHGcMk-RQg{dtrGp{}0Wb@W8Jp74+>Z^em2I-|(3(9)Sov1DmDv@n z-QY9OHZppog*7xuqt>Y`=A0&p8%msX<*#NNBZU01y?f}mvfSebnK?L$ZDxW3=WQcgn zWF-ZDtUkW%13Tg7+ur&3f`f}A| zQWbah+)QYfP}BR+fyeDVhYzT6^#teDttQ8pH~!q(UskkK{_#2YwUd{7)t1_-NAys+ zqwd-J%bSV&TX!wn|7t~lG`#U^t!^uGL}AXssQ!v>)M#YXt={LH6YZY{p6|?9Cg`4v zw$7-vd3ee8kYU-`AC)uT$E zVW+5TXQzAdA7?zGMoXpu>613h@a21DcR@_sKYB3yQh9hze1g%}zsnc(>&`Y12$7sl zl7GD{)#9%O>*WLX3vrcHrVYe<00Tj%E`ekGvj`gxk7upo;WFK0BvDa%VA5ec4;F>z zDs=$u99cXVUb)~AdBD0Wyx~bi+$+6@7o0x7WZJ!VSXWJ1dwZEqpjkRosCHf*_tXo5 zx-j#HobG=8>%U{Rv)bMkczx?>kY75^-mlso8=DT1BBlv_(8je47mX{Quw8s z8(-%y-uQHD=S%Og-`4HB65AUEb$`4hZ_8d$J+k}3WmeeKgH`oN{X;0Wpe%Je+{=mWO~@ARTxoz}Ack7whDJ$vg%t#ZVANAR!V!+y*{F1)V88NE&sr zTpRDGse?L+!{PXM5D7vmw5*{h6$eVhq^hRFT$T(jAA5SgG%Y9Zf{{V3X64@3 z)0@98Jeh5tt2rVw@IBSkz#^&p*3qvE2iB{5i>-pc%~aZ6o4T*Mt^{KMYrG&*kPPGL zgb9FxG&C{55|`VL>~~ibq|nsrng@~Ov3Q*{GX4V=2pqj;T^&dchk zR%OqAPt%>=X=)Pkn|PPag^cnY#_&}Dyvlb>G> z($8%y$i3TfclTd+Yl7>df8nkwA*2!qs^<~%WE6u0k z+ZMD*skd0c3?C^R5g}#X17iw{$0&FT03i=n?Xc3mtrgWhPF<|tkMXYGjE*auhLB+) z$3Y03CfIjV8+*?j0xazr5w{Kc#~}!TT(|%aKboJfQ315bJko4j!%XZ?q=R{xP|>)$ z#ih6qNl*Y|zi{rk$%e?I0DMtR1PlzJncL4-DmOlDUmN%_nLXt6$~%?;8>vP2WDU^3 z9E$-R*z@+`iA=8|J;^SKTWYOY3_NadAD~M>grS^0yq!puQzt&(U2ku>bYrV~Do!ws zHhduLzu?>;BNsKmL1VWt-lGC-AD z{nQw%e90i|)pfoGo!M)l;nTxmOYE|9-WPNBd#Z^5s#9RUGtyhCh#g2S#!W=J>qRBJ zPM><{rmGfog|n1vk>dMo_vMQpyPek}%6o1!{usBM*d6LVc}`L`;_6`p{RtgAyCah2ZY>(`#x( z^2(a-8s74c&W}3jBc96bPnWO~Svhd|qEf;MnX;VZB=}*9lq)(2ZcM=A- zkN3L7=T#*gA{Gh-e-ts3Nkai#6yYw4ff1&dWMvd5vSZ+QXeJylR_hG{4YUp{l!H{p z#`rn zZ(T3De_Q(9klQ7ZVpEL0(~z4++i#Z9m%)!Sx8`Tx6Fl6*(?m1Dqr(#FT^CzDJzm)_ z{GfcIZKlny`TGMFHLIq?d@R6&FG@%4T~PbW8@g^22Fm?mUS!6?m$Ii$%l+v=DOHMo zZcj%;^vczB@aizGo?LO(`y3q?Lb5`L-(tmB!j&(hdr)8@gBC*=BGVx~WYJDBXW>R( z5;?S370ypZxsm()sZhk1n)4L${+wI^;S{?Qjw2R=o6Z&%G8(426XA6gUJdzIXHPWl ze)`+3)u$;n{O5ac)6ucfLWjkN14@n7lE!qlD4CpzO@zStO&`KB!WlPtPy%oSsvin0 zZ$u>V0a1)3SIicK-5L<=Ayhs&S=0Pv^Rr@Q4vr<*2gA^~hz=x59W6(4l%$FvsTj6% zQ|LtZ+Vfi#t{K6R?AFIOj>1C`L&YY_{uL$}OwwVU1<(QM(M~Ec5#~+cF=TrO9Sga7 z;qiZy?SI#!o7X$%KhG~#uKEY+MO_m<7g)0&3J%_u zkzI=u6@L5f`IF`HCkp#ZGBD-A<^CwHfulT3-T~t&%J1%0D*AInDkLy*QJH++3xg%aF%$fghr?{kKd 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