getPhoneRecordList(PhoneRecordExportReqVO exportReqVO);
+ /**
+ *
+ * verifyPhone
+ * Description:验证手机号档位是否充值
+ * @author: zenghuapei
+ * @date: 2023/5/24 11:44
+ * @param phone:
+ * @param gear:
+ * @return
+ *
+ */
+ Boolean verifyPhone(String phone,String gear);
+ /**
+ *
+ * deletePhoneGear
+ * Description:删除档位信息
+ * @author: zenghuapei
+ * @date: 2023/5/24 12:44
+ * @param phone:
+ * @param gear:
+ * @return
+ *
+ */
+ Boolean deletePhoneGear(String phone, String gear);
+ /**
+ *
+ * insertPhone
+ * Description:新增档位信息
+ * @author: zenghuapei
+ * @date: 2023/5/24 12:45
+ * @param phone:
+ * @param gear:
+ * @return
+ *
+ */
+ Boolean insertPhone(String phone, String gear);
+
}
diff --git a/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/PhoneRecordServiceImpl.java b/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/PhoneRecordServiceImpl.java
index e20b2ba97..8295e57d3 100644
--- a/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/PhoneRecordServiceImpl.java
+++ b/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/PhoneRecordServiceImpl.java
@@ -1,6 +1,14 @@
package cn.iocoder.yudao.module.shop.service.recharge;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.http.HttpRequest;
+import cn.iocoder.yudao.framework.common.exception.ServiceException;
+import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
+import cn.iocoder.yudao.module.member.api.user.MemberUserApi;
+import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
@@ -14,6 +22,7 @@ import cn.iocoder.yudao.module.shop.convert.recharge.PhoneRecordConvert;
import cn.iocoder.yudao.module.shop.dal.mysql.recharge.PhoneRecordMapper;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
import static cn.iocoder.yudao.module.shop.enums.ErrorCodeConstants.*;
/**
@@ -27,6 +36,13 @@ public class PhoneRecordServiceImpl implements PhoneRecordService {
@Resource
private PhoneRecordMapper phoneRecordMapper;
+ @Resource
+ private MemberUserApi memberUserApi;
+ @Value("${phone.query-url}")
+ private String phoneUrl;
+
+ @Value("${phone.token}")
+ private String token;
@Override
public Long createPhoneRecord(PhoneRecordCreateReqVO createReqVO) {
@@ -82,4 +98,32 @@ public class PhoneRecordServiceImpl implements PhoneRecordService {
return phoneRecordMapper.selectList(exportReqVO);
}
+ /**
+ *
+ * verifyPhone
+ * Description:验证手机号档位是否充值
+ * @author: zenghuapei
+ * @date: 2023/5/24 11:44
+ * @param phone :
+ * @param gear :
+ * @return
+ *
+ */
+ @Override
+ public Boolean verifyPhone(String phone, String gear) {
+ JSONObject param = new JSONObject();
+ param.put("phone",phone);
+ param.put("gear",gear);
+ String result = HttpRequest.post(phoneUrl+"query/verify")
+ .header("token",token)
+ .body(JSONObject.toJSONString(param))
+ .execute()
+ .body();
+ JSONObject resultJson = JSONObject.parseObject(result);
+ if("0000".equals(resultJson.get("code"))){
+ return resultJson.getBoolean("body");
+ }else{
+ throw new ServiceException("手机号档位验证失败");
+ }
+ }
}
diff --git a/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RechargeGearService.java b/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RechargeGearService.java
index 7a05e26cf..d82bdc315 100644
--- a/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RechargeGearService.java
+++ b/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RechargeGearService.java
@@ -49,7 +49,7 @@ public interface RechargeGearService {
* @param ids 编号
* @return 充值档位列表
*/
- List getRechargeGearList(Collection ids);
+ List getRechargeGearList(List ids);
/**
* 获得充值档位分页
diff --git a/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RechargeOrderServiceImpl.java b/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RechargeOrderServiceImpl.java
index dc0ab8d08..50a96210e 100644
--- a/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RechargeOrderServiceImpl.java
+++ b/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RechargeOrderServiceImpl.java
@@ -148,22 +148,23 @@ public class RechargeOrderServiceImpl implements RechargeOrderService {
public MemberHeadResponse memberHeadInfo() {
MemberHeadResponse response = new MemberHeadResponse();
LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
- Assert.notNull(loginUser, "登录失效,请重新登录!");
- List orderDOS = rechargeOrderMapper.selectList(Wrappers.lambdaQuery().eq(RechargeOrderDO::getUid, loginUser.getId()));
- if (!CollectionUtils.isEmpty(orderDOS)) {
- BigDecimal amount = new BigDecimal("0");
- for (RechargeOrderDO orderDO : orderDOS) {
- amount = amount.add(orderDO.getPayPrice());
- }
- if (amount.compareTo(new BigDecimal("640")) < 0) {
- response.setGrade("普通会员");
- response.setIntegral(amount.stripTrailingZeros().toPlainString() + "/" + "640");
- } else if (amount.compareTo(new BigDecimal("640")) >= 0) {
- response.setGrade("高级会员");
- response.setIntegral(amount.stripTrailingZeros().toPlainString() + "/" + "1040");
- } else {
- response.setGrade("中级会员");
- response.setIntegral(amount.stripTrailingZeros().toPlainString() + "/" + "1040");
+ if(loginUser!=null){
+ List orderDOS = rechargeOrderMapper.selectList(Wrappers.lambdaQuery().eq(RechargeOrderDO::getUid, loginUser.getId()));
+ if (!CollectionUtils.isEmpty(orderDOS)) {
+ BigDecimal amount = new BigDecimal("0");
+ for (RechargeOrderDO orderDO : orderDOS) {
+ amount = amount.add(orderDO.getPayPrice());
+ }
+ if (amount.compareTo(new BigDecimal("640")) < 0) {
+ response.setGrade("普通会员");
+ response.setIntegral(amount.stripTrailingZeros().toPlainString() + "/" + "640");
+ } else if (amount.compareTo(new BigDecimal("640")) >= 0) {
+ response.setGrade("高级会员");
+ response.setIntegral(amount.stripTrailingZeros().toPlainString() + "/" + "1040");
+ } else {
+ response.setGrade("中级会员");
+ response.setIntegral(amount.stripTrailingZeros().toPlainString() + "/" + "1040");
+ }
}
}
return response;
diff --git a/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RefundFeeRecordService.java b/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RefundFeeRecordService.java
index 32a2fb217..f97de6a68 100644
--- a/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RefundFeeRecordService.java
+++ b/yudao-module-mall/yudao-module-shop-biz/src/main/java/cn/iocoder/yudao/module/shop/service/recharge/RefundFeeRecordService.java
@@ -67,4 +67,5 @@ public interface RefundFeeRecordService {
*/
List getRefundFeeRecordList(RefundFeeRecordExportReqVO exportReqVO);
+
}
diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/promoter/PromoterServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/promoter/PromoterServiceImpl.java
index d80564ea5..a0b8708ec 100644
--- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/promoter/PromoterServiceImpl.java
+++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/promoter/PromoterServiceImpl.java
@@ -197,7 +197,7 @@ public class PromoterServiceImpl implements PromoterService {
memberUserDO.setNickname(importUser.getNickName());
memberUserDO.setMobile(importUser.getMobile());
memberUserDO.setPassword(importUser.getMobile().substring(importUser.getMobile().length() - 6));
- memberUserDO.setStatus(1);
+ memberUserDO.setStatus(0);
memberUserService.createUserIfAbsent(importUser.getMobile(), importUser.getNickName(), getClientIP());
}
// 插入
diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml
index 175b1c047..577224347 100644
--- a/yudao-server/src/main/resources/application-local.yaml
+++ b/yudao-server/src/main/resources/application-local.yaml
@@ -254,3 +254,6 @@ justauth:
prefix: 'social_auth_state:' # 缓存前缀,目前只对 Redis 缓存生效,默认 JUSTAUTH::STATE::
timeout: 24h # 超时时长,目前只对 Redis 缓存生效,默认 3 分钟
+phone:
+ query-url: http://192.168.1.189:4006/cyywl-phone-query-api/
+ token: eyIwLnR5cCI6IkpXVCIsImFsZyI6IkhTNTEyIn0
\ No newline at end of file
From e5ea2d52f7780ccb2786f2352d1f7678e2d93bca Mon Sep 17 00:00:00 2001
From: TianYu <332368756@qq.com>
Date: Wed, 24 May 2023 15:56:32 +0800
Subject: [PATCH 3/7] =?UTF-8?q?feat:=20=E5=88=86=E9=94=80=E6=B5=B7?=
=?UTF-8?q?=E6=8A=A5=E7=94=9F=E6=88=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
yudao-ui-app/config/app.js | 8 +-
yudao-ui-app/package-lock.json | 543 ++++++++++++++++-
yudao-ui-app/package.json | 4 +-
yudao-ui-app/pages/goods_cashier/index.vue | 13 -
yudao-ui-app/pages/user/index.vue | 6 +-
.../pages/users/user_spread_code/index.vue | 554 ++++++------------
yudao-ui-app/static/images/spread_bg.png | Bin 0 -> 1197912 bytes
7 files changed, 725 insertions(+), 403 deletions(-)
create mode 100644 yudao-ui-app/static/images/spread_bg.png
diff --git a/yudao-ui-app/config/app.js b/yudao-ui-app/config/app.js
index 2d0b55638..0f19e7b1d 100644
--- a/yudao-ui-app/config/app.js
+++ b/yudao-ui-app/config/app.js
@@ -1,14 +1,14 @@
-// let domain = 'http://yuxy.perrymake.com'
-let domain = 'http://192.168.1.188:48080'
+let domain = 'http://api.cyywl.top'
+// let domain = 'http://192.168.1.188:48080'
module.exports = {
// 请求域名 格式: https://您的域名
// #ifdef MP
HTTP_REQUEST_URL: domain,
// #endif
- // HTTP_ADMIN_URL:'http://yuxy.perrymake.com', //PC后台的API请求地址,上传图片用
- HTTP_ADMIN_URL:'http://192.168.1.188:48080', //PC后台的API请求地址,上传图片用
+ HTTP_ADMIN_URL:'http://api.cyywl.top', //PC后台的API请求地址,上传图片用
+ // HTTP_ADMIN_URL:'http://192.168.1.188:48080', //PC后台的API请求地址,上传图片用
// #ifdef H5
//H5接口是浏览器地址
// HTTP_REQUEST_URL: window.location.protocol+"//"+window.location.host,
diff --git a/yudao-ui-app/package-lock.json b/yudao-ui-app/package-lock.json
index b18489c50..e6a23bf59 100644
--- a/yudao-ui-app/package-lock.json
+++ b/yudao-ui-app/package-lock.json
@@ -1,9 +1,353 @@
{
"name": "yudao-ui-app",
"version": "1.0.0",
- "lockfileVersion": 1,
+ "lockfileVersion": 2,
"requires": true,
+ "packages": {
+ "": {
+ "name": "yudao-ui-app",
+ "version": "1.0.0",
+ "license": "ISC",
+ "dependencies": {
+ "clipboard": "^2.0.11",
+ "html-to-image": "^1.11.11",
+ "qrcode": "^1.5.3"
+ }
+ },
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz",
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/clipboard": {
+ "version": "2.0.11",
+ "resolved": "https://registry.npmmirror.com/clipboard/-/clipboard-2.0.11.tgz",
+ "integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==",
+ "dependencies": {
+ "good-listener": "^1.2.2",
+ "select": "^1.1.2",
+ "tiny-emitter": "^2.0.0"
+ }
+ },
+ "node_modules/cliui": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmmirror.com/cliui/-/cliui-6.0.0.tgz",
+ "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^6.2.0"
+ }
+ },
+ "node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
+ },
+ "node_modules/decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmmirror.com/decamelize/-/decamelize-1.2.0.tgz",
+ "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/delegate": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmmirror.com/delegate/-/delegate-3.2.0.tgz",
+ "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw=="
+ },
+ "node_modules/dijkstrajs": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/dijkstrajs/-/dijkstrajs-1.0.3.tgz",
+ "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA=="
+ },
+ "node_modules/emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
+ },
+ "node_modules/encode-utf8": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/encode-utf8/-/encode-utf8-1.0.3.tgz",
+ "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw=="
+ },
+ "node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/good-listener": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmmirror.com/good-listener/-/good-listener-1.2.2.tgz",
+ "integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==",
+ "dependencies": {
+ "delegate": "^3.1.2"
+ }
+ },
+ "node_modules/html-to-image": {
+ "version": "1.11.11",
+ "resolved": "https://registry.npmmirror.com/html-to-image/-/html-to-image-1.11.11.tgz",
+ "integrity": "sha512-9gux8QhvjRO/erSnDPv28noDZcPZmYE7e1vFsBLKLlRlKDSqNJYebj6Qz1TGd5lsRV+X+xYyjCKjuZdABinWjA=="
+ },
+ "node_modules/is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/pngjs": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmmirror.com/pngjs/-/pngjs-5.0.0.tgz",
+ "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==",
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/qrcode": {
+ "version": "1.5.3",
+ "resolved": "https://registry.npmmirror.com/qrcode/-/qrcode-1.5.3.tgz",
+ "integrity": "sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==",
+ "dependencies": {
+ "dijkstrajs": "^1.0.1",
+ "encode-utf8": "^1.0.3",
+ "pngjs": "^5.0.0",
+ "yargs": "^15.3.1"
+ },
+ "bin": {
+ "qrcode": "bin/qrcode"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/require-main-filename": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz",
+ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
+ },
+ "node_modules/select": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmmirror.com/select/-/select-1.1.2.tgz",
+ "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA=="
+ },
+ "node_modules/set-blocking": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz",
+ "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
+ },
+ "node_modules/string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dependencies": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/tiny-emitter": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
+ "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q=="
+ },
+ "node_modules/which-module": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmmirror.com/which-module/-/which-module-2.0.1.tgz",
+ "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ=="
+ },
+ "node_modules/wrap-ansi": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
+ "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmmirror.com/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
+ },
+ "node_modules/yargs": {
+ "version": "15.4.1",
+ "resolved": "https://registry.npmmirror.com/yargs/-/yargs-15.4.1.tgz",
+ "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
+ "dependencies": {
+ "cliui": "^6.0.0",
+ "decamelize": "^1.2.0",
+ "find-up": "^4.1.0",
+ "get-caller-file": "^2.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^4.2.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^18.1.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yargs-parser": {
+ "version": "18.1.3",
+ "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-18.1.3.tgz",
+ "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
+ "dependencies": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ }
+ },
"dependencies": {
+ "ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
+ },
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz",
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
+ },
"clipboard": {
"version": "2.0.11",
"resolved": "https://registry.npmmirror.com/clipboard/-/clipboard-2.0.11.tgz",
@@ -14,11 +358,68 @@
"tiny-emitter": "^2.0.0"
}
},
+ "cliui": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmmirror.com/cliui/-/cliui-6.0.0.tgz",
+ "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
+ "requires": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^6.2.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
+ },
+ "decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmmirror.com/decamelize/-/decamelize-1.2.0.tgz",
+ "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA=="
+ },
"delegate": {
"version": "3.2.0",
"resolved": "https://registry.npmmirror.com/delegate/-/delegate-3.2.0.tgz",
"integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw=="
},
+ "dijkstrajs": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/dijkstrajs/-/dijkstrajs-1.0.3.tgz",
+ "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA=="
+ },
+ "emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
+ },
+ "encode-utf8": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/encode-utf8/-/encode-utf8-1.0.3.tgz",
+ "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw=="
+ },
+ "find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "requires": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ }
+ },
+ "get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
+ },
"good-listener": {
"version": "1.2.2",
"resolved": "https://registry.npmmirror.com/good-listener/-/good-listener-1.2.2.tgz",
@@ -27,15 +428,155 @@
"delegate": "^3.1.2"
}
},
+ "html-to-image": {
+ "version": "1.11.11",
+ "resolved": "https://registry.npmmirror.com/html-to-image/-/html-to-image-1.11.11.tgz",
+ "integrity": "sha512-9gux8QhvjRO/erSnDPv28noDZcPZmYE7e1vFsBLKLlRlKDSqNJYebj6Qz1TGd5lsRV+X+xYyjCKjuZdABinWjA=="
+ },
+ "is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
+ },
+ "locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "requires": {
+ "p-locate": "^4.1.0"
+ }
+ },
+ "p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "requires": {
+ "p-try": "^2.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "requires": {
+ "p-limit": "^2.2.0"
+ }
+ },
+ "p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
+ },
+ "path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
+ },
+ "pngjs": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmmirror.com/pngjs/-/pngjs-5.0.0.tgz",
+ "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw=="
+ },
+ "qrcode": {
+ "version": "1.5.3",
+ "resolved": "https://registry.npmmirror.com/qrcode/-/qrcode-1.5.3.tgz",
+ "integrity": "sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==",
+ "requires": {
+ "dijkstrajs": "^1.0.1",
+ "encode-utf8": "^1.0.3",
+ "pngjs": "^5.0.0",
+ "yargs": "^15.3.1"
+ }
+ },
+ "require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q=="
+ },
+ "require-main-filename": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz",
+ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
+ },
"select": {
"version": "1.1.2",
"resolved": "https://registry.npmmirror.com/select/-/select-1.1.2.tgz",
"integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA=="
},
+ "set-blocking": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz",
+ "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
+ },
+ "string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "requires": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ }
+ },
+ "strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "requires": {
+ "ansi-regex": "^5.0.1"
+ }
+ },
"tiny-emitter": {
"version": "2.1.0",
"resolved": "https://registry.npmmirror.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
"integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q=="
+ },
+ "which-module": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmmirror.com/which-module/-/which-module-2.0.1.tgz",
+ "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ=="
+ },
+ "wrap-ansi": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
+ "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
+ "requires": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ }
+ },
+ "y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmmirror.com/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
+ },
+ "yargs": {
+ "version": "15.4.1",
+ "resolved": "https://registry.npmmirror.com/yargs/-/yargs-15.4.1.tgz",
+ "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
+ "requires": {
+ "cliui": "^6.0.0",
+ "decamelize": "^1.2.0",
+ "find-up": "^4.1.0",
+ "get-caller-file": "^2.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^4.2.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^18.1.2"
+ }
+ },
+ "yargs-parser": {
+ "version": "18.1.3",
+ "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-18.1.3.tgz",
+ "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
+ "requires": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ }
}
}
}
diff --git a/yudao-ui-app/package.json b/yudao-ui-app/package.json
index cef075c4f..e147ae429 100644
--- a/yudao-ui-app/package.json
+++ b/yudao-ui-app/package.json
@@ -10,6 +10,8 @@
"author": "",
"license": "ISC",
"dependencies": {
- "clipboard": "^2.0.11"
+ "clipboard": "^2.0.11",
+ "html-to-image": "^1.11.11",
+ "qrcode": "^1.5.3"
}
}
diff --git a/yudao-ui-app/pages/goods_cashier/index.vue b/yudao-ui-app/pages/goods_cashier/index.vue
index c426e95b8..0af7ecaff 100644
--- a/yudao-ui-app/pages/goods_cashier/index.vue
+++ b/yudao-ui-app/pages/goods_cashier/index.vue
@@ -251,22 +251,9 @@
if (!that.orderId) return that.$util.Tips({
title: '请选择要支付的订单'
});
- if (paytype == 'yue' && parseFloat(number) < parseFloat(that.payPriceShow)) return that.$util.Tips({
- title: `余额不足`
- });
uni.showLoading({
title: `支付中`
});
- if (paytype == 'friend' && that.orderId) {
- uni.hideLoading();
- return uni.navigateTo({
- url: '/pages/users/payment_on_behalf/index?order_id=' + that.orderId + '&spread=' +
- this.$store.state.app.uid,
- success: res => {},
- fail: () => {},
- complete: () => {}
- });
- }
orderPay({
uni: that.orderId,
paytype: paytype,
diff --git a/yudao-ui-app/pages/user/index.vue b/yudao-ui-app/pages/user/index.vue
index 50d88ab18..8ed53f4f3 100644
--- a/yudao-ui-app/pages/user/index.vue
+++ b/yudao-ui-app/pages/user/index.vue
@@ -92,7 +92,7 @@
+ @click="jumpPage('/pages/users/user_spread_code/index')">
@@ -255,8 +255,8 @@
})
},
kefuClick() {
- if (tenantInfo.wxKfUrl) {
- location.href = tenantInfo.wxKfUrl
+ if (this.tenantInfo.wxKfUrl) {
+ location.href = this.tenantInfo.wxKfUrl
}
},
getOrderData() {
diff --git a/yudao-ui-app/pages/users/user_spread_code/index.vue b/yudao-ui-app/pages/users/user_spread_code/index.vue
index 8ac65370c..4aba9cdec 100644
--- a/yudao-ui-app/pages/users/user_spread_code/index.vue
+++ b/yudao-ui-app/pages/users/user_spread_code/index.vue
@@ -1,430 +1,222 @@
-
-
-
-
-
-
-
-
-
-
- 保存海报
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+ 办理会员{{item.gearAmount}}元
+ 可享一年返回{{item.refundAmount}}元话费
+
+
+ 三个活动可同事参与,每个手机号仅限一次,最高可反1920元话费!!!
+
+ {{tenantInfo.serviceMobile}}
+
+
+
+ {{userInfo.nickname}}
+ {{userInfo.mobile}}
+
+ {{userInfo.parentDeptName}}
+
+
+
+
+
+
+ 生成海报
+
+
-
diff --git a/yudao-ui-app/static/images/spread_bg.png b/yudao-ui-app/static/images/spread_bg.png
new file mode 100644
index 0000000000000000000000000000000000000000..381e2787a9a3716562dbd364e2ea6659e9bed571
GIT binary patch
literal 1197912
zcmaI8bx_-Husw`B1PaBqP>K{Q?pE9#iWZ7fnnEBza0;P#1$QX!?yg0P6-&_K5THo#
zzI^X*-oGx~na>O}$qae2a(2(zeezjbQ;86d8V>~pg-}KLwJr(@CJY4yUkC^5{*~n!
z0Q~+Bs=Ka|97_2Z?G6eGBZ|svS$!{y{kG_ob%~ffcJXJg_U;Zp+LibeXUu0L!*7fE
zT@K|{zq8{p5-AUPzE0a7x_i~bh|+%Z#ScTT;NR`?oqwvC^ovA~nZ}+OM=_1nfb{_K
z0_+Q^bSx2%i%#{RG=0*n_taS)jkNEp>*qwUmoGs=)*G8mj&7&|nQns(i=Z}(g2gS{
zW()4A1GjY7hCQL@rOdU@P@gb9@>~RCX#U&k_}9bU=-dX1NN-BTA~ZBu#JAKa@8hOt
zIie``(rb6l4f}2V?SQAmVl~dj^<6Iw7u?-`TJ`A_s70f}`NEy+4wk6JKy^wA@9)SUf;!6ed>(
z5piWrJE0!~7aT1~@y&mI)S?!Voe1S*)P>#29@OB%VN8cK{E10pwt`P1`3h%E>z8SF
zZwD}u&uX5}0Dq{EKkd!koEPO=;Q%}O_NHRD(G^GGY*Rml2`gdcVVC4Xi@6OB?=HK@
zA2#U!7`j4n<@DbT^50zITyU_>QgRq8CVrQE$JAY}`t-|hcxDFM*Zq*Gf0~q4mrL0D
zbxt@wI-~pN={_BNfKTG2o~n0M8tFI#BcF!OFRW%3L8h@Ot04xr+VjDWe?@2~Zb8
zuMydp>uSve>YR(vi9v2lSU@6nQj!=WVU9T26JBb@h4pR-o}stb-caFR1C%V&_Tv#+
z?t!15{^xrwd5uKjzlc_OEHqc*aR!4SLzOx%F3yTw=4q5Ym|$<ElUwCH{DxnJ+sL_^1
zWWS@|%(k#%I7FB@VqBq*zT%^Itx`e}
zoQd8qc4rF&^|sou#q={v{2}8uM#q
zP??UxzBpu%&b^e<7nCro6LDg_iIM)l;!S1684vMXO}qD$uqzxpyWYsW$DI0k;})=Y
z#Z%EUuZ8NJP^CPs{QMYoGR03wT+4=X{EvhF;O-8Ah#ZKB^`@A44+(#w8rj;V{G(oC
zIr6y&!R6(iFRwK43gD?Bu!KvY-5$@oyeo)tK!iT+kYIU(@OP8cHDQz=MQdi4uIR)>
zH2N~MfS5QNtIEJY1J95G{j-p5`q$?QUYW6J$^S+f9z|TnpjoC$97KNgLdG%g7k$;Y
zo*5Lx760g|g~iK%q+={iGBrjr7c2!i=*Ovbreq|F
z=RHvU@y&^`zmb0HJq`ws^*?Gu-tQ=wU>y7GzeFT{(VavS<{I|;I{^kjty`3A{n6ss
zk$B9H4mT{!xoZsjn(khOtLMhKg6qI?NU0}4X~e8x@j#4$zvr7BW3j-aWh5vU=Up%a
z=VRrN$VeN)!OzzCC2E^I!3TN~B?9@LF2YK+;f%t8bblh7VUsx
zvH+(r7rY?HK*p`NolEe{lNT@3$o&>C5TT{VmTzUK2pxFE^Q^$DcjSG!CjekTxYc};
zUCd^+@a568(nc%jxI5N5VvGpUACQOPX{LV!o?wU9W*s3is8TD?VS7K1+Z&uN;&IAX
zykldFbU$dm$Uo1b;UAVaSP#*^54_=z{D{j=tVf+AgJzC_($%KrCQu_j;+IJrQxKo%
z$iP-j&(zFmiQ9SI9);M(at)wDx^)X)HjD4L+=)#1sd$qwR=C$)Z&-6nQ$Gp{D7aC~
zRyc@TH|DfmrtBkCq^?kfa-%{bM%QgzJH~-$<+>NE3U|u#ZOgN!C{%^kd4@S+0X6q5
zp9Eh|lrh8nWqK(8UjYVZjXq|(@sfT!|?;
zYe%K!YTTM&4pi)-`}OM}CPu;^Q-2z@<|gCyawR!HrY;C%T58`?fL*K$IKC#ePo{s%u4KYy2xL)0ZOyq9%oAlT*uv2uRTIEC=
zm`;5We#%k9HX0AAhxlgg`qp2A@B>op7-=5$I0`N$hD?_va*|cB*qgxf#lUgos?8*|
z*~~q5^FRf{E7jt!ouOEAM*qRc-4yw**YjZ
zY9vAownolh3w_g*t5y?|P14%F(q}Ub<5WWE0F
zvQ&5i>{|xbZMkbu7>xfWC41Jps66`rF@vT${;gYv0Fp#x6lf7ofH+BvHI93mjK`8%
z?-IfCO0O9f1RRf+L0V{0=qWP;+~8+t;w9QV8PO3VpO1xBTJhF=E-Z-`LyqWUlA6p0
z3glxS^~;ewE&(|VTA2PFWg1mMIe_uu$NCd#g>26p)2_s}}LiP0Iy$5Opm!o6;9jbHF~VY8Bpl
z=HmaT0Ke2%P7eca_QDJY7IcUVsi7^{v}ml<6gACowuE|b8uGTMh$cw9Ja*PIzvWw0
zCRcWUZ~>Nx*VC>xh5gupRagSE-RA$qv4scd(Uvp>cO)1RX>1gVg%e-)3)&(?>)GET
zJYF1^`4Q2eHM$f#79;{q6}mxUl~Tn43B6hF)Ysa(-it`8e7tvJTE|tJ^59uVujw?
zRg9muy^wiPC#LOfPUK=gzFAJio*n89S`i4MIf3Vo5D3N~{heoTINnl03CX)y4s`V^5QcFmbAc(wpQ#j33V6-Eh_69;gW$|&_!rv4Eaw6g9F#4
zSd`9q%a^efczt~c(vVNmf6(_=nC
zeL{>Yp#zi#zBZF9{yvb40nU5ZDjpDWFczRBQ&Z%)l8VE_)C~PT%x~D~A8aSZM&vxu
z<8Cw|DXA`~-y9IOZtK+^6(aIz2k1{6)Uv|u=m7m30u{}Gx+X#TbfEuyrZ#4X{%N?+
zGIb+v>&lEu>ZGq6kw)zm@2?Xu0!0zlpQ4RV}^L$ndGV&Zm_Aj2K2YSntti
zZ(Vm!NO%lsq=P$OHabgJ;>-{2W})=J@M6UL0%*G0KFjMde{|bG;_Nni*b+d~oCFHB
zLSTcOI?XDTh5s@dWvu|+_r@}pmM&nY3b@ix#yqmnz(NUHf%;O
zb$pBv9FgK|2Ve8|c1-j_&$8DFnXr~HC|icw5I&GYfKZSx&Y*@)?Hj|FU8nYJ?
z*!=8qdMP4dwG@5AY1pha#f5t)F-!MHga46i2|CowvRKVP-Z5FPtT2YaKLpmN)+VykTOqvy>shO|Zr&q`5I@-LFb)
zg@U*19Q&7!>+j=zgO@Lci#34DUeN%(HjOEt-jP1Mq1nfY#u?7{XFlJ@y8jIe)b`ok
z`H3A_m*7j8023R7yPu1($ivyku=*NXM1{t%;M~(kV}Z;wB*GmZ&>aUAN>9i8gRh%H
z=q_K#p_>I(^7C&Hp*bcQE$Q5M5
z^XUTTrGG%zEis>-wjy?TUSAur_Z(KQ&X&A4MS*=z%LzzW`*JRW0Dmz^mbC*NCHxqE
z?1QE1j1O;W6pqu?tj$=V|M_3ONs3BRbmi>G^Jl!oo|OuD0&C4wfvM=xE;!);BAO!jqe=o%)pU
z5tA5Yy|i;@33*HnO&@r3_|x5a65iouaPZY8
zOVW>^8H{Fa2M*f~=@l{6tbca{9lQ$rjyYDvXWw(G
zjgBeDa_h|4h~yI3*1vZ?uq$NBV4m`Z0j4Ape2o_j(QKASJ#c8&bIlXOOSX{AOgQ3dk~Yt*+Ti?K0r?AQm?nxegA7NV%s){FpM!$Q>t!HGJD)a^5QB0PE>%`fA7%$e&4ot>jQx
zji03$JnvksnivUH1q(DVHbbQ|6WR4!v=TX~zk5E0$;-(y5>GZIA`hyZ{4OC+R)hz7
z|5$%7{E_;jKjMH1b{~~(M|1nYRMg@t+a;QmeRqgi-=*Z_6&xz0&sFBTv371nX($U+cx!Y?T#)HiiFf)oHd=d1
zn*wI+`%ba4uD|
z><&w0tfYf04T`>)ICzfa
zFun?rMb0JKSpVjqp9;}T#6w;%PRlllV}kehJ!_l&nAbmu*Z!GdZFF`~btq?k?Gq>*
zV`x(Y$saIiOcbd9lEKsnjS>sm2!`xt?Mw<(z96d2=n~0FPX8XV^()EP4#N5N$a?t&|Xxmpykohuf++|Lx6O>zgeJrl80xil&TzMC6snv_UQHjgn_^kx3Walzujms7E
zVN68ReZ0`sMUBbS)aDkyuuC2lwKcn%$XjGw^5*lvaOGs%Ta>v^4}%}Q5+f}>X-qh-
z!TxZ7eYPYmO-&km>F#8pT+BHJu#R+5Fq*4>ztlA#Vx|30+bbGY!-U)w;6ATMWS+e5
zVJ-sB5&S|-R7bo@Iz9b6tLUF6uXG{#nZdfp_;^3r#>&iX0;p5#HjJI)dr0nx{!n2e
z$H$G2U8UK5d;!~E9zK$C7Gq_&!|}-3eq++bAzLN%U)VqzcSR%$s%YG4Oyh6sxfRD
z*t(n#KA{~diekPLZ0sBRct{Kjb(Jy%R^T49>Cd)^G)A{&L=`TY25we!c;cwXVzlY-^6O~&67Ooj)|1R
zIG}-|7TeU|=e@1z5X032YK;OS7~o3FA?S_pCYq6V(|E}Kf@@Vr45R3sCK{oE9n+7C
zzb~!FEa$t*u}5PQv$v((0=FX{J`n@LFV6>hcV6*qk53Mya==gKTAo8@{{SHL-Gh6i1imz}-AxK)CT4dx2O?4B9rixEL#b%2*CI
z$5!9T_R}g!)zJSMuFhH=ymU{ZbiJ7AgB5Ov=4P~h%+ba3aJ&d;FW
z5xMGC*FQQ6jAgu8mVvlQz7x&n(gpAI*>=*#;qYM#)As^VT9egwlKQQHAJFW4|I&d$eYK&Qb(@#-@3ECX
zlyHETYr5NZXk)p?T#x^Hb@^qy%g7vAn60FLx8E9A5%E2H*1-Cl!&qI>gi)Uhe(gEGc2r@V}
z5s~?W(xtBgnvOi~%wB;b-c~h_HN=N_m#p{vs6fqStg|rwfVx!^mENV@TiZ$5c6RIp
zs9(h6b6xSgar`9jq+qd&w&SOUf(wJT?{dWs(G%Eki=w3t(6XPh#0#wXGrvhM@{2f#
z_UWm9m$~jN=WXGVNMj$g(Bhx3=G56PEkVk+2j%llVJ2b*U+UNAN6VLK=ZxhQTQv=|
zdy(6lbx8EO|?MkZ96OvsDq
z5Rsu(b>#3C=+-@ZJBA4L;9*Y^2C-EKe9E;6{zV@XgKG`hwkV1v+^uHW2~VjldS`=c
z0NXE~|E9Ee<2lGp$rbZsZD#*@<_o7r=n7ky!!hhFWyHy`AMXqF!Vzej~14m0nPbhNl0)xK^RhbYoE)OE@O)
zS+BD>-e$v|+0Gpm2ORtTrkB0LBN}fka~ypzHOE};AU((8@+Nj}zKu=HkmA&8%o7-4
zvJx3g%~55T@M|1iSKCU;-jN`f3|5AV>yT^?CKLm~u;vY8g;~-yU!;%P6A-;1(!;HSo9SE}gx!%y>Vlvrp@hiW5-IJOoms~vT+@BEn>^3z
zNa+<+uD_}ml`b5=TpKQ#ie>L5h=2YRpmX4^B@0UwU}1GnV=0g?^X2|o5(M6Rt}=
zTeqtGfynW8{eX{HoYMg=@5S>J_j?q~tYl^Xtic4EEtE^KlchrGOD1w!$Y`i}1|1*)
zRwgVERQl6+H;)v^(O7*v3UuJyzNDcLAK~1hy+a?9_&Mj=_8r>kBhw1NeWZo?_y=TS
zA{pzk)9s(ezn=$tRj0;=g9+?BVuD-vo<{0%FGSYL
z*12mxeMNrI6?|QcZ8Ijg}bHc%pw
zl)QuY2F`s?ZvZ$6_i!|&-(3wz3%|GJLMV_mBLtf12qd4{(r>PFe63m{$CLg&*dozz
z9$N^~BFVnPQOr9}C5%Tr!LuW}Mrn-1KPgRzuqo~OU3$OSQn3YVS6f!}fZ8+~#>aQ4
z$J{$~K}hZV2NmDWb==oMl6T%6nG<&x0)N7bCtcKjX;Tmg`*%scKBH%6HY(VMqlkG$VXrva>uz6#pzc!15}-0uP>)#R
zE0#us8W`&Y+|YFg+_vl9s4e0v{guJkbM^{%5_uB_&^ZVlKYy_KP$Cvd-^{h{HaXC7
z$YcnoCUT5jUIXwM#Z!ER#12;L>PWE_r2l@;aU>%xX@D?kRdr}-a2qiXZF%{tJqiyD
zU5wW?S{H?)a*vD=M69~6>m~&K%t+pUja+3!Udp65MDGH$xOx`u`o|c?c~P34gNgLC
zu-?~q%Io)dBkuX($W{|Rm~zp&=IO&S`6)^GJ&;(%{*%6pKPtZ
zUEU;X(c1;av6@38Z{@r(yZlhaYc1os-coF3bzZXaElbsY|Mz~f+sh_dtbcj|11`Q-
zK4p>_w2w*(Rz+ZKz`r#g(L-qOW6UgnFHt-~$f^YWs+wOZ{rV>VL=!
z6}J4qUHjreK8+gGc`1<|5E^lQPuA#YzA-Sk*IMWp#&0>Q;<=loipc>hGGY;;5|S0V
z@b3fYQ(ECR6wQnNoa^?6jUBZs7M^gfC(Sg|ZvpOGg%S180Q;c4CgZpLgeLEnwb{0A
zsojCVsdUFm`yD4VN_5uumFbZiZ@s-B%=>pkCiV@(f)V$QEl%V+cu-u1VN9ay^vv%c
z9!`mhm-wwa&vY&97Q?+&2#d2rosNEI$=F^yigv#%^IWbYnf`dTiSoha1JQD;(O@CKKzDqITp8GwOYwUrhHT
z;qHem;4Po~ENMM|!8=ob5n`$meEqks^uB;aZcB;0gg@BX#dW@1OwXShaMQeAToedh
ze`na%okzp~AR}MI&a0jpZs@=XhLA0mT?2}8TE8ET2<&a_8_uOe_EK>h9D^~CA|E#A
zzxA;ldM34rFJ+mqxVW+*9V=TPasJ0GTy=Mih^}#DP7=s;Gqo`;(%i~&mx|*ufh-Qg
zYE7-U*0r%Jt7%*9oy;DZ;YZ6|&z3$sr16e_6H&Ml#e>MgQb~-Hb9E_TR5P${vs5s3
z2?}6zLbLr`8;eoQG2*&oGEOa`YNt2v8a9UEow(wfSd*GPYq1c2Ffq;CxcpqJ$Oy{$
zX|C2;Gq))_ZPp5mWQ<&wz56H(AcrYP8aK~}AgzS8ou)LqBmpc$6iM#$=9N_S+AJku
zD1;gdCsS|8*9|tw#@#a&kb7I903AAMlvCvg$c^;Z&K*e!vNJz_-rZ~Oly03@sn|IQ
z#z04;c9u2ur1v=8rC7?s%t7d!>y=?lmWuWs=Hb&*00|60cO|sdbne+9zj7*gKU`ly
z)BP*Hevu-r4O)I)uct#H(N6D@l%k=5?qczIPG%X<(SW%b?}HE+2s|@pcNf4x%rZ8g
zNFeE(A0}PAq$2m(5)0J4e%T1+K#q=c?56AkZ(RXz8L^p=&L{P;~s2SZz
zoE!H>O4nIRG8pp4Zc;-L4E=&7YFXKlMfId@*)GW3V!9i?0Zf2+h3`J6<#FEuC;%RG
z^gTBe;b7IT8i+V=xa^R1kj}Iv(#h=HfXQ2_z6g#KMjzs^Qxb~dE(a)%PUy??%p3rH
zJTIG>;b`45U2VOP*;xx!$8YwsMiJ)GTfSJ0b6|Dg0?EK~EwSJ&5iMsuFC6zUy4+LL
zRL+?c!mS=fk)7*zdZ(lzB7()&_DW_4148ATWG|c0M-Xl|k
zpR3z(#;S#?#bS)4`umI`;IGYM0z6boSddl4)yLTT76@t!W(kz_ow=9aaqon3reD?#kx&0Bn-J^g1z
zp*HNtwb2w+TFDxB`2O0LS597)U(IOw)oGDuv?o+kDs`Cwx9gehl*Rq$puG2)CScY3
zv!!7*6^S`VP5j<3z(F{w*6DBzz_NI=fDTdBH;
zby&`|@ztr~139uB_8)jlFEtDdd~!Nx>HhxY^>^)N+u#1aK)lLTse&8cPpVIEuVkjH
z^QZQ0&$INW>IFI%*4oBjmMN0KCMKw}=!t+I$30y_AVJp8r{}etH*i#LKIJvd-+1Rd`AZGWHDj!h=ByrLbiqB8Ar;$h6)9&Br
z4-2Y(JaLoV_hZFWBaUg3RXnpm;Wn&lBV$k)4}CT7!O`W=<@Xlr^wMJW4w={8CjT-u
z)l)>o=^2qm(Ugh(iFnSsf>uEB+Bex)>Y1|Tq*7@czNX^T7|PM{6p#K9u)n>YOC^Ue
zD$!@CZJz0KMiaMT%UKR2V>9^uTAOIK5mM+9AU**7p_yGQX;{xA
zU7`EaLQWoIbq-4i22k_Q>;l$^R+tl-hOg(HVrUWU&n0eVQI%`5W8<97gV(@#}d*c-&x%q=@V!n=OvM%HFQDW(sRqGaOcRuC@Gw*g9R}^=s
z$Y9^@*O^?G^_ve1-_C3cxtIb!>>txolfY_F3Oc^7Ag0gvV^}{UFuymxWe15oiFm(G
zm}i$bfQQKIb&5rP)p8Hm$I0na?xM3mCro$o4=)a25lW-hjaQOu?kf~wAg}qTSvvYj
zocL0VV5{lhWmx6Q@@I{al>#MSEu+ejETYxnruFNAn4;jj&DeS
z|F}MX@>S?TNVE)*AzlpdQ{O^f;v~b5`D}SC^1A6r0&NhLOhOh!;IpA~vaxdYWmdxo
zjkEI@Pz|pfXRnR{5P-mr0M(QP5ml`wmWBP8*m;+9zW{KN#9`Am+bx-+M9*VG1a;KT
z)S20&YfnX}3G@!1ZH8@%(aHl8+smeFJX06(g0DA?B;MpxanXGJ-(pOs(Q}}bMnOZv
z4lT#Ry7$3{DaVN#_4jAr+VA&o1GI|
zH%t9@%E=NVC_%2AjU6&Soxz#SbS~J{i|~8O`PM>87dTrV9G*vm*f;l>TJ0c)RmD$G
z@+@mmoA2|9(~7DOSQZSg%+JP5s?F|!Zd-d*!Sr1G{umF=7%U<>-3+fCi<~SOq9RzR
zFll4)B1JsrI$PBLqV`Xup$>FIO$TUTp4(il{fv%lF$0Z5Gn;sCUgFA&7
zU1^7Y6ExSB+h|{wvWN7C{DT^YJZ_ri6uW+X0rR`1$GCf$85Ik!>sG#nyi6Uw-R$IqNY1
zbcs{pc7&;ZgD8H8m|=9PB?o3r5lfz4W9$foZK$~6aYi-hboA|;t#tV@9u397x5umV
zaa4GTzZiS5Nu+KL-I5uys9%Hc9?oqBw5=0g&Fg``R?}J7Y2C>OiWDW!kmyH$&?X}B
z5YDzOYO9`j3&gu+;fJa(u0BYp<~va5{p`5A(-LnNyv)*Ejs}54&>g)Uh5cZwa6%W|
zQSQ*N(e^(Aw}=RGe{3P1pKEMglI4`|bVVn*1y&0G*^TnOOELiM@p_zgCmyegdhutH
zHkThQs64!qw7qcKxPY>>h~|oMc_bU`%A8+bIBd#o9e8
zimG1zSNXXj5+B5L0`nr3!LiOA6D_`SJq@;Y6Qqs+iG(cm-1upzqtLDa|CP|1!&)%{H%dNd-5I%
zQZM45tRi3E5rYF+m)LR7kWlh$obeZMPh_9eSjOViRy-g$~aHMlEvKdJ+JOshNh1S#rw#t;=$$
z8(}}(OS}1O`*L9rO^T&HR?Q2z>sve0Hyii+L9>lNC#Da+@{D-~k*JZBp!6tm682b?
zI7xrAm-r!7RsibcDpG(a^g&9opQOjmsKNyq>O{7{DO<@83km7!HioAg9!rVfzCR5M
zbp%b%l@@1tUc-8vz?ZMPJdCoJmLiqkO|?!LeQsRS4EUKGa=&JB#Dc$~NcMH0lEy}n
zM>qa@%QmIlH_&M@=|ROoBIBM7q|MNOI!Cg#jxP{C6Z;d)Uns#aBPk-`;$V;0xLfQ}
z5kBSVmKVxZzrIS{=NUr5-6-BGL#AKu=UO++z}>iYKd5^<+^SNf0DW&i`+co-ov`DJ
zjicoRLQ&xUr
z$k{>)o$gmnJ{6xUI5fNq6FhOiF=d!~Yvh&qQPQ&0z};4Sg$DW=_m8o%dgJm2mPmk3
zm*k($wlVuA?5vy*Bq{sywVe^fEPO@zD}^mM;Kf(
zwX%JFMwk)`3JzSwf{5(CYHsK=F*#k3yhxIXA?>=6Gz5MyGGS^(vY*Nr{7PvUwYGHc
zNse#1bjJV(6f0yP{N?nDTx6f;*}A~_kd7BId>KOpe0SfS~-SklK_oeQORv%gX%IaM?p@53@H_c$wMonhfJ
zCn#H@8pM$QZ-d*!(Jg#R1qep1j*65m3%~S2()tZep`+CrH5SO^p|HZAS0&+AEHEtDtLY(@6xk=|2j7gGL49JrObEQFv=9IRV+Ssobsg|v}
z=we#vT1P*=5@(3+7L<^7`FH2a1h)Nz(Is;m42dw0m}RGvjcN{rX5jjrbDG^}aG+pV&8tVi*2>
zaOZF3IZj$P$*T_OO=xb0mfnT5Hh$Yyfbw&paBNM(S1$!8CiwVY+u62og@w%H+9@n^
zj_{@>KmBc$s#m9BF#$>Kzn|KMj^XL6DbC_=i-(GjZv*f#MbOmur#UslE|%?nZN74z
z+3f7MGKnIF%SV~tVS^l+q;<+Y#J|?EFP1$M`!&)nVO`&A_9L~meZ^o8XfJ_-I59y`
z7&ZaksTnGX078`iV07C2TtE^V?nK~wCjgG(`=Uu=yiV!IQ
zUtvh5U!A<+sBuPpGa#YEy%Ty7G+XbkvW
z*&5-^@QX?oG>{`uJd@-esd;?GSP%kp`5Fn(x>trxMTY%I;F;dYMU{lj2hMj?hLbj~
z;{dR)&s~
z#YBF!Eg&`&n&pJ8b2!tfw8GSPomlW)NAHk0i{?+c7U@>kQ%rMGJw~s&w?f3e
z)Vj|~M)aFer_P7)b{?Zp)JcS__}|{7f&?vW#;iFejmWE)LwR&=&X55@
zG32icP0`1<(#wkG$*q3Z&&O#;Yf`6-;^?+Mw_uDTI->;~AK|JmZkh{KK1c_xH
z7oWr8->mxcepK@i!~_qc#z}9lB`n7kZpMF}wY!t?FHzCE^l^FbS+!vo$zE^2X1V&$
ztE=tL0(+E-+p*!|K0)AE2-91!G?0McVKC@&3GK9nL#a_jxbKjdZlc9JstQ9DKVRw7
zGF(uslGI?e4TjnAdBvY`Oau@dkgTxNmu(a)TMxgGMBBp7?pc0zZfk^r>X8&o0dLxW;-_ty7Q}pXdS;F>eR(5lu-uh_WRsqt_CegcaCy
zlTcKrRTPR{x=&2)4S%1AVV|Cq*+uuC0zfZ(SOdr!s&wL^kz=HfVAHL@rx=32&%K4mYd&d8TVni@&
zX`QjcIZTEWW*(BIlxC?T6UgUM)7|aLTM)Wn@Ig~zjR5?)qPJG(<+p^<8}ZxtkDOZy
z#js(7r^heK@cxgg>~(?^Z|X$ql<#GCU)TczPK@e0oPx{@1`T4^gR*cH!yH~l
z>^IRA-SUn0yK~qK|w)jAm
z_iW;+<6yC?^p%?T(SnSHyK+xpvJ-9lKcD1snJRHY*@+h2zHAQA
zoO%kcTl5(-d>7Rr*daG|${9KdHDbx@`^qK6Ikn
zU6vK7drp5ED;gSlvxS4mlc5!xVTzjRe|K2V949m-OW{V)zid2o
zbpoAc6*=nViaIx3Ai_6z-*>nu%TDGWvvu8O+}__@A9w38TWIM`c;IX@X#7DZX7m1c
zXCx&HTK6Q!PW7Z%HdUQGD@Xxojs%=M;T+$q(=xizL!d#dYX#v=et
z6}Y*@`yM?*%jq43{uAnW`^FW^iu(eTxoS+sQqZ1JBlv)ueeKbXaXg05zWx8Z0LjZ8
zc2#tKBE_KYea-+y%MJ8(<@n!0u5mATyZk=FRsxpeBfixqlD)~AqkkiRI~1jUec73@
zg@=&GwDwb^=WYZX44~Ko1M!VD4#H=C>pRSB;w*OS!&~?Z=U~lBvm~VCusX`gcy*b%
zFVBP+6K1{!esX*5ssgkea|5hBk~!2kpH$E9$Iy4TeCf+Qe6O~)d#45RwC^V}<$fdq
zFB*l9iUm=#RsqTyK^O%xw4xeCZ&{ZlfY*f!lkU&;F{d~8<{`Dj6~1bXM#eK9Vf(a%6b-_<{nM+V&8;V*P(nx
zQJ-d8rA6+!B|t9x$my$bXuoye&ke;`Y|>w{n8bJF^{Hu6He8*%9RX
z5vXrNXK9``t5xA4sxTn9I%l&-WsolE8_ADDuKt&BSaoofTgRA$7`XAB4+@IhX_=-vbtZT5APFuz2mt<}~
zZnFS-|BG=_-sKJV77ZgQiMkI-b1DBzbY8K4f@5%Sj9N6DeDK@*Kr}CXaOay10J}W@
zBv7KnV9lZK%6c~4)ufRfXEl8L@U9=7tDQ1F#3mzmL-Y}+{Se3d#^TqfsEA-#4US7Lr
zMddbcM~!CgRA=^6Snsb{=e57GQbk$w;>OO*pZbxx
zOoaE_ZovivoaJo78UthMYTJHi>oS~ZArG9z!kr!);S(a*V)#An>;B!2T^B
zHYlf&$6RTs`!}mfpAWie`Fp)re|JaHvgbyRG0CN~&@qq|4!<|DN#52@BpgfANZVA%
z3|9e{9sl^EN
z2}m7x{^vlpXhb*7(~ac>`a|KG5q3`?$JtsRzOEy~2$a(L&>@|#SLh<0xz6`$
z)uy2^KsD6ITLE-Oc*5q?$+24{kAAOQEL;Yc2eY)&GxIz5c4`^&l@l56^aBa>>w9+k
zeyMJ>{uVD>PPQEMN5X?B|10f|1QteKABgdTY^PrQbuD6A6%q>_b>jetQ(k0r4AF=4d#$Y)!BvCyVcqTU
zRlge!IIkq(zj@PJ6;m3V#(rl}tS(7<&YHCKB@p)9GEMyhJ4ZoAtd$w_^bB!V`3y|o
zz}8P;mbLbUg)RAqu2$gIt_=|Z+-r>#Y6>nu9&(C92!an+i2
zIOgq=+(3_vu4I~<>UIggR(wG?y3cxfAgRahYGYU*p)#K=h#g`kuXsn6bxodLC7yaH
zZeZ{e6H5_oVR%&x)Y1>l537NhY#=f%9_Wsb+HhW1N#Y!=G8KKWH|3e%PLJcb@v-JNc(Y@BFF
z*0f(9Mj)pL+j8Gs{sgGUz@PHp({cUTqNeZo2^YNAeEl>$R^JC-l!h;~->y
z3FMU^Ty=o414Cxzzv3nzg3WfiATPV?YtWrnDnlGK$D&rjj-4M(YjJbETDAOT^CXaJ
z-BGC7FKWdiB15fVLDQKpNkG3*eqX!8<9>lXi^<`)5FN)D&6-@Cus;At7w@P=6eOd5QFtXG$_w~KU~MV*s%sR<*-Jxpwq4aN
zDIsy@wxjip{vquH|A{f@;_}weIa@vRZMfpfC3AQOvrAUYk4|nIanphp7VOM~oRQ;T
zNHGrf6KCLZ_?7AU{r4{JiSbtt(I(1?&VD
zTma0Jw=$zV&y6AZCFX1zzMn$B-?!u?7G%CC_2Ta>1`>mE`qD|whG&efG9#PA_CD3I
z%eV=^d!TKB*)Yg_IcJ++l0$s5exSrq(%f
zXRHcE)%Do`+vCiyk?bg@yY(CrTeu>a$PwE8Ff?W0kL=p3rh4>}KcOP5d!?hZPhn+E
z3rtHM_)tUFg}w4L^Zqg_59jK|PMNVll`{T~dP8tx+X58@+Kuu=8wauQ^2S7q<5C9-
zYKR^2p&c_L?$1A-spZ+-w_3!o)%12zHK7M?Z3Y#Ph-4O=9LDb4?9GD2uyw5bUvF(r
zRh~|G6_j-xZQ1h+PIXF4X#Rg}y>&nnUi&^Q0#XVhrL+Gjg%0j
zq`O60V$^7)yEYgwN$>i=62ko;?Q+g$
z$yVlHsC`Z9%7<4x%Fw+bk9v!Z#Klhc2uTS`EV+s6N
za_o$Wva{&t2$$a*CC0YfKmPQ=&DYvy@IEFEyu`<}sYM3!2Qsl1d$EzfcIz~+o)IQQ
zNewXIsMGz`&kC(k!M0sGu{Xe%IfyM=yPgS6bR`k$o4_qIKa`y4TLOUgOk#S?m4&D%
zNGW^K^{0Z~LYRAQEh)Zy;O^X&c615FN>h(?tZtO=b5W$*eCd5d6Q*RnCm&QEPZBx2
zN18O#rP(+~%vr`0rNoHkzVom$Bux9DKIFr+R)M7^RO0PYbxUWjF@E$hXc3(-_?M9S
z>fbG$!9Gd=REvGXr^%N}qhqovX@y(x)uZ-Ed>>Bxcsvr%s$O%-#R_B!gvnCXEsa>+
zTyMaJGJ7Zt;^WZKxoR;rT3OZso4ryfrm_XKFM>t(S{Z{;Sta;Tc{T1Xp!cO)L=Btbxe%Kw;PSPP7c=lpPRk&QnnOe0)f
zj3VrhdfOCLhI@DD^3#$V|MKvLvk14Zo?Fd})+k~WXZ*b?57!IkZjefD+*p0aKu!z`
zeDtOA!V{*r_I^KYIl(WE%sy4=kryDmNm++`9>ra2n;(C?HRnBg;ls#1gO~L$
z$hbwaoRrcQriP=@uyePgJSoigiLA}ufHytjL{~X7`R(9$J}>@PoXwZv%o5Ix8#RnwT4d+q6p2eyyrhgGU}8G^WNs)90}&i#T4B4N~2=
zmTA>H*`TWXP)n=Mko5~OeCp)(XDci_bEtKig%~yO1{9uRVR|c}Zj_8SV?A!~G=}Pm
zESX1;Q+#P2jl`-&CSPU|>j{sCKMLvXiUbfuMWb+C+ZxC;5xQ9J1BPPl>U1%0;@s%T
zzd@&6SStL_Q(xE1fdOoTO%+$N8}yx0GP2OrO}3d#6H`toW#(HgHfrJit>%k$k)oh)
z{3?Q_slJE7r1EHyx3FWMhG{H>(@21x(dI`luaDeDxbG~B>~Ea%oqGx`^3g*$m7_!Y
zFGH4lBeSd;e-76>AXEMRSk1rukQ9&F8Yy7!b0DS?#CeK
zuB5^|5+9~BIk4NcG&p;OG^h>Cs65IVt}=DKl@ALDoBvJ)ACqK&Q4fSxOOAhBu-_k_
znd-8Jx00b02}@4M25rY=Q$Nb89Mznvtxnz*Z{f5VTH?le(=DAY<8Fq+Eq?9?8Q1@Z
znA|vN^LMhudF0EBt)?+#s@Esv6F?f_k>inFOI2rOJX1(+C+JK5nGePW8_#7aGV?NC
zAHvyj*B4I$T=58VUWK>fV_w<>B$o&MRMd0nTgogv@-l_h^W@8wOv$?@GPa<-Hi>Cv
z$TKbbV(GeNBJV%`0iEBAw
z*e-l^bRs>2xh^h@}`%!f_NA+x)FkYPWZxBBR)UcImz0ZRJV5d9IIUXLYw6nvWLp$
zY%cvm;3GzmsD+PBl~xmLZE6c%1*)EWz}odG0wXT;I<~Y2%WyW6F{}RzpEaK4VO+fU
z?Ts+D(OJrwy=XDRYZ&XIj`Z;1lkTZ9nFu@_!{r}{U3CqU|LDQ#28F$`uo`}!dPJ&F
zBZzekdfv#_BoeYDpTyRg$I=`{N;a9cT=+tak+(k7e_I44H=t3S9h<#HXggYB6CtcL
z-Mknr6Hl020`|xY`VdlARXG$uJl-KO1`2;_Y>0=^Ub}hzwi#ogaZz7P@YgZIdBjij
zvB>V`l$#h;iZ&LBDlZ*V8F<{q)CrhF{-6kEx(_Rxz7UFF32a;U9J3(I_MDz1*$7gV
zOe}nN0LoaKL)I&*3PchZuAgm;yEQrB*yOn06>3}$u#{!BmcZ>Ev+m7Eo}upp
zKtTDcxfqZ7mkY*)*UJkT)f(YjlaA_5r{tLVC&}j>g>_z
z&flV9D~`~^gxPqEF_tAaqCDh`H*v-EPI!58)XhFYz-;8QD=5SU0ynM)Mz7{N2DS7T
zpNS}DvJ?@b-a|(3Xg(8kcHH3kLdI#ZeuWh!Ovup|GT{4=jgB^|-gjaA($Bj6{^l)y
zH<%l@=)?W(iAS15t=sO}f#`(>g{5%aP`{MOHS3pa1!dUgC&cXA;^r_H=6$;J-)!MS
z!n;RHr=8ciJ&6MKV!DCzaqG|Wr)8cQbKf%|GMD8ah_UG;CGOmNvOe8@N41EYMG_wq
zD3+2NvSVL01|b%yU+T&0l2RV?#teH~Dnx*(x4pACnh$=~NjRA<*7LO9o5?sxH^RM`
z{k2X)g4%@H_1}NxJ!LAA!1B{)C$d_CQUkYQy4i99;FFR{od|GVWghl=$aZTqlLsGJK5{fGPLY3D
z_zh&!Ql?3D=GNchv1B}Czr(a6x%#pUyu{H=QV-*tM2_W<=HtJ8DIv9#e@DYLL@DGG
z&4(cLLl4W^9{N?z>bsY?_?TnY-D<6H2}gsb=j!9WnjV4tLL=u~?j!@lABi!(m0vJi
zQ+fE(|8m(6dCg4E_cV5wNtno+EoSTu96499uVrs&xvp$}(azXH%P4&}u
zmAYN`fmW*z_MEL{f5%2qy8c+@CA_Y5t8ska^>rHDMo=CY6-oPhX><5p;5-qx5p@g|
z^l|#Tj8DJO(Q;NMdk;cRh?jzwVmaGH|1=d4spLELdn_qy7nA*Uo};>3`&{Kzlsc2=SDEYs>Vd{G^w9QTR2%e*fuX8d&U|
zaOva_L+88zl9uX{G$6hXG5%3K+)YM!fzNpKHtI>
zvcu22)e+LE=*E;r9ql}R;@zSNo0xEHHS6{k`WG9B&~T!*b`4-BR=iMy%}(e**Gn$?
z_wfFTPbk;E+2uR9d@Vd|pJPfd7LamfVzWGbgBU;o&8B(e=8Co^G3BrR*FoObm3flE
z68JtmjQBp=VnR--b%(sm*N&s5O~y@!^GGXH=wd8H-j<$$KegM24e`WvM^tRp#@(pj
z3h$13kk?LpY)(2Z)-kX3$v*uOKE^FB0P92WZ|<*BIdWoewlK<45a}4?nta*XbDAX>
ztMEH<5npw~a%-nIRf;&u{)L-~LInDQ)t+~h=FL+(7;1QZaLX6i5Y(T|=Br7ozIA&O
zqBLuzhjahIOAXQz95Eo5Y#VGc9eC?j>-7Y8oj=!J@0Tu5&`)Wa+BF1KmA13?TKs>xdwNocVP!1XzWmL}OD49YahH|1b=yq&
zc`u%1t|dbN8A(kQOW%5nPDMUah@VN^dNoK)OD+x~Mrrh#
z0B1R8hwfhC_!aU>Ue0J|R@-k4zg|2v*NiNVfBk}M8GI5KXIjBvz>e4jxklj_+cbZ9
zz0w#J6S3SJ-v{?EbL+g<4WeEy<@UsXLYe3KH+rICrN;aTiM^;?>Il?Rmt9F6dAy*!
zzzLH~9-z+SK#H7Yw7-9#!4!#8Zp=brpSN{J7pu5eW&|`dnwU)
z_8XN_SNUZWXK){?wQ}z1nq-cUFwICaL%318$YzMcXbn~c%TQQbPiQ`W0xHT{?s))v
z@gsmR#Ig%-r`5Th5Y@Cu8K2x@;TIPmsouyMdZ3)&mJI4-tW*BqZP6MfW_mUXuEpTn
zOikcO3o`Zl*>_u8R)Yiy;wRvEyj7V`d!?^ewD-Q_Sb7vjSOX;AIa~WY6OKRQ6XQ6D
z?;2uOxD-Kv%-$o*S~_yV0xmBcorq$*_?|a!=ip!Fqjx+f7Xq^ki|W_L?nH&C&SWRk
zvgz2z`eD^q*Pn?{jvGQ~SGq*g<_$W=Y^>KJw%m(EJO3>xoy0ntEL@z*I0R
znF^a_ETmleHp@nSwDcK$&ZerIFo+c2e
z<1BmapQl-h_LRU{%tZAB2JVKrn;48g9p*@P@W5|$Q)reP>rO#N?(P?DQMF?UyQm^S
zCSajS6?O+lT*r+7w$wk$Ir>lWJYJOsJ}PcxD7#PY3RzFH$_`(6ya*fpaVqZNt^IO<
zYOlkWcWqh6N#@wP{2dwD<9N47>>Z+`>?aiaC&Pne3O&O;|F?v#L-L=7nADrCYblzw
zl4nO683FODo_FN+5BIhE0FD=wzjI1+Mi*Z+^Yy&q-HlPiWvxuV!}Iw@+QbbQE2`pL
zvs`)S=jmj2Sinf`D&^*Ijnh(=Bm?-D6IfpNJE|obm*o>9P1e$z=?^h`-2v-8Uh7s5
zCr4>D&rTj6;K(mO4Y~K3$SPy)&^TVvBZf@9{pLLTn_C>Vzr0%d$hQ`QlJ$CQ(_l4vcLz&ZqP7;kM5EdPTtKoDa{gg;_nvtp
zF$bKoc?5O0G(9H;o{yDYBZ$#qN)kcv4Z43Jc{)T=bh;H6=$6@D>A$#6uZ+uLpjFJ!3(%+=RvG^S$Tv`bum#DrTd}nsv
z)zLPac&mgO1JX9@y^7ayq*+u1A{(el7JtZ;n+WlT?;}{}pehSWrX#x*s
z&SA=w%UatW-x%!5-5Qv<3@;W$BY;i~6II=@CR#|D6M4?@$~a}nd|YW%%yO4DAh1uE
z?QzzIAYJ-uZwxKuOadBRJ~!XW{TZ3%99zY;s}`=;Rn;DU*v_$~QoQ~zRhsMq!~
z2ECQy?k}8L^L2vUkA4lEvZb4=w!3GDLK}{QezrZHyVVI&`m?hj10|!F(6o~abTJc0
z;I7Ja<4d@%ab#F_zVE)~iAJgkUutH)r7!%T#H=mL&K>qg#c%G2d|9gb=Nh1&{bb@1
z#PpTptAz1#xH2mEVbZ9>6tHonErERjTKo8$J?SyKu9t^!-kA#`?-s_@>t0Tij=QZkR7m@GhBISSRdk+sl*#8D?W$
zn=HjK(D8ta{aTIlUoIx_rqc@W@^5I~{8I#qn+5H}py-HD1--h+IeqIm-f(t5FJcAp4ZRZ7
zSHHMD(V0T@X-h0Kz$Nx)Hsg=zu7?m?+i5cmbvfDk7G{2$PDGKxT{{WCAV*E*ApM!)
z0cm?_Cx%S*$}AEvk&lmSM$bZ$}_jP>-$^IC`MSt;m`SV^_8^FY)JXZ3ijYvV1rO_3zfFZIhqE
z;ZyESrxzxYXbr|mdCy8GCaw_v!cQWNgKgi~#YnmXTJ$<-)~ifpU}e0vPC6P{ia}S3#XhXzVMO>PQw=N&|2|Z+c2oX2
zZf*)g7V=fB=5F7QbzI0#zjGKk`GBn|a7NnWfD3Pvyi%h>O#uZXv
zI`~%DP*d5LxN^0$)O`GfbJ}G>c%*I);b5|7PB(z)c!nMwegI;yMlN(d42JqPpa3e)
zvr48}n*^GG$^<|U2crQm6p`F?a6)AR-WOCcvx|S_JlQg7`y7c653-FV%Zw8C0oaE3
zKX$Q?g`8Y)pAx+pB(gfHl_XW4+$z=mLD*zFk5=I-X?xS#FG54W
zr06N{3{jmoX6mM?;|WJ$7Ig6=RE1Dmz~QtULn=_=D3KBmePz+Pye5B
zQU5YQ7Q`Lcg?^9`hsU6(2cU#FYrWmik5ozGMxizKeP9YjyI5*VQ=Fx<{o7~HMZilB
zQ>(;X=jlQl(zt79E|kA@-QX6Lka9B#fIoXw>AqP%AYU3e$#>C&ilyvHgmNE9)ySpE
z*IvA+H1reWM(dB5j~LVbY3q?DLJe9(%*!QJ&ZxjC5;0QHX4rIHzk$Er!onD8YtXC~
z@!$`?qNFyYzd%Mva*vi1%#A4^zpu>{&0v!>p$u3qyaJd_WG18EouBUA(wVY#SR
zvd1IvT#>Uj^fE=Cr2yf%C4U-);42yOZwhZ
zBaLvfW2M}}7FQa3tOd^1Q>F+VFVqg{oS_t;X+LtSp`Z@5JU%P9G!}~U{G3B}^ECxN
zr}>>KGP6|Q=s%pB_SPo*v%9}FZZeoFK9#+5g=W3{L^j4o
z)J1@JGrfw`Q6{9qjgIsqqUqCF_{doK*8F^rQi*$gpAAs!*Ys@U0L`Zxy5o>G4KLD$
z-r9rbl-m=`G+zW@S7C|O1=s;i5Q{CAcMVbBpj+R6O0L}c!zzTB5`_VM3@^1N#p6%`
z(Vf{y{}N~4eZSnKU-hGX>tze3$b{NtC{tY=n+!B)@2CPvavoG-E}L+|y{WsHb&Pqs
zd3M@X!%;)0d)tO4V$cKJ%=VA;=G!lU0q~EhJJNZLxk**q7qaES&{kKFC37u$t8y%yb`cJS
z({+j{I|U@#R|jkx)d3esrcUDA>Z;>^dl48L{xgk#7Ud{R3u~Yuk@*|T#Q?U^|
zfXsza^?;@U^W=A~5!??0a6}o6N};Rz2Qz_i+Nu7Y-kx67J-)g~wXDPZ+4%T#`LY8b
z7GcS~a-tV~R)-VV)L&<*Vn156VHNA)5{v8NL-rGg8(x!naM6>tG^-ERJ&j1x4otw6~;(6w9RT`a*w}dTQam$h{p=qh*PX|4$Wn-d_!3oeB
zF`rb+auDwp)HUZtR&nym^xJ`jL*)GrdWax2t6BawL1~cY44Y){vW?Mr%hgJzgI+Z{
zFmOb=>6A9G`$a#AOKFu3fGO$YXSjs}^5l{2-rcG(p5g;2!U}2b7qBOhVF?s+J*RDO
zp1g+Ha8(8DNPIk=-Kw1xts-Od@nkGiAO28du2l?kLYB}M`xTluv7Qdui$5sKvXVCh-fnPb|BGx;sY7Cv8CDOhv3t!giIj*mwc00hG~_p~8OsR)wUi6o!CwBnWp1SPk;fdM~ixwL^n1XI}wjc|n7W&6)6>WVh@%uQiv5(#XQ)xt^6t+q!ITtl2D?S9NPTJxQe>5rJOL^aVX{00h)z
z&OB0qY;Ae8UR{pcr#94SRz%Em!@BLk;V%xBhtj{>=7^7BI{!>51gscVKedys*#ZV;
z$&Us@GIqiOT54gu9KY$7$(eqakhHdjz*2OhVG9RU_*s?@oq(Ffp~Fv{XsB(&J0V6l
z?>ARltW-eUqL#?9*B!NKKsym&95H#l5&vG)hdsKDAnv7QVGGzm
zh-v-xtV+IFDLA&3{=oe{+N)uqayUnA$5wm*?Z;d-%5)+naHaX
zqKZYpE0-^y+kgc<(lSCP9@TD5$K04ljuYINX?QDNlveAZ1DYdPuV7QB@#H3;-txum
z_m|UKDb!6%lEZ!$;~F0rXnP94q!DbC7#YXTIhn@}0ctJP;G-01nx{tUg)SY-n8hMl
zomVrtZOPFLf>qU29*L{Jqio8z%ScE#VA5GE-O`wvEIJ7}4~we@=Ox>6$7UthcrWu|
zkZ_|pXl4U29>w0GAE|-<8yYT4iw}hFZJx})dz}tw00;I?0byWjCvjsK(=U*^cyJYf__(!!6aW*eVp7S1
zOEn+_XZtHpjg4YBKS=S+Av@D{PvHSO@S8hk<09<8?TKA-GN@=%wwst+Ob*H@nF?23
z-6^b+kHF`xBZ`FIe#CVu$)H)GgW1PF=BlTTFt24BFoG5FpibC|3T!Y?I%|W)^NmZ<
z+l@3>nFdW0S(xz-FAp{g3N^6TxASr+AH7P+IY6VL=equwCfLdMg0
zs#LJl1)yQKEgTSfHp2GQg+f^r18+{I@pNo!qZvHenGPE^Hg#YNc1il$&zW~Poz-~!
zz`ze%sEavy*ljmj;xnFoCkhxxJzd%p6QA%>Mlf$~IGG1}2YwD59xF3zf+|^5>qq-Q
zRb478K_%I7S+R>}BA*)W4NKe1)GT^FAk(-`!d`0V6SgvhJIXX%YEq%84eZ`~HXnG$
zm^fX7rkZ%6P;lv=8YIKC3`ZaIv=yF3`N`3x!vsdK7u)|{^L-A-qN+!YcNNb7zHu*D
zJZXXgdGXZ}myLJY|HqcPi{@;#-Zbr3Bej6E*-il;yV%q{jV#k?aAo7Iimhq&C-=7E
zt15s)i)g;>)2cLhU@Ej8+yt|LLG6$rg>lomirOFRjvWBlJ3ws8p15Ve`PF2zDL|*y
zzySvO<)6IRFplq1lW>)SR)lwY9|WY{`He7*1GMBG!@$=~^cC*$To_+Fgc@4I#*j|y
z(}QCf-OM!jQYBKB)6&Hme62(4;}Y~H;C(LOoKdA!272n~xIbB&n67$RBV?KI7~HPi
z>gs4))7MlDK0kYdo`hF`0g;VbfPg4(jnn-xIO6@LE@V6z-8rh4`FZe?+OZ=Ql+v%X
zSn32LsvU2r(N_yw=^b|(E=JSl89rrgm#CF5ZG
zutPw*8VHb8u@p2i%D%aX4<1AHlE4+@5%elq)s0UbXg<0>a{}^@Xe`hQ?Ty)beKllM
zHwjSGp)=c4c-GLKcVv;hQGKG}Z~GQ97y&ER=%lZ>Qpnd3DLdHXGG=#yH#d+}M(H5K
z%1>HGL4p{{et5bQ@P&dQ_yfnv4>g+kE{B}Oz9hck4~YoR%{>Lv-swIAo6a4G2&X_1
z{E8bBz!Oq=tMxnPS;6X}Qg8l&?C
zg3*`n))_qPCV02KX@NVL1?}RAr@qK_LxGg$&C4*6m4
zzEliue%5e0
zk;x4Wf(qD=_!(8>I|i13nDa`(UdH1i?(s=tPM7(Ous1MrmzpXhm5OYoxPJA-l0{bi
zJ2S^%u5EC`Ei~vkQjd*fr(IK=Y4|4XI_Z>$#|N4DVobCFI4x0Kl>`UNL4s5~EaAZ=
zwG$ZCJ-Bt%OGh5#1BwwqxCpG_WkR~j-ke}#iI!t*>IT=CnjPQBVv2`899ZS|yvp&@
z2bXJ;jqm2qS=rC8zTV_Em5rrfBe_>j-;{Z940jz$hG_nG~
z=enkg(hitS>Y2I~~h@E#Z
z_f0=m^Qc{78unu-Ukr|@Ukt{YnJ_o!~Fe`rv9Sov2UuyKV#ejk_IZO3oN)-~8j?&qZin0xUU{{+j#OEhO$2$^9|1wfz%!SB{{{S&=Z0pd^lSZa&_aUXJD{mUq*!8r*I!*~5NW(Dnw#
z1o5X;WRAdOcY*DXb&(D2G_gAH&49c={VXd<0H7wTEEfB`sEjpUfCaWC0Af8~Hf_cK
zGKBj$Z9M<*_4IR{EN!nzXUS3W>5+RL52pOA~E`vdgMF}aMkkB9bK
zn%WQ2CyJ?pcvoPl8~Rx^(@S+*O^u=$3+3bMuHEq2=Z;q;?aIehWB7oT*Qc1TX(C#H
zOL752G-jphy1GikMcM%t>TX^nZX6(6XX)TE3rRBp@nW7klEJD=A2E57)k95O@_tk^
zRe4yzMTuqP?PPC}K7m%dn$dIBPsNkI0$r-}VLpyu^l)eeXrx6py?Uk^&8_%Eq0hdH
zAkJHPZyC)w!V}LI2~h@?MUc@_`%0b_IvD(?o5S6*^1x3J)%ID7<0YZkS0kOnR(|B|
z-kTjUS6a6xvbX3P_t}$ahSJSWo#@V65JRv|<*2`{d2?kb1&zI?xp?$Km@Z^8CCfjf
zXmfFwqID=O>r9|_>o)(uUC&KpgAgJJ&n$
z81kAEYf#mC?XN_wCwq7Kkn!MO0NdSNAvf#t>MD`>!|hV9nhMWhtAOh(vvD^J-LoCTytC~OjG&cu+1V)JhL8*k``~MM8bpEW67p#45;BJuhF7hn$dgh
zq$aSh@XWe?q0J
z1KpqYNFQg$HCR%T7f3F!U_;vJOTd-U0aYi#
z9^$(RK+O6rDYyvC7zoe5r#dih4ICrCY}Qny9h6L*ZE{p~o*9jV8DU(_i6yv=-?B{ezL`YC}f9n}xitL|AizK5H(+Oa2w
zsP!Fjm)8A8;Z8xfp#aO6p4@V{)rJVPcwW~>*7OCdWfdF}+t;MVm)2~a^v^WToqoq~
zRGkMldBJXkR?ZI-Wfzr&eHU!2z>4@Rdv$w^M^`bBwB&!8AMGAc$yKeRmFl_?2R{3rU
zI%lbq9Ni2Dj6DCl7yDoGK!;$coA>2`W&J86V{)s^tLopL)wrngd?q3X)t_Z9nNRNC
zgf-{N;t8KQ(=3ICyr2HuJ)ZKknI*`BJkY8fGMV`!{uc*)lr&4XTKEwacRWvBRnB4o~zE0
zSsSU(vd6bX+{SE(u6~@!Oi9}zHCFm5PyFHh%GghA$vcJTPUv61e)
zHEbTMzZz_69fruEDU;$;h~~1zH=OkO4~6)?uzP<*#?_afZe1L+%ip(nWAEHA6`ATp_EAz#~&-5{-DRAy63_an<45#K4iM8k@{@ErxfQ-8)M5J6Z3Ngd|=%
zF8k_lj@*9yJ7~Gl)Z(~NmsN7X_nDI6=QKXu3&RR!|HB2i9xiG~aFqWS=6S|{_5~Q9jUBE2eaWJx~&tIJU;XKXJ
zsJ1p@vQZ$4uj{jT5!j5iA=40zJ!Wf-IUMQLp9weE7F6HY!LOUIw^vPRmb?4N2#
zW}oOje&iobQAN10plHua>Je4;Rd5xD|HIuK{)w;RFKS-CG~0Q-;nxH)$I@Y8Sk>_Y
z6@y;HUsEDiODPD+)UK}sByKO#HIMdBHzG*fyE7JN
zEc<%37j1O+eza{X;oOP!N{oH8o}29Zn@R5f`-EQ6-#xM}3%+EiSQ4d*D5(>L1wS|=
z&vt&L`80tmj4>&0YmTp3^sZo*b(kcozrn0w4yUb133AhUFDe|*r)p&VKwbunxX*FX
zL4x|`|Mva5Yrc00&?}gav}ASC?TAwPOL>7ijP;@D#~1jW`h?N
z8=Ethy@iioa56%OdNXk$aep-IgFVDhPdaBS>*EfVvAj8tu}wbwE}yC$@51@a;S7*MXlAA{I}P2Kv$y``PL;7
zp&)gN6^4k&>^9h&g${Q`EA@~sir)5K+QHV{*Jy!d*EN-lf}Fy?r&WgL$*p>3+IR(E
z`HM)9jOMp1If*Ouw{`7{6Y`eF*F*Rxtj*hZuRQQDb%l}|;{?PgmaXo7<a0
z5y)rF6#6Tze>;`ub4Ool|u5g^Ilt_HDWrgk^$r(sL?e3l68l-&1jZ
z5Z@i?)y1;xDi(XSN_ic6g{gqXdp|zv^0-+%VRGgQDjq)FEfO2cRu2b3vvz@w{9jG@
zb)B^w#atujaofQT)lL)3LNbr%1n*Z=mFnR4M+ey}Phm}=b9R$G^1%)e+jlnL%NMN^
zREM&~nX`{c&o>9+)?5c6y*`rPClm&y?N|pKolRWl8tE2o+EpZBn?`6hE&k=&+B6?d
zT$=+kY~q%E`?uq@Y$7&~6vKHop
z!TsXSlxrRyj)x&HME6kb+PeNyocC*N<3}t1F{fG@iHqR|h6v345I4~=#F3FHcB5Xh
zUjrG-O{$2pp6;{fuXZq)eBQ#9*fflVj2JVlAHh}ZvC-t6ynrbGFzozl0J#E=($}G
z(^`osy{{^Y^zz`JbO>Is3Vm|+)4ORV9B+FaK=j_^Td2T@a`eV$Gcz2drA^@~Z%dhz
z_VwMA=N_-}a{Ty;zy_^RD?IA~57#>vwR-tSHE3xWhsJZ_AUL_8w7vfRC?O9CugncO
zVYNe7onYp!UK}#r2UMuftBmm}=W&;0a;fb9n}PY?&kT6ey}JMCR}77>ZwIgxx8W(~V0q
ze$pN=_LEtLn3*HRf!OWwDcK}jV3?9nL^9dak_T?@$>-yhnQuNRx61%G{HZF%)IS?{
zpX}`&i|MkDev(ehQ6%(vqJUV-JwJ8-sV?sN?b%kr&>8N>u$@W7>eVBio)2ANAZxFR
z1IDvMinlm1Yh;FQ5uo()qOUqFUx~U)&%B5hV=ZN{N9%MO{Pw|{$tSkW<7xiVSa_R
z1_QGE1zqelzu70_Unfq4GA+xoI=&rA@uUXYVoA;uY>^L9eKi|?M6QT&N;&an{9fHJ
z5pI?ijja!lC?0ve&(~RI<|ljUCN~=&9XQtV?ZXeXA67rJ+MNeKvhODhW!mR!Xpj0P
zy|ERlZf1hH6e~3QzNLfa|3nqZ8w#sl?*R`
zpRpoeN@vaHk(5q0nRwiHv#}hf^Y9KqCLV;9r|^{K{Au0t+lPPNrTZe3*Lt8E7|%L}
z!QhAeYy|=BH>4Pb@M7aYF3BeGNr0C)48(?z<-TiyQ%bOsMvMEQyj>-io^zl2#ry%k
zv(2M5)OgG5JKk!sOHZV~NkxO}N3I<^Mprg-pzJ@zU|vb0b~T
z2QJpl{bL-{gY2~J<$%vly!YJQs6}TqnzL9}{hZT_*V;~3q4VW#ej#Yz0;h$Yo0F4s
z$hfhAF8WMQ9@BQ!a(;+s1+$W$u(?DhJUO2i7xFz~;m4z>DhbKKq))$8Z<0${;JMt^
zyE2Zw4~N&~5nf2osyiD!AaaC
z(P#G{L?m&(GdPR+maA^+`}#yaJZ!@)o<<3_=gUg*Nbi*k{bx(J8XqsWSv$W+{Z=VBR&SvG)yrifpxVLmL+E(M{%p6V`wgIDA10g(6v)t8myc#7KO
zE99sMx>uA3?-IzRC&cR}%H0PGE$k+k;q@y4Oh+v5iWmKI>8y{Bx{&tbM8R!#6A?C_MaKW|muV8Ksb
zZ*mN>I76ZrY|11~0^DW$-$(Yp|3N5z=&NSzj{mk{=embFwRWD&+FNB6MU=!CpM82mvv8^6MW3}-}EeNOZ25GH5W|L
z00TbVhTgg7^D2r*dGPwj@z-M^eg&(=$R6HT_g)k`SE{_&>6YrzRDZsdwE6tNy$18k
zb;}x0u6u6KdLV#(g8FWd0ZKl8>oX_o=8@Kfl>lx*H>xWPXCuU6&{@S7NKa23!x>t|
zvT4Wt^*RRUA%J}HAqTY(@6UqgZy_(~)^aV?5A(v?E8*I*6P|>g@38381a24JaM2Pvo_dWFA_Vgn>*QOC<
z?l`d1(iL-Zby{%w#`cHOTI|C%6Mwl*(XSvDfkd^E3&JwRwR;&{b~4gQKBjrh*TW14Seb!kUQ)eVxuR>t$KLAixUK(PpV5l?
zt|4QWu}E^{l>IrykEBjy8Ui=bB0ZDP=jMNk%>R)!?vOWkwDa((X%t`bfc7NZ6kF@3
zY-Up^-aGX-+be^qnN-?Pgg!oBxbs<->7ivFVAdv*R``p$Wd=g(sY%U)C<=3wZ}@DK
z1R~%5=Yx5wwLFM1QUjj=
zuWus*?-NQ>)+QfX0kJ(az6tRbz*b4G^NTYdKS!?M|GPZ?XXPP;W-A9H9|VAVC~vnV
zofmS=rg%LZWW;d;@rkvR5?X}nvT_7D^dG@Skcr-y`va|nn4+Tu$>_sL0E6bO+6H%7Ox-_A7PnhEWE#?1zl!KV=
zI{I8L$_Dc~mImCC^#pO*=MM&ew8y$9y2P@bC%(|%BVxTrB!6nAu}kgya#;UvOC2Gb
zc}BKeicE*?9Z-vWEWzQyD(P-s!6g+D2Jbrf7Jd6biT$pKYV(2hcCNM8;!#J(Tj5SK
zVf|AxyU=omhsL4P*a_(|I4h8)9a>5^Cn}@}1^xU}3x6K!WapZg?tHRz^S5s(E1my*
z&*W`+E7R%F%a1x=#FCN;d2S)`I9(Q?mo6>Vf*^=$JeE
zNfm+kt?VTJPi&;^e^k6{&VTs!nN;O$S!pGizQ5S(&Z?`2Wb0~uIT3+^o)eQe>O&fM
zLB6%*s7EEy!mk@uf98x#KY2TEB^SHK&DXMcWI=HdYL~su`rU8ye*DsAi#Tq(Bvxlc
zOcvcD@){KNwfm`rA@U)LLB!Uou{fnvQHyN}u(JPLe`o*HGg9(K$d6HB_SIi^E9Seh
z4@38allEa4%m`9CXC;W_p3YIgSNjyq5eFIFpH+FyMuO9JR`BmHk5KLM`vctxbCQfr
z@}z5I+`ymiz8w#BB;=Y|4$G@wT~R3Isx}5JRX^%)?Y+i4M480p4L#sJzZvFJZwmxf
z-2KNDq~t?nq#PA&MrtBn5HAi9AyYK*{!RRt
zE{k|sCfM&`ongfJ6|FTV`x&9{n#0-*_g}O_KcMQuFZ=Cr3RiB|E4ToXSd>W8BN)ij
z-Lc?lum8f5p2TgdC&}5T>~SaqobJr{V=|}lB3)8r=r{p1@O$@O@Vx@Gy`16~e_3eh
zY3^_1vCGbypbp5dnB?G}6($s48Cz1g7~!8y%PX-dFqusFF8JP(*&f@>iIf>Gw>{z|
z2|LV{2WS4Y03eAw_@?_)$^IWO{C~dP6jJbW=xxC;_W`hzQMC5)duljuW1es7u}Le&
z+Hq#7NCx))*?v$WIpQn^^YmVpfFj(!mk&LV><`ff4%xf{{6Hi+R2K{6#r5*Ld3Kdl
z)YGGr3CeFu{C}#~1SYGoi-QP8qdwt&I{oO=mRVwFu-Yz~s!QX{ei<793Web3pf05_
zUL@1eelJTy+4mgu7NNE%QgQOyTx=>Xobf_BHnXhSLtMs4U3q97$NA=gtU+f&V@LrY
z?=QDb&hLU+z>o#Q>K!>5bZi6CK^)NwD}9az!CNshiDp_Bs~m|{(_S>}bagO2kpAr1
zDVO?zMyR*XF4D%5u$JMZdM2jM!~*yhe+D`{)beD*>2aoc3NX`L(|(|M>RsXLLh-Od
zxnfta8BYPPZwCbP><9h$_$UPmdG69xK&14|w2fsY88}z5@a)v&OVoPDPW^p@Ym>#HP!O9gN;v~dxnXRwk{q$2lC?U>qU4yCeKcl{
zrCseEcg+K!|xY5+tp;=^c#e4JIZ*R13z*ri>d9
zbK)*CNkF5M6^0nGL=s0A|2A^2sQ#?TVT1;5&=)y8lYdiSPmU=19BK(_$wniZrbhG?
z#X3(>=<8-wI24pqtGF!fo6`&G9{Bc0jc4wnl}eW79*$ro(jLDsfZ)*O1Ed#K?S!)QR3(YqR;U)9d_Z8HvXEcUJU7q3V
zSBDJL`v`gRU`iRbA39dTaCA4zucYIRtOWKQfur-@9oOSbOUW03&x-rSsl4AAb?YI5
za7q5+QYf&FXV7T<#W`-_E@|8Me7ob$pOF-&<{_T9eD~2CJg%)l`%v5qq~N7xo@SXt
zzszglMT@2};Jpi!Rz-<*0S>Y@0{$Q%|IwA?!Te;dcZt!=l&>v3jaH5(wlW>adv`9~
z|M^Ex;Cc1=TT#M()UJRDw!{e%6X28e&e8x!(L568?XE*$*6!BTvbF~vR$>fx$e(y@
zY^I=uA%Ye`p$qsWi!ftk`iG`z^q-EY9_2#X{7{RoK-rye;P|2a#rov|i30`G14TVT
zR$7xaZ<$U?la*M>T<0aOeMmq;>OmGsPu@bT|JqeZtSh_EO@++)TeUhIqQ3awVXi4a
z-p0t%icNn#A58vSxu%*nE^`NYft8@BgU#`jp_x!!2bv}H{&<`O0oVoH;E6vf2O
zZV9R-A3cb{D4@5&cg6sp)AHQ3Lf{8Ec@pf!=Q_x2&F2g0m1586h|c)BdPQU#O3bGs
zt{INM<(DL1kbZxzLPuuO7EgCM8TbBLMCEk{69XVCk-3l{)q?_1&2$0>sV6A^#}-PP-|8Obq-*OB3s+_goUS2eRQN;^0RV01>mOw0S(Eqm7>VLrmt*)kM5|L#PGEwED^f+
zL1lAZ;&qI?|n#xHdeZpsAfl$Q3*9qDy`^Y|Z$Vr7;YRYqJ64^cxNPPogyGjG5s
zOWIM0hb*sVlh(jysTsn>S4v{RtW5JJ95Rn@D!r~WzC!nnj3V8=VZFO|vp!OcRy3ee^pf
zai=wU*RU}g#Gx;0Shj0U>;Q|uHbnl+FL6aG2nMoTgn6%_v7
z?}Bs{U!Yy}-b%(TekNu1y()|XJ!s}}iI)`rgheF2bHZDX~;B11x>K#0YH
zarb?FWFKgkjTxDmi2gWm;pmI}gLo0~WCg=pjX<)5C*QZPJi{@uMn
z<#d>5yICL17|!p<7c`A|W~C4gB#y9Z71ofH8FLcVMYEpNz^CA1Y48=K@p()kZh?U)
zN_p>&4mBe}&XtokPmrsQmG^`OwuXm>^>8Vl+e0#K?DF;a8zCge`PjK{xfmjhzb$-3
zgm(D+)+1)eBl>t+EcI5}g>rIZt&mu{R*LK^`DEtL(=h9IFFS7q>2G`KnPeZp>m(Sl
zzxdpD%8dJ4PU8EJtLj9s%N&KWG9Jera>`8
zYjQ$VrzMF_HX0hv$lT(RprI_%U&lE4@_B@WN(y1&
z0bZ&|vq45uX$x!~Mx$DpC=OQf3<5F)hvjk=FFN~9{}Vdg3uBC+k3L*oKi;G~@Nt@B
zqx7o#(=GSwQ$YYS+gZ!LX=|BSNUy)i)dusDSu5~uro@o#im-VX!-A9aBkpgDW9N*I
za$bqfu;Ai;=VY#9>`PBd-+{|0@D~kA4&7Qq+w&`L(a>{Gz$bEq!wN-?%^>l~;__|(
zTQu-s34pI+wjkea5#dSf45~bvPpM4dgJvjHSR2rCXyC4oe;qQaa~=8}pIZJ)zZsdPaWa@R*`=WV;umqoRB-T`E%hrgn11zg8>XY2Kg
z=rKs9t`Iq+)~IL{xSEyb0qbMKapazR+<`)E)|1nj_$w|RJz$c;o%b-4u#Ty1EBURH(qeQ^&I
zVk+|HbKM&e74WRB9aj`EAQWA2;QVbpdX4}tro#7tA&na{=weRq+KVN1a)kax@*-k7
zX(5&AZy|R9CJ8T72!rD(K}#*@EQC!e3ipzVEQrCRMjrj~vEPYqjL-MECs3(FmwOdr
z@I~E};1?DzvVVmNZj9NzjVo`++xs>P7gyxXAtTcdO7@Tt7~qxR%wu2Q_i@!Zu)5Nk
z@l3vuKZKqQDnsQ9+ofxISUf0wg@nl?gq%hw-g*2T`uvoR4Bu3?H5&srW9sEK
zW@*6(#xII%G>zppd8B#bFAl)mkj2b39!*wEbO-u~>-3l%x`KO@=~
zVB)Xoz#0g;^ffv?I_V2u!7>A=RQdt^`2GCyh;~K%1BsoVEGw?L88j|Ij=y94KVAUX
zsU}hp{MEj=U^`n*x(ZazSgccrK7II_j#j4{?28i{;Yetm{3+JS}-W?n$Q#91P=GEC+IsyGEi$cMQGn=}$~
z=ySRUVcjRP;da5rau!42Mo4Wt8k+RRUXdqd$SqPi
zKMn8k;_d&K(%SMZn*A=cfm%$o(v>Np
z5pxK2Q{bw&Ge^ln7X^OJr{j_%x~~@G>0+02pGz#$)!jAI#mHRE<+`RDdcg;zadFb)0A-mD7h#HA;$WM*f9P&6x=j=%rl$p^bNI`EuwbdciE)!dkazFiXIzsfcN?a3mS;T<}WB
z_1BA3g=6N3YvWfeXD%JG`3vS}G|akA&xC>rh7B(KBOs5Qb|l<+pnXNSYToyAuyqTT
zj8yMA{}>^PC{bTRj~%v+n5?tTl0L`o`JnT<@C>he&%gyXZzAGul#;
z>C{h4=`aUDK88k?re3d1l+0m4r98sl;6O3Yu{&~r^qv;QkpcZHTOxID!d%F2BCC*q;E0H_&nH2bO>*-LAy5K)T}p?vE>`!|gi>GVN=
zHZUl4uo`je@Wm`*ZSVb|5K>lOjmHn6t1y6b#C5?(U_mbd_VnM>1H#Rw=u({Di2@tffy+ayG9B@QO?e0wzrZL&%}uCc(P>%jCc
zewgdR?29}Eyok7@S9_kNfzzZNywlIKeHzOB(p8Z{J{SKc3rYrJi0h(`0O7P$kj13r
zN2OenmR^L|E?4L$HVy}QQ!3vVj(Q$6-_D}2@Wed>gi{G)PWW&C5|c8b|f*1&5CiEl~4*Uf>OU5s@)n@v8keTB=q
zEy!+{l}w0JicSi^)7@^}ceyv}q!##+P!jw98f~KvbA=bh!TxK9%e>72QP-%fjIr4a
zb0lIMY4>OGHnI}LFf`Te0*R4e)jTPXTf~#V_&(G6$p&Qa7YY%m(N2S1pUY@
zrW?RySZyIQv`R=x7pR`|@XBI~1s=Y?s`kcvU^3EGqrBpef}O6Jdj%*d_Zlx
zg%j34vrs~;aVo99lynl>+ln{`fNjvC?Nf%TvH*PxV&bn7-IP}1e%tS#AHvNw@oE(J
z-)*AgJYHc!il(s{9?b9gKy45Pm*Jm@2DaI;Mm$SH?^d=UsmH(|Vq3;VHo8nWu%x4W
zIc7=^+OGdi8jms7zy2!4m;|If5?8crW_4i;4ZIW?nBCZ0W6mIYNOeUcog)F8^UhwQ
zwCRJOmX0zX#G~WbA^U7+T8gJ%Q=Pb_7&q)D8lMbOSA-Y$p3sPXZ5!1wDn4~s#Ebm2
z(_>$Mn-QcjwXD!I8vq2V6|I`v1gCp2hrMJavL=*(!TUxIf+DJ(w4eMxbDAagC<@n%s1(>O}GEP3Y=`fLVW
zy1u=>z0ql!uXSOO@YgEvb(fXMqi6I`Y?@3_sd|bhAiD36p=rA^d`C6AYh!r*R~)hF
zCI(z2E`#0UQ0$VdDUr!&y{HIy;rK7S9ONTWRC$?xhf)#j=LaDO??dh*Yh!fTo?e#&
zHdoVgQh$}HQAe>KJ$Ov{yme-*nBf@3+*==nXE2DUuoX?DH(sW0VJD}@Qqn0ulp9g9
z{#K5tVRq@7?HC(uI`067h+74mqgbyr*5^U|8=AeML>p7$u?cP>-fW;cxtXzI#o)@iFMK64>-IJXXYr&xoV-!s9zSk1LVtWZ>d-j`w-e4Hl-$
zp*x+M?dqJRhVpO^-c>km77;G7lxRA-)h86pkB!~%_P*XyzIoezN8rZt5N}n&5`o@I
zb@F*h==_}jo~Jq>MuG$7D=lG^bfff$Z`EUV`B@l175AsxmpSZvVv%41x-IA{ohArS
zXjxw`%zQrmbC?|Q2w!S*xw&UCo09JjHvUgYuE1)`3