From f5a41effcd6aae06ab8e454331d635eeeca2bf83 Mon Sep 17 00:00:00 2001 From: Andy Date: Tue, 28 Jun 2022 01:22:59 +0800 Subject: [PATCH 01/14] =?UTF-8?q?SpringBoot=20=E6=A0=B9=E6=8D=AE=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E7=94=A8=E6=88=B7=E4=BF=A1=E6=81=AF=E5=8A=A8=E6=80=81?= =?UTF-8?q?=E5=88=87=E6=8D=A2=E6=95=B0=E6=8D=AE=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SpringBoot-DynamicDataSource/pom.xml | 65 +++++++++++ .../com/example/demo/DemoApplication.java | 16 +++ .../demo/controller/DemoController.java | 55 +++++++++ .../demo/datasource/DataSourceConfig.java | 57 ++++++++++ .../demo/datasource/DataSourceConstant.java | 19 ++++ .../demo/datasource/DynamicDataSource.java | 52 +++++++++ .../DynamicDataSourceContextHolder.java | 77 +++++++++++++ .../demo/datasource/MyBatisConfig.java | 43 +++++++ .../com/example/demo/mapper/OrderMapper.java | 27 +++++ .../example/demo/mapper/SysDictMapper.java | 12 ++ .../java/com/example/demo/model/Order.java | 29 +++++ .../com/example/demo/model/OrderMapper.java | 26 +++++ .../java/com/example/demo/model/SysDict.java | 20 ++++ .../demo/service/impl/UserService.java | 21 ++++ .../com/example/demo/utils/BaseUserDTO.java | 22 ++++ .../com/example/demo/utils/UserContext.java | 34 ++++++ .../src/main/resources/application.yaml | 54 +++++++++ .../src/main/resources/mapper/DictMapper.xml | 28 +++++ .../src/main/resources/mapper/OrderMapper.xml | 106 ++++++++++++++++++ 19 files changed, 763 insertions(+) create mode 100644 SpringBoot-DynamicDataSource/pom.xml create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/DemoApplication.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/controller/DemoController.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DataSourceConfig.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DataSourceConstant.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSource.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceContextHolder.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/MyBatisConfig.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/mapper/OrderMapper.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/mapper/SysDictMapper.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/Order.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/OrderMapper.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/SysDict.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/service/impl/UserService.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/BaseUserDTO.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/UserContext.java create mode 100644 SpringBoot-DynamicDataSource/src/main/resources/application.yaml create mode 100644 SpringBoot-DynamicDataSource/src/main/resources/mapper/DictMapper.xml create mode 100644 SpringBoot-DynamicDataSource/src/main/resources/mapper/OrderMapper.xml diff --git a/SpringBoot-DynamicDataSource/pom.xml b/SpringBoot-DynamicDataSource/pom.xml new file mode 100644 index 0000000..aeb30f3 --- /dev/null +++ b/SpringBoot-DynamicDataSource/pom.xml @@ -0,0 +1,65 @@ + + + + SpringBootCodeBase + com.fancv + 1.0-SNAPSHOT + + 4.0.0 + + SpringBoot-DynamicDataSource + + + 11 + 11 + 1.8 + 3.2.0 + 3.1.0 + 1.2.62 + 2.10.5 + + + + + org.springframework.boot + spring-boot-starter-jdbc + 2.3.9.RELEASE + + + com.alibaba + druid-spring-boot-starter + 1.1.17 + + + com.baomidou + mybatis-plus-extension + 3.5.1 + compile + + + org.springframework.boot + spring-boot-starter-aop + 2.3.9.RELEASE + + + org.aspectj + aspectjweaver + + + mysql + mysql-connector-java + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + \ No newline at end of file diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/DemoApplication.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/DemoApplication.java new file mode 100644 index 0000000..198b9dd --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/DemoApplication.java @@ -0,0 +1,16 @@ +package com.example.demo; + +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; + +@MapperScan("com.example.demo.mapper") +@SpringBootApplication(exclude = DataSourceAutoConfiguration.class) +public class DemoApplication { + + public static void main(String[] args) { + SpringApplication.run(DemoApplication.class, args); + } + +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/controller/DemoController.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/controller/DemoController.java new file mode 100644 index 0000000..86af1d9 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/controller/DemoController.java @@ -0,0 +1,55 @@ +package com.example.demo.controller; + +import com.example.demo.service.impl.UserService; +import com.example.demo.utils.BaseUserDTO; +import com.example.demo.utils.UserContext; +import org.aspectj.lang.annotation.AdviceName; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; + +@RestController +@RequestMapping("1") +public class DemoController { + + + @Autowired + UserService userService; + + @GetMapping ("login") + public String userLogin(@RequestParam(defaultValue = "001") String userId) { + System.out.println("根据token信息查询用户信息"); + + BaseUserDTO baseUserDTO = new BaseUserDTO(); + baseUserDTO.setId(015); + baseUserDTO.setUserNmae("015"); + baseUserDTO.setPermissions(new ArrayList<>()); + // 校验权限 + System.out.println("根据userId 查询权限"); + baseUserDTO.addPeemission("1"); + baseUserDTO.addPeemission("2"); + + UserContext.setBaseUser(baseUserDTO); + + return userService.login(); + } + + @GetMapping ("master") + public String userLogin2(@RequestParam(defaultValue = "001") String userId) { + System.out.println("根据token信息查询用户信息"); + + BaseUserDTO baseUserDTO = new BaseUserDTO(); + baseUserDTO.setId(015); + baseUserDTO.setUserNmae("master"); + baseUserDTO.setPermissions(new ArrayList<>()); + // 校验权限 + System.out.println("根据userId 查询权限"); + baseUserDTO.addPeemission("1"); + baseUserDTO.addPeemission("2"); + + UserContext.setBaseUser(baseUserDTO); + + return userService.login(); + } +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DataSourceConfig.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DataSourceConfig.java new file mode 100644 index 0000000..24e4677 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DataSourceConfig.java @@ -0,0 +1,57 @@ +package com.example.demo.datasource; + +import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; + +import javax.sql.DataSource; +import java.util.HashMap; +import java.util.Map; + +@Configuration +@EnableAutoConfiguration(exclude = { DataSourceAutoConfiguration.class }) // 排除 DataSourceAutoConfiguration 的自动配置,避免环形调用 +public class DataSourceConfig { + /** + * 默认数据源 + * + * @return + */ + @Bean(DataSourceConstant.DATA_SOURCE_MASTER) + @ConfigurationProperties("spring.datasource.druid.master") + public DataSource dataSourceMaster() { + return DruidDataSourceBuilder.create().build(); + } + + /** + * 递增数据源 + * + * @return + */ + @Bean(DataSourceConstant.DATA_SOURCE_DB_1) + @ConfigurationProperties("spring.datasource.druid.db1") + public DataSource dataSourceDb1() { + return DruidDataSourceBuilder.create().build(); + } + + + /** + * 设置动态数据源为主数据源 + * + * @return + */ + @Bean + @Primary + public DynamicDataSource dataSource() { + Map dataSourceMap = new HashMap<>(); + dataSourceMap.put("master", dataSourceMaster()); + dataSourceMap.put("015", dataSourceDb1()); + DynamicDataSource dynamicDataSource = new DynamicDataSource(); + // 使用 Map 保存多个数据源,并设置到动态数据源对象中,这个值最终会在afterPropertiesSet中被设置到resolvedDataSources上 + dynamicDataSource.setTargetDataSources(dataSourceMap); + return dynamicDataSource; + } +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DataSourceConstant.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DataSourceConstant.java new file mode 100644 index 0000000..d7bb52a --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DataSourceConstant.java @@ -0,0 +1,19 @@ +package com.example.demo.datasource; + +public class DataSourceConstant { + private DataSourceConstant() { + } + + /** + * 这里的命名统一在配置文件命名的基础上加dataSource前缀且改小驼峰 + * 默认数据源名称 + */ + public static final String DATA_SOURCE_MASTER = "dataSourceMaster"; + + /** + * 递增可配数据源名称 + * 这里的命名统一在配置文件命名的基础上加dataSource前缀且改小驼峰 + * 后面可接着 db2... dbn 也可以根据 + */ + public static final String DATA_SOURCE_DB_1 = "dataSourceDb1"; +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSource.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSource.java new file mode 100644 index 0000000..89b0f6d --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSource.java @@ -0,0 +1,52 @@ +package com.example.demo.datasource; + +import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource; +import org.springframework.stereotype.Component; + +import javax.sql.DataSource; +import java.util.Map; + +/** + * 动态数据源 + * + * @author 李嘉 + * @version 1.0 + * @Description 动态数据源 + * @date 2020/5/18 23:26 + */ +public class DynamicDataSource extends AbstractRoutingDataSource { + + /** + * 如果不希望数据源在启动配置时就加载好,可以定制这个方法,从任何你希望的地方读取并返回数据源 + * 比如从数据库、文件、外部接口等读取数据源信息,并最终返回一个DataSource实现类对象即可 + * @return + */ + @Override + protected DataSource determineTargetDataSource() { + return super.determineTargetDataSource(); + } + + /** + * 如果希望所有数据源在启动配置时就加载好,这里通过设置数据源Key值来切换数据,定制这个方法 + * @return + */ + @Override + protected Object determineCurrentLookupKey() { + return DynamicDataSourceContextHolder.getDataSourceKey(); + } + + /** + * 设置默认数据源 + * @param defaultDataSource + */ + public void setDefaultDataSource(Object defaultDataSource) { + super.setDefaultTargetDataSource(defaultDataSource); + } + + public void setDataSources(Map dataSources) { + super.setTargetDataSources(dataSources); + // TODO 将数据源的 key 放到数据源上下文的 key 集合中,用于切换时判断数据源是否有效 + DynamicDataSourceContextHolder.addDataSourceKeys(dataSources.keySet()); + } + +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceContextHolder.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceContextHolder.java new file mode 100644 index 0000000..b9e7aa1 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceContextHolder.java @@ -0,0 +1,77 @@ +package com.example.demo.datasource; + + +import org.apache.commons.lang3.StringUtils; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +/** + * 动态数据源上下文 + * + * @author 李嘉 + * @version 1.0 + * @Description 动态数据源上下文 + * @date 2020/5/18 23:33 + */ +public class DynamicDataSourceContextHolder { + + private static final ThreadLocal contextHolder = new ThreadLocal() { + /** + * 将 master 数据源的 key作为默认数据源的 key + */ + @Override + protected String initialValue() { + return "master"; + } + }; + + /** + * 数据源的 key集合,用于切换时判断数据源是否存在 + */ + public static List dataSourceKeys = new ArrayList<>(); + + /** + * 切换数据源 + * @param key 数据源 + */ + public static void setDataSourceKey(String key) { + if (!StringUtils.isEmpty(key)) { + contextHolder.set(key); + } + } + + /** + * 获取数据源 + * @return + */ + public static String getDataSourceKey() { + return contextHolder.get(); + } + + /** + * 重置数据源 + */ + public static void clearDataSourceKey() { + contextHolder.remove(); + } + + /** + * 判断是否包含数据源 + * @param key 数据源 + * @return + */ + public static boolean containDataSourceKey(String key) { + return dataSourceKeys.contains(key); + } + + /** + * 添加数据源Keys + * @param keys + * @return + */ + public static boolean addDataSourceKeys(Collection keys) { + return dataSourceKeys.addAll(keys); + } +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/MyBatisConfig.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/MyBatisConfig.java new file mode 100644 index 0000000..f43cb17 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/MyBatisConfig.java @@ -0,0 +1,43 @@ +package com.example.demo.datasource; + +import org.apache.ibatis.session.SqlSessionFactory; +import org.mybatis.spring.SqlSessionFactoryBean; +import org.mybatis.spring.SqlSessionTemplate; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.io.support.PathMatchingResourcePatternResolver; + +import javax.annotation.Resource; + +@Configuration +public class MyBatisConfig { + + @Resource + private DynamicDataSource routingDataSource; + + /** + * routingDataSource sqlSessionFactory + * + * @return + */ + @Bean + public SqlSessionFactory sqlSessionFactory() throws Exception { + SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); + sqlSessionFactoryBean.setDataSource(routingDataSource); + sqlSessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mapper/*.xml")); + sqlSessionFactoryBean.setTypeAliasesPackage("com.example.demo.mapper"); + return sqlSessionFactoryBean.getObject(); + } + + /** + * 注册 sqlSessionTemplate + * + * @param sqlSessionFactory + * @return + */ + @Bean + public SqlSessionTemplate financialMasterSqlSessionTemplate(SqlSessionFactory sqlSessionFactory) { + return new SqlSessionTemplate(sqlSessionFactory); + } + +} \ No newline at end of file diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/mapper/OrderMapper.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/mapper/OrderMapper.java new file mode 100644 index 0000000..2e01b58 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/mapper/OrderMapper.java @@ -0,0 +1,27 @@ +package com.example.demo.mapper; + + +import com.example.demo.model.Order; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface OrderMapper { + + List getOrderByUserId(Long userId); + + List getOrderByOrderId( @Param("orderId") Long orderId); + + List getOrderByUserIdAndOrderId(@Param("userId") Long userId, @Param("orderId") Long orderId); + + List getOrderByRemark(String remark); + + int addOrder(Order order); + + int addOrderEncryptor(Order order); + + void batchInsertOrder(List params); + +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/mapper/SysDictMapper.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/mapper/SysDictMapper.java new file mode 100644 index 0000000..6c41a25 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/mapper/SysDictMapper.java @@ -0,0 +1,12 @@ +package com.example.demo.mapper; + +import com.example.demo.model.SysDict; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface SysDictMapper { + + SysDict getDictByCode(String dataCode); + + int addDict(SysDict sysDict); +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/Order.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/Order.java new file mode 100644 index 0000000..cdf08da --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/Order.java @@ -0,0 +1,29 @@ +package com.example.demo.model; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +@ApiModel +public class Order implements Serializable { + + + private static final long serialVersionUID = 9009670891546120887L; + + @ApiModelProperty(value = "ID") + private Long id; + + @ApiModelProperty(value = "用户Id") + private Long userId; + + private Long orderId; + + private String remark; + + private Date createTime; + +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/OrderMapper.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/OrderMapper.java new file mode 100644 index 0000000..5373288 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/OrderMapper.java @@ -0,0 +1,26 @@ +package com.example.demo.model; + + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface OrderMapper { + + List getOrderByUserId(Long userId); + + List getOrderByOrderId( @Param("orderId") Long orderId); + + List getOrderByUserIdAndOrderId(@Param("userId") Long userId, @Param("orderId") Long orderId); + + List getOrderByRemark(String remark); + + int addOrder(Order order); + + int addOrderEncryptor(Order order); + + void batchInsertOrder(List params); + +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/SysDict.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/SysDict.java new file mode 100644 index 0000000..d1fac4d --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/model/SysDict.java @@ -0,0 +1,20 @@ +package com.example.demo.model; + +import lombok.Data; + +import java.util.Date; + + +@Data +public class SysDict { + + private Long id; + + private String dataType; + + private String dataCode; + + private String dataValue; + + private Date createTime; +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/service/impl/UserService.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/service/impl/UserService.java new file mode 100644 index 0000000..6808da2 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/service/impl/UserService.java @@ -0,0 +1,21 @@ +package com.example.demo.service.impl; + +import com.example.demo.mapper.SysDictMapper; +import com.example.demo.model.SysDict; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.util.ArrayList; + +@Component +public class UserService { + + @Resource + private SysDictMapper sysDictMapper; + + public String login(){ + + SysDict s = sysDictMapper.getDictByCode("1"); + return s.toString(); + } +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/BaseUserDTO.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/BaseUserDTO.java new file mode 100644 index 0000000..85dd713 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/BaseUserDTO.java @@ -0,0 +1,22 @@ +package com.example.demo.utils; + +import lombok.Data; + +import java.util.List; + +@Data +public class BaseUserDTO { + + String userNmae; + + String userPermission; + + Integer id; + + List permissions; + + public void addPeemission(String p) { + this.permissions.add(p); + } + +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/UserContext.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/UserContext.java new file mode 100644 index 0000000..a8affda --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/UserContext.java @@ -0,0 +1,34 @@ +package com.example.demo.utils; + + + +public class UserContext { + private static final ThreadLocal user = new ThreadLocal<>(); + + private UserContext() { + } + + public static Integer getUserId() throws Exception { + BaseUserDTO baseUserDTO = getUser(); + return baseUserDTO.getId(); + } + + public static BaseUserDTO getUser() throws Exception { + BaseUserDTO baseUser = user.get(); + if (null == baseUser) { + throw new Exception("登录失效,请重新登录!"); + } + return baseUser; + } + + + + public static void setBaseUser(BaseUserDTO baseUser) { + user.set(baseUser); + } + + public static void remove() { + user.remove(); + } + +} \ No newline at end of file diff --git a/SpringBoot-DynamicDataSource/src/main/resources/application.yaml b/SpringBoot-DynamicDataSource/src/main/resources/application.yaml new file mode 100644 index 0000000..ac95d22 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/resources/application.yaml @@ -0,0 +1,54 @@ + +server: + servlet: + application-display-name: springBoot-aop + port: 19086 + + # 主配置 +spring: + # 数据源配置 + datasource: + # 修改数据源为druid + type: com.alibaba.druid.pool.DruidDataSource + driver-class-name: com.mysql.cj.jdbc.Driver #这个要根据mysql-connector-java版本 + # druid配置 + druid: + # 主数据源 + master: + driver-class-name: com.mysql.jdbc.Driver + # 默认数据库连接(配置库) + url: jdbc:mysql://localhost:3306/db_00?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8 + username: share + password: hta@123 + # 递增db配置 + db1: + driver-class-name: com.mysql.jdbc.Driver #这个要根据mysql-connector-java版本 + url: jdbc:mysql://localhost:3306/db_01?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8 + username: share + password: hta@123 + initial-size: 5 # 初始化时建立物理连接的个数 + max-active: 30 # 最大连接池数量 + min-idle: 5 # 最小连接池数量 + max-wait: 60000 # 获取连接时最大等待时间,单位毫秒 + time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 + min-evictable-idle-time-millis: 300000 # 连接保持空闲而不被驱逐的最小时间 + validation-query: SELECT 1 FROM DUAL # 用来检测连接是否有效的sql,要求是一个查询语句 + test-while-idle: true # 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。 + test-on-borrow: false # 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 + test-on-return: false # 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 + pool-prepared-statements: true # 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。 + max-pool-prepared-statement-per-connection-size: 50 # 要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true。 + filters: stat,wall,log4j2 # 配置监控统计拦截的filters,去掉后监控界面sql无法统计;配置监控统计拦截的filters,stat:监控统计、log4j:日志记录、wall:防御sql注入 + connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500 # 通过connectProperties属性来打开mergeSql功能;慢SQL记录 + use-global-data-source-stat: true # 合并多个DruidDataSource的监控数据 + stat-view-servlet: + allow: '' # IP白名单(没有配置或者为空,则允许所有访问) allow: 127.0.0.1,192.168.163.1 + deny: '' # IP黑名单 (存在共同时,deny优先于allow) + login-password: xxxxxx # 登录密码 + login-username: admin # 登录名 + reset-enable: false # 禁用HTML页面上的“Reset All”功能 + url-pattern: /druid/* # 配置DruidStatViewServlet + web-stat-filter: # 配置DruidStatFilter + enabled: true + exclusions: '*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*' + url-pattern: /* diff --git a/SpringBoot-DynamicDataSource/src/main/resources/mapper/DictMapper.xml b/SpringBoot-DynamicDataSource/src/main/resources/mapper/DictMapper.xml new file mode 100644 index 0000000..8dbbd8b --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/resources/mapper/DictMapper.xml @@ -0,0 +1,28 @@ + + + + + + + + + insert into sys_dict( + data_type,data_code,data_value,create_time + ) + values + ( + #{dataType}, + #{dataCode}, + #{dataValue}, + now() + ) + + \ No newline at end of file diff --git a/SpringBoot-DynamicDataSource/src/main/resources/mapper/OrderMapper.xml b/SpringBoot-DynamicDataSource/src/main/resources/mapper/OrderMapper.xml new file mode 100644 index 0000000..a01be2c --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/resources/mapper/OrderMapper.xml @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + insert into t_order( + user_id, + order_id, + remark, + create_time + ) + values + ( + #{userId}, + #{orderId}, + #{remark}, + now() + ) + + + + + insert into t_order( + user_id, + order_id, + create_time + ) + values + ( + #{userId}, + #{orderId}, + now() + ) + + + + + insert into t_order( + user_id, + order_id, + remark, + create_time + ) + values + + ( + #{item.userId,jdbcType=BIGINT}, + #{item.orderId,jdbcType=BIGINT}, + #{item.remark,jdbcType=VARCHAR}, + now() + ) + + + + + + \ No newline at end of file From 0cc5eda0ac2751cd55236e5730890d438e4c85ec Mon Sep 17 00:00:00 2001 From: Andy Date: Wed, 6 Jul 2022 00:47:03 +0800 Subject: [PATCH 02/14] =?UTF-8?q?SpringBoot=20=E6=A0=B9=E6=8D=AE=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E7=94=A8=E6=88=B7=E4=BF=A1=E6=81=AF=E5=8A=A8=E6=80=81?= =?UTF-8?q?=E5=88=87=E6=8D=A2=E6=95=B0=E6=8D=AE=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/fancv/App.java | 13 + .../src/test/java/com/fancv/AppTest.java | 20 + .../SpringBoot-Commons-1.0-SNAPSHOT.jar | Bin .../target/classes/com/fancv/App.class | Bin 0 -> 563 bytes .../classes/com/ray/sdk/OssUtil/GetTime.class | Bin 0 -> 994 bytes .../com/ray/sdk/OssUtil/RayOssUtil.class | Bin 0 -> 3838 bytes .../com/ray/sdk/config/ossConfig.class | Bin 0 -> 3824 bytes .../target/maven-archiver/pom.properties | 4 + .../compile/default-compile/createdFiles.lst | 4 + .../compile/default-compile/inputFiles.lst | 4 + .../default-testCompile/createdFiles.lst | 1 + .../default-testCompile/inputFiles.lst | 1 + .../target/site/css/maven-base.css | 168 + .../target/site/css/maven-theme.css | 161 + SpringBoot-Commons/target/site/css/print.css | 26 + SpringBoot-Commons/target/site/css/site.css | 1 + .../target/site/dependencies.html | 3261 +++++++++++++++++ .../target/site/dependency-info.html | 115 + .../target/site/dependency-management.html | 0 .../target/site/images/close.gif | Bin 0 -> 279 bytes .../target/site/images/collapsed.gif | Bin 0 -> 53 bytes .../target/site/images/expanded.gif | Bin 0 -> 52 bytes .../target/site/images/external.png | Bin 0 -> 230 bytes .../target/site/images/icon_error_sml.gif | Bin 0 -> 1010 bytes .../target/site/images/icon_info_sml.gif | Bin 0 -> 606 bytes .../target/site/images/icon_success_sml.gif | Bin 0 -> 990 bytes .../target/site/images/icon_warning_sml.gif | Bin 0 -> 576 bytes .../images/logos/build-by-maven-black.png | Bin 0 -> 2294 bytes .../images/logos/build-by-maven-white.png | Bin 0 -> 2260 bytes .../site/images/logos/maven-feather.png | Bin 0 -> 3330 bytes .../target/site/images/newwindow.png | Bin 0 -> 220 bytes .../test-classes/com/fancv/AppTest.class | Bin 0 -> 465 bytes .../datasource/DynamicDataSourceAspect.java | 62 + .../datasource/DynamicDataSourceInit.java | 57 + .../demo/datasource/MybatisPlusConfig.java | 96 + .../com/example/demo/utils/CustomUtil.java | 228 ++ .../java/com/example/demo/utils/DateUtil.java | 993 +++++ .../com/example/demo/utils/MyGenerate.java | 103 + .../com/example/demo/utils/ResultEnum.java | 113 + .../demo/utils/SpringContextUtils.java | 92 + .../com/example/demo/utils/StringUtil.java | 198 + .../example/demo/DemoApplicationTests.java | 13 + .../target/classes/application.yaml | 54 + .../com/example/demo/DemoApplication.class | Bin 0 -> 918 bytes .../demo/controller/DemoController.class | Bin 0 -> 2175 bytes .../demo/datasource/DataSourceConfig.class | Bin 0 -> 2008 bytes .../demo/datasource/DataSourceConstant.class | Bin 0 -> 489 bytes .../demo/datasource/DynamicDataSource.class | Bin 0 -> 1468 bytes .../datasource/DynamicDataSourceAspect.class | Bin 0 -> 2982 bytes .../DynamicDataSourceContextHolder$1.class | Bin 0 -> 791 bytes .../DynamicDataSourceContextHolder.class | Bin 0 -> 1942 bytes .../demo/datasource/MyBatisConfig.class | Bin 0 -> 1800 bytes .../com/example/demo/mapper/OrderMapper.class | Bin 0 -> 1196 bytes .../example/demo/mapper/SysDictMapper.class | Bin 0 -> 409 bytes .../com/example/demo/model/Order.class | Bin 0 -> 3866 bytes .../com/example/demo/model/OrderMapper.class | Bin 0 -> 1195 bytes .../com/example/demo/model/SysDict.class | Bin 0 -> 3650 bytes .../demo/service/impl/UserService.class | Bin 0 -> 866 bytes .../com/example/demo/utils/BaseUserDTO.class | Bin 0 -> 3618 bytes .../com/example/demo/utils/CustomUtil.class | Bin 0 -> 5636 bytes .../com/example/demo/utils/ResultEnum.class | Bin 0 -> 2889 bytes .../demo/utils/SpringContextUtils.class | Bin 0 -> 2757 bytes .../com/example/demo/utils/UserContext.class | Bin 0 -> 1380 bytes .../target/classes/mapper/DictMapper.xml | 28 + .../target/classes/mapper/OrderMapper.xml | 106 + .../example/demo/DemoApplicationTests.class | Bin 0 -> 531 bytes pom.xml | 1 + 67 files changed, 5923 insertions(+) create mode 100644 SpringBoot-Commons/src/main/java/com/fancv/App.java create mode 100644 SpringBoot-Commons/src/test/java/com/fancv/AppTest.java rename {SpringBoot-OSS/lib => SpringBoot-Commons/target}/SpringBoot-Commons-1.0-SNAPSHOT.jar (100%) create mode 100644 SpringBoot-Commons/target/classes/com/fancv/App.class create mode 100644 SpringBoot-Commons/target/classes/com/ray/sdk/OssUtil/GetTime.class create mode 100644 SpringBoot-Commons/target/classes/com/ray/sdk/OssUtil/RayOssUtil.class create mode 100644 SpringBoot-Commons/target/classes/com/ray/sdk/config/ossConfig.class create mode 100644 SpringBoot-Commons/target/maven-archiver/pom.properties create mode 100644 SpringBoot-Commons/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst create mode 100644 SpringBoot-Commons/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst create mode 100644 SpringBoot-Commons/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst create mode 100644 SpringBoot-Commons/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst create mode 100644 SpringBoot-Commons/target/site/css/maven-base.css create mode 100644 SpringBoot-Commons/target/site/css/maven-theme.css create mode 100644 SpringBoot-Commons/target/site/css/print.css create mode 100644 SpringBoot-Commons/target/site/css/site.css create mode 100644 SpringBoot-Commons/target/site/dependencies.html create mode 100644 SpringBoot-Commons/target/site/dependency-info.html create mode 100644 SpringBoot-Commons/target/site/dependency-management.html create mode 100644 SpringBoot-Commons/target/site/images/close.gif create mode 100644 SpringBoot-Commons/target/site/images/collapsed.gif create mode 100644 SpringBoot-Commons/target/site/images/expanded.gif create mode 100644 SpringBoot-Commons/target/site/images/external.png create mode 100644 SpringBoot-Commons/target/site/images/icon_error_sml.gif create mode 100644 SpringBoot-Commons/target/site/images/icon_info_sml.gif create mode 100644 SpringBoot-Commons/target/site/images/icon_success_sml.gif create mode 100644 SpringBoot-Commons/target/site/images/icon_warning_sml.gif create mode 100644 SpringBoot-Commons/target/site/images/logos/build-by-maven-black.png create mode 100644 SpringBoot-Commons/target/site/images/logos/build-by-maven-white.png create mode 100644 SpringBoot-Commons/target/site/images/logos/maven-feather.png create mode 100644 SpringBoot-Commons/target/site/images/newwindow.png create mode 100644 SpringBoot-Commons/target/test-classes/com/fancv/AppTest.class create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceAspect.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceInit.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/MybatisPlusConfig.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/CustomUtil.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/DateUtil.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/MyGenerate.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/ResultEnum.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/SpringContextUtils.java create mode 100644 SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/StringUtil.java create mode 100644 SpringBoot-DynamicDataSource/src/test/java/com/example/demo/DemoApplicationTests.java create mode 100644 SpringBoot-DynamicDataSource/target/classes/application.yaml create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/DemoApplication.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/controller/DemoController.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DataSourceConfig.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DataSourceConstant.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DynamicDataSource.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DynamicDataSourceAspect.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DynamicDataSourceContextHolder$1.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DynamicDataSourceContextHolder.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/MyBatisConfig.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/mapper/OrderMapper.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/mapper/SysDictMapper.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/model/Order.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/model/OrderMapper.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/model/SysDict.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/service/impl/UserService.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/BaseUserDTO.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/CustomUtil.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/ResultEnum.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/SpringContextUtils.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/UserContext.class create mode 100644 SpringBoot-DynamicDataSource/target/classes/mapper/DictMapper.xml create mode 100644 SpringBoot-DynamicDataSource/target/classes/mapper/OrderMapper.xml create mode 100644 SpringBoot-DynamicDataSource/target/test-classes/com/example/demo/DemoApplicationTests.class diff --git a/SpringBoot-Commons/src/main/java/com/fancv/App.java b/SpringBoot-Commons/src/main/java/com/fancv/App.java new file mode 100644 index 0000000..5241cdf --- /dev/null +++ b/SpringBoot-Commons/src/main/java/com/fancv/App.java @@ -0,0 +1,13 @@ +package com.fancv; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} diff --git a/SpringBoot-Commons/src/test/java/com/fancv/AppTest.java b/SpringBoot-Commons/src/test/java/com/fancv/AppTest.java new file mode 100644 index 0000000..84d0c0b --- /dev/null +++ b/SpringBoot-Commons/src/test/java/com/fancv/AppTest.java @@ -0,0 +1,20 @@ +package com.fancv; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +/** + * Unit test for simple App. + */ +public class AppTest +{ + /** + * Rigorous Test :-) + */ + @Test + public void shouldAnswerWithTrue() + { + assertTrue( true ); + } +} diff --git a/SpringBoot-OSS/lib/SpringBoot-Commons-1.0-SNAPSHOT.jar b/SpringBoot-Commons/target/SpringBoot-Commons-1.0-SNAPSHOT.jar similarity index 100% rename from SpringBoot-OSS/lib/SpringBoot-Commons-1.0-SNAPSHOT.jar rename to SpringBoot-Commons/target/SpringBoot-Commons-1.0-SNAPSHOT.jar diff --git a/SpringBoot-Commons/target/classes/com/fancv/App.class b/SpringBoot-Commons/target/classes/com/fancv/App.class new file mode 100644 index 0000000000000000000000000000000000000000..b4bb0ca015f40947a0034818d9a23b65c5165b5e GIT binary patch literal 563 zcmZuuO-sW-6r8PXlg4PZTE9Q4UaALk5j-e@2;!k?p;8Z?w&~igB-s*E!JnlE1rPoJ zf0Q_hLMa%?dwKKTo1MvieSdrcIKYmBBB~`UV9~~sgJrB(ShcVwP(0R=PEG_S>bq@$ z{F&)0fpSAf>S`EvRD2^l0g+0>_%dkASf}+Lm{0opF`f2J=-tc6fAUTTgCo*}Qbz&{ z^}EJ{e3D)uqn_7FVjcC4vSVc2RhK%Y@V^7 z(z>uZ9+aPqL9OSGW{Fq$7HFP{ju>;8 F{{g~{bNv7S literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/classes/com/ray/sdk/OssUtil/GetTime.class b/SpringBoot-Commons/target/classes/com/ray/sdk/OssUtil/GetTime.class new file mode 100644 index 0000000000000000000000000000000000000000..b8bbb3fa204e1a10b36721c03819f00df6bb4e84 GIT binary patch literal 994 zcmaJ<+fEZv6kVs3cBrLb1ux|;s4cg7@xesniv}O;2uYEI$3y2p2Rj`zJs9}`!yoYC ztM8f^h?4jL{s(-9aqXD~h(V_5o_#rMuf6u1-+zAo0`M5i1>C@F9&-g`rqp;H*_3G z+)HL{E9fdr)SFT0#(LlF`tRJ;ZuhMX+U_f3*MrbJRmiW!MqGuFYOTJjKWMkDJ3DT} z#zAL?2eQ7ltPZEOJwd-@hLw!JtuUVEt@&u(Mi9Pl8>y~Dai}fNqQ;gQW&LM*WEN+3F5AmmI`y#e`mOQV4KJp_Ka;s{+f<;Xsn63i$WvXi<@R8 zkfjxSJ6M*viYQ`Gp_I&cu2G?qB(4;vFt*R<^v8G4JNta#`)7w=TCKCgqcA)@_#_RN zinxbKN|SS*=lk5YxJ#Z#@HL->+rC)V>ejAlT5hGM{_@wUZD0m+q2%cYMPZP(#K`4a zNp}7i>KmO5hG=t1GKXRM#ql0)*%l*g5)feWE zkoOk9vYK`*^WK8A4v}SY++{!MKFtmeGo!f8s7(J3Yl{C2*HWP!z}PwCV!{WEBuoyO zdemeSE?#@ubovUB7s^t$P LAcM`&W^n&6BP!5Q literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/classes/com/ray/sdk/OssUtil/RayOssUtil.class b/SpringBoot-Commons/target/classes/com/ray/sdk/OssUtil/RayOssUtil.class new file mode 100644 index 0000000000000000000000000000000000000000..9c836aa8e9cfa7d57ce05cfd657bd48389508bba GIT binary patch literal 3838 zcma)930E7}75+vDG)Q9`WH2EKl*EmL!P2xTNgNZ~#l$4I0$jkPcGp3Ah%uuXSuXM5!@68HQZ>zN_M872i|w{Rn;# z!4DO*JFYu!nZouIbfwZxPB$!bqiE~o>oaq6qY8Rwi?(Ox#DeLXie8JhJyJNA;9RnYHy zE*KlSn_1D*K37IC?o$+Qd)Ty1?}UPu!NUs*!sAXxDA<=WZ82TUEsDat!O#@MQ%>5j z7L0-^zn7U|Z`ow51KXU;xb8X6wDehHqfE+}@_EyK?0bDqp_ zbT^La=#w^eDJG2E=;57m3R;QOWJZR#!z>fBiJbz?tXbjL?m)D`IzdyWRQRiG}JmYDY8SBYCWhI@8FrqTFbM$Rtvc!B0O@=W2+$myiXDQm{px~iiNb8;2|5l)}2X-v4Wwd7tUq5h2t>*ecZ|A9h>2dYIrZk z6!g@J6NGcBXj&OjkjK{|ctyic@T!KN;%6FuE~#Un>Is~T;1?QxiB}`|m4;2c7QuB5 zzsBnt&f`J^ztQk0N*ZRdrC}a7h;PkPwb&8d)bIvwY4|N}DLB|LVaols4OI;vgQ4Mf zxTfJv{9eN!@JE)(b`ohLy(~2R3D;QFvjroYquihI7xunsTbu=>6-fXGT+HP)yoG=9YM41AD|9j>KWi>kSw7vGyqFi9OkwW+mbbY@1Et`oHM#8N zEUI~8-O~d)ob=W?JEA@-ZyBa7O{}`S_uWQ5Z<%R-a_XygCb`Oa>ToV3^LcMwig8!a z*C>{A6M1J%6!MNKhjeQ)aL(jAnmK(`c=LQZSU%p9c_(9VZgmYdy$@~7MA(cz(ab^J)!o*`yx*$l zRARfcK8D6;gky(6oGPYQgcscRTF$kx%X;#nnO5+g@VS{(&{>14JU0|XRt>8tX4p0d z1}Ezis!f)7L$hLqm)}8Yr@Q9i5!1~(t|{MM1u@HTy-7PG)@3&| zy&mkLcDK0b`oAKi%(jjRx|b#C5SNOE z1w_zF-mzNfC9D95BYrps0_kcvaX$#fchjo)E)+h1 z=gR0j$zA5ux83}{7Q6y=>N+|%uOq(cr_+fpbWm7Af51d5_^@A9m8pLOA7yacYuO&6C@2K9gTD=eIx6>3P}cFv z&`^A!gu6<(J2f0XSi(DBLRm#QmFahrzK`@(Q1Lxw<_MYhSC|i!nGbHphb1sURWGovU^+3jWfwc9hg~?pW;w`O z>a6BbR_+8VGsXl&8u1eS3bCZ6WMqR+vq>&+`ZfS{MB os3Wh6?1wmF|3Oa#>DcX|SS;2V>I_wSRzew~X}OB(=vV^&2TyX+!~g&Q literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/classes/com/ray/sdk/config/ossConfig.class b/SpringBoot-Commons/target/classes/com/ray/sdk/config/ossConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..f0620a7dc73f071aa8b0b9b50b9975c57f9d5078 GIT binary patch literal 3824 zcma)7-EZ6075`BpDN2?tS+SjH&EjP9T7St((lqVlq)VJSixbO9ZO>i1uhJ52(UwV- zq8vMI*R>mpJ`LE@fB}7NfFciDvAMts4BJZw>~C7v{Vp%{VT%C*NSEiH^E>CB&wKy# zzrX(jz!m(?K*d1SfMsCIz;*()6m-~03}HtsyJD#e-d+mhQs5-urpRuHrLa#j|_`nYL6i2pDji%|)l$aBYY3 z;kLZZA|kcfs_a_+3SCi<4FC%rjyPi5@)_;@%^j;k6JwK8%N2L8Xx8n+mQ$qp;{CNX zdZ^xVtF(|=wjFDwwYO<`>n4L2DRL`jeZ%x@u@9N5U$dEwbAc@eQEXOsixt<|vbTlJ zTLDF@hShO?z^qiPAni+4p3~X2gHO4Ei!zX;FjBWI5%oy4!-dF7&K;2r7JGi`Ed`2uyvaimJJR)Q zmZxAyRB}T0Vc>8k5cG0}dmwGka=oZFGaCR|x~{{+5_gQ331G+iR-$@YgKNH7*)5xm zu;Yx1=`4z1*;F;NS(EL`S}rk`2dhivMFvY+_pD~C&bCSQhA=MkMLU#&Fp!}lcl}RGR>avDJ~gfUtfZy-)KheYwC}1V}1usy*V)YBAC}73<1v5NL!7K^{%<+`Zd1`{+*_^VRiPr04ZN6CXp7>$yPp9OCp_=W$7TJVD3e+ zxJb+$X&;wxnY%doF9we34CxA~SfKS1sW^4V1GiOLcn(*|(}<7bWxPWBA}cz*{~^DM z=v1yEh9bWTzuNSdNdJX|bWT7;8if;S2?(7~M3a(pT$w?3Ba_ORNM-hQgmUVnaxPMt z^AMqIoKzl-ROTE-C=Z@gJ`<^Y6ANL{OZ>)|6@7Z zPhN{QnR-@}vZ+Ip&j%(KqfHvmYEq6vXmTPgA|&a4ovcXletvh<9C2L z`C?}JGid6QnSWvEPtf8|X8wtx^6c~xGQpNac4d}JNiF;v19|mp3_nJ?kXMf|+(zU| z8X-9jnIsDV0wOP$~o^^BiJ% zoce@b$AdBMos@=*rc?JXu!OrT^(a2YJ&te;6Zk!r$%}JTKS7z4%KLs7E2K2;E!-!i zqmJ8nKq>)`55ViB4E%v3y-F&HKXSm=NTsk&KdvH^F#e071ctuBSOVkx8Ok>}Bgy1b zNQ6aMVo_A_{K%s4hEPbcQAIUGoc%X~>~F0Tr^e_+oT0^gL7Dkvk;Q95`IsieJ=w_4 zUsJCK#XOsxud$RycIGh>g(Hl>TDg=2olo+DGQgo`M1tQiqP%`pbTQpMA1Cibl zvEtM^8(k!Mr#3?8P9$VXk) z1UrmVT=6%)!Wf^b)44N8$cxhOllzXObAo + + + + + SpringBoot-Commons – Project Dependencies + + + + + + + + +
+ +
+
+
+ +
+

Project Dependencies

+
+

compile

+

The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GroupIdArtifactIdVersionTypeLicenses
com.aliyun.ossaliyun-sdk-oss3.8.0jar-
com.github.xiaoyminknife4j-spring-boot-starter3.0.2jarThe Apache Software License, Version 2.0
javax.activationactivation1.1.1jarCOMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
javax.xml.bindjaxb-api2.3.1jar-
org.apache.rocketmqrocketmq-spring-boot2.1.1jarApache License, Version 2.0
org.glassfish.jaxbjaxb-runtime2.3.3jarEclipse Distribution License - v 1.0
org.springframework.bootspring-boot-starter-web2.3.9.RELEASEjarApache License, Version 2.0
+
+

test

+

The following is a list of test dependencies for this project. These dependencies are only required to compile and run unit tests for the application:

+ + + + + + + + + + + + + + + + + + +
GroupIdArtifactIdVersionTypeLicenses
junitjunit4.11jarCommon Public License Version 1.0
org.springframework.bootspring-boot-starter-test2.3.9.RELEASEjarApache License, Version 2.0
+
+

provided

+

The following is a list of provided dependencies for this project. These dependencies are required to compile the application, but should be provided by default when using the library:

+ + + + + + + + + + + + +
GroupIdArtifactIdVersionTypeLicenses
org.projectlomboklombok1.18.20jarThe MIT License
+
+

Project Transitive Dependencies

+

The following is a list of transitive dependencies for this project. Transitive dependencies are the dependencies of the project dependencies.

+
+

compile

+

The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GroupIdArtifactIdVersionTypeLicenses
ch.qos.logbacklogback-classic1.2.3jar-
ch.qos.logbacklogback-core1.2.3jar-
com.alibabafastjson1.2.69jarApache 2
com.aliyunaliyun-java-sdk-core3.4.0jar-
com.aliyunaliyun-java-sdk-ecs4.2.0jar-
com.aliyunaliyun-java-sdk-ram3.0.0jar-
com.aliyunaliyun-java-sdk-sts3.0.0jar-
com.fasterxmlclassmate1.5.1jar-
com.fasterxml.jackson.corejackson-annotations2.11.4jar-
com.fasterxml.jackson.corejackson-core2.11.4jar-
com.fasterxml.jackson.corejackson-databind2.11.4jar-
com.fasterxml.jackson.dataformatjackson-dataformat-yaml2.11.4jar-
com.fasterxml.jackson.datatypejackson-datatype-jdk82.11.4jar-
com.fasterxml.jackson.datatypejackson-datatype-jsr3102.11.4jar-
com.fasterxml.jackson.modulejackson-module-parameter-names2.11.4jar-
com.github.xiaoyminknife4j-annotations3.0.2jarThe Apache Software License, Version 2.0
com.github.xiaoyminknife4j-core3.0.2jarThe Apache Software License, Version 2.0
com.github.xiaoyminknife4j-spring3.0.2jarThe Apache Software License, Version 2.0
com.github.xiaoyminknife4j-spring-boot-autoconfigure3.0.2jarThe Apache Software License, Version 2.0
com.github.xiaoyminknife4j-spring-ui3.0.2jarThe Apache Software License, Version 2.0
com.google.code.findbugsjsr3053.0.2jar-
com.google.errorproneerror_prone_annotations2.2.0jarApache 2.0
com.google.guavafailureaccess1.0.1jar-
com.google.guavaguava27.0.1-androidjar-
com.google.guavalistenablefuture9999.0-empty-to-avoid-conflict-with-guavajarThe Apache Software License, Version 2.0
com.google.j2objcj2objc-annotations1.1jarThe Apache Software License, Version 2.0
com.sun.istackistack-commons-runtime3.0.11jarEclipse Distribution License - v 1.0
commons-beanutilscommons-beanutils1.9.2jarThe Apache Software License, Version 2.0
commons-clicommons-cli1.2jarThe Apache Software License, Version 2.0
commons-codeccommons-codec1.14jarApache License, Version 2.0
commons-collectionscommons-collections3.2.2jarApache License, Version 2.0
commons-digestercommons-digester1.8.1jarThe Apache Software License, Version 2.0
commons-loggingcommons-logging1.2jarThe Apache Software License, Version 2.0
commons-validatorcommons-validator1.6jarApache License, Version 2.0
io.github.classgraphclassgraph4.8.83jar-
io.nettynetty-all4.1.59.FinaljarApache License, Version 2.0
io.nettynetty-tcnative-boringssl-static2.0.36.Finaljar-
io.springfoxspringfox-bean-validators3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-boot-starter3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-core3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-data-rest3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-oas3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-schema3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-spi3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-spring-web3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-spring-webflux3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-spring-webmvc3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-swagger-common3.0.0jarThe Apache Software License, Version 2.0
io.springfoxspringfox-swagger23.0.0jarThe Apache Software License, Version 2.0
io.swaggerswagger-annotations1.5.22jar-
io.swaggerswagger-core1.5.22jar-
io.swaggerswagger-models1.5.22jar-
io.swagger.core.v3swagger-annotations2.1.2jar-
io.swagger.core.v3swagger-models2.1.2jar-
jakarta.annotationjakarta.annotation-api1.3.5jarEPL 2.0GPL2 w/ CPE
jakarta.xml.bindjakarta.xml.bind-api2.3.3jarEclipse Distribution License - v 1.0
javax.activationjavax.activation-api1.2.0jarCDDL/GPLv2+CE
javax.validationvalidation-api2.0.1.FinaljarApache License 2.0
net.bytebuddybyte-buddy1.10.20jarApache License, Version 2.0
org.apache.commonscommons-lang33.10jarApache License, Version 2.0
org.apache.httpcomponentshttpclient4.5.13jarApache License, Version 2.0
org.apache.httpcomponentshttpcore4.4.14jarApache License, Version 2.0
org.apache.logging.log4jlog4j-api2.13.3jar-
org.apache.logging.log4jlog4j-to-slf4j2.13.3jar-
org.apache.rocketmqrocketmq-acl4.7.1jarApache License, Version 2.0
org.apache.rocketmqrocketmq-client4.7.1jarApache License, Version 2.0
org.apache.rocketmqrocketmq-common4.7.1jarApache License, Version 2.0
org.apache.rocketmqrocketmq-logging4.7.1jarApache License, Version 2.0
org.apache.rocketmqrocketmq-remoting4.7.1jarApache License, Version 2.0
org.apache.rocketmqrocketmq-srvutil4.7.1jarApache License, Version 2.0
org.apache.tomcat.embedtomcat-embed-core9.0.43jarApache License, Version 2.0
org.apache.tomcat.embedtomcat-embed-websocket9.0.43jarApache License, Version 2.0
org.checkerframeworkchecker-compat-qual2.5.2jarGNU General Public License, version 2 (GPL2), with the classpath exceptionThe MIT License
org.codehaus.jettisonjettison1.1jar-
org.codehaus.mojoanimal-sniffer-annotations1.17jarMIT license
org.glassfishjakarta.el3.0.3jarEPL 2.0GPL2 w/ CPE
org.glassfish.jaxbtxw22.3.3jarEclipse Distribution License - v 1.0
org.javassistjavassist3.25.0-GAjar-
org.jdomjdom1.1jar-
org.slf4jjul-to-slf4j1.7.30jarMIT License
org.slf4jslf4j-api1.7.30jarMIT License
org.springframeworkspring-aop5.2.13.RELEASEjarApache License, Version 2.0
org.springframeworkspring-beans5.2.13.RELEASEjarApache License, Version 2.0
org.springframeworkspring-context5.2.13.RELEASEjarApache License, Version 2.0
org.springframeworkspring-core5.2.13.RELEASEjarApache License, Version 2.0
org.springframeworkspring-expression5.2.13.RELEASEjarApache License, Version 2.0
org.springframeworkspring-jcl5.2.13.RELEASEjarApache License, Version 2.0
org.springframeworkspring-messaging5.2.13.RELEASEjarApache License, Version 2.0
org.springframeworkspring-web5.2.13.RELEASEjarApache License, Version 2.0
org.springframeworkspring-webmvc5.2.13.RELEASEjarApache License, Version 2.0
org.springframework.bootspring-boot2.3.9.RELEASEjarApache License, Version 2.0
org.springframework.bootspring-boot-autoconfigure2.3.9.RELEASEjarApache License, Version 2.0
org.springframework.bootspring-boot-starter2.3.9.RELEASEjarApache License, Version 2.0
org.springframework.bootspring-boot-starter-json2.3.9.RELEASEjarApache License, Version 2.0
org.springframework.bootspring-boot-starter-logging2.3.9.RELEASEjarApache License, Version 2.0
org.springframework.bootspring-boot-starter-tomcat2.3.9.RELEASEjarApache License, Version 2.0
org.springframework.pluginspring-plugin-core2.0.0.RELEASEjarApache License, Version 2.0
org.springframework.pluginspring-plugin-metadata2.0.0.RELEASEjarApache License, Version 2.0
org.yamlsnakeyaml1.26jar-
staxstax-api1.0.1jarThe Apache Software License, Version 2.0
+
+

runtime

+

The following is a list of runtime dependencies for this project. These dependencies are required to run the application:

+ + + + + + + + + + + + + + + + + + +
GroupIdArtifactIdVersionTypeLicenses
com.sun.activationjakarta.activation1.2.2jarEDL 1.0
org.mapstructmapstruct1.3.1.FinaljarThe Apache Software License, Version 2.0
+
+

test

+

The following is a list of test dependencies for this project. These dependencies are only required to compile and run unit tests for the application:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GroupIdArtifactIdVersionTypeLicenses
com.jayway.jsonpathjson-path2.4.0jarThe Apache Software License, Version 2.0
com.vaadin.external.googleandroid-json0.0.20131108.vaadin1jarApache License 2.0
net.bytebuddybyte-buddy-agent1.10.20jarApache License, Version 2.0
net.minidevaccessors-smart1.2jar-
net.minidevjson-smart2.3jar-
org.apiguardianapiguardian-api1.1.0jarThe Apache License, Version 2.0
org.assertjassertj-core3.16.1jar-
org.hamcresthamcrest2.2jarBSD License 3
org.hamcresthamcrest-core2.2jarBSD License 3
org.junit.jupiterjunit-jupiter5.6.3jarEclipse Public License v2.0
org.junit.jupiterjunit-jupiter-api5.6.3jarEclipse Public License v2.0
org.junit.jupiterjunit-jupiter-engine5.6.3jarEclipse Public License v2.0
org.junit.jupiterjunit-jupiter-params5.6.3jarEclipse Public License v2.0
org.junit.platformjunit-platform-commons1.6.3jarEclipse Public License v2.0
org.junit.platformjunit-platform-engine1.6.3jarEclipse Public License v2.0
org.junit.vintagejunit-vintage-engine5.6.3jarEclipse Public License v2.0
org.mockitomockito-core3.3.3jarThe MIT License
org.mockitomockito-junit-jupiter3.3.3jarThe MIT License
org.objenesisobjenesis2.6jar-
org.opentest4jopentest4j1.2.0jarThe Apache License, Version 2.0
org.ow2.asmasm5.0.4jarBSD
org.skyscreamerjsonassert1.5.0jar-
org.springframeworkspring-test5.2.13.RELEASEjarApache License, Version 2.0
org.springframework.bootspring-boot-test2.3.9.RELEASEjarApache License, Version 2.0
org.springframework.bootspring-boot-test-autoconfigure2.3.9.RELEASEjarApache License, Version 2.0
org.xmlunitxmlunit-core2.7.0jarThe Apache Software License, Version 2.0
+
+

Project Dependency Graph

+ + +
+

Dependency Tree

+
+
+

Licenses

+

Apache 2.0: error-prone annotations

+

The Apache License, Version 2.0: org.apiguardian:apiguardian-api, org.opentest4j:opentest4j

+

BSD License 3: Hamcrest, Hamcrest Core

+

MIT License: JUL to SLF4J bridge, SLF4J API Module

+

Eclipse Public License v2.0: JUnit Jupiter (Aggregator), JUnit Jupiter API, JUnit Jupiter Engine, JUnit Jupiter Params, JUnit Platform Commons, JUnit Platform Engine API, JUnit Vintage Engine

+

GPL2 w/ CPE: Jakarta Annotations API, Jakarta Expression Language 3.0

+

CDDL/GPLv2+CE: JavaBeans Activation Framework API jar

+

Apache 2: fastjson

+

BSD: ASM Core

+

Unknown: JDOM, Netty/TomcatNative [BoringSSL - Static]

+

EDL 1.0: Jakarta Activation

+

Apache License 2.0: Bean Validation API, JSON library from Android SDK

+

The MIT License: Checker Qual, Project Lombok, mockito-core, mockito-junit-jupiter

+

Apache License, Version 2.0: Apache Commons Codec, Apache Commons Collections, Apache Commons Lang, Apache Commons Validator, Apache HttpClient, Apache HttpCore, Byte Buddy (without dependencies), Byte Buddy agent, Netty/All-in-One, RocketMQ Spring Boot AutoConfigure, Spring AOP, Spring Beans, Spring Commons Logging Bridge, Spring Context, Spring Core, Spring Expression Language (SpEL), Spring Messaging, Spring Plugin - Core, Spring Plugin - Metadata Extension, Spring TestContext Framework, Spring Web, Spring Web MVC, SpringBoot-Commons, rocketmq-acl 4.7.1, rocketmq-client 4.7.1, rocketmq-common 4.7.1, rocketmq-logging 4.7.1, rocketmq-remoting 4.7.1, rocketmq-srvutil 4.7.1, spring-boot, spring-boot-autoconfigure, spring-boot-starter, spring-boot-starter-json, spring-boot-starter-logging, spring-boot-starter-test, spring-boot-starter-tomcat, spring-boot-starter-web, spring-boot-test, spring-boot-test-autoconfigure, tomcat-embed-core, tomcat-embed-websocket

+

COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0: JavaBeans(TM) Activation Framework

+

GNU General Public License, version 2 (GPL2), with the classpath exception: Checker Qual

+

Eclipse Distribution License - v 1.0: JAXB Runtime, Jakarta XML Binding API, TXW2 Runtime, istack common utility code runtime

+

EPL 2.0: Jakarta Annotations API, Jakarta Expression Language 3.0

+

MIT license: Animal Sniffer Annotations

+

Common Public License Version 1.0: JUnit

+

The Apache Software License, Version 2.0: Apache Commons BeanUtils, Apache Commons Logging, Commons CLI, Commons Digester, Guava ListenableFuture only, J2ObjC Annotations, MapStruct Core, StAX API, knife4j-annotations, knife4j-core, knife4j-spring, knife4j-spring-boot-autoconfigure, knife4j-spring-boot-starter, knife4j-spring-ui, org.xmlunit:xmlunit-core, project ':json-path', springfox-bean-validators, springfox-boot-starter, springfox-core, springfox-data-rest, springfox-oas, springfox-schema, springfox-spi, springfox-spring-web, springfox-spring-webflux, springfox-spring-webmvc, springfox-swagger-common, springfox-swagger2

+
+

Dependency File Details

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FilenameSizeEntriesClassesPackagesJava VersionDebug Information
logback-classic-1.2.3.jar290.3 kB234175271.6Yes
logback-core-1.2.3.jar471.9 kB419373361.6Yes
fastjson-1.2.69.jar671.6 kB287252181.6Yes
aliyun-java-sdk-core-3.4.0.jar116.3 kB9977101.6Yes
aliyun-java-sdk-ecs-4.2.0.jar788.1 kB73972521.6Yes
aliyun-java-sdk-ram-3.0.0.jar215.5 kB25924521.6Yes
aliyun-java-sdk-sts-3.0.0.jar13.3 kB261221.6Yes
aliyun-sdk-oss-3.8.0.jar626.8 kB475449101.6Yes
classmate-1.5.1.jar67.8 kB55405-Yes
jackson-annotations-2.11.4.jar72.1 kB81692-Yes
jackson-core-2.11.4.jar351.5 kB14411813-Yes
jackson-databind-2.11.4.jar1.4 MB69365822-Yes
jackson-dataformat-yaml-2.11.4.jar46.9 kB35163-Yes
jackson-datatype-jdk8-2.11.4.jar34.3 kB37232-Yes
jackson-datatype-jsr310-2.11.4.jar111 kB76576-Yes
jackson-module-parameter-names-2.11.4.jar9.3 kB1952-Yes
knife4j-annotations-3.0.2.jar6.7 kB20811.8No
knife4j-core-3.0.2.jar25.3 kB372051.8Yes
knife4j-spring-3.0.2.jar51.9 kB483061.8Yes
knife4j-spring-boot-autoconfigure-3.0.2.jar9.7 kB20421.8Yes
knife4j-spring-boot-starter-3.0.2.jar1.8 kB700-No
knife4j-spring-ui-3.0.2.jar2.9 MB8000-No
jsr305-3.0.2.jar19.9 kB463531.5Yes
error_prone_annotations-2.2.0.jar13.7 kB342221.7No
failureaccess-1.0.1.jar4.6 kB15211.7Yes
guava-27.0.1-android.jar2.6 MB19161886181.7Yes
listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar2.2 kB700-No
j2objc-annotations-1.1.jar8.8 kB231211.5Yes
json-path-2.4.0.jar223.2 kB191174121.6Yes
jakarta.activation-1.2.2.jar68.5 kB61434-Yes
istack-commons-runtime-3.0.11.jar29.9 kB44234-Yes
android-json-0.0.20131108.vaadin1.jar18.3 kB12811.5Yes
commons-beanutils-1.9.2.jar233.9 kB15413751.5Yes
commons-cli-1.2.jar41.1 kB352211.4Yes
commons-codec-1.14.jar347.7 kB24910271.7Yes
commons-collections-3.2.2.jar588.3 kB484460121.3Yes
commons-digester-1.8.1.jar146.1 kB11910061.2Yes
commons-logging-1.2.jar61.8 kB422821.2Yes
commons-validator-1.6.jar186.1 kB1027741.6Yes
classgraph-4.8.83.jar504.7 kB26023213-Yes
netty-all-4.1.59.Final.jar4.3 MB29242805811.6Yes
netty-tcnative-boringssl-static-2.0.36.Final.jar4 MB421911.6Yes
springfox-bean-validators-3.0.0.jar38.6 kB302041.8Yes
springfox-boot-starter-3.0.0.jar13.1 kB201211.8Yes
springfox-core-3.0.0.jar262.8 kB19218071.8Yes
springfox-data-rest-3.0.0.jar71.3 kB483931.8Yes
springfox-oas-3.0.0.jar78.5 kB544541.8Yes
springfox-schema-3.0.0.jar102.5 kB655561.8Yes
springfox-spi-3.0.0.jar55.2 kB534361.8Yes
springfox-spring-web-3.0.0.jar188.5 kB948071.8Yes
springfox-spring-webflux-3.0.0.jar13.9 kB16821.8Yes
springfox-spring-webmvc-3.0.0.jar14.5 kB17921.8Yes
springfox-swagger-common-3.0.0.jar116.3 kB624971.8Yes
springfox-swagger2-3.0.0.jar109.8 kB756641.8Yes
swagger-annotations-1.5.22.jar21.7 kB413111.7Yes
swagger-core-1.5.22.jar116.6 kB937671.7Yes
swagger-models-1.5.22.jar155 kB1099461.7Yes
swagger-annotations-2.1.2.jar34.8 kB6844131.8Yes
swagger-models-2.1.2.jar118.2 kB8562121.8Yes
jakarta.annotation-api-1.3.5.jar25.1 kB281531.8Yes
jakarta.xml.bind-api-2.3.3.jar115.6 kB1371117-Yes
activation-1.1.1.jar69.4 kB503831.4Yes
javax.activation-api-1.2.0.jar56.7 kB413111.5Yes
validation-api-2.0.1.Final.jar93.1 kB16314391.8Yes
jaxb-api-2.3.1.jar128.1 kB1361117-Yes
junit-4.11.jar245 kB266233281.5Yes
byte-buddy-1.10.20.jar3.5 MB2512245737-Yes
byte-buddy-agent-1.10.20.jar259.2 kB81632-Yes
accessors-smart-1.2.jar30 kB241321.6Yes
json-smart-2.3.jar120.3 kB1069251.6Yes
commons-lang3-3.10.jar523.4 kB314288141.8Yes
httpclient-4.5.13.jar780.3 kB511470241.6Yes
httpcore-4.4.14.jar328.4 kB283253171.6Yes
log4j-api-2.13.3.jar292.3 kB2141809-Yes
log4j-to-slf4j-2.13.3.jar17.5 kB22611.8Yes
rocketmq-acl-4.7.1.jar47 kB382231.8Yes
rocketmq-client-4.7.1.jar390 kB224190211.6Yes
rocketmq-common-4.7.1.jar295.5 kB269229271.6Yes
rocketmq-logging-4.7.1.jar63.8 kB543921.6Yes
rocketmq-remoting-4.7.1.jar123.6 kB1028361.6Yes
rocketmq-spring-boot-2.1.1.jar71.7 kB553441.8Yes
rocketmq-srvutil-4.7.1.jar13.1 kB18411.8Yes
tomcat-embed-core-9.0.43.jar3.4 MB1731152079-Yes
tomcat-embed-websocket-9.0.43.jar271.8 kB2051786-Yes
apiguardian-api-1.1.0.jar2.4 kB832-Yes
assertj-core-3.16.1.jar4.7 MB3215312861-Yes
checker-compat-qual-2.5.2.jar5.8 kB171011.6No
jettison-1.1.jar67.8 kB554051.1Yes
animal-sniffer-annotations-1.17.jar3.4 kB12111.7No
jakarta.el-3.0.3.jar237.8 kB18216261.7Yes
jaxb-runtime-2.3.3.jar1 MB82564926-Yes
txw2-2.3.3.jar72 kB69544-Yes
hamcrest-2.2.jar123.4 kB122108111.7Yes
hamcrest-core-2.2.jar1.5 kB8111.7Yes
javassist-3.25.0-GA.jar780.3 kB449425171.7Yes
jdom-1.1.jar153.1 kB897681.2Yes
junit-jupiter-5.6.3.jar6.4 kB511-No
junit-jupiter-api-5.6.3.jar154 kB1501358-Yes
junit-jupiter-engine-5.6.3.jar209.3 kB1301139-Yes
junit-jupiter-params-5.6.3.jar562.3 kB37033622-Yes
junit-platform-commons-1.6.3.jar96.7 kB61417-Yes
junit-platform-engine-1.6.3.jar174.1 kB1391239-Yes
junit-vintage-engine-5.6.3.jar63.8 kB47336-Yes
mapstruct-1.3.1.Final.jar23 kB433131.8Yes
mockito-core-3.3.3.jar592.3 kB636563651.8Yes
mockito-junit-jupiter-3.3.3.jar4.5 kB9211.8Yes
objenesis-2.6.jar55.7 kB5943101.6Yes
opentest4j-1.2.0.jar7.7 kB1172-Yes
asm-5.0.4.jar53.3 kB302521.2No
lombok-1.18.20.jar1.9 MB102916313-Yes
jsonassert-1.5.0.jar30.3 kB322031.6Yes
jul-to-slf4j-1.7.30.jar4.6 kB11111.5Yes
slf4j-api-1.7.30.jar41.5 kB463441.5Yes
spring-aop-5.2.13.RELEASE.jar372.8 kB306277171.8Yes
spring-beans-5.2.13.RELEASE.jar688.7 kB414384131.8Yes
spring-context-5.2.13.RELEASE.jar1.2 MB967880641.8Yes
spring-core-5.2.13.RELEASE.jar1.4 MB1023965471.8Yes
spring-expression-5.2.13.RELEASE.jar282.2 kB16415061.8Yes
spring-jcl-5.2.13.RELEASE.jar24 kB281721.8Yes
spring-messaging-5.2.13.RELEASE.jar549.6 kB361332221.8Yes
spring-test-5.2.13.RELEASE.jar685.4 kB516462391.8Yes
spring-web-5.2.13.RELEASE.jar1.4 MB996926551.8Yes
spring-webmvc-5.2.13.RELEASE.jar956.7 kB586541281.8Yes
spring-boot-2.3.9.RELEASE.jar1.1 MB837725711.8Yes
spring-boot-autoconfigure-2.3.9.RELEASE.jar1.5 MB12201104991.8Yes
spring-boot-starter-2.3.9.RELEASE.jar4.8 kB400-No
spring-boot-starter-json-2.3.9.RELEASE.jar4.7 kB400-No
spring-boot-starter-logging-2.3.9.RELEASE.jar4.8 kB400-No
spring-boot-starter-test-2.3.9.RELEASE.jar4.8 kB400-No
spring-boot-starter-tomcat-2.3.9.RELEASE.jar4.8 kB400-No
spring-boot-starter-web-2.3.9.RELEASE.jar4.8 kB400-No
spring-boot-test-2.3.9.RELEASE.jar217.2 kB164138141.8Yes
spring-boot-test-autoconfigure-2.3.9.RELEASE.jar175.6 kB186153191.8Yes
spring-plugin-core-2.0.0.RELEASE.jar28.8 kB351631.8Yes
spring-plugin-metadata-2.0.0.RELEASE.jar9.9 kB17411.8Yes
xmlunit-core-2.7.0.jar168.4 kB17115581.6Yes
snakeyaml-1.26.jar309 kB253216201.7Yes
stax-api-1.0.1.jar26.5 kB484051.2Yes
TotalSizeEntriesClassesPackagesJava VersionDebug Information
13856.9 MB355313107216061.8123
compile: 107compile: 45.9 MBcompile: 27645compile: 24662compile: 1236-compile: 95
test: 28test: 9 MBtest: 6753test: 6173test: 350-test: 25
runtime: 2runtime: 91.5 kBruntime: 104runtime: 74runtime: 7-runtime: 2
provided: 1provided: 1.9 MBprovided: 1029provided: 163provided: 13-provided: 1
+
+
+
+
+
+ + + diff --git a/SpringBoot-Commons/target/site/dependency-info.html b/SpringBoot-Commons/target/site/dependency-info.html new file mode 100644 index 0000000..ddab553 --- /dev/null +++ b/SpringBoot-Commons/target/site/dependency-info.html @@ -0,0 +1,115 @@ + + + + + + SpringBoot-Commons – Dependency Information + + + + + + + + +
+ +
+
+
+
+

Dependency Information

+
+

Apache Maven

+
+
<dependency>
+  <groupId>com.fancv</groupId>
+  <artifactId>SpringBoot-Commons</artifactId>
+  <version>1.0-SNAPSHOT</version>
+</dependency>
+
+

Apache Buildr

+
+
'com.fancv:SpringBoot-Commons:jar:1.0-SNAPSHOT'
+
+

Apache Ivy

+
+
<dependency org="com.fancv" name="SpringBoot-Commons" rev="1.0-SNAPSHOT">
+  <artifact name="SpringBoot-Commons" type="jar" />
+</dependency>
+
+

Groovy Grape

+
+
@Grapes(
+@Grab(group='com.fancv', module='SpringBoot-Commons', version='1.0-SNAPSHOT')
+)
+
+

Gradle/Grails

+
+
compile 'com.fancv:SpringBoot-Commons:1.0-SNAPSHOT'
+
+

Scala SBT

+
+
libraryDependencies += "com.fancv" % "SpringBoot-Commons" % "1.0-SNAPSHOT"
+
+

Leiningen

+
+
[com.fancv/SpringBoot-Commons "1.0-SNAPSHOT"]
+
+
+
+
+
+ + + diff --git a/SpringBoot-Commons/target/site/dependency-management.html b/SpringBoot-Commons/target/site/dependency-management.html new file mode 100644 index 0000000..e69de29 diff --git a/SpringBoot-Commons/target/site/images/close.gif b/SpringBoot-Commons/target/site/images/close.gif new file mode 100644 index 0000000000000000000000000000000000000000..1c26bbc5264fcc943ad7b5a0f1a84daece211f34 GIT binary patch literal 279 zcmZ?wbhEHb6kyFkwP}e}6+mLp=yE)H5&?6cps==O-j2#K*@61O)i|`#U%|*xTD17#Qg5 z>nkWI$ji$M2ng`=^D}^ygDj#2&;c6F0P+h1n~g(5frm~PL&uV$l`S$eFDwzBDbhJD v>}Bvw*Al_tWna1PC9OaGVdk23i}vRhZI{iR^*V|n<^22a#~T_O9T}_vbswrX literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/site/images/collapsed.gif b/SpringBoot-Commons/target/site/images/collapsed.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e710840640c1bfd9dd76ce7fef56f1004092508 GIT binary patch literal 53 ycmZ?wbhEHbWM^P!XkdT>#h)yUTnvm1Iv_qshJlI4r7uBZ*YkPFU8d4p4Aua}2?(?R literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/site/images/expanded.gif b/SpringBoot-Commons/target/site/images/expanded.gif new file mode 100644 index 0000000000000000000000000000000000000000..0fef3d89e0df1f8bc49a0cd827f2607c7d7fd2f0 GIT binary patch literal 52 xcmZ?wbhEHbWM^P!XkdT>#h)yUTnvm1Iv_qshJlH@g}+fUi&t{amUB!D)&R0C2fzRT literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/site/images/external.png b/SpringBoot-Commons/target/site/images/external.png new file mode 100644 index 0000000000000000000000000000000000000000..3f999fc88b360074e41f38c3b4bc06ccb3bb7cf8 GIT binary patch literal 230 zcmeAS@N?(olHy`uVBq!ia0vp^+(699!3-oX?^2ToQY`6?zK#qG>ra@ocD)4hB}-f* zN`mv#O3D+9QW+dm@{>{(JaZG%Q-e|yQz{EjrrH1%@dWsUxR#cd{{R1fCIbVIy!atN z8e~{WkY6y6%iy53@(Yk3;OXKRQgJIOfsI*BO@UFsfhWLBc>*(#PB?Jn2*(o!76E4F z2oaVU3``tH+Kgs0GI5+@Tg}d)z%jd%F@?{8!SRZ5b1yT80-FZIMn)zc2Ca66y`pzY R*nwsJMCn#OVEqF*oew~oaAu*+mN;-=y?VHT3tIe$XQqrDo-uB_a z!$aaK`z6))OKGn34?nwc^SuifkIL#EmDgV_qjg-#8v*0u4q4%1moUw{LZ54UeCgzNF^jX`uv-XK+9g@yFrG9?@ z!9&5&Tgk*j(b!GF&{N4I-Owl3GNQ;Kslp@APSw&&&ux9d>WxL~{EYoKm2KHvv3+ax zZUYB?Ae*8JnchZheXeEaa>@87?_fB*jV>(`erUx0B6j@wa!KnN)QWMO1rn9HC8 zQU}Tt3>@bftT|;oHYhlHH8T8tc{qL2LBC1&wnQeg^-S05<#H=J%;q~&KX!$OXH$lP zifQJ#9>L8|xhAVRHT-xPa*}7JK>(A*!AmL!CQC~j>707p+C5b#ib-SZ5@wfn#-0y8 zor_pb3M^%mkXhlduwjw4dk@RWhYZ<*tSUAV9x3eYyi#^d39lH{872xT#>g14FgCZb z+Lvv}DClhGVU*`8y(Qe}(9I>Lw<6->0~Q`zX3oMH2272dBARI`0wDzxS_G8b_H+a` TZ#n2*^y*Bf^Krq04Gh)*dSnrT literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/site/images/icon_info_sml.gif b/SpringBoot-Commons/target/site/images/icon_info_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..c6cb9ad7ce438a798426703e86a7ffc197d51dbb GIT binary patch literal 606 zcmZ?wbhEHb!Rj)7jHhhdgsOUdoQoueZi?7 z>>gViTe&E#V48n=mrru5S3;v}WQB8hiDz7$TU2Fg8RZkU)J)l4H+4sO@7jjxJ4?G(<~7c1nYFul=C0P+d#d`@bj{yi z-npcE!T#Qb2PP~z)H;3B%r(bntUlH>Y2~CvyV|C%UbyM>vTf&9?!2&e&!siHFV0_c zVB`KP8}?n^dg$7Yqc`@PxOMQ%-NWbZ9Xfk=)1K2OFF!hV;r{6>kIr6ua^~ve%eS9j zy7lbD`I|4_et!J??bq+WzI^-n`RfmdkOIfh!pgqYwSCK`t~@$#!^!1aj_y2mzyI{@?vuB79>2N$==JkApPs$`_~ygc*YCf)diVLp z{pXKfy#M&+`?nvze*gIk#Q*;N0|qHLXbBUFKUo+V7>XElKuSSz!oa?}p{S|3rL`#` zEj=M8CWV#D$GthOu#hRgfH^NPHz`Z6or!6tudIJkhF|)EqL_SUmH;#E=*;vU)ut4d z*}1MJ+3|6yK5|W*0YQlwY}}E_93D;*P3)($(!#iHyj&dYc$?gAB*f@)n?~7Mn)5Ze zB*b!gs&gB@F*e|Da`5(ac688Lp~TGAEh5PBlHo`4aV}w%hy?;49h(#+>`NXTD0Bjy;4ci{C-1K14rU#4Xoa9{m6qopA9n0cn|!>ecYkij zwyX=!4*mH3EoqLqSGiVbyFqxD(bS8XSDu{6U1jZO70Ic@{~t&7=B^ zBD)NOoAkU&Gy^LQJ5PtV?u{&65}4ZUmfYbweP{LTy^YnAGv=AGa7*6wj}%~b0?7r5!@qH7P%p1*$L z@#{ODxoUwG+WsY)zWExj-aqxpQS(e!bx&6L`u)?tfB$~}{{8*?cVO&*V`-G2NeC$Z zWMO1r=w{FXnGVVm3>>=|#5rX=HY{-DP?VFNPL-%m%>B+*~5-k^-+4*MLFr;tQ0}^rlS-^!^Q`Mx1hrB$jwn&hk~Xk=#Nl+_9Nu|Y$D G!5RQ;-6)O# literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/site/images/icon_warning_sml.gif b/SpringBoot-Commons/target/site/images/icon_warning_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..873bbb52cb9768103c27fbb9a9bac16ac615fce5 GIT binary patch literal 576 zcmZ?wbhEHbB!Sy%bj7w z8LP{2I!WYbmF&-Ixi?j6tD|K1XR2M#l>Aw*aXL%wXS3nYW}{zi=4WzsU5r%E6qx+# za{AThd85YVOsT`KDUrWsBtGknIa3>Sy(4;AS@f^Dxt>-=XPXm#FD(1Lr2hBv=9?3X zZS^!XrNw@)>eiN((2|w-y>{aB1+99DGMA?}+UTggT+(Z*rf8+5x~aWVOGcurtl;&U zIa)H3I&#vwvQjJBn`YHj9iKlB7`)(M#!e{yWMO1rC}Yq8NrU2qfqia6SyOXMYa1sM zM_a34eqyRfcQbQJY;^IYGTuzaxglKLqNQEA}OiQec+sQ#rUUjLqg_MpsPmY43 zsgmVV8EHK$eV-B~6*UcAW2+w%1e4o&9#aAczLGF}PmMg|6J0Ey4q A)Bpeg literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/site/images/logos/build-by-maven-black.png b/SpringBoot-Commons/target/site/images/logos/build-by-maven-black.png new file mode 100644 index 0000000000000000000000000000000000000000..919fd0f66a7f713920dd7422035db1c9d484351d GIT binary patch literal 2294 zcmVKOG`!VuDc=fnx$+R6#>c^>b&wcOS?|$!`a}U6ptjU_J zlBA}l*3{J0)YMd0R~Hr*dU$xO^ie1jhYlTLS+=C4#MRYRCX#twGUSD6Il$6AA+=UAlkY(ZF;m4037Yc>v&!1mPsNXdliHV74&z>zUEv=}iC@U)i zfc^XTJ3BiAKvYyzczAd~K){|od(ip)`}f`5-HnZnv$L~Hzqq=(y7Kb!>gsAwPfu@e z@3gcu0LabFC4?{xBNPh18Fpy3+Tr2hfq{Yc_V$w}PjVdhGtMTH$zU){PfznaPmK)? z4KH52=;-KZX=#a#jlFZ{PF7YH!!Q{c8Taqs=Xt)UsK{tE{@>vc{2Hgh!NL0adH}e0 z@19Df^78Tm0ES@zz{SO7Zf@=upJ1_AP_bIAgpih&mWqmsojZ4GG#a&9{f)&Au~_Wm z<0F^L4;(mPHk)-io!M*-3JMa7#VIK%EBy%}_$g6IPEM9cBvPp~K0f}{t5+6_rMbEJ z(xpqcZ{G$0j^p<2+vnuu^bN3MdU`rLJ3Br;9ss7MrVbuFxUjHLQBhGX6WriQ5|M*_w z@5bUDdV71dTCG;AO-@dx@4a~OA{y)K>k+2N$jAo|9?w z?b_+nr`2k;!{M;o?Qh<^`R=>#RtFA0KR<`Vfh)Li;|5+X!otGn&U<@%H*VaBDU;Gf zr_<5=()7Iqfmk>yLj`}084`48Zf?d|M~)mpOHfeI{QNv2WMN?;Dk=&9GBY#LVzb%$ z`};Aq6GAK&OK4~)&U*g*IT{xh7M8K~%9SgtQ-;OG#ZeC5ym=F=X|vf(9h#b&K7RZN z05+S=X0xGjU|@g-%ePwl!GC`7t=5VDruDp`t9rXwq=tAb*88KQqo~N`a#V_oixKzA z%F4dJzL1cRy1F{CSUfW`qfjWeZ{Hpm7>H$yNF>V6&c<>vGBOgU_w@7}J9g~o(WA6z z#sgc0B0VlH4i&T6{Pyiz)FUDys6$s*7rnXCi!3z)!0DGJ5eITHyM2Q|E@qtti{QRD z*nbiZg+h^&lY>QINl6I+oH}*N-Q67kYHMqqoSd*@fE67^695Pa36aTU0HD+95)%{g zFw)c0Gcqy&K&4WxG906$qk6p_b=txpgmiazqaGF(M)NU+!{3cPsc^{*a`Ja$nXfZ@ zhsL%N4whw0OG`2M6&4oG&CQ8KBHBPHC@3f>C|I^a>__(qFp!^RU zV`F0uhl6EVxm><`_ijATmoHz|)ztxjL?XdmSuB<(Po5A$mM!w}C3kdS~ef}W>dub-Hhz&fI`vJ#oXvTST@?6qsxN=r)tz|+%n^XARiL+I)0 z!HGL|?4Z?OC@z>ppO+fmk zEDIk1FgrV2R8&O&@;qNwR)+h@$;nZx)dqvXVzG2}b>-#d_4oHa!G&Dp59OYMg zd;9A2I}{29&+|ObzkB!Y^XJcKjE;^*({SomlT)I^E^_90Q{xPG;bvU;38ml zcng&pTZhKxAmAX-{xuvUBO`bZu-omWrKK8;X6fkl>(@`5I6;GyySuwkDCBv*tE;QE zwH1kg)0Ijk1~{Qms8A@Vadob6a=9D}VUx-9>C-1l1S|^dcDq`w#&Z*k#hB*+K%>#n z=0$)zo8T)X1Ujc}V+Omw8!O@%0GKp7%(fp1ER{;7QYogYiHQlT)w*&q5{X2iP;Ak literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/site/images/logos/build-by-maven-white.png b/SpringBoot-Commons/target/site/images/logos/build-by-maven-white.png new file mode 100644 index 0000000000000000000000000000000000000000..7d44c9c2e5742bdf8649ad282f83208f1da9b982 GIT binary patch literal 2260 zcmV;_2rKuAP)4hTLUyOQ{PVbVY5&Y3g!&hN~bnR7}ZgkXUt ziC%zU0gf+&kEv>t|d$x|zXw1mS0D%1b{8z7DF%0wW-8(XBFc`A3vVI|O z^!N97baWg(eE86zLn4uA_wL=Zb@+UKU|=8sJb3V6XlSUctSl!dhm4xd=KJ^W|8h2q zR4NS%3yX+|NKQ`f?d=7Cf`Wo)&z=E5TU%REQIXYZefjbwRvsQ6zIyfQojZ3l8V#{v zv)R(q)39Vr2GBPsa+apV2%%fIZY3ln0Kl+1Y8c*(xe3X6sWFH9kH*UDDLl)ZN`}u~;f9D%P!A2LK5P2`MQl z(b3TuDUC++_U+qm01k;n!Z1u+TwGjS+}X2d^Yil+3Pn;B-~q z{Qdm_z{kf&EEb1^gw)j3R904!x}#RBj~+c578Vv16olc}xpQZGd;7k9`>@WHD_2M| z{%VB2fNVCK&1U^_rTW_bx`C@MK&%ZR^ybZ*=;&yb zN);0mV>X+~OA`|lRVtNAr7A8i#zL)DyJycHxm+$5izO0?QmM?$%p@6le0*H3R;yI1 z=;-LCrlu1oPI!8HIypHhmCA~Wig|;>WHON!GbSbmcN`jxhJ=GssnlpRR;zVzaF8J4 z>+3sJhW@0w{LH6-`(Afr<9kMWBXoSUM7Dox&JGJtojOI96z3EG z*uH)HWN?qO7x!`hzQnzLg5JL3Ui^ps%X$n4`+YK2S-yNZo>gC8kJmXUC#D?-i_a7IlwdR(Kkw#T>s)<( zJ!ZVTycREBO!{t;H9|r{F#q)FQ_`LjAsBnPnnKk2PZ;V3*7{M#@%jyBNObh|^_fg2 zd|f0I3eTTEPf=83VhUbHWgRft|{%MRRMp6H>seM7wV6&k5Vn7H0DDSDT_wn(;aaUDU zWi%QoiptK;CgqIWB$bwy78Mm?w@oI~&6_tPBO~$kExCLno}10)mX;RGM?^%-PjqOt zTFi(#=@4C7NJmxEVK7l6G0yhEp_Lq9)1fj}S-2%Mdrv$L~tStVt%xVSheDG9e5EX$6J zj8GIMm&=bIKaK;TqoYG05D0}r0!Kqb1E0?q2n1`_uAR{_f0E{OgnR$~y~Sd|+0n_# z2@6L?MsUQ^H0|QzLJoDKqobtlneyk|8`Sp{cp}PUC5RRQ^8?;2;Iss$eWk%*n3$Nr z(73v~e)3}s219#$yTM=(2n6o#?!LahxUO>?H!v`O%bZ*;$Ideh!!Qg0h{fVXix$lf i91DLtEx@rr0RIK2cl{g~?Z1Nn0000}s literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/site/images/logos/maven-feather.png b/SpringBoot-Commons/target/site/images/logos/maven-feather.png new file mode 100644 index 0000000000000000000000000000000000000000..b5ada836e9eb4af4db810f648b013933e72c8fbe GIT binary patch literal 3330 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 literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/site/images/newwindow.png b/SpringBoot-Commons/target/site/images/newwindow.png new file mode 100644 index 0000000000000000000000000000000000000000..6287f72bd08a870908e7361d98c35ee0d6dcbc82 GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^+(699!3-oX?^2ToQY`6?zK#qG>ra@ocD)4hB}-f* zN`mv#O3D+9QW+dm@{>{(JaZG%Q-e|yQz{EjrrH1%@dWsUxR#cd&SYTt4+aeuCvSob zD+%%o1`04ZXs!GLj7%Iec?BF2%&y2ZFfeUwWbk2P5nvW+xWT~4#-PT{uyM;F);OSv44$rjF6*2U FngH~|K)3(^ literal 0 HcmV?d00001 diff --git a/SpringBoot-Commons/target/test-classes/com/fancv/AppTest.class b/SpringBoot-Commons/target/test-classes/com/fancv/AppTest.class new file mode 100644 index 0000000000000000000000000000000000000000..13b8f85e359e482c83a9aa3f6f76ad50b0cd8bb0 GIT binary patch literal 465 zcmZvZy-ve06orq|lt2jdm!FPoEdw4pf{-F4rU)dcg2d*grgfFtRpONAVgfPn06Y}p zCau%~JY4786@nMj64q_n&% z7Gs%>#5ko+J2Ht#W09#+Z3n_ zMp;3i-b10STF6-Cib$c>#tN&9CQvgn*_6)v(Sec@X0aHTqNKa=^-asCuM0 z?Tq&N`8(KKW$#igZNSGK)nI*q)IKT7Os-Q64@p(S?gyOhuunGVNnCXP0UVH5;twlW IgQ|n(FDP1E&Hw-a literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceAspect.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceAspect.java new file mode 100644 index 0000000..1b7426e --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceAspect.java @@ -0,0 +1,62 @@ +package com.example.demo.datasource; + +import com.example.demo.utils.BaseUserDTO; +import com.example.demo.utils.UserContext; +import lombok.extern.slf4j.Slf4j; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Before; +import org.springframework.context.annotation.EnableAspectJAutoProxy; +import org.springframework.core.annotation.Order; +import org.springframework.stereotype.Component; + +/** + * 动态数据源切面拦截 + * + * @author 李嘉 + * @version 1.0 + * @Description 动态数据源切面拦截 + * @date 2020/5/19 00:29 + */ +@Slf4j +@Component +@Aspect +@Order(1) // 请注意:这里order一定要小于tx:annotation-driven的order,即先执行DynamicDataSourceAspectAdvice切面,再执行事务切面,才能获取到最终的数据源 +@EnableAspectJAutoProxy(proxyTargetClass = true) +public class DynamicDataSourceAspect { + //前置通知 + @Before(value="execution(* com.example.demo.service.impl.*.*(..))") + public void before(){ + System.out.println("前置通知"); + } + + @Around(value = "execution(* com.example.demo.service.impl.*.*(..))") + public Object doAround(ProceedingJoinPoint pjp) throws Throwable { + try { + BaseUserDTO user = UserContext.getUser(); + Integer r = user.getId(); + String nb = user.getUserNmae(); + DynamicDataSourceContextHolder.setDataSourceKey(nb); + } catch (Exception ex) { + ex.printStackTrace(); + } finally { + // DynamicDataSourceContextHolder.clearDataSourceKey(); + } + Object proceed = null; + try { +// 进行方法的执行 + proceed = pjp.proceed(); + System.out.println("方法返回时"); + } catch (Exception e) { + e.printStackTrace(); + System.out.println("方法异常时" + e); + }finally{ + System.out.println("后置方法"); + } + + //将方法执行的返回值返回 + return proceed; + } + +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceInit.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceInit.java new file mode 100644 index 0000000..ea73b8a --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/DynamicDataSourceInit.java @@ -0,0 +1,57 @@ +//package com.example.demo.datasource; +// +//import com.example.demo.model.TenantInfo; +//import com.example.demo.service.ITenantInfoService; +//import com.example.demo.utils.SpringContextUtils; +//import com.zaxxer.hikari.HikariDataSource; +//import lombok.extern.slf4j.Slf4j; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.context.annotation.Bean; +//import org.springframework.context.annotation.Configuration; +// +//import java.util.HashMap; +//import java.util.List; +//import java.util.Map; +// +///** +// * 动态数据源初始化 +// * +// * @author 李嘉 +// * @version 1.0 +// * @Description 动态数据源初始化 +// * @date 2020/5/19 00:08 +// */ +//@Slf4j +//@Configuration +//public class DynamicDataSourceInit { +// +// @Autowired +// private ITenantInfoService tenantInfoService; +// +// @Bean +// public void initDataSource() { +// log.info("======初始化动态数据源====="); +// DynamicDataSource dynamicDataSource = (DynamicDataSource) SpringContextUtils.getBean("dynamicDataSource"); +// HikariDataSource master = (HikariDataSource) SpringContextUtils.getBean("master"); +// Map dataSourceMap = new HashMap<>(); +// dataSourceMap.put("master", master); +// +// List tenantList = tenantInfoService.list(); +// for (TenantInfo tenantInfo : tenantList) { +// log.info(tenantInfo.toString()); +// HikariDataSource dataSource = new HikariDataSource(); +// dataSource.setDriverClassName(tenantInfo.getDatasourceDriver()); +// dataSource.setJdbcUrl(tenantInfo.getDatasourceUrl()); +// dataSource.setUsername(tenantInfo.getDatasourceUsername()); +// dataSource.setPassword(tenantInfo.getDatasourcePassword()); +// dataSource.setDataSourceProperties(master.getDataSourceProperties()); +// dataSourceMap.put(tenantInfo.getTenantId(), dataSource); +// } +// // 设置数据源 +// dynamicDataSource.setDataSources(dataSourceMap); +// /** +// * 必须执行此操作,才会重新初始化AbstractRoutingDataSource 中的 resolvedDataSources,也只有这样,动态切换才会起效 +// */ +// dynamicDataSource.afterPropertiesSet(); +// } +//} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/MybatisPlusConfig.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/MybatisPlusConfig.java new file mode 100644 index 0000000..b545aa2 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/datasource/MybatisPlusConfig.java @@ -0,0 +1,96 @@ +/* +package com.example.demo.datasource; + +import com.baomidou.mybatisplus.core.parser.ISqlParser; +import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean; +import org.apache.ibatis.plugin.Interceptor; +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.boot.jdbc.DataSourceBuilder; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; +import org.springframework.core.io.support.PathMatchingResourcePatternResolver; +import org.springframework.jdbc.datasource.DataSourceTransactionManager; +import org.springframework.transaction.PlatformTransactionManager; +import org.springframework.transaction.annotation.EnableTransactionManagement; + +import javax.sql.DataSource; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +*/ +/** + * MyBatisPlus配置 + * + * @author 李嘉 + * @version 1.0 + * @Description MyBatisPlus配置 + * @date 2020/5/18 23:50 + *//* + +@EnableTransactionManagement +@Configuration +@MapperScan({"com.example.demo.dao","com.example.demo.*.*.mapper"}) +public class MybatisPlusConfig { + + @Bean("master") + @Primary + @ConfigurationProperties(prefix = "spring.datasource.hikari") + public DataSource master() { + return DataSourceBuilder.create().build(); + } + + @Bean("dynamicDataSource") + public DataSource dynamicDataSource() { + DynamicDataSource dynamicDataSource = new DynamicDataSource(); + Map dataSourceMap = new HashMap<>(); + dataSourceMap.put("master", master()); + // 将 master 数据源作为默认指定的数据源 + dynamicDataSource.setDefaultDataSource(master()); + // 将 master 和 slave 数据源作为指定的数据源 + dynamicDataSource.setDataSources(dataSourceMap); + return dynamicDataSource; + } + + @Bean + public MybatisSqlSessionFactoryBean sqlSessionFactoryBean() throws Exception { + MybatisSqlSessionFactoryBean sessionFactory = new MybatisSqlSessionFactoryBean(); + */ +/** + * 重点,使分页插件生效 + *//* + + Interceptor[] plugins = new Interceptor[1]; + plugins[0] = paginationInterceptor(); + sessionFactory.setPlugins(plugins); + //配置数据源,此处配置为关键配置,如果没有将 dynamicDataSource作为数据源则不能实现切换 + sessionFactory.setDataSource(dynamicDataSource()); + // 扫描Model + sessionFactory.setTypeAliasesPackage("com.example.demo.*.*.entity,com.example.demo.model"); + PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); + // 扫描映射文件 + sessionFactory.setMapperLocations(resolver.getResources("classpath*:mapper/*.xml")); + return sessionFactory; + } + + @Bean + public PlatformTransactionManager transactionManager() { + // 配置事务管理, 使用事务时在方法头部添加@Transactional注解即可 + return new DataSourceTransactionManager(dynamicDataSource()); + } + + @Bean + public PaginationInterceptor paginationInterceptor() { + PaginationInterceptor paginationInterceptor = new PaginationInterceptor(); + + List sqlParserList = new ArrayList<>(); + // 攻击 SQL 阻断解析器、加入解析链 + sqlParserList.add(new BlockAttackSqlParser()); + paginationInterceptor.setSqlParserList(sqlParserList); + return paginationInterceptor; + } +} +*/ diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/CustomUtil.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/CustomUtil.java new file mode 100644 index 0000000..e0e35e8 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/CustomUtil.java @@ -0,0 +1,228 @@ +package com.example.demo.utils; + +import javax.servlet.http.HttpServletRequest; +import java.math.BigDecimal; +import java.net.InetAddress; +import java.net.UnknownHostException; +import java.util.UUID; +import java.util.regex.Pattern; + +/** + * 自定义工具类 + * + * @author 李嘉 + * @version 1.0 + * @Description 自定义工具类 + * @date 2019/1/8 17:50 + */ +public class CustomUtil { + + /** + * 生成ID,默认小写并且去掉横杆 + * + * @return + */ + public static String GenerateID() { + return GenerateID(false); + } + + /** + * 生成空的字符串。32位0字符串 + * + * @return + */ + public static String GenerateNullID() { + String result = ""; + // 保留num的位数 + // 0 代表前面补充0 + // num 代表长度为4 + // d 代表参数为正数型 + result = String.format("%032d", 0); + + return result; + } + + /** + * 生成ID,默认小写 + * + * @param isHorizontaLine 是否需要横线 + * @return + */ + public static String GenerateID(Boolean isHorizontaLine) { + String tmpId = ""; + if (isHorizontaLine) { + tmpId = UUID.randomUUID().toString(); + } else { + tmpId = UUID.randomUUID().toString().replaceAll("-", ""); + } + return tmpId; + } + + /** + * 生成ID + * + * @param isHorizontaLine 是否需要横线 + * @param isUpper 是否需要大写 + * @return + */ + public static String GenerateID(Boolean isHorizontaLine, Boolean isUpper) { + String tmpId = ""; + if (isHorizontaLine) { + tmpId = UUID.randomUUID().toString(); + } else { + tmpId = GenerateID(false); + } + if (isUpper) { + tmpId = tmpId.toUpperCase(); + } + return tmpId; + } + + /** + * 获取用户真实IP地址,不使用request.getRemoteAddr()的原因是有可能用户使用了代理软件方式避免真实IP地址, + * 可是,如果通过了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP值 + * + * @return ip + */ + public static String GetIPAddress(HttpServletRequest request) { + String ip = request.getHeader("x-forwarded-for"); + System.out.println("x-forwarded-for ip: " + ip); + if (ip != null && ip.length() != 0 && !"unknown".equalsIgnoreCase(ip)) { + // 多次反向代理后会有多个ip值,第一个ip才是真实ip + if (ip.indexOf(",") != -1) { + ip = ip.split(",")[0]; + } + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("Proxy-Client-IP"); + System.out.println("Proxy-Client-IP ip: " + ip); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("WL-Proxy-Client-IP"); + System.out.println("WL-Proxy-Client-IP ip: " + ip); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("HTTP_CLIENT_IP"); + System.out.println("HTTP_CLIENT_IP ip: " + ip); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("HTTP_X_FORWARDED_FOR"); + System.out.println("HTTP_X_FORWARDED_FOR ip: " + ip); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("X-Real-IP"); + System.out.println("X-Real-IP ip: " + ip); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getRemoteAddr(); + System.out.println("getRemoteAddr ip: " + ip); + } + System.out.println("获取客户端ip: " + ip); + return ip; + } + + /** + * 获取真实IP地址 + * + * @param request + * @return + */ + public static String GetIPAddressByInetAddress(HttpServletRequest request) { + String ipAddress = null; + try { + ipAddress = request.getHeader("x-forwarded-for"); + if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getHeader("Proxy-Client-IP"); + } + if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getHeader("WL-Proxy-Client-IP"); + } + if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getRemoteAddr(); + if (ipAddress.equals("127.0.0.1")) { + // 根据网卡取本机配置的IP + InetAddress inet = null; + try { + inet = InetAddress.getLocalHost(); + } catch (UnknownHostException e) { + e.printStackTrace(); + } + ipAddress = inet.getHostAddress(); + } + } + // 对于通过多个代理的情况,第一个IP为客户端真实IP,多个IP按照','分割 + if (ipAddress != null && ipAddress.length() > 15) { // "***.***.***.***".length() + // = 15 + if (ipAddress.indexOf(",") > 0) { + ipAddress = ipAddress.substring(0, ipAddress.indexOf(",")); + } + } + } catch (Exception e) { + ipAddress = ""; + } + // ipAddress = this.getRequest().getRemoteAddr(); + + return ipAddress; + } + + + /** + * 不够位数的在前面补0,保留num的长度位数字 + * + * @param code + * @return + */ + public static String AutoGenericCode(String code, int num) { + String result = ""; + // 保留num的位数 + // 0 代表前面补充0 + // num 代表长度为4 + // d 代表参数为正数型 + result = String.format("%0" + num + "d", Integer.parseInt(code) + 1); + + return result; + } + + /** + * 字节大小转KB + * + * @param size 字节大小 + * @return + */ + public static double SizeBToKB(long size) { + if (size <= 0) return 0; + return new BigDecimal(size / 1024).setScale(2, BigDecimal.ROUND_DOWN).doubleValue(); + } + + /** + * 去掉多余的0 + * + * @param tmp + * @return + */ + public static String trimLeftZero(String tmp) { + return tmp.replaceAll("^(0+)", ""); + } + + /** + * decimal的值比较 + * + * @param comparativeValue 比较的值,比如数据库取中的值 + * @param beginComparativeValue 被比较的值, 如0、1、2之类的 + * @return + */ + public static Integer decimalCompare(BigDecimal comparativeValue, BigDecimal beginComparativeValue) { + Integer result = comparativeValue.compareTo(beginComparativeValue); + return result; + } + + /** + * 是否是小数 + * + * @param str + * @return + */ + public static boolean isDecimal(String str) { + return Pattern.compile("^[+-]?(0|([1-9]\\d*))(\\.\\d+)?$").matcher(str).find(); + } +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/DateUtil.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/DateUtil.java new file mode 100644 index 0000000..dc83f6c --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/DateUtil.java @@ -0,0 +1,993 @@ +/* +package com.example.demo.utils; + +import org.joda.time.DateTime; +import org.joda.time.DateTimeZone; +import org.joda.time.Days; +import org.joda.time.LocalDate; +import org.joda.time.format.DateTimeFormat; +import org.joda.time.format.DateTimeFormatter; + +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +*/ +/** + * 日期工具 + *//* + +public class DateUtil { + + public static final long ONE_HOUR_TIME_LONG = 3600000; + + */ +/** + * 年(yyyy) + *//* + + public static final String YEAR = "yyyy"; + + */ +/** + * 年-月(yyyy-MM) + *//* + + public static final String YEAR_MONTH = "yyyy-MM"; + + */ +/** + * 年-月-日(yyyy-MM-dd) + *//* + + public static final String YEAR_MONTH_DAY = "yyyy-MM-dd"; + + */ +/** + * 年月日(yyyyMMdd) + *//* + + public static final String YEAR_MONTH_DAY_SIMPLE = "yyyyMMdd"; + + */ +/** + * 年-月-日 小时(yyyy-MM-dd HH) + *//* + + public static final String YEAR_MONTH_DAY_HOUR = "yyyy-MM-dd HH"; + + */ +/** + * 年-月-日 小时(yyyy-MM-dd HH)中文输出 + *//* + + public static final String YEAR_MONTH_DAY_HOUR_CN = "yyyy年MM月dd日HH时"; + + */ +/** + * 年-月-日 小时:分钟(yyyy-MM-dd HH:mm) + *//* + + public static final String YEAR_MONTH_DAY_HOUR_MINUTE = "yyyy-MM-dd HH:mm"; + + */ +/** + * 年-月-日 小时:分钟:秒钟(yyyy-MM-dd HH:mm:ss) + *//* + + public static final String YEAR_MONTH_DAY_HOUR_MINUTE_SECOND = "yyyy-MM-dd HH:mm:ss"; + + */ +/** + * 年月日小时分钟秒钟(yyyyMMddHHmmss) + *//* + + public static final String YEAR_MONTH_DAY_HOUR_MINUTE_SECOND_SIMPLE = "yyyyMMddHHmmss"; + + */ +/** + * 小时:分钟:秒钟(HH:mm:ss) + *//* + + public static final String HOUR_MINUTE_SECOND = "HH:mm:ss"; + + */ +/** + * 小时:分钟(HH:mm) + *//* + + public static final String HOUR_MINUTE = "HH:mm"; + + */ +/** + * 月.日(M.d) + *//* + + public static final String MONTH_DAY = "M.d"; + public static final String REG_EXP_DATE = "^((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29))\\s+([0-1]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$"; + */ +/** + * 一天的秒数 + *//* + + private static final int DAY_SECOND = 24 * 60 * 60; + */ +/** + * 一小时的秒数 + *//* + + private static final int HOUR_SECOND = 60 * 60; + */ +/** + * 一分钟的秒数 + *//* + + private static final int MINUTE_SECOND = 60; + + public DateUtil() { + System.setProperty("user.timezone", "Asia/Shanghai"); + } + + */ +/** + * 获取当前时间 + * + * @return 返回当前时间 + *//* + + public static Date getCurrent() { + return new Date(); + } + + */ +/** + * 获取当前时间并格式化 + * + * @return 返回当前时间 + *//* + + public static String getCurrentDate(String format) { + Date d = new Date(); + SimpleDateFormat sdf = new SimpleDateFormat(format); + return sdf.format(d); + } + + */ +/** + * 获取下个月时间并格式化 + * + * @return 返回当前时间 + *//* + + public static String getNextDate(String format) { + Calendar cal = Calendar.getInstance(); + cal.add(Calendar.MONTH, 1); + SimpleDateFormat dft = new SimpleDateFormat(format); + String preMonth = dft.format(cal.getTime()); + return preMonth; + } + + */ +/** + * 格式化日期时间 + * + * @param date Date对象 + * @param pattern 模式 + * @return 格式化后的日期时间字符串 + *//* + + public static String format(Date date, String pattern) { + if (date == null) + return ""; + return new DateTime(date).toString(pattern); + } + + */ +/** + * 格式化日期时间字符串 + * + * @param dateString 日期时间字符串 + * @param pattern 模式 + * @return Date对象 + *//* + + public static Date formatDateString(String dateString, String pattern) { + try { + DateTimeFormatter dateTimeFormatter = DateTimeFormat.forPattern(pattern); + return dateTimeFormatter.parseDateTime(dateString).toDate(); + } catch (Exception e) { + return null; + } + } + + */ +/** + * 根据秒数获得x天x小时x分钟x秒字符串 + * + * @param second 秒数 + * @return x天x小时x分钟x秒字符串 + *//* + + public static String getDayHourMinuteSecond(int second) { + if (second == 0) { + return "0秒"; + } + StringBuilder sb = new StringBuilder(); + int days = second / DAY_SECOND; + if (days > 0) { + sb.append(days); + sb.append("天"); + second -= days * DAY_SECOND; + } + + int hours = second / HOUR_SECOND; + if (hours > 0) { + sb.append(hours); + sb.append("小时"); + second -= hours * HOUR_SECOND; + } + + int minutes = second / MINUTE_SECOND; + if (minutes > 0) { + sb.append(minutes); + sb.append("分钟"); + second -= minutes * MINUTE_SECOND; + } + if (second > 0) { + sb.append(second); + sb.append("秒"); + } + return sb.toString(); + } + + */ +/** + * 根据秒数获得x天x小时x分钟字符串 + * + * @param second 秒数 + * @return x天x小时x分钟字符串 + *//* + + public static String getDayHourMinute(int second) { + if (second == 0) { + return "0分钟"; + } + StringBuilder sb = new StringBuilder(); + int days = second / DAY_SECOND; + if (days > 0) { + sb.append(days); + sb.append("天"); + second -= days * DAY_SECOND; + } + + int hours = second / HOUR_SECOND; + if (hours > 0) { + sb.append(hours); + sb.append("小时"); + second -= hours * HOUR_SECOND; + } + int minutes = second / MINUTE_SECOND; + if (minutes > 0) { + sb.append(minutes); + sb.append("分钟"); + } + return sb.toString(); + } + + */ +/** + * 获取只含有年月日的DateTime对象 + * + * @param dateTime DateTime对象 + * @return 只含有年月日的DateTime对象 + *//* + + public static DateTime getDateOnly(DateTime dateTime) { + return new DateTime(dateTime.toString(YEAR_MONTH_DAY)); + } + + */ +/** + * 获取当前周的周一和下周一 + * + * @return 日期数组(索引0为周一,索引1为下周一) + *//* + + public static Date[] getMondayAndNextMonday() { + DateTime dateTime = getDateOnly(new DateTime()); + DateTime monday = dateTime.dayOfWeek().withMinimumValue(); + DateTime nextMonday = monday.plusDays(7); + return new Date[]{monday.toDate(), nextMonday.toDate()}; + } + + */ +/** + * 获取指定时间的周一和周日 + * + * @param dateTime DateTime对象 + * @return 日期数组(索引0为周一,索引1为周日) + *//* + + public static Date[] getMondayAndSunday(DateTime dateTime) { + dateTime = getDateOnly(dateTime); + DateTime monday = dateTime.dayOfWeek().withMinimumValue(); + DateTime sunday = monday.plusDays(6); + return new Date[]{monday.toDate(), sunday.toDate()}; + } + + */ +/** + * 和当前时间相比的天数差(正数为大于天数,负数为小于天数,零为同一天) + * + * @param date Date对象 + * @return 和当前时间相比的天数差 + *//* + + public static int compareDaysWithNow(Date date) { + return Days.daysBetween(new DateTime(), new DateTime(date)).getDays(); + } + + */ +/** + * 和今天相比的天数差(正数为大于天数,负数为小于天数,零为同一天) + * + * @param date Date对象 + * @return 和今天相比的天数差 + *//* + + public static int compareDaysWithToday(Date date) { + DateTime today = new DateTime(); + today = new DateTime(today.getYear(), today.getMonthOfYear(), today.getDayOfMonth(), 0, 0, 0, 0); + DateTime compareDay = new DateTime(date); + compareDay = new DateTime(compareDay.getYear(), compareDay.getMonthOfYear(), compareDay.getDayOfMonth(), 0, 0, 0, 0); + return Days.daysBetween(today, compareDay).getDays(); + } + + */ +/** + * 比较时间a到时间b的天数差 + * + * @param a 时间a + * @param b 时间b + * @return 相差天数 + *//* + + public static int compareDaysWithDay(Date a, Date b) { + DateTime today = new DateTime(b); + today = new DateTime(today.getYear(), today.getMonthOfYear(), today.getDayOfMonth(), 0, 0, 0, 0); + DateTime compareDay = new DateTime(a); + compareDay = new DateTime(compareDay.getYear(), compareDay.getMonthOfYear(), compareDay.getDayOfMonth(), 0, 0, 0, 0); + return Days.daysBetween(today, compareDay).getDays(); + } + + */ +/** + * 比较两个时间是否相等(省略毫秒) + * + * @param date Date对象 + * @param compareDate 比较Date对象 + * @return 是否相等 + *//* + + public static boolean compareDateIgnoreMillisecond(Date date, Date compareDate) { + if (date == null && compareDate == null) { + return true; + } else if (date == null && compareDate != null) { + return false; + } else if (date != null && compareDate == null) { + return false; + } + + return (date.getTime() / 1000 == compareDate.getTime() / 1000); + } + + */ +/** + * 根据秒数获取天数 + * + * @param second 秒数 + * @return 天数 + *//* + + public static int getDay(int second) { + return second / DAY_SECOND; + } + + */ +/** + * 获取和今天相比的日期字符串 + * + * @param date Date对象 + * @return 和今天相比的日期字符串 + *//* + + public static String getCompareWithTodayDateString(Date date) { + int days = Math.abs(DateUtil.compareDaysWithToday(date)); + String dateString = ""; + if (days == 0) { + dateString = "今天"; + } else if (days == 1) { + dateString = "昨天"; + } else if (days == 2) { + dateString = "2天前"; + } else if (days == 3) { + dateString = "3天前"; + } else if (days == 4) { + dateString = "4天前"; + } else if (days == 5) { + dateString = "5天前"; + } else if (days == 6) { + dateString = "6天前"; + } else if (days > 6 && days <= 14) { + dateString = "1周前"; + } else if (days > 14 && days <= 21) { + dateString = "2周前"; + } else if (days > 21 && days <= 30) { + dateString = "3周前"; + } else if (days > 30) { + dateString = "1月前"; + } else if (days > 365) { + dateString = "1年前"; + } else if (days > 365 * 3) { + dateString = "3年前"; + } + return dateString; + } + + */ +/** + * 比较两个时间相差分钟数 + * + * @param now 当前时间 + * @param compareDate 比较时间 + * @return 相差分钟数 + *//* + + public static int compareMinutes(Date now, Date compareDate) { + return (int) (now.getTime() - compareDate.getTime()) / 60000; + } + + */ +/** + * 比较时间是本月的第几天 + * + * @param date + * @return + *//* + + public static int getDayOfMonth(Date date) { + DateTime dateTime = new DateTime(date); + return dateTime.getDayOfMonth(); + } + + */ +/** + * 计算当月有几天 + * + * @param date + * @return + *//* + + public static int getDateOfMonth(Date date) { + DateTime dateTime = new DateTime(date); + return dateTime.dayOfMonth().getMaximumValue(); + } + + */ +/** + * 指定时间,判断该时间到现在时间的年数 + * + * @param date 指定时间 + * @return 到现在时间的年数 + *//* + + public static int compareYear(Date date) { + DateTime btd = new DateTime(date); + DateTime nowDate = new DateTime(); + int year = 0; + if (nowDate.getMonthOfYear() > btd.getMonthOfYear()) { + year = nowDate.getYear() - btd.getYear(); + } else if (nowDate.getMonthOfYear() < btd.getMonthOfYear()) { + year = nowDate.getYear() - btd.getYear() - 1; + } else if (nowDate.getMonthOfYear() == btd.getMonthOfYear()) { + if (nowDate.getDayOfMonth() >= btd.getDayOfMonth()) { + year = nowDate.getYear() - btd.getYear(); + } else { + year = nowDate.getYear() - btd.getYear() - 1; + } + } + return year; + } + + */ +/** + * 判断2个时间的时间差 返回字符串形式 + * + * @param date 要对比的字符串 + * @param date2 要对比的字符串 + * @return 字符串形式 如1小时 ,2天2小时 + *//* + + public static String compareDaysWithDate(Date date, Date date2) { + StringBuilder msg = new StringBuilder(); + int minutes = (int) Math.abs((date.getTime() - date2.getTime()) / 60000); + if (minutes / 60 > 0 && minutes / 60 / 24 <= 0) { + msg.append(minutes / 60 + "小时"); + } + if (minutes / 60 / 24 > 0) { + msg.append(minutes / 60 / 24 + "天"); + msg.append(minutes / 60 % 24 + "小时"); + } + return msg.toString(); + } + + */ +/** + * 自动解析多种格式的时间字符串为时间对象
+ * 支持格式为:yyyy-MM-dd HH:mm:ss 支持多种分隔符,以及多种日期精度。 如yyyy年MM月。 HH时mm分ss秒 + * + * @param dateString 时间字符串
+ * @return 格式正确则返回对应的java.util.Date对象 格式错误返回null + *//* + + public static Date formatUnknownString2Date(String dateString) { + try { + if (StringUtil.isEmpty(dateString)) { + return null; + } + dateString = dateString.replace("T", " "); + String hms = "00:00:00"; + dateString = dateString.trim(); + if (dateString.contains(" ")) { + // 截取时分秒 + hms = dateString.substring(dateString.indexOf(" ") + 1); + // 重置日期 + dateString = dateString.substring(0, dateString.indexOf(" ")); + // 多中分隔符的支持 + hms = hms.replace(":", ":"); + hms = hms.replace("时", ":"); + hms = hms.replace("分", ":"); + hms = hms.replace("秒", ":"); + hms = hms.replace("-", ":"); + hms = hms.replace("-", ":"); + // 时间不同精确度的支持 + if (hms.endsWith(":")) { + hms = hms.substring(0, hms.length() - 1); + } + if (hms.split(":").length == 1) { + hms += ":00:00"; + } + if (hms.split(":").length == 2) { + hms += ":00"; + } + } + String[] hmsarr = hms.split(":"); + // 不同日期分隔符的支持 + dateString = dateString.replace(".", "-"); + dateString = dateString.replace("/", "-"); + dateString = dateString.replace("-", "-"); + dateString = dateString.replace("年", "-"); + dateString = dateString.replace("月", "-"); + dateString = dateString.replace("日", ""); + // 切割年月日 + String yearStr, monthStr, dateStr; + // 截取日期 + String[] ymd = dateString.split("-"); + // 判断日期精确度 + yearStr = ymd[0]; + monthStr = ymd.length > 1 ? ymd[1] : ""; + dateStr = ymd.length > 2 ? ymd[2] : ""; + monthStr = monthStr == "" ? Integer.toString(1) : monthStr; + dateStr = dateStr == "" ? Integer.toString(1) : dateStr; + String dtr = (yearStr + "-" + monthStr + "-" + dateStr + " " + hms); + if (!dtr.matches(REG_EXP_DATE)) + return null; + // 返回日期 + return new DateTime(Integer.parseInt(yearStr.trim()), Integer.parseInt(monthStr.trim()), Integer.parseInt(dateStr.trim()), Integer.parseInt(hmsarr[0].trim()), Integer.parseInt(hmsarr[1].trim()), Integer.parseInt(hmsarr[2].trim()), 0).toDate(); + } catch (Exception e) { + return null; + } + } + + */ +/** + * 解析多个时间,指定时间之间的分隔符和时间的格式符 分隔符不能与格式符相同 + * + * @param dateString 传入一个时间段字符串 + * @param spaceChar 指定格式符 + * @param splitChar 指定分隔符 + * @return 格式正确返回分割后的时间对象数组 格式错误返回null
+ * 指定了格式符为. 分隔符为- 返回值为 时间长度为2的Date类型数组
+ * 时间转换的方式详见 {@link DateTimeUtils#formatUnknownString2Date(String dateString)} + *//* + + public static Date[] formatDatesByString(String dateString, String spaceChar, String splitChar) { + if (spaceChar.equals(splitChar)) { + return null; + } + String[] dateStrs = dateString.split(splitChar); + Date[] dates = new Date[dateStrs.length]; + for (int i = 0, size = dateStrs.length; i < size; i++) { + dates[i] = formatUnknownString2Date(dateStrs[i]); + } + return dates; + } + + */ +/** + * 身份证号转生日 + * + * @param identityCard 身份证 + * @return 生日 + *//* + + public static Date identityCard2Date(String identityCard) { + try { + String dateStr; + if (identityCard.length() == 18) { + dateStr = identityCard.substring(6, 14);// 截取18位身份证身份证中生日部分 + return formatDateString(dateStr, "yyyyMMdd"); + } + if (identityCard.length() == 15) { + dateStr = identityCard.substring(6, 12);// 截取15位身份证中生日部分 + return formatDateString(dateStr, "yyMMdd"); + } + return null; + } catch (Exception e) { + return null; + } + } + + public static boolean validDate(String str) { + try { + Date date = formatUnknownString2Date(str); + return date != null; + } catch (Exception e) { + return false; + } + } + + */ +/** + * 根据周数,获取开始日期、结束日期 + * + * @param week 周期 0本周,-1上周,-2上上周,1下周,2下下周 + * @return 返回date[0]开始日期、date[1]结束日期 + *//* + + public static Date[] getWeekStartAndEnd(int week) { + DateTime dateTime = new DateTime(); + LocalDate date = new LocalDate(dateTime.plusWeeks(week)); + + date = date.dayOfWeek().withMinimumValue(); + Date beginDate = date.toDate(); + Date endDate = date.plusDays(6).toDate(); + return new Date[]{beginDate, endDate}; + } + + */ +/** + * 对日期的【秒】进行加/减 + * + * @param date 日期 + * @param seconds 秒数,负数为减 + * @return 加/减几秒后的日期 + *//* + + public static Date addDateSeconds(Date date, int seconds) { + DateTime dateTime = new DateTime(date); + return dateTime.plusSeconds(seconds).toDate(); + } + + */ +/** + * 对日期的【分钟】进行加/减 + * + * @param date 日期 + * @param minutes 分钟数,负数为减 + * @return 加/减几分钟后的日期 + *//* + + public static Date addDateMinutes(Date date, int minutes) { + DateTime dateTime = new DateTime(date); + return dateTime.plusMinutes(minutes).toDate(); + } + + */ +/** + * 对日期的【小时】进行加/减 + * + * @param date 日期 + * @param hours 小时数,负数为减 + * @return 加/减几小时后的日期 + *//* + + public static Date addDateHours(Date date, int hours) { + DateTime dateTime = new DateTime(date); + return dateTime.plusHours(hours).toDate(); + } + + */ +/** + * 对日期的【天】进行加/减 + * + * @param date 日期 + * @param days 天数,负数为减 + * @return 加/减几天后的日期 + *//* + + public static Date addDateDays(Date date, int days) { + DateTime dateTime = new DateTime(date); + return dateTime.plusDays(days).toDate(); + } + + */ +/** + * 对日期的【周】进行加/减 + * + * @param date 日期 + * @param weeks 周数,负数为减 + * @return 加/减几周后的日期 + *//* + + public static Date addDateWeeks(Date date, int weeks) { + DateTime dateTime = new DateTime(date); + return dateTime.plusWeeks(weeks).toDate(); + } + + */ +/** + * 对日期的【月】进行加/减 + * + * @param date 日期 + * @param months 月数,负数为减 + * @return 加/减几月后的日期 + *//* + + public static Date addDateMonths(Date date, int months) { + DateTime dateTime = new DateTime(date); + return dateTime.plusMonths(months).toDate(); + } + + */ +/** + * 对日期的【年】进行加/减 + * + * @param date 日期 + * @param years 年数,负数为减 + * @return 加/减几年后的日期 + *//* + + public static Date addDateYears(Date date, int years) { + DateTime dateTime = new DateTime(date); + return dateTime.plusYears(years).toDate(); + } + + public static String toString(Date date, String format) { + String dateStr = null; + try { + SimpleDateFormat sdf = new SimpleDateFormat(format); + dateStr = sdf.format(date); + } catch (Exception e) { + } + return dateStr; + } + + public static Date parseDate(String dateStr, String format) { + Date date = null; + try { + SimpleDateFormat sdf = new SimpleDateFormat(format); + date = sdf.parse(dateStr); + } catch (Exception e) { + } + return date; + } + + */ +/** + * 获取日期当天的最小时间日期,0点 + *//* + + public static Date getMinTimeDateByDate(Date date) { + if (date == null) + return null; + String datestr = toString(date, "yyyyMMdd"); + return parseDate(datestr, "yyyyMMdd"); + } + + */ +/** + * 获取日期当天的最大时间日期,12点整 + *//* + + public static Date getMaxTimeDateByDate(Date date) { + if (date == null) + return null; + String datestr = toString(date, "yyyyMMdd"); + Date d = parseDate(datestr, "yyyyMMdd"); + return new Date(d.getTime() + 24L * 60L * 60L * 1000L - 1L); + } + + public static long subTime(Date startDate, Date endDate) { + return endDate.getTime() - startDate.getTime(); + } + + */ +/** + * 获取上月第一天最早时间 + * + * @return Date + *//* + + public static Date getLastMonthFirstDay() { + Calendar cal_1 = Calendar.getInstance();// 获取当前日期 + cal_1.setTime(getMinTimeDateByDate(new Date())); + cal_1.add(Calendar.MONTH, -1); + cal_1.set(Calendar.DAY_OF_MONTH, 1); + return cal_1.getTime(); + } + + */ +/** + * 获取上月最后一天最晚时间 + * + * @return Date + *//* + + public static Date getLastMonthLastDay() { + Calendar cale = Calendar.getInstance(); + cale.setTime(getMinTimeDateByDate(new Date())); + cale.add(Calendar.MONTH, -1); + cale.set(Calendar.DAY_OF_MONTH, cale.getActualMaximum(Calendar.DAY_OF_MONTH)); + return new Date(cale.getTime().getTime() + 1000L * 60L * 60L * 24L - 1L); + } + + */ +/** + * 获取本月第一天最早时间 + * + * @return Date + *//* + + public static Date getNowMonthFirstDay() { + Calendar cal_1 = Calendar.getInstance();// 获取当前日期 + cal_1.setTime(getMinTimeDateByDate(new Date())); + cal_1.add(Calendar.MONTH, 0); + cal_1.set(Calendar.DAY_OF_MONTH, 1); + return cal_1.getTime(); + } + + */ +/** + * 获取本月最后一天最晚时间 + * + * @return Date + *//* + + public static Date getNowMonthLastDay() { + Calendar cale = Calendar.getInstance(); + cale.setTime(getMinTimeDateByDate(new Date())); + cale.set(Calendar.DAY_OF_MONTH, cale.getActualMaximum(Calendar.DAY_OF_MONTH)); + return new Date(cale.getTime().getTime() + 1000L * 60L * 60L * 24L - 1L); + } + + */ +/** + * 获取本月最后一天 + * + * @return Date + *//* + + public static Date getTheMonthLastDay(Date date) { + if (date == null) { + return null; + } + Calendar cale = Calendar.getInstance(); + cale.setTime(date); + cale.set(Calendar.DAY_OF_MONTH, cale.getActualMaximum(Calendar.DAY_OF_MONTH)); + cale.set(Calendar.HOUR, 0); + cale.set(Calendar.HOUR_OF_DAY, 0); + cale.set(Calendar.MINUTE, 0); + cale.set(Calendar.SECOND, 0); + cale.set(Calendar.MILLISECOND, 0); + return cale.getTime(); + } + + */ +/** + * 获取格式化的时间,默认是yyyy-MM-dd HH:mm:ss此格式 + * + * @return + *//* + + public static String GetFormatTime() { + DateTime dateTime = new DateTime().withZone(DateTimeZone.forID("Asia/Shanghai")).toLocalDateTime().toDateTime(); + try { + return dateTime.toString("yyyy-MM-dd HH:mm:ss"); + } catch (Exception ex) { + ex.printStackTrace(); + return dateTime.toString(); + } + } + + */ +/** + * 获取格式化的时间 + * + * @param formatter 时间格式化字符串 + * @return + *//* + + public static String GetFormatTime(String formatter) { + DateTime dateTime = new DateTime().withZone(DateTimeZone.forID("Asia/Shanghai")).toLocalDateTime().toDateTime(); + try { + return dateTime.toString(formatter); + } catch (Exception ex) { + ex.printStackTrace(); + return dateTime.toString("yyyy-MM-dd HH:mm:ss"); + } + } + + */ +/** + * 获取格式化的时间字符串 + * + * @param formatTime 自定义时间 + * @param formatter 格式化规则 + * @return + *//* + + public static String GetFormatTime(Date formatTime, String formatter) { + SimpleDateFormat sdf = new SimpleDateFormat(formatter); + try { + return sdf.format(formatTime); + } catch (Exception ex) { + return GetFormatTime(formatter); + } + } + + */ +/** + * 短时间变长时间 + * + * @param tmp 格式:20190301 + * @return + *//* + + public static String sortTimeToLongTime(String tmp) { + return tmp.substring(0, 4) + "-" + tmp.substring(4, 6) + "-" + tmp.substring(6, 8); + } + + */ +/** + * 判断时间是否符合对比度 + * + * @param month 要比对的月份 + * @param limitMonth 要获取当前时间的前几个月或后几个月的偏移量 + * @param days 要对比的天数 + * @return 返回结果,0、不做任何操作,1、月份和天数都在可操作范围,2、月份在可操作范围 + *//* + + */ +/*public static Integer compares(String month, Integer limitMonth, Integer days) { + if (StringUtil.isEmpty(month)) { + return 0; + } + RemindDateUtils remindDateUtils = new RemindDateUtils(); + String limitMonths = GetFormatTime(remindDateUtils.getBeforeMonth(limitMonth), "MM"); + String day = GetFormatTime("dd"); + if (Integer.parseInt(month) >= Integer.parseInt(limitMonths)) { + if (Integer.parseInt(month) == Integer.parseInt(limitMonths)) { + if (Integer.parseInt(day) <= days) { + return 1; + } + } else if (Integer.parseInt(month) > Integer.parseInt(limitMonths)) { + return 2; + } + } + return 0; + }*//* + + +} +*/ diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/MyGenerate.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/MyGenerate.java new file mode 100644 index 0000000..03c768d --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/MyGenerate.java @@ -0,0 +1,103 @@ +/* +package com.example.demo.utils; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.core.toolkit.StringPool; +import com.baomidou.mybatisplus.generator.AutoGenerator; +import com.baomidou.mybatisplus.generator.InjectionConfig; +import com.baomidou.mybatisplus.generator.config.*; +import com.baomidou.mybatisplus.generator.config.po.TableInfo; +import com.baomidou.mybatisplus.generator.config.rules.DateType; +import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; +import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine; + +import java.util.ArrayList; +import java.util.List; + +*/ +/** + * 生成工具 + * + * @author lijia + * @version 1.0 + * @Description 生成工具 + * @date 2020/1/8 14:25 星期三 + *//* + +public class MyGenerate { + + */ +/** + * RUN THIS + *//* + + public static void main(String[] args) { + // 代码生成器 + AutoGenerator mpg = new AutoGenerator(); + + // 全局配置/Users/lijia/code/java/V2019/sdpc/sdpc-gateway + GlobalConfig gc = new GlobalConfig(); + String projectPath = System.getProperty("user.dir"); + gc.setOutputDir("/Users/lijia/IdeaProjects/demo/src/main/java"); + gc.setAuthor("Lij"); + gc.setOpen(false); + gc.setSwagger2(false); + gc.setActiveRecord(true); + gc.setIdType(IdType.ID_WORKER_STR); + gc.setFileOverride(true); + gc.setDateType(DateType.ONLY_DATE); + mpg.setGlobalConfig(gc); + + // 数据源配置 + DataSourceConfig dsc = new DataSourceConfig(); + dsc.setDbType(DbType.MYSQL); + dsc.setUrl("jdbc:mysql://127.0.0.1:3306/test?serverTimezone=Asia/Shanghai&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull"); + dsc.setDriverName("com.mysql.cj.jdbc.Driver"); + dsc.setUsername("root"); + dsc.setPassword("spring"); + mpg.setDataSource(dsc); + + // 包配置 + PackageConfig pc = new PackageConfig(); + pc.setParent("com.example.demo"); + pc.setMapper("dao"); + pc.setEntity("model"); + mpg.setPackageInfo(pc); + + // 自定义配置 + InjectionConfig cfg = new InjectionConfig() { + @Override + public void initMap() { + // to do nothing + } + }; + List focList = new ArrayList<>(); + focList.add(new FileOutConfig("/templates/mapper.xml.ftl") { + @Override + public String outputFile(TableInfo tableInfo) { + // 自定义输入文件名称 + return "/Users/lijia/IdeaProjects/demo/src/main/resources/mapper/" + tableInfo.getEntityName() + "Mapper" + StringPool.DOT_XML; + } + }); + cfg.setFileOutConfigList(focList); + mpg.setCfg(cfg); + mpg.setTemplate(new TemplateConfig().setXml(null)); + + // 策略配置 + StrategyConfig strategy = new StrategyConfig(); + strategy.setCapitalMode(false); + strategy.setNaming(NamingStrategy.underline_to_camel); + strategy.setColumnNaming(NamingStrategy.underline_to_camel); + strategy.setEntityLombokModel(true); + strategy.setInclude("people_config"); + // TODO 数据库Id为大写时,此时填写小写id,如果数据库为小写id,此时填写大写Id + strategy.setSuperEntityColumns("id"); +// strategy.setLogicDeleteFieldName("Status"); + mpg.setStrategy(strategy); + // 选择 freemarker 引擎需要指定如下加,注意 pom 依赖必须有! + mpg.setTemplateEngine(new FreemarkerTemplateEngine()); + mpg.execute(); + } +} +*/ diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/ResultEnum.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/ResultEnum.java new file mode 100644 index 0000000..9c01a08 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/ResultEnum.java @@ -0,0 +1,113 @@ +package com.example.demo.utils; + +/** + * 返回结果枚举 + * + * @author 李嘉 + * @version 1.0 + * @Description 返回结果枚举 + * @date 2019/1/8 15:24 + */ +public enum ResultEnum { + + /** + * 无操作 + */ + None("无操作", 0), + + /** + * 成功 + */ + Success("成功", 10200), + + /** + * 失败 + */ + Fail("失败", 10300), + + /** + * 错误请求 + */ + ErrorRequest("错误请求", 10400), + + /** + * 未授权 + */ + NoAuthorization("未授权", 10401), + + /** + * 拒绝请求 + */ + RefuseRequest("拒绝请求", 10403), + + /** + * 未找到 + */ + NotFound("未找到", 10404), + + /** + * 参数不符合 + */ + NotParameter("参数不符合", 10406), + + /** + * 请求超时 + */ + RequestTimeOut("请求超时", 10408), + + /** + * 登录超时 + */ + LoginTimeOut("登录超时", 10409), + + /** + * 服务器错误 + */ + Error("服务器错误", 10500), + + /** + * http协议错误 + */ + ErrorHttp("http协议错误", 10505), + + /** + * 业务问题 + */ + Business("业务问题", 10400); + + private String name; + private int index; + + ResultEnum() { + } + + ResultEnum(String name, int index) { + this.name = name; + this.index = index; + } + + public static String getName(int index) { + for (ResultEnum info : ResultEnum.values()) { + if (info.getIndex() == index) { + return info.getName(); + } + } + return null; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getIndex() { + return index; + } + + public void setIndex(int index) { + this.index = index; + } +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/SpringContextUtils.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/SpringContextUtils.java new file mode 100644 index 0000000..5dd0b12 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/SpringContextUtils.java @@ -0,0 +1,92 @@ +package com.example.demo.utils; + +import org.springframework.beans.BeansException; +import org.springframework.beans.factory.DisposableBean; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; +import org.springframework.context.annotation.Lazy; +import org.springframework.stereotype.Component; +import org.springframework.stereotype.Service; + +/** + * Spring上下文获取工具 + * + * @author 李嘉 + * @version 1.0 + * @Description Spring上下文获取工具 + * @date 2019-05-10 13:25 + */ +@Component +public class SpringContextUtils implements ApplicationContextAware, DisposableBean { + + public static ApplicationContext applicationContext; + + /** + * 取得存储在静态变量中的ApplicationContext. + */ + public static ApplicationContext getApplicationContext() { + checkApplicationContext(); + return applicationContext; + } + + /** + * 实现ApplicationContextAware接口的context注入函数, 将其存入静态变量. + */ + @Override + public void setApplicationContext(ApplicationContext applicationContext) + throws BeansException { + SpringContextUtils.applicationContext = applicationContext; + } + + /** + * 从静态变量ApplicationContext中取得Bean, 自动转型为所赋值对象的类型. + */ + @SuppressWarnings("unchecked") + public static T getBean(String name) { + checkApplicationContext(); + return (T) applicationContext.getBean(name); + } + + /** + * 从静态变量ApplicationContext中取得Bean, 自动转型为所赋值对象的类型. + */ + public static T getBean(Class clazz) { + checkApplicationContext(); + return applicationContext.getBean(clazz); + } + + public static T getBean(String name, Class requiredType) { + return applicationContext.getBean(name, requiredType); + } + + public static boolean containsBean(String name) { + return applicationContext.containsBean(name); + } + + public static boolean isSingleton(String name) { + return applicationContext.isSingleton(name); + } + + public static Class getType(String name) { + return applicationContext.getType(name); + } + + + /** + * 清除applicationContext静态变量. + */ + public static void cleanApplicationContext() { + applicationContext = null; + } + + private static void checkApplicationContext() { + if (applicationContext == null) { + throw new IllegalStateException("applicaitonContext未注入,请在applicationContext.xml中定义SpringContextHolder"); + } + } + + @Override + public void destroy() throws Exception { + SpringContextUtils.cleanApplicationContext(); + } +} diff --git a/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/StringUtil.java b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/StringUtil.java new file mode 100644 index 0000000..f3b3a67 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/main/java/com/example/demo/utils/StringUtil.java @@ -0,0 +1,198 @@ +/* +package com.example.demo.utils; + +import java.text.DecimalFormat; +import java.text.NumberFormat; +import java.util.ArrayList; +import java.util.List; + +*/ +/** + * 字符串工具类 + * + * @author: lixuanli + * @date: 2018/4/16 13:27 + *//* + +public class StringUtil { + + */ +/** + * 获取两字符串的相似度 + * + * @param str 需要比对字符串 + * @param target 比对目标字符串 + *//* + + public static float getSimilarityRatio(String str, String target) { + return 1 - (float) compare(str, target) / Math.max(str.length(), target.length()); + + } + + */ +/** + * 生成对应模块单据名称 + * + * @param customerName 客户名称 + * @param moduleName 模块名称 + * @param dateFormat 日期格式 + * @return 单据名称 + * @author: lixuanli + * @date: 2018/5/9 09:52 + *//* + + public static String getTitleByModule(String customerName, String moduleName, String dateFormat) { + String currentDate = DateUtil.getCurrentDate(dateFormat); + return customerName + "_" + moduleName + "_" + currentDate; + } + + */ +/** + * 生成对应模块单号 + * + * @param number 单号序列 + * @param numberFormat 单号格式 + * @param moduleShortName 模块简称 + * @param customerAreaShortName 客户地区简称 + * @param dateFormat 日期格式 + * @return + * @author: lixuanli + * @date: 2018/5/9 10:02 + *//* + + public static String getNumberByMOdule(int number, String numberFormat, String moduleShortName, String customerAreaShortName, String dateFormat) { + NumberFormat nf = new DecimalFormat(numberFormat); + String sNumber = nf.format(number); + String currentYear = DateUtil.getCurrentDate(dateFormat); + return moduleShortName + "-" + customerAreaShortName + "-" + currentYear + "-" + sNumber; + } + + */ +/** + * 方法描述 : 生成下个月对应模块单号 + * + * @param number 单号序列 + * @param numberFormat 单号格式 + * @param moduleShortName 模块简称 + * @param customerAreaShortName 客户地区简称 + * @param dateFormat 日期格式 + * @return + * @author fangxs + * @date 2018年7月23日 + *//* + + public static String getNextMonNumberByMOdule(int number, String numberFormat, String moduleShortName, String customerAreaShortName, String dateFormat) { + NumberFormat nf = new DecimalFormat(numberFormat); + String sNumber = nf.format(number); + String currentYear = DateUtil.getNextDate(dateFormat); + return moduleShortName + "-" + customerAreaShortName + "-" + currentYear + "-" + sNumber; + } + + private static int compare(String str, String target) { + int[][] d; // 矩阵 + int n = str.length(); + int m = target.length(); + int i; // 遍历str的 + int j; // 遍历target的 + char ch1; // str的 + char ch2; // target的 + int temp; // 记录相同字符,在某个矩阵位置值的增量,不是0就是1 + + if (n == 0) { + return m; + } + + if (m == 0) { + return n; + } + + d = new int[n + 1][m + 1]; + + // 初始化第一列 + for (i = 0; i <= n; i++) { + d[i][0] = i; + } + // 初始化第一行 + for (j = 0; j <= m; j++) { + d[0][j] = j; + } + // 遍历str + for (i = 1; i <= n; i++) { + ch1 = str.charAt(i - 1); + // 去匹配target + for (j = 1; j <= m; j++) { + ch2 = target.charAt(j - 1); + if (ch1 == ch2) { + temp = 0; + } else { + temp = 1; + } + + // 左边+1,上边+1, 左上角+temp取最小 + d[i][j] = min(d[i - 1][j] + 1, d[i][j - 1] + 1, d[i - 1][j - 1] + temp); + } + } + return d[n][m]; + } + + private static int min(int one, int two, int three) { + return (one = one < two ? one : two) < three ? one : three; + } + + */ +/** + * String 字符串转 List集合 + * + * @param tmp + * @param splitStr 切割字符串 + * @return + *//* + + public static List stringToList(String tmp, String splitStr) { + List listObj = new ArrayList<>(); + String[] ids = tmp.split(splitStr); + for (Integer i = 0; i < ids.length; i++) { + if (!isEmpty(ids[0])) { + listObj.add(ids[i]); + } + } + return listObj; + } + + */ +/** + * 是否为空字符串(包含"null") + * + * @param str + * @return + *//* + + public static boolean isEmpty(Object str) { + return str == null || "".equals(str) || "null".equals(str); + } + + */ +/** + * 获取字符串值 + * + * @param str + * @return + *//* + + public static String getValue(Object str) { + return isEmpty(str) ? "" : String.valueOf(str); + } + + */ +/** + * 判断两个字符结果是否相同 + * + * @param str1 + * @param str2 + * @return + *//* + + public static boolean equales(Object str1, Object str2) { + return getValue(str1).equals(str2); + } +}*/ diff --git a/SpringBoot-DynamicDataSource/src/test/java/com/example/demo/DemoApplicationTests.java b/SpringBoot-DynamicDataSource/src/test/java/com/example/demo/DemoApplicationTests.java new file mode 100644 index 0000000..eaa9969 --- /dev/null +++ b/SpringBoot-DynamicDataSource/src/test/java/com/example/demo/DemoApplicationTests.java @@ -0,0 +1,13 @@ +package com.example.demo; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class DemoApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/SpringBoot-DynamicDataSource/target/classes/application.yaml b/SpringBoot-DynamicDataSource/target/classes/application.yaml new file mode 100644 index 0000000..ac95d22 --- /dev/null +++ b/SpringBoot-DynamicDataSource/target/classes/application.yaml @@ -0,0 +1,54 @@ + +server: + servlet: + application-display-name: springBoot-aop + port: 19086 + + # 主配置 +spring: + # 数据源配置 + datasource: + # 修改数据源为druid + type: com.alibaba.druid.pool.DruidDataSource + driver-class-name: com.mysql.cj.jdbc.Driver #这个要根据mysql-connector-java版本 + # druid配置 + druid: + # 主数据源 + master: + driver-class-name: com.mysql.jdbc.Driver + # 默认数据库连接(配置库) + url: jdbc:mysql://localhost:3306/db_00?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8 + username: share + password: hta@123 + # 递增db配置 + db1: + driver-class-name: com.mysql.jdbc.Driver #这个要根据mysql-connector-java版本 + url: jdbc:mysql://localhost:3306/db_01?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8 + username: share + password: hta@123 + initial-size: 5 # 初始化时建立物理连接的个数 + max-active: 30 # 最大连接池数量 + min-idle: 5 # 最小连接池数量 + max-wait: 60000 # 获取连接时最大等待时间,单位毫秒 + time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 + min-evictable-idle-time-millis: 300000 # 连接保持空闲而不被驱逐的最小时间 + validation-query: SELECT 1 FROM DUAL # 用来检测连接是否有效的sql,要求是一个查询语句 + test-while-idle: true # 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。 + test-on-borrow: false # 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 + test-on-return: false # 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 + pool-prepared-statements: true # 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。 + max-pool-prepared-statement-per-connection-size: 50 # 要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true。 + filters: stat,wall,log4j2 # 配置监控统计拦截的filters,去掉后监控界面sql无法统计;配置监控统计拦截的filters,stat:监控统计、log4j:日志记录、wall:防御sql注入 + connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500 # 通过connectProperties属性来打开mergeSql功能;慢SQL记录 + use-global-data-source-stat: true # 合并多个DruidDataSource的监控数据 + stat-view-servlet: + allow: '' # IP白名单(没有配置或者为空,则允许所有访问) allow: 127.0.0.1,192.168.163.1 + deny: '' # IP黑名单 (存在共同时,deny优先于allow) + login-password: xxxxxx # 登录密码 + login-username: admin # 登录名 + reset-enable: false # 禁用HTML页面上的“Reset All”功能 + url-pattern: /druid/* # 配置DruidStatViewServlet + web-stat-filter: # 配置DruidStatFilter + enabled: true + exclusions: '*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*' + url-pattern: /* diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/DemoApplication.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/DemoApplication.class new file mode 100644 index 0000000000000000000000000000000000000000..cfa8003430ba0638202649e257043f13a88de376 GIT binary patch literal 918 zcma)4O>fgc5Ph2_aT)?GX=!QsYI{m^$lmB7s8UFUgp>jzC>(lPJ6m^y?X}kHHvBA3 zAP)QheiUNXiJE{SL8Q$3&CJfsd$T`(eg6UA1V?q0vG3tg9gp$E!&8Rp3zaB)%COct z9x;^rdMp_>1}c$n^4OQ=gYYBrGzU5m(MTBO@Z4FpS1MyT8U#A#aw_69l6)*<&Ckg6 z(lk6H=|M6=89+ss*KsWv_TJ}-Rk0kYOwrW6B+<5*hwirr+Jrp*?2{woS?UJi;x>by zi!_yH7zj6fCF1{_FoOH5vN>KND8Wr07wf{=Cmj^#&@aG93JCJszGlaDYP+da;|g z{zL|rgmOBqBsQb6M1x+D$!W=cYiY;*NMu=e#afS7@+76KoLYX%#4T>|lF04CT^yoB zkJAU%|c<;Tl;N2I^QR+n6N~xXoLKl^sg`iZkqdrZDNbgeZt$+?!g6Eh8^tE_e1&)u=g8^KKf$- literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/controller/DemoController.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/controller/DemoController.class new file mode 100644 index 0000000000000000000000000000000000000000..9871c5fb35999067314ede2442a0b809ecd41213 GIT binary patch literal 2175 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 YvfVp_-0afM)59(LhiEDccY@QxKUV8q!2kdN literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DynamicDataSourceAspect.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DynamicDataSourceAspect.class new file mode 100644 index 0000000000000000000000000000000000000000..74d9a663bffcc9637cd2567ba5127c5c2017885f GIT binary patch literal 2982 zcma)8+jA3D82@dOc9V3mwOmRCDc72mHjzTDwg~jXrO+F+6oHCvH>c^g$!^@;l+^q9 z=7Ww8-bNjLa(Hu8X0R|S@BSYJ{U_Al$%b5LxnySZo%5aZ{l5FR``5pB{shpA529$s z@d!>}AdJB%hA`*^Qi5llWu1I$YOHTPN#*_ub}>@X_?+J-igI$6oiKClu*z(YFc7EpPduV zv_6+1hr))Qnb93n?n}&&w_v&odPWU9n-m2-o6Cq~N@VS1O80cv&O3%k4zE~x)-;C6 znJRJy+?+5xse4Y$+YZ57FXS!H%!(P)HHki8S+=Kprfm^?f6;2aD6^Q%=vF$Zm(P=f zMFe8iE$f*)p}Ivu7)1`R5+$<|(yW9loMqDx36qv4IuaeRL?Rwn5Kh?xj-9ts z3i@K}^-VgqAwHAnosX!Pgp7xR4!?|ZG9vR*>2=##O1e}nY;Pqel0$YjXIp|vdQ$b2EAill zmYIcpcXiXloyTa{rH?{`v5m`#=1s;tdUNLRT@T!9Yrd&@hj*h6R`^7Bwt^ z!P#7?nR1deWUx&`0$Dcpy)SRyyZOc6cRyeI_WOHZ-I7{9`;=OIK8+f*ZO`=_J?H1u zZLEhChOHrow-g*+SJ_YQbQO*U7oLXA*g_2z6a6}?v3h#Jv9J3hXTKa*HI2VPBi7(e zt*{K}Wzf!hE%eeb7s$~~DftNBCR zbjHrG>=|cQc$Fc3POPw+WD_#5oDtKGZmd&Wnj=x>)}DfvtiB|u z$I!h?rnkVA>*mqgN6=$l(oq2fKh$3|^?DbKO1jaU|ILH4qs4_{YnEMfRvbw;;R z8R7EXCI$PeGFoz~ic=#v%>lQ;^{Z9)OF^$LlM=*`p2w+sHNryB>cJ zd-$0lzdIB>CmWor5Z9b!{BPkdNve?6b^He97cK(W&j0!%a|c?v*8B?u*ufp&02B@s zg?mY*aO776nuE6xssKcJ1hgTH-Blow63FvBYoO>ZK5Z_qC^U30O`}Q5cNA55VQCe0 zW1Y89Kh8h3FVq@ZMfe6^Y1~F{Alz5iT6b3&J9rxn3dW=f8cmRN6X^|fj(71Q_g#1J z3{Z2{)K~xDVr%`~&Yx)~7@Zb=u}Rv-{}wtbX&X(Gv>iSC=8F{REcYjH9+J-DT9F2e zfxA`=%mKR6&bu!#`Z3~lksIfE2Qj;dc957|*w3lojze5^6T26$;$@;9#sH4+gR+PC zy|_%?Ea^O{iT+|NFVNZ$ny`-u0cvT$0pbLytBx9DJloDEPHh2VHBnm!PZ`is^yR9P zS~&%&C&3yB;6Ik{6(l5@{#*uaNff>6eHjILhECICh1L Xx5V30it-6@{vYiuY}@v@6N3Y__8RN-qi?`~m(b zagqj%A|5o5otYH#Y5>e2x%oqT`Mc@?1>J1Vb=E!DPJr}#?^uzm9A`THm~_DcLT0E zZp#{}Iu!L4zGzp7NjziYqi+>Hg% zoQ{+i=!gWJ3ES0v0m}?S=OUtZB3r^B3N+%7M^=~;#xTxM{m*b1ravc<>4@Rr?`g40 z3z4TC0UY{CGpGr=xnvpH{MIwrBV7hCoCL&R1w}eb{Q!($l)PNrVoKgg$xeCTfu6F| yg$&i{Qzsfkok*#lb)VpTC;wD8kIAG&8B>X^U^-DVL+5OQ%#c!0S=w;2^nC!)8nxg6 literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DynamicDataSourceContextHolder.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/datasource/DynamicDataSourceContextHolder.class new file mode 100644 index 0000000000000000000000000000000000000000..e1a813c9d45b05456adf51c9e40f3ee1f1354257 GIT binary patch literal 1942 zcmbVMQFGHq5dO|~EL&C_V-hHV(n8YKc1Y9!rI47k!660W1X`!ev~L&r#umtuE6EJ` zEBy_9pk*e|GSlIiAJysJNjS3O;Q`NBx3{;q`|a+x_wK)c{sr(Y_H~qSLnrBG9y7S5 zV-4%_Q`c}?t{YPQT>;-?Q-1DfXy_>5hK4O2({jD5VVl9Y@4CWoI6MeMz%XrjZYZ9I z_dKU9e1@~lC;S;V9qx9_{jM)~yXjfnS!c+%?2gOBfiD=ACR^1L>Q?C6ZfAXiZWh}- z9}2kZE{rf-}>! zU9mUl9SDD)A2_5bE7XsS>}N`Qd^Xl@<4yk}cm zL&%L}fe2|S5aIDDCB!gSIhnYGmwqZw%O?-1?yZnpPj`7g##Y)DVb^Ov;y&+*Q24S+ zofCm(E7eKP%9bOzKL%=6c9z@jn0g}CUl~sEc6-E>5S)wiQjKbOjzev*J$JoI_8H2J zOwJ_wmavcqk~hN+9QNOLA?D7Q&w7$liH5IChA`P&;>y)6C+3JAac2zbEv_=0R)JK-HhrHT%9&wU`*^1#*rRIG2zq|U!SSvPAGr$H66fCrk9ErZ6vi3W}z7bI8li4fmfw zBbg{b-}7W)(#mL^s=WgHQ(d`0->g!W@hQnhWPpqKjCOf^PQg;@@&j7s<(b-Rq<)9~ z7t*yOWTcxkq?;nGK!svfNnT30o55u)(AlE0Wkq~J!W1K|4DlttBF7TnWfcI*_YtPv zBKv~0OnHw$UM2g=FrS6kUL!0=&?J<|SSPH&Ey`?-E>uyAbGRPoK;Uz=zmZSj53)-o z0^CW!)??TsXqRw>@|0+|N1f@Bv#1sk+MN++%UGdXCjFx#>sZFuw2R#@lNhye6**iT zCb>#sV#{6g@33S~3P(#3l|2gs?;lXvhW$V)Fudk%$YsR7K^fJ#I?_voX^m(qAQ2 zDY+_Cr~m%v&%XfN!_yL$P|xF52|3h@Sj27f*T};z zVIK7Y?il&CQGQdvw?=+vKHukYw}f-Jm&Xrz{3x&#hkfk^-A$?GcG!;{C1AIl(6`k< z`jMyXJ>`e?9li+-S8Uv=EX-SyO35QJK4Hw+SiORZP(tsL0$ zP-(wVDHc8FAGm?59|_D2xlipG7)1wJyMYWGS9)!kXcbQr-BFyK)NEX*@ z<4NFiTqcNd4k>e#^>@gjyYL l4Vczcc`raQ3jh=u_$GnABHWxQ5l15AP@yJ=>Y=s<{0l_P^X~uv literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/mapper/OrderMapper.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/mapper/OrderMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..5a6b807207425196a885dc461fb2ba229099ae84 GIT binary patch literal 1196 zcmb7DO>fgc5S?|KqzQ$l6eum9Z2>hGRw@S$K}f9tDUz$AMD)I~SI)NfuC-oQ^sjN? z2k@gRX4h`EC5VKBW$(|b5uLV0T*d@?SxH-`=*GHG%3a$q+f!+P^ zj9oCAGMUg&$)w+_0;Lft4Mk!4h&$$HqT;Vivy2ogB%5b{BaVO(59+@Tq0s-DtfYvgBC0NE&15XY7Z5zZVfE7%& zF|~A^>i87g!S7YuW)+{i1$40Z9<0^H?ZEZ%fUW~<1|HD#pBB3g_dSP=>7WOgdI*oO jwx+iUfT72;p)J_<4W3LJJjLKMJO%I^Uf|n~eF^XzqV_<> literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/mapper/SysDictMapper.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/mapper/SysDictMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..f8eacbdcb9976f56d0ffac4c217734fd086ae9ff GIT binary patch literal 409 zcmah_u};G<5PdFfQVNBNjTwR31usYpouCK_DHVuF?3ehIx=QRQaS{DB20nm~LO2a5 z0|U!h_x$eNd-wVE{sG_`lMqKCjs?aUyE~n_+wH{eDiQAGtiu4;jyB1f%gNJ=$CfwSpay`EaQeJ4P8a;5Yn|kLV~lm=v^CzsMP#c?Qc3BGrA|Ct zOX>)+74r7a{|4Oc_)XXnea!AQkI9--7YGRS{7HdcUtkY?-w%8@5C{Mdg&20we#66P NR}XOL-@t#4fo~;(aH;?R literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/model/Order.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/model/Order.class new file mode 100644 index 0000000000000000000000000000000000000000..87924e7596a60cceadd366e75e59cc87afc15957 GIT binary patch literal 3866 zcma)8ZEqA+6h3!5Z@W9&mO_Co6+w#jmGvFiQlPXT#TIH?ih?gpw?jL0cc;wE7K)-V zF^1?DH6|K=fcOCujam|74Eh1oKfn*r=vRM$h|j$jt2el)+Rm&$sW@iAa26P~gu+d=Z_Sv-? z8mLf9+nYBX5P;Xd!{V$EGeS&?$ueDZUr`wfWra5>Ut1abwq-H}w&h`yu&v>eZyugX zO?pOdVa!+z=%M9|;$faAVw^YJd7oP#+6dAZpBNcCj65NO!EPz?{W|qhpH2f@+Qp>|Z=R&5bb6Ye(djsy0ND=Nw&!||vFNkTZBpoh zMvhJ{A^+y;ed6yoqYYvT7ssTypsdUM_$8=BON{o296PPq0oJ?CuNjwunsL#u8JDUx z8(>|GHWiEo6PH`g@J?ACcE-QvK*)1pUW+4Ie`+2u4$gs(2r)in5D19M|Z@?dA75x(iQMz)V3E&xUKb(V$pPl@`mf02>J7H$bk>PzDJGXY~FM` ze8c|LVT5LC45yYC%?S9J5Waj^LsNl^AtRrkv~azu^fsfNtMZGA4Y%lnaUi3LXA8Fi zDbz;mX#?a|ykRlgh!4!gxDDeZ`Yrg{U3vrxuz9uOQ7FK0VGWXt9y~|i1Tc;Q+9xo| zpl9gi?i<9u6|hdUikM7L7i8TBP&f5p#P}&dTWkD1#lERCZizI;!HF<#s5fqnG{%98 zFqZ0#H$@ubphg(W^~UK)V;t}ZW2N4BOQi9$^c;4B7c7fDhFq_MH^479 zm;9Z79=2&89Kfb^`E zRyjxuKx$eGfl}ExK&fmZ9p|7#0E(v*Ay8vB2~cBJPbWD@4?vL0An7_%YoPk${hpt4 zg>QH103Ae)TIm-W#F3AoV&Bmr%ryY>H4Q@4BoIXQ4f-gZUxap2TO45(G$6kb_(_#9DmLp6O5DeUgw0}1yj$!(TvW#~hKW{^%YZUQs+|g8 zN(fd(*3SlDwH92(M<@alZIwyYDq06alIy<@7r(UUL4-p27Gsz69h;^cF4S9$mm#!#Izx@ITc_*RTKp literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/model/OrderMapper.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/model/OrderMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..42df9c8f206ee00d08a7d54e0734ca405ace078e GIT binary patch literal 1195 zcmb7DO>fgc5S?|KqzMI53Y3=523j?jt^@}TK}f9tDUz$AMD)I~N6r>|*IKVD`qz5k z2k@g1_`K1TC73K{Kx#w8t`1!sZ4U9L{a_!4Gu8 z@rOv#7Q-l7x2-4%h3Z>eVTDnYi zTng^c_iE8*m7cp9bg1|q+^>t6 literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/model/SysDict.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/model/SysDict.class new file mode 100644 index 0000000000000000000000000000000000000000..ab8755ecfc35e46f83c115d4ff8a21466c4c9138 GIT binary patch literal 3650 zcma)8ZF3V<6n-|{w(OcxfT0{ovYZj<=mWCTb@v0mTcc%xVh#i=!<{_yOrEDcj;C??$%uYgo3W2;Y9^%=%HuMtvTn`t4mIO!CtBaXL?1uvS`;` zv6h>vUv?V`4$Kw3YR>t9WroYCNTRJ{qN!?)FovB&n?n$p_ZA$#?3FIqb-U{LPMvwB zY0!?VKWZk!5{6Bb3{2WI1LHCpSo7?5T*8I!Twk{T{Q zo?mwA3Jh@*gMvC{uoH-xU{jDG2g^cCbSpFO z+r`y_y(Woc7VX*@ku&2h+l_K~8Ywu-lrCJHEu3M_l=ZsPSg-hGXOK{GupN6ShlZ(O zUj~#OjGk=zUU*k*g?VqiUUX($!DmZy^N?sX3w!aHg+A=GunYYb2E?#i4117Ou>aBg zws0CRT6hvqS$IK6Ph-%+K`}fdhG#KkVG7eE*=f)78-Cqh3)$A_(NQwtSa=`HRJXf6 zyx|nea21@C!4A2lNoDLnvj|OD6rm{xMG%X25hj&k1-q;Esx#%)inf2r^;z&*!?$Zb zIkyt!b2|zE{6#V2u=*^Ssq{ z3f63`=G3PucBA1i?60C>OCMoT&)T(8#c2$Nh7()Ei0pJ2iY|$PUyb0KJsH`OE~e~C zW!~j8)xdQH2e;%G7aN)NXdF3Z@bv&_NC~W5IuxVmHWh(^W2^`=`5j5u5Y5XG+-%*)B+c+I-Oy zVvN@K4?Awb8qca5NHr1ZyhcbmuV*!Z(eI(}7BX2at4Baq-XO@zn^{AE zObIfwW(1VUCke{rQ`w{dr6eesO+`T6`7}Y@c`KV1AWMQMH9_iarq&hd(6GHf3R7JpJ3noz;D?jv>m~>c$t!lSMfQHQPNPrr{wh!^0b0gOi(gVhlAsk zOniYEOj1hXOPs_BN-1pc5%LP9G=AZ8=p-czrx@EQ^cm(q=r&+HzyP0X{F%xF> z|BKBgIn0Yy#YHC&s literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/service/impl/UserService.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/service/impl/UserService.class new file mode 100644 index 0000000000000000000000000000000000000000..6f890a372c943b2ed85cda5cce8cbb8369e4dc83 GIT binary patch literal 866 zcmah{QESvd5dJp3yIj-Mw%4;-tF={Y@2=n?2tHH|e`wsvQ(evQq+B{m=Xyf_DW?c5#bg zF`wqoRA^s{G?f{{ZV;M;%QKOrvE;`xF+3@s_;5CHpJDxQqOD5gNaboA%O_eJE37g) zXV?f%#Hl#r;v&coWo{-}D5NDv`ICorLi zM

&e;#bucZxdf)ph1FJ5{0Nilp;5zB%SEOf+&Hd8vHXGVlu zb;5*n#ee3eG;df=@LUz*mS;NLE2d=_1SX4ko))ZcGm*#-CVS6wD>G^AG?o0oB&pF- z+kGEC7JalaPu=gkxb5Q(c3j-`v5PK4zjlRxO-D+K?$t!E$0sth3_G>*za5dTA4ywW z|LL^4!Gm6XJ^lYLX0zUIc6AJGYpP{qn|`88Ka;^JrYH2sYY{FGI)tHvj&DrmK-|zd*cRin6u%$H<+21^kfZ6h# za<1SsJOYv{&U)4Iw(2}>WSe*f|jw;<&skCg{t>cGAcjCq_3Mlh#iB@|HPSsx8 zs;t@dRco#6N97i+@$WF#f@BVkj_q_*pf3c)Gpdre zz@!efsYGe*p*+I#;Ql5sp4)>vm`}-Qx)JxYFWf~32&m*qhlb<1Zu%ob?I9piphp8C zGIB`5h6`<}zg=sl|Il`LM^~i@&Az#1m3cy2-OsJvu#4XG*cH~sZExIA#2{R6!>$YH zveYB8X$_y_lifZuYW*-EM4^J@%RJdvYXlv)8BNzL+CzXBwUx43j`= z#oekG?bD8&icGA-56iJPF^pY0N+xU^HSsb=O!T4O#DH7|F(k16|A)oIywo1Wn29$e zbpQuV9Fog8CQO_JW6GRxU9aKQty(Zsjb07c4Xm5kfJ1R~3kAhwzxk|Ib1@UV6;il? zO@X;sB%{sD%!0t3}JZnzpg0|Kb!RwjimM#f4)Cin3(X;nu|gB`R=K?5 zc=ogodUs$)e4Ts~*!$l&yu{Zl!*@&JkDbXCvN`=P`_uojhas?=bOKrQkbVx&liowl zNq!Ujn&bB&CVoXCflEL6$QQV#eAxif?Df6e4+mJhh<)5qi|6;#-hR@m;0D}qO1Mhn zIevu{jsJqK$g1Wub>E^H078q*3l5Ugu6!TLkF=72bSY3ybyVg^bx>BfE1MmaIi4Mq zwe8A19hEu9^l!V{V!LvtgK|)pNuE8`s!E>5WL32BiJzf#&RkFntyK%nuYao+eQXPX z!<|j4&uUV(Qp@CkZ!(8h!cg11)SlI(?8=tOLEq%7ID#%edxd!5LYnM~RXu2#oq-1p z{uO3><-A}Q^@9>ag4=Ldpy!(8r}K&wWR*~2 z$N~of%khh<8aTEXEPMM@q$IUgiZ-nxFh1U_2p1Ve*BLFM$wGs2J@Nk}(9e320)Jc2)?} zVz3Cgog0Gnc5sC6AfO6kTx{LX#~G7+8HQ!r`7>o%`0IX%USRvR8GkB-_n&ZYaDRtEz;x}yL9 literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/CustomUtil.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/CustomUtil.class new file mode 100644 index 0000000000000000000000000000000000000000..32c263f536f88bf897efd92816661dbb4f793486 GIT binary patch literal 5636 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 literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/ResultEnum.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/ResultEnum.class new file mode 100644 index 0000000000000000000000000000000000000000..a35d2514d8fa14c6b9c17d8f8c10d908be65eb04 GIT binary patch literal 2889 zcma)7S#wlX5dLmvJ2SbEnF~Qy*&@s&LfFC@0wD&8CIK^S1GwBwF3E+-+%R(o5k-+j z0~kP*LM$lRM6@Uf0|ZJ6idX#wKKRHC;mKE@(C#yn1%f3><#eC#_UZmkcc0GhPk(&? zU;$2e;Y6DcCboI7%7g7b%tMTqcK#CQ#q!b8!OIR_5&{(hNmgzCoDx_du#?pf1r`eI zV)Y||MFP87{a9eJz$dKk5m+MdDXX6eR0`~6^>cxx0{d9qFHj|LfYpNn%LKk)^-F=} z0-dZL5~vn9%<2(=6#`$e+U3Df1qAGO-cja_It^+oly)Fs#Yg zno1h|7NXIzS6Zof3!No(jh@ik4cka47@oITYqlG!Q{+sow_443|JEf#Dey|U%Cs}mVa8jDw#$sS7`qfGb##T2_0{$3YQqXjHow%J z-8=Od-A=)@VCdyeIBTpHqEb{()EZOm%|>Fa-W(&uBVDcDs$fBID9_MK(b4Lys2*Fd zCrtL4ckFL4DC;f#*(A2^N;7WSRSHJEAXHswJ(bXIGs)0bVo-5Qa_JkE+gOPfGptrm4j*w&-l8}yF+eMSaf zXzfW3_#5ht*$IkRmn$~WrE&{8k_Vi`flVr-v3zPO207sluY8FLR8c?q!d5B~HCCEj z)S`hGGLw5x#hW}7R;f6K;|eDK@4HgbfUi}&gC-R zG3L#l`6YX_GkbQwipA0>d*sC9duRKMmh>APdXVYtR#C}7QRdjb?8)v&ce@^6y_`AT zsbZ--n>*Fpb1-|VM@5yy9-qFKxqq?`TPBZZ&va!DpU<4Wl4GP|Im7-odcv8mW4+g| z_2Jdh#iP65llhZV*PdMXPQ?nwh7UYyt`oiJXiSc+XB%a8^EM-DQ-LZ5H)%~wPbQZP zDs_G?3~n(w-Yprlh3QNJ;6Cl2RZg z-C0Vyqm*KKH<}xrFY?a2q)VYJY&C_5H)9&=dgwlmx7wTY)ah-hjdm!(m|g*rDfyq zz-U6)k1MBE-y*#!-dfu4#yoIETa4qM#bjEE8QtZ49 zF%U$fk^pNd$T}2~mjE`%V3Q;#Egy`0$V)I!jo%NQVgdnYKY<$B*3w^&NE78Nf=xt+ z^R&qT2byQ6le*qK9Cd^sv9OLYPZ|pgESt;y3;81@0=aJG))()A^QS#&_ zjKF4$#}=y9CIs=mBsq%wjzAH8nJ=$VDyf02fZ=dFh1UazqKy8Vd@xP*P65p#TA$}6u0F?U`wKZWBRYiBxMvET<75%1j{o4qW$ow0c@k)$ZjhXm(?ptS zHr#_VqNxsTnBxwH-$aqz`<+@KF#QjSXc8IW(nbb?l@ckI$SAk=N+5VnBBLcT#-oi5 z1kX!koJ7V8Z9*V;Q6jHOWTM}#O$r1rNocZ!ruaSD)IjjEgi0jznqO$s0>LX1nl7QB z->ZcJ!Jj2mDxosJPkTKOa!P21gl75+wemp7E1_8un(bG$IekRu`iI@83p>&%3P+r2 zXyJ$}jpA^`oyO>J#FNIja73i>YB=I2Xfg@HN=OhmorE`yQW7*-W{@aMV-^WDjk)2Q zP`G1qQ)V&sD~%`mEv611OA}@yRigwO5yCdi#2(DWar(b=k^VLG(9Hgg=GdR~KK`Od PTabTq2DXxq0<``M;8Sx% literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/SpringContextUtils.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/SpringContextUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..50fde74172356e4026ba464da970ef3beb1cb747 GIT binary patch literal 2757 zcmb7FT~ixn6h3bfNE4Fs(E?VjTHDejP?kb13P`2tr-nkCG&9z#W%D*{+3d#MjfLKO z;a_li>rBV-quL8VXY|q;e@E%~D;%G*yO@P6Rx*?GzI*nZ=X{_2^Y34NBcf@lrm2@c zO4CtVNP%4Gp(0&na*fG#CO4SeWO6G>A0MGl(v+qWt1Kqzc9NEow49_nf(F!P)6g~5 z)h)AVnXX)S1x=JJyRJA*TQ}vdCgTQ&sF z&sAnZGJ*bll$lBexM#y}iiYYq(e}GELw)>MP=5&A7Z)_Nx2zk@-O>*27oLO7d04&h zYA-!-Uq0`7Ivw^jNY#G)Xx}ro{Jf>xvQ~j>f{L#;egJ&foeWQes+*2q$iWEj^7jSx z=uR0$HKc2y++29yi9LCbDEw}2XQFWThdnnM;_Q|jX&%-LbXnA#3~Q@WTZ?*=ExW3= zwx~9P@l4jF!foNR$??ei!sQv=eQIBA!ynOQQ%jZvbzWiqFuOByeo;(dCLQ8Rcyo`;N2E7RmE1&k>5GA)L z_A|wwfraJ;O#_A?7N?WooTRsKV}%d##BaJrpHsYT%@-e`1fBCN4*5cXMYheZqY0s! z!1)eB0~bphM~XW)z@LR8JDc?#Dr{3CM(ma!m2YPp!b&KzES;gVkO?r);5y=|ob#}A z0rp}Cc9)MG4~2XQ!qa=O^Hc!XDE@vPvy`VXJO$SBxcb)4d)C-F&eR>8oT(n?;GzfANG@R)k+ literal 0 HcmV?d00001 diff --git a/SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/UserContext.class b/SpringBoot-DynamicDataSource/target/classes/com/example/demo/utils/UserContext.class new file mode 100644 index 0000000000000000000000000000000000000000..a547a511ace78d6a03adb86bfbd4f26c0b3c40a8 GIT binary patch literal 1380 zcma)6O-~b16g{tB(@v)r3l$NRPoXVJRTNYzCZZ;UA|^!=R%Y71l)<(`rc=V!l`eFN ziF@N#(1aSnkG1~;)D?fg81I`7bR?oI`tHo_edpYB?tAm~*N0C4MsZU{7=tp7;hYQ~ z&IjmeNQQ!>gbNZb`f*8ygkh1oES4)0MnoKxFe>3HgQr^I219FlQC(J(MYUW=&Mp{S z&8PL8S{!2tWVAwAHLC_^xbgR@R63`Zl6*xiEfsk(&r5o;YHGzw@|IfR4+#JE?9A9W zVfj*8Su@8O+_Cr^aZl)ZLJg<2GQU?XWw|k{W{Z@GSmbl6p^0}p=`k0y3PayvWP)fy zFPnVD6m1u{DKe9JhG;DAXnc}N3f!QYV7AfUKY*Po800%EIlg3SdYPJ$Y!-%o;y8i} z4E{Y*hET>-bC0IgC0k*z!p%K0hJn~o0ELfD)7)Ip^Y>LlEpd|@)R@npDJ+wf{#34L zn=WVcs*&S&HDPg+!>%DQdj&0sD(FJDf@|nd(1ha(u7iB)`M)rR=EecqcZi|;+sn=E zkE`3S)^}E)?ruH%{-*Zh$@85TYxVr@)?>k&Qg8#~3I-6RX*GZxC-Lwu970G|WAjXQ zk>^YXFU?4t0yjm5mOsuyy@n)4V~!J&F%7L;7!%gIX(R{!wfDs5&`q~3O!tuClyHk; zgx*|ermN@@c2ed9Wris-irz#GY~3nprB$XPzz+`sI7v@Ry$Edt2gF1%%62Z}AZMcVUTU70D;n{%q3w%>7@fx8` zNb?bY4S~-ILEyFsA_M>uCzH4^Noylnd)>;E@3Dw_sm2fX6KxWSchdIZtW7&YQP|)o zS`r~2bfTTw?AXT^cy;W4+T*49QwWG7LLkDFUJDG6EEPe4M&B`7>%MkUA6 + + + + + + + + insert into sys_dict( + data_type,data_code,data_value,create_time + ) + values + ( + #{dataType}, + #{dataCode}, + #{dataValue}, + now() + ) + + \ No newline at end of file diff --git a/SpringBoot-DynamicDataSource/target/classes/mapper/OrderMapper.xml b/SpringBoot-DynamicDataSource/target/classes/mapper/OrderMapper.xml new file mode 100644 index 0000000..a01be2c --- /dev/null +++ b/SpringBoot-DynamicDataSource/target/classes/mapper/OrderMapper.xml @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + insert into t_order( + user_id, + order_id, + remark, + create_time + ) + values + ( + #{userId}, + #{orderId}, + #{remark}, + now() + ) + + + + + insert into t_order( + user_id, + order_id, + create_time + ) + values + ( + #{userId}, + #{orderId}, + now() + ) + + + + + insert into t_order( + user_id, + order_id, + remark, + create_time + ) + values + + ( + #{item.userId,jdbcType=BIGINT}, + #{item.orderId,jdbcType=BIGINT}, + #{item.remark,jdbcType=VARCHAR}, + now() + ) + + + + + + \ No newline at end of file diff --git a/SpringBoot-DynamicDataSource/target/test-classes/com/example/demo/DemoApplicationTests.class b/SpringBoot-DynamicDataSource/target/test-classes/com/example/demo/DemoApplicationTests.class new file mode 100644 index 0000000000000000000000000000000000000000..27b8e18916a44674b28c3c44e7d2adfa109ac837 GIT binary patch literal 531 zcma)2yH3L}6g^HKfi}=mSSm5FAYKyQU;rT%5K{yat-3p@DK3c}IS%x?7St9vFriNdW8Dv?aV&Rn0BbmGWj3J1P zc5?1QBPK-b-xu1cRE|}yNOhpKaaBLnwnJm5d{)qQWHaTY|p&=fY7H>zB& z|JS(VnRpfqCzVc~S*52BR;2R9*e4ztXfW*l>tzhxau`p9 zp7OhBCS!*kc=XTZ@#vBm=(8!}<{9 literal 0 HcmV?d00001 diff --git a/pom.xml b/pom.xml index e474a51..a769ffb 100644 --- a/pom.xml +++ b/pom.xml @@ -30,6 +30,7 @@ SpringBoot-mybatis-plus SpringBoot-OSS SpringBoot-Commons + SpringBoot-DynamicDataSource From 6d130eb0a1105005df1681f187eb84cd96b50d21 Mon Sep 17 00:00:00 2001 From: Andy Date: Sat, 6 Aug 2022 02:05:42 +0800 Subject: [PATCH 03/14] =?UTF-8?q?feature=20=20mysql=20replace=20=E7=94=A8?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/test/java/com/fancv/AppTest.java | 20 +++ SpringBoot-MyBatis-Advances/pom.xml | 26 ++- .../com/fancv/controller/DemoController.java | 53 ++++++ .../fancv/controller/DruidStatController.java | 7 + .../src/main/java/com/fancv/dao/User.java | 94 +++++++++++ .../java/com/fancv/mapper/MyUserMapper.java | 39 +++++ .../src/main/resources/application.yaml | 10 +- .../src/main/resources/datasource.properties | 4 + .../resources/generator/generatorConfig.xml | 93 +++++++++++ .../src/main/resources/mappers/UserMapper.xml | 155 ++++++++++++++++++ .../lib2/aliyun-openservices-1.2.1.jar | Bin 0 -> 604876 bytes .../api-top-oss-2.1.multiclient-SNAPSHOT.jar | Bin 0 -> 26028 bytes SpringBoot-OSS/lib2/core-2.3.14.jar | Bin 0 -> 271775 bytes .../raycloud-sheji-dam-sdk-1.0.0-SNAPSHOT.jar | Bin 0 -> 16591 bytes .../SpringBoot-Commons-1.0-SNAPSHOT.jar | Bin 0 -> 7954 bytes .../raycloud-sheji-dam-sdk-1.0.0-SNAPSHOT.jar | Bin 0 -> 14383 bytes SpringBoot-OSS/pom.xml | 8 + SpringBoot-OSS/readme.txt | 15 ++ .../src/main/java/com/fancv/App.java | 20 +++ .../fancv/config/UserDamOssClientConfig.java | 39 +++++ .../com/fancv/controller/ossController.java | 5 +- .../java/com/fancv/service/OssService.java | 18 +- .../src/main/resources/application.properties | 11 +- .../src/test/java/com/fancv/AppTest.java | 20 +++ .../src/test/java/com/fancv/Demo.java | 6 +- .../test/java/com/fancv/OssVersionDemo.java | 144 ++++++++++++++++ .../target/classes/application.properties | 38 +++++ .../target/classes/com/fancv/App.class | Bin 0 -> 975 bytes .../fancv/config/Knife4jConfiguration.class | Bin 0 -> 2256 bytes .../fancv/config/UserDamOssClientConfig.class | Bin 0 -> 1603 bytes .../com/fancv/controller/ossController.class | Bin 0 -> 1838 bytes .../com/fancv/service/OssService.class | Bin 0 -> 1369 bytes .../compile/default-compile/createdFiles.lst | 0 .../compile/default-compile/inputFiles.lst | 5 + .../test-classes/com/fancv/AppTest.class | Bin 0 -> 465 bytes .../target/test-classes/com/fancv/Demo.class | Bin 0 -> 2721 bytes .../resources/mapper/PeopleConfigMapper.xml | 5 + .../src/main/resources/mapper/TUserMapper.xml | 5 + .../resources/mapper/TenantInfoMapper.xml | 5 + .../src/test/java/com/fancv/AppTest.java | 20 +++ .../spring-configuration-metadata.json | 18 ++ .../target/classes/application.yaml | 32 ++++ .../com/fancv/SpringBootMybatisPlusApp.class | Bin 0 -> 746 bytes .../com/fancv/config/DataSourceConfig.class | Bin 0 -> 7670 bytes .../fancv/config/DateAutoFillHandler.class | Bin 0 -> 1054 bytes .../com/fancv/config/MyBatisPlusConfig.class | Bin 0 -> 1265 bytes .../controller/MybatisPlusController.class | Bin 0 -> 1316 bytes .../target/classes/com/fancv/dao/User.class | Bin 0 -> 4990 bytes .../classes/com/fancv/mapper/UserMapper.class | Bin 0 -> 371 bytes .../fancv/monitor/SqlPrintInterceptor$1.class | Bin 0 -> 1124 bytes .../fancv/monitor/SqlPrintInterceptor.class | Bin 0 -> 10344 bytes .../com/fancv/service/UserService.class | Bin 0 -> 1233 bytes .../test-classes/com/fancv/AppTest.class | Bin 0 -> 465 bytes .../src/test/java/com/fancv/AppTest.java | 20 +++ .../target/classes/application.yaml | 14 ++ .../com/fancv/RocketMQConsumerApp.class | Bin 0 -> 892 bytes .../classes/com/fancv/mq/Consumer.class | Bin 0 -> 1680 bytes .../com/fancv/mq/ConsumerService.class | Bin 0 -> 2113 bytes .../com/fancv/mq/MqConsumerApplication.class | Bin 0 -> 743 bytes .../com/fancv/mq/bean/OrderNotifyEvent.class | Bin 0 -> 2560 bytes .../MessageListener$MyAsyncConsumer1.class | Bin 0 -> 1325 bytes .../MessageListener$MyAsyncConsumer2.class | Bin 0 -> 1325 bytes .../MessageListener$MyAsyncConsumer3.class | Bin 0 -> 1325 bytes .../MessageListener$MyConsumer1.class | Bin 0 -> 1388 bytes .../MessageListener$MyConsumer2.class | Bin 0 -> 1374 bytes .../MessageListener$MyOneWayConsumer.class | Bin 0 -> 1320 bytes .../MessageListener$MyTagConsumer.class | Bin 0 -> 1431 bytes .../MessageListener$SycnConsumer.class | Bin 0 -> 1531 bytes ...essageListener$TransactionalConsumer.class | Bin 0 -> 1560 bytes .../fancv/mq/listener/MessageListener.class | Bin 0 -> 1427 bytes .../compile/default-compile/createdFiles.lst | 15 ++ .../compile/default-compile/inputFiles.lst | 6 + .../test-classes/com/fancv/AppTest.class | Bin 0 -> 465 bytes 73 files changed, 953 insertions(+), 17 deletions(-) create mode 100644 SpringBoot-LTS/src/test/java/com/fancv/AppTest.java create mode 100644 SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DemoController.java create mode 100644 SpringBoot-MyBatis-Advances/src/main/java/com/fancv/dao/User.java create mode 100644 SpringBoot-MyBatis-Advances/src/main/java/com/fancv/mapper/MyUserMapper.java create mode 100644 SpringBoot-MyBatis-Advances/src/main/resources/datasource.properties create mode 100644 SpringBoot-MyBatis-Advances/src/main/resources/generator/generatorConfig.xml create mode 100644 SpringBoot-MyBatis-Advances/src/main/resources/mappers/UserMapper.xml create mode 100644 SpringBoot-OSS/lib2/aliyun-openservices-1.2.1.jar create mode 100644 SpringBoot-OSS/lib2/api-top-oss-2.1.multiclient-SNAPSHOT.jar create mode 100644 SpringBoot-OSS/lib2/core-2.3.14.jar create mode 100644 SpringBoot-OSS/lib2/raycloud-sheji-dam-sdk-1.0.0-SNAPSHOT.jar create mode 100644 SpringBoot-OSS/lib_v1/SpringBoot-Commons-1.0-SNAPSHOT.jar create mode 100644 SpringBoot-OSS/lib_v1/raycloud-sheji-dam-sdk-1.0.0-SNAPSHOT.jar create mode 100644 SpringBoot-OSS/readme.txt create mode 100644 SpringBoot-OSS/src/main/java/com/fancv/App.java create mode 100644 SpringBoot-OSS/src/main/java/com/fancv/config/UserDamOssClientConfig.java create mode 100644 SpringBoot-OSS/src/test/java/com/fancv/AppTest.java create mode 100644 SpringBoot-OSS/src/test/java/com/fancv/OssVersionDemo.java create mode 100644 SpringBoot-OSS/target/classes/application.properties create mode 100644 SpringBoot-OSS/target/classes/com/fancv/App.class create mode 100644 SpringBoot-OSS/target/classes/com/fancv/config/Knife4jConfiguration.class create mode 100644 SpringBoot-OSS/target/classes/com/fancv/config/UserDamOssClientConfig.class create mode 100644 SpringBoot-OSS/target/classes/com/fancv/controller/ossController.class create mode 100644 SpringBoot-OSS/target/classes/com/fancv/service/OssService.class create mode 100644 SpringBoot-OSS/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst create mode 100644 SpringBoot-OSS/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst create mode 100644 SpringBoot-OSS/target/test-classes/com/fancv/AppTest.class create mode 100644 SpringBoot-OSS/target/test-classes/com/fancv/Demo.class create mode 100644 SpringBoot-mybatis-plus/src/main/resources/mapper/PeopleConfigMapper.xml create mode 100644 SpringBoot-mybatis-plus/src/main/resources/mapper/TUserMapper.xml create mode 100644 SpringBoot-mybatis-plus/src/main/resources/mapper/TenantInfoMapper.xml create mode 100644 SpringBoot-mybatis-plus/src/test/java/com/fancv/AppTest.java create mode 100644 SpringBoot-mybatis-plus/target/classes/META-INF/spring-configuration-metadata.json create mode 100644 SpringBoot-mybatis-plus/target/classes/application.yaml create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/SpringBootMybatisPlusApp.class create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/config/DataSourceConfig.class create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/config/DateAutoFillHandler.class create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/config/MyBatisPlusConfig.class create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/controller/MybatisPlusController.class create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/dao/User.class create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/mapper/UserMapper.class create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/monitor/SqlPrintInterceptor$1.class create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/monitor/SqlPrintInterceptor.class create mode 100644 SpringBoot-mybatis-plus/target/classes/com/fancv/service/UserService.class create mode 100644 SpringBoot-mybatis-plus/target/test-classes/com/fancv/AppTest.class create mode 100644 SpringBoot-rocketMQ-consumer/src/test/java/com/fancv/AppTest.java create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/application.yaml create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/RocketMQConsumerApp.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/Consumer.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/ConsumerService.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/MqConsumerApplication.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/bean/OrderNotifyEvent.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyAsyncConsumer1.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyAsyncConsumer2.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyAsyncConsumer3.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyConsumer1.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyConsumer2.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyOneWayConsumer.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyTagConsumer.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$SycnConsumer.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$TransactionalConsumer.class create mode 100644 SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener.class create mode 100644 SpringBoot-rocketMQ-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst create mode 100644 SpringBoot-rocketMQ-consumer/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst create mode 100644 SpringBoot-rocketMQ-consumer/target/test-classes/com/fancv/AppTest.class diff --git a/SpringBoot-LTS/src/test/java/com/fancv/AppTest.java b/SpringBoot-LTS/src/test/java/com/fancv/AppTest.java new file mode 100644 index 0000000..84d0c0b --- /dev/null +++ b/SpringBoot-LTS/src/test/java/com/fancv/AppTest.java @@ -0,0 +1,20 @@ +package com.fancv; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +/** + * Unit test for simple App. + */ +public class AppTest +{ + /** + * Rigorous Test :-) + */ + @Test + public void shouldAnswerWithTrue() + { + assertTrue( true ); + } +} diff --git a/SpringBoot-MyBatis-Advances/pom.xml b/SpringBoot-MyBatis-Advances/pom.xml index 2e195f3..fbd2556 100644 --- a/SpringBoot-MyBatis-Advances/pom.xml +++ b/SpringBoot-MyBatis-Advances/pom.xml @@ -28,5 +28,29 @@ druid-spring-boot-starter 1.1.17 + + org.mybatis.spring.boot + mybatis-spring-boot-starter + 2.1.4 + + + mysql + mysql-connector-java + - \ No newline at end of file + + + + org.mybatis.generator + mybatis-generator-maven-plugin + 1.4.0 + + + ${basedir}/src/main/resources/generator/generatorConfig.xml + true + true + + + + + diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DemoController.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DemoController.java new file mode 100644 index 0000000..1a8122a --- /dev/null +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DemoController.java @@ -0,0 +1,53 @@ +package com.fancv.controller; + +import com.fancv.dao.User; +import com.fancv.mapper.MyUserMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +@RestController +@RequestMapping("mybatis") +public class DemoController { + @Autowired + MyUserMapper userMapper; + @GetMapping("insert") + public String batchInster(){ + + User user = userMapper.selectByPrimaryKey(1); + return user.getName(); + } + + @GetMapping("replace") + public int Replace(){ + List users= new ArrayList<>(); + User a= new User(); + a.setAge(10); + a.setId(3); + a.setEmail("dshkfjh"); + a.setModifyTime(new Date()); + a.setCreateTime(new Date()); + a.setName("dfsd"); + a.setPassword("124321"); + users.add(a); + return userMapper.updateOrInsertClientInfo(users); + } + + @GetMapping("merge") + public int merge(){ + User a= new User(); + a.setAge(10); + a.setId(3); + a.setEmail("dshkfjh"); + a.setModifyTime(new Date()); + a.setCreateTime(new Date()); + a.setName("dfa"); + a.setPassword("124321"); + return userMapper.mergeinfo(a); + } +} diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DruidStatController.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DruidStatController.java index 57557ea..f63a81f 100644 --- a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DruidStatController.java +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DruidStatController.java @@ -8,9 +8,16 @@ @RestController @Api(tags = "druid") public class DruidStatController { + + + @GetMapping("/druid/stat") public Object druidStat() { // DruidStatManagerFacade#getDataSourceStatDataList 该方法可以获取所有数据源的监控数据,除此之外 DruidStatManagerFacade 还提供了一些其他方法,你可以按需选择使用。 return DruidStatManagerFacade.getInstance().getDataSourceStatDataList(); } + + + + } \ No newline at end of file diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/dao/User.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/dao/User.java new file mode 100644 index 0000000..3818498 --- /dev/null +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/dao/User.java @@ -0,0 +1,94 @@ +package com.fancv.dao; + +import org.springframework.stereotype.Component; + +import java.util.Date; + +public class User { + private Integer id; + + private String name; + + private String password; + + private Integer age; + + private String email; + + private Date createTime; + + private Date modifyTime; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public Integer getAge() { + return age; + } + + public void setAge(Integer age) { + this.age = age; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public Date getModifyTime() { + return modifyTime; + } + + public void setModifyTime(Date modifyTime) { + this.modifyTime = modifyTime; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(getClass().getSimpleName()); + sb.append(" ["); + sb.append("Hash = ").append(hashCode()); + sb.append(", id=").append(id); + sb.append(", name=").append(name); + sb.append(", password=").append(password); + sb.append(", age=").append(age); + sb.append(", email=").append(email); + sb.append(", createTime=").append(createTime); + sb.append(", modifyTime=").append(modifyTime); + sb.append("]"); + return sb.toString(); + } +} \ No newline at end of file diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/mapper/MyUserMapper.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/mapper/MyUserMapper.java new file mode 100644 index 0000000..90dde9e --- /dev/null +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/mapper/MyUserMapper.java @@ -0,0 +1,39 @@ +package com.fancv.mapper; + +import com.fancv.dao.User; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface MyUserMapper { + int deleteByPrimaryKey(Integer id); + + int insert(User record); + + int insertSelective(User record); + + User selectByPrimaryKey(Integer id); + + int updateByPrimaryKeySelective(User record); + + int updateByPrimaryKey(User record); + + /** + * replace 根据主键判断数据是否存在,若不存在则插入。存在则不变。 + * + * 批量更新数据,如果数据库存在则更新,不存在则写入 + * + * 分析唯一建 + * @param users + * @return + */ + int updateOrInsertClientInfo(List users); + + + int updateOrInsertClientInfoTwo(List users); + + int updateOrInsertClientInfoSingle(User user); + + +} \ No newline at end of file diff --git a/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml b/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml index 101859b..2788663 100644 --- a/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml +++ b/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml @@ -2,8 +2,8 @@ spring: datasource: username: admin password: hta@123 - url: jdbc:mysql://localhost:3306/mysql8_study?useUnicode=true&characterEncoding=utf-8&useSSL=false - driver-class-name: com.alibaba.druid.proxy.DruidDriver + url: jdbc:mysql://localhost:3306/mysql8_study?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT&zeroDateTimeBehavior=convertToNull + driver-class-name: com.mysql.cj.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource # 下面为连接池的补充设置,应用到上面所有数据源中 # 初始化大小,最小,最大 @@ -28,6 +28,10 @@ spring: use-global-data-source-stat: true # 通过connectProperties属性来打开mergeSql功能;慢SQL记录 connect-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 +server: + port: 9091 - +mybatis: + mapper-locations: classpath:mappers/*Mapper.xml + type-aliases-package: com.fancv.dao diff --git a/SpringBoot-MyBatis-Advances/src/main/resources/datasource.properties b/SpringBoot-MyBatis-Advances/src/main/resources/datasource.properties new file mode 100644 index 0000000..9c6e651 --- /dev/null +++ b/SpringBoot-MyBatis-Advances/src/main/resources/datasource.properties @@ -0,0 +1,4 @@ +jdbc.driverClass=com.mysql.cj.jdbc.Driver +jdbc.url=jdbc:mysql://localhost:3306/mysql8_study?useUnicode=true&characterEncoding=utf-8&useSSL=false +jdbc.username=admin +jdbc.password=hta@123 diff --git a/SpringBoot-MyBatis-Advances/src/main/resources/generator/generatorConfig.xml b/SpringBoot-MyBatis-Advances/src/main/resources/generator/generatorConfig.xml new file mode 100644 index 0000000..9640c08 --- /dev/null +++ b/SpringBoot-MyBatis-Advances/src/main/resources/generator/generatorConfig.xml @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
+
diff --git a/SpringBoot-MyBatis-Advances/src/main/resources/mappers/UserMapper.xml b/SpringBoot-MyBatis-Advances/src/main/resources/mappers/UserMapper.xml new file mode 100644 index 0000000..e5d37da --- /dev/null +++ b/SpringBoot-MyBatis-Advances/src/main/resources/mappers/UserMapper.xml @@ -0,0 +1,155 @@ + + + + + + + + + + + + + + id, name, password, age, email, create_time, modify_time + + + name, password, age, email, create_time, modify_time + + + + delete from fancv_user + where id = #{id,jdbcType=INTEGER} + + + insert into fancv_user (id, name, password, + age, email, create_time, + modify_time) + values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR}, + #{age,jdbcType=INTEGER}, #{email,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, + #{modifyTime,jdbcType=TIMESTAMP}) + + + insert into fancv_user + + + id, + + + name, + + + password, + + + age, + + + email, + + + create_time, + + + modify_time, + + + + + #{id,jdbcType=INTEGER}, + + + #{name,jdbcType=VARCHAR}, + + + #{password,jdbcType=VARCHAR}, + + + #{age,jdbcType=INTEGER}, + + + #{email,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{modifyTime,jdbcType=TIMESTAMP}, + + + + + update fancv_user + + + name = #{name,jdbcType=VARCHAR}, + + + password = #{password,jdbcType=VARCHAR}, + + + age = #{age,jdbcType=INTEGER}, + + + email = #{email,jdbcType=VARCHAR}, + + + create_time = #{createTime,jdbcType=TIMESTAMP}, + + + modify_time = #{modifyTime,jdbcType=TIMESTAMP}, + + + where id = #{id,jdbcType=INTEGER} + + + update fancv_user + set name = #{name,jdbcType=VARCHAR}, + password = #{password,jdbcType=VARCHAR}, + age = #{age,jdbcType=INTEGER}, + email = #{email,jdbcType=VARCHAR}, + create_time = #{createTime,jdbcType=TIMESTAMP}, + modify_time = #{modifyTime,jdbcType=TIMESTAMP} + where id = #{id,jdbcType=INTEGER} + + + + + replace into fancv_user + () + VALUES + + (#{it.id}, #{it.name},#{it.password},#{it.age}, + #{it.email},#{it.createTime},#{it.modifyTime} + ) + + + + + insert into fancv_user + () + VALUES + + (#{it.id}, #{it.name},#{it.password},#{it.age}, + #{it.email},#{it.createTime},#{it.modifyTime} + ) + on duplicate key update age = VALUES(age) ,email = VALUES(email) + + + + + + + insert into fancv_user (id, name, password, + age, email, create_time, + modify_time) ON DUPLICATE KEY UPDATE age = VALUES(age) ,email = VALUES(email); + + + + + \ No newline at end of file diff --git a/SpringBoot-OSS/lib2/aliyun-openservices-1.2.1.jar b/SpringBoot-OSS/lib2/aliyun-openservices-1.2.1.jar new file mode 100644 index 0000000000000000000000000000000000000000..5ea772606aeba315e406e7e0fa7286732c1f39fa GIT binary patch literal 604876 zcmbSz19Ya%vTi1}ZQHhO+qTU~GO=yjwr$(CHAyCu8^;UIP zS9d>M{dDy!F9ie)3Gm0yb7rv6U%ve955(7}jEJ%TjfAWyo&4X#zyW@KiKVDY=-GZf z4*vQ@{|j`jOc^Ro4ecC^6bT{<6==&gQ>b@PA7{{Y}Ea+QP%d z_D_Nb|5Oy>KMH=8YGe0j`J;c5NBfuZ1}@I#f2!nvr}Rf%|3(SpU)E%A;OJ!H_;1wE z|D~FXvxT+O|6a?^-o*B+8dnP=lYgg${f~A1gO;7sztbf751JOX&L)nw2G)Nv`Ja1^ z>VI2=jh(T{p9}iu-uaKVe3@ckXl?Q*TmHES!vA2)e=_0UI@0<7+mT z|1v$rZ48W*#040XEX-^ToLwAEXpO85oSdRmZIqDIkbP+-R%@xl73%U;5h}h#mZ4M) zwIFVj5KDef&TpDHMpaGNa&Cwye8+f4@O?4?&E!<#dJ;1GmB5*`ZkEys;o$t;Yo_Zt z^Ca_O)9L#D*{|mvb{Fb5;*d5n1`1hh)P8h$N2;0wHU|onx^ivdZU%X`%AEfZ?6uzs z92I4|!wlXv)r)Q)5C~sssK9fJ>U*DjY>Xh~%UsJOrMlAG#mohywEy*8*x20AV}D@S zq`Ip&DH9326yGA-qp?8Cay-WhLsgR%ppH?qimS_n&OB5$@+rEEoXLq9YViqhVo})Z zrZg)NysX)X>5j-~HE&|D)Q{Qv z-dW1T+te(w{*OkBu}C%Tr0IZeO>lY}Av)@_=(C!N3ac;txY zq(vS#9*(J6$Atnkr{naZj%=bc0TXPgd5Vl?l3CxaM(O8besbPg;eK=Ndu@#sv{uX= ztmEyhv987%s885k`NLgVt95FDegkp?? zFph!VsxvFFVvZjbW7#i)$ap!k2Gta)%D&<0jdFU!kE-{PhBaqYbXWwFu>dX|j?dq^ z(v~t=A)v5p+U_J2oZRNS&?L&IX6ySi4sh*WHIxKCLojf z1oir-R*LO>wT-Mqe30cdPjLE$@(oDwF-l||E$ZFXN5X3fns4kYn;%;-={ije&T-I z9;PiMYq35CuH}9J_R^RuPS`XWfnqBSw zCoz(-?bY3`1V3I6A=%5f@Y{-83R%HjWHlRbr>&JnQ>|U+h4v_`WOkFK8n@{yZmtma zk#E(AnII?f(%dl6pcRz(qwr!jC+H_-kmG2Ysm)icS9TWT(>3Y3<>{iJEeM{fY^ofA z0>K#iK=_Jat)n+Lu)Q^l5Kh-v*x^Af@EmxN8|E{_x`H0*9zoGZsqInIE8hkU9`VP; zy~*l&?ZLs&<=_Zn;1}IkrNzKr+`<$?J1A)nAW1mOKzF6|KsSHQt4P|sSdy9fK8dyN zGc_aS+J_?VrFp|%(LM5stvDXf@LxxUrK~;!YVJ=Vl@jd@W)$qL5DqlZTz&#=rIDRt zLx4%94N?szhZq`SfwkC^JNQC{RJ7sTIYABDVEf3ZVL}}m+grW&VVh~Dq`}*VeC9s_ zKk#@fk`N5}arEkMI0PoMNsQB=j+3|Hl^hY<*e!U5pH0gfCG%P28`H;7D_rmMlH@d6 zkT2dT*v2ojEA@y(!pr&m>MnN98Pp@Kmn*D9qOf4WhNqA?v`-qvlK&8?30Q0msPmis zKz)N(?OhVS<$}o5m-L7T1Yc@-?>gIn1d3uj)eL$9D*|@z7Nn!#{0XQt6M$)ne8v#n zAaGUm3HJ983mo8&)pZd2wY%*LKmor208swVK&ois;9}zB{0EMjIQ|txO=P9Q0U3}h zORBEy2(krk8|ZhJiz2B^`1^dIV_4@&*Ci(0S5R)~+7SG&uaE}gV>q~a^iPcY6Z+C;UtX2GZ`U!=3NRkWkJI+k zWYcCnKveTm8s=oPiSyocXq|dc@N@+`>?4%Zg@4<+R&wV(CpUtzMmHp=UJf!ZS^xfw zr}UQ>bU;QJ4-KdWR?%ni#&(Bj`X>j-c}!%Y00ICQf2}5T|FZ*>{u&txIhq)o*g9Jn zSUde~DT%kSLK1)<`OMHxcyyFFUmIQ?X)a@h+xHLeu7y;bT@EG}hU(tbPIjL7LjIqS z@2ZfRLukGLe2MH{90~E6_+Sl86O(?v4Ng72pDz%*1nU#(!&ivoq}TdNU|J-~(y6Pg z6z1j)N`qU3*9?hm7vbcbh$kUJpdDW0Gpz>>eus}LPcLSEaqcQvl-AFmT$1L>ILL05$8K*=;xE9+~l_PRh>m1?PrW#v8X!1dNL5_xd3qtM>5 zp-vc)bdBcOz@LL%F)ex^hsk#x5a2(ir9F-uoff1a*2HIm z%o@rQbqK}@krgD>lAZWu=+B)y7}v^9fj#mMBBmYgG@{*d|2ilOS#@ zJ6`PE^w`%}!r^qdBdu)v{_Ve~*dMVc;@CnGh$4-JI~HQi2J)Gd4GH-H;FriA78I^Bi*34% zv+ZF@_V)ARH{>on7OJE=h0&5A!Gx7bB~xk%WAd-aJoAGIY!8$RQQXryuQm zU9prfY?WiXk0PMbuC{*JuFim}801gte*$(zw%+Kt!gg2Iy^p*;!WCy|KZEwK45LDO z&RkOYnJ_NQ zbnhE?Vk<#a6w_qq^X^?2-wfJ!lwg8>cmx8@Hb$k+gul0 z5{QB-mEoiHZCLHiEt0|S^lG#y^QU4KK`mug!oT;WQ-I-vy{tI2u+mO4k@nMRBOBQq zxXCIZ`!C_lx$j0%(=FbD!6q{TkRbrw@SAnegJgc`ul-%Xn4OdK0uL>gd&|ObQ(`cBxI9@Lr?p06Yhyu4cZ$iDDO^JI0KMh9WPN&Jo0^wS zZA-2dUP&b?(%n*Z-(HX=`cW!4@mnNtV;Zr=rl|k(Tf;@M!Gm7w&?2S~S_}1pr7YRH zYEr9(Xi#d9wU`5@D^edS2Df(x!EzjapfO7ueI#xIjnJ$mf{{3GN{3b$c{s>pBDTnu zw&MBqPhx4w)**o4Frt`?*7Unh`EWC?5&RtbxM5{RtmN?~qFQi$js;;`Xtuffs3XH+rf)+JVha z$OHn1L*9??A|I%*LO+F(3R}wiv%GqmR&%6X6pg+Q7MwOds=ra)mv#y)j6w0lV9W6{ zvz4n^Cb0UDiEpMM)egh^Lns3X;MFPQyM|}jH0nHK1&-~1&!m!Z^btX3{?WGg9t+JU}bPM0-`9C zd83B=31s7O6Sk@oUo4YRDAjJ~Tmq#tk1TFzzbU9TU;MsIca`FM!SRaa=^6iV%%f2s z2fQ4jIU;9wy#2c6a=kf+W!L2j!;kiXDu6AyuMF&xx)@UiY8_OBS3)u^jL(1}0(pl2 zyC(`}6dy|jHpa?T3ke5;Er5Gkk{dxF0rb4D(KjP(U+Bdi8Lv<5=~jZrn=(9R&w}T7 zE3U8Lei}HdIYZ81$>YHqdG^2qf;VQ)oOVvqi#D*0yTJa}|KIcyU*ZQ-K=AdUO&Q0p zWzwPxu>FsP&J)w*+6u;-%!ai$oR0?z(W%N^L$i?9iO2t!{JC8&VHoTo8G4hvz9Pw+b>H} zlI;yVnlhDCj&V2POUk`D`19Mj3PMz3*E3qO=isXSREVOUWloeyFFPoz+?CZ} zwj42J@Rl)quMzHBWze%!c#@w_@LK5KI2UWePD(>pi8)CUN}p$dQRuBE)4_AK#4eVUQ1H2gaKwIGm>=$9shMkX+UT(?t-dz6E575b zcm(+?g2La$WDZCE_(wg<+Wsd#O+6a*x<-b8cKV|VYH7JsnhT&pmDpTVNBNPSW}DI) z#K^<|;B#PcK^5!u;6UvJm@P?wY-{^)4S3{qWb@6#?oQlyYwH z*W1eZj%&5lhpoX#9jSr&4Y~rXnv&10rdG3Wx+v!vfM5D}T+ zzjFYG=*N6Zwn=}>X$y{Bn%CK+5?=0lkORVL*&Fu~;m>xf=HGmj2(Ub_nb;|o+mJj? zSZkBE^n<0M`JBN1qzV$WWi>vFqL$Kv%F{)EE{sF-K%k`($o0V{%{|iz3yG^B9`hwM z&A@j3*KQSlfHjFta&>Ma3<=d(+T=!avdf}mh0*3-<#!{WE~0^uVc=`bb`q*OPOCT> zqWH4P0#Gu=a$)1JbwoaIEQ$8RN?MVERH~WJ&*{B%Inpw2_~SWoZ;pzXwdDZKqj_7- zvHc@YD?N@dLj$Tr1zhg#jNqg<;bmT>!iMHSs-KWoEfS|gIwGMG;!POh#X4&gBJBld z6wM@ej`h(7MBm(_+dRZte7O6m3hlyV2cMS8BIbVU#)~0&rHh)KS>yATim=7D(H&@B zOPkcKAMkd?uOcRy<@BKF*y&a4-2QO2B26hV|HUU08QKtPqti*a5+Da#tT?2*AMO4| z!x^(Yj$Djq5In^U1N(5*nl^3~BcIs2Jv4`o!8aAPqQtwP%S%#Qrn&EdG07G~;*>1b zP$PbmXt8kX%awuaT<`UK-JL_muk^e4W7LXZRF%2C;#{=ayWAa|N($0z1=rI|kR!Q@ zG<+%`2VB=ObI^4AaKE!<>23fQNWDq61tSyU_G3^sXvT}f6aDEBK(pCR+kcferX5L5 zeup8Vw*p-E9$gR=`?_$=}Us@tkhZXZ1h_L8}(+8A&x43ocglrCkOYjo@l( z0z7LVJsK-EtA>aZPJ&_YVna{B9u{WPI8-~BA!HZ;Rrxe?DBNHUXO^4mxV9d4%O5J# z70jrwLfyv)SH@VYAY`%G1C^$(7h4m=HkSjHx^u>$N`IwZ7S1R_oIysjM#AlMFH4z& zIR*xJbCu@e2CC(UQJ&RF9Sf=@gqsW7pmC)EtXtjN!3t@Ys}m2d2Prje=X*?QXLv^# zrCA*bYUioOPK-ch{?WQqi~&s!*J%~4^~ofzZ~Iw^?6V@C$I{gGbW2x6%^di;)hDGM-jpiNHt)wiRqr)$hML`7Ojk-Lka@5>fMU;dXfv zDHz6=KpB3gF-&7W`Kp80#M(VjkvmB5w+<2^-XyVqBXCgsK+8gmsrG}KLcB?E?|Fga zxmPD3Y3kwq4u?8_uX~=)Vx20s0pS30)2c2#6e}j~6^zBJ)YnKa9f=0u>V=$Z0nDV!jTQ{`H>iFZ%%zcN3$pV-`DGA-k``3wP(g?F3Y;oEB8!dFqY0 zT!pQr5!dHY6(L^`9zzlHZcc&ayXFnpg2~oi>~C#4tp->^GODuD`EE2Pgtuwhi-JVMI#_c;HrdWKSV) z!rRt}Q{GL~DuQpSlVrwEWuhgY)haY)Bn(6q{cOQLEI&vrDd(yr)Y9O+*G2c9^EGw4shaY(yyL=l&5~MbUtE%LdC|mXo_7p+sxfDungn7e=Cg48X4 z8b!~U^ZcA$2is;kf``$yekuTN#t~|x?59%8PdH>3i@U}TM?J4*p3JL>QRr^fDCw~M zk+l9z;OzqBS5DL=UoIbu#0BB2I6-~R>@{1V1qk)Bu25N$Qi%A<$IxQJ$|yD=m*(-u zy#X&t2mg@&!(&*ckbn3j(k;lZEV3HR?{l_s)sVacL$$G@YQA(zZ&(X{xc(+SCqv?n z$Krq6r4i^R!>6GF{Q}fHz?y}FW^uD%Avh#oo2c(j3Pr}g(8IMiQ*tC7;%l_ zhg{BA3QE~@biVXalg>%wy2s1QYebShO z`>X`lFQI4wtKj>Lwl9@Hm&jFir1dH!)_6!i6P{~r#6>2<2|u#Q_aR@qOG+?Gl4RiP zgc{q!8f{;hZ4bc0Lf3#1ynd|a@DFNrhw_ouCxyLa)`Hy_bR3^-di;qy{DaxSt)x7D z`eF>0zL4Tylc#?{32|p)s zZVwJ2Wpn?8H2%~gIv^$qvN-~k=m}o}wKb~p_fSS(He*Qn@tO3{-BMC$q<%MRW}A3m zfq61B7O{>hDm>0unMFHQE6qm(9Y`PdHjYyelU{{ihk!;TV0R2;2)~m0yZG#pl~q1p zwGcPI`!P^gw1ZM4Q}s9wEJR;ui3F@?4|*y}0`Qz2YRC7aRz4OF^$_umafq9{ zj~a&w&7oVryIA4p>SGe02H@0T69s(1D_bA>S!-)#0N|4-hq{!0J8D zC0Ijx!FRPcsQ+GK{un&UbaY**umAu&Uq`6q|MMR4PlM-gTSE;9Z{!n~Pd?{KOJ;Ne zS%bhjnp*x5Kwdz=z#w@1SpH;Sb@&YEj=;v+j)v_l5&e^HpFuZTaqJSA%Vr783|2(p zu&ZW&X5y}xMw#_T@f#wZ`2iZ%*PgVkq#v#}XDNClk5g@r?peTB?=${Kd&_gY+DaF8H=SNrcUF<|xJ_2Z?! z2zjsc;sxD~v_F!O9`Ad#zr0)irudi~gu6YFJfU-bkpl8FF@*3f1^2`0-%&oWyK`&5 zf9Cuh2>V$&z(>)~hxLMn^z@SFkC&z%=2tb`v$q5DJ0wiy+W_D4n&0`Y9%=Tl-^DGT ziaW}u)$XTs<&a5Gr|GT>Qp-Lh0U&JzI^)Ekr;aWj|2Q-STOCBoQ&E4cB$8GD+CXe< zSXHaFxQe*6P`QjC4N@25#vp4^T&$IQ^ki8wW||gF6Jw3$@dO|aDrS8tCQtopY?UVMqa=TJyKs%+|2a36uoD?;0Ak4_*tdp09 z72<3-A+O@ba7f6_ZqPeaWH`oSkogdzIxy}56m7}iM!}daG^05sV5zyZo%Pjb)e{NH zx`#UVBj8bS%O;#8nh*+&FCuHRr9nGQNwDwnehM6(E3fl-SY~9@8c8JGr~356j$9q; zx6Vk7#0QSI#5nfK;LW)6;srqB5vwyE!5^C>yj z_xY(%V((qQA-f(Z%jxI7?YoCK2v}k56urLI$~MNX(v7Gr^y(3lajeZ*mdiU6jeXOs z)a`}g$aRov@xy?imB2omZC3{V)1u45G`*G(DHQTJy2Gu;NpE?~J(%7Jy$x;OjWj{F zokteT-nKd?O-}|4)Q=o?dl0jG`R$?!QN(>DS1RSGHf`=Dl^rs zM37OoEK`{p;1L+Tva+&tA{x!5TRlmi#)^EW$M;~izgIE0^aMfYK8X0)nXp%QaCAr3 z%1`Q~Jj+gWzK@K20yXErxL@dK;oY1vZQ9xF-nk{=)%YOM8jwU{2^fVH5s3yWbX{xQV9jtSE46N1L2^|;6$>lXJOL}^ zI?fv5k=CG7zY$Lh>y9laKf*Nr>rkS-jJ@4dYPXUGiKv(abD~tK6m>l$bJRg|EtV(w zG6}aY%1(FaEWbUzjy~MUb5$q#Q8I_%J^3=>Js7+8&=#ZiFxR^7FxDE0npUOR9-gNNus$0enz$=GUI!z2b0iePFSGGjiI(#eH)9DP#@ z(!a)4h7slJ16)Y%lmD|ucctI=dX(6srr zuX14<^5w2p6#I8gg>hvYjct@v08cG9?zl_44IfPB;@C;SnIZ|({$MBa)MHGLDO%lS zpF84ud-F;L`{Dc8v_Qp31HI!w=oN$QM0ogyW0~qU-a+k+pjUsmb&o5wZ8i3G_#W)t z8xJ=glKMgYTFY%dCUj5VpdTk}IY!j3?BsHftbI_@P`I*rL=48$zASdA@bj+wV#4U2 z9x9O}2Fhr2+{kiSRW#f9s6Bmm*_s-6X}MxfwrIaDbVof%juj3Ljt$RcA?(Zdnp&C(bJ*N6$g)zo|zlB|Kkvrn+?-En1oiqAsyR;(F_4AU9N zX~%*!C@GUhzMFv_OGC21TS*xXf9zw)M(o0g`rK3ZBJ1f6?QugQT3d`v-Kp?Xk)r3G(Q)bgR$t2qj;ChkCuy6I;{>*;(n!Vob-9fO`j-{cZEeh*@8>VY+)58jA`)BN zILDkxDVSH@-YYcLsseAD{TGBjPu8kS+9FrtmYmVD4~c=EhnTH!a0Vc2}83MUZCmQEHW%F z1qn5k%3G+50737hZ#}}4Cw@skaR$~!?zp!kUYe6Z#*Lh$Rg}cgfET@&;dWR2@F(+Q zN`qy>3RJ(w=(#}C4ZQg1H!N11QlrqNl~qMX=v*CvdGh%jx*IyB7VNkOH33BG!=hQL%d)+LuqQlOlPyAnUARH`Vr=z{6~PV^dhT7` zlgOP>Z%PV5aGH9~l8~`g7S^lx6%3yU>hx^za^NBtc6|>yx<=AIcbM;5k7_WmxXmi! zJg_@+OFMJtSUJyYaem74#?V@;wd7QDiN9RiSeZeJAi=^l0mbNhm>A9XHVALqgTSFJ ztIXPi*>>}gL|`5XxG14iYJ*PpxvbCj`N9q{u#s^a937l@ob_Ip#yd@<`%UixwX&-e z8C^DHgj4xCd-8aBmDB!_ur`mphpu8>1F~4PsPaeHhG%6P;T5hEi_KhMNw*pouGz>%WTe6guGj2F8idR0 z3+DLsd*o%AeA6Qkc$t@Cc@0eBr|J_TlULb660Pc;ewxFzn{)P@xV8<*a>Cm>l)<41 zuv|$qLXi+fAEzstCBIxMRDTNKv(MT;oj{y(=$&lePKem+2J4uo%Sum(JuakVMYcoe z`K&a%xLonrrylHOMfUO7Y~h4FyFI$v-dvv2{0wWG?cMR&NQcqXVWzuro3ATi(38@E zDH=*6U@)<}6ArqIzJj$PJEBW!Pn8aLp%w$&$m2`;E!BS{LNcV0Dz~jEU+0N@Pe|5a zpA%EqYg)*m`3;cqHupJ$S{69tXaw8=<)shZ6ecpivZKra_~=AFZ)V(y{t<&Sq?{B` z2B%z&ExLc5DR>QNN~WN-xT({1nqyI0_#OQic5!(+sm>{tE&R0##pQ@d-5wVT#07;& z-T8YVYKy9UWk*+i^*&)VO{q8NG_E1w*ux(qlt3{Rr?!vr2yxIq#2=&8~ zBOR*4CV!olLSU47q|D+aj=KMpdK7DApQ<3&T(r*Vh^=rP+Q_Vs$>*yaKEmEEJ$MaaDuD)>h4VA<*A&+*VM;Mz>=mR*KJHxG-vXVl z2e}}i;xwtYhcuGXiOeXoy0C8Y>I7eCwI>Tvy@e z(BcjXF@Fwhb^$c#iY@jMf$|#e&aKc}?=ld?job-O`{a959XO4ltIh$bzTx)z$+Vd{ zEkJ?flpiVd!l#8PbQ&q^Zlbw+@aOeDB66o0wJ)2wpq|L>9f0I8y+CObJ|**D_g5Xc z9GTS}b1+95T=74UFE^|Hks;+O^_uwuZwY!U3p}G&wAFcX! z&lBEx$FUe`kU+ST*P8{oc?r})ek%*Io!`rf*Q(-w1*y#%Yy;GUbEG%&)1T4A1(@sC zw805Er=ITCsh}nH+zkl09%pjVfuF%b5+>p7l%zSFxD@>cY*w(Z!asH^5 z#~$cCf#EjW_3%vc&nZyx!*xeVs$s~4{tamMa5B>qNdnr<->x^9;)pvd8J<2kEnmo-OGAAPtLOu!fB2s=>X_r2QY(~-ye-Egl9N2M3sK%^5jg0J5oO{Z|A#x#| zq#3L?PIC5rnC@he8xAE!!DyE%rEaWuv_f66Bhtb+F^o8L3oWcP&W-AQ0hb(W0AU>I zY(oc&2dtz*L3IK=I@-WK_l`PP6yd_wGtUZoghg;k|IpmN9Wa{h>&cZ4# z=UtgNH*9}G4`Pmm-zXpaIh;!CfD4QZ-E(OlrLs4YRvL8!(!pR>Za3Rr*KH@dW1k<- zCwc(Y2V5{p=B4U$u>u7EIC`NY<>7QJhjXceIGZTRUi)*4_IOs5xaKdA7nH2%i#WEf zt$6f_nlqC;3#TE?M%L+Fph9^zZaPetZ!J{4~Yalh8?c0 z#w1z6V)_~8&Z}PpL56K; zKgrX@Ie3Dzr6OALO^rFzyXGn5g~w(dx%=za|122tn!_*44Glw?h(juD>gu+;18bJQ zQ*VEk3J8r(cnQs8<)sol>orgRwqp-;4eDxsmiY>HmsJxAWf^kn$SJ`@01tFes)j^YW6LUWhDMW4> zB?IN+h>+1i^22gy-K6`&AoL&wNtW=kk{_dFiT88Dp@S=@dUpK83Gj2ixCHgi!QF{4Ts>Azb@UiW)I29|YUNMeMT-yo zL%~s25`;ot4da2M9YY);WrbKhuw^wJMh&-f7Qrv(_(^?dW`76_`54ko-f7IbT@T~p z4GDraiHxwkI`tR4_=_Q2Jdl{oiGw11R#m9sL7?IxxqjM+)efAE{b)e(LUP=zoQnU< z$r*GG7wTJ@FO?l_F-G+Kt$S*ceA4WaXGVh`1-<9o1cD@sDtli7JyN@fHJbx6kCQl6 zKB^!N$#im)%a+ibG=<3+lvy8S@ohO)t(10=UUO45buNAJB9qZ9QElN;x~vPvI=wT9 zusLyQn^n@38H$U%Vs5c0&HUz1?DiiJjt*Ju#P*dHyZ)8PqWV8~l%k2fiGlMUmt`bu z?OmL|lE6$1Y(&0tWSu>TW$gr9ob80H?VL=E|F5Tir8BEkHf*s}kab3Iy{r$k(+6!c zSoPNd>k^zLDIki92pqD8``Tg)Ef&C&>X;mgBh4axpbvp4@4op6_iE{e10%{H;JXX& z2jT63xsw}Y)j1KkP!SkRI8Cp4)%fT*{eIiw`vBY}R5d#7-{7nkwr2?j*bd7_T3IyW z4sbI{?KOth(1z>#6owaqRg&}-64M=t?1f5TD=Bu2a7(#&a|9%$n~i(gY-iSKGvtJ! zD%A({9CIo&ZbEd!uDa$-YI!6Y+u$upH6K$_6?UswA$cYc9%HkoqLN+@PISc1DfFx zi_=$7zlrPxeZ3|vPYm2dF$Vr)+RZzB#<#!kLUzDqTZ4nMOQ2+dJ&N0pKit)M*lxTB z7A#dgAa7AN2yPepc?-Vd2dGQtl7nmznmb5Mvm)kkIlTX_P|pvgszUz&JfiKzW<&7K z;6Bv(T;(&tv>SwvV{rF9c=kp(St6kdQuWI~p&i_BbS>ZD?n)H$?{WHGi?J9Wvh?_` z*_56$BuW}a2wylDOX4GVUjW|+h`2&4qb>bw=y{kCrOmlQZErrx9*y#h$$#xiX`|yp z{3J+*e*gY*!gY$igs8b|^`j+jQ;1jy;;Nekb$$E&Kwoynn{m_Bw}N;W)8h7eATuBp7 zWc`#%%t+Q^1(}K#?k2CZx172kvNE3Da(cP}>~UmK2U?T*;CUzK9l0W)UQVH}oegoJ zFd-#B)OqO27j$59jOW5gTpB86MNFQ`H2ak(B2X&JL+TMHB(;_H%`lf)l+i`iwqAps zp;*{>60~T1T#;(l zVyjADwPPp6xv*_ayVyKPZfv&votkpD;+SeQYrPV;Nf6RDU;VVo7-WSzM-=r)vj^^> zHE>ecHQi%%`@ON`;d8LK|9zzYI4B)|^=?()b{|)$eAm_~xPfHvc1hGH;teaDSx9fJ zscM~P0!=cSPN|-foTlNEz!D{8$B@&7Ge7Z(odoMmca%n2YRb`7`ko*YNAWCNMRId3 zPK8o6j({jYuxan|&L-H{H(9I=4m$LB~tr6c2?q*(^WmTKLATjjtLxnNf|zLL%Uz1Mag+r$3tucdrmm#!Emc zT0THcIkEYR;)vQydfv%R+w2`o_tG8fu(SHAq54~om-1bMOXNNc&c-e$u79U00rTbg z>OiAxgN&4n2tx!G^opFE|6cvYO=_~)nu@Jz(W5jjZz_~3{v}C!C^E|;2C3YFJoNij z8)XX>N^@wrO0P+WmE!Bvt!>D}SJJRk&Uz0UAHq@>fyh+hvBK8#IEX;pH<4Jr`Ld%b z9ovOPoSyJosH!qN%RRh|w``#%)eNMQeX1?b#r)D%H!zz5b8pAjgNFs!P7%WwW8tC| zBy6L&@sR3Ya`btdi!^>U^S9h9DU>BRyl~2{!=Ex!^rD}K1CLGOgn6U^vJguid$K&T zUXYQPj+x6+#P9yhoaTP|++a+KVB+Xwr15I$;!iHW1DpZr@~Y5@b2#{en=b?IusHEB z`G}l8I39tV=jyEL!)%4NSR9t|^TafaGfsU_J-e}edz>}FM*Y|rN9Q<&CxgR=z@hg& z6IN;A7YOgDkrv(t?{VtsM+066Vj%FjFG`2X#;l(>PdvGw1tOC`nhNeVH*i`*>!GPGK?Bh#P~S zud|f7F1J=TDs6CKZAC5FGI?^_k<>}rtVVBO&F|mF)~3PswS*^Z(&jS`S2FIiD{e;3 zL4qOnzjJ6Hx=6TXISL`Ac7D&mfrnJgo==g~zop<% z(Imro)CP>D!{!40#Rzlou40r_k&&=?U6xeyRqa0Qw=+XB?Gm#vdQdbMAv7t-{IxV4 zkUEoweiNFlU96~I1T8IV22oPJrfEyAX;l+D-Ats>&W5a8>oANL#Vr;hA3lLx`Mo$H zDs9HvNBO(Yx2CSeJ+!2mrt{9tIoKWv$Vr+I>wf;>L7=gYnn1(#S0{*uiTL3*N|<~h z7C8&0NU)u$SCI*^1Hf%djEi+ny~%ak5O2S5k82mAv!{c5NrJ+DN@Q!CEM(4n)YKy? znIuWduVyLYl`%4S_Rk9VTX$`>+s~FSEX4!4KByouSDBee;t!NE}KuK^Xiq=8#dQlwW zJw9NUzeDL(y@Save?gtu$6poNRI)Fid!lMxCYna7J`mG+xARfL!>zG)14(>#VD=nb z+{Lk2=u8trm(j6KH7ro52r6#$aG#vWA4#P3g3lhA*=bZePtM(gX$cE%)qt5pR)VwN zVOluLmy0g}d<{BfB9f@FTw?}Kq4T)^{d!v5YzmK&Kc$h?FG*fV{Zpg2%3t#u2z zT~y^7>zpGd9G_>3rdttOmJl>P=( z_nw089^I$6SxD7bTn22PwMuXE?Sk6>bInm6YYWO-qBj!)Dc`OoyN+i}&>OE==Ra;=}?DX584yVV;A7CwTi zKQ4oEXRtn+=4niHjfm$pj#A4PPv4icXj5Rz3*RXrQ61>qZNfj-b@doaHjsnFSzAK!SjOlj}U~l%tkf#1>788!2NGX2SpPnd%Lf< zVEhAe2Sv-sevuAAdUs4!f#_)20tBS4`^iOfwY{n0``tE_v&O|;Sm;GznBr;p5Zp5+Whsy5eBkSktuVI+GdTMvD2^QTxPv574I) z!QSNrf7RD(E6aKZQ3X}2AJmf5^t5wc{WP<152eF9F|`19`^;pY`;n2pl6I%`{=s6V zh2YuaD%2;KB4x&Le&@jMC*1l8DS?5okW`W!r=qFaBs73X&V@wQ zY*K^-=hCPRv)z)SXLmgWL;MWJ!9vAXAgI%idQk|)7%3Nwm$bg#97%KPuJikRy+i8t zu})DCwnE@!bzh_2lZDU%)Wq}voXBdq?`rhMfTrdO>(sxM&&4KVlsIs8F9#ls>s`+~ z=sexna`oD2ertXhJX?SN`B3r(xa5i+%PsCXFP9`5*8?0Wrn^hxg=~2J2>e*5RCNGy zuEEKz5Jx2EJ#>~w^`0Hc&3lsKc|RNhG8v5pOLOLhH{Y9oMURbkQ4}tgSQf2gHN zYm^&LE7xFnJ()2Q`nrW?p4u=2txf{uWoX)8Tvl<{)6(uSxF3$TQFfvD>tb=Hu|`}< z@Oi5a`$#D9iatu)W%tg&1o9PENLha92ogGxQoT37_vhynRjr5rExm*&wIPb;V@<>( z8#6L{pesmp-nwvFd2i8WGz4(LtY$$5m@>%H{{P|Y9oRE%lWyTS9ox2T+qP}nwr$(C zla6h>W2@t&lk7b2JnuI%`98r`xYS4pfkMv&aEOOLVc_}y*9q*?n=KSqcfT1e^Lmc@8> z-6iXbc1I*y7r-}hxhkWZfb3gTV38(}#VMbE!O=aVMx`|bH%4e;aIKMCe$2|@SL?d_ z@^UBTk}A{Y8x@dwM`^r-x>ant4zgO3-%h`3t_4R(Wz#vO9c-R-9HX$)G8sCM&V+o- z=F3r(3^aVt3RT-vn}JjpLZVwkT2HGOo{~^m$;q!+^ z!+?W+`&Z?JA=H`A^-GI1XH9KM7bbVlj7sbswyi$VwkOl_#v8;xUz)%8AI3Yt=g2oW zw!dE*#{YM9{_k70e{<-6)a5BjI&w?=$f3LIbsH^__`li$t@QP$73N#eM7*m>r5V*I$f-*f|zo3kj2@FKu$ zpB)SWm;}UyT)LNrntGHw%!o#^5WV|pvJu@1qG@y#yGRru>z5vDlyM5z5wWObQav&A zAiw^S;#B6v8+G5-GH)Bk-E{#D6r<}|3}X7WQO@@IB5!hYXi(U$&Y3(OFvVOqIUUNi zqKfZcwR1AT8DPGOp7MxjQBxQ+&4*#mDH{b32bro{nBtJ5IKxbI^z>?bzx_C|slh7; zg4+3o%j72x=4Aq|I&M^n8~oH}Uc(g=D%ApRkqfgdb+viF8pE1FBZ!qo)C@1&9!&o; z^5?P2A7g{sPVF=<~>b>uAgXh|dCsxoBI8(Z&?m&3){ zxwXP;xE=)F z@-wzy(Px+YNVnn~r3cnEBcRNqrY~SqOda|}2 zz|m}+=3N{Q<80sXJa=XA=DsE_3^IJwh4JPQtm!*4IOK3&*G$5uvKgrWu&o%K#*5^2 zw;8Dx)YBT&aY-=c933h~lD3=uC;9Ux1@g+wwf9OnJ=M&mhoj5JtvjcI=0~6mErCGb&z!EPGU>I^NoT9K%KhLGl`Va~R4!G{0cY`TU|k?GLO%4=Ak@pZkwL-yEN z375f*60?Vq>GSm2IEZrkKv;+5Uc)-6^IjHR2&%rpYfCSJF>L049Afwas8hu&y%9d+ zv6MFa>rh-@--AL?qWt%tO166&-t?Z>?nAC^$6Q~(xLzG(*i{>n777bp=&|{;q19E{ zQOKa2B9~qv+{ZPKQA;x&jF=p#w{_xB#?IJ_gz6iYNExVLyb`LWsKlkjtyh@A_yZFV$L%vI*;SqSC>U1L9vyHI!2e2|TOv~n2Y*=PY5+N8_ zb<(6u5@K8uO}$U~fB%gVtdvssh}i%b{kTytd)whcMsvExlydqS7Q$SDR?#&9@$+HU z-UW{2T%?6of`y}q@OngIMK%4o;dnNQBVe2um(b|_z5eSNl2$PsCoEYq6eln?zNeDs z6mW;}=xUUSiL&>9?lVe@2`odvps9$xN)n{)**(t86UiGgTs*DVHL84y^wW+fmKld8 zL`m%kmF9SFu^K zela1fn4e6j;Dh)SWEca9v?mKJtS;`!GC>vyu6)uEysy$j8qGdnk&WM)Atf6h#C z9zDv&Z!l4%SXtQN&zGKffwpx?J$_OBsob2gj|?eP%VAyIrLSW=jbwHk3`2`Q~o(Q=}A*tx9h7Mm+$5l*E#>Vn= z;SHe&X~CYq$V2Gg?8^zaFzftAfs1_@KVpzWcMv|K&?;Z%5_=avljRX5Tek@3vP0SF z9_V`E&EY3mb~ESZ;+frBdtY|+2v*-Q@1yJ?oDI2`0C`HGqZXRgSlINFXIh7P$O`X z^@+7KOe}4T^bAXy{MNNs=!6bph70tKcBh}2FAZ^q z`Gb7ns2xje;gC)ua8ngE!_CsWZRYtlt^anNb9eIj><>zBp2e~7u%0Y${(aD&_!+&U zFc;ioF=k)olhGHeaxTsr#6i9pJ+YGnEu8sR2+ydq;%r1xe-AcKft=@C-5gq?vEvkV zm7}HwWDBZyX(&|I_j5|Nci;fYHv=_+-s9s5R zCN#Ol7m*yjeY?sVNT8zowwF1Ex9ZF$q-^rKd1Yo}82vSH(Ae&Xi!YqOCg zPi0Bk*@Zu5!FG)v)L5I&4AWRrL!a7<)!BVw$EO|8C^(e`!BxVXf~sQF{*!7cZkLbF z)=X6Eeef*9VEUSwUNRF;kNp*rI;v47A4|qaa+L-FY*0b#n71Vw0A$({>#`8qkeNl& zC2K#gbk!$xC1TQ9;vb~38X2mHqC<=vg&7i3$wxzlmyKU_Q@X`u?^VruBnnM%mWILlSu26sXD~mQcWbb&T71YoRw$kxJv|$BH5~JCIFfUkuj2s zm(rRqGc=%E4XS}nMAVrY8kl6X%GsO21by~p5B%WNEi??UV38q<#Nbq7zP1^!q!;+9 zWQyc0OdUfJH)H7MI*Tj-Om-CBE3a_qq=S<|*b`mt$k~Gd+7MXa#DSVRg=*&KFwCeq zoDeV#>gN$Jp~C*`lb1;F29_?*Ev{3pzC5@w`>B#!prm13M(O@)vzMzLL-n*TmT1K* zPuDT}QOsqDfk5R@{qu*Aki3?UY(bVe^pH&eTS^mRZVEhXry|?M_1s2!g`qM-mvJ+Y z(-aDd#_#-7-|L3yXaLQo&MGW}+$=m4|My&ReQcY+QYb}9B0>)?tZ?r-drvlIis#7E z;V);qm0Pv(OLFZjj7zjC_U@`g3)>~w#z9JE`HVf--ai$UOe}*5i@bp5z@p7UC>mn& zFd27wlz^a5IGGmn4m+I7pxPav*KsEsX*?48`tGD4nLjg3fh+^B){(w=3u{xcj6N_@ zFf@jf;n-))e=-lYSIKyjU_2%Tn)hz66}~MG!JuS{-JX4#mtnBNOkNX#eR8g7NROWSf z3OrO-Q;>{~6wWh*y^Tu=!*T|IQHVBxJ{ZU)a)5XHGtG-SwP{p?c0E^ z+=En_2Dg_!Sxjse>C>sjzq&sG_~M`}fId)k%d`}nEjoiHWJ0KJiJeNmNduV$d6GG< zaEo|!DV;(t?T0|d*a8#J(bul41);+_@u@;Jv{v>~`{8j|T3+lQK5(4##C|Bpi}99? zB9PgjTY=)9*yh~>bgZVKT#@utv&)j;p8SyEJY7`er;T%kM=x8Xt|Uei&Xgqs?2C@c zcSL1TfLf6oklwjRDPw_;I#smi{xL?cA7<~%luuhkN#24Wm>1GQS{=ch^OGL!faO6W zyP}XHT?eZ2gk(jVP)^dM${fo_cDygLw&)^7P;DN@nW#K%PO&q>Hgv+S{~U~x9jFzG zxl^TR*6IN?#&*%XOH_||<wNxQ37{5sGci1 z!Ie^ID<%Vd0K%2IdUZK9WdPpAB+14pT3$oUCVL_*MMFQ}5bDwaK00lY`6U;Ml(uZ0 zT~Fe^01@pt<$PQ9PP-)8s=uF=Ul(pI%i$W8e+#5N%i$QcWJ9T7Bm;tlvz)WU_%=n+ zTt~9N1tKK!x8|4!NHqI`ay?H4D{DrPGoCO08bko%p z_DgYd(17GJ0PV)v70tYpWy|i&zp{A*$u^oK^O{BuhKy%^Oh5iyuXCv%ZP5Zi0KW%R zzHp!{Cc7#I5(at-v$$e-LL+%5X(q0(#GXxb^XV0fQgTttwzm$pgnNSw(cJ6bBchR4 zgR*YLkxX=;Lnb<~YUYpe3x;f4q-D7-QCoh&^vM_9#IjZ1bK>g$MVoF7UhN0xeLVSN z=>62V6R-aXfF6cO8n>Y3fm}y8PJxam7TyP_pdG8j4DPZQtyveage<@UWTzW0{$1c1 zg}*0q8~6bkr`YV&Up9t3&vbL1(GU#KWA0>qET)dOdlECF6o!5)ZbEU(@yM%gV^i6=Rey4 zF68)WTFX8)L5c3>04ufl1Rrr8?T11fEaUGE*=Z`{7AbD^F`nl48km^}Z=Vfg?lHMxhNB4{0UpkSA|o zsw=bypPtdb=H@0&v_?HQaVW{YLj6Oh)P=2eMgiZuzjW?|m#=ccbB(~ctEPNI5vior zGy1XB%HAU7+%Cp+DQl$e%&7ybfB7@OvtfXh{RpQyTkg zcZ^KYxY~oE_{XPNw1=eBPef_KwiR^)a#FY>-rJ*rwP#S}RAzjsDra)U8&~nenQIB) z1dk*f?-8r{pwsB~QzCT6-GnI2@CwV2W_XkBUD3e%k9y+kLO0`AM1RFZbzlUr1DWm0 z-r!@4{c556b;$HX45ph;c=zX&h+R=RPn1RhWXPh$Zv)Nzc_%!@7E$m!H3qL1(OJAw zjr6YBy+P)PBaNX~M(STw^;}kplpw?!ef)GAGN9r4@`lxwn{rhdoafJrn4-CN`i-dx z@SHxdaljp&RB@qk-A!Ty5-t4PL8iCTbLlyh5==kuq#k7WE$Y|XPU9_8Diuj8BthA$ z)+fcOJ;XW2YsFN1bI27%lHJmoV{~5uQtYfnd{Mr33vP}nMcf1Pvvwa>S3^EPbyb!z5q{{^K$;oXt~E)sG<-r)k+wcn zY{TW%Ca5n z+7Jcojk33U+$e2NK*rt?;8+*R?`3gXD+Vtyk0ZLDU6=Ho zBfiS-1APA?9{tt4C~yJ|#`xBnTfW=M|Jh*cZ_{*119wB=Z&$i+8R^@!)57zA+wnQy z3;2ut@IG0k46wFHismn+A&S2Ry2#1orAi_P07XOy>1#u)m!W(G@wAKK(T~w z)h$)-O8)=RwK& zM6!^r!ZF`O)YA!lYC>;-6DHC~@XPt6?!g8fDg739hsH`du6QAL$EJwO>dZN({{^vq zR70-ZDdle+rU*Uk%pml6^fRSL9JJG}U`Bt`Gt@h=ic?A_hoq-%!mMP8V$E=eMn-EjkcM3E~%3}C<&%rXGKtBMXla1*E0s~(_(0< z6P;1F@p{(H#jz_g&)p<3$GD(5wE0b=XNw|-cGFurIR+0il5S#MrgKV6H-r- zj%V~g$S96(h{w9x)7D!0{wZDmg)@)E*wBh^Tg2<{Mg9Nm4*S126HpiY?jC-dL(2b; zTmRp>wc4xJx6wF{5Fzj&eil$*qd}KS;5++-53+y;LSQ11|2Kmy)^mUhO z+q>bF>BRyejh>aCWnZ12^5(s%U^FrQ2f_VL*G=#HHP6k~yYA=b$?7g(^-vsSrhPR! z)Lnh_0i^d1ztUV-_^AjAb!ct9o8W^X;~PryPx!QH7ROpDu!GYr<$eCXZ7-lHkv1G>F75RX26zO4QCfQ2zQD(s-O^mrnR!#06U`p-&d6HCmg^;YrP*B-D^F=4H(VzvKyVv7O5<_1o{qa5QZYlZ6>8 zN4xejZKTTWS3wRkF`zmLDUris(knP9q|)fE_PxEFz*S5|o5lNZuOu^Lc@O7gQ_9jD zquuSpOrPDXf|M^NQd-S0wl>-F#j;ze+uos>Ft?UHjGZ2N6)TTvG`GadJm<>}!Q=-nvQE0QF|)7cbG z@-y`HKQy_o!N?e5Utce+aUxHH_W8?|(Ihn)+%l7qgC}#Xrw1kAxH=sN!b_-S%uVSi z8W$KO(^;Wy!6K!JdYD?>Q%wT#Gy<521&a_Z-!NoLtADty$MYf)VQg8zmS)!*ooN!n z)SPr0S(N$^T9AwwJ*+HfaS&2xHFI;-q2OARD&2r^lZl92UM09^F7*2AhwR%lPs1l? z@+A0C1+$=7%~ct)TqntUWx?bea5OD9CZeU*AOQ8+3_hoYTswueG92FC3cUyCN!IgTI-C4QsrLAxWTzhMqu8u@Zojc5AW`&C(G2ZXWG*k~OWiOG(sxeY!p@DJYbG zM!Q_?8);E$Vd*_qi87Y;epWntvACf9Yv^tbh{H{z%@mQ{R(U|*Ewi;KqwvLg3O2JI z!!#O8dQm;g&BlF_6d=7Jg(z_@TZ}=M|;c6Q}tW)USg@!WJ$()uei%E%DnQQz*;8GQo zR0Acmn7O^GvZ&KW-IG~q;5FG^vDJ$V8)cN+#Jo+<6Q%X~avo7yho;aicV#GO29KSx zmHcRlfRTDa(0pWWjLiZ`9Qs9p3=%hQ1ayBQpZfGks~}v9h)GvPm#P-~$xOZ#%!)#5 zbe^LX)cS;VH`o~m6is2}H=5+guZs?dubSi3Jca|zlMnS-I}$B@l)fqj8LP+U=72=Y zS+I>c*mj=Tw3y2(YaWU3Jb9TW@TNwc;LsN>gX~W0>gdVT$vs+}v?XlqI_^^0c_c?p zLqtCH`-=1MIFH^4Lt5E1=V?qn;xU1q*`{w5G4rp83 zCQqDH#(leR)V9R~6@l8Aip!|UCB)>~=CVu{tK#hwp zm=>Pi<6H9M;NWkEK%CsMIHE&cI0W_yJ_$I}7ljx@HlY4c&>u;7WBXz8&5bCyZ}=?6 z+LV*^LI`k~%r=AM&N@|nv2O^yIivJ-VZBp$LPBsE-M>gN>pCZc)gr4Z5r%uITUU@4 z2dzz}3P*XiB&{`0JvD;}J$I!t)~JuqfooLM*#o_31)uancin(Ni`1QgAC1(dLuony zGj?9Y>XT#aKmx2V;Lgp_go^?*vR{*KgJ#MyYQ9X-jqt zU=T1YPTO5scs|?i#8=k3QJwdpBe4W9g5aoutuPRui3~< zdo7SZTsQALTkV(Q#5c2_xNUZS+|xE;!jN!cJ##yqh(P+6;;*7{(+ zNxHR7yH}9~@jD-Q)IkTIPqsE$?RGJF4drNv2?IW>jBx&#W{U=Vl!&RY^M7V3mM$vK=thaF+m z$^q~ZL9OahXWq7V^w zKRw#8P*e?SO4Hk)c|akgN@IY7KaHo)!o~_d7CoTaUV%G!F0_d>C5g(E(Ot`IrEDCgP;=4~HH=b$$K8hCRgW_^K<0<9tGDGT- zncz~3oxrsw%HPs=p(%+3UP^qaWE6-QA%!kpAZ{+O?d60$=0$an1a*`Cs|o|b3A_qq z%d)AFlO6}8(SD1OtJ>bQNTIt1!Rvf0&wQu>`uP-$5IE_YZY`E`3pQ4^`OhH#{Pe$A zUp}8YLEm?EK??f+vS#|nZ6!eqTLVWAmG3)C{{VfA(xxnu0Q#q?R%bmm=;W)pz)&kW z6{PzBaEZROrgU{8d~NAwfsVCX)^%+H*&RanFcyB|X%AeGDL>WU3p5hyS^?!+o_M|Z-*N+`4FgjK0F z9(3q}5r?co?%NcQp*z(kQ8ay;@Q=^k@&q!}7wO%N(-*19SrheYt=ggM)o02ux(%@2 zoB3wT4KTY+l(h-1*1CKz{C1EikJ-#_!xM@-Ra&kQ2ILJ{vZl|kWVXufI*gc}zn35Z zX$N^`@-Is<-k#27TX1|ZGLw5f_X71UD}QjJ7`>rfM`$}_bmB85sEewwc<30sxlD4= zw`OOppcqJcT6!RoT~$;Fg^RF z&`0Mu_1)XdRz{*8{BRg~#h|q1()FIbyV?(g?ye;wDzej0GB|z{X_p_}9O$L5usirN z$5Po_k^-x9Xrj)nrrj1Xz>MKxz>E@5LTO#fi@UyNkA40h>?O+HN%=6$dUk10=I#i&NgVQT@FnY$Tw~xAAp}g zeJ=uL$kj9SzE5~BYS>~tC)*|xjTFVQWhXt^_q->*tbTv)FMI&PZes#hReoqIHQ?Bl zuLW4;td$6kdZTS4BdtY%l7ijuD9^`<@X|6cWN4c?21N`PC;P*Y1u*Uy?o*Z%&q2uv zq^z2(I3W`g<-ePnsC*RqLXj=JwRmU365MX>xR;qn&0lq1kL# zb%y@z^}G)DYj*ZxU_0q3?P2$Apy!o{<0O^dd>{qgKkEjb9+$a5F&e2wcO8D1G8t@Z zs>8J``2%2UjKhu;@KNC`guNEk?`(A~6-RY!Bh<-9l%Jk*P}0~&II9MVC^GuwyjYvf za9Ycz6Xaz3*{Sd_qCx2!)KNjMq(2DkA84y0A@knYH-ZKe*SG{-k0I^HB;Xj}KcNDI zDJ8~ZjlhZGBT_mgzqyF-zUmeu9GLS-wE$DfOGb1n&AoZ~@~57y6Gu#c+d zjDo^AwUftN_&}}zz8e%5)-nZga&Kq?d95h#Q^$Lxxyu!0daXXrT-53^p4#l({Z_et z{D`ZK#y8j^$jLp(D<5ABnhup2a5BxwVx}1D;k+O>oYl zN%NF3P;i}FN=fQYVs#`mV)Joyn`84O`xtGbsrP5!Py5`GMwa z+{h>75uPik#m|;ds=KgA*7ERr14Pq(&oj1i7b>`uJJ$u=T+|5X%_TskRc7iN`0e-* za3i#hli1WULdCM5g6S!uvxMD571_}vB5gSgaPJ6TL2P7tBiIu)MA@tk;^`*io@n5n z$R153;O-$$cr$r2oKS?y%iS2@MkXH*gl8% zB?706E0Z#SF$w-aJ3XLrXpXY;06}F?ahX<+S$SEel9Z%R%M-P#qUyT7Hr*}y+WT=f z>Ccjp_f^Cj=kGor9|G&5_uw%bMoA7S$ZA3o`_w<%#J4nH=1m&E+#ZgZ2CGgFZ1`+i ze{2n}OzwWXleuYSFW~6 zNaLfK7aeqOSi(rmOnF3j$I1+B@w~Ye=Q{$4CkJa#mBHyf#LDKjf^ZdzQWn;|YIU&R1KKPPH@& zpD0AosQrQvxe!1YEb@%{ktO*G0OB7%5}E4s)&pY{55-Sn{Zef{|Z zst?Jfpxr-6j!PhcP8tm_3K0ik6zmWvkd7~nSo%ZmhaAN0k68%1AB(|h!D_)7KTL_- zYY4clxLWzj3RpP0YY37Ry;4K3qp#GhjuvWeM?-y>>m847x>^eaw(_EcWASYQzao=Xu58jUxDvaROh|(7s z;y`ht+>3}rtRhyls4v{ZnqyHkZ!CQBQwmxpx>=5ElqMB7^B)sbW9MZ=+sbW-YWmH8 zAF>Rs7b`I51UB?`*&Ug*&y&K62<2gii^o!<_$|_ER9>p>%tnIrNCg!fLf#M%NU2R9 zhz4@!2D>RlN$9SqjFL%J8gFbdab#OOc(sZy*Q~B3E;>ymx|E6vo%2j@C|n1etjad8c1fEIXHVd% z`+lHn++`2ds{1wIv#DHFUhl(#9eNGuK{5AA^;_*@3}o7Gj=`DlQte#??p1~p2=til z{*>8+-5R*s*tbjEChTV5M9e4Qr{X})kHLn8Cujpd#TNs1PJ9H=IaK$zb>!v`+(ODv z+d|9ln;&E61SK+0^V4R<6IO1$5mwyD>|*ZU{D|2hsEbfoa5^5#C@4r0Q|RQS3ByOowdn1Z`)Yqo2}3oK zSWlL+Jb+iF)6*FoaM+-!i|fq^gEWBIWT^L4AtxzqLI{r8(0?CQu97>B`mQ@iId9%> z87gha%6k(7)t#vgle&56yg)$*A#wi*rn8xaS-JGT;Vc~analVKV(5^g9EGUiy;`qGH|lBchWmQv1hU{ChV+ z@hw$uH8W1w-h%QghhKjbtlPyfc-O3m3a#^{wM3pWDzcuV90^tS4I=u&n@Pw}9Juf+ zbOz0Mm7n$Ro^U^A5XfCIX1G6(Be~wMFv`U9IFv@e9qhfvqd71ovw=fbsF zTAfN*tpnq(Yb-^`)X~4dL+@HMEAQu;bR6wIW-Hf}a9Zp!g_fF9>q_vOS>9{Jz-+bD zhcg#++HQ$vG{y|l4T^C(9GS^4zTINLSgE)Abwcm2;u8 zI(%Xu7JFWx9dfn z2mT}3NOn&BW9_Cnmn@yrU1rzl0WTl7YrLOb+BTC>` z>^sG9yaE$olgpoYT(JdqqylQz?yhpJUT3Jh26Fa8WYdY?=t5aNN8rg)>R}nYs~)Rt zaqb2SRg>uDhC>3Qf5$Y#m8*=A?f8NyLEFt)t)qnD_&7Q@Q&EGWvti6CdxwEVS zoG6mclXZ^EGhY@~7{Yj<=n?S|LM##Vth-Kj_HNmlO<$UCq72eE(lrhtcXm+S`}N3{ zvDo&%eM)tSl*~kRhS~1+-x@{Y-G)zG9HPZaC+Hj;!u;Sk4Q>iF<%=>}^(0V3*@AM+ zzS#U!pMctf;$TFARXc0REJCA;6q!0ek{8w#p_jRUDsYKhK@+-Q=J73;o;4oP7 zfF^n{k8In&OMD-9o=vV*B2gFAdwj8*f|7}X^1h&c$^_x7J6sR(x0|gdFC6tii~1| z!~-6w^2fLCTyMsY&i&!g?^mqPhwx!0U=QKO{&xK@(fyZ5c4+XGO7KlD*S{m2_P<2; z|0fLpZGr!{RQ5jx`0zfm8`g-3nYMiXw+fKSwhM|<+DZh);gaH;Pw|KmMP2FXAI%^^Qr;EZOoGT4}A-|wGSZvb+QsN%5N^M--ps5H1A z>NAIl;NtGx16#PcxgYDV3G~OlZ{BV}g*wYyFitH^bB)uZQPMnz_6S+P4H=}t^D!r! zvWBQM@PV0WYr&vb8W?+OJ1?)xJ9R!q9}AUr0)L(}C;F5{?;s>FJynm?V{1@kZzWw1 zt<4Yz?3uvhMi}*{?A1M!xz{*mY(13VihETPa{PL%P2A8iW-LCW7+g@s49#v{S)2F$ zBrl_Kj$+GJ=@fw&4np;+1V{9De(G;|Pw>tSO$Xn@>5fxD!-5>nmK#F{{iaadP z{0YW-P?5&~vg*Sgx)5Uc9wxT*3CWC@U|hYW_GA*Z>=x;fN8?6YGq=gH+8n|h!f5G-kmM8&SP~kGEun#QNs}^J zl}yzlg3$3|zG!|TYIJ2P=1FW`>8tC@EFJ?MI~}_FQNtkuRh>s z0_C~~L`_tKPt#B7IBF2-J-^3t=n}>j&xX@_Ps_0-(tCN!`a5<|ExwM^8|JlhkS*Q~ zr#HfRa&L3Y4ZAnWdv@>rh4@xqm+#NN_?7*Ik+(4J{O9jtz~o!7{BLyQFO2+?Zq%r~ zD`Bmoe4-Lx5z-9n(zjlY3_}nA1)+2ikn)EE9t6h7#L)Y;x+6eU)3~N=r&#SD&x^fD zzWH{=J;*GU<;?t&pJo1_$T-WJ=OapLc;D_46c?}+FEg6mak}BTxzBML?z{f@zypBY zQ^ls38g1|wfoTn;a$w%C49yNDfr$lU3*gRG*&9yy*}e7x0YXk}50i(GcR`tov=)1! zyaj(@#==eKt~YmUh;8F8Va;2%caPbN|D;!aaAJa@7im;izZFgwHLDhUsixvBGf1_6 ztb(E!cYyU$8fiyCKf;K_#KW^KH;tW*fs2zp6)k;d|0mL8TKYuVj35VsdsE|7NuKYL z(^sFfzd3_S9rEEIXfX(jF{Y;UMoU*e>7x89tBJ!(Ho#FppnBK!QlDSIrqV}Kz<4dE z$bGQ=O1%tHswtI?Bt1lh&FZ*RW)}5*-+)-X*#{IZ&TPA+Iio2JN;dN_@uCX!fg)8%!28g1 zWn$9&%wy+as)XX%x&L>n5D#Q$6z&hU#pLbE*Nv(b#y;o3v&qFA1hQNA!Z?oDBbXE6 zObaKmk|))1kvq&T6#=F7BXxZb(_fz5Q4)MU34bJ4k%i| z%@i}KCR?)g=rr_LX5ZQrV*x8~YLj;gu{Xts+t%qRdxh|gFF{A4A#r;;(%8x;?Kt(TBM@Ik&N{M1dRlL~#V!1tRC)~cltu~S)A`e#d0)-;l!SL*^#<$Z0#^ba^WxkV73nV2Gwp-Z3boB^oHxK z+tNkU`;kquTf-nYjupmo;u#WRcHA2d)^RHyJ_9 zHdFCvCl~_}rbQo=Y-lq-ft+`Mfhn&Io3~jC;7|Ts2)GX z=by@9+vXx*$R{VY!EIaT)T?LfO%l!E<_RWNzCQ2{DJPY7QLbzL4jK)(JFKKIOx~F~ zT*hAz&Q3K*+v2nY++s~E+IVN~STs2AyTUOFR>GdaIL_r*&`_&t>_TX z><0KUGX5O&1hsnk@hFm*z`{(Pt$-n5qjW20eG@}kWJM3My@rM4tR!9qw=LYgxYiJP z+>|q(uAX?lX@1GgK8m17=>q+GS0S}9hRF_O z)I15|C)pT`M9BIk1h^6V%ob_FAcSVsusg$ML2S|zf@JPKW#e{)dXFRAG$koAN?vyu zE=pO3&*!dFo+}|G>5;3TvRx4|21Eu$>M?X_R6TkTPru5l!6oZccSPI{Eeank6z>2) zT#7*zteMG=0~E4>7Wog3>sd9WzR@)ukq?JTzPo~@(P1paO0|V4ndp;OHhy$w=kA~( zolBBZ-X~RzLRlA-JLkeG5Hbix!BdwzGAn7i3zdDuUFFQ!;u$;IfW9;}xbucBx#bL(VV_(&1qej57eA zT$Ati2^NVP9j{EW@XP9~MMSbDf&v3vU}l0i!jg$13yF7dA{j~J?_p{PZ(;)y@*fpXS1wl(=0GECUqs?`+)79wQGEXNpRG!F)#? zibE|S1{yNF+z*E2s?T`;POpgC*kek*M`>Xp002n-3zwIW`&S)J)k+CV1>INHmMmD_ zb`OzSHGi2{yRcaVv>1p69U`Bi zQ{eUfqmqsc{v^~?)*1$rh*W?}hLZhy6^oUcy{eOJh*p5!RmQpE=0Lp$L{{oVK-c2V z3O|`_YcGIWB#5eJkzEx%Z3U!E!kLMun^QHG978?%fO%F@6VOh@OQ&<%QyHG1*4g8@ zOj&j7qosLs(|xL+2+mKOZG3k2JDD<1Y>nAKLkY)it~yZJrrZg;wCc0p3Bae!*QeWw zIFLWsi18b}5rJrf!b&4kL5w}6CXZaCOyv7R~I%V6oZQHiLdcK}s^S(W^dQJbh)_woZ zjEu~Py<_j1+Pom`@_j&-`{ZO_&dSR*V2QuPbBO1N+|Lr$H*)wlC+!VgRv4zq8!UQ9 zCf3_?_XVw)O?2>86Ee;&QL>W(BH}x$5~8JR>Ge-46n-fQZe|bE8G?rDxs=s5C;J#o z({GKs`+?E;4~(*AQVjE^jSd78zLb%T6P=96%ya}3&2_{YX>3rf4ZH>=Ly*}lvN?#b zgi)*j;6YO^S#LC1i^Z+N0Xk4VK35ebyO66KZevG9noa82_|Vq%q5|9^q+vL570U2M zcWYmw0ZB(yie9L~ur>k*y=Ba*xia}Zj-SJsHH);K&a91<#p4wwbhqkmjcFjZf81_J zb}~zbpbCR4Gh2_P9WMOj2*y{@TRF*}hC|K_0ql%jxW~dD))M=7_q_=7fIpHwa81b- z9nw23ipeaDq*rsVQVY&EN09HdthvUiQT%C%p2&kJ8<99?`ldx5_f6Jod|J8&o7vs+ zW>ydeq;R!cMif= zsyhO=jNH{?cD2G?@C0ys`8JWBP!$>(ciwRuI}NJaN7aOPb{=B42+P2DY6$~)$l`cJ z79O&5BTu4%Hn9Jw(f(}%AJ^;8780F{kf>mYVBxNHYtHJ$7Sul96#ychRx#hxqVijZ zH=%t_nMyofw`qOEI z^d2yG9bZn#T_F1>e$fft@WfO&u_Y3B%kzX!M9SxYNj3}nRCcri~Nf*-kUpQe@ITjy)V6r^nqWMZItDELcF*`s{`VEeZ#Uew?qtZ&t4UU&fRx- zxCP0D6;fr2Z^cG`yL?Rs9)T>|yf!XHn6WdzR&|7la%K#|A7$I|-YiaO<$y{GnoZwM zdhk8aO{a2JsE4ri%r+Js@CM+GEKN;3DUS1%p-kG%*=(g+J}0CNh4*@`f`m0tbLtXg zxr$rbm5+yH1>lA#$rzALfUbX%FFWkPt?nVYs!uAzI^q#sLH7u8@uLI; zMSi<*2VC0iVfszl-KFesif~KdF)hDj7zgUyl9iMk-QD~Bi%#f2B|=5<%a4QhuV30f zxsK?+$#c>cPR{?Ufb>yXw?$My)&cv0(|>DHXf`&fMDWuoop+M>FjyE0-U28ZZ5Pp7 z$UzAK1+K~6LU~up!KA-fK1h9lBGH{=|4o*X?AtoNXnbC4=GgZ0djr&md8HQ=$7(?f zfjb3f91)G{&qtI(pf(!(ZKAJ&pPEwjzzXt_b`itB<56%1J^(f65^?#KJx{&v#iB_H z6&<0oUYnt~`Hcaz5byRZeECFV=AcaE9vNjn}Pogqt!1Ii9Xh9eSUhKe7)(i#&C(S)Tq-wIq zke%utVOB9Wz$wn*bgIhH-`fUa_&Mm{)(>@t@t%%^o^tHYn26J_^Zg|^V5e5TA!CX@er1Te?@f4i94OC}&+JiO0`jPS1-(}gQt(H>2AWXR!W9R8 z7}y2;$MT*I_s=HS8v1x9)3mlY$ohEb&r5tUR(RB=Vo^?l#dTp z4g+N-&6YmW5T>RCU&E+@R=$ccV=SAfu4k{B5P+}9KJlCQzRb)IX1UZz+#sDh0G(c} zy6T%IyG@trShx98;`BU!;@%!LhdJ^s&u;V$%Ny zrv1NL&AR-9UD5q;E$v(!jeZC=wmpT0%HP%q7Le#T<9gC`QU~%j%gjT>v_SV(@U?zwRhc$BNk)T zjhKfA22)$Qv_yUuzRxiW+Hc4K;nccZ_nhBzt7*j(&eGjWk>}VG=XJye!KLfOU5nIw zPPlUH(mERi$+_cC)Xg=e{jdaqLD?9x-PC%HJ)A9Ly8evJej&MbgliZ6n>l*HgWT0! zi{KkkBwdH3sC|tp&Y*!LKSdYap<008oWdkaZ2U^!h67B2%m*UOfIvk@a&*;gFZHZ& zfriigo*Z$KX~+_CUnbV7*_Rkofs=JO5EVz3fF!$jMQN-Vd-cpvk6@g!cK~E#)_(c# zYlod7GU?>(@2r`do&li>@uAdk4DH#QkpZI##)J1od7v@JhoUc*Q3Q&0Z7xHU}X#cHlB@XNW`R6ZTb_1zGzBGm&$jrKYlqIBrC<19>39Nvo zB3wZzY)8LlF*-(}mR?+?Z{SjF`lZ0>CZUVAiiqz3ON6*Q9l2;zUriX3VCVe1#yt-V zQyX7E}&J!b>k|4gVlKSHSe z{OCc))vV!*mIyo#FdZiWWW7of&4kPv=9<+8FjlK|oBVZJH;bM(0N&&dmB@uD2D~rd z21oZ+?*KcvXbiGOnFydpycje^_X)?P=zPa=LF1>Aw!}LmZHYu?|zMAVx66d;q zZz%{<4M)h85nj|!qvN=F#u$=JyrBG%ZF(#;FNmxC=?+Z5k_KV6Y!+bb%k8$c8qi zj<(mA9y!lEX5Syj&D#LnJij^?;l}UsLl7HYi=@Je3LVb*DKl6Hhle+`TF1*ve^Q19JX6K zAlaKpqDvgy#3X^l9*m5NG0e&_LFZ{PlQY>!?H%T?8QJ#7cYRM7>83x-I=sa87x54R z?(2gQH?6UTLCafvu@<@47!qP)vhhl2H<{LI?2u2Mc_VZg1^qy+qsV-nUVUVr`MW4- z4#&AI7uG|7JcawdX=MPHL9w%<^e2xe{a`do2hLH`UCamA@QuGUeBtRrqHCKe+O%J( zC?Gk)2P~Fr!TE9mz`RZ8$xc94>Hq8dLhaqUbws+S1N-_)e@@z~>*#5DELtMHFhl5b4Fs#M^nd3aQ)0=z0^^M~Y z1Cqe#?PI|_$Isl*AVS|ZR|W*wz-;>~DJB`qAV#BEYEZ1q#)-s0D$`j|isOV}AU<}U zHtnCc%g#=n##EZoTzP<8T}uE4h3FixT=Xv7(1K#%+OE|dwOyYi_d9tG7Sj5(g=&Km z>Q!A`Lu}HlAyZWsqb1{=Vm`&o+voNICN)=@1=xuPTjY6S)YB6#@w*qG@Ve_C=@ zHv{Ux=#qnHh>H(YvzJq(?%Nko$mRz37Vg?QNw${cQ0gHP{!v>|@l z`8I%uR6L{nIkW^pzv^1`4L9={CUKTQX1-y==pJLp`^ZU2#AKAz1I3ThIvM_T(pabi zq?tQrTG&W=ZAZTiaU?pIXC<>we+iwQ#*M=R;)RhqWMK^no53JhpsLzKJ`}*zHi@zi z2M96a7!~5g+$k7_+P#q3Kqzd4#&J$sj~g{l3%n$aRd8gK_UA_}8hzL4AuG?}99f2; zFldB|d0suhGk{*An)8ZixS8Vgt8CwQ%ppH{RnM7tG24w$GXT|!BG2U&+UB5(hs84{ znaSCD(6IRA!^pZJsH#@o4T4Q}=7uRmEoN3pWKIhGD#gAY`cQ4dlD{H$L02)8HiAuJ zdqVz~Ri>ptIDc2F&VU1*0S56X{VclxgdAe9lJFj=!b?;GNh{~7Z2XtkL%bdSII@Kd zNCnN#=WqQqZ7xASBl+G?NZcx_7jtj~?lP0NT*VM{lQ+m_xtV@&ywCo++zUh#OoeUH z&eJ2Y|gL8+IhBJq$QfL--WlA_DyRMuC7rScXs{zyll&zmcr(*j|%Zo?;31Xqo32 z*RHWromcN%!L3}^X4p`tGCUWxn77~mm&joN#1ylZcc8~=tfJ`^x0~$nW7(%-8|WpkAXOF zdfH@>rOzbBG>c+I6D~wjApSE4)l*?b%ZGGx>m4jVYjhIhRrKc+hIM%VGfwHeNgJRPR&h-0Ji!Bkh{?=Qnk%01}`SO4A4H`w>zbCr85%x?==}cLJ1yu=W60 zpEN2*afk8ybzrL@-cM->!B{h-X{wNDXOyPb``x0)ES_~PG-~vDu)GT?wbf^i7d}-% zaQcfvuv3lU7_-v83u}-PK2kc7Sr;uJ>K>mh2w#I?gdMIfl0yV8E)x0x#$D+b;%ht* z1(X2mP9;LzDy*=3Tzjh1G>~z~RR*vf6d7Z$oG?N_2T}G2Fq~r)2N^DYy*1%Aq<}H* z0AhePO5h0h2wLiWA=n5uP%9~L_#M6;guoV3ps+_=HN!C$T$~5!T^Bs@P@p#za4Rin z_$~gn!PGM@J`}XEQcDGZuZACdfH%JG(l59>q$BR9UmC{aZ6v@DcldI__-q6C0=Nfm z6CS$&bp!mo$N@p_aVdgvndrm=fgk=HexARnnc`xD@C|Se=m^Ahp%IS+zJ@aWxcODd z#nGGIzg18z(02x=K`>? z_#x0!npx=P!TD?@YL?2A#;e{FdqO@k-x}cOB3W@jCU&|KQaL#5xpLAy`Ut9HW5e@NV$?g9SYy0oxd(jEwwnz-f zA%4fcHsf)BNQ37bB@!jZ#lcnoTF>G0=RwVZs>=pSfRScf($aJQVr~64`vrj<4g%K` zlX8maa1k~4OG%$$c=*Y$>w9J2j<3rb#2(2L)k1reAg~-mJ8|Cy!;-P0SV69!w`Rv- znemd>jb|Le3$6)cMJU8@9U7uwEbR3>LyFSVR}=?X58 z-40;#iM!Wcl6_2YrmC@evO%!HC!bwHp6A-=KL5*7m>gTJC>*tr9Zd*j-H1OywJFG3 z3B;IEL(^|3WR`RcW=71!H?kTyNl#v6fDCd4YH46{qj*u$SOiqNc+IQBM+U<-)Nkk~ zhlo_6%sm=n`2t?s>D)V}63MVOITeP|nG7T1d<`1Qe9=X%h(`9=Q0g?5Q*UX7l!B5` z^D|fR%S?gJFew5TlD|(SvZ|<$M?>hP<`+b5{g_GD(oXzcw|C1kN@Z+X}%wu=CWa|tK3Y|(GvBN4)3La*Q z2(HYKCO9Wh_fq-&lXXUtY%h zb#zMzixG>MDxx5u+Pe=tm%4ADJIEi9Am=_95J3 ztGR@XMjWz56rFpUdx?CHJZZY#uhd?sIxvC9Y_0VAck3C(>7J^9dMN3wox7oB0#*L%3S;sGb`eYEOIB>t)wAY%kl^olTcHUDtB_0nRh-mDlgc8;%7%TBpuj=7h``id7W7xAd1mK2kN&m zL<;(laPHwHa)doaVhG{V);dsB=8I`J_#`CUvzq>Oa7q`JEp!AEPX+T#Zi!~%+~X5p zT&Zw?=oEJX^5-ARe=j&OmKnnDY#V=hF2Wh~5!pciu@0Xn zz+6EfA>d&MSOQ|M7<{hUmyFcqgmmcu)-y`8A@Hw4q)Qy5r6kzr5XH)9PNVTCx%sJt zrgd_~f%yU30ONPCprsTXA?(T z18X{)pG(P_PEJYb|G%RCV=DST;y6n|Mhg4Kv9Pk8%K@jGWtJF?F2TK~Hv>HgKLl7c zSVzP0GK*#@IotN~3gJ^D8<67w>_AMy(ld|{n&UvRx=h#QvAk?Mmd_7hW%!-ev^Hti zCd3V}(uj@Je{n0RO=XUpD?ad~F$){g`jHCDMM4PYVPwY4N=I3N3k%qFE|AMZ4U=Qe zm3k40sypRqKwg5?F)>+%#4j#O5!|wGOFPGw67qIkJ@o&QHAEx9;azyfPR^Vmp&n!&-VzWrY3eMJf5Bk-nx;*-cS&a&>D*CQ&h>vv~# zm(#5W(d7g0Fk&(Y?3Y$r&)xmxl$e^bu(eT0ER^xi>a6Mdu6cItR0m|{0T45S6Z9r& z{y6=%@Ph4@@BuWG%m84&AyVxK{+SQ)>ThX=nXONN+nyKEwp!4|$jZc7&ferdMrQtFyMLsq z-I14FzG557HE4hmP~lNo*^f$xBL-88;q@g(@V!V7B!2s|8#iD|SgE#;@$&C9SSWE# z7D#N6I_y1c4ml*W!8)X)2v=n_z{ra4ckK-{t~a>c`!=4o$Jo4Wr){q4TuM^cbywrP zU2U{_UGp4&9P=G#b7}h?I?4T7A>7x+9wO5HAi!0bEaqlE9Q5#BiyXeefcqMWB=BB} zWG-USzUhmMv^;PsV^fMAz8x-m4zkQ%xbdJny8(H;BP)AVTKq^u(;FaZJfT?hmgrCE zH19EKe4#3Pbz=EYS>(PP)Z3x!e4+YiMEqv^QKZYBy>X#i+RF#qzPbBc6?xI(KJIN_ z*qSasx?TwAe%{GAdxf*i@zW0S>w}8CnSM#O?5aHQ5nH{{fg|mF!Npy?`LvXL@dx93 z*b{rHMO$~!=$GqQsf7N({TdAPQ<={3ys+xJtx@0Q$)#PmHH z6e!%0I(w}PQR@INd#3V+S(az3X3fm58I0c?z{< zlgSE*K*WiPE^79~E0Og*lLdU1V*es+3|q}&)~HfGA;Q z(^+`uEFxMyC0(E0@~MzCWb!4B0h=KSqBahJ!*HPgjECt&GA0x$K<8D^FwvCRz%Cnn z05P1OJ)L=9fe7&g5BowoST=3+OM=OkxWATM;U;x9eiZ!}JQ;aSY+fiCCIIGeRWewx zL2SkmMit7LmNB8IG6R2sy_y3Fm>ltBOp8&!i^GI8p*>?v-K;uyrZ8_02bc?$TyqDf z3G^)r;;;fdtMFG7IVu~qdt+(1xS90<^>Ii+VyW@*>R*XtmCTa^yW0v-tm6PqqOxUa z;wXkh#76n3?5w@?qShs6xwJfGQ8*TrT3>pLAlXOEMATqr2c@j5(m0ONA`<4(IpG2+ z^O7{D(Yv9&Uy9Z`$Pi=+PsEygR@QaJ3dY3n&{{3-d!~j7Tu4bntupn+#y0hUs|6B` zq`ESw7Wwyb@;vCck(i^(nO>JP35&X2&(D-|Bok3bIC)_^@(@tty8#H%=|ngLF{H>t zx9S6RTK-BFCDD45v=6r}7E!6UL1W-Qh!PJW;F()`Tz%j9L(f)$n&J(jI{Il> zN~Q^Rk}*mh)$!=I4q4kd<7iqdlPubElR#RmLIwLk6D4+3d5=yaT(+sF5^A}3X(Pc( zySYLQP3K#wa@q{yo{yq&(^icX8plXlEfXvyP}Q9JJ%gj8Pc{yA(RI z>UKz?AIP1gcJg+MK{VV5vSt452hq&NeW{i_CfSD$Zi*>v;dvLhOC-b)oP<1B0`z?}Tom(8UM-21x`Qz?Sq!I+@^0NPqI}9| zY1x%QnyGh)jcb*?2f&+XiH{)xms9UFFsMr=3NMXbXC*Y*lDYF!Vh?4XJ`mk)YUz*x z{|Z~BsDma;|)UY#|N$Mfa+EiF2H3B8pSBRuOdErWt3 zj*jXwao`p_C56JmK`c#DP_w0QsVePX2s&Nu5!p?aH|MWW^nnB}Ynvn!^=`W7D{)vu zkQ`dhe5m9)@Ak3}0zgy`CtH|8uFS8%3RG)aN^CaINhYYp4kmL6< zzN>a@W3wp6|4qb*u6waZ`PMl!Jd;dSDD$+<)-v=DHnHP@GY(#sU4nUU58M>mjLHPs z6jEK$wL;e(9P!e1I*-u{^w?sUe<~f5psM@1L4mao`JGPEH?u7`^C&aZB^Dt#@qisq z+sFqZXysfWj212;1`v;a-#6wKUQB~fcDd2KBu{#6=DEKxYfL-mM43cpNK#U-aD0a+ zVpve(60S@Dfz>xZUmSxRzkQuK^%-7WW5**anC<%I?i}H2izj59-%SO!$_rmzZ829D zLs05YRu(#i(PWvRu8%xb> zm}}{-sOFez>~5SmWqox(3b9A$2T|Pvj}f#leq0)PHuAXkbzkL+L9*WNi6>}zfxBUD ze$gr>$Z0a&{F#L&n}LMMxDkCyzw}@aX9G~3?xA;6=!6%oSjA067anpf?F%h6 zSMuXo%N5vW1aoEaGN-<_bm$RL z)d0N)n04veQX4pQDM+(c1AW;7>tzr0WC&v`g2V~2e924{M*c?K4`%&{(?5+L)oziG z<&a6(fU;o&i10+&x-9V&J9j`@6+<|rFf zI=DHdAJLvO$brT0{rjEr#H~rarV+kr6_r!)2{?S`wcKO0iMf^a!E#Wx&-j^?dqi2Qd^RGPOUMGkFA!V4il={%spRdPBG6IU%P@w z@PoaTdwIwYeLNC#t7tdnHZiTT1IC*Ugl)vUR@x zWCY}J=~r5>g2aT5T<&7*imnsCRS%4pj`&AfRWbM6hCg1gx7= zAeRt03WY5S6)Tyxhk^rMk`EWhEo|Lg*27aZeCe}3(Uw^3wj8lTZ z>Na)TCnZXq19##mZSj3ze?ZyK=nsicVM$5uoteBN3ssNxpRm;O-pa7mWlMzm!paB^ zNh=lY3eN2!4!U&0Bg;O7B2WWBcvt<+m_chk(JZ{8yd3<$ImElTyBA^-W7B)E(oA}K z2WuFhJNw!k{l>Q~AeXvTYhrDbx!RenYk*@mwUkiLr_dX`AyomYrw+v;Tar-no3EF? zUq$*CD$cmUrU*$8$Dba5zkbVDs(snPHu8WJ6oS*f;N#Z7{dvXN^RvO8Yts+)j_1_N z7wQtW?~)Gn4zBN(tmzg_?UoJY9&enUC7544Vu9b0FekgW`<^Ez%8sPG+|CfVW*Hg4267JtTs4Ew5DnhE;f> zt$hcuyb;R3B{F<7Itt0rM7JsIF*S_^OC!^cI(~d{F@;Lfd1gny9MxCuPuOEi6Qjg7 zzKGwR!dD6$OHr8CF5h*t^^6Y;Hh$On$hI*P(Fw7pYj|m*`>2GF= z)|of=QiRcB-jEqciX@Xj@u^fXxw5 zVD8j#@w{XMfeyEXq>(qQ8UbE~sCX$TsmY+;0#(B%8o|XTEZMvF9vYW%-}@CnHg|Hz z@!ufBwRAhrw+fy^vCbhM&yF?(ub10(2YiszWhu&!_g{rlSXH@vNT6^iA-%(Q{X2OH z1~)U@9;4-7{ZvXPWpBbsC0u6qakgg=O)s```!NMHOyGB&%gZUEd|3&N;cDeGk=3-@V`er68R- zEVB7WbSvrSWBVTzq(2G{|IV{mm+j;KQD6he8xc6n9pKXAXZ19B5Dj8oLZ(NCzAY-9 zgd}m1TB8ZCKKk(_7s6-;7w<@$XwG;&&ZxeQmHU-qZdqbw4v(p`X&ze{&s1Y0cI}1- zX6h$gqT%FrTGxZ3WI8^AHjgD(h!mmTCdk_=&KxvyF#(sI+s zb_Dw6MX27gLwGbh_v}8=$8Opc$Bk&);|c~L=7$EOd$f@lbR<1C$Rbs&*=?b_p*S0) zO{h0reK!V$QTV5yqHaa$kEUsyTE(Tk!0i_wZGOXH-5w-tlXnYeecPE8-~Vn?{?i0l z%Fur!`iHOaLx2|iAFTO*_IvFA57)>-RU0)VF=Ss-2x#g^efVHh8ygx>!U~(kG670Z z@;m@)0Ln(YepB%BaoedW&~v#`zuX*~X#iQC;)jgmmjdf+Ys4*R@$;XGV5|AK)$QtF z@tp4)@CE}LXtQNDg4Vm&VV)nG4SJ)`hR0Zw-f#z2RO_ZN`x+CypC^WTxCHrVo0w!w$+#0yt)C85U_by#QVGzNy<5V%bCUmb#mo$FXsDMNy+m zF?m0j@g~S>5(N@TUcd>!~mj7m~_H5*d*N?ip8F%45mFcYm{ul-)hDBf*0 z@7ngmN}$)fx25A6R9+3Tg|pHN$6hww>x~P+#QA)L2}w0dd@M znEMY4gzKw_I_-1*o|Xs>7RgyQ?upU_S@w{R(w`%d;r4Q+V2+60vUerjk0sT>gDO^- z!FrbNmIlR?Gv}6=ngxlugL`0MOn6WtXUp(k{k`-0HJZMk#0UgKt1M)6(417EvKTfW z(zL~H*y6GGu{@fF?0Nzwhe5jn%>IYNF7P4p(fX3ep-TY%6_kTJ?5<@%zQ^ndYqD+O zvmmClcbUrW;GmP$uf^77x@ymmyl^WI05AH~UdI%6Ys;v)>Dj_;cEa2ia|6&zHWK~K z+&Ts}kzKAp1EmMVo1dva)R?s>X_bO;N!X04o9GD|=QPFK%m3vL6_M*yhWRsMz$raL zk1*|E-CUx{woiZEeBA@UsTJx{i=D+On3(fR^!;LnmDA1i8920I=Tg`cYjkS>)?;F( zI{;gD{v(dF5j39&M-(gCjA98lpwRzO!TZ<&1uxNs$A~r=VW?n0m~g z@z&TM${6qeBnAB^a`$iZ)s@OxO7r~4Uro&oBpY=3goL{0P>6$A^1{dhsdBm9;J(Ojtr5+G<^Y%zIojW|oVw~)?`?cPzrKKa&`}f2 zg+%-80f}022FQ^ayznQ442FU{h$oB;vWXG;lpv<}(B%Y&f`TL3gE2={!y#N3&x$RQ=6V>R9&b=> z(V^j3b?)ELH=)EhN*;{+40VK_^blLzI$VhGLPjhi<~BQd<~5yNA>ASbQIpQ+shX@w z&|Fh&Rw?|8i6yyJ>uf}X#jnanb03IreIrm$l7%IE+a*o0^q@+mI#?f_| zW=*AYg@l*gVkk1Vq~e1`#g_XUf-d3n~Aqd}w< zZ2v&v;VW9!GBu*al{hhi;25+{sWVR_v8rWs1Wl?KQWYwP4rUr<3yjugDZC2xaF$FW zAg_+1&^HvqcU5WR6@mTwl08)AgA|G!u=Gf@HCZJxCPwt^1n&x3deDpr>rsHr2`QBq zz)3F(Ceq2E3LOWtG}Z1p55GCjJ<4v5Ich(fFfUP`Ip$-WIZU{RctwafF5zNaOXz@= zc%Kj=3-Kv|1m3FHJnkhi_KJ^{{&Rav$T{;9Kt)8dkRt=ckJlK`18%~&PH1Oi(3cQr zl~NoY3P(tQKbbrqE2ePZZZVFp=tU4ws`B#ju|%;???U~CuWLsYm-q~R-?4ZmiU6I& zAt|W$;$&Q=U_J*}+%i`>Q~$g9Di=W)Z?g}NF7~P0j7oLXdW(=RL4P~1R*b5_tUW=0 z{4R9C@Ul>xeGdutjiAFcne`z2BzI>RAwhca#>Br$-Trg&<57YGW&S`tM*pWs*1zGC z{|5K`bpQWt$lT?R)jx+VWIBKDmm}ICX|8rh2>Dhu6T|8pdz^j(;~fRkJV=TJ8;bIDV_KaYPV)6Wx$JCFi`xS@T+wpbv_OBWcJgJ)+;8@9<)SjAskKSyl@g+4t zC9Yuus)apyYzy6NM~8=)o|5=5YB-TDydjyQ-;(-GE6R^0SQmf|*N`W5Od z&g(^{xma9~=H`2^G39piJu9<3a{gpEtGq5eF0BBmK0)d}u>i3?RZ{eBl6%(tVlEU6pOcLb zJ({J*MVg)z?z4NO6&@iMWh&aFx|K_hb65|6VnS1x=fjdbCcvW#s`~mcrRpaQ<-yGr z6qox_bC`pZnNvs9*Y*&`8;Hl5X&sXz=$G2o!KIzaCSF}9@-utNi~|gK5Hy*N9g0-$ zIvlzjZi*v{*u9A^bEod$ElOkzkd5@#9g@i`+y@rOVe9t>T$_Svxe+L+5gQpL6%`WPCJdZ*m$d_?~+ z%Pw3rgt2d>I8yQ{pI^d^`=E&!tSVGIt1!1WkF7OpUiwMLS~h77Ylbye+#;{{YF%^~ zQ@qa_Ys8RX5%cT+>Q>W7Jldhu?std(mIloYsu1T6;-ac~=?dniy2bWABGKj7{qw?lmoP9sLWQ_3&_#7id6zzLK7xg~-LD7uEVmE# z{V$}Df5P1btFp-$6lyKmbX$ zhL=T4mT2wGO|IK)Y+u{0c1M%MX+gkmiQ5_PSMAT4UQ@4AZquE&=hb+=QDIXqlWZrf z*`_tIQilqpv5tYfBPe&Nw6PeN?=W*7MY3=xH`Ljcx7dNw*%Wxkl2*FB)5mP$=gc0N zw6RPF4n^Fk=pAuXCO3p0${5--V`U;5EGg$5>c^NC*(5nuF1+ix8L!yU(~Ium0>$?p zm~<>B(z>LU$&n-XhYtSSXU0>IfogY@f#gsYCSCvgdDj-RRJ%*W{K(~sY>?=WBZ+oZB>I>&&o zokANv#oSkOuR@r9>ig|!l3M9pY_@iK^R*6M=joGWv!er((!tU3_SCrG!)zde5LB_` z*Cf!_7nUdHXV&Lu=GJRli(7L|rZge%npNNzkP9JzyI*Tl?#$>{dc6la7|>w*kJ6h- zPscSV)t6`Hy0ddg7!@!<0bYo^n#^ECPjWWJD4Qr3wU|NzRM^ujlyPBj>;?I%bRi%> zc`Fej8L1o5@w$s&_$i4JM`SGNEZ@4C) z^8ur2kt~lr#6@Qm=u^t5Co#hNQ)g``z*(**p>xk3>JoPn4lU6z~XHkkjC_ zmLwS|8Cc8l0AtFudsPr90Lr$8T5vMM1?!)t>gzJ4>9ZbXUk=u(7+ zir-kngnP0IAWu<3G4utFuDc&QW-246pR@F0gz2Zf@5S;3JpZ#Q^b70hR<~x#rn?O! zCHV1y4V#Ry7PrJ7t18D=6uo$`m)tBDOt4W?5i6#Q#@Xj ztz1=M%Ahi&P;$gZSL~{?6i{;dRAE94yzIA$E1QDgGbQoA=T#CNETv*fm2OW;S_!9M zT{lamvy;a2DK1NqRts-^_}fe12l|wjjCl%&d35--P|Cs#=616blyf$8fw8eqG zkWJG{Ps*HJX?;gY{9|lh$^yS>Aj0zXXXrVw`hv4SM`0^ww54o3jUGkMWLolYu3^Aj zLQx`f0&wS7ZM9M@Np(&p)^LURzFfb8Kl;!RR-I(+-B_)6vw7lBjsS~ktnE0mg9q1v zhV8Rkp=ApU!V52O6&=jbS{6TZC>K5gBqgQOfc2~@a4}Ot*poUMNa09&T0JnIlxey% z+h)Nn5GmhC4$G_4-3lFCv`Zq4M`}g?KE|3JS{RJJ+Mu*Act+_c-2HKys>~BLeO`UeQFzGDL1kI}|~0k8EPg73hA*egR~?AU(f2T5Z0gkEp9&7In-Lt^YL5~*Kw z&Oq0cahV|#c6Iz7;*->_1{X3Ua6hSER=2_2^C{ShBGPSF`n}8-sUK9vn{fog!qC2k zX%0_j{9c?L(`0r@YCMBn+DF66a}@dmj_=aJ^_`R9$UV8R^cSw5-acOHhmfzpK3>{~ z(HF#CrdPr8OEKwZg5S`A9*3;Is@>i6D;nu{g5RJr%j+cO`ki_frRs_?>V>rM9+mK2 zB?r8OkT_`l z=JE#|13BIlI4tOXz@(pKsQ*I+hBCDIUH8kjG)V4L`X6oj{L$}thpoJlMYIi@JHNxq zfiGR83zwrV>R!H~>eLU)Zcs*+SC_Bm(cwXZViOZ5a^puZL96`F@LmLZr})TTuu6(8 zTd9HdH)NcOfVK(m3=Qd&@ucF`jiT}WJIFWZ`NHrvLD~SdbukAo(bUs9omcz76?Wrm zINsMvi1J+vEA5c-Ul(R=(rS69lzZ0&7v?epds(X7C}3DGsWjTe+!?d}wP_&6Z7gaG z{0Ec_I`ad;Ag8~Zs&ptndFNHeLer+QI2AIg7}Z)&%j{*uf~nCHJ6_Jgn^)!8bePna zwSDJV=2^y_CsCUx+t)!--dqE|( zPq#%|S7W>2c$~FypM8Z`C>*w^B^p&R-M=&G>dA9_VTuNoRe)(}ZfIIPg2a)*`V5ky zG>&fA%N|-T;?(!4euv@gJR3-}zVWu(DX4;!Ur^%BS2M@E&-kRz2&Y`?Ec zvsP~VrND2lNj+o65<^U zkI(V30F4Ev-zJhj+JB3myT^G87&|lkYed5_m>U^GGN@-%cI+=m6;9{0v`&ZcGFBrf zQTu@$JI7gaCP7^-pKPy(fz4d;+_E?LJMwV=4HFW-2o~x}Oy6m^5qpgM^1UJTnmL{-9J@)V&N~X_T z&r_wgY^HrSTXAj71#B~5r>umIv(jx@SNKI-i|ab>-|#*w9(F`Xm+hyx+zgo_=n3LAGkTYZg5Hh zxH_&u($1)=B&FmMgK$a`2}O&?Ji-N}D3Qo?CG z#*&>3SY{RPW*Ao*GbK*|DT_H@OhG1#RT{$1Ze3Vx3L-6jFU`toR$E`ys9mjK7lNJE z*GvfoK5)1%f>;1G;8k*uToi@QI0|Vp@kr+km)J08b@79ZL@I!iK&Z|UjKrg_6ofFG z(R+5pxdh3IeG@&DTyiY)j!^bCqwUglyW1AI+b#`cXIy3^K4os6K6)`-{eP6bV|S)O zyRIACwr!`wj&0j|Vyk1@w$-sawr$(Cu`>P;~c_Sp)S-wAk@BLgy1-XXN0Tpax%?Ii!$>N_5&7vv6mO~Y2*VrO%l*AAout# z8GS{dmvm4+OgtdoW1t=6w+aveJ|*G2ok7bj$Y??cAcj)h6D&Spi^~Ei@93PMX2?@7 za5PZbziI;1JtwaZE^iP^#Bt?*4BA(I7TDiX#I~1C${)H*7rRTt z*gcO_X=YA%hV$#~I~-oBXB%+5)eDc=JoQSv?ZCL1$z;{CiXJ zmY{+Nwcj5+-m%!VNK(wrXAa+$3Tg-6CHChatj0>TK>UEs)caAF?DzZKOV@sTg*WEk zF0!iiYodynh#M~+l3RoUA4ac^*rOTtoBO6l|7y_YpRiF|Fn(JQZd(Yz73gUv?t*Ki z&;<7{1LT4iVS}D%?9{nfBtyibDoDp`zjd>j_7h5r!|=kBQh{jMgx{t5K%#?jchX)i zTtx=4Z|FYc)xigz*=80GB=_SAz8dsd<+(mp8gHBy-6Gwxw-+@xvKm)Z*47x!8r{VG zr~nrG!tVrQlQ-3Uq^6h6t|h~@ow1wXI0@Wivu$Lw9Sj&G7>ucrKOz#KDsj1c{&-oH z?gG!}5s+)=cb~5=A^NEooKMT>D^&r7OveNV{lICCKpyrz;c9^-{p&m1>%ap%yPfT2 za9=rrx8^?<)T#-v*C-+BR9x}m&n=(U}YuU^0Jo&*nKM5+)QuGLpRc}xiKj!d2v z-}pWSO`i=Z+YyWE{~#Pm$+Z)ITfP;JU7agwo(Jcgp>=L2j%jU)X1dX%+Oy;x3~MXF)1MNdgLMrd#PR>FZbvX zaMZv33VvY~1F41*uP{Fso+(rb3C@mJvbF|EuTXYVqqziDg?~j_bi$!^f;4-;KMtOk zF~-b$DcpmYRhVPi7&C$+1w)-Xvt!OYTF+JKNVwS}d&Arj8~`4mQfC?6F+S7Hh1b1Y z?*TI&AwrAECiU9+XWJ`>$bZ=?X5J7VKvi{ejtEDjRWYrLDk8xj5G!xcD_Ma)IwDe1 ztHoW2T|yw(*0YKN@vI*XjT@u+`vr6Pe6aSr%MpOL_Nk~lVC-v57r|>#Cw-FT#P?Mz z&@2eV@s*ie)806l#bQ~DnLK%{k$(J2641RT4814Xeu{?lz?Kk&?WuomHX3Bs)cNCk zS5>LARNe3FIwL1wa1uH4>Hx1#5i{P@A4jpiYX2zu{}d}xq(U3f4x(HnqUXee-|uC}^hWhdXL|%y z2REJ<=`cW^)I4KKfqMsD4;i*e!c=4?J}~$imZXIT+=cxG&KdNRg$GiWKJ?<4Ja7Wq zCilDcXiQ6;MbVRs_5yZs#DBbz>TyRm=)hsp6K-(;-JFbm0MeI%bjSBj&O8Nl1+ic4 zv1|=Ed9X4b(0gIn9YSoC>~zRWnb(NY4`;d1QsM-5ALF zsL}y|4htw!Im6Q$wx0L$%m#MwU;h_m$RPLAOXjuQyI+oRLx@KYC^705_ARK9d5TjKMg#5iH zT6P@MnQPv#&_VpK#Q{mlD1;KlB1Z$(w3~vWcm@CPrj)p+6}jaH6Ow(2yUMU=Ublxb>tYi$c?Qc?)xo3N zZzYo4y&H{DV_a0LBD&Vg3H}tSH*Ue?EaCeG^aEU1T7+=H{P);ldQn>$6bYiu)J2xl z6PNjuOxO3z2Y3%TuVeuv0KaqOWQ3%2ALMQf=Q89Up>b>3t`a8$C3JVeK27y$YYZ-q ztz~O*e$NbfYPP+5)UMg;le+8`x0USl18yIz=*?K2sKuM11$Pdb|FCX@rRL%wy5YE` zFqjT^S7|~NPY&rdQ&j157I{NY9Mzjk?~J-DFY~gFE?O^Y*9l4j%{zx1ru$Br3#?4p z9CnYvgnJHD1OuY5poC$KD4f2^B%M=D_1*DW2C>s(ETNff5PWXEnh4e%Ir5?{82t@! zYL?-09UNcE!BZrRUE|xFbdAld!ebE55c>wj$X%vCJq7;b*UeI&xcUn%$tA5v^Lc1Y ziwd&iYK>K^@eack_Q|lHKN?9K$9W-`eBYp?L=^mi%<5&PzJANVtMz2_T zFXJ*@Qal?_-0utjx0ojZUsZf8agvGO1&zNyZri5ie$L_ar*``Bk1FA0fDuHA)-(sB zg8}3)Zff9@ow|oCnRc)RSVR_B<@IQGU=y81n>Zv;zT&>g=v33x$kwPr#dzf7 zaD+NW;gKLa7v{O_F>j{pljmQ;N+I)LAK~lxk!iCK9H%SK;5K*WLGwc(dz;UNfW4%$ z&PKA*mpV@-7wj+D+*rLff%l%b_eF9+{bYoN4^Bzv;(uC{$ z(uDJsZs7gD1t(EdN@#FP;Msr^)6EeU(gNHl<>r$l7ZA$uCl$2O`i1n08c=il6uMq@ z&jD6wgqgaww%N95S=FSquBDx7ROR)3zcn#FVS)mgbo1xB>(4ab@rKj%Yp&BZ@8_s+ zEXwQ!Z+jv`fp58UapITkb-8m>;#Mi*!EL_Oa+!0s(6@sUFn&^XEZSR5BHL?g9DmBv zH_QntcMwJ*uLgm~-AHQaO>V@hl zykfJiX>Mgz|0uWHSfTX7N?yG_|5W_2STZP$n{|g$adkC#g!)`B1Zkt*7FQ|Fyav>o;PbMRlSd|cxcqw0|iqOC<0aImZY2|mW zHpaDu!q84dU#efZl8b@(e8e+M(K7mkDOapZJ#2g}O+v(kOZ_T7SbxoEPQpcH2h(ij zu()>MT~(V!`o9d8Kk_|4^2geUjtZ2YU8f0`pf;Ik=?o+QGlg3Sb_+bdW(dk^!ikp-pVqu0&h|I&DE<#7Bi&CcBu?bUc~NWY7^;P3t4MbZHyE#%Ek#} zG<}{$lwiT>QlS{832-BhLGV^A+3q6ROdNbz&5vZDdqvLDbR&c582-CqDP_wo$gFVu zVkfa`FTBCi>hA4*`YP_BeV9NK=v&Z;Wt(U7e+CecgBgQB-A+?LTMiC-{<-I%SIb|wwY2ITOn#ku)?7~s@V}iD7QfZI)5D@_UsBkbrj{NXIdDnLOqD;VplN#s5QWe z%iz${@0M!(FdyCfw`{=#fRD&Hdz>^P#r9NBkc*T|xQdu+xgiZS+Sk^>o0X-NH_Er{ zG}xqD*O3x+6-Iw2my?-_>8cp~w5%Fnp?_hRvJ5Dc{-%T2WhG)V{uTMn5HN-*IEmq_ zK7$(_Y#8a0ZfTaCqWU-~exQz#NB;=eWNAXES-Hi!lSPg0bwctP#2FaKBYk@N;-?4HII|`ejejn|Vq)emQcm+;5%b8pl;V*4 z7+jq=e8vX0HBn6357TJI-5M&d@*(}hakj23#{M%%6}_uyYrnO;qZ)u0xNkPVu-e7I z^G+V9{l|!9XX!<*UwpHOqu;-5>4onry}#+zIm9`#zwT8y#Cba@5ryL$YB&3$)+M{o z_n}KB8U1{BiQ^l4J@X>>#Xn!!KXoZlkF!1KM%n`&81Kd275WD_EB$EUMXyVK|9y}J z@g}e=AAxXWVCLGw`8QvgL)J61EJ2(SCe(@UmViqu?NWBeB-_>g=SpaZ2H9GHIHq<} zULPW012ManaOTu-tMr!igR0phjF+aCQlLd)AM_)w@Au40=m#lK0i>r{5;axjoaHJf_&uflfZ>iwlC=4Rk!lN25eAEVD0k~Y+u;F3vZ^`zrepy zz%y@d#Jq9YJOgqTUerI}&Ip}3LIOOEf_x{tXJ1-ADu=pJ8Qo*-L==6oJXH6OU%{jG z4^r8_I@9(cx@2}!**&Ab^KNNBXaXpP?*#XM-&u`#;CzScFTYHGK+K5@l9k*_TIgGo zA$As0!@tE!O~RE6*9-c_4`IOW%)iupaG(SX`R;eqejr9~$M?FukpIl*uil&` z_rP8S6~`n+7)WLJZ)LUD>Y?vFD+e~7zQol9O&PGfa#)B*d)Xe`@DpUiFFTb2obKUk zs|SovbZ92xE#(@>_JWmvh^?3_mA9dLT;K7-f?rT_s^z!7hv&w(_j^?YBhL~XH)$th zY^Dmi!`r8II@CsObKfthB>+uH<6dW@lEQ`tHr)#af+aU=wTL|T0?Cx&kEoQ?;cFvd z*|mf6(fM7(ext8Rq$0NE>WZ4`^2NKmLEY<#2IfgVp>bar>*7hgG}ax8UNl19UHfrR z5hE?RfGQ{MuHw*ndvOlDBPX6>@?{gCHOJhS7~_; zjs^VAO=&F04K+e089X_kT00HW_5yuU|EwGf43oG1vUKh=z~VrE0Y;XzG9J~=8>AEd z28hV9Drf9I(jH*Nsr3HhU|`U_UH!3p7mu#T*=jhkB!YCeiX}iy#WU-iQ3Fk=Ayas+`6eib&`5o2o{OrI! zYtBv%O4o*BkY6xstyj1zWsZXh*vcX3r{v|rW&p>82sslb5s3~-xEqoPGHb`@v>iN# z&$S9&KPw~$K`kzE==1*;EikN!kJ15DH-ZUPyQhoquEYrU1`}dc4Ra!5 z&I6NLvze)(5sg0}-X`I<4AWV(gprJ1H5`|tEhI|?c_cwGWe-iY4{gPyi-GG3;ibkL zH!I&!=~lIim3691;sKZja?V*45&v4kzNycGg4cP~ zem8){Rd0KmdyE{6ztryYfo28Yc5z`jUdiuktfp2J$JC&jRN?rj%5*VdUPw<=27+5d zUB6p9BbR{<*$&zDF+|@r{t)_&B(P;5F7Q!O(0DbEA``G=un%>{OHI$dGsPt1XU!= z1=g6iJE&&Sq@OTeOHFTgRoshl&Ew&Rtwoeaq;}@j4N&{JVCm;e!}HU4Co_Oz0(9l{ zS<6)00=nd0Pd*{MQTgI}iX znkR4CxCNHg=CXOkQbo>>{EBXijo4GsA)r(j%@S+BbfCE%07R{0l-4=mV3rnE;F;Qr zXKfr3{c4ly4b|>FVOF*L9SvCutqOhx(t=YOUTyq5U&QMf6?0xV>X5M)@>2c>Ad)<9 z@h=;41H5y_7gJZhMd(=@5PREPdf$6UilF?!UdNFb<2_+#iG=B1w_HL6<1gEW^TOm>?rd zz{Wm`X}+}M*gmdXTp*lf#xGg;US4_0PlMUwA4=#e(1v?cW*rpZikKwBode%Vsj_$2Xxx64hy7Z#fkI7~YJQd6EHy^Rz zL2eAEP(XXf6TUWUJ;tagvVm&2M^;-0&|eZ|GvpCn1|{kTb?f@&MIxi5&Rkk-f)aVc z&D@jq9D9IGoOt2wj=%;)-dEJGQ1P81)w@@6ebgV0Z!CZG(_*XWsqT7kH8Bp_>PN|F1FdzTNI zL#?3+{uuB;AF0t~*+bbMFcrK)j{1pFeaD>`XB5oDQh14w4oBnu{zA%@4h|fh+y5Fy zd5$d|?o{>xlN$KEcb7&}r|c`(YOb~Zy=%R8vMNs>rJEiCA?4I#oow@A>zLBMB!QF^ znLDYO*=>KFf4rM|?@4cx4fQ}$_E)Gik)RZSZ-MeHQ=z{@Pk}4^nybJJ7nuBYXPf~gjW^Ks zHP%zEkGpc0DT1?(PzQdpt+{In-kc^_Oe1Z5^ z6+xum6S|ajT~6)J78Gq|Bj$q{s^WY7&k4MwgFaFOKerWQvfAqVsWWJ4M-O$2H(?WD znUZq&#u;#}2N7!y?C7jVP&bh*3q4=`De`lU0QJoT@f9_g-%3rdz6DTvpYnlM)(#^49iFq;IV zfuqiwj(gD5I&nuIV5{_*viZ|mVCPEM@TPj%N80Kcq&deMj^L*dyY-BI2OP$TR3pnw zfgVjsW7WfF$qK(&c=g3e?l7G``)#q<&>60ADmysU0`3n=mxBP}f)QZSzci(S{DPRI z5%or&C_4NiqS32shh?_VtD)Wsz0v;K+lX03&aOo)HS=?~^tljd9Tx^KyWW~4A)r?? zwz-m-;SN4@raZz89}Kbur^Z39nlmgbvUAQz>4{povsWFnJ9D(miRnpawoZcRTG(hZ zXVn%o%FxOQ#=kemUoOr6ddpNSLGZKvHRu{V@Leby!m}0cx7HnaLiiv@Qg_j>f~=k@ zEu+sQBNLf92smEz7oIe6uzu=uLNdE3B)Rf?cAmpSAfgIv%=)9Wq-|c+G6mDkP5UvV zv8x_;lkuSYT}u3@d*FCKQ;eH+@;`CQ{$$b$m>&Yb<_G`d`VXE&|8Mip|1PB~%i5tb z|3n(j{U|Ki=;^l!gG<<`QKa+jsrOI~7fv2!>{`Jg=L zq5P2ivB^TuK-lw&N`t84(Pa)*%5PkM1BnpeU zGCMtnm}!3mPWyOblF5z&fJJj`nqcNA_6AcAA)H@~iW=TBx9sWBrXkO(XsN6#TGy=f z_!NA8ZtE9KGPXizgz!oN!doEOCPIld#!9Vht`*}~AdbKG&)z;{aRkcImz4jG%#~fX z3^{peieS}k3Vs-KBl8TYE-y0Iuzae*&6})XATf=sIKZ5Ckz?r;|L8=rUTG9FrV;KF z_y|yoDY0JM*@D(g=nK036*IAnrkuwvkF^7e0iZAO^gl?54M9nvM2?Z1^2ohN_2uO$ zKfZc#-aBnV*O8rO)fm*u;0v^Bm6Pdo1?3EPz-XDyKs^<4X&t{qUAd(Rw(>FK8p4oQDJ!!5|Z9@7J$N zR7hIrl~EAma+_HC*rasDuz%0|t+AaG@a-m;uEcnXKt3qE?oM9sPMqsLehG}ByhR(Hha)yDb4MY3cl1d8!`<;EU9OOW;LEXx&)&)uXpX6_>&l3WIv@rJ=;Pg)Am>%MP9UsKVCLk zURiP=QRtC*+SYelS$RoNtK&pRItOQ+Wc{ese0XV!70KXQ$1zWP)BXt-xb&m+4Pg&V zp^rH*9}04kdFz{DOOs7cM=dcPJ>HX^%xnzH!lgwVJqo&f8`>0EazPcTvA1ST#FC;2 zb?jp%mk6ko48T?+=VN8}UYVfIbmqgGw&xwc#oO!+x_KK{M~i7@>?E5k#x-%L(u$5U zbl_&xxvsU>brMoJto*K&I4sup*1UVFT%On4%*!m~K_QQX+qj)JSkWxREK0naHZ1d; zL1$n-`7~E1Dg6->dW3}fIQb4J*-$?bTJ>Dn*U4$SFa|!^YFD=D*Z& z>Fv13OZn5_m14uekjQd^pDS096|Cjx@ov4t~$pON@CCFNRaUj*HfnaX$aUT zr_kPdFM+)h4A%b!Zs3+gW{StVLP0y@(uR^{r>CA zdWZ3a)>NYk+X-D!Gir1gX12N5`g&SBy-|iFg^4LN729A3y<==f)hb*c?FKD8A!xab zV@ZNlSa%Eex?`~C+`YetDFI?@KpSFfXdBDZ>QP8hy8;KaBzsE2{L6L+Ka2GS5wEnm zX|JTohVyWZIMe>o)TG^&yxAAW9rGId1^dc)rPC-A@0;buu0uZ9c9$h&s6-^9jEQC) zKRHT^o4+Y3V|;1PO7o!Bu98H}bwOEcsWbWr zvoFY$rn(n}^nT4T+m^(!dxK9|~ax--F3xoWEn;zhbZAvwIwyMK8T>`fn(HU#}2?=A6r_>To zR2bJ#7)V+b-QuTqccx>uq4tnZe?O7l?ETo@lEwVwxXUiKH5>O~EIM&rdCO@Km2lA)^mbzjQ&I{(7u{nrO2Pz^B}GX0JL#+V4y24$9;(P;D4@q?W@%MF=Fe6+jW0c9AClJk{d zcHSY_7lzV4w(ocF9{{?--?WJKbt(k$lkAeTmDo08yuwt;H1}Vl4pN_<$ayV|ye>_X z(kpVLngy;pQA>=G7jP4W$$m{PR>)NVZ{YYajO&vks@>eZ43O$%znaWph=kP_>}tfF zoEPzx2ZTOkkZzBlJ11#iZR&urmCu#dR2EM#!ziVt?4k~SQK~Cah9O#aEUMvNKck@X z#c&ct(1>`V)qlE!A=AQ87btJk5NH|ikrp)bq3E?XfHxUc$=tbeV%|KtWRA&#Nj=r3 zB-!RHS?yKpN7L$B>^>|dQE6SNoPq-Eb=VbV$m;Asj1Me-#MBj?Ql=&1T1&#h=*BgS z7x+nTXlpgI8~y+HHHC6=d*a5=-i-Cb#0mcghd(7#2N%;H7pkd~(@z+WkPE>2Cvy0| z_i2qtZ9H}K@5!sa3x@t5B18jM8bv6D++;qDO=JXC2nU5INwy4n$#o^WCukF!n^l^8 zaY^lchJUY6D|+#*TJ^7_7KT#eZmRVFL-@KW4~ZVr+X=U4`ew7(!E8hX2bBR?jbdO*!{LJJCVBV;O&8yz88*Z zU%sg8uoqjjc8xEHuHnvWr)!93pPtFgjgPoYLWg?{&fgffiBvujx#2JW{AvqKF`QK! zzy`!>#v&b+lq(MgN8^2fAGroI=2=0w#pgX4sLdCPJ5m-f(I!=*MA@s-Mp;vun9Qu| zzGV3MYT}A9hLwI`iA3sgg(giL_$gXxkO3~yDXI|ayivt5ZA%U=3dT4wvf?Sr`eaTt z;7}TI$O?Kj>6rNFlK|_Hpmo>TGD}zwD-l+D;dm#IwJffR9K2osBzm*qW<9A+v6$cn zkY?903i??kmr35@j5`^%d@86^KsabciPo?M`|TAqa6U0#;f<1tEcW!V8QMMwtrOTo zV^($oeDb!g;Yfxu^x|#C?1C(-WVr&I>=eaxsZ!z?s>fjC5ZZi_d2(+@M)3^tR*2>x z4#QCu*Vg5vPM~JBJ-;5;Rwn=m8HDKwLtMS1xijJ}EUj2l%8S(L3SmaDg+_aMUqv$& z&PtaYy=G~JH_Q{nAtthW%b7%Pt(kkV+;XVd65%~A5|PnLB!r>qtze`ndvyUfa$g0`Ql40oLzU3w zMkSZwmnz=1f?XM;TJwGiT;-IkoKnxGag71S6B#@SbKQ*Cl826XHMze!yX#g}W`vYt zeMoZQFU3JE4hnsx4sp${0P(E&Nv=DRd_-}o>tbMTo}*+L2X`QGGQ44EXv7`AFnvjP z$nF$-C`74WQIMh^VtsbE48X}ZJRf>}ig=0kD1ji&$uOS>Z?EjuSZ%#CwsWseQq30F zbqRJDVXfr599xBSh^I-MlV^vz^t;}4u+G%ISMb3~B7%J|YUELSF+qs66uXEog+YLg zq_`t95JIUJDBpw|^AFLUSy|P%ux_ar+%LIfeZcCmc{L3{%GVei6?)~h8xfc0F*Jk` zYDKkEtJ#?1w2bnqb;R39@Hjw$uFGK)XWG0$#r+WMpy!s9sEwyFnF--^m5%z(C6EEt zgI>J4dga5i@Vd;*;o1YasFOPHdOy28;mQ(OSEIrUX&^?cZl`TmLgA+7L`<%kqNeB_ z0nh&IZ^H&!H}I2fqt*so)4_p9Me?ijtE@%$F~xx!n|rmAc1J2@ zgf#1Vj*3hsE`^EJR6~rEcJjC_2~Abj+7YMA7(;RNMtn&Y>-J{*00{fkPrAh%u4<#E zD**{jX?zJvKtA0fhpM|6v#RhYT6&QC+*syQxIH${Nv7#;c-o2I}b-3P8mq-cp4&8%K1 zU;kaYsecTK4+nK^1Me2Cnrs?&usmZF%jlG`Mibe*LTkXD98ZlBe=TGl=n9DySx^cO zfwE1kIrGozqnmh8b&NOmdssq#nz6lT4@PIVgKYkxo1??JG9-o2Df!`Rdt|a}`XM58 zB*>Qw^~aJ$UU35*5(sZ3|NJ6-B#cxg-Yn+gaU@z>SMHM-6DSxH3cDl-ZpG(Rf)B`K zaVq@}Y9kLCT1AZepM0V5$P9&)x+BaO)8 z!$a7uNlU&5#AUv8s%cx@l2&t_8Uy5G9ve4WLN1H$%2hY6iz-Wt_YqvdZsZ5b*6Ziv zs|_&$E-}ybjAnJJ7Yuok`k88VrGD;q^1z#&e_$nQnKT3te`~|8j89ttcXoDc#C2{6 zvMIMqQ0^tJgj+fD^NWf;vSmX}qlof~yL^Cve~99EKu_Oyf1ez4>kZ+$gWK(@zFD-| zhEnf>^}wTQYuZmsX9su$1^kkSW;0M)AavpE zGdV`JSdH)oC$kfP>x@>o;cMKyJMfLPDM#=hLe2V1dAZB@@qZ=v{TECRT9MW&`%^W- z`jJNQ{O5-UWq`Tu|9@!6R<%(^RY&u&MX5K`Bnxo^plc&R1vNIKMI=Qa(~d=wThcz* zNZR)A)#JKx%3aDklzg6W)qk;HqOZWQT{c(1e0Fv*106-X6L z1hxvV(PBqNXpcl9Gxlui0h0z56Xth`7g-#Wuy?r0N#r)V373gPKOe&+`h~Y;K_N_R z4r1nRMzPeQH}AWoXtMu(8izeXAc(ii6$V19{sZqat33oL#FoOIY?i4voVCGx59W$V zC!AM!4V#zE4sIGwGaQ-%8__NOdAmTh?)2N1$}E^??DKGPgehk6Z~*FdoUq2%LVzhmo2u~4}B zZfSA%snAAP=ja%A?&H#!wFqQnH>7fn>|$$vYNB=_Pm8P@J|Yng&X70Hpn*VW0MS zX5>~#Qv%xxzYf_6quVyN{(Y7?JQEk%MRO+(Mi>8_f(Lrn(_QLgax9gP+CLob#1A*^ z6f?0{BxeWr#+Ztszwtc2{7rJ(m|qBrH$6H;UpcmYc08l@gCAJKa*;fuVkQWGY)~hi z=3$>X1lz*Wo<@kb&Sr>f^E19-cW`@2d=HoK&jdSLfm!$^923dT^fbB1Lbmmea2gZ`f@&VL0OqyZge;35G5?U4WhvHk~tssAgF zut@{j3vJosyQ|YoGrD@wp9}$Xh^VR&3e6U{S&p<2)Qa4sr{_|FDb~MMCfsQ^wA{LYoJ8!plNmg_BI!o6nR~hW8V~(_F8E z65pq}mcs!zv^UIGA9XpOY3Ul8hZ=sG{A=0=P{P+!Q|zxv>2HRf@3=uLmUnsVFX@nP zwUf|*8(*;A*p3Hd#!nHXuNtA>kF$<~H>_{}CiF0Ga9KWb;ncyNGE%oxPAY2ILFr`p z&0NuH6LrBa%;bS-FOm)Y`?^5F)QJLVSh^@mVN9v+9P6?eZXL@vo@sR;V05kyVF=al z`ar6UVpIQi>X6=uve2a%hWAN(FF;egV(1+m9%|U<)2X??{ycknxU;#_Jv>~zt9o?I z_5#(b4psUmxSJRI1Qo)*QFfyhy!_f4zI}A~7#G3GL~nV0VvT)4fOTcn`M1!RKJ92klCXPv_m2V&K0N^ zw3~kuvYXTRld3v3Ybh5NhM@-Yhjk1#+OzPdNAyv@JwhsZ&YjG{!}Av~H?3btWwH02 zXV{&*q8h;2+GQ|D_djsA5U`@`!Qn5dUq%c*h-j+>piQVBplAYeK;92EZy3Om%?8L@ zH$$s<^P|q!!g3^}UXC20o#aeREIiM7S<%TFAT0n zFbTXowdNxs#&8j4rmSs|0 zU0+UC&ID-+moP&~X9FW<%_fJ@B;|A}?BKZ1S-M#as-kF~YJTti*{ZkDDp32Xp}YSX z;`&cnc|M^3&6rkoO9+)l6c7LytbEa(E#of{)kZNchhAugo2LN;DbQtK4!0SZ4Hw_2 z{oqrQ`OuV(rBSmxX2~tLu3%eUT8znVHt>qQwwPbJ7L&sg>bjqRZTY zvh-j}9S?N$NhZS!s-+|N8)(4B8iVDAyQ>@~T`=TqHoX#t1I0yY5IAW}sZ4Vfu6GsR z1->GN$xwqOjww6l8BGEAFU%pY(v4c5DJLS+slcG()my6Z(4UrSh?5|P^5Chy5<_>? z^D0iGc}d&R1{12iVj&hT4|a`R?}#HEak&l)8`_d%(INKTt#u&6B6gt5W1ZOP z$;YoQ2>@SZI{*+m#CRvmf!s)u)29y@{@8RmQyf3~rNf@K{j*XcsHm4jh@#v>lxnfz zqf3BNwExFl!+n1WSbd~xnP;LHEY7=}pp7gy%vodGR$iiI;X*?e^|-+!V5KyyDNCg5KESdVton}@WuPSA-)m%LB+O_W^$1moRvtup8?tE z{Wav7AsSIyKUj0XOphY1ch4jF#fkW?ehIfr-$8;<$l=G+DJH^}1gj}7toydqE^JGb z)`UzO@i(>vt;&L%6=^SfIq(x|1n<7)#RQP9avKA3KdI12UE#oWf4f(*$ z27`}Bst0X>kM)NldcAghuV8=agFuAT9_<$uF@PFUNqv%PS}|QP9=ID6a_@^C?*4ml zYb|8dxecEn>Y>8A(VtU&8Y?8}zY~|;gBdwv1vY>qWULp(HG%61m^IlFjFBw-@sq-k zEXCk0&cNb+=j`EwcYZIvgG9;+4_a%1$XsoSF@4ixBOK|^V#l9#WoKLw?L(Z^x&uH3v_Q@xc{E`$$~i{NR94oj zU_aYp&Y3KaS@t_D+R8cH|03-igLDtt^gc6ZY}>YN+qP}nwr%5#J!fp6v2EL)%$s*N zyPKr4o8-e&^{;xqb#>o;clUMuuHdKkkM0@fMX+i4pf(W(M=fTgTrC3LK2=C&E$B_! zPynjaUrh+xHV*`6`DGStpSX%wOyV_iLUnRGPuE0w-gC+eu<5oGUp@f4$Hlg7Su9xq z(t>Kr@4+^b!DyebJ~Icq20LFmT*OwRJ}Ie`56OZfuP~a9A(6Kg7GlZ$dvZbTLda+2 zV61KEI-=~rUYNAATcJ)(Kg5MykqsSM zWAmbk@-NrpVu4Bz6otK)qN&pq=Jkzn%bmf`DOokrM8WPvnD;1`7M7k z59xCRqp6gnpYOTcvA9<+xbD`4QWCtzB#A#IHg}A^4BAb z*{Q44K;v0+;TK)q8zb`PqBQSdNpxF@{BvDKjATJR6aQC*v@c~dNJElG#NQE(8;4k4 zv)cgVYvxKDaPJKpt?uRKS&(BPpZd;`hYHP%>c-DsOf;OE({1@!wlT~>=T~TRwp!b)I^1?)EGFP7>JjPY9#Yaes zP@6+5($u|2owl@%eHFs|OF=ZNAcjrwjw70ljd}*7vDLtuS0C&JrK3(s$Y>0-kZ!>t z{qA{jw=76YLpQjI4}}sT>^g~SP7|p&B!u02jen0z=2~tc2;eevvzCaZMZjF#-U31^Ji5<18hP9EtRdK=lFQvKpufIbr8ym$l-~{S#bT; zg{VVB(883IvhwwH;wtkdOYk)<(i{yF)|`=`r-`Z1oAjt{#%g?rjCjwawfJZ-^r$rc zV;Q6CCLkC5Cp^WqnEuzuNvdyP@tab6jIXHGsmnq!TRd@%JX%*oF}=_`!8SRUd0-AR zNX+z7eUWp7E^);)g!@NYL3k6MR($PB3QX4wio~EEP0F`5(I*M=gPJ|vggD%a&rRX6 z`3?KU4IxT)8ISzpj7YdW+;7ik3+%@rN0!W^swMRHM<)UmM}$RthtLj8Zy5I)bTfp` zXOeYxUB@>rlr{!ay@`h#nj??;W=5f~6 zB6x-4{MszBuUuY3Ttmyie%=d>o9}M#{Zoe_VG5)WA(4sYNtJQ8dP~cIYAaYKRh^iFg$)dusA!gh zazW&h=fll~L32pUQlvU6Ic{@Umz>pQ1}+|rU}bbY}^n|nS zRgs{^lZozbk)bVpn?f#?iF-<4<>8;x!jQA|)Vn#3)IO!p!Gjc9_6^^(qtlwrJuJ@6 zF|6}~@dXo4Z=$1Qm568=!@G<788Qm17%bo!BJUHlXL<+ArF%@w>D6C)le)@|;pMa8 zMKy>o|K5gIlU$7MXuaf*kggr;i);|z$v)g|7}Sh+vH$g62h9R1EG))jMW>BAim=w zQ(yJWX{r10DZLv7_443X1q;}T&=KQvgdn^$7Cq!@?39G$sS#)1t0Lk&`WGqAyoXs> zgfj?_nnY59ze${Yheex$F0IgL_w#cdDwyck6L;RjJGGEw|&3 z*-9kD8`Uz&V7^kTK3e*=6OP?VG>BlVzj-`-^^WmgPH+u8JRE+SwV`ZhV2=6xPkJF(d+`xH?5VbTX~QpUYW{fK*uHhWy?hx;+{R?*A6aK8Afuk`#T3PTVYRYf%)lNDnrHHyA@qRt4 zMPqEd6kN&Xo2R4!;yQwooE0~UJ##@w20<&qOw{Tcxw9TeK|nOmTO}1zT*whwE{Sut zir2adQlv=LN$yG9aFk%wiSrw0mjZ@b%RqYHYhD#DZM<=C=QS%khQtSc+_caehYPwS z%(7swv4VIZ>Z+3-<(OYcR!l#06K=$5FyRs;W;fNGd=(e$d$_w|hnfTW`YaO&Kf=~5 ze37GnR3F$Ai^@fnaRFO0H2rr&bFjE4D#Hv3A!(#fiH&6hi~Lq_7*tzP^oyV1Seqq? zBi@kBEcVH&BsUZUjt1Y4WXOz;sm~5#rE3)6>!oo7X*ozDlkpZEOVvI%WoQ-#*4Do>P1VIFpGA!ZRHK2x)bitjzy)r5ovz$^rr~pUm@}Wrk zhUhK6vLtm6)dq>i$|2@_8{F}|!qhc7sd3{*oqy0JegCyP`@l=u-uv#~o@!VF5qoPH zD|_(+r$(fd;r(lu^#SWfs7M>9l{LU66SI(Yxm`MZSGpYHO54nd*j}2UnR~>*Qk!aL z*=`EJ2~{QD#*&>p1k%t}M_SLgg)1VX&vKqA$BLY}qGoLQt0{n8k%xaj5pOW3lvVwn z$Xty>q^AOAHnb3uwb@|JKDob?Rq!dd2;|_sRI4xe!s|(eqk&u2$dX7zTkdgOKB^*S zk4?s=2|B%*K=@hR$=yjE*1o19r!2?L(x|CkeFJ^VQbq*Qb; zRz6Av1%kvr(2!#ZxEi=#Af>AmbwN@gV}aV=7uDF0FXq~47rJ$BT-v5k)z&hJ8JYbT zK;@G9LQ5t{u99%n!2UQ<^&t9jrAstPcM$Yk9FSgdx3KqtOtKY^sY8p%tvqwY+4@4M z<-GKzB4>%!yo^mKtI{&1v`s4O`U36zQTm!Tr-|i#(`rperN0_RTo|Xdq-w|v{*DH~2vhUxnz~XYB9t`ex}fMXYPx1~i~KTb-+ueDDE-b9qcx4y zkfXYBy{eI=6fmq*vt}v6=5j~*@>!Fol2&O-`kJFnNCk_z$%{XV9+gwh-v!L(vC%qM7HB@~EXXs0QAY*xvw#>3K)i_jAD|Bc<(`UEG z1p#_c1Ax<=2l_b)PJ|X5AkmaM1ev5SC2e@P2W701rZWlB+rk1D)F29@h%rqZw(zq* z8BcJhb5_ZjeznJi8aG{3-T8_}qJvu}%Fq5Z0jjXodo#ar8Cj(I&u8AS7sG38SesF8 zqAEg6{^noZm$s-ZG|Ma;YSd7U@kjQTzusL^JSSV_UTM!UH zsx2z$kVk5hr}6B+w;`vS*C*NrceS-0lUYnj1v3q2Um%t2@Ak_hT>yje)k@rf@T#^N z`8A$XY9O=_gu!bNQMC>laUGQ2KrfoNszV3-MSUk)ysg+>4IS?WN^w!q+JSjO6BVJ= zaI~JRC@u{4QZh=z9&ofkTP+1Rzi{loTCWGjP1Vr(l|pHCdIoB;dNfI+W!K`^GCD*9 z-LTf}K1P)*AB0|%UOtZK@ViYkn4TfEhP>k@7cWYrO8#M!gA+<5D(k{F^qezGsGT3B z`#iXooI)ubXyf#pf{QqmX7q$^%E3eZB$Luspbf*!tb!J8eb*ToV=F{q>GDrENpiUw z?QXD@AhX&At^$Z!)fst z<0Ny9+g~aH6O?o~;H(QmOoNuTcgopU|C&}iv*J7-F*W!;CZlRc##EEJ6W>D%b|B1f-fdYq&>4<{G#k9OPx*hpwGuWTrZMa&79jwaZ!s= zX|3agv4_@g>bi986Fv)qIocv}j3e7OkcdL98#yr#m8|X4%ooaipUBS`0T_498=I97 z1*aYY&GYaaczGZZFS8J3OYuU>^Poas3s|$U$LY?MDB@pHmc)lQC<$vtfIHaHxE(_# z1Nf8LRF4e#w%glzh(qE(*A)kjN->m5S2UA8+SETqZ))V-JjS23pT?_zfRsY;+bDf( zK5YY*`VuX~JlM=oR$rNYR=I??ytDz`B8DR4v)tylMZv#hIVTHwCo#_6K!C4D6E|?~ zAz9)v@K?Ft+liuL4*m#g86E?@^lv39q995%4OK`+^+$NJKR39$SZOsBq4^1YVC{~s zf9{ViNlhyZV92aQPEywmO@54*G?+6k2qv9QJV1}}C8^hZ&iKOE9lA5-ZY3HG#uXIJ zF3%oS_BlLMH3CANU_Hoi`#3U$sWiOma^K%zdnGnCkC4~0swWc4=~zT|hMmX8U$H4F z%X?;f%LN4s_+kR}dqnox!xKXqHbsNZ2u~)@%V!p&r^bUB>Au1Gph1T!BKX90$Kj&S z!kvVeE& zk)CzkFJn>}xp@1y+)b~SUBYP@6cVW0h?!0#1yHV+UErQY)2ZA^q@w3{D^v6Y?=N>6 z0D}@CxBF>W1%sR(O%9=(y0%{+}wFWELi`G!+nx@->9C1SOj@8S)s(>K(V zTQ&olD@u?nl;zID;*hP0A276T!E{|(=h(Hr;|@26^8ocmLd?7q*;A;e1ZW;zj5d28 zu-|1rk|ti};~eZO)Kl^UDO@+|1gEVYE)S;>zeB{Hp8j!RJuqT_TbjQ8`b03>0y+H( z&PCgBS?+q}T<-D!`=L_;(R`{1h&Z`^(RAHk+Z#K4W+ZPz2sj_U)t)^3maRQ~Xn*^L zD^z+|vA~SBC6hJW-$yBY1qj~)A^0w4vkvB`z(o%*&%-ZzBBlvuqx}u_W>#We|J{JR zxWM(vaiZovs5K6R%Ptkt%Df{po0#ucA-z1#{ISozsB!}M3BHI|EKnk5zKWokTZj^7 zo(|25T}gYcG%&GxYL*`uot#H-E|K6EFZ%e#`{q7 zcggt<*s@aiQ-3L&eBe`1e~h|MQo~IOdrjI}vJE_s1=MHMSIhtyJyFZluOXB1CES_n zLbg*rb-kFG2h`y^0Y9Kmw8%w)Sy*YpL*5a`>5BNwWr(LxMKGo_CRLX}&0KXsA(^llDd!jB>R<#_lcC>=SWPIo{v&`5XgpZ`uaLc4{M{?UbdR;F zR0y&kR=}NPCyoHE`0_gdZuJk?J8!acn)aG%3h3m}Clu{KaCulLwaRqo^9;wo_48*y zp3%Jgvv3Q8EbQ6vLy>&Yi`;%7qyW^`(VGMU3Z$LY=r5kXTTBnNq`y>EN0wz@sxO?xCn!~vMbpZEn zfAEXBaNuJLe_afvgMB=cCwUQwC}wcuH8hbYoyVV0PK|K>;+}^u890T0z*xD8(|}je zMqq@z;Gnf{n3ukDHk>Ql*mXfGtTp8rs)Ve}0XJh6*1HB&c#<$Z5)>v(ipsuN4=oEn zP?Hy#*|cw4(#sK$1x(%}9D(B$7IRoY7L5~-7)gN~(cg;V!-5H!641CDb!Yw^K(dLQ z0(Qf{uJ8&Y5^!>u)P!(_^qYnw09=X;-ms!(;kJ=X3Wv?AhVEXAV$GXRMl~lD*`@+6 zH6^>4p4Bd;z{bA8h9WXMUscAnnA|g*bNr(oxtU;5-yws`CA&se;R9ZWpn&|3Dxt#r zyvf(4<>ASNixL&LfG}lqdzG{!l4|yR%91b(7d;PoZO(l=XDcY!DSx&^?<5_*T$^k+ ztSmoy6?A7#l%@suS+NAU0j2z)Hb`{~e-_TnQ8T&rQ@%3?z{55~4le*@n0z63Ea736 z{YYLff}TH*Zvgk56#MPVP^?LE{TnB;SaW;16Fd|?m1h3K{AnBjr}^aL$VkC5kylPyDG zPaeKQFR7YEmbbju-`2;iEbNsQvr(Lza@*LBDjbwSnSTN5h9~oyQq?C@Kj09^9jTDt zBB{I+@vg6iyR?`QRy~vy!|N!B<8diz5ma>6nbAurJU^efXn-`>6!;r5=Tz8;R^VsX zd;V+`h2`!Ci%5hLfi<&U=J`JBh39FT<5`r%Cm$3UYX|uT=bx4Xrc6@Ct}*AtP7tyY zjnj(naQwayx1f2$ff-KB$VSORKv9} zk#piB|HvDhtM|woy=5*k`xDa|_}sBDxyiE;P1HxC-}*hp1BGqh9lYGfqwZ5^J*W#8D8BTnb$8+Y#zye!)zCL`X1y#EByr}{l3Q= zA?N5edwQsM0~mLVBMY<=b0+GoKzPv~m$*taCHpR+ zF4bR^0s8_rl04ay;Lu*>*U_vk=P*(+?EwY`+JWRU$PXYgaK{(0C{YPLb)~wT;IwVw z>q>DS|0Sx37QYLL&_hRz=I=r%(pKr8r}cGYy(&r~ExAWbuXyh1ElZN6s;k zDYS+2B8@QaDp6XAIDpYOoHJzmm2}QI7}B^jP@G_&dNS#!dl`##Z|sOb_f*GH!d$3y z<+)exyvRS1rT0LZqfizUyn3p)hTe#a@>FyMuDX(5e{yYiO&$nzW#MiiJ+rX@GgKa+ zYfJ5JG5Jk@0HbR70aaz+x1b9=Sb%BpJ9EHf)}YeVy8T%mJgxeqlUlc}QLO?k=-Y$U z-u^}2Tzb{|O;OVB>y{uHK>V$+@fpF6hj_?J@eKI&AfumPw#$*mtRh3#T03K|3185N zYb3uTy%274A^A_e@uB41N&#K0Fy-F?%PnB@i76;`0g?^occkj|^qJ$L-OLO62c3~^ z$|`_7Zkc6NKkH9=WQwe*a|+7=XkiLYIq;c-%s4adJj6*$G@5@E6xru1g9?t!NO?`) zGPBC&Ka(tStukp$e|Jn=BYZf799dS>>$o14{RDyiB*9^gi6Cc^_k5ab zh6M+)*{GARcm|k#X_|fc$&6@Zn<&;L$Wn4<3SgSljDx05nn@~$Wgje2JW*L>`hR17Z&ObNuZP| zLzlBx??p$}{&v?K(x~{34s-&tbP_s`Ege1r4N#w_?GlqKev}p?JXJR>EfUQyr_HLz z;n}yIo#znBCth_oauWKCm1(AF#$sh_B9^#&aE#56WzJ|3saMe!AV90dR;exSh zL{9xOQ}XnTvdwVJAp^~pokvyQNFH}3d1(4WmnLD{5d+1K)Q?L$Opsq`b4p7{lz_q9iY=fWIGtqV$TV45%}!xtJ(VrW{Hu{6N@y88XgWd9T@g{F z&`|3IPQl`va1U6?=dBjK)NR;hHNxpJ)Gi_+CU;pH>IIaF2cl;Lp>*StN(Hj5Z{T?S zk~}NU`iyl+^Ex?uyF7GnZ|=i@ak@m)MWu(*e^sb)oyaEJN^NM<&&pT*<0OrzzyyiZ z!3m;I_M9|dVI>|*K!VDA1O|!n7aYeRlcEt*&cRFr-s=clEUo%aZPjK z5nH}=8>eV@w}#^F09_NFHw{2(QXo|ChPjL2a|*A^_XHNynwfieJ*zexs93%r_*U(b zxoZr_-7>-OrD4w8KylMe-%4?ONCv@(3GuAp3JdDrm26st{dNg5G4Xg%yDbdW+h@b{ zjoPMo=?dlBiNmZBs}AI|cwy3=y+Qj(ajij8fB0500`Z%_aqAppEGe6lR;%I4SzO0j z=ZR<6#nN}VIcd>iP-=gOMaw-b$&wi=mp-kKjfIX(DM_hFLw{v&&LUnZEknZ_U}dbZ z?pOyNzB86~tg@);HFAel>Ys#}zh{vf;JcYtz<89b?#-s6%%cV z8WdxuDp6|9is_1d$KE-|k9R;T;=#VsAn-hS`dgl4lPJ?9+j>Z%kN?&SBL#CBc!*zzOg z7c2Q7vUb=ay!wC&V4!wmxr0woM-5d5^*PZo;M@uxd(A#&9~~5BAe5{i_hBTfBlMp^ z!VO>zYaPHUF{B;?YyQSEZTIMPQ9y?)Xvj6$!a7cPxPvmNH-vByjt8Q_`sPABNtYXF zWyXQU0{0v4t5`5Fcm#BQ<$TQus$Vm}v4lisB0$IT+SS90fYC^8{_@*9m9Ik_$qz=} zF6_9mL+qy`!Mczj$08D&izF(cL%HN1I(9>N?IQ>DsVZ4oQ&RW zW4HX=lj3R0&qkiyb8#5eKH-TcvirJ>ZLy8PR;_va0ztKQ$UqqydYeVm&!X2M5 zF)8+cYmVa+%6nfr^n`n3-8y&H?s51M74!IFGkGbrgI03Uyp}1p`{7P5j2S{a8%kBS2WKjtiKhx)SZ=qCHFG;2_DKJ_=hD)W8 zs$ASx$7g7-1L*2(S65XK&6lyO4zH}S7^@^7HRABb-KR86F>V95rOD7jVJ{Bv?jxfV z4Y(&AWZ#OEfWCz$b%aG?%d4m~X~0ac5e3yIrJAtUlJ4gX{Ra5ummbiA*Kvy<`ZF6G0=_Qc;gG){-b+6+-b&?&rm0Q9s<081CA9lLbC5`n;J&MW8oBSE-;aC)z{t*q&cNEj z!^M{Fe@#MmHgPmCv^JspAHf1n|4KnhiIIT>Vt@|O`>2c!bOJ`Jq45M!uqU8B0&Whi z7qT&7gw*{T0(K*BI22-qbk`3RM>oCv38){C5U4l`u7N<;eAs+1jeZ?z*jl^7%2+wM zSUf?gjyDwIIPsSO7dbTePYjt&XNOK;tQl`p!+eqdV1b#FtfqmD5 zXmCipAFsKcU_}o{;1^Q19AZm|U9%F=AJ}#aw;3r;@uU)HAMGu_U;k0PLTPQaeEH+& z8-WG@5c_`^f&VcW68{(;XS;vZvZ$RZVu`_jiDE|;g8=s(z!H2nRE z>J!ECXB!~|smH6{;i?~WUvu-{LBATPff(%lChob%^@vn1nd{Poa2RX}_cJf^Dt$jU z^7It_r@Qa%MhL*B?VxO07~rxEyBB3JJqP+HYd}DIh{e=QofdbnG5v5lJJ16J3UHxu z99dVbZggJ}fS|K)!KHM|_>87>%k(SLM$AbFMQX%Q=jXqcs}zF3$tKv^HZj+ z%frUBOU@;A*#U0&(D*=m!8#Gp=Wb*(*D=WNkuipV;dI+k3bHQhzZ$4W=CLM-nwGju zE=OHsmaZ!K6~Kzny8Jox&=#>}%oB;kjJg$UIAQb@oF+1jrN&dJ<&bW)2|fcRp#3=` z609Z@$)`W>9J}Q1Bv#{9!&qzCg@!lW83}CI7WElm^oU%=Vy2lZe|t%3J2Mx;lh zILoRWrk^ZY3J3#fQ4E|JS;~9m69iO;oY*UNLLre-fwV$`WKeM2b%&_Xl^sAoDRqHx zGP}n&5!sv3ZnF(IR;`Dd4#%BSg%+8HL$n1=GvpnRKAq{~l!PfASN6)cRBmyVu9+SI zmGBrJ5qMQ^A|mB(Ga{#NLn7%sE~#|iF}KNIREOMNatE;C(LcA%6!4wx^G;{5x6CaK zQPdLnn*?!wL(vGF7jFn1b~r{axkYR3Sh! z(H%EG=M8DNLSLxXm}fx5Ou=J8XJkDhW-aC^DS=~2Z?i!yWJloTo`~TmdA$E=0b=>B;i61^n zz%{bIL3p~W^o`KOZ`tx*c``o-O65U@v}qt#!;5t#skTRG5l)F2vClQb=oy2lB#hGC zYzjQGT1Fbz*iI_jC=lIA{iC z+$CFS*8v9hr7Zx_rVCYwX*3asAt639!JXrPtFVBhAin`y&;sin2Dk2nuBrfjV*H~8 za84wlTiFryHiX0cLoq0KIi^cFUG{k6?UvyF>>-E94#nnBOcL9V8%+&-hoEvp(4;=B zvk1dg)dA@fyEDHXMe=C!JScLzQOAw*+CcK)){yu8ZG|THPLFYVBy-AJhoe%{gAj=s zUVxI+1gMn!W)VGe&K+u{-V04^S|7{No`$-Sz9vB@%~)#~ZkS+RdXVRQpL)N?E!Be= z-s8Z;Jg!!X=D0B7Cqo=(W{Web=BLqZ3CT|IWV4{eD>s*2yC%L2J9tUdybgt!izXeT zunU=n`3w&!;sc1bdCT%Jw<4{K^{H`EaEl!SzW53CA1kV*)V0go4_i+F8~}jj|GuLB zQw!LvVk3tn0RQv6sO^OfbSUC26i-9IM+l9f{56oJyAlfdp+5e|FZdA z6cIi}3nd4!4w3^Yi?dSUeL?5?^ZkUcT-~-~59%U#V5GsvK z1lf=tw-*o%5;BE1?p~aa7H7hpaH~Ab1WI3Sm1@FXS$fqTIzg{aof3JdQ?ys@5nANc zGB9J(;mnv(yTT&F_S$V{@x(RY2xAtf2CY_P6f@}v?c=JSd0aD6O)1n;E%SGaRl0h` zS`eKlYGZE;aX|D=I}T@H+L}>V_0+$BZlEI4Yv_vKFTG>W>T`^pS(a3%O?OTs4 zwrgKjJcUy0??-$`87?cAg$XCM2A?v+&b>nJ_c)_0Bwl4`1N9+rQ59_w+2O*-WA(&a z!67MXrsy2=**^_>9#-xkU83rmVaDKaM$i*DnIu!(3_#`~20P3)3yEePMYsd4&vimU>QYKM% z#bu3_?o={q3>)TcrskoR$0X|&0)$c&`iZ_6J`a9vKoPu@ly95jg*E0^q!Bf_vbD2k zMAhx)vc<5oDY0VRMP961M8kIR`wEDPr@!hJE&z+^0LNW0M+oNGL%|Kmo0$Buh&KyA z9i(?ztNkP3(bz2T0*LqY1BeL|$cG)~VD{AssUu7e$qcnB9te`B#kM?wDxLi~F)bIJ z5EFY1A7td06#bj|)u{*1HYMwY%FF5-08@YdCF(>vk%keb=TwSx!$ zUR>m5y!NcVj7%3@16&#W4UC{-ncVpey=>g3+vf;E1)Z7)_RhV22byir-FS@SZhIo) z<3=VWyx=#Qe|;|$YRL<2RQudMqR)$%FuDef^_TDbTg1WzBl_4O4%>{2a8K*C_jrtJ z8V*GW+udMUD!3D^Fu@0zVjxKt9!{GMIn3i=SO~X-n*$zDZj)VR6Ho?vv&=W!*zS%V zNr-OD73ERui{jWqbb|Sf+soB(Kg6`s`dIYMYt?Y9)DbFa*k=5gVVE)mY;tiT$P16V3Ovl`$C{86SW%*k9n0~?d%}bB2zrmGzoQ+=`81d;}RWzyxh4hC% zCo{z)CYjDEWhGOP=6EZ}Sk6!qY$w|G-2oh}Vl&xXL?=^k;KOK(E}?sfG9aoIjxnX1 z_?M(pyQroTF2kSc0~-7$b7>XQoK}=cTbvd53v8~gr^zZzQ)=dUWU8fz%Zuh-+Vat* zei%_APFcSX^_2+lf;1(&4~OItWO|8r91s9q`}nIZdb#n%y31)}p;D;76{h8I_BY6U3^i&(vg zlKVE%8epNabvU>M8G5089-=(haVhOLO*VZlPCY<+f_)x?u+PUGZ|Vq&Ur3+Cb>bcK zY#(!&-M?@1eF5+Ic&G5=nW9XR!1q~W$?EIULP7qtgei2bNa02jymVAA%mJ>G;}eox zS35P@R}!J`iqmFyE*jmwH9G=85|hIPV?HXhuk1^R$~7amA)RQ*RaErI*5JqjSQ;krFfO+hrFU@K~RcQ-;?Don<64NPs# zuigT$ZvWWyk*jB_xjF~bi^k4sZ_%1E&#zEwVRRI0HFaAYxUd;@*p`~to|>8}Vvfct zXiWNApT_p;BPlW^s=TpTs)w?X&Lm=LBZkY~sN@rwslPe@Y5UC;wf0*=Qf+FA$vUR* z9v87_>xX(Y#b#i~J>4-u?GbBp1g!>&M|ZL%y>n-8$tOFq`CFfJu_-&cc7SfA>IxY~ z4OM@+1wlO7(i?j1^1W9bc1GwkIBmiM(TV8cH0C zF=e}TR>0I?#VswO@uiNBmJLB}>PAK5D~(_@Ea7TPEN+^9d#?kjj0zJy7em73N$D$q zCD^!TnVE4N`$Z~#%1hGyfBxQfMCD93m05md*2yG=esGBBX*MIe)JRCh0N4y#tB+gb ze9H=cCE=01>Rbl(W|{XfJlxaL_tJR-+ue%c-}|ohl)Vs@dZ>yMJ^jhuy+kDedA=$@ zgBMy4uj=HVa1st1bQ-;elf(G=LlxA> zIJVm3p?{%BzOgmg6{QGJ^3B(uu-PYUH^35nW zv-!i_Cg2SL{AqkJO+F?kbjUcAN{04+Nup!8avETHYMq_Z$w~B8w%31~gkvYafi81D zfqwzHjhZd;K24q|FcU96EUJcWdPrxo)_13RInA6thZeL|&5F3M7JHq2b$ zm^9pi+s)3qA^z1ay|o|Q&tCIl@K8}QH*-JGoOOz%XVzG7$i zRIM12L#u6>2wyYKKV=yopZ|cG5AM zd(Dn}R}L79tD;J=%)2(zH_(5qnRU_1Mq@wyZ4@W~0PTO$-~O{^3c46snfyzkOi{Ly zLsEd}X^p#7RE0bwdHGG=?$b-TUw4xjICX>zipDTr}U3|LiVf~mJpbVIKMpmuAHUl0Nc5L2~t~z!VB>aG4jTg#E>$?1FALW?R_-my|A66R${uX816n^t|z2YsB=HjJK zkt~4(AO2))uXb%j9z=+bGU0WQ^|!m6ve*e0@LqVm`oWMo-FBj}F&MtO6er!RP10WA zh59adA$~W}uvm87pcvLE5=8@M9tVyL#ck-s!6 z&P$LD`6^TZ-=J^k2Wx1LbGo>1tfZRNp{!LCyaCPMS{P!eZTPsr<&NGlSa;M`!5hi) zs6oO(IbrelSxN(4XBHZl%+wDFM+41eTwz27!dg$nv3YzicnRT%PO@lUSOi@XTJ4MS zZ5d)zl7{6Z@rp)@vhcw|VP3>xj^w$jjmhq_d>};4evYG2Li9kGjDXdp?89Db>lRzSKg=3yJO;Z?&k+^ugQj# z(1;?ai#D4)^USC|;`Lp_WNHdD&GqfvsfC8#eO zbZ07-OByg^Ru|56^EJDpn*IUa;r`6w4w0+(d}DjT`8C9W=JR29mB-w6B~G3KvXQM- ziHqGLV!59uDd(8a>0`Edz5-<)P2v_Ym}LIp+tj75*9gS*I8K}_G)VnzMz84U_MhZw z;7lu!mWLMO6Gm0&^7jTALJc>c)^&Jt7=InCUgM}5S3b82bc>12dy`f)#q=?O;xU#* zm@nH|;R^0@iHKNeq9Y@zbs~ZR``F;)7vjOp-gqgj9~h>Fjs>538cxcuzqEi0Hgr?` zR1ABbc%#3!t(K?d+d<|Li)>mVOW1BN}CPz{PaYW{&Q6^0yRijd_d14GkjW#XREt^&5*D5e|SE zm`00O)AtIv&c2!(p7I$vLeRXpwwq5(%!`wJz6&aiTxa%tOBbDeEhOtYS)d<6 z9?zquo0*;@{`4nFh03Pqcce@ONk!jt1S~>pLn@fz8{)N$ zVAsaHCtLNA+JZ<-*7&XBLw6!3t`-~r3OW|(d(%wX{eAD&2c9W7 zTA8I1jg*2B$szTQh>E<2(hy?=oCdB?c8xttjaVwcwvC@hV8|fkCkRFP3b~~$(&4Bb zYbK7Rj%;`a7n#_v<<4dL&QAdJ6VB3|GhxYb&oIT)U#BScuu-l!lAI}ZFr31f@R8zt z2|uvZ;v3Fj#pMtVagH!JkTiU(>^B^Kd^NpAM(h$v@kp0CMQ|rAbqb|GG?i6UCdW;>d+U+gzOA{L^|2jCa^e#UA@Y6H4_&t!JD(^0mW>DJY>-nK75 z`hYhk1v0X98G;Z&2=C;LK`I<49xjD@mAMsVL;u7mzb>TLOGR<04N zB^2V`dlgB+w4G*4eMdJH!6GyE^=qnv6NxsA>r1Z1DargJIbXBI5@zTzmvY@oW2gG> zHJ8o0$<*zcOH!-0Ne=p-Hw>HQ#q%fH#s^1rp91lr1Cd4pPZ5aoKaJLCYMkD$I1mvk zmc#`;#;hx$dbRXs6XoiAAFhjau0MeqJwgn-KJ=%>RA~Hq&F3;v9v3Ng9;7`bHVzhc zt73T(9T+^D`HS4Pcc*w&=#< ztGoHhncYiFDUQetZ4?D^EL)GSPLWr)}yv|CB?i#q^pb`?U(& z*qIe6z)esndu%eopxN0KNp+%@ASxO%9!AaRjP-pc_%`i|d*xyhry>z~e8-iZe=Qiv ziwE&$Dz6r4*jb<6xGOE54@rodZ|%tht-vikZZ?=u>>_;gjF%oxu;G}2(!zn{ zUHI380#_nIKOdl%71_TMVFXA|SB=d05xekBfyHmSm5OClSj;V1z2~_Ihjv(k$om8<}LBP%=t^w&Hgs>&j z9lt?`H(XNTEc(fv^zo0R=2_Py#?re1CKz|(hzMdaQNjTsS7O0v5c70UI&zUdQH)rE zykTQ_GWM->7mf(U_BJX9N%%AtdoD}NMl!z)dQ?fqNnQ_Z~JSWSyp$? zT&uyc%8vYzhX;=A7ga;>+|;H-6g4tk@s`_Zp4P@9GjBWl{(#Vkm==~A79LJ0*|&!j z^nA~=4-Y$hK|f&^P#A7RNGPtDf{+|_mzqb<0}g$RsB5Gw+$hss^&*`<-b8~%1FeUC z?g6TOD&coAI1{^A?iZ9PRe(PA4a9$A>@B0>T$im;g1fsm?(R#3?aYgSbZn(2qOk1Rx)2adTm zhWR$a!-gF<1ToK#0p91yh%U66$w9I0&S+s#(jW_xyh@g#i4|>>g;)6QWt}Y0Dedzgw5n z3^QL8*s?yO{8Ktd;)|o#-9~j76`1Gaohz;%=lRj{pSv6~f5?C+mDpZ7yO3P;P|~HtV2oy<31{RE3Z_0)BvqreDJ`U_ z>QX50(eDa)Dyw#aKm@|gSh0jbeX0%eD+l}yq`nu#tlEiIO%uku+3<0CEAFChmA6Xw zALeBlsw2203cL)dIEOBGzjP%6w>j!a)~AWrxmHkKR)4kZ{OCDfUuqkZpM-U(uidvo zG#F1E*V8IHj%khOen>awJP~7M7qne*Z?s6!)ePIq<1Fqy1Cceb=Gqj0XR z3E%bnFl~P4D_@wVOV>8(0Paiiq^FZ9&OUaV9!++3GPmM*3O$-a?N6ckBHIn2()BBW zur}N4PNF)$CRo9WwaWUo#hqg9Lx*25<0trMgiVDTxO4BD1UNK-jzs==pAY4ZR;#*Q z7xRpES7n-G3#FzcIcJwOWB$;7=cX)GFinV(E4|0yb(lS0!|O?~>e~HEFQ~BdX{^An zKvAZ0tw7gH6w6SsYod6ybO8|<&4evj{c zc22(}BCef!i4r%y5!_(d!XoO;`Xc5eUB*gn-&l(bI(~tjrL(*`vxOI9jm6`L1CG4H z3-gjmY+*p_&uxsak%w?tqLF9ud%(w!dtRbHlRC!{B&nkVTcCl_f&uK9Ac;Ii{5zcJ zYGhrVK>m3h$K7sSKDchnq?}&MBxAH3)z}Xr`AoshUrB|V%efN#zwGOO6S0B}dE9X$ zm2|^t2Ox6CTfP$7sKdKC9QJ$su-GRB)+bAfqP2#0Mmj<^wp3wgcOjH}cRzBbQhdjb zcaV$UH<$fGIxB}!65WYUv3?Jf_mo9aEBJs>LL;S@ME?C61S?qpb?b%}FLDpexCCXV zQlLc2=E%mgjDW&~3V;|#>bG|U6n^KyNw*-w06c10c8nt=`dJ0XWzI=2S@NKWhR=Dv zcMA1Sr6^SM&FP!9>(4jBU6k z-ZHws%Z6H|kmd2iAJuPyO0qp6FtuD$E?qvc2b*)7G7yU8$)F)M41V9HzS>|MxH4pZ zYst9W*-qT1pcjh6D^9GEA5DE*&*GW+)nzQnryL(qxN1~IHu0nr@~X=q&GnF%_5K8X z_A%DxNLpn84LNmD=DW;X6%K@FU$ROTocepFacawRzS{X1=O7ua4}3uTV)nz_wM?kQ ztC;%&Yv#abdtzPgK+k($<9La8e&tBc#nGW->eun^nqUUBT(iyDpN#@wnUMU1D7DPt_UtoOh)6?lK`uiL*OSO`6#!rvQ zX_-qiDc_8n&yBP(EN6{Y7Weg6aHk#=FY=}l7N4^LNNEMhg6O%?^ce(2ssxaa@Q!ig zRTw`&#Fa73**&M#&B>3HZl=2*(p_H!7Pv5b*TlG~mXasTh_sK+JL2tDhU03aJ5_tx zrE9GzS2gNx0x@3H?RP^9EUpOt72N)+RWv3M__X!$zDDv$A@Ip(hnyS%}Rihb(F z_g>)Lbxq2TFlZE&-aYYh1;_UB_ygp;99k7R)`^ZK$iZ#Q$y|cS4bShwF{r_Fk?--l zlKKoaIrnW8Ph)NI-+}I`;j|oME;H;yYMgeBea&Q-vW7(r-=;!lDOy0e)4+1KY1$z= zE9xMk8ru@I0WXGn@?jh0v~}Lh@n1wzZ5nqkwS)}~NWaRCOx6V>=curKID)fT#dIga zo-Z$lhL8vSlGyk2gV@7jSkDI8o?3^150W8N$;UCMDTf4~ytgm}xCS;D?gbGk2Kc0M zYK8Sbcux3K?~js5SK8Zyo9UD2lzMxx@08S0$5BezfdZ$@E|#uE#U@(>OIbABUsPHN zS6Z|Ts(Idi0Gf=KH-|GloB>TO&QY_B(UuE#6~B1_=ji<;LF2eVd}KhvP(XtT`T^xI z;a&MxNVO5*zTMQre_a0AQqb!;IK8m|YqkDaF;vDJJZ&9p11iquE`Lp4H`8>s`!`Df z6HV&+e-TXx;7>03v^);z7bfP4m90IFyaIh_N?AyhX9;P7@OF}fk`P`|G;0HAY^w2K zjj7-Cfe4?7PQypNv>CYXPJ>;>L_?z6&G#eZseQQ{*N7z_ z$LJ+F2K%|xxj+1QK~&*lt|=-=&q}L6%rLYpWhhLS_WTgMCRdn->lVMoh)+8}%>S66 zM#Fd7n(kU?=gU$CQEgFw1ivia9Hkl9d@GpLRvZs3 zZI9w~8FVP~QWMW05hZTuaUrl@kf@GdB?+mUd6%>+qA8kNn7=#8vqLWyEy1^m{FK5c zv4{nG2pxXEqX%)Z^BF=0eRs@9qoB5!T~(jl_=9U6V}OJwO@Mo6{S`b09E@u!jA6Wa z3dV18ZqxD_rUtdh-;v*4A7>_ILRq_5?fm%!I36DF_s3riw#&jpbIxDAZg6RZak`C# zh`L=4(Wh0VvpCGWq~mJ^)ETD*$iDiQIUX2Jfwz?19QNEBZ93rbh`znt(}o-lI784+ zOJ=_qu_6l}nbXgWE$T*oTvsM@dKOU0sF!|HY@yT5s3?u1v7MYALs99O?pmB}TMRik za#@r&QbId^G@mYsHHvF#(icpgUn?oySMq=lqwQvIE^mY31gIA`8@%0QeA~LqFpQk72{A!-ejpD4rg2b_B-{nQdD-1r>cQj zO#T#R!jJDh3q$999#xVD>@nJkhhj55LAZ{@wB=jKflgboe3}O=6!lLR6wSedg^qx@ zEmk2CPK4A5LLMoanGpVjCNYm{D~@^`RrwvkkGYT$yYao`0-fJdiLrgoBCGfrMC2Yc zkV&b&OlmUK|KZ`pu2ah$R#)4r8Ks}L7euhGMp7jX&2q<`{fy@vY{GMoG3$Wf1!GAZ z!nGW_=8El%TP1*CU5oUTWFoRE1D`{s^h)?l5)yJM-sy7O< z9sy@9a(oYewG`@m04U&l#~bF6l+c7$EkBR#|9T+2-i|E-l36;nMoT@YJUn`-S9=1< zAdzYeM<tDcK*WQ`6168E>ZBrP41V zk40ZPkKebiCeIVdGEuaA_{QS|T`vBt33^!EoNS7|LVw18$Up2?!yi+9tey|izRI-{ ziBzkj$cP(o$t1bIEiuhn##B93cMd#JNvKCG*cPY{y+OGT=+5$_7_U~L`cal19Lv!yGIfTyiaH4yWUr!lp0 z4>f+LYa1Rn$bXI`5!2SzG5TJu`iUSs%^{|Z8EFHaT9nlSbH#Sb%;ROt;CVeG`#iKE z5nI2sv~eAoHl}Z}P3~)n)6=5GPz%KRV6FhSu|9*A@xIkwmK3ETVIa zIuS0XP;~5oQE$;V?hN{rTc)ncZ*_Jqn^{N{f*i0vR4W9bO17&DC9 z=}jfMKJj5ls}AytNdCNzS9m z4 zWk#H8Umx1Zn0#QPYZj5sqwnyN*K{QIF~jy~Wc*dl+r-)4L5N#~J3U23J(2rLbwQ_) zeTXaNKtS{JJCZ};6zL}jL9Qz?uYP^jUV>*1k6E-pc)vd-K~{TMQl@tr99qf?uo3Q& zPH2A~TK6>&el<@Wm5>&TO8dZqez=1yJhp#|ZW)-6sqGN>GQM1j0)KEI)4)EU%OjtW zzbydU0!SjtkDnt?6)7VL zAUmy>?V9dJLCmOBe%it_X1sbUSoZx$XT>r1kz$GKR%K=vxcya)7UkSxC+^cMYAGi( z8S7R}!ZR$}Br;DQ&XCkZT}zL)DP6NM>`yrB%YDO5YnDj$9-LkeBrl)hao$Tple^PH zX{~UV-WX0_%-&rfUxJuKiUsa-IquOn28svRLdLkRcO%Uuj%l{>Nh+#X5&{GhScNHS zY+wBnVs=YS_W;Y}@jGIn+%|Gu6zk!dB`C=R5^2@v6AiU^Uwr;+DnYUiMERN&hJvNjCGD#uAj%__RmjLfJmnQs z-v;!*f|m0N{_8;bee)g0Ec^Ns+Uz#$Qy4N13*hBA4t4T-II%3%I12HV!8rVre z0RVs=s31&ocTAdbIa>yu6x4dkd^@+dUOAsrbCyh-frMcwuDM_xC}tZm&rY)xft>elhCOd3WBQ+eJe6ZWRwv!Rtp zV2b1DsMTPt#mSB#`*Rj|M>l$fCMLI9j(h!h6b$o4(GO$Uv;;Oq-`chGRf$!y68@h^ zP1!-Is8@>f*k6;_zUs~+9~W^a=q>VaEliJ>KUOBVByLUv%@BWBe;bqebUiwE3 zG;K%S+4sH28?-lz*$PtQmc=EFKW<4&s^; zMSPGyOqr(K#stJ;p|s~I6n=t!GR@g~*&4-LfU0EQ(NY^lO_u*C6pa=1XQ3woEBMG- zGiX!m8`Z8TI(XNg2jd$_V5knltR?gj^C^jZ@v0=_vN^{HbqEjn(?;LH`bszs&Bt!^ zJDzBP=N+EUd*}swA_Y`=-&Fs=dRI8rCXp#C(=H`D_ zUCg7|5qrh3B@bj2xfpZ~NfHKO^nIkznV?^|pTba_wB31wwCgS*Naa6@p*v*+4rO|E zo})n^AyXn#^oKb0_$Sug9~UfP7Rj|T|JIC@KNdgj&}`M=$#_|?80ktTg}>UE=h;mz zO=Hv3FA=_J*F>@d2QttqLnNs3Q`vn8BD?j-0}tij%)DdKYcnNq1KuwPW1Rc;#KbCRyowF%n6Jd_3T;UCAgmyH+S4a?2W^{)4)KgtjuDq{cy^&xvE>$C+&nIY`+(oOLA&GPLs z$N#2GDd+}9Ys@tm@jVERV6 zK5yfrShiA)?YPm+Wr0tlg!?_$bDxkSTA-5l>Byz(qH9Y@7RQj(E)!)DH7MDb+YkA!}(w zV;)a*-T_Me75nqVlu*vF+0fjvX{<3v)5C?g?)py2s%`8;RLUBEITHAe8p=}RfK&5@ zfO;kJV1?$7syWj(+0u7M;h(>-U86>%)|)hA$}ntV4@_;(`M+{p(Vr}FB@}M5J)@4K zIwb(REpK_fjUNrDX+<00|KJQrP|4CrB{>-KiEp*J%N#Z{>G{ zrwdLacWE4Pa-}=6U%xh0&0)78uT5v;IS1!J^-rm&E6uy(Zu(_R063X8%- zd*wM5a7N&9B0#rmtaGUg)M#{=4jE>g;7YTa|G?0CIM#MHLSYPoKVo6LhIMN(NYAwCMPAaU8V~uggAEOLePp}qM zvboPE$hfm*3a#bHvB~y4wDZiJjAIY2AEPgNaRX1QnOS^eo7{5AO3!d=FV+vcrDze) z0q`oZiWztW6S#aM(97TK}mA>u#m@>(Hta z@`>)6wbN$G%bp5?=<j(aiofn?%H(I{2lIWPHLoV!ZFPy{r ziXKwUcSB<*$u_@MmEnGl;c|cqvgDns_R{77a-*)bnS{$w94+0`qdm>@7Qam%e%-eZ zH}!MsquTzypwvm#W;P~lMNY<~Vbcww>BE*sR(|ssM0TOA;twgD>QJ*cPWO+e_yhFX zD_}I|w=(m$Kxb1A*(7_$Gn&MVa>5p;03K-N zhif@Yj(2h#Q7PdQsIR`UKD3Dn{S{ihP^2AEX$StxKU8v9(B$=_zQAss{Qkv3h6P@KB4SOdP zi-Q}kNy*0@Xxf~CkXHcAwhS^DgH@dcRFxb|5CHTbok@5(#1O4PXz2i6>q`PaC>OZ) zd`|#SuVKialDTL41N-mxItIVw+XW`*|A6DmKhrk+f7;Qu2`ah`aoov%);ls_lfdKt3pE~0*N#ryi}k~CzNn5b7TB8 z`XJ|N(BZCh{8~ZZcG453Fn06y3!WiuU3_jB}+) zoFNKZX=ygI+Dqj7-4{$A+{B1g@^Gl|Gb)WV2AtRuQ)1F-?2(4Yq#->e&mv`}Uc6j7 z;ODdW=?k)H*4xI?$JOJDTBQr8I9r6lSde~u9+ z|5$BW9LREh5oFrX#330UJ2i)8)e4#)1$>tW721IG2+Y#C7?lIKkU$5?00#oI3QV&W z!hYu9v@!P_h$|!zPMOyg(Z5?rdYbuAFxaE@f}zYmBk=#~F!>K}=JM|Z{(pBf4e|3W zHOv**_Y!2JNF<1(*k2$@?WmMc(0`kC4Bz8ZXpKSZ2~X(6kp)n({8uy62}{JTLo+bN z!ej7e%KxpS%m4im0fMNyFbGl+hNYVj=|QJ?s#gFB76}dUvKoR2vv_@&5ahV&`VAVX z!t|z}%Wm$B2rgH7{jCvNK5l6~m;8zv6fW{4CPU{kKC?Z2KW+%S1dP}N>6c|#U81r z+?cQk<-uPUn0v(XJZ27eZ`f!(hzSWZh|< zX=A0Jq4zr@Dmq02?*(BR+?3ioX*e6tWSsUJ4m11@=NzZ=o(oTrDpz_tUi^k`-DS{G z_^E8G1KzOO4NoKm`zyS|z7al*_)(w%onYefE!{GefpYI(D0thLV(q3s6&?-37=4Q{ z4j`WPwTFF4;}UmGI7#!rb6>J!8jwJpIRf}$@&^|b=k2J)_SnA(!M4CI!T^@Jh8xlM zVArq%&A<&&Ds_TTAy1R2hPVO=3c>ZE0PY&f7A{#h?hA{6q-IJ+agZOFz#(w~ zsV(7Gh=1AmUu8<&t`#3maFJ>VJSR)wAEAoBZ2WIp^*>Bo`zOrp>D?_qVPVA=-Z_%wO8!0r1W8ftfbVW5E+Tx;&KWlhC`}L#nze3Jwh_M zuEl{5*QTaZ)69L7M+8k)D=pSAJ?nW(JP#uyL<1zM8t9`$FCGKxGC<|^Q0i42e$@h^ zZD!+iuesk#TZ(f$>jW?pGgodffls}-ILA6X_VG-=d8M2dmg>!p#D7))ipd-CxnSG! zw^Bo!0ntRGMnhmi#g}%kkhCUzCL8VYhvPpAfgmmN6UI_~+!$ zn~TSvkmW4XVE@$3w8StlJ5Ayd@?*JNyuDLQYTeAiVs8a?G{6r zN8fF^HiA_KTB3aVJrkcFISRdvzl})qR`P?YkB3P(d8E9hNUGNDLiI9bJM!83isS_j zQIEc-)i^oCmnhZhnQlhfn>|raVT#p($|AAO19uK_@MM$M`36Rx)k#>GnYhHGw;H@M zLh8-j%3KRgpX^4$^A*1DwnRXIY!H|0Dgd;pt=20 z14XwvQms8)S|1byiG9o9rAG~)kDs56CD{(`0zaz5jjMg=5l}S9lz)punyCBC5O0Wk zk6%l1Bh}$MMNc!_gs;M6DD848P7t^xna*|(Hwu5>^cv|{-c=Zlo@$d)C_OEI?*=I( z^}8~UWN})8Raw+Qr-NJLu~gR`h3QpVS<-fqH4HqP9*+BGyk6Uwwl~wQhV|Jsy&ro*_Ea7A7-F*PS6m zfp{X+10wnTIg8}68W=Kr-?SD^j{)x)tPy@OOF2&_UFXUsMwAgoGvBL}0Zzk|S7Gg( ze|Z1ptp4H_zdLiy6@deC2sj}Bvl7r>&I-J=$MxS`RdS;47jRGUkR{fTHF0=0y-bU> z!ZB%>niWPdJO~}*h#WC_%RZ5%C&mWyPKgKeLPVYP$z3K0zu>u?;(gb=GENST|5+%@{Pw!pAEn4>_)<& zZOwK?P<6|50uH&B*{T0Cort4fr}nx;(}bwQ4FHiKnhZ;$LzYV_ATl1xw~e6bgkot6 zr~r+88yF}j_x8{zPz-F`0b(ABg4iInd)3%cR3BlsI* zL)d0x%L(y7_8A#GD|S!r9D43qc<%aOWaTH9UfGSq!bkKdwqC)c3<_^&J1(qb{sl+* z?UDN09q*7z(-u4~8R3sv6w-zd7JA6aLfdUI8=x^-y@#QX8U86+C2Evf164uSXMxIW zq@{U@I8ycuW~Yx%)96#g8Rq=Lxzw2HY>13B_$pjIRO%Eiuwgfjiy=PMHofr3oH}ps ztN{x1Lo1~hQLtgPIFLjnTjn6qJqM=7jTyhvQtKXWgJ;M$68>RyHg5ux6ia&kc!O-p zYbMD1Aolv*$2}8+K9}BS)bWf9u|d5?yPb`{`G2cP{@Pm=36)My3ouGU{1z}?R-uFl5R|3k8WS5Z*t6T{DHP&Qqie=a8NC{e+aY^M`1Swf@+<_UY! zuew?{6|`l@0N;~odxAx~$*BD!U|_x&T6ly#8Qxqy-J@>d3*tI2(HYl;FvG6iwHpr+ z+^;A-bRKN5b3Jp`pbMdU_jd4UcsmcOoZ*uUhz~(wP}N4;hpp6J@2?ygHm-AIAP=|{ zYWntoRz>mI_5>}Mtfh^tkEm|qk-rSkfsT-Oqdo(~ldlWY;(jui@SVL_OiKO8#+;Z4 zo{vYy8%@RFRqa2RXWz2+DvzFQL=2r}KeO_pLGbe`oVA$fO3A;iL}V&w&w90lmH0zT z=)sjJBFCdy@4KFn@F>KM08^(yO5a+;w$z76joSNZPZeSysRr}vnzd72G^J8Thdk7h zn2xwJsKYFU!I&M3c^;l|6LzV1Zmc@Hh44SB()4DTZtvh%vIfqf{0T-fe-#> zXOj~q{+e$OuO9xKZGWSJsoXCTDDH$Rp`SQ>%`@1M3m}<_h>&tRCdXolV91bbM*=0J)f6gW!hY?~YK%>Pjgg@%@63B7 zH$1%-JIsqj<0mWI=FDve5^MaW?6*(O*ndv3jGV!M1j4lw-_XzgZNyi0GC1a z2%nijbI;cD*D2IZC-ykBd>0I>!yVC*ZQj}+lA4a1dE)6F&T+q|c>^$zSGd=n4hf#+ z!7?CL-4%hA<5zS&t99Rw5B9f@#M8Rq1a#I?qTP_L6Q;@KirgZVuI+t~C<(Xl?9>&D z`}=9wq!43Qpw?YE9ISpQz#Pl041G_DU3M9IS$g6R4!|ANxe2|W1K1i0c!&ftVVR+E zzc7kr5t|XIrUDsgWUJ8kJ_s>EmZSlcRb8qfLpt$s&Mh)z{_mXpuP~R9a^Wfswx?IH za7^SM<>dciQ-4K0YX{5!o^_C9^aU)A?>@jBs{CHJyHq3L^aCa7my-gTeBf+BAeW+^ z`l_50rtFVomPu}dT|xZ^TB=J3OfR-jm+d9;1=QYji{?fjA1T1VGo<>jCdw8U`^=#f<9 zZ3weHwfPm+x_XbfZe4Q5yfAx|LvK2HAmHG3^UjGCZ&ZHUxxa?0;aVz0TWY;R%EOq{ zr{xMk&<9gWwJOn-*gU#uH;Z~wYqf}9>G2D-1aUm_fn~`=n52QU*(&Y2^lR-89<9n* zprg~!0h&R-j#v1vYiv5#Ip>aXmK6e^Vu{$Ms`02{vd|B zD94!cItcop{mJXq0_wf$N0X!+@QKjIp^t77qBi*ep!pUOe|Es;4OwHEeJ7PfP!G`z z$=)1NUX>3G@*|_`BaX$?*y4!#xg~3Bn!IUz+T;&v{@G6INO~e@)bpeBhC(k6H&?Fzu zGyy@QsmbI>L(9eo8ej!wZ39W+fg6~?-~-Q$B_m`(zgQ&_FhS@q;BL<@n*itaO(c#& z%mRN{@Ujwu>W&dE4-x3l?L!WlMJVt@NAV+-37CEF@ zP2phx=Ebab^$n3D7e1eTCIs$vk#ioxb66MaS(bmN>PZ@WRJgAI6#9cS=ht!a2R-L6 zrXOD5=a(-82r0qNZ zkNSIWAttnVipaba2I5XtbRcOEuAVxV{B2)D`CWkrwTHI&JFTcy9{WtcXt(GnU!6zc z;u(*ssH?lB18LWHk`$w^u6O8w%u9n%5uK=>R>V)$xZ#FNfUA&xnh0i0WjP_rck?DMTf=7f`moeI6sHN_(EA_nf`*G){IN2IEzM6XLX3&3)^JridT3CXI#mphQ39m zHga1zp3qSJn2-|lFL}7}Rd%KVxyF|t;S;eP_I>=HV<8dd*4=E}M=qB-AxEY{fo%VUv8akFvb6~}H56i^jO@O@lbJM6zm_iA3cBwPPV)rwg`4iddyu%rC@}W zm|k6&+pk%ld_^;u@4LFGMELw3KM!0b_wEGr1?k~YUGd`2hF^wr`F^F*!3e4{4a`Q= z>fbwoUQA4bQjT`UY_LBZBoSk{K}i}%JM{j8(%L0n&~o-P9?Y6|Dq$HwCy8D~hUtjF zJ%JWZ-yF^OhS9BgTQo0Vb6Y`s14EIclpxvSB!s<&1^q&+kZ-S-Q6TftIoC7+d8M-F z4j@Om$PzhffHXNbQCGYs5L%P!RfMt0I4mjH^_!DcbC|=`8KJIu&X~o@9G{yZuZX(% zacx_aM%0r&8sENgO{P7Tos$Ip=)UBVnO^oIbb4aYT1s%gBxn`iq`MX|4vh#kWG=tV0ek^4q6q5w?U10Miw_&0e_!;;hSs-9FIX8L2>6M~rf zBFiZ=;ICm#H{2m|n-UO3_u0$-GYuhEgmQBSBW*$q2ne2kl!p9$$ra6Ajm?Z*jsH9S z&{A;0220ij(%HU`n9+PRM4yHZ2EiG#VUh;PeuR}BhvFp1$2PGn;enib+=btQuwPQrj~ z%Jgqf+jd$DM^~zbs}oZ4zT$|}_G};B>N3o=@YxII;*SQiNuh zAbv;}b6l)f9RbM(zgxQ){ z0M5jQgK2oyP8y+%UNx6+QkGp6sVoCm2{X^mX-X@l85%3kzgz3{H*7jPbh6tyl=E;v0^4==CKAwe)W_OtX37 z==L=ITCF?y8tZueLe1sV$n~AL<;I35zK(q2+q(}J&OP-vQVSmiXwKu82Fe@b5@Jq6$n33X zy?$>$AgpkOUgjg%zUoAA8)n_?3T<5P*o(4kQCNo_wNsWEi*EE#o7gY1FAPqX$(pi! z#;K)b%n$hF@82FJf*QA1;aAH<1KlF{eV9tOPPt#QjBf(zV3Nhx?PeUPGQt%@s%Nx!@B*#?cr1o;TINCAf*ESIg zw;sw)Zuk^@a6&xH(YIvi*gP&^$Kju4mpNk|NSyahJzghVZ%4Y(=)U8=Ff6ES#cAxG z3#pGhE-<&*YsOe7qVIf_R>-fNTT#CfcBUm9h7fP8g?UtakHXuNy7RdcQUuDE7wAgV zlkxGupjuwY7(27V{WGnXizj9qaksF;78JCIC)w5s%H_{*(FmREOHjZ;Aq{`5PE6mZ z$erFeTx^lF6FuJS#?SZo33;;_Y-f{HXjq|?FuzgvWMQX+4fAg>@NE2fZPa7u@0(R_ z+Emmd^hQHh45L;=Zgta~6pT<{EefTW*{0uwM@J7-_oqw74F3BVgD}J(&Os_=ivvw#4E+kK>coF4ZsobH=uW|BoP3H6DWDp2Q zh6lJndu9K^lWoOA>g7F9vn#rMskn5lk*N2@rHr*Nu5+$nb?7r6;*pf&SF$g5vF@Xt z4^#fM;@Ayh4`;`-VO%TrJC{BCfz*J*GT%vMvxM!7q-`=50wq0yLFcL_rIWis&T%gxjq#%@NTv2O6g=8YtMZ~Zn17|Ke*x;C ziBLlXaJp&$mXWdlvq+|{{&z6@9}N9BVf>z1P-B`!dL-8}`n@1r!5ZlnGDEG{J0PhM z6OuH`jNSoLF!Foeb*LvyL?fnbJH=IQfbJ@a+_8L8s_-D^`_tKJ`PaASXOeDcEo>?_ z5(&KXi0#f0I7EtUb7|x{%zf4M%s57)4WhIY+gw+S^yoZMx-ikaFE(Lzn! zV~q{9np@OoUJj`T-`zyR`gc-nM|6t%6vJ~D$Eg%_S%%i@bfyD+!)QeFiZz<#0+(h*f~9 z76np@&RcbYNgc`aMyw~wOUD@FHu{vW>uam<6?m)uiSC$C9i_+qZtJ9Z8;%v^A?x`w zJd+K3Q2@y9@hMbfYD^oQ(dl#iBaH)0fNTYTGZ4@ej|>^F2jsx6b4C1C+$@_VE&xHb zhFD7o&k-FD068)a(+t>shosO0QjwxSBQylHqe2rP!GaHtk$*ALO=x)wKoL;fFy|8r zM}q-VF7b}RGdhD}M6-^1p}&|?{nrqxU%eZ^K5_vVkLEz1ra+(BDS>k*Y^t><=8R8y zzYu1m^X_vu+s8!i;Qswy@ts(c%z^7MHQ;;o&+0M%&-{6HH+y?yXRrTeKNI!U=Ty*# z9&Qto64VL;JgyuNWec`Y&@Gvs18_)#gai^(Oc4qq5(}*St~ED(7pAtNCx`iVgUPzl zem7@^$jANUWJ_Nb=3jn4XZ5*%eY?5AgV5MACcSp_fq>mYO>Z+hk8e@72pp$Kr^X>I zt{w*%ec^TYYPM+L3yxojZLlPW{mp~Id28R)G7RV#6GZ0l?X$^4I&H!q)*`Tq#R-{e zXMQQ1Xu?MxT5-1$9E`+q*02E{K4~RtvvYg~-5Iv6S*lcWx2G8MyZ<~R++aM1UE8c9 z5@Kryu<32!dPKV+f+s#DoUM>M7u{Xcq*U!_!wzJeT{pOwP5wbCJD1!u>~rQ}-Yj}B zKaq(~|vFrTH`!DOpUeuzRe_Z~;#3Nt5Ms06M} zs5l)s&1-TWRys~a>qU#U6Ml`@_N&Ppdu&8Fr-W!;4`0^&XLK$UM6w*Wc765oJhf&35AJK>VMa-l? zG&YSd0n?8dvII2LB&z+fo@yZav=lc<4B*C(qB*#b{T#&25CVj63_USLA5vqOf1J$uSK=V?Zn#v!xsvTe$=yFk+wS|u`(#h#@?wiHW z`7&m-DGKZO;esl@M;wygAY~{okWtP`=i6>+(qaOaVVtSl=x@G_gh3prGN(0J6BORx zSB-(Cfo_2ao9BF5wqxgyu?L-9jZ6Rs#DWx|#S1+Lk1?CO)1@yFoA0l?QAT7)(cJ%s zvv2UOyvw$&*tT_Ivtrw}ZCe%Fw(W{-I~7-KJE@>jm3OMU@4H|39pl~Zcg8sXz;Eug z_S$RBH77yeRwLn3jh_y&&Q{a4&QaRYb;{>1g0ZbiXwjUqfZpA9c@HIGZ7O>hOBwy- z-v?@AEjB&BI=8&$s@hZ`>j&;Jg>DIPTdwO4;LxiP9Qtfqa-jIyE?exTGLd}Sf9t4?lwjuY_cfzYdN!Auvv}E=xws!C8?HuoRmNa4pW#j z+3X{9Pe2eJ$C#*5jL|w&ZMpL!wOSiv(?XfFXvL_`#NysDtE}llFy1as2B3+gnDU0A zEh*d|#26-hVJUu8k*0VNU-8U4zEYFs2-G}78E%`r^2(Evp4T&($FVlw4WUj8lD;+0 z*yZ3WPB~x^vN|RqEnN?fAS|0?ff=s~YpThWz&%l&tR$wBrDl&*ppqkvQ#_#?WVxy0 zQG5aUekBoM2K2a8CUT0hC7n-JCOTLMf1N4lt=m72YgWQ;P9!>HMDlz=Ox)X*A>-l< zKV$Mt+)iTDdlH!5CpD?7fKLuwEimJ=)f$(>2LW)yo0N5)RQr$1bqvXMOzHj380RNBx0A1y zcSVRRo{+bzF_v(1A?xQlHP2q;pJVv8nZ;sAPhRN1j--7<7&|_Jsd|UKq zz{|&q7n_AX+3?_W+%9VzsuG3QF1z1x**MXVZMKxn$IV#tVTR_>>dq5EFiwA&6$_5QIr zZ9cK@3S?A^-NNF6dIH=Nc%G3Ie*Nkc#Yzy<^65tA<#0!qA5lwMIP%rKwBCIQKYttQ zvkVZJoSMR@h=i?b=0$e*T*KPSKLlFsyQo zzGA7Jm=05SqZ_iNqe1?@-~&6{nQNYHht=k^X6$n@?Q9G2tv96T>=a>ZFeVbQF0HFJ z%f6P`MxqTJ+wO~HQa{EH=EUpi`JD^yV~XLm2B-$;jglrObBC! z@^}xbcmy`5)pF)0J0(UAntDyM_ymC|^blooesfwx*Bf_&l)UqGCTuN9Mm(y$)@-uJ zuJoHPQ4QU$(6ZL*SFPI9=kyFFJ>#f%3y1-D56Fj>_{tE}Z92m@>za-! zn&7>UlZ{UNz?fS^evpgbxGN)Ub?kNxp1pTpqN@Bb)T9u=7h6K1^9a4>F@6w2wWxc# z;kWvkZ``ha$M8e-H-9rIgF?=%BsZCN0Z7|W>*Cm+>0&0WkfB!Z$r-4?|&SrcyjiM{W8WU7%IDdcq7lP z;;!j!8s*kis}>RZkXU2x+F{Sd%0^w8E-3QJ{aMvZ6-Ly0d0f1(OqifmEhD%Fmen+FNQ8zLp3>0*s(?0a z#Cu67FqEt(4%&mbQ2HuOe+)HQq)M5%b1F-(=bn&|09LAqhcj^JT9K#GWAkW=EuyF8gsb zOSDrEc@b<(;&`%UxF9d8g0VKD)oxJjzWz3*d$&Hp;ap$stnN=1p7$)`D#em}OZ+hr zS92z_jXFl7(fb&dq86gD?9`Hy;2i)6FJ(kjRH4ZX6_`(%$HWR!LW88^W$1@B_yD?~ z&HkKh5MmreXG8@*Y*STmD@mceKnpYCVp2&c7k=nZBwES`CndxvD5eUq_ucpa(jeau zE+VLaL(XxyZ`F}e#QBm!`Y8r-s^G8aF8pwxGLJNxpk+`KGJs@VSZ6|z?n4YjRK~;J z;1~X3(X=@dNP`#6eZMqLe_nlOpFTP>sR%j)X)Se7EmYDejd5qn0JFFz-GoMfSeio# zU3DOxRN|3@=__@BSy&T(cr+^JQ(XUjbjlH`E+MLnJ&`KPp~v(qnIPTcQ`u;Je|5Wf z%OtY%PgCHufHnrhKj7=dv!O4MGMmU4`aQ-6nn2u_*W1Q!&xKf(vX}f_cHM4J@@BveUb|9Jwn)%kMLohH=+6b3;04~o1E zWuem+oT-&L66=RA>o(9v=QpS$(Q_1&5-o9jCx_1W&1Lfq(IIdPDneKRUshcA(z$+j z96AZ`J)8P^eyVkgie|*&#NA>=uJ;b;BQi*l>qrn0_FktDp55GejcdUji1TDXA%)2A zug+@iLkTT5KV2WDFBauGN_BBoH_-GXtO@EVbNu#bd-Cyd_arcwZq?`TocAgY5~q4Z z&LF=DDD&YsGD5#3pc8DDL2?)GDZY$>E8>nf_!W`U$jhY$y{ZgtFUy+2+RwD;wAhs6 zF+fc;i1FZ*9?2&8pv;(C(Xa{-ux3EgZIs`Xqvl$MfN#gJ?)Mmdb`$)15c{6zTlttm zL+R~c$p?p_+t3gY6iPa))u7nuNN5&z^^paz`Z(|bdY1Me<2~BTdaFaSbb{6bTkMCG z@`sh^ub>%_Bs!&AVD~Y;b-%$bb0JA0Nipi0Q0KU$NV2OD8%s0cP1pb;af2(46f z0mfIb*8$^blV0AC5rmBl-EkMx#Nw!jYBb}J_9cPXQVASK-8^8TA7*;M{>O|U3v0q= zI{5fc)dacCyg<{lMdAyS!zAJ$=T3`&Q;Ra8Yf-Kr|3b%NUwC~b0Ukjy;1Oi`_ij!z zXFDqw7a&jWAH4`=JDWdNP8=R*z-`KZ!t&BP(=6+K-{Xk_KAT>oYw|6(s^D=k$2X^|v`c;-16~C4qfDl@1uG~t7 z2PUB(!DG5PtD6qHLzXS^;1aSPA{wvSz3QXCFo?9+{RE5d+Bdn>`VBP(mupC6OWFL+ z)C~DM@<5w0*N}Kn@kKvZ$nWSD4braqXU#A3z9GY&Tr6Xw@vSu&9P85i%?a!1YwYRP z+ngcKd6%Ho?vrn^X$6EmCZ77%`S&Dky4O#&^61d@28?q$W9@^K4ZV)uDuy;C}u;!~b!es;c z)N*d_^IUFsQGAbbizR0-?3H@&Caop!CUG6x`E%MCb}f8jJL#TghM%PIQFO4HAZipB zgjQaUC~Foa428a=(R;WPp~LCLFQjz}`yPq7J9UD!zCv%PRkD&ZfK6g6+25-Tc`sJ@ z0CG_TSib=E_3ifl!SyfS*f*0lop>VGMIk*T<1+D;DeqPLg!mXNCm~o)#wo(;D8w0l z<PzShFhv58c1V z|5J4Pzp6C= zJ^k3}kiUQ*Vskz!{bpoMiz$(%92OhP64ihm_mP`a_;!(vG+&g?epZSDPcKs;n4x=0 zr?gr;S%KN*U^oX3&*{po8VIXYy#`R7O|P&wGu~jEf_PEhg&18_?w@4HwwX}7q#O79 zz9O#ve2Xz!^$WyFJ5!i!N1Mu0bsGP)n00phUl`*6IfgcJ;B(3w=1&Lzil3j%4N+GR~%m9h@Iw(`tZ*Wwl- z;t83_47DzLI=IDWf~_Ksz>G3$iRJ)^v~_VlM*4I2v1T`k&#}Gw9BfUI^f0DX&UW=h zONXO%IgFFb;)O*^W~JK|ecQ<}!(a2SD#Ba}TD#alH^7g>s3*P5ECl+kNJ*TMq>T9SB+<-Xovt6iU6GAZa;2H`>VUtgO5OTmGgsoh)=BIR@g8!u}wtyz!>B znlO#XZfl);j@v@M*jkEqxt3OiULO19Qn^K{c9Ob`*a%kUhj5Z{+FQRmWvwwh8t{=dH_C05Z?wIf@ zd_gqr@WiWL7cLwrtw+9P?2F0D*)Td+z_{tpE4t2urh^s|eJkx5O3}0N{)OfWy2B zZNmy(M+pi0BLi8mB*apP&I-_|KZ3i_f@-3K2K^I|DqcCk0V6^yx--9a{y9PV94bmJ z1CygUu=UCHZ$;qWP2m2tHvVaKGB;W0j}^_>M>)NYWgA2XEzN#QKm#l$<0h(u6iQ&k zZPkXm3f6b~GkYl}e-OV%tsP(V;>h7)D1iVXAZ1K%!&A{T^Sl{h^k^kInBm5j&AOx7Omdk554W++&#^^X4A|NF z%M4h@5QAMSfr1vb%C6JC6bj@RP3N`C(puFt#4L|QP#jmQCB*9Bozkz5B3*_Zd4ih^ z8rFnXTIN!Q1$7QQ;$=8xnBRl+TKS4#%17HENRe`Qt=#Irn^kY0bY#-M`O44I*=MU| zKMOJK_cZDSK3dOGi}3cRHNVtvc$iQY9KMtliHw2sO{u^x%Rh-;~&R zWvY+wr6eT{BtcMnP_b_xOTtL^>^Qgl`e2DSupi{h<4EAn9LZ%*@)>lQ-!w!iA6GY_ zaB6cKoB6CACc2tc`D`64u8flw2Q~2oqI@o`SBDc_qRy#QK3qPtaDM&O&UUd<&1Jyum)InEtVLgemp-7W?=eBG=zR?wY}x-J~ruvUF^Uo z&PW!8>`|f?k^RPx<7s{6bAJ7^msmdIu!|%k>yqipd;;#C08N0n_tmO=VsspA6=eW@ zc3!%k(g@sQ0xoChRnRb!g-atlgI8EmT~cKxr=Cf34i?>Wgmcpu9SfAc803MVupWVW z1_`*WG3uzKgr62oL>+)k zpakfu1i6kALy${KBYYzXR;@6vN04OsgfkWbD*BTyuv;le_S+a`a16dsve35jOcw|7 zJ7W7CdKn&ZA*AG^BB)nAIJ09h2x=Koa10>{O|Wl4R=l0y3kl1(+>s^s(SomX&~$~w zB6Tpn@=Q7hvEP8D`L8UUFMp9c`P27NhPtfU0TvUG!0Pqio2UIXR{l~=BstgsMH5Ez zH_T(Flr>JiSE@W~$kEaD^uJto3-h#apnx2$s z53w(Yq8Z*A^B%_YFjrhyGQB`vnK5Us&m+>lA#*c5-G`wjH zufl$ft2nTG=+8Vijgs4~QEjvbO5tIaf#ZGv=OILJH6I^T5Hx*nzvlVX3H6q9j@zjX zBlTmX<|+hi!J|jg$&Eci?~g6jV0qMzdpxf3J#t3X0}c=CPVVBT@!c zdA>*f-wE~)7q?!1-O3DD;tU{u`b7S}Bv|11_3wpDtp;%7Du~WsE!jbh)j?I{8M+_p z*%xTpQ8AqoSO~`58~P}#1)ZH?i;ZpJ`|#z3$M+WMr5Il!iGzMi^|NGt7I5lv!{g&V zXZ7XR?>n?lgu*0H_0CLV1!MQ~DV#)_T~s*JN6|dTy;f^w71-owPD+`XG}^OyM&I9= zki!m&ZWlIAFyF!sevam;h;Kw3SYW%-6KI}FUqcH()w|q=1p?jAG%Xvx#^r-OnsMwA zdJlS&idaS3vYfVdFdm5U2M4~ZcGD$nazs5wWpK-Mlgi?FVqZ%<1ZnxHxD?V8RXamW znKz^v%UF2Gk~HWxKtEyOlkknjO^4w;sm4*!5j6$Ta0UMk={(gm*Hnc>t9*wYE@-sw>iMN~3!9|fH&+z4{;8xcZ zuuYY*wM^G7ch?pZtto+h#eZ%%ezt+^`!FaC73Fejs$TBG-G97DDO!po)!sB3=K^k102W;K^7jBjvzjre>{H zUt`_)1pAp8F-s?oQsY$EarN;q%!Y>|Hq?utP*~cMRCI%17~NizIrMk-HlIT5toxac zqAE{6G?uROLpx&nVsR6vt(1}*CwAQTvUE0=zEk<;<9WL6EMq)#T}$g&{RFfnH`LlW zQXxp@_y!mEVn21JO95C({gFv7R(fB~&H zf7sat;G((8%JWb_P;R&o1YVHQ{ror&>T3@&$s;RzfO_m8Ik_|XsB*&;tUJUg#wCre z%s?IO8bW(!(3bQ71-dQjJuC-A8^$H#X05T2oAF^@knCp?$W4t5!g-=e^Gg(7^#;mY z)q%VL7YH8^#(3jLHZ(QAA4vZlr+*gs%5#^_j?g}Ras#S?)Bf*qDq?G8_Fo%&wc0Sg z=tme|9Fi|>%_&!%JCwm8NDhgkJR6|dLOunC2nzRW#>;ago0>IsT?dNlAaz%*RBu;c z#7DIiHNqH=pxykeQn$NU(4PD5y%Kccsv8g<;Yc!zIZr0cKg&>($A#D~IxON;2X+!UAN&CE?nSb)4+^ys*^Yc6 z=D1G^f)%Y86`f%m8Gx|ak;0q?vqoi@41M6(3T@)V6>o{@7z%yhL@v+_y+$*r|9yxC zWJ7dK$47JKlg*2BM!*%R?1&iM!JcfDzW+cv*^4v4AZ~wZ!S|IsJ{jT?+33sTy$Gd; z2Mdu{KLZNlp#AmrULGNcAE~D!&NKcHpUrDg>$~q6{qQHqS3Ajm6S0beLO1MVnUJnx zL~K*Ck#>t*u=s<+lW;w}XHLb)sU?#L{l zJGhk2@@@w2#6_mR*B^`6tqf>kz`UdB)*jwDVE0`I?6!~&W8ZKS`uBi2IQGli{~ieZ z9Mz8FfO=~V;^4GfOPUkX#=L#S`-;`1?7?{}4|0RL2k#Da1U05sINkE?2xol0H={M! z_dUaM6zsPH-45S<3`>?5CgKS3v}JpWr}TF3hV+E49H3U;R=B zE>FZD5g6C7pk6`r!uC6CuUuU;#Uge)dW6S1sv?yaKUk!UERakG$VTosXc=zf?H1`~ zu9A?W3Px1Qubke7%0;(axOL(L8{8)aPIiUo)TdzInvUWb=w&N z=Wr87thv1NXl1_?4f?Ti!z4v^fNID)666zDmp(wmAw3ZdDo*#Pls!e zi&PL|@_PB&sQ#$4OA@KtS|)c#2{nqEUZSXWr(N(i=}AdbXsgRG##OXweLo$}P~GU7 zK0rNAKc$esumd5Uo-$lG6X6zQ>`3VoFQ%j@YK2Xo>M>dP^(2kCFC!zy=M`QtCG{=^$gxo*M~+M6_!|JK5Q@|eq^E`G&L39U-c(Bl)eSrZ z<3q$;4){!f2)ZDTV{hNF2~OUa6fGbFIvjkZ}dYaT$RYA zJMaZDrax_DsM>Q*txhf-DGUj5TAIFF9fcZuQx29HUE=l{%83M6R;ncWxM;!Rrc;p9 zcuXpBQ7&r$Ol_1%n-`PYy=+qXLqLg|DCVZA;7XNxxUoVqhtgwsH}K$}$ZMSUC7-{c zbZF)dtj~9_p~i&vcxNpCh!?K4!ND_;Eg!5aWZ-znFjnc~cC?evj*0wo&7UQ7&Qgy7 zv)7LTBY3VXC?hLzq0p9v21D(nnI3J2NxPsr0spLX_&__PIZdHKd(|31I*l7im6GcI z%E?79k3loGNs8dm4oS!QXvwm&Z6x5d%bqExz=tZ&+^GZO2vSf3O^YH;o-*6YWLE_j z{?&Ea)`Uc8T55s}j|-pbLZnyJN!gkpZl0BtLu*+dH8xCgInU6dlj?{56U1PO?l?+_ z<6!mi$sxp$_ket3Uk7Ps3VMmu4-bf;9)N{Ru~&ph z^;o+#6`M3`WBEBOU4f_uJ9K?Qaf$d>`%?;BY7g49^LgF8wi0-Nx(PJ3Xk=2OXd+Ll zqiHC9nh%+7Y*~h2Y^5_X_N|iG_afGECGq@Yi*7DJvXu{TzJ4@Ha9#tx!gb*$dXITo+){s?aiSC} zZOp^{xE35q1P|TZjVf$dFe7}B5Khce7*B8epLXKsdv?8A#E-e21MyhFONXo&`Mk>P zcq}SN5;HZ(Ly9h+jT7pfob9}1s!u|6AAD%f9MPNSDOi8&=D1QFqoZolN73r4Q+J#f z#Sz7U$|j_6r?XMSBG|Put9f3}Fq_%2LWhynWJ*65=zd#tH3v9X<3?jyy{0?eehx0i zugxL+p1{W*!z?oNL);vh45ltn=QM~1x$MMOl5RlE@oNB*^b4|W(Jx7;^jjlO6r+4o zL%Z9bsrKszc-L`HsI_0)U|u3Z;`dDen)|o5Vw~6r-od}a`ni(|Rr+&L`4Q)u0^;Yz zE%?=vcTwBXjoy(d{cFCV$;#}jnXiLk(de5eI!0ZgRk^4e@knS1md4>47NW+o82*7yk zJ*OCY+af~J zM~HP*A)(lYCdoB(RsNVDpDBm;J#{q3)oPV2TifcOsVJhdGa~Y;l1nnA9VXX7VZ_bJ z$A!T|`GMORk>JQ8pXf*A^Z! z^3LDI2td(2gTNA2ib_{fQ<|lII&_6PAu)A#3;Nz3+d#SMwO4VhHWj>Z#N5}%rMrU{ zl~f#+NJR-@>$RG-uq^-++|&K+Jz8Sg(-f#<0h;k z+-k2%?L-wf^c8~Tdn+vg@F_Y|r8cj{`MjC^GJm8+g_KJ+Nj?X|59tWL7G59yZ0A#z zoG1yUG)48-3?BN0(nnb@eOasPeFq*HR(}YZtJGB*dTL61hHGtPoeTCaZd-HbrR)4G zy^22^E%39vFHkUtZAhgiaazQ5?` zO43jW&p1kUwv&#FcS-YP5^1y-#Z?$c<@8(y{3ZUX9EhS<&Jh$5WwqSpj1F(=(@7G+ zkrDgEY8nr!Ry!3s%5#xa8#sexNiYgDS`Xah_&?le-ft)l76lO$C?7|4qv~yU&sdX) z?g;9=41-%OXS#Kd((W#ySe>KZ-_JNv-gwrc+*ZK8nz%%BcjT@fz2LA9VHzV2m)&f+ zUsdy_3LItrsEASR7Jl8N#$+cWNILNHfpmIUy0Hp}Cs=;Wo4%I+)Pj#gX|}<`C3?rZ zU|JoXR2@V+BasB9%||RTK^vyd?M8I`QLnrRyN1UQ00*+?VF-n{y7bAld|$msMXPeV zl1=qS^`O$DYUz|e^R%M7^rGc)2^u0n!sF{;XsX&8QY-!W+C_W(^(P5o5`2hN6`Ldu zRQmvdiVqRW!PtgO$96Zg7F(M88E$7hl9R=rhN8wQZnOp@e8(7A-9iMm05~ZOgmy(U zBNd%#QUx=o=uuE8Nk5(*yo%HC?x?GTooyrtodNwbRLFj%Gn$y-b`)_tD2tz4#2r!l ziknE}JeHGbAq)mUyDM zZKju^@G5`f7^-!ypo2n4&n_SXqT5q`8;(aFhWAJJAx^jS0ApT=Bb44VnSVNJ6-eZ|wgS^Co2q{fl z{JClR2OVwjgjU(n+^u@nJMdQHzFa`R33lMSRi%o)}+*ku*QTK1_FS%`hLPn^0f_J)3(>uNuREKb0jY$@V} zL#T_%bChPw2Zt^i?y;%Ip!EiSBvMV&J5_jK z-74#;?lD9R?E`$UnueSDBP~R5^1ys{JH+e6nZl^h5R@ozi)5F?_Ew&6!AQ7_*x*Si zMXC2mtoM(;i2E@Z^L2b{G5v%)u9n81CmWo8X2s<8Ijb`}X-g*iw9&UCPuc7KX>(jf zaBGG~=y1clAvu=MT|9CqYN4UgkQgMIq`*%CG3NXIq7+D2go`{>~3XB?#&q5OiMz_h7Me@?4cL~-8)k_ zT|06&3bJ<|=SA>+-+g0#`wkxqtr%Z@dSP$SFPW48v>M}s!lV$Rs9%8>TC<|J3qLCM zplu$fFXKAzv$IP`r0qCw zx8`dBZT+vFw7OAk1IwN~n-L!UtRWu++reJ#7|~2|#ZGv2!#|Zqp&GD=hTUF}?fb*; zczwY??-v6Wk^yK+dn)Y^`DNQDw_3i024h&aD!voyA@$!!_iQ*m_tr5KYg8zDL((jS zK{RvjHy~e81w`mr;%r7CQnhq+5DyA}53B9*;*vd8~%m(gOvK(J=@xuW+KFoHuW`!ra|?x0d*rc%rzJK zhSs2(2G(zeHjaIC4JTSgGL3`R`H(zlNaLVBy%;OG8188hD`8M9^n@X==OtvWyO|jl zjPC;f+${{QJ)}VgcJ(cQYT69{d$&-`+1bHa#KH6*V*hd}>+TyI=wggX9OnCLaRfXf zC(Kgi6>=vXY%miQTvXtxD+-!)p`}cTlIh@E=c{k?NT(8RPl_ov-HulIaQitvAm{mC zKHjn;2p1M0{ThYhvF$qY#!6NB7n@bcLTWZv)G*K!eLr&iN^CvMs!bx|nQ-+hjN*`!K z*t6^-0w-b?YB*g|Ri@{V$bF`+BBBbLf-kUB6eRJ=;k`juAJ#-aGxDkScplk{vrkI5 z^~LNXa(lnR-tEn8@-Pl7v^ zi;^9UP>ENmV1+~T$a8W$ ziqY&#BIwCNLc}jzg$U$1W>%?&__7OnO@BFy;%p)4!d5UG$Jt6WM(;QS>`lgdeZeox z_Kx5j_U)n<{>-gqF}xm&t(UB(bKDmbB`o=CiCSaCr?;4CU2=ZTeumo)&zr znjTv>7p40-xXKFhhc~D0X30yN1^4HS_G}ZogNw#_6*ix>snco%*8IVI4 z%M~oXPS$DT3nMtoYCc)&Y6;7%w!O<%2Q?huO!Za>l=4VcmTE1ogwxA-rdk>sc~@jW z#pPp> zReFE0_p%X(z@63?g4-_49k89Y7myde=pCpphIiq+@pS$Xl*I$*&to5d8MXeInxTMK zxY+|~2|oX3e0iFfIsOsT`}_E;MP7vSD~#t~JjiKm(2l)aBkIKAP4>z@?_c978BC%_LlQE{&b(QZ6O zS=asT8YZol4*ql8yoDjcJ!y(qMUrs{VBIUu8Myjw%EOtho$wb2U+r?jOMgPo^%4P?UQGq0Z8sMMz|8+CCx-bGYAI+TYjcghJ zF2eM;TLMUMbF=-2-%_sPl>87AGJczth)6-{E!buNSQ?P(iHrpfN*%CNw4LjUq1(Z+ zCQr^EjfM)v9}q9hNrIZwaXHP;o3}Mr|BUoWVohp(L_Nj{sP1?=I2~z}Lq9C-NbWjO zzAden$1>b@m_sGv!&G<@mD88W`dBX~Gh34OJEyR#O~3@(TzOHiWqN`?LYKX$4B48Z zrskm)`&Hr$TfT9Su0!#@^xGzHqPwX^Bk@?Qhpx4PI^0P5K<<9}3N8}+=Cm=wG!))G;>Tk9x7KC+43-@SF;lZLHh<(kK$| zG(%bTR>*a6C{4)N;x8qw^PY2#ww)m;IJcPw4v(6%NPcW)7(|KtV_iei_pesi7#$~Q*^Mx z!w@?*4n5LBP`Gb3M;&aAjK|21Sdu*K8uL}((<;`)ao!Kpgn19G_C+xZ1uL5F%lx@^ zq4R^KU|?hLsP*bxjJ@P;S%|e!%5Z1*w*ZixYR#`H6aZq zgzT5QOotmQb9*YrR)DZSgMjjcijjoe?M{Kv`bf&kN8+CbRI(-7m55|dW+DUyNi3@F z(pT%Lg8KFJ>keiYx|ZgCjmo4chCWQ%0KTO=S)U2t71W}A{+zvavqutd!m$Pv$LWO3 zeiIl`srgK{9wry5iC`Gi!i=?U`kqI&!wnl=e}k&{RdF2!ODjzP*RQrTaRp6k0G13# zx_px6%WT5V1`)Ei*djJAf!UFtZ5WFz6e}AK1F|YD4R>3?iBm{ME>Q=j^LN;EY!mH%$dg&MzCiumgcdfk&T3 zj!R+*qECjV5a<)>R8-h`z{v7GRHQVJ9x!83%)vB-h-K@` zdTWX4;4;(yYkl+wDtd*f5;Y)HCI5M3{n2Bd+JP2b)vQ_nwSXG!Jvpe(iLzu5`Zx0yfh<*gB zw%VoY*C}MgVacgF$r2OJc;jqGAX?__eo3Pfu0_UY?N4#E2WHkG$B_gwGgy&{&cB0< z`qFXgQMpv*QJl?Uo(5@cB3_uh(b1TX7DXQtSxgu(srnQiW78tpxTH#pWA4-8ON$Rk zL>%Qxv2hbw8nemCGBMR~vJzuM38Pexe!nx{B1J{Hr70zTHYj;6nR4A0UTf3Bozh8F z0p7=y9f)B+cD%h;-W=ot3rR3Y{S}wLMzLqTeq@_*>X5$L&*zu!eWHDY0477hOxw_I z*xcn;S~qbHKs*+|qJ3Xb&%7B#ix(4BjeILVTt7DlY`4C_Kfw%lQ;b^5lEsv|eTBcm zuwHL@#`3_XmROOs%d$(W^*}qI8U`6*TUuit;lH}z1JKVfi2col!YuQ zM*95&0wO>)%HTn234J;`_=l<)XS!7?EK|n`6qE|u`BLb1A!d_0xSHV1>oO+ z{hxJXsq){ixLPf?QNQP7v87<(4Tp@Zgd!d)8nh~J+gyT`dFJ#=rw{}s&>xR#^S!`O z5ZS8CyGnn#`nh0d+dv=0)}%Ddh)(^h>PTb1hXgX3(L98Q!R(DP*UD9ls`{EPhRw@$$m-6Mjb-;8#;}3X!T6zN{kL!8 z;R}A-3{05`i{%|x=gm8xlV9>!2vU_3pQB41<+{6GtBIV2%H=bKOz3l+2D7Z~^2_=B zBq7cQ1;^BlbBXwL+Un zRG9~#u{9)KtIh5-(1p3=nE)n;DWCI6^7f|zW72dh%orxNK-WN0e!PQCtcQ2Xhrxd- zF5A`TI$VHAj{bil30(C0AMvRt11f~xb6}BmBw@C$!>Gj1hTKCfEV?k1R!G_t$GsH0 zjdO-nm@cigDdAY5GMms? zVMy{DDOvD%I+|-EOFVdIJ>U6Z$fSWM#?CW@*tyWbbV(Q1H13oE@NkyH(Xh?WWR;#{ zylrDF$e6Kt6KvYett*kuVg^5$hXa#NwDB&y$43g2Gw&YTm5Tjzee>Q>Fnn!nRsqx%`%J%;VSR!3|Oz%8`zaAJHPqx`SR>i_3^ z;cq!O5q(1^+y9cSDoVVTo&SkG+|4$`It5|qFOv!Rxgl3(kPnJn0PM!Zf)O~7((Exy zq%B#^2K|-PMfkUT@rzdTuGMq#rq0Iv7VoqB+IjPzKgYv#0OxLF3^67M71$h_cyE?+CEAEb@!#V^eie~Ne4=bLW$#v?Nrzrh~W z@SV58)_CL2(Y}*zi%lQ{h~^`Qy=U)z_fYrC4StV|mNK z4YejchK_71SMV{${@{&8{zqZ^(=EpO2<{ILAX1+$Xu3L|0(8o!TQ1zqsU5t^Tmd}Y zcPhVCt(lgerm)H)&K{4@7hE_8HDZPY>6yL8nB(36s&WxW)duD@ZfPfCuSl&irm1ft z!&XM#X(yJYWT)J-^Y(2556&B6b0GN<_8xvG8A2o{h_g)gZ6XhlHYDaU4?*nOWN)lj z#HWn2X!{S0v#$1Z;?sycXeCvTJ`K}R-T#_$Q7L{F%ik!H{Y~couf84sFDa*__%E$k z{68*}hfU`X?q=#6S*nUPEU9SBLC}=E3XliDko|)SfwygF1>1~mo42l#o-~!^fOTJf zd@FKYkdmTLvpH-`Tx|K8_;7jh`S`rU0>tQ*z#6YS9N7R-)+h&gDzBKxP2U(sFLh!u zs$FJ=JN72c5N$c8EfknS=OZzFV#drko9>x-c8lrwm=Y~AS;Dqy zKeoTx2WRT(rrPgxvHwn&|B&7L=e68lFXVq-tH#Yr{G|uqg+e7e$DY?=O*?l5hzx%G!Q;C3K=mLGF*n`wNaFJ55_^@lqNimBaDqH3nM+0%4S>qbsU(5Dg!1%?fMW1ij9nN7Ly z0k!}5>AY<@O(rL=1LrFdIx0K-px2E#b~Fqads3?o4%3osgCEnpSeB{?Nt0!B(oV&FO7XEm^9M3^|tz{SiBPNSq&3XvV znU8r*7&+Mjurhx4zfuK=gG{ND>vo)znnj*LbAt)3mI?DqGt-a`f^XgvhkG~!C%D)?0f@W&)0h~~*(KNQCKQ7cVu5&ji9)Y5g; z|GEZ?`@RMf`_DSbZ`k<95%ah8kJI-RfvUNa*?*@+(f9CTo*wygqXA~TkCPJ=%c`>7 z5~>eTH8f9~en1%tF&8k!h9Rwln6{QFtQjy2;vW{J0@&>oxwSC0Bx7OTUR`*2WZS-8 ze?WI|n~0e09Dg`lwbWqjsf5x5({^VS?AcfQRba5E}Mr)Y(Qu=AN5x<{A{-XxSZ1ugPiM`r7e zaU?2JDzZ-%m_2Ie(cUQX#bkl!8^=cVizw0*1cjg<@_UG`UHxF9!+NP+Y9tbCrs5q=~(>d#mf`y7t;zAKd1|&992*CFRNkR zK|snXPZkwMdov>_Lsc}ni@nf9NkW>P581X^$ZtxZ_c*Z7dja{}EYdIfAC!O`*66?^ z>HPvH1P8P;o*_26H@{JqgIU-xuG>~vW}pacY_P%~qeE-6>PT3YB7?d@fu%To1(l^G zq~&_JbYP{DvB>n1-&ZxsEr zX@7Os5b8^-t8g(H(ZUHU)$OqWN$m_FzpkOg(t`rBGTtA<_iUGH=UvS-{g9QA?0>Gk zJ_om(TQD}xdwO}PZ)|~x=s-D|+^zL^`@gAF z8GUQxzeu{j!&)T&P4+M#^O##&S~fnaYeN#Q1^sC5f|q9#1fd$V=7f2aAf;f!n4NYY zX}JOVAitezprmYxqi1uR^3KY5e|!1>)I+mmL9SKcukcs)8%jFE^2Tj)zM;PvoD^@BF9g|J$^Y;P`Hx8cYY?-(XM%stnpWuARW#2{WBfy(^m-Cj z6yRs)74nkySlVHnC0OG&t;+sE*x~KOAezp%<%7W?GLB}jG1-#3f4O-B{bDk6m;1E| zd7-SApQy%q9P#sGBZ?4mW5l? z0QzlFKZ-yq)=1aLs-ni6jvTEumN`u{2((~G>yW%HdZsZdb|%$aT1FB-y>2LXl`r!B z&CZJ>t(-cKAO_wQ3 z=8+}TA2krt!?qmlS*ly=Dxbjr9lyVB?3?2CmG!@uKDhqB43GaOrphWQ3ffxRIT$-S zDm$55{j z{i@tJOmuW)f0A3joGB+x>xo+ko4yE6=kpMk@2^iNu(IiPb4AbyG@12#pR8w&WA15p zG#~HJ{%L^d9!Pz%U_tcW(r_tooy@q1dIBSRne_X)$k70Mj&bpXlyRszFZ{_tc*wcm zzaY#V<_?sl%2N@|u%?fyOURhgW+RrNRx1hs38`i{tKg2A3UM+%vWDhoGijfc_#}eIxF@ViV^Ynt4xY7 zOOR}$%0Y)w!EZ9g{xl=PIPExB_5*3U?IF>ZVzXs;+?c6|W|*Fjg5fJ@%X?xLEJ`~y zUtdDKzmjJ%v+SJ>Zyst4A1@7;q@=AUQ^HoV58{aOQCOgg=HFG)I`mN4F1#37N;KA$ z;IZr)Q6D(8Duf_Xx2$apLYSO|9Ks35+={G4L6T-ysN6J>V5055s}46u!E>n4TfE56 zW-yAm@DhI#M5K*Gcd1{a=j~(hd-0tk&iWm4%fK9uGz9GuB0pe-&Izv67e#+m$Z)VF z?d}0}NPlD;cuFs21~~jF8v@zT9+t#%FT%*@s7R+UkE3ZvJ5%f2Zq?Ebj^xP&h%pK2MTQEN}=sny3jrEv6S6 zhZ%Hn^vyNElsK#+%49+PqttKE*bc$m2AuGAv0NY8igX;)%nki6LvKnFCN4=_!A3Rs z+&Rax_8+hbF)-rovYDmg{l_0>Zb3T{My2*_aVGImNFg?#>UU@;|nPTqxca<;sR)Ax_OcZ51EWn5U?n8!}7*{&)7{D z<`il`eCm!#Gd)8&XAmV^O1Y(CuLh1Hs)T(=cLR-p@C>}?+qLb^sJg}b z!$~4ddDKkt2<2#Ix2qZD$i+ViIISCbc{~zthgjBo;+>Z1N{@+n(?jD^By%rpevhLs zKd=76k5)FfBF};ALn%$Pq%dbCadjI0TG6bx?{HuC3+TUr`>z&i{2oq}cmP;ms@pUAZ z$pfnQJ3udTLqCWd(k4LSxDi2Mk1$FO|t9OyGujWDjTYV`^B%8Ryi51I(gVmq!u3Zp|Cj z$dD?@AYZ_cwh|#Sbhc2Ede%I-y}s_Eb~cmWn_PS3*{pW*Dd@Axh-iM_+>&nhT)%RL zz&?Iz^i~yMAmV(}@?SiJn7)mX)qm;P7pbf(BB^43qQ+aPsSM_tRW3CTL2@uq^S;f4yL5W9!i!xxJ*;B-lfh}-T`vw# ztiZ&$55e<=P)Ot z6C`IZ&3{s9o~G07Kcx0i=l^qT3JQd4NJ=s?1=Zwx7iR*s6%nJ}QRKF6H}$T)4gChP zxB{OgxgHHsWR^OmGO&}JT9sYWM5YB|-4Uty5Mr1yJS=R~YV0WFu!!!#D6rj3(QcsT zPI&i$A>RM1JeR3y30D{GVl1(gqA2Jb(=lIGq*BiCdBxdqR16u$l9s`ViVT%!zR66% zwHy)+dRnf=xE*rApZ>1To&>q;GTsyw$=oo`Q=>XvxJz`;VcU7hQOZ)rLX`xWc>)@7 z4TPfX5Cd2^u(k%X)|^bFYA{|^z1U>kBXvB2rPOmN#NMS~J&NiNa|_KmMytEUi;L34 zYY<(m1f@(Vy*O%c6C@_mQk~1_XqdiY8_$QWFc&S)8GEQ;L+L)}5lX|xnZay(IRL$V z+k*UnKcr+xlyGn&t9Ht5)C;`gq0hI|;j-|QqP<`UkZMp#K_CeZo4sY0770I&afig7 zl0?})OGh<+I>~Eb0)ozH?FNPAR-LVeV6-6@=T=V!<<{IS>z4d&b@cO1S2WyBp8paj z@Z2qeT6sZ69G5b4+Fm)k_VP_@%t~pa&|(MhsUc3zjv~mrWfC5>r$LW>iQ3nJ@UhDoArx!E!%JMU{e}4NshSKF4mi-Iwi1TL!}UZlTUR#!@13nNy}g?YaL;~g?* zo3OkKuOfC+7D)fSP?vxhh^YbAx?Qo1&7(}zRuyTxM5{j0@ha@?dIHf!b}5P}3>lL% zphi8Ty4^*_ozY2ztw$(dkE6)i$bxvBhwyrf5`kd33*l8+oPPi6vQ(}7_#-rxs7_V| z(u*&J5mMD+`JB$ON){sa#>D4Ipb>iO#*p59QY@I(YH#&+pVg<@X2aecn4J+*eL%4> z`yr&eGww&LLY(n~FLmC^MDFj7&3Z5x)l6RH@nY$#g$Q0^n?z`ggDa2MJKfa-%w?f+ zv-SbkYtmZ}eK?_15=<`}yLb|86R zw?nr`TMuFIn0<(;N{DC$f6&Bhc!5;QZ5P@C0&nWM7a~BImZ%dra1jB&oIDve5zP8= za4IUZw?(uW%p0uq;UuG<;-F8-qH!Tx;%d@5Kdv?QTXG@7MG<&<-uZ+EP-*9MLM# zV5utv4fI(qq$`sP9`J&6dnck`zcsTKID6aG*_=Jgyb(b%_jE6zeTBun#LIqv3xo8! zz07q z$uUEaFyO1~Dd z0-AQe1*80g-&WckZ0>OD0`v{!Q@OSF5*>8C^$#~@r<2%Lw1?{Yy#q#>ycYuLLp=1M z)H|(2J8d zBj9^yAW8X^jP7$a!WY5eOIaA{Q@Xc1V$9d$wg&zsL*fJNQ}g2^#{cVa?@Q>|R@rL! zi>d{G;VsL|eKkT<9lMq%rcCH1Jq6W{i^d3NbbpWxg;H@=QNep-MujTJA&wg`a_2jF*lEAxcsiTCP!GT*%m+WN}BGt_ps8o7|}}T+rZ6VzyNx z&l0&Uxu&$yn|=n1b8C@fW!p1$=bR%iXYLOI59b+P4WfxtLl9WwaK5-?j0V_)*ciUj zu@t5m*Ty#H+1bIUjHjLNv>rZr*{m1hhEBIGQ*M#P|xd7%WqVuBt=e(>mrx6Pl_4owj2zh{o8$&ZT( zJ%*|^3pPJ&wd_)lOqmFU>@(o@avuovnFSTC20jk<3YJ2f;^Q+<0MR|=8L<)vR*~?F zp|@=;Kqilg!c_3NfDtHjm89=WnS5IXw-X!Oyksbf7}W9TGvXC*F*=ehq7Xz5f^YRj zBMUg5V$z?f2*i*+)&S7aPXv=h8d3ITx*{JdM9YXUP9glX(`S$ZleVNbQ&af-RTLr% z`q;8xV{t6B5*o1>4_T#h!uiC7HEy(S#3$Hm7>yE8hOLQQSVv);hTt2MhOARgYTz15 z=!(RO3f9V$ZMv;i=KwsYo@O^F)kv8?6v%?kWiG_we`xbG>gLhEoyulw8i!loE}X{# zS#@X(Ix$;nQ-nx;xiuc2{Z2-U6y&XPB(_jsKqJTrRd_{L;vz38c0T+jb{-XVt-in;JCj=P`V_8Ii%-|ye57N9 zk(a)}$Cg~>=@YYg8;-kG?SzYInVCr#vRPLFa z(MX~6akYSx$&zJ^Fk$cnsfm7N8N0DobutQScDpwtj_}%9C>p6qIEz_VKGgbe*a3yG zn%ZUL5_e}GkuLd(S$fa}@Akltl#;m$WR2gmpyi9D(Pt*vm)>?~&p`tmX}AHt>>GyF#PZK26*`eySc9FliRO+TF ze%CijLmk1#Zs&sJ%M;Dw&L)TxmC2(yBPAPcXDRSA!skR> zAY<(~pXtx0Z^&IE{n_%imQa?7ce0Oq|MRnKKuQg(r1N3RTfi0WCBR z;$p@m{lv(Vm*Hf_EZ~ol;^beEx2Wq4u~FH}ofQuUHynD^VYD@@12(2sSIAW^ARlB7 zpTEQ;F^drJ5=&V(Efhg5V&)X~QnN~bJ}sXOyh#%0%xa>dd1PtQ{!Oz=t0~u|-CBj& z8LjhsCMy%XRWwM%bruU;Q-Z^Qxh>;LKW6-L_9Uu_!IpAx-@(|}U27LM>Z*v1>H&2N z%4S3wG(KzJ-ZFlMKIZ47OM~$gyZNy9gG%30yp9s>9?t50-O+*$@m%|DT8(~F-V>L| z(#T+|IDjt4{WOuk?NL%7(uRh;OjXt^KH<=<0JM^mQ#Uyi51|%mB`;5J7^@`sV5J-- zqCQW(?BZ4)5_W+J2mIh8pW|4~1eIkyQfe+P+B7%^j2E6{dI?M!<@N|>M35HwUNPgB-fgV8AbA{&#T3t%?Q!cnf{X@EKo!rgkUptb61JWmFuqvaH9sV z36l_pd`H!vylx?@5bJb=O`%?a!oQo6q~XjYqaxA6tZ2YJt$&FcG6c_{awTHkf<+m{ zXH^x&0u3K3`8HwS)>w+j4$9P>xlSM3Bp&UD!SVD1gC7t*8 zR}rEwFQ9e_E#eSZ(cNxF?Vwbwi=He+SpCqHAsu_>O5xHs!M~py+Wiode^t&V79oUR z8_)ZYv!?@0JH5MBrfH&KEX(euF-N#pSbybG=NOiGEr~w^94_kVYoda$``YWl;A0Cb z5!3G2N*@H?@Di3xC7fD8QAglQ_~eSy?VkAEyhr{m4w^XGT}`j9YAPI`2#N;4u`{{W1!tCq&tb@2xFVzN@q+VHUbrGd1{+`P1g_1xQ=lv3cd$UdEwxuIy zqlE4bb{njAwy6XEs{t1p_~2U>-^Zp?nFC;4Z8!j5s(a|~I=D(|M>aGR>wDaT`VUUH z(m5RV=dsLl_t%t*cpf_2ILQ-t;Y?ol>m9EXG4%SYCD>3=y7h=oJNBGQpw@C^*OMu) zQQf%Pz%-XcCnIDZTf3OZ)h!BK>O~S0T4#t(1M|EFx+smS`jCjVE7iLm-v*fFT~utK zok7Tr@O}J^p+*q30cV~Ho$1HC$~V;NkovRsR^CkI>w~s9ih!t6b{{6Cs`hFzM1`JK3B4kmsEOfyB*1ydyE_zAe7OHTE9zECK=EKn%%!d$L;Z0DEMq+(*0$g@OI726*o zdnu|pz)A{AE0*$x7|*wyL7+CtmA6Rc&rBpY^n_%o1@KHrh$grFP~8NO*=JGM1kf3$ z2LGhIX(idaLaYT7kNw7j^ua;=4)A{3s^%mO$JsYF^QjmBG@=V3!HPw> z-Xkum`Lpfnn5S$nZcev#tDjxDIz1ZzZTY{ebxKtBYqm}XytnECad_K0UKrqcLL@=r z%H2F+zi$zw`II!=YqP2{_gX*-Pq%An-+KiYTjHd*xIePWHXiF&dP6RU@hhq^1vSDM z2Uj}=t9arf2Iwf;&Adf&&zk$PN)@^Pq0t0ZXGn8h+31EW3POqz*;BW^;{>Wer(u@t?1*Oj?PNRd`@|T5w`k9c_}i ztO$U*fbsT>LHsnJ)nZUN<;8d}Cx(X7@@;(Q9Vy~69`A!vE8K~r={{s&!g&(pzUqGo zMbhFu?WwQmU8dei6Ok;iB}-X})~*jp+pONdNb9S}ar)EG`sAZ?XN~=Z+k?_!s&dyC zHE|?k!hoda(i(i(SHM^rF=zNv%Iul)0M1s!d^G#cP`tclcW{zpb<;Ri=&G5%#ftE` zw#xqLG@-w`PsgWweeOiQMMZHnR?@Ow%pNOy3#Qf^k~$Q^;pG+UI!1&|j&}%jg`|%B z`xxgILi|=HWv?(oDE<^484fL1?SUs-_7;}ER{Ff8<$B&rMJsbD!=%JHN77REhX&s; zs86=}AHexH;o?V#;zvoV5!LYA$NIsUx7OD=Oyq`OD-F-%8mYOp;~9_o!bZNFr5_nf zyb*=-n@m#Y>cx*0Qs*4SCmHSyK3zr{-Sl8px(8ikH-$J8W+;}#(X(L~4cWb) z*yC{Q$&SPPUAdkX+^{Y_^6@)3b#Pn#^#M-;o!6n~2%X7K+bONG_)Xy1ZBTOPb(28>o2oBgiPSt%Ibx0D?5FN=Nfo;dyTTt}zRmZ~B%dz( z!gDWNJ=+y>_n!YsF|VyiU;}*5b&J0@t|b4H7q+p9{`XC-g0Yi>yQ0(gL)+NY{hyn{ z#0-DGxT_SUZIQlDpJe8&GDMh>$5daznTy2Z)P8n?*h5eVN&K|P$8KrGVq;ia>3vd} z^xf{xE|&>pJJ2eGb;?v!mfu$^byH zfh2`KCPTAI?BOIMxN^2)+__6(f?I4hQ)KyN%tvAfgKB?`J8D>1g2p1+tQgLD8hFe= ziICbd!qQz{OV6YXv;4>Ya=EwONGMZq)mI+_ut{>7{&oBcbcG3Qzg#DE0`e%vsppsm zbWpX76ftbk_2<;!w_1GJyfUjYvL)4G4bg@e9N-1Ae6I}x)d(8G4ukZ8f=xu8gN-`W zCv+4^&#V!2(0fLGBRhssvBx=+%S)jSSNA#8YuWLtMO6$V&klB{u?pp@Ok8pv zUk|19JEl2U!*g=qXTop2_wCr%_%~#;$ppBXC})j`G9CQZ-TJ)1ihF3Dcq(4f_t%^e z2TXT*t}IaxYoz75d+2IID&grJP#Z+W-6%Eff=g z2Xlk*qg;*Lgx-`0>N8{NbdRx^suBJpq@ZtJ%W$j)j4nj*ZaMV8 zeM>Ff0`2xQ#h#L2%)6)7=s_!z)F~UIfm(%!e*a;Y)u101t1vu-GdT}JYhJV#hFKoq zRr`8-W62&%jCUtdgT-RQp2mXa`Nn*nMG^++xd5Ih1}oGekk5#A4w!RFA7g3CdYqc% z_U7KC!)*h7ugFUF2JH_6nS@~IfWklPexRz*?-J5RZ9L1xJ&RR?TO72=(B&zu@-ojTQ@(_Xp3qy_VQ*NB4EywrVfH&I$i>^w}ck< zr_f8Nj~>aMl+fL@96We`d;C!+W+wiqCo%2$6&9bss@HH}1U-_39nk{@T~ly9(uJ@8 z9xA3F!fp#5QX4t$7HDs%S4T6)5Sz=OVGOF>tIX(lIbec_Q8MD(ztTKm*N@D?-<<&} zy+=FAYHSLF<@0ZoIZf!MMcMC6hJgAHmYcrkL_)?UR^M3p&%Nb;n-N*6B8j5=kcL^+ zRhB~Fqa$0&3kXOxuBqHAfaBK!$Kun>B-4(fqq4QzGu0Ygqj`3FJ%K$uFlD21KQ8!O zX{CIC3{%-L^QS>80XCfFlA}g4+ZVmfl62pP3 z$95Y5NaIxKiv$KswbE1=0xT&_;^gT|4DhPQ58XLBu7}qVD&Jr zU-GEb+ zKMA3tfgNFZiF1igJxODt=1`)kv@nsukbrVkWZbtIj$EJR%T{6@9Nrl%(Gok&tI=sf zw2x49IIfS}DfFQh1?odwskNoyn-qKmmqlPkLu`(vZ4fZhR9q?bVg@KAF`7|~@5#(9 zNRr6t%Luy+<(cUHxrxv3B%f5Q!HM%q__>|A_j%l{MpE=* zNA%@hP_~FeOsmYRO;aK?f;VX(*@fg)D74qnPYh@mq?VfejDK1;p*2PsH=2{5WxNP% z|0#Ur;it5AR_##GHiN+}Nu(sN(`@%FgtG#F$rzqfJ1&zPgN69GYog9aamn(~zc3TB zk0~>gbzULG#e)>1+PdtK!78n~O!#7A2cFRl+mgk{$H(kV>TWIQ+%nQ5#z@=G1ig@T2u{JWJ zNPGc`D7p}~ohc)}qbZ_)$Pw8o%Aq~b@3^LrPtW}B9#6baGbtVv zH6b6UTIm-&{2L@Mte9L{t2`EI$u%Xf8-l0o=RvkvRL?+fsLd{#i|qkFwdU*FPHAAn z-dHGRR4cp+uad7EaVOpa}Olk%6Kl> zGT=oa61gfNLLu|B{9%1Mom|T7{99%}-T>7wg>(}pp%ctF2Ky=L9uh({Lb~IVV}kK| z^gfWgO-Ucx_yy55eJxVYv{C^c`5>Gyg)hs667eMS%#Y0dl~f|JHpp zc_sPped9IJx4p2?f7X5cjo1HlNc-2J{`b$(@Tz`FCXZqTH-1oBpRJ}+92J$0_-W1{qTE_O&{3`H?487T-;N_;# zYXBUkKN@BN%tpDz9uijCapyDQBNZZ!+Y8tmw*O&nW1;YiGCz4es}JG_1_FW9Jx&x{ zTPU>*B>e}yFmn%LEE0Xc91nXYdJN1H9>$qC@lc3p%mY2}Tk!z~M|xbN6SF=>d9sbE z8rD3^d_0S#(9{7ksBTDknF^VpJ3C|FPS`1hM%9HPi!nYMPab;zosh`xH-(gm5eJjh zjfTpzRA|9?aV>c^FV9ghb<|Lrt<0>*V6sqXAmTh8S)N{mo}L+oH~=(u8)-!$7@kIg zK1QG}X^b48_ey#x8eD8w%ixi@ltpny`AAhvQIg~Wn-Vv)luwT{(%Hs9qsdc}AhD$2 z95u0RsxcJnb@t0@6v8<=aS46UmU?PunW?NLc~Tvke>lHf^b%w&i%>QJg`x;PzLFmR zIUsKeVO-sUl(WP{d<8Z-goxNVT!To{*l^QGQ&9%Rij8{ZD!Va}wm;T1g%bibND=$n zZf)_}BX(HQU(`6L&@t_W~^qV-*Tyr)inVu!9MW?&*P*q?*GW zu=$D$aArP|fK;=(XS&%0KJ9=RWNOiKU^Y{{#P6|9)=IIotc|R|OEY3Y#G@NP!9S;{ zdzuj$C8%sos1bk!+lV>?lF-VoghdWT*kp)0Ll_Xhca(#NlGt&^OO;kZRseMpZaBB} zR?wGC#0U-rqG(2~{>mJS%~xrXX>AP_@Y7eKY3=xgY-5^g8SGG_TA*-y-pe6Z zq^eMtcsZG?gb+UW8&XZxPgc6n5d{7ob=P(?aPq!gwSS7CP zy>aLrVF*52EPf@|Ckg3Tl`FvD=0rZnxW2|b;ap)FfTyr0x!sY+Y4)Qyd* zKrR{*_icN_Z&(%@rY{4vvwLb2HzK#zVhOnck>N2J@+Wt+; zta?^vUvk0Fj92Lz(OB7jp<|7(A$W-_sAVMqU9}rOv`^(+4t_1Ob)&{6`^yY_ zY+RXU?2$raEuEM&816nR9g)(AFKw3N-3=FV7*z9=%x~A{&9(<sSgJkc*w=J|;k|14tRG2{Ik!9tQ+ikQ03qo1$O zH;KDsZeSWdLwG-QC2<9CKO@Xq!oz2;@j;i|d;*y@rq~eOE3<~ZmotEpsx>mm4qibX ztL>7AuuGkU$Dcg}v#Cm_h-#Lx9(+2XVIHb^@7yR^ADV;-#qM$jID z1F1?a?{$UEm=AJ>gPX#O<%DsuG6X&?P47$LUhh_%AT-yxs~0D$7rC2Sg6R}ZitS*J zYhn2}`mP^PPHUMsg@XXj$YThU<{jZ5l?tU#dQ1jtL4Y2Tixs5h^Qb9jsFO~x4?nog zb#pnrBv+>uuYM~&*~+cj>=Ar~YrjNwCE4o3xqF~D*Jdc^PFAmBFJ1z^hR0{daC-^X zt%Hvvv+SzGKgKtzT#!oRtw!q6;rjjjUIQh6lGnD)52kLMe}1qQz$D4U)j0)(dYLyo zA!c<;LyIxw8`O^Cn-%6Ao7L8fsz)p61Zt>*>f1hnpCQV9rn|5cS)$q53HBXL673=Q zVQ-2j)w3(@)>mwR@dgem*eyNn_w{dgirZL!lJLK4$i#QgFYq7KkpGe(``cslUn|I8 zYhmbLSw{MTYLL`~Le{l367cj*TZj3f_)37u0FQG^v>8O|Fzxo!phavKmyO=EGCA)H zV3*KyE*kGgQeUJc^Vb)o#EHMyC#EvTUB7&`U8h!kKmYup1GwI6C&#qU17(0NZ$TGE zN6Sa=BjJD+rAHhzjufFMJ$}w_@wXop7onGr5Z9{eeNPR?FEY@Om=L1J62`_8J7Pgu zE*gSCVN>=(9~6C28>9&?b`b=>@<=v}kW8jOs^gyQv7uLbR&P3lp%2{8s)rtnO*n#n z+)th)yMuDv$V%>merqwrTvhLHJm~tV)DcO74mu=lN}z94Rn(DX=deMl8j(CI+;=O~ zSI2X;Cc?_Vk%j4^J)E^iC~AKr-!Eg@x-Q9Y^g$x1+OdI5gO;f$ft(bt1#X!AJf>IC zdQLjn0U5x5FOAmHfKzXM1#4`)hP?Y~O*GLOeVhs_d=gd>|47nXnc{(3V{% z7pKC{OXzLVG{ZZanBXeSYaqT2)4 zH^sr+sLC75Hvp1}&U1+V_~?&uCT8RytQ@W(8QHR!?g0V- z#layj;W9cw$@(YjlYa8Ijls6D`s^R^BATi%$$7r2WVzgN3bu$gSm}`-zFc&SIf$S* znqjcUG&Y{b@pO{)PG>Z6V;M$*8&jr#sG@9IPPm_gvHKQ^Wz51{ZR|%lS-IlOAx;Nv zFAMb(kj|ns7}-srrfa0{R`IsIqB*HH08pahwlV8aOXc%XtgQ(dGFR=tkma!%q^9l5 z<~5}xR`!K2#`LnwcRC{(v+T3p?_^d|w_J+OVP^1XbabPHAI52GG!iTf)tXxRDB6zh zz8{*)R1qtk^MR%#jQzM8o9UP`(o<3}FxwKaGSE7>*#>S&Z70Ytq5HJx*~9aLfLT=l zvy+ers^#j^Q+6PD_BfoZ^|#^LEi5%$-o<^$k6&-40#YFH9jbp!^j-+MB$v6|b(+2p zdo(E;-s0Q7BIgxTj`|$jJ^mEsri_gv?XOe>N3)$?S0F&Y_hM=sDhm0U=&#L>3+?l- zk(ikR*u&$Y#um|>kBfeGKL3!xYI8vaB-1Z}Oqc6VK zABsd%?TXSjgfYYPiiFMSyz?_mLXSzxd@Gp7_}|hGC(hlwjqob)p8g)4{I5t+%l#hO z7AS3Wiv?`Th-MmSCp!JvjuKM0G%O)EY)@~Ty$&!m(^C{A(+t9Aa*&d4Lb_DQe5*ee z=FtP9y_v5{l`yJ9P$C2esYK>Dhip4G*);0j0m5nvlAOk z3kVLcXFpaY57c=e@c(=?$bO&#Igt*nGT4SxIy5EU)kRp-T2=Is7Ia2KX8`qja>vf& zkN~vz@|PL-{5Q^JTQ0P~=$oeA{>I<`>ocTp&PDjYgiQZM$)Zt3Q*m7d{u7oJRb_xA z7+x$rz6mtak6e77873tVK4Hc{%sMxZ4gRhS0U@4fwBZ%P`^@w6r*1+65R-AS_l1(>C){fhQKknA7y6nb$`5TwXku!fPZAQ)*z zy!ja^(;0|HfI#3h=__^=QLF`?nI;Bx%+d%rFHzYA-!l(yUhkGTpHYM81r4TH zU_4iEsBdv-MFL>POazBPphvS%M#oR3YP%7SXnRaAM|G}&ww-Y)YEvJ)=u_^a2;%d(^HV3HV6m| z_O>~>fnY$8^zIN6Ow&$NjrjgvA&`t;L9cLF-hR*TphsyNP{?dXsmwEW44Z7L$XTy4 zfdNMrnpb+O(Z(-#pBY{0w%sk#-8d0AJ&GEuVA?$u$Fz?=1sl%#^sMw8kJwR$jwQzd zo7QL@QV`veh7p|+OjwdZEYD8R7{nrARCl@C9Q|AwIl=#jvUiHkENs^`E2$V2ez9%a zwryJ#+xTMJwr$(CZB<-Bb@tlbW9;>JAM_ey9?!G+&gXq@Tu%`0Qxu9AN$2xGmH{HP zPwck$kq#x7{LxsstKMR*V*85W{5f%VQjWOPpoIL+KA*|MkPDJL{*k<^$x5*4waQUi z+b;3c0$68BBV1miEyPm)@N?m&*dAw3W>5A~w|+h3#o$R1W5@dFB|&upO8=L8knTf? z0)7>}RD-@dY8GB`ufOtH>%u0c==1!~b6p8v07fy9{L+w|SGpy161;da6(;a3(Li5F zGa#eCpl4|jjNO1zye5jkl$uMDTC#i~?D2!!b(2*E})H~>3l~h z+l10PwKK`g4MBa-3=1#!SwY$i?sI-ES&7MVsEMo$eyExhYT{kqKibp!AUm<6k2{I% zM2tKqjHD7ebpd^QJx5<|MuZB7p*w?>G7UBK^x;5U)S?Xr^0i zBFfslW7@<>);j8-{C9w2n;LB8{Xb}k^8NF1|0~w4{XIke|E@*(KEEVXR205j4V;_} z{~tJFc9QM4PEcrEQ#fu?Y5|=U$?u6^peiCj)14SpXX%OBA<=F zy8surjslYlM(|*9I!^0f&0lmcR4x0A?XbO$KoFp->^gjfOY!()f^XQbkQz) z;9TfPV8Nc8Y4XlEju%z?f4$rC!|1g1ADR&3ehs_NejC_sP&B@BA)(;DbXBcyt%;brpU@;FW||F{(u)!v@7EFrE(MV z^NsvJZQ(5eIwS}m{<#Y4o(t^;~w)rll4`G9f5HX|$Bbci1@P3}LHQG5$+~cp!up@ zw$_!^En0J)%5|xE4T6PvEg>s-8=EORYS!{ztt~B&nI2wb*cxD;f+y3N><_r#+clqk zKY3gbhSX|>I>h(Lxo~j~zQVjY@3$%pK62n}+B7zvc zm_ZzQDva8#m6LQUkW0+54a1 zPQxRq_rfvwfPFAun^AcV-wFdT-;%x4*N{N0kA)cZtJmbby9(S|%2!rBboyST!QbEy zyX*H};C_Ah!*@VjzlOuvz*YULSL)GSj<1?L)v_;y`;Ssk)wtioy{KK`eoi0a{o1ee zLAnTk2MGP<3@}zYL^n%RAzcbRZN;T&gQl_XE)S$FE7_NntHD3I>kU|Cy@XB*JCtK> z9=x8!+GFKVy@)$vOMGb&P3@04N`|9umg*nPxU`XFtAK%-pSp0Y>7~MkylJm^)xR+3 zFP>Smv(w*=k*4oL14Yc2;Ao|^hqax{`73N;&iEi)DbJNp5&lLG!?`7!SAPHY%=4x< zk-Lp>gNhlC7BPXXe}n#3Xv~uFHi%L5?ODKkH1~1Q9-!Zbi$>00lV_b~C*ZED#ey~a z?``6(D03t`V`aEmXQHJHjS+KvjXESS+mAre_}Ob)P&2mEfv5?RnJ*5R`p+&ZQ!zY4Nc_CMnd$o<*rgOP_7_TFl@< z*ruHSs1iP44@Nj0UlFB^rd56^xJY}I{N5NR9|*=1RO4&1ou-vMbTmT&L_7SQMf7!J z1WY6;SgpdvH^BKo5-w**2iu@h0hMYjLvNy?8IYGmIDpIr6#_3zM}8R>Ji9jEJ8r+HlkvqT~y;a%~_piQ*MRhPA4c z9T@2p>+w=6*8C?`u14?xt%tv?{8h}%MU&DWmL-RS+$C_7D8wtPFuckkr{iDC<4)5x zFsc}h8@=);RMdoqxp!~q4Cxi)T^5{(u}d2EZNSWlRZk2GRoF7371uS`Vz79Uqs`@# zvq#AomQE-0=51^@QdUSN7ah;xkY>m#Y>>Hg4IO%#QZ6!os>nki8kJ3^`Zt~A9eP|g z#IU^;-NNM&`e)Mc9N+;R&i9IAys1T_ziU$&%+k`;r^;+#GAkM^Z8|2*>X4JCO^T_g zjpcyhlIWIatdD;sL@sTifyNNUKXfmVn39zFQ_Xr8@oVG+#4OaysuJ28c&VhdA0`t1 z@Xl1IoR~F^F{6O80X+wnfFhZ!e*T6-eKoSC%QkH0PAY7v(8ClmhdIpJrtrvXB<711KaX*kY9Pt-ik_I6oPx@p z2PT2NUlzO8khNY<`$4t*^)Jz-FJ)Env;Zz7Gg&HYvq_ATto!1q#$zgLB(AdbkkA_P zw=MZ{utZ2J^=wiv>)nhs&5mXmyyD5^m%TJ3X(6 zLX|P)?RDBWw2m(9zQ*?X8=ljJtOA6w9%%)idkCR}zxg6Ah4tDJlCM$Y^HLENokuLR zC+8a|M2aGCQw<_|8PX0O9F@M~P9Eq%zqZ336KsI$f;k9*ll;Jicvi& zq$(9TL(6FbViy7my9!tvS42Z1e@*HU!YuLsx=Re^hnDX#O@tVG$pSr^8?3C9$A=bfLed01*RMwCp2tT;9j z=H&XlnB?eLhb36cuaH)t9-rgGEbt1H(3`6L+km<6R8sBHk+mzdY^g6SZ}hPhH(nfR z`K$UgnZf0_TMs^H@eMC$qm`f({vaR?q)h%To~jPlVleZIot$$(JJ^h3p%4>zBfXL! z%1LA;{L6fDxFgJav1?Icb^I`cG>V<6dqXHsa{fw;f^shHPfFI5$&Sp|3_D-z8`vAt zxlgrcois;Iv3E$+T7I0>9b~gattIPnC3qL3;S(GFlM36u!@%ocltK{NGWwMK1gDz! zIO$n%e>mY_h^-a}O>M`GPPyNlQo$!-1MGv{LgKax75wJZZafB;yls&RCVwOM;T=oJ zh(B3@b(MT<1nln%tTjsuF&eA%2ss)s1JQssTQyI*imRVqaNu4H^Dc126)}P?_(9v2oG}N!s5Q4i#}>txh*im|p$3)C z_@K4UTEF^z<9?wVp+uhsEoy+kQZeGHQiNuHO%Ld(B!)Ha7uP<>n%xOP9?3vWAIXI2 z5||6!32~wnXxF8m$f0HpfoX7daCC5f;AnHS1g2>r3LxMj{_PTiyLzOlc2;fAPT@oK zut}EhJ84qw*z!@xTH%O5aF=l32~8**>cBu@gr-tNlHxdnrpa3tZMx_;S(57K4!bZp z0EkFbXl5woqZ;Z^s#1u8DV7US!VML{6t4lV6U-=G^HPhb$!J{ zG~tEF(ol`%LQL8wK1i28+agYM*FUf%Pm7zJFt2S%VJgGKxUY3$Je)^_t)H4!WUMQp z%mbdykp0kjgI*EydFeymCx*1*73fR@o|C{gl+i5YHS>54K?sBTwxtr54$-_hCPA+; z(KO&UC6yfOz-vxl!|M8~rN?0=IqkS5n<5;4AHJ4tP3(|(Kww`PKe}<>syV%%0l3}TLYG+D(O57=!0Mu&W53Y<>) z!^cs-P6kl5(lXi^qR~ps>83R3B|85yFxPt$n6^os^IMOfuf|89E8FM`S*I#~=*5sp z;a^e&ILDu<$G3Mm_M-BeCg@ToUJZxDM3|aBs3=LKU96s2mxL#AjGtMwo*i$FL+SBf54wZIILz^sb9|G@FG@{A zp_I;InwPW&)G#pOInH=u-3_LN;<0Qi{)w~VEn^3**g?J5rfuVEad28y&$h%wTphWa zh{B2S@ftgFH?4!TVIJ4TuI0}8`PlW#>=nML^HCix_FIM%ud8>4W#y&VjHg(`fJ4wp zW{tLl(Yr)cqEQEGy#fZ0bRt5`r&R?uIkDI9q&K;u zi6Ln3h$4zOX2Y@Xj}O>1md;S5IwOKqA8+F}S$0Y?Pq!tle~oFzM>uVRmZn)3dq^ru zE}2|l5Ak>uQ`q}{FHn$iL*x-Ga!fb6P%&u16=f#0eXMb!At%3B zLfff$NOldu07thFBFHxB?k7leD86^h)S>8`&uqC64GkMI3+4`cJ!cNa_7U3JwZEY4J;EN&k%01kxxp zK3e|UcmDrw35F$oB4~j6@#7fve-^s^zfEn*mgaWHBGzw+JsCl-xVLT7se^rlQqt z)|rgrf@RzZ7;u@4UL3dxi8wMtgJv7JP%m2Lgxp59X~-uV84!yORY`LVt-LeB`M$$9&M(|`i0k3Q%1u20QcHDNhvIsZLO5DS81GyqYQP*tBE$*{S zJ~#fd;%Wf91PLt%^1>}>l(;%vw`!HGs1PsL=bO44S?!oj>zC1L)a;5Ym+7$pS~Ddo zlANf>2=cP^{II~25#;AcagIvM$YTz(UefQ};Cuues4Gzy^-WRYxX46vLFPfcNRojK z7e;*osK8BC2@?#e4)Z8&S_aHx*RQ|bb5UX;ak7Z5>6A`$1*JzXNfALuMY`N*C7r3* zXuavO)GmEYg^r08mRNu#v``CyE7hGwmX44(T@xYqmCbGM) z=&9t&F;wri{y9KNgOtI@7w5V}FB&bf91c;)k3JmKk5D(Xo=2!r&aH?Tt+yQ8qK=on zkS&ylxm421RfQ~i4L1vg2gq?itn8bCN0v6#%svgvma7n%=KZXMuj3pF=|NK33BUA#w&<;bmYNx$bd^9O{yN8d zhpAv*Fbf{xsKVo(fUw$w@27Iy&9_1YmnyKULYvA zm^B%bnoX6S#0o@MF)Umo86mk&(Yh~C=jEpBi#&8v-f2SW9zhIA|4feqNg85 zc1CHRqqCs#NKJ6PgEHxt|pb6PRA;l(bwgQckwVRALaqMFcTuPw>LSsB^v&5 zD_sO3>o(dW;ibJPrbz%Fa++c=y`Yg`X(sHozmkrs$(y*yk~l0>1bb;3zikNbhV)b4 zIJFC}?!=SU>+dOE-y1Nv!b!T1lHkZ*Ff1WO3aJ*ZH`A?6RAlPCr68iCx-FhxwSx z%f`(B&7^!_lb%gqao{b1%j1pDWc<354hax1m0kvxKqT%;))M)yNLQ>T_nY5oJZ*Ux z(l%U*rmgn%jg?fHKt%^FRcja?G$i1vxh!~X>XgV#BLD9*=Qfkt z@(itd!jV|66QL!?A#stO#QVlES#FJy*;QA(^4eqaChz^m|Xg+bbRHxka zIft~~Uj7eye5vfYz&{*3;)*DqSXPtFWoiDcw=CYL8N#IsD_f2*Uq~>X^#R7T6C8Tr z_$fxv7xt{Jb^^R?3EHWOVX|$2xFiOV_#}qmpiPO@J|`p)cU2p;`Qn4;C{wq*OwfUb z#4RC;3p-y>(|pA;@4usYruviO`45VWtj0LPpDEB&mze?p_+0!lJkdN;R95dOqkc;o z9`*s;in(Ak6*F8-Q2tTC5nBTOfeeb)ybQP2pP8nGaoRPhP7B$cYP&}R?5Axq#-||_ z8~q4e@B4U8gpM{56J1O)`L+fc)Uxb8BCJ+-xPAwkdn0*@JF1P>i>XP}zK5g0OQ^-C zru^z3Yo=?Yhg4>O0fO41U_m}h1zXn}JglU|i$axO zl@nF*zmIad>`bCmzQ)Zt-x7&3mUqzQ4=-XGRv4FDUW2|IXp|XZJi&3T6mUnaQE~dU z1n;@`C~0oz0<{c=DQY+afd-li#t>jwoZo9sTO3(DLSpx6oM)U)_ZkC)3s{EIqa++5 z&H_^$T9_Ci*e1N7c_C%c)fmF8%wH*tUZFm1_;azPh8EpS#DM6AOv zxzH}BX@=!QI5SBmh|dxR!|qhRb+<#J#9%jQrODyJsTikdTFXGeMCABzU=MmMA?lp6I${G>AaCwST``q?6w zIJ`-^{?W-x-hdAi8p-143LQ(*X+|rD1!Z8kG@SYb@fv_|3gJ zESzcLCRp0c^bvYo_f`)c&Y4+SHR4ftR{5n=L-Qg-wAj=EB#Y?*#GF@)*0PDn$dCRthmx?k7*CNlh_ zbiamWj-2RA1r#>LF9^2dc8`j}ES8et;iLc_L{2zyDrJkK*mJR^rvfSPy*dgnU0bJKfNqEZdA8NnC&>Zv3iFDW@=qM-8s1a!$ zo`l(N1@6oO-(gPhXtA^VY+4%CN8dX05Nr{1ZRIJQZS53y>b2?=1=G_;(=MpQ9=MMQ z-2XlUXSfM{}@P=rMI(BV*aMmbJr!)Wp!bs7Xwf_o5e)PtDD0%S!>-?knn=bQG;soLFL zKTvmI1~^Km2S%IuK~D(e8uQ(p5Lzch1q2@B7F-B5F{zM);}|X=m>B3f3Jqj?Iih&J z-qU%FhoUbcCgN6zr}Z&<-)fAF@wyF$5$6Rsl5WMvAOtBU60RonsMrFXt9Q)DaKOj| z^Oxd#&PE0Upkm+ph>NzMac-VGD4sk(&6dP58BuleOD5oIt+SbZ`)y<2Yh>#lw@)y_ zlOM0xKe{yat1`9>8NSy20FukcUJFm{5yDbvAL^~mQFUQWwYl2`J!Xl%ij}oomkZ7T z%=4+u%Pdb5QH$jn>yBOHY}I;*p)njup0dfL`|?lr5fphEB6w(nGsp!2qoO?he1rWi zlRl(!9#`emR+9PEsu^Y)x%5vK_GCE23f&z_KGZ~+H_W!5-OrdU9wOyS+IWBR^JumO zT#RRp*Yvxzji>!|vOW15#SxZ@Af-`Oh>7W?`DEj+;JMZx&9Q8C0)5EHLs%Qy!B`ZD zv~f`CY6h7fs}#vhi1+Oh&d^%Ojgo^Ui|8eMq!MPDrG~cptDzq_hpn3CC`x+?7hfZm zc;2uUOxP*x6P4^}Q5E~Hiy%?l%y3mGrTjwh$9&sF?1-AvHi^90<7+?u!=}DZS~5EM zef9Ff_#dDUz9r)Ss@eSy1+7^lTpPz6^Pdm2X^JW6I4};ePC?>2+#F#{ z=rZxtu;Tg{gmzQ=!|~!D#wYytG|)6LtmVQvRM+MN){*IY>OF77b1E%ZJwPUqjE1KMLNX_h;_F= z=X-|s&Jcym{xz{si>gRUivnqd=asVItUaBln@Fay5|^r`>iPk7YV(*2b zR?;AtE1i)(isF+$Y#FL()pAmw&rQqtiYy{r()Pd5M$Kefhzi3s%>9()#Yt4tC#{gM zN?cA+FjJy6Nhx2-BC0fxz&N4QPLl$~YbRT}roa^hJRIgP}eC!^qE;7&!HZM7s# z;m4JntDRmjgjHktME5Ih)mb=mWaTGD!dS{DcqTlRltxK}_nqA8Co&XefZ8d+$}G}s zERx4oKhQXvqdjv7vQWH)<+Fvq)Fh^Sq4HkPSWtSl z=N7>kK>~hKQy9?wt@Dp0;)|t+dMya^$RYuKL|xAGmnK59*X$!Es@an!>WLEfK%gdQ z_8%3|8CDnZ2I!;QyLbx^vES1IZ%SuOk#0^0hscN^h*wg>T%w@{>7# zM4TF78_6u16pAOyD6@%rqmxsRiAP2V4ZYaQ_PvOH{NP8u3l78IABCItuo_ZPm6Nne zjh`qP2h>uAy+Zp+Ve#_eBu=&QIqUSzihSVo?rCyT9;9**?x_>`M(-lRihiK=qTG9Z z1mrjW5z3!Q#O|OFVbu2&{Xp^~ihcKnL%%oIIh6EHAndrZcxOEp-cYd99MZp2uK=e< zz!s}0 zq^t>nsmgAj)>Zr5baFNx*(XA4l>%Rx(Y^s2ZQE=qQ9@X!^*~dV6#HY_&i+qRR?&Os zmFb+CB?AWuQli}4@Q@b)uXZwJMfNZ%PGc1ulDSx^u&Qv-ATit~x^3IrVD{>Hgj{)? zASWJfqUr?7V9Iz^fgHfCKiHd%I@6hR_sf}=kF29SoNA-WS1jfd`sG4D#WlCFr!vm2 zb|%~|Cvir~=^!sL+_^wq3fb@EjLx~n?YD1{>ABYp7YrpnVTV-g#3Hio@Kr92B-Qfa zs$yqUjU1vjZlM!oXXD~x!+t9;f7PR`$eFizBIfV-m9vQen=BR>)kZbYy}aEUL~bBoKQ$kM4wocQpmu=>oYuHSR@=%>&O7pzJN~30Ty) z86R55*BfaJw+h({g(IcKbW#ysYF+_!S$cqlH-W=0F~}Tu*{}~{Yzq%fDTklk?O7C% zds^jD?<}LsG9*p5Es{`PJfqkMEKpeSoOV+2NTFk=Uvf<9?;hhtoBB>dN`!rP7wYQn zJ7qtk*0!>vx!-ub!!SF~PM*?i9&(TSOy{sPB^6JN9LSv(+uSnYKk#H`+SrDucURK2 zBw*3MSP&FuUPVy+n@iK(xSB9bc`vy2k&>M{-R{tdew(m1cJOF-7?xd&{rLmTW<+oc z4rsn;lg!&Y%wAjk=H&eVk-@*pzAN}3x7!tR66*cnnz4J4c`FJZeI5$=*&VHRGXVdH z0M!EA+{mn;3*fcMy*#jf1aFBSa&=xj^LIk#<$zf$r0|qPz<=6L^Wh4^up71Va>n^A zYnX@7X@XW+gi)BCuQ6DDC9R_S*$(S+1QlxI65|#3glEzXsd+2JG{h)Djbjnv--eVq zm|p?Dg{UXsVlB}Y_5-$+HqY$4U(IZ6#DX~7_3q!2bpe6HRdoymf)_LJO5o4@Lma`m zA(r~08(3iz9}tCPzm1Y3-x_||QKsdG1BmsBB75xLN{vnYoY9U-sA=QR5TaECBb4LZ zLH3S$w>@?wl$$<|{#U`ZY zCb%Zu5j7y>oLEpM#^;w!OzW(%cKx2K`d$7%zIm*T{f_!Y7vtt@F=o)m)>Ij8F}h)k z9r+JDg0JE6F)$S-4)GG=HKD9ji3a$0hVY_ms|_bs*`@gLc1x^ULDh#|MPh>HQ+?9) zoPYyQznq5Y^aZ3}*MC5F4zxNp<$Nkr{|2yeKQ%47=2IZJ#XUPr41xikbiWN8?jtUH zP1&KibeIvgT*@&4*B%fzlx7Adc(}uGSwvV^`YWeM<`}p-go6Y|Z zuFHRpO6s<5$l|Eq(Q8c-YXz$V>FN@!WH8ifE$i?NFj>)`B7GW}Egf;tn!2tIZfvYR zt1Y?j^?rrdp<|Y_=l4#2D)P5i$U;ye1<&@sxS73feQtPO;J@BpW_v-pLUV)Mu@hlR z0?!1Q{H+CbMx7Dy55<0*{*<^LlHGzaf;cB&8iS~ZY;<(t4htHi9D_s>670|NcB1#6 zT<9wWnUc<)Et)$8@g`({0q`i~F-*sZ$)0F?;;;C**lh&|WzJnx!0i z7+#uj_SaEcrpL_5FqUG{nXl=q%bP8pFNuA!P9`d^qfLIIbd*O@!}W@J!zD((X6sNf zDmPF$OwXz7Fw0Fw9P=M|*wJ5-=CC;1MYt+uP^VxivFQ^q>N01+7pNs?#?T)O(e4j5 zhJ0j1n9^OCuC4^zrH9vZ0(**@1y*6F&&X!ml8IVjwdVH{0F_0UP8rpcKA&~+H0Qqt zlWF&zmF+i|;KH@*SQqD|kmIUyj4DXTB}ayP^nA$XDAoRqot+pa3{xv z{WsA}yaM^7Z;WdbrY%A=>D#nD$0#^+tZh`gmmeX{fU2UBR)?yh$^)z(2vFEJ(i~28 zA7FU;t5d1buMX2=CShw@Wu-kprK$2ZkX~IYuKlSOl$W#dmYl&PYex=0?a)?ufbCs* z!0j!6FWWMrK8)aAae(Pdl0c?SRCYklW18lk?K^DWqWwgcJtmEuAKw8-&K>?&w?MLi zo#^3t?WATOW}CpnI>7NgMu!1kMdD3_&WtAB0X}FiW0FwYdrW#MYy(ZAYST+v z0*i=be?#YlUbRb((x)jg09#0fvOa|d`66@r1QxCk*K44|{(uzxgq)GHDaD7qO^`5u zfwrTgzK(MjuX8Kk*ZDHqW&Vv4DAL+=+~q2vCSjDJ({Kg2kYbr;>BoMrjIXa5wZ#q+ z(QKON=eq6`0T!&ilFEs7O z;x?6d$nK7w9f4fC%`tP}MQ3x(z2IEA$=j*q%%c?bCdS1qUUboiqi{gGS3-@9#ppy6 zUr0hC4O0G*s*xj(;X}BV!L`NvbOsG3+0Z|0f5GXtB|tEaqa!37{WhtXl!0Jc2>>tR zSgOtt)M6nYVNvBDj99kR2V*SYKkMs+D(~(05Uxz-HQ@WPAgmPB>#YGn^oSE#TEjQ! zYmE_izu`lH-Q2MWyQAHiw`7n;kD6{bMuY8<9H)%5>Zc9?G(!yjFP5v32xm>Xa&-H` z2@(bcH)pmD^z@9V@V%;oJNI{Sr+V;%m20gtlX>FjnoJJAyv83LW?ALyLHL6w@jk@L zsI&8*SMz^01$2mzA%nTJTbJSKJlS{$%XbMZAfRpa>*Bor9|!rtcfGx2^pAX%?=VL{ z=8qpt|AXz?|G^_shxSHY#{Ad2Eo`02PWsuueh)Ardc~h{%uuCIbqCbZ){7 zU75Mv28mcDp>0LI5~OAutyT@V6Bw32M+L;HX<1)eTL0FzM$opt^(6e-oibq$hPV6k ze%<5ou;b?U@1^^<-p5^dDTqoq5&MWiD6F)7b|8J5;pi{&8aHDmJA0>lF>v1;V~ z#s1W-Hq6$x{h?|(Z%t$$(SBRGN6DVe?Y5u#$%EN+TOpm>uUIz@hnH>YGp_CR*j}hx zrF*{Q-}PpBCcBp-BwJMG2;=*P-1auup>BI4#A~Mmg=cODjBgG4$lim|V87bz5o0IU zebICJ2swGqN0i++LI&N%W+XmnauNq0V0z9+bgtqCTeI8+`CcSWh?S;VkFU5Lp9`{l z)Tulq`(L))F?Zb#AQ$%WVNk0qY&CavRvU~|oou)Nj$D*n9J@?|n!$qEPeL^K1xWy{yiI^+7NfrA*|NcmxaJm)Y!03Z&7>zZ&paHB}Ib{?m$bK zX9z8d_mp1)D0nudp;9rlke0mB|6cN>iF7RI!JE(I6XWA`akF5oraNN)pp_C|QX52c za4Km>hk932beEUsKwjjAlS^2(eZJ&ns$rQV6h%%3+^ap=0x6-u+S?(Grs)7XNa+aCiOUK)i0Cc`= z8bT#j(Dzgta$Y>li`A+3XL$wfPHm66gk6MSv@YC2;V@Pq0#7kFktUg|7WI_38{bld zLN1#Y@w4T?xc!wa()v4CXlh6YW0knug>a;(b)3WY)YM4E$vv@O0~?y56oj^0RIay~ zmf<&xkVn{~UhBtL_SM)1SHGP{_j8z{k4qUFe;>-rq5inV&Gpw`( zEhBN9=b5*%DoSLSGdv)@*)&1BoNT>XYu#zG*g<`&LZe}?8Xke4FDXi#0aj9)b{Qnt zEe)$C-f^%kBhX+|Rt6ILu8|(}*TTo5P*ZQTm_xluzvSH*#<%K#++B2IWuk4!I6K+A z{FPF}Nt%hW2y{58rSyE|Yg7JNvmj;P97a#|-swYVnEsv`yjSfW`$MhYn#wnHm)c!- z82=6!!G9nR^Hp^~@1FQ#Is#BKSg}v9gol8D45?@RqlVuAYNUF7cwmGFZTX_F`T_sD z{FQr0?G6F(Z>SgbLwnfoP9M~ACF+a@@NY1a>MK?qwTl>fNA)g;#9hB1k}8I%;y_pg zfOAMTPX@*wB8%jz$}vXSP*iysN>v*U8Q3MN5>JbI;MPKwHBb!0zN0>jkzZj{m317Z zqZ)}JxQ4g{W(@0JZ#M^nayTNS%U>CN( z`$rVnW#9`0F1fgC;4$_zdF^c$bh@1LnQ<5+XRn;E`|H$OXmkmE78e30KbsczEtOZ_ zA5kP_R3?~puG!~Pwsl$^MVVt&C9%SV$0?mJM$bs)2J^*eCFDDwV*V<~^O$XgVM5Ig zm41+fPYFdYV{x#FHsJ**E7{K9qnb?J)OnUhEHt5-4mJtCS*Ab-X}JH81us6>DBp z(p+|F5yXzNO9SWE_Ee*d^tSZDjNIK)Y{D2qQe4~EES#jyw+YsbI4bl}B|a^9qOG2O zlAUDk^joAzE**6w>|EqX0WFPvl`8x@)g{-Ud2t$*6l#bSorBcAB(pY_w8Bn%n7TIn zv(a-WKbiQV?@V9JkWrIHSzaq8bir@SO%v-4v(LsNcO*t+K-^T(*6yjoBzPrz08Rtq+f(<_+NUOybF zQ3+wkn8_$i)lp-d75$M+-ufOgo|Uy=WpOpU++c#`PLRT1hI7O$>%aSd+HmC!r?5I( zNkN`|jNth?he^?+CK*$iA^b7RC|*!vNsdr6Y%VU#mR_KXT}@0Bxaom7Pa?nl!4nF9 zVgrNYmK8x&Gga*Ikf6u8KO)+;miJ;HtAzQpQ>S0+!g`Q2rRRO0t%&CN2uH*h6#SDy zCa)|%D<($XK*(4Wv{Ztc4D$;u^9yg_h*f3-b@95q#Bw+-Dm=wfbPCg+&9NR4r7ny+ zGJT#D7_P_BmJ{UCmgJ2h(Y`Zwf;w_eWC5%ih70C5edYqkWziNdwQQj%g)28K^{Mw6 zH~9^^c+=0iGY*}_wX1k`C$qZ|`tj%BnoaR+Y_PtXTl+=e@UNv#u4Q%XKRwpkHjzoCWR-G$wBH9t-MuF*?+{5gGB zFekViOvh&YA=5WH83ui-=+yp%i5E=ag%e61Qi3oZFhxdVz45Ub<0U#nRMw5uhTg2s*>s=9t%RC>O8h`mjf3{#l z$S{j8X6Y5)c-9Y7MA)ItP;)X1vOyeBPyxIX_%~buEn1_0Fs`Rh8siillJNyoeCW+J zTe=-@)-G9@Tvlv(GJi4;_dx#2+$xv2Q7Ll8@k&g3+c|WP%8oda8#b^MGm|2*&=W9h zzaNYL?bu;Wv4?gw;yg1`b8@q8&Q${7wChpEq9%8f*gOvsY_n&NAT5(n@7c7c4G@j# zB&{xPmuuFp_NJvs;P0^^>Nn+#dqg4-$9@~Wh(Ru>jrD5g=jNE`c&n%GE=+V zqjhA?b*B<+iSE2}@cE115g;t;@dSk4(cq0d=y)K#-y#3KXF_%dK;CoVjbazM!-n3m zw11G{Kjs$T z44Z@wzR`)qOGlAov>Y~~Da@AYK%au9=jhr`ep~|&3?i<|HPTu?;|1^N`&fg1#VzY?+~;< z6aRN1l$VsU+~AuV7>E2n10tz?V>(R!3%~LI4MbA6cK;sSedS#f*Qey@Xuve?0xXam z2LUi)*mjIyP-FpQAR<-{Yq$vk({^d;Ap+LaTH3ah-4e|NMwZPQ*4Bj${wjG*dRE2i zw$|F(S|I&=pYy%d$vx(->^5U!_m*_#Gg%MWx1V&kZ!_uYJ6<;!{^zfu5y+1KW3rYB zv&=yGin|hVKGIBX6>qHE`+Yh7mctsOt?1dm_OXGp<*z(9st)))dxPjcYx{$#-fNV_ zJymM5HFL5IDD`BI{f#$ zFq@w9L0jsI?+5}aRUKDHFV zL#$wk>H3?<4qMizyTr69x=K{W3od?-s^|BL(xepl?jF!xlRwsSZ7( zrH9T;1lp@oU>=9rj_UyoO~nUlEFWW;8oVnyyo^v`#b_kD#blOi@FGcKp+rO^wt9(H zxyKx$Tdq}79^1(fr5mE~aA2K~3&3<3V>tYzVWDY0Dg`6zaxUye7A5`Y&SIwFTvs$W zPmHboq^HgqRI{hqAYfpVy5Dpf+fiDP;ec12?R>OmYAr>M+ZuCwi) zv@axVGt%Kwh?zePPPt4G3B%}K0N=P;x3B?FFpxt>NllXCGNW0QjCLf(>3KL$8vR*0 zk}gj`D+HQO%IF4~UU8gSTWdA96t`DfGW^h`oQ+Q=Ug&Z+f-N+8 zxj4$!pkm-E7)5bNY-el5oHvc>9uh@{`gOloQiK`VQBK{0l42|pJ`2wz0U|3;QXO_A zwdA6-Of07q>yoDH@FwJF1`=^By+|gv5Ycb*z0Nk>n(Duq!Ngk0Cw{m9;HbnIQ5xbJ z&MVl5t^M?90^pdforoBv`-rG9zFCD@zY!@P=zaPgb;}7^Y4{fb*V_~ad8Wvz=`k1L zw%cV>lIvK46>ANDoh(qmi{Ih&|1EK>l_~aQ`j-bRe2ou0WyKkExQS9*Y&n-?Q#wv% zq1SHh595H5vv_5cqk0Vo<{p4Y6g`O|Z+SbEl5;5=4CN7qG8UgejPMwyZ$3I7BUJ#= z?-vNdoKXQ?Rr}`dq?hVBpM6`o{5_Xf!tXnLp8wi?yk<*pIA07ds=05GDR8H_;rT}^ zL5+cgNl_-)*WFEJi%f84+JlrILWBP`X|LR2f25=@-C^mi-f@5AZ1P+e0QvXe;r)hk z&lJ=C5yJb8WWszE?ALNkcNFaZc2^$Uy-xu$b5!o*?5x=1{f3emf7;)g@tWoJen~%k zpSAV77(n5k;cx!DD*Qan^_hCA*#B4K2}5V$4p|E;^W|Tit4W~XGYrUC$8A#Q!yr-C z*SHEzVS+H@aKknxBXqLJYcQZ6M=L{8T^5!~(oaxeKYX5U@K#f4){#5=Yn5Z|qK@^Q zrJDks+Szz6i7}<#z|LH0VQXTgv9mJo`=g?28G$>oQliEyS8Ix!=@?QFg{Z5OROjg& z>Ow!Q7l2&}M9XFM@Sb!-o9a*M*iC?jd~?jpZ5RY;j@ z8gGzxou@0pGf_@B3hSq8s>4h-*j?RCTnj=8N$3USH9&pD{1>9%Bf))Eqwe|2HQS0H zdQR}u$abots>jd#jTk%5XR5{Xo~Q>+$YWi(Thm96`b;iwus?YHeB|-P`vxB%z+*x; zyW=?Wh8q%Eh(-!o3J>jxRQEOo&vaTG z&_kzY7S~I)(0WSCAz~o*s8A=n8M3cb55q}!)EmaLjN^nO>ZtoA8F&G3+S=54kKj~y zS#qN-L!X@#u`OVi8~o4JsheZ~&(1cvynCK^RoAb(?l{Nq(f66GhquoIA-9<|l)!3Y z@>jv0rTepi$#tZ{gNBkU=QkOZW=Lw-oZF}CTrrd!wN=_PnP3s7# z2ueTbIHQ<)iYh)?{-t6I)3eecaF0|5z818%cn8UH`#_<24UOtnq(Jqn@XB2`k0)2a zBc?CR8p1{Af}yDa|TaKl|i702!6{R0DsZ6qCKe*#86B6sm4bTJM1 z3UT}DK0BI(?r|Zb&`&`>11T8QPDa)<*uTnUdVoi8tA$wuhq>HlCT3Z$t~eB z_@(=7HcIaz2G%OGks!Vv2bwZ7vX4*)+~Wu(D9NPD!3^x;rW^Zkb2ZC4kpa0)+1Tx! zM|;h<-qEi4b3xjW*cqy7if!Ru^ETfX=3(yF>@TR1xUmE*FNXAM6{SPZ5-+S>v$|}_ zh8Zz#$$8m78%4K1TjJajsofSQ7sG3@r0!Xd*W_;U3Eia zGDA{~;FTg!tzi&VXtZszBK2xp0WL=5E0Ljdq|f=5RObM3VZ13CTE+<^HGlu5NJ zN)QQC1g5Vji$<`P_%M95NOdSw{v1~@R}E3OkXoiJTy6&}KeotqMQPTD6z%YT#5z_( zdJeO0g~&33d>&9&8P_6G1QWChQk=;i=BkB4c|9Hi3bZt(BBe34Di^Mg)fnjVo*w3h zb3_PASY#aK1!M)1vSJmi#;h7yzeJuFHrNZ+=)mmFZVVa%)QpXfg_Zg)RD$r~#|j8h zhjxQy`44)_j4!+q*kC-i*QLMtA9{_k>g6*!!weLdX|aHd^HzY@KWkZLI{HO-zg({u9gipHQ}J)iYHTRn+fpQbr;y@Ib4YGAQWCa_4gN zCJ=~XS|WZlFNR1Z@wk1(lHycbkvD_-lzjnUQ2a z0V5+W{ZRlzb}-ahOuX$f5Lz-|nvksBm>r9m+ZD{OPG*##99L~b9x#%#4AuEYF z83%vOhe_F)y|%-uhvNvrs88r4b8X!!fHXAC< zjIRQ_7OEsJbj<-9{>xR`?LB^4Chs|qnL5^2eH!S^BksVrHjo}C67>^;|cQ2Dk) zVwp@kr7+rX!GCs1h9=Dfg+!pL0Z*<^&b6fSL#%L$BCr8PDkI8TBowtSazZ>(K3vmu zn#D^w$@X}%;%*uvEN&?QSju#ffL~{O19DHhKYNNYBM)x;1Ch)+1Csy;k<+I5__UNe z7@gERh@GU{l&IFbm?+n~oTwjmnZX?aEZ!1WFeR9EXZ%?aiqLqwM?oxteZ!EP1Y|aG zw!GtlZA(P$*4c_@r=(4o!TxvTgFj^O6E9%7H3Fn4n)LlmLY@RonB;KB!`+vsoTYCV$k*N zVvq$tM2=X1>0)JKGQQ@>M4IL{B1{d%=r7D*d3omx)KZ}u=o)KOB8%iJG9o5c?jOot zEcOK(15RdUR`xBN^e`6$m)tM_OArhzqJ9L~rAq`$#i>!tsSh1lg90Qu#yfzee2qQU zR3TIVLu-?U9`)9m4r4H1A$z)5B^S97F7dW9GF_|QaXcy2a}XRbQ5YqYIf6D1!6Wz& z_eY9L;wfb}i{tb|LRMp$vMb2Xta!0_j_Q;_&R|e@naMRp@L1ow8q&d*E!CU*)w-I|E;m zYdMx#y~BQywT)uzsoPk;qZ$9^Dt(^A_6uF%*0_+5gs>VR4+>YvjQ5AE!?1G^peW4b zkb`y+WfWVZ(Ep8esuL9GV>y=@b@*m7|BE2 zI$f2f4MG*eP~ET5xi{Deba`?7nL-OB94$2=Km9sGq~)j>WqSQXw^0y_zw(`3K^=E7 zWJ|F;9ynSrD4Do$=~p1^40@BXfs$+N_-j6}(f)W3YvQ4l4LU%Lp?g2m z4v{%keG1^-%seyl8g?nfwZ)@q>DwuNg6P9fc(eC#PmpZ4usjEpX6#VAG?yR|_%R%} zG)_$WFF$%*qNNyQ&3f|Uv+I_V{>n4;bSFzqr{;te0J!FqLNiTfv_Grf6 zF=Fh%@NftTDaM$MXw?JsXi12CsGA#R7O;1azmpBaS+J*ny%$EEs2C8^ zlV7rPmCo{=aGh|qw*L0@{s|*k5kydHFeHIhVM$?Hm`qlV4?+UGQvId8Bn(93-PHX1 zKB7YY{i|lomrHQ1wdXBQ_LpVXkc(Iuf#Jq!g3EYt%RTQaP0Q!u=3T8>JCXuqA$#(I zmEAV;lXsPY5|tx_HZ3$yhZ!SsZjR9&DBJj%f+5>d&)81+5;;UVt+wP%iI#9a?s~KPIFlz_Z&rLcGT#u$q6YohF^0cwY^GZb43%E7ML}$?yo^7+K}(sL z(1)&$C^R2m1!nCE?T`-#Jfo`p_NdM_4ioW5GhngsBYs@{FW6~&(*+EAD*bkea}e%5 z1B!LCx7q{W;fRBD4g3t~g&%B1rmw;;UE5W2(&H z4`V#@v#;R|`9DvU|H~R}t(>iGl-%w9%NCQBwjEKFQNOn@$uq55={|v^GgXFR#3eex z$_wC%35v*&kxxs8!#Eq^HXGX3r>)rW+;7FdkafL+ok9YBT!`t1;0KPEz-%`hYr4x1 zS~KfM687X{=49vh?#CNUADI_MV3Z{_dVP_eM1MmBrwV6#4PmK3KXt3x#UR{KA*Q1E zOT_M06mh>hQ3UjituWKLyF9=6Fr`ZSv9-*#-L5k@gy0Zm?Mb91pfR{Yby0fMXUoaC z)}|e9a<{osMetuhh|UAPT1?LY*K~%ak5=nntR%1cEX~R4Me}wg>Z6p1AeZi@daW_0 zA#8u$X9t_c5k@sPqw5S0mO8x86m^Q#H2s@4letH_5T5Og%ly-{>lhobo~!Gre<^Dq zvep)k<#q9e_m7_4DQN3#*(J+*W2B0FJd-p|qcknrm1|Yj>OSjR4yPhWWyRJZ$47TC zirphv^lr+F>#W|HgRO>RHR_FR*O#f@=%HWMZ4-vq<3=t6Oo;SkJnEPR@SHHJ|%mwQo@u z?t^-j?bU?T$|Lz;k1*B{^^b#5Bx0Ika&MgDm>d#0OAk_TmhR(hE#A^yvjCi2gR!-p zc~j4Eq)WKDRW>|~ltIt?wN6e|a2w~-ew!zE$dA|dUVs)N-KeqFIF27O$pCQRx>_^m zve!C~6V9bUx*S0EzG3Rq@+qifY;}#8W;~%0Wt(1wGG!fPG|qov{wi>UGL?4IzysauPJk73i@3Evoj>VhiT*20lCwr6Al~$QzhkF$Ty!!ObT%m~N4B02eD9N{SdV9aR>dP&MSe$lJ{G z6l1`THi(}n3kFtS3~CUGD2lQ-p0xRttZa-9fSqgyD=0#?Fc4M`>Eb6Z@$!goz+m^+ z+o!-m>7-e0rzIQYv>*M`WJM)?$_(ZdZ)pHTzHPiZ|Stz7hdTnX6Na= z^qo?1ccVL!yWFy;#Q~j?PGB#Q>?FN~q2Cyuw|-u=d$1MGnd~Q$+`&RPZ%7`2*5D6O zpVF0R7977LD+3rlVE?;!7@E^h6!zG1Py-DP;V_8*szal1gS`NkDXKDe(GG^Wx;>C>7Rd7dqA2&FCF#7Rx?$qQ^>m zNsAjkKd8Z6b6>yG$DTxJu&l*^eMa}x_g}M)H=Z}yAFs2ry+CULn;;VNlZSA?T&L54 zaLAsIcTmUq1Py-@fr0e_4dz09{J6+@gcBu9z|;r4@Fzt6MR*y0s3Bme`_e6rLF>53 zcPV(b4{oC|hF0Hge#Tb6qx5-X7&~3p4@o_<8sNU+J`HicEH%E@N?2$XMX&+H@@ebJ>-M; zQd{AEWVEiS(y+?AbZVo)t3>9uMyAsz%okZ?c?hG+VmXY+=6_RyXe(}TzB_4Gfqw-Q z$}6L(M=+)3Q23oOby=z?zHM8TTls(_nK+0kvLH2>TWqjM8Y@@!B=VPnGdGhR8A;6l zEiu_J;)#XDy=QeEq2m_7w!Ys_Dw12^Y%C-=<)I91x|;G+JQ={!bjq3VV+BZz_d6vZ z>%ns2DJh1>b@2=sp_#TT4l)Xz6Jc;wWe-1;q8jI7hnqVLc#@KiHiu!O)MGUhTkP%E znaeX37NOn!;*Bz;iIpVwdigWNm^<>pR~7b(K^ozkXzM|=4`{EuX0oE@ zkj?=vd9y6xs?10sB~sY>JDN#dKfJrYeQ1qwN7jRU$5u0c%m&GgrN&F6sJ0M#lNTDT2 zr2A?|FR!tCd~24)qE^B=)ju7J!xFj|Dl#u55|plaI72yvddQgm)9IXL>IC)8^786uW)QO=b8 z9vRl8_smI$RJ@|-7mK%U_zb7L+|*83S-%Vh9OOg~i^tN*p_alUuZR_0s zO!m=`a#UB_aXbNO9)hKT{Z&~)Uz|fssA+^(vjPr?3p#k^;MEWbMo`oYxkCF;DKhzG zo`B&PvO_y5z4B{b>*T0@^8;T5H;dxQ`OIMj8Cr(vx85vtZ`jW4y0hh$ep_7pyrV@$ zzhiLlYjPD?{d9WQ_9xRM7foE6fI~Gde`N%$FH)6nMp-*t5O~Frl7_M^h-9L+D0I*@ zQ@b4s8T8ywbD2`;lZ^H(r^*YjYx^pO{*cPTJxMti4nA*gzUsMB*AwMcdj)o>2^sm~ zEFwBns`{CE=j_r`?WJXUNm!<(mAEUPrbMX{O~2wxB$Znz^aTk>?rA|4J>p)A8n4xC zccMC@-1|8Cx0uD2ds+iaQxw|5p*Epl$gdQh15d?Bv?koh>UWl~OlP^$WJxWsOFEOcx0v@*4t8Fkbd{r5FV?1B+ZRmQkI*}sT} z0LEdfcD({&EHp-q3S%AB8!!Jy>T>*3*vz1@4W|CsN%K!}^FJ}G{vUQCYV7pij3hZ> zQ)2KBV#xQ^{EC~I^~I}`v1b3?zRaD7Tu_DH@Ov}8GugOAgZW)GDr!G0L0>4c>7qcr zNEw)kE5*a-`)pmV?hOHuOI?a6b|hC(ozZ{;I*oc2GpYBo@tRpvlBJ{QuaKN-{2&ad zUJ^~>x@34O)oqy39;I#XkgUHPF`OqgdX((f?xCCT|2A9{-xn+u`Tzd$P#{QfXm**7 z<0ekiuOQ;H$M4`6=w$|hP@%ila@5Um{GGnw%B;7B*FU3vYUWPNy3V~kP@GxaGN%ga zT5LhLqRV4|Y4Pa0RKvngP@yVnBz2>5J1E!wwi!z`$)SAOI#kb!LJ9ZOY>Wu&9;JyX zI3oa|9&+V78>(+hdWeBAaH2t7Tiy;2TD52>z6dKZC#ovSbI)&yJ+)R~Ha}jHoNo0A zcgaPanU@xxpf07*Mz5aWgGN2$LBNHEzsVA2l_7%RQq>Mvm`uX5JNDUXoo8=dAR zCGm{kRxkdR;HP@oLpY74&Pfj{DxpbZW_0{(H{;61()-QJ2f8*ag2Y9O5jPyMq4Jn}3i<`@mq^UX+ZRja8*F0-P8gTt95G}ZsBHZekQj(2_j^ojK6ym(ctPvFIeKh@+M%N{1{7u4(YaV=;roRD_ssk zVD)Z8hIGk0ZfYVY4C{HP|B>Xbh>+gkgTB3XYg8*ImYg;B;15+pN9_c4v&ROdB$&&a zMTTed_nq!}%;6>S{?LsAFKpu2@orFtg7MUQ%YtowSOqwWJFFrlqgT3H2%xc09M`p` zjRq@9qdOYzErjbW6H8+#kAyg%1rj+Fp-I!JGp~!^wEPaXs{S=h%J2edq}wK~q+9Aw z-aTzH1|>@&hTK)_ducm1v|bZdr*a zvcux+|DvT3cYTEx`>~8OnE#of>pwlg&yM*2n&*faTiF>q{4bH-Vij#U9A(rm8$xwt z&}cO(C5`fu4>PilB!m2>5AY0RWK#bag{H}dgy88P6|+C}wK26bYp$k8!xW}qrfD&Y z<=ze=x!LtM|MBv&&_jk0$IM#%d}^9&*YyW^le5+6>FWFX9{LXCVMpT!d;0GXu=9k{ zG3NAVfG|l0iUybQl7e->$#0%AlZpKhScs{gDA7kiH65NYqP~5^gxZg@go|{a zBFTum&n#rx6L^YvxYGQ0K3557)L$~K)LZ{PInL%E)d&-fnP4;)oD^qk7TcidEQ_^@ z<{GLBJa#;uEVfi-K3)>dn7?KvOvN@O9F7%!rbOh7YU;?6lRu;VOoIX`=NV=^MW!da zg?iHnx2dHEbwdVuUtwchC7mj%bopeqX|;56ayduwc{V{udRV1q*C|+~ShT;f!)$`m zM~#vd$tkH$8RfB=5mmF3DI;FK3xzw#W-+xB7Y;(H(aB;1Qpd?tK_%yt@{`Qf{QetB zBs7*vTKs|>@qY-7|I!I(&vA+hGG|j?k0~q9{)nrc6k->I6lAimR&ZlEst*JN;qcQQ z3=(c2!5@%p0R%=8`o>LD5rYQwC)=p_jh{yOo9aEl(+OGGE3H=I;^U5iSi)Ai{cs_V zI0;9AxuA3HfR1@PG4ve$rh!|)LRatkyT&cCSKK|c^I|iQ*DWQE^c0DglEm_<;!9fy zx9EWU^`;n=ETvMdHJiZ&iha|yG?dXq^ZtP+z&hbqb9?2!tQhmnl0CM#(hkumDh_(r z3sG}tqMuf1(WI|5n2dSs!xx_{CyFTyw5Q+2J1OmHVZFlh(rg>2+(@+f%^NY}z~B@13%}No&dS#Ezsqm9 zJsfj*`Q9fiNA>yW@ozu*77cBTB7zUH(Tr?jSr(19j<>M^!fPq2)T8LWulSqXy z^}$+>#hA&u6FrFdic&k{@CE1xivI0*))wh_2v7&zbgw5jS+q2%T=yKEtW)vSew<8a zHWcok^B-xZgyaeIJ>L7?*X3D5|AHItDPD6$^-MI_RlE%ZjXC_Sa7zbnt8j~g_K`LG z?^ZW#x)$|4+Mt(5jqW>;@>{%rN2-S*@mqNQQ%x2)ii%co|51rjR8DGIiTSi#UZw<; zokkrKv3GjNmgRns7m``IfvQAtE+n8usam^aAtwiql47)fgc1+$(xVs!Je%q?K!Hjd z?-HmuGjO}$NTGpe*h6kEF`*l`Dt2KLSf@BP@JiuLp-Q)9L6?hAb6gRAN(F)vlnS$m zDzLG?95A1h|A<>c^{V8{xlEm>LBeWGdK^`dHIEu)Ul*EG55FRab)pwbb4bNbq?ulZ zTSk?5x;&o57u@hJZ$&*^!j-4N6_&6_Md?&$nv4biRl&U2ucKhXwZ~VSTY@V8w4THg z>hM>gDlNbro?S5gM(>7_EJH!UHd)>P7#tSQs@0(m)JMPtGb(Sv0rFj;{Lh6vHI;3= zpn4Q}krI_;nI6?}ihNyGLMZ1N$3#B-OY+etKUb82BUMX4z#yJg?159=ZgR3vdxk+J zr5)Frj&XC~m8wOV9^CL2YL&B{u=>efg@PowGiqgNpCC9Kd`>a${@!{-DhL4?Q*HJ^ zX(|q0S71X<09;Zicy>}W{EqOtP=9>VP?y#*CFD&$u5>@s&!K0cUTBXK@}?G7wjUZb zOAK6%Ta9bHKa`q+CrMFGGAdi5ej2_LaehmLhxji6&hN>+B zrp_tFp}9os(2rrRiLq^^-;`!m{#KTH5Q93|m+Qsg_|3`~Cw&tRUZ-TMjEcjUii4(= z^F`oT1;%DEX_Ly7hwM5}4|2I9F~C>R4ntnRfhGw^ym7HVTLJ~Vld>)I=ljhLu_ap< zdRRuMSQFmxJtFP70gzsNYQxX5Al`vf%haMNx78IEW^*7YrG1cJ@>G~KE-<+Fg~+NUwJ3F=@UBCJEG8! zU6o0nsDkT%VaHGbj$oyK@^PJd7vm6mMaweA=7Rp}(J!n7(=x3I0xLM|M}F9QP$;6P z1N{7Tv~+LoXR4gvyyyu6qo}SuT79uWjpz1;0Yg%=)EI#-WY-?5>W14AsjUm`4d{*z z61>YZ8^bcSnF}T*x3%^p(e-4@IUOLT)t-um-u|Wi$~TVgtDTkFJs`2Ws&b*Imaynb zDzuLtA2}AXS6Zspfs;Jx{F=R{`%&pR8zUWW6Vh<>aLFK|oYQ?Al+Y8f**d+OH_uD6 zuGR$>iI5zc<^4$odj7i@Nt6szsKXOxYNmArhM_!x>}WowPaO)Tf#C~C;^zC#t6bfg z3&n$FOX|#Ku~$g(s|A;I&A4|X5N3mlhEd)NH}x6b zunDE0k5JE7s_Y$>s#xlg+0D^wD2-S~n#`E2B^zkQeD8VK%Sg)*Md3#Y56tx-gy7}b zlaI%{`vcZ?U(sP{H0;pI~EkwW`&f(JSjXfi1Q^t8U965MZ z*L}2>{EO(tGSft0!&xgDWxV6>0jz8?BF$3Flw$ELF$Da!dImcIx90u43ISG;f`60) z;twH{tDI|G(U%IkQI%f0uirApzoiFD>+^TiDNIS20?Z2F0tGsY1V7XJ=bxLTBA*D~ z;n6Q?DpuRhvp9bVk;|G}^EBCXu?+p`+hk5#^nno(Jwc|I~RrvxvXDv?5$QbzMc@Yhso)IrQAh9?eTEu3Njg=l;YG zU~%*od(ic3W%Uw*)J1E z3snffSQdZ=R>>vwcNo!fHC6t zQ<_C0ZlL(H@VpQO#DfN1EcmA2SImwJRtHt#nv=8FNBdLukM(zRZy=|PbJs(i#=$y zk!Z|UsN#}setG3+Qevnfy@iF`VMofJB?IYoMiSd6rFD!QgP zTuYOlDaFUi+)GF9kOF96FMgEBZaalvU6KAf^kuBAkxCw1h)($V9q20gS^d^Iz zuK?-C5puCUaTISeUU6?{)LgBo00;BmMgD-Z`JbPIWE(vvaN z(#s+N-==dljSSAd6s%!|2B;mnAMw6$#Dfsnz8HI0cq2IzOLS~$YJQAZC67O4k)nSQ ztb}tVfJ9=9rI9T9f~(bdhuGvdf*-gqyk{)V&4w#knV=ep+bj$i1KV9p-{vF4Ew<@8 zUQMhL-W!PUvc=YCvE$>lr>tkF5!mO9zrX!tI)o-!~8@*K6;Sp6plf?fC{iA{iQ z&E~izaV$TtDKAcqvj3*EdHV>iSM3ELq!M2h?#>M{HZ`kRWQ?^MFV-i~vTGv`dq;R% zmZPT3Bt;aUC$@1LRAq*4+0S6gDj zObs%KM~$e*_pXGNezq6q0qKvL6h$Gieu`-uqJ3st4PhFR543^>r>!^C{1G|rWVXxQ ze^jldda81$-7y;W*5EyaaU2yksFv(F6~d>hoZ%yR`LsoC3G5Geu{2-}B*xJTrBp+d zF}bMbH3M<5WvxNZzzl3b!hn^IYBt8P{~-!th@cT?md0KQ1sGP9Y!MPwOSX(F9LMJc zJJQnB$8FP!4<^v~i(-eO_(R!bVA@&|Bk~U&M2?6?8OukIH3GFPCE`h=padAIC+(qJ z#Twrg$2OHFWd#cBHBg{dueB70=aE$psg*0e*k37O<*WtkW$(Tfr@fxVrg3RKrFEA} z`BW}pucU`klj{$X$NfP`w669*j%)M@X6mI_S#GapurPq3r!{C0JdiS$(?9Xl@bW-+ zk1`k9mx$$1$TEkLak3H12(i57QI69P< zIG^l#GDNUd8{NxO@%^jBh!9>q3N8I0va=96A!Q4Ng5w!)PsHE;L8%mQByx4GC0rfzlIwXLg7yipl`NM_Un$5yOu*FX=%!!+Nxrmdd^YV6O8#FiYF=AA+I+(@2P|;(EGE#YP;pJvNk{8bT6b7Z^I=SOaOC zdpkg7Tr&Xu;ta}gwZ8Vy+FIeU3{=1o415*-Wx)Ux@8sTH+=C6_5x;tIm(t<&i^3bK zem}ArEa4+hUw%eQ#-a(AuJmD3`_N2>cC~`t+!Y+jv|hkAyTvf? zA_(a^72byF?bW@D+ekT0yvT;OLl<=QUs4?D^(F?4Zr@9T$*Zy`fF97d8pKPaBp z0F_Q~)hbM2^uqYgjyP_(nYdu@qTcP%H%pr}4Jxidp=)jc1P4y&+KVw@rWIBIQ0db_9fcQ44W(a)xc8D4E)u?3N`FMJ(3)iA4_E*t_F?J ztF$gEo-YpcsiP07 zgpDEv?K)O-!y*;PCuFVk?D0aP5rt0nP64TL$4muU7^4w~VgZNF_5qyo7!=`&;crw* z?@H9$RgsIxaevTD6|-4}(t{?{J2*8z1Tjv+=z{v&i?)xI?C{aDY8&A$)j%#msJr75 zC={s#?3th)!q+MyC5MeO`Xp4tXxQwN>1)te%?i5dYsiXgQND$^4sg#GhI`A(ydO02Us zj%eM*?jfC=U3fYLF?fcuNtb(_?J?wG5h;1Xi!@o0GPOI}G`9q;u8kR)k6E<1J43WZ z0oRMepCGS%gx6#n2*_8VWqbM%uT*#k#0eaT=m;qJqG5A|+@8_h`H`bThaGMK9=nML zRMNcF;igV^S#CcXVqqB0cgVv!C4F={`5v_iK(+C5wTe49N&m>t-cn|M>F1suSl_{; zbxDHX$oIcSZx} z!#_J`SiYHMJWm)D0+0ZRbo#bqg}3Uy3D>-r^sxN4Kij+z$!e-$mtn`aiD zw140++m_+S_^12Bo40GdJ2vF6gp#;Xis`xE6F-Y9wU=$i1g47vu9fBj`!RV4yq%g$ zHzM60$rZfAlyrv#uS&~5u>jKhfk4W9K&dU|*5{TMIW_QdkOlwbA|_NRYfZe%k*f`q6!1<#P1?EhE|rL&xHi6 zk>}H;oJvm5m7KA;RvMk22%WjnP!;+C2ONnBjg;y_^LOTABa4X`Q4c$lOV#CfOJ>02UQG$r4R->Z28bB|1T5r(MiH?fKw z%H6D^%E#*StAw5LG`XxMvc<~j2`XV&QsAwuWj9Az)P|63U&zq(2q4m`MQ0K-qgNHJ z;ZA}j)v_)bh4qe_**vZLd&WZgX|EI?0&<-cr9^It8WO!k(QGp@#QbRJ>u+Q~>3gme z=2V?77ww8ursrykV1GGJ5m;|ly`fu*ZuHvOMtm=o*tX8W55^SKV#@t?yPmAt>)5rSpWPA9YfgEi-^rBG)8^Z<6z+h{Y!30l^*lwKRwwCSqJwCixIyw&vJ zaMcAOkF&H4tLTZb#e340P9c2Oge7gIqj3&k(i-ze4Y@PO0A4$__+L>&wo9aI0oRj@ zq}SKlOcd#}pOyWF%;AQ4H(05QqHVW{?7~Jmbf|3PhQ)hYV~NY0xLpgovr`72q($ks zD4va!c5_=PqV>N9N_(s41~BI0U-#s^)oE{In*&_@Jf9r%>c1f%OFy^r@E(z~z8V8{ zU?HKerk)OSX{EfAvAx|)WHMq9n9Oiq@8)KND6jAEGmQ#l>56L13T)>UAE?>e#_PFo z?&HjI_*rKqSP{bij^ibCt;r^MxibaIi+dS{mzTSDRc<}aXt=)stxC%MS+#AG1WNB%!CENjM;l&M|77l&8{N(EPzX zO5Ij4?QR@tgB-kJ>PeqRD1{isk2GOq6gL1kSZIB%I-&id*52WLb(v)ltC#k2VuZ3`8=q>BbFF`JTXqQvHeF|Ci)8Mqd9t zZ5S5}GNBrAHVXN$FhVZW8qnY1hMq+)Qo*Y=tLH&e4K5xnUXxtNa5Hu9Y2wD)OmEr^ z=A174iUoGw&~%oupnBzCNCLpSyhJM=Httv3N5*x$GDKT)k6y%BVyq;uvVOLxEu{|{ zX-jdEb$Zti^QsT#9bpOY((gIcU|vBtS5-4J+~RKvg!h!0AkPfj4l9bH2GPQeF>%K} z?$$SxZKQo>jl48h*|;=Ua=1cSmlPp`^fD?=XTOUoLbm8oPbtYXX4gh+kf#Gi)%~@Z zr*TVaYx@CWA@z;|GB~BN;UE>?($Za`}P~V%Mgsp ziq6O>Y70J^GZoK75n;$`@SxFqMM>Esg9LuHWz0GMNun7(uqyOdwB+)Jkda<%{Ho-H zV{m+}p~}(4eYTYADXd{?*eYGCw8d%Ugci5|@QoF;CL>uR>fcvrYa5`Il&E`tG zg>n!)#bygbqw->)wJ2&m<2g6?V-2M>B~vroh+yc_)l#hMcY%(f4Fx7d={s@4oev4WnWNW%a9Lu*ZBju~4wCTR_!h!Pdh|*cr~}5*N>_ zzIai?nA&MH3=bsSwzw#{o0n6~=(YS|i}WTqvZtG6M&P^dam~sA{4!I(JvEA10z2CB9k@o({3yOs^oXOLxZmoZjP;W8G!=>^(Y z$167BH(T}QF;)sbG2&tg%}yXX9qSHmX-`Tz=JT*m^5@08Y69BEX+_JHsWEgB=&=oF&S@QToDCet8ShQ|#p<_Fnhdm= z6xFa|&UE^|rdBhHzi*q#=9&rYgF`E>JDjAN9BO1{IZf~?XRQ8e5s7CW)|(f9IalEg zTf<-L2h>{_U|Gwj`x)Kgop4VRdA85%nIWb9 zgB&!4)kw@K#0u2b%fz%Z+c|41cRqT~IdG_lRZj~vml3SBU58r1nec8`@Nsn8&@u#e z20oN&Sr5_Ml^rj>D}8k3=99ZaWEQPN8XbN-(k#g-Yfcfa;H}!G$Tu)fIK3OtiA)6} zE1`oKa_ICGP0pPzS_hPWxm>P~BP40G`ozx>ZC_qyxgEK6kG1!K;%<4IP zh*Hm2w0X4eS^gGatRF99iZwYC8RA%6RFf4=fJ9TYZ%McOQ%v|>mWu-6>)JN;awX8- z1=4GH*^3w2#)T{e&>8 z8I5`$us8IqFR1U>IMy%@v*E(Y@)w8JAQw5>HVS!WIgY2>NM&QO&Zdm$xYVhHM#fJ# z5|Y-J z0-ry75*nVt&p9v;d&e~^^?Srb02$qYeFA$)#}gkBI{L|rnE?O+_KdUwNnDqdF02Z_ zLxw=eWaW#LMl%$$EhX4|A)ENmtwVQ>#Ms7?#F&cDB@?dwTs8~IEC~{-1fz_!<4F3H zk}e5J)xr{{gOKEm;%$COxMoplLqH|P4Ecx@VH^m< zH2eX^lsf{bwY&mdDC^=(2iAHNnFreD5vui|9Ym2^d2S?9cS3Tkibwh?V6K1u#ij8H z7(7QIHS#n-lnH=H$`2ijeaKmzp)mqyq07^(QC=eSs*l5Ns1YHyj2qJ+)ro9aDXfA+Y6#J99`oSlnM``pPD+0BuZ4a~ z#{4Yyt(!#Ec$2Kbnk9(HgV^({$bT`>0fMjEfG}i|h5HK!)%R!W0%J4xO|xTZ4hXP; zzhDgIV&f+QW&(QdNP6zTDivg?2ZM{yxFH|1y{#o2S=sR7YVER!aI`dWH=(3tui;{y~QUVqk(O?&n$j+FZ z4oVaZ>^8wX*jfm!t=3Sa_HGCmPsPt5%d8KRf{nr&vRtRsOCsZG=l|zj~m_twv9VIB%pI zx;WaQOXfTk54$*~?|1m68Tn#XaqwzW;YIC$t_50~P(lPyT28i4L2iO!+7R9^K=(pJ z_bA;k>HS3Oe^$01w>ps;CZ}>T!8LRUqQ6qnz1yLcd>0F9nQ1dV4D{#NR@A+uk-nY^ zRQh_0RVs7z)t>Ty9_DJ!^~)8eSSr#fJA7%XsDA5rblr0Y8YFby5KW`ESg7Y*tZ^9g zy4_KRD>RIFI-%{ibu`5h zsp?S`a7LHG`XS4bjlB`t)(1b)xN5claPbRPrCX{CsuwnqrG`r!dv%L6x-xAi6XT@& zHRYc~Mjq=7C(8vp!w_K~35#F>WglgpSf%VdldZuS;;Witzd*+jk?Bl?wj4ZE@dO z?d~Iqe23%r0YTE6KW3{Y;8QAc*NIoUE`pIBVXMfowg4t6S(eEF+jmdxh2H=RZ(Iip zZz#uYg;Ax)NeS0KwhzDuGhLti(5_1;SjJQrMp8wog8w7E-11qg_rzAN;>yv#0aR6Z zeky1oE=%-u8U28%N5aGgu~By?*GK*bIuqoH@;&{Mu>65F3kU6wYfIoK&eIt*$(lB; zU&c!4eM;!PoN7xV+xWFFIv3=~BAprZ|!Mn)xd!1nXt1Eatf``SWPc+{xBN7<8&SN%Nx-wWv}jwEOFyt1i@rkOM~)xFgY!{G>&Cc34G6#0huCpy^P1%74f$h}i06xZ(H@s4bZK+QjHvNuBg%3$PrZ8Qqh~`2EPLy8moLYO_5j z2{pPxt#r?+8_JR#nyx*Nw{1(?aj^EwL)oC<;`tduZ5b*KU$&8R{sN*%OUuSwXV(s3 ztE@Kxk{M|IB?^#@VILJ_YzAS{3jeDX{Z|dtrUjzQ%DVCIX$WAQ4owZfC)j4K$54ks zX7g+4%6JhMnl5mJMqcE_0&&0Cdt~QN9CRr&X$^Mbj-o_pQ2h@UlWl4i!GJ{^ zFp0+RL}}uGqNMaOoX=iCvbzXk$E_?1%1aWJsnt^lkv<`qWYPd9H_bi}-X;aNp@Cl@ zkOrN_9+mP!DTgir)hC1^HTZru6);0`IM0U{%RwW$LeqS>dZas8@n4*uM)zj z`ozHV8IX=h@J-8n@XbTTa4Z+rPEhbo4RY{}ec?dHIt3Tj7cu04;F|vTkUshSlltX@ z7H9>v&vyR(@`s;0aUaED8!d6)Rq#7k%}Ep2!R8@=<>kR52$!r6m%J|<#DVpuiyWv; zyr~;eQy_$nP%JH8TjMbyj=&_wZ6v}}-6WG((~57=MANKR)H!RHW6j-;(tC#>fOjxw z9YyT^3#6wHG}m~w*;$4GWSzv;YME|3tc~50&}QLs6O8u|%h4R@Q}*x*<_A$0-z&IF zmhBvF$b>sWtO0(4PaN3}bKVJW>4~hUw>r>eT-gW1!Y7j07nSh+4qcIZYID~}v2T2d zFXMbKBhZt?;wPG=e`Ir?lw?umsq2at9LGyz=ycjkoSFQ%mo8n_|A z(9&)^*zSBiAko|7ulC^+>3%b$?J4F-Y|db;KtEmw)970P*wV>|Vi2f;(V0obmflIt z4POf2hd{pz*Oh_p`sC~PZ_-Y2hTV=?Qu&ko^`wBtQ7nPPmSc7vSG;pxo=Yeef6k|z zZ{o|3SIL9vUj+6jn~V|M0GkEheKEKN&-6)L?IGh&4OO;_P;NOy3rJ5qp;Wm`1?rY^ z)$4+Dk?O+;SgCSoU7pXdJ$-rh0nKeE6$HpeY0gcL0kl<5-nJ3?c@5h*5qZ%DNb7+& z9Kgk$fsZT@!*6UVM3M!v+yiLmAlhyi>T>~ua@+U>!yLY0Pl4*5f*#?7Q2E4V`ga43 zVw1=h^T!&M`@gNKT_Qnhfn+;>qH~Dovm!Q_GhPQa9{F)-#~B4%)P^1H7~>*{&_Z?2 z%pXhsnpC?0&U`CKAH6Fb!)wAE9hc0v!)IML7C{7nkLrNgB@P3Lvk!EUi=fB^?Ib4~ zuuVK!qQq$UA_X80G5xF?x4-=J0A|~XYyPwBOwiPPC4=9pn4X0U)ezlM! zkCsOa^e(4fAEtQb!`bW=a_CD4zD$39N=5q+jJWZRxLE;yrocJiruyqM+zuvw%K|%k z;YplN%uIkZ=s}WiX~c&Co{JjDoH`vl*sfvZQxJK>r(z;-%WPJ?EQwscnsvhQbjF`Mc@$9H1Ui*sl-i+>bWcD{8AGE%l2D6DEB>(W_9rkhf^M15W zyO6i%M*BHd|H$LjTh-4_9Ox6OKObtMR1v;29mho<=o7}64Sv1wwjhcSA>5gA>CS3(Tzx>X8$#~LdY7)3fo)_u{G~gEFb2T^iOwXS zR1E#bJ)GwloVckS$gw&hLJx^0nm)oUwbU5Lo}RhfqoX-za{gIK)SFOd{+T6~@#+Kj z+~FF)Vj_8l|ywV>1nza%>E15mvfC9R2Hi0aNRc8sQb#7=rL({IIrv@lM9uG|V+N zQF9D$Aad>@%{BbEhpb{)Qw_M;QVsAOX$E+}H2@WrV0}Q`xsX@w-vQ9LP zCVcC5v<^#{K}RmUGcY*Qi{kjrqP!iT52cQ!wsIrA&R7wmT#n@NQ0%p87P*1q|K2h97q zXH6VI+^#YGgt{Ali+8*=)iAL16%oJS-@B962HMSG^zS;03y&ED2GjgDhYPtjXtgqH zCz29#lqXQ5k`hc9U!&{|H^3Z*8=p@%50TW}0&H-7I`OyRM9G41khc;BeExVeFR1ld zg6LZD1W*@9DR&B^cz>V64l0Jbl}+>vsSu9<0AoQ?L3ggc1bve&yC3qt4J!PM5x~>Q zjC<*sNHHw&VkSil$yuw14wzE~KA$wAK}y;pGPST;w@oPLzQ?kTvaHr0zG8oyA0qjzMRSFVVuf)T-UB)HL4?XwMvwB36}1HJOVbah zaSh6R&p!zp(he7&>5~DS0zP8Y($cBBu|?_n#8-U5t$Z;v<;0Z>SbEWdReSj1>$f zpl%b&AwIJQd@MSKX46wUG)Uh9$IpC?*Z?mun0Y_ee)0@fcDXZ4Kf z0P+PP2iV#FyYJl|_7zckY`!}3)KB}4=#hODy2W+tJN*@;j|TCEKGR+lV#Z}JBJT&= z2OsOg#uq(wezAHcvdi9!ubcMcQy)@07ux25*Yd{@7B@@S#XD|mU(0fAPQcn(50N#Y z3v-qaA>GomTrB6&@yW&O!xwzxG_nUK&fwO&z#@{DF=xs0F%L^ft_?Z1kZTDt9v)ke zstFi_kG1P6lvR*;{ip@i@P@2Bsy*?Ip7p>R2JH5&b$yXgSrRm83LTXK9+S{Sn6Oy* zixh5!!unvLl($BW3s75<@fsh&>=gi!$O+V-Q&hQNL_PF%ibwQPh#OPGoFpB3S#cbj z8!>a-69&UE z_0Bik5Q{7OcU~OgWr+Rvvd`V2_(Y4oOg;FNw{oR|U96A&pCTDwOag@8Ndxyy z8GZ=)j1A_dUJzyaV*p;8Fqx~-`|{`aq>Hpud!`S10e^#?@p}T9ub|nTHG<6T=u_Y4 z&DlpKoVU9>on7UlC>e9Z^}t!1Jo3d0rY(Yed=K8t%aGHV=f8uz6D|y8T?b8&v#F=O z8JFR+pWSsbh@3Z_$}c9Fd7-ByJ~PKnCY^ALu-6?( z>AzBHhwn*z7>-j}dO#M#4;ClX$M3CVR(74?_30NS4A!IN2?d4AR*bzs1vqaXSbWjS z;zt3@?^Kxr1dEir&a?uIBY@QBZkT+|{p59fbOHMj0H4ox;LFqQot}?C+$<%LdZkg< zNYkQoYPM&l*Y5r17wG>;+5fQEgL={9(*>;FBpoc^eDc2i=hpU4p7w)ATzyFC|7xdsW0rL%Hl3ND)9!)ZmAK;**VLGXl3vZCNB z^OtTN%1s7jzI#J^`I;Eu(I~QH<-@fd+P{{`LOVS^vvH4MSK6WRffh`&NpE6Pw9)i) z0j=7rrMl)^r#kOX3iY;_u;3TeK1yByM8?aP9E#mRWe9S$o8#ED zJSyQ+s|0aLZ@)kA-m0Zji$O;9lFX2Gt}Wfj;XW< zuewI!H9b+mH6u-VBbENNde>A43yr9DHxiQved#+yDTfL22or_QA@cK=Tx3FNCKHY> zTyb)Jo2O=?AUhKW)&)HZC^#onDev&2Fy#i6=_?ycTvF?gix+V749GZjl{;i*cq)GX zN4Z#5<)7?-FR03Yrqm;ZFxP}Nn&RmJj?>*df)Lo^mr5m;XLAxdn$kCw8g zE&Wj-NrIqvLgxs-!JwICgVo{eb?$H)^Ek+R0Z((WIyfG)jGKF7U-3+d_rRSkE4iox z)zk#Y;RpEUe?L#t6ZT*4*Q5c-Lf`5q%$u;uct`Yfhi_eC z<*pQ#x@z+-eFt~pJ`Tl^gYMCdE4VVqfa?|wF39}7tgo)TrWbMkB$rrI0wF3C7p^rQ zZ|=-m74;Si=VWL~j~SYjxZ~Du?9!Br6s4-i@UYaZmFT$B3^&8k)$xVs?ZRlY0hdwm zG9&q5LU5Me@r2r2nF4-WjF^twvqr_=XH#j}0lAAcVm%g<_V%p1)fwc0^CFG(QnDFB z)}!;zZDtSbm~k|;8EQNPSlCPD7=oiZ{2F~z^(b}@K zbb*VlA^e!x0yI$>6iLSFpm5x7;0uJ&cVs4;4CfdvSJjB`qqnl8fS8e;;;s*qMNf%) za|skrF~%AdE7>0$zp@&pMsggdQ(P~+XbKD?OZK=+z+Vv*0F!C#_SxWLRB}E!tba

G$ljyD@{3B=ri^(Umv*vidMsSk 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∨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®z3=c#>F$?AF$C! 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

6RNSx>y(CIw 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

mkkj7Gi#_31yIrt6SR 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%0D6jB2T~uTdmz{9OV1>| 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

o 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 literal 0 HcmV?d00001 diff --git a/SpringBoot-OSS/lib2/api-top-oss-2.1.multiclient-SNAPSHOT.jar b/SpringBoot-OSS/lib2/api-top-oss-2.1.multiclient-SNAPSHOT.jar new file mode 100644 index 0000000000000000000000000000000000000000..5b98e28a7b99833052a01079eef240c61b804120 GIT binary patch literal 26028 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 Ybtf9i2#7yaaUUN22rw{%raxZ&7ch`K&Hw-a literal 0 HcmV?d00001 diff --git a/SpringBoot-OSS/lib2/core-2.3.14.jar b/SpringBoot-OSS/lib2/core-2.3.14.jar new file mode 100644 index 0000000000000000000000000000000000000000..1851ba47d5785616f9d51f012878c15b8b0610a7 GIT binary patch literal 271775 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 z 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

FDe`mJF_TZQ#Ns(W+9Nl+5w{v|i*sq& za5A&^fb$0Kh@o~+Gs&di@SRuhI(Sse=34fauzskqxE`-hUnXWt720eettKUNg-P(n z_;N6Z@R(;iLUhj0sAPYZ=+?&|kiabvt6FdLo?@fmMY=v-!x$4kCbx@3nTC0K*uU1*oE^Vk zoZgjk0>feHj&FXn?ZBem?@;#56-x0hxi|S%pjX-Zfmm#^j;`U;ytlk_$RANm^DOI8 zm7P&AgqW+sDRn@1P+MzSnVWv?AquSeXK^PfMPYtlxO8j`bR5Fn=BnQQ*|i@?CB&O= z(g=U9zx%X)@Gt#2k!}H^1rz;+;se*`%o7~Crx@xs;rvg7ny`For760q00?|snk0r1 z?ZxoVm2W?KnI6aLXA&6E00se1%n6E>!;b8RH7amOTpWCz9m+*AHPm4 z&HG6uEsFK}iwB|(94nS>nDWYf_~OpID@W%B_g8eSk}yC8%Q?%kB@&(KcWm%pA>wHr>YW+fx#2E1IX;*EusV9U97JMRTX@up)CVe$ zl?0FCdMHbbTSDIEk{D7bWt#c&cL`SXE29g23~;bM6_zCnXlF44In&UzrmJsUnzv#}wML6u}eiE~kVE;|v@gMnq|D{@Y zAo`E5|5iX$)Ep2+;J%hQoT-=bCO}g$^?Q?n03BA*3@k160%bb;1!DuL?g@V1kBd?w zjPk+Q@1VBP#+P#yg{RsEK?o^r-;3PGmT;9&6nZqG#CIyn_aQNFEsU&ib8j`=+xUEY zLiVC~s(`abzsC-OqXRL>^EB$mqb4w$X&1Y)4@nr~)Yqm?+}W>(jNAqKPw`~-sR7GS zxQ>h5m#Do(`m+F^AaPA}oFFw)x@NDTB3Y`~{ydN!$y~$MQjjlYZy_3LC{7h`F&b(p zSIc&xjdv37l3}S`GYC5eCOR^wJSMwlCO{c@5@r9eU~uOT1$)Gpc6khVfr1Q(lVefX*@^QT=2&mrTwYuZ) zm=|nL?XWWH8ySr?BXC(s>^Ixi5)_9kyNoVN!>3k-N$aHw(hLdu3Wk#FlXl8X4KmW> z$SK*=xGa#+%S=s_t|H6X62q?m+h=McTb0VsbfuiM6#!cVdY_1&0@J3G`<%k5j2(%s zf1=v9SRHDzxuvQ5L<%d=2V=tnTt$b3JSzx-1t?$+Vguibs`z)1+o>IvB_px8`P}4D zE#G}yDD*7uz`|gg7Y>u1Xn-qS+%;X%%Eh~3nFyGw5SCe{rq}QAzU&u$UZ}aCmKtz? zrWyA?CR>Z`6ID8Zo_)p}JrFs=4R!cM{ z(D7HOoT9{jl09!cYk)-*b^CIL9!hJsUKZyH)T{Gu1aT^do5+f>S{>Q+0vZ z*nT39_JO=0ll6hjAS-^U_Ev<1EFT$m`PXZQnOFAnkEh-RDC+e00>}{_w~EvB*-dsP zQy$e((n+JwQLUYT!5=|!_vPTF;Oa@u!E-r-g^kSgsgb)_J3I1Ro@%OHcW(EkO?=m0 z{WQgT%rUxmp(iVR2cR91{S?=>6v9L@c^5tWFP(q8ErJ)GXXANb@e*N?FXk^*2lcnu zVn0lLf`)$}cVI!_1Z2OYeECjt6I}IxyHM5k9(BX`d>1U;K}>$$t` z4u8ooem>Efe{u0X!gmadKof?pS}GOr4XzHZu1ywhi~iEB8ezv6fn+lNGdueo9rcQs zaf_->4BIT8^k}3J$wD6LTn4mJlZ-)EKo5vjd`o(T^s6rZ{)l1{SxizTn_%^YtzF&9qE^f&!5(N(B|pk6JVA@j{A zvDcYJxfRotxN`P8?%&04Ige>Nb>8;%r69-~y=!)t9IxrE7nq*Uw+qf+Ds|hS=#18$ z(Q3e`NS=GcboyMIMlzWpZQhfFd%_4WikZ#^0OYJvJ0?3o$OV=Q5Z#UjV6bZqqXNMy zM#xm)rD>`J-Y(?GsA!YtO;xWh!rj*BYp5H+zR65d1sIfPP3dxoqJ{TK_O0bTqbU?m zPq!__dVyxen)DWi6(73GR9lVadcon?JW`DSBEJ(a_3gcRy2*Ckt5ePsF9gjMe5ykv z+SR~Fr6$PGl)@dBr~pZ

4J(lKWqttnMF;!hsc9&M&E(+zYUC+l9P>$7Bw#3zPTJ z{SM7v)aNZ&{ntC;z?|Wgqm`DgKv1L(__{ic6&wDlhZ!Sr>ios@BlRl|HmWqAqZ0Jr zGT4<+x_2ipQHjW09iz!`U(?;Gn_LVtoug7`1nh$ujK^kSO(o>DC=i{(g!u^2p+-}# z#&1&a(-o=XzG`juh?1=mF97pPphk+OP$_teSLi^}T@FxwPkU^hlAX$qEIMfseU-Ms zW#t>0a%W$cy6a#}a%Z-gL}pK@A^u`0S+dQht$@U^S5>|h)ve}SWBy&6zlVThfi}<@ z-0;fVR~}62TE2_k(IbD$tdTW9W5E^$4_$x;kM{T7U-YyI`W!iAbC%98hDo!pF_`%f z7(|^@1Qo81CF&VkqQ(ltEu!7-^LvTJwo1+785;A<5lrJuaQ)HCl}MF5JDD=}QNSHF z6$;B_s}9bF^Sq~qTmEXcPGNv6AqzIGQHxZYl~ebdw75a#^pjcgMr5Tj=LHpya~y@6 z3bLNC5(+G{;e_Wgx|ZOq!=Go{`d)H=!L9z|WZTa*DElQ=dp@C82*bllCw(6XjN?uP zJi=s)hrJPY#bcD#>f`toE=rvcLg97wIRVbhFz`3gzBGJZSsnLdFwH06Q3+urz`g&p zByI9sj0npz-5VOc<;uuTEB{#8CE~c?xYKLUn7y&esR`NDqH;!Q8x|YQwSvhVbP3xG z%;K!Y<5RAH7p4>*PRWY@U;8P5G-tHZNnPCQ=cl9Mr*Z-QAt&)|)o)HYhqx_wAh)3v z+OhZ9=iRj-Uv7G`4j9tT>J}!#D_y(>f}7rqwIJ7kyd>^d=e+BKL4Gpkr|V`WMxJM& zY3V4LoqVz-+Ma%~o)3%?A}Sx+FkINL-De4wA+dAN+gNWB>UgGk#YM)ydqsr8FZ?KO zl?hvcc8%0(u67CHvE=&%JPp9k5nnU8C%<0sC}U3vOP7HV2rs#!tRnEtH#TlJ`14dy zuXiUaziI!u4>z$&z(@8&TNr<63)jEXRr#m0=O2tkPD*0nr~S52EEP4k_$n0R5Bj7F z6Al)R5)O=i+Bg4BqQ%6#wP;E3Y~qH%^$PSMw{N)^;9Ajf+398z%zAnKK5~KSD`3e{ zI?z&QZZI{>(T54<<#R`LP#+txriid9QDnF+5wtA7v5MCyIiphNmR?%OM!4wW9P+y& zB}(&t*N*tC@Laor{9Ql!q(XPqk&4azQD^f4x{DP{s5@;OUu^e_Vr*ymek z^LOXP+n>nDfTkb}pKP^3be%-IxHSMmdX{Hx-kHqBU3*8gK4_F=*MO#S@QK^l4I(UV)NbZ~v*E_}*pQU%v$YofQzUv9hwUcKDCsSt8kgjMe_< zLNuv>dnSlDf5$wEVXWosB}74!#6pT%qU+O{fZ->@*7mAUZRo~V6GYO%G+(YVfM-k) z1#4MKy>+Hhh~38CFL3DDVBS% zp?ZH|GTi?&f5-Tdnem}AQ%yevNg;JAX_b6P(YPjIm3WBBxJ2SIdEedGCU%u@C~9(>s7@t3BP|QRP9{8U zays5sJzOKTOG&>6$!+pj0xPzE%F=I;kKCA%Q)C~V+}fa7c3+MBn1NGfKNd-7a@r*n z*z6Pm(hPZ!V7gB~M3q37*6Ma?MNw|vd;@SV3R~+3GqWN=I43m&w|4|=0lFx$xHO_V z12?m@I6YdDdEy~Kp~M$<5iUwKMsVg`+u|Wz(@;f)O$cybF@{`i;p;vrD$8G3+=H*4 zS18WN-IU#>xSEeTbnU2UpHP?Zolw|3iTkKYJ&A`;Djcb)C{X7zyIYt|s%t0!w5W3B=4VP7rw(jW%!p?>@+FTX#Q6rg>#-|0|1$C$kQ2!n~Wm4!Wb`o$!oa$^N)m)!LgiuJVy7Eib zRocx9*R_}+L0~g&x)}d__)Rh_`4p(J0Z{>%WjJzXVFeD{&#iS>>UMZqk5m`sph49` zh$9u(`*%d576 zr?xwa=qG2=xWJdz#!~)%Lp zC2?nz(^G-6sE*?XV`J;>8|ys<(T=FT&ESz!n0$>n zw8K*QrX+@66e?E0uO>nZX^t@Q1EUck?witag&gzagPk5{nn+JB!`y}@mRaOo$jD8P z^>vIXpmU7upmLgS-PA>EbZQBuy;kEQl#(T^8{nQhO<)2Cg@pVn#dWSj(rNcJcnP%P?K7?<5 zGS1}wccnj$(kvy(GRkU7t&DZ9RB--XUiToyPdkF`sQ#FxK~w$VwU#|ZrH->3kOEA( z3k7Du^T%O*st>uU6FHJ-)#_4Wgz`h&M+x=EF9@bia(CLUZSgL+Rbga9zb*RYmKi&w z%?(Gyv9otm&N|xefk4|nw8K%3ii@M$FU3*L-#diN2=dXS63{tm-COQ6&itcFH8LR?ER%pAMKRvwi(KiN5t<{G7`y|f^B^UYC? z_B81XYx7O{ad2+Jt3wR?=F~M7D;xx89@O~-rn8lE-G#w@*9#l=fwur7)cf&y_RU6{ z-ED6?=zs&KPo->JP{-q8yt`#>)Pn;@Dc`R_B%f4!{%+MahRKnu+C62a$KmbAm&U#A zq|@{3bT;D#>ggJv=kKP+oWKT+4p;dBI5S)Ai~eI%!Q;vu5oDuVL^9P}9rtnb_h6C% z(x3u8F6}iA*QXOUXX5^DoCyf*C6?!#8#brGfCr4ojDn4dLH-QoF>$AEs zIb%@R`Eo4T`o1pEe9~rUEOsW>b1iI8H4+1bs(fI#;P*5E+7}U-%&=@W2HT&xvnK4h zgLfycipHrpgHM4G=To*p1{Hl=#oz6$a$S3eJ}RgdgX-8NcELC;gfYvtc;2mNW>OkF zOvgACYCb--X%koe-xGass;Qc4izf2n7aTr|eWWhzWjI8dbPU3sUS*N8M+cPVmXqWq zdOKK~=LXOQjc?y;q94*dehzc->(7bzNR2+Z;|HDyKR? zSQL8NFZ)2<0j;(^s3hX1oX)S%AVAdxe%FDpSng^aN?B1bK9k>QsbnWY7c>@^H`jYw z#fz5Q+!j_hHH0WTh(WyQn7<>>1O!w6GDbSFcLEOOv78r?{97u9%XoG`a>abclE9-k zPb$^ERVb6@7$WA9?wBIxlHnL5_LA-g5t*pG(oJo zQUOUVO|0xfh zl-xl+PA9Y`AZMLNhC2ww73gWHG^bqJ)^RY`{{QYN(=?Bq)>N9B7ABKhfTJ{Ry5n;s zgrm-l&5~WTF1i>Z>c}Z5-djSFpn9yT%?$Z8ntr75>ACR@1&SQ0Gj^-S`|8B;6M2e~ z80GC0`8L|0IS}@XeN+rL zr@**~b4m6){J&FK9tm#YSx92IP=0eEuTBmfo`PKxcS4j5CbVuHnE@7!8!ic(vrebMDT(PnUhi=-9Sx+qOHlZFg*&9ox3mv2EMv@Z8VLKKsnfnt$f({Ti}Tzx#Vt z)u(za+CQS2sqLmrFNKZSG>J#K0wuehMsjGyh2Xq)i3O(vLPh?s|S-vR)oMSLdhOnPEX)dptuC zISI-xoOgk~w?JQ-O#*0%fb=-wwgkB)-`&j*l=|p6mlrhO%!Bzl;2z9B*VP&qQfuQ< zibBv#X>axNFuRMWg2nDIslIp0Jg2jVN5*X{X{N;}CBsWA@mZ?yg^ci#VIJ>uO^M@O zz`f6gC83Zh-Qlhg`$b(3Kc!rftGt&5tww#H$zZap#mdbch(_EHiOlh6;E2Q|XH_8Lc@uN@-4ck?`e>5SDd$(R2ht0ktfR+`938;e@T-mgK z;e|;U>j`v6jya78Rpz#~>JZv1b(bZ<8?A%JYF}eLHlz+On3i!aie#jyY+kXr_E4;S zS4LkwjgjHE2`L^=1(hBT=7eigQVDP&60R;$I zwF!-FVt*4>V)O;*)n{GnB=oYW3}XP4_M3*b#4cBqwviF=GAG)zKjWjYkdjT-sns0O z=soK!F2nk=ajbrI%@|^zw_akDetgXs!R)1oM2cuo(0KUF<`JO~{2~+4DPko_zIbf} zq)v{i2$_h2w6P&5ACVYnw1_q$3*uPRjxLcV;!C(pgg$Tl1!RDTBhiY8u_I_^xJ)>K z2nl-tg!hA7tABNI!wFw_6o)vs*`1}EiQrfE(&2nbSHL=SF*}!wfk1a0sbPvKQs;ssRXIe_VA~IUE~ujLp>6Yl zlAIw@>Uk{0P;dwjR)bel2Qh za+S3KGBXK)GRS`vFZ*||#eXocRHW?y^Y)*^Ikz$!7H1qbYe^(YhP|#9*+Rdm2}wBM zSUDU2|hw8L*rzKGvY)O_D z=Ny)kwvgSGwWmWdsRc)y@j<=Qshbk5K1F)=kI_OkErL~K(ML17jMRxB8?GUdwcE=4 zLnW0}#_>X!77EyDT29fqviQT(38mk04EMI`T9DdImss+~Y*^=VBAl9>@`w1NNjO&B zYPwAuS#6fc`4K9s-;t(7*S#WLNIf`|Dbt?nPg6L|h#mCv50W}1q4sg_in;A)^4d+v zE(4KZ%SR|sapx=AP&l!CjP07tJ=Vo<6tdPMv7}@-iur(~}4keIvM)}8dFq1QW)S61msFn^rpd8QNa>SgvC*Vhh z#fV~1IU*H*x!K|}(ww@ZjdSJnI-nk7Xy&EvUCVc`zP|oG8eTgxTVCBMj3IW9l6x4a zP{*&-TYYsj5@#pTuix%`S`3T^EWHf84sg4%^M5%*U>j7rJ%f@`sPxQ>xw}5*tKOKi z7=0B9S?%24}$$h>k~k|DiKQA2ETY+dmF_Og|dK{|1-j-8w>FGr#b>8PFZ_ z0eqH>8UhDNLGp`_v{ykx-~*ToLjjYE6{O<(B4}#;Wxdh zj_C6345g;3ew8e3FjW&xjXuU>1iBtHHuNTu zi!7{K9}4hiGu0IHWhp?12DgzPRBp3oso9n>aU5zpfgNYaCmB1c1fKNR(g6F>av|j0 zNCV(|TDz^T`};dH4R6Vl8rDfO0!=66P+|eo-h%l^#+o`)@xxDuGud zNpjn1SzPp&Ls6%o}&n4Ote!$0GE+s0S^VU5XPYv3H0MWBR}E7itHyc9Dhr22HQm$ zQ-NEMm!+dt9x*ap)erWpQUq>AYV9rtkG8}YI2E5+o{D3aGnd7wmr&9?fKOaqP;>wNK;fGVeL?4nyjCO_2>uJc4 zq!B4LrqPrQ`bvDnDapk0WSWqTszpx=rUJrAxs?#C8l#jNBmoQY^&!NqdAk^Qfd3a? zSbE~hJP1Uv!Un~KnUPFVzL)L*c=v9}mCvUS_E;&>W^bJV-3#K`0{NcT{YX1j=VZ6s z%8%}+wh-GbR(_xStflYEkbcck792souz?(TyTUY982#A5>ukDEy!vHKR^M02%+RBf zWW(@3`5(XIlpU4c+mKD{CIoWIIj?&8AP%Y-n$ay+)pK{Tf0WS$K_(wU%ue3)wo zs+sAovGn_8f$o&C#P>=p7I&n&c3F_l|A`vrW$q4n%656uZSla>KH~fdsp~Y2Po_un z2yrL@l@l6g$NgC`jbEflo$Kgir4Kznif2mDH{c=e=~mN^ecJJz6e;0a=p%2BQev?I zqz1tp1=bubVZSNSTGMMoa0d!p2@Gtt%GEzA{Kj@lF@qCZ{y>}}a}IT@+?lu9sE=1^ zKx5PTqQ+pt9JXUvT&EG3`bP9>VB5dSKU^U>(ci0#FG_`=#&PaNh8!0=tMl|19fKBS z!8Wb135?VX+xm4yz51q*#!+KS^pWZL1HetlP{*SU`QKC~ZvX zBI4zZyXL}Cn5(BBS$bo@(LrNpz|ujZ85nn>8^O{HUsuEo?h94LFp_I__@EblR$K^| z>vsRot(eb!WkwT07|#dG4OjD)Jg*VW3>3m9Y>?6B7NwY>*GuR+be^(!wG$uUvK3Gx zm`yzicgcs$dZTx;gR$ej#~j4{(;9gTI!VvPE69%#Cva?k@-N+6X$@>T7J#U(0PNZS z{{y|9lZ7(?D*bm^ty23tK^hJaIPE7w2*LsdleUmp_!V64jmc-lf`uY~~h~N*|X?=hgPfS6ugX{oFUNU6x6bW8UMBPxmM5PtWHO>~F#hAaRVS zgDj>fgD4YV4v2a;jxsizYr-WDo&scfh)owr>> zRoTv`SoYW7u6+5g=ohQd9!GH|f;29a>Ktoe<$GTavUo?^p?Fg>=&DP=25KzdV2<9S zdROMb=bE34lt8nw9MqQe>f-_z7^gOCI!Oql(;*wONj2+GS)Mq^i8?to2()*3TYfyR zc9*C(ml|1fR__Af+pWRtSa&N(9B%b~&Ta~rOX-3o>^T^mnHkIvdJ(7?)kC39R-Qj^ z0TgHL(B+1mZ@Yt=qFsbR&=2BMM;Dr6=a`L-m4)oDMVC~6x-WO%0`p02XF3jux;m3Y z(jXuZE*&iBm4nFO9$X=NPWB>;EcB6db`r*a1p7;L5H>IFz?X-y_A^67m!y z|H)D1n-Y$33cnXp!7tLiLWGe}0CCe5{62B3SK*iVv=*O|DGfp#qxN)zf#jWK#eGO{5@A2(TjG`4mSh9hx1ny-b6vPTR5QD>n<3YdhtT zpA}92%AGWSI<;7M?u7e&qc1G9&U5XhJCxDQYJs);(6zz>{pSfaDE7{5?IISr>=lA) zl);9}UCcwPK~HB$Cz@r_0f>2Cu}{{zaKnIQyw8NCiw0rn;?X_xdFO!T^Oq!#1^Q$< zs|R}CM1~#uWjb%z@`=X!h`1Ld&Q5=zIn|S?cE-uoD{89YCcC%1 zny;GYCG$=pM~3(H$2Y0OlsMqgk?bm0SFM>JpT1sZ_a}q&+rl{HrE&?j!FNi5Bcm4__+jikrLbS5GN;RYATJjR6C8v0 zJ;YL->J}lC7!me`f}nV7kqEO6#090N2z{tUb<-30TLAb&e^ILj%<(}W_3LU z?w6hu_5AwjFQMZ@c*4-=iR+j;<^3EEMUGE^k3yVq^t+OjTCLbt zHtVmL$HwmXSJ^Y57zKjyycOGCLK;LmJZ$z>aiM+juqrqQakAHZut8J@esUv(=ceI|jV+@K6;Y(Uo0$CTD?PbM~dk?WRe)^VE2Z0=Kcs z&FprR*|yy^Zs+%T2i~h{4KFa55FlSmvzs3zj~YcZ7CPNZIuyDd*czw`X0egXSga3= z8N6`5(M)KRFkTtt1s!tB*|KpQIIMn1!lQp(N-$jwK3wK&#kX)yT!CMWZfbz0OV+usu+0nGT!a!pDf+Y`Ye%(QInf0lQvG z7OUETTelArp*G`K_NZpM?bJ0_7)6|p`_YD1abilD!e&!oyfC)7TuaF_keHcASRM*Sqv&eE)|227H;2I#>$#TcTY|fA7j0kI5*K4To{`ewsD%0DX2x<+Lx?rLK1vBJRDx#g@*)H|fD%=8dW%a$U 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⁣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 literal 0 HcmV?d00001 diff --git a/SpringBoot-OSS/lib2/raycloud-sheji-dam-sdk-1.0.0-SNAPSHOT.jar b/SpringBoot-OSS/lib2/raycloud-sheji-dam-sdk-1.0.0-SNAPSHOT.jar new file mode 100644 index 0000000000000000000000000000000000000000..8e91c84da51abd38447c5a958a7d33c0f189af7d GIT binary patch literal 16591 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 C{gQS7 literal 0 HcmV?d00001 diff --git a/SpringBoot-OSS/lib_v1/SpringBoot-Commons-1.0-SNAPSHOT.jar b/SpringBoot-OSS/lib_v1/SpringBoot-Commons-1.0-SNAPSHOT.jar new file mode 100644 index 0000000000000000000000000000000000000000..8d33d6d758fbeacda0855df47b63abaef93dcfe7 GIT binary patch literal 7954 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 literal 0 HcmV?d00001 diff --git a/SpringBoot-OSS/pom.xml b/SpringBoot-OSS/pom.xml index 9dcd2e3..7edbd68 100644 --- a/SpringBoot-OSS/pom.xml +++ b/SpringBoot-OSS/pom.xml @@ -49,6 +49,14 @@ jaxb-runtime 2.3.3 + + + + + net.coobird + thumbnailator + 0.4.8 + diff --git a/SpringBoot-OSS/readme.txt b/SpringBoot-OSS/readme.txt new file mode 100644 index 0000000..558cc94 --- /dev/null +++ b/SpringBoot-OSS/readme.txt @@ -0,0 +1,15 @@ +1.dam-sdk 上传图片demo项目 + +2.sdk:计算图片缩略图,组装上传文件信息所需要的参数。 + +3.DAM 对接分为两个部分,接入方将图片通过sdk 上传到阿里oss + +利用 sdk 返回的图片信息 组装 上传接口需要的信息。 + +4. CURL: + +curl --location --request POST 'http://localhost:9010/oss/file' \ +--header 'Content-Type: multipart/form-data' \ +--header 'Cookie: JSESSIONID=C7FEAD76DAFADA0ACAE587E9109E7BBE' \ +--form 'file=@"/C:/Users/hamish/Pictures/fancv/clipboard1.png"' + diff --git a/SpringBoot-OSS/src/main/java/com/fancv/App.java b/SpringBoot-OSS/src/main/java/com/fancv/App.java new file mode 100644 index 0000000..8f534fe --- /dev/null +++ b/SpringBoot-OSS/src/main/java/com/fancv/App.java @@ -0,0 +1,20 @@ +package com.fancv; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import springfox.documentation.swagger2.annotations.EnableSwagger2; + +/** + * Hello world! + * + */ +@SpringBootApplication(scanBasePackages ={"com.fancv","com.raycloud.sheji"} ) +@EnableSwagger2 +public class App +{ + public static void main( String[] args ) + { + SpringApplication.run(App.class,args); + System.out.println( "Hello World!" ); + } +} diff --git a/SpringBoot-OSS/src/main/java/com/fancv/config/UserDamOssClientConfig.java b/SpringBoot-OSS/src/main/java/com/fancv/config/UserDamOssClientConfig.java new file mode 100644 index 0000000..ea7c305 --- /dev/null +++ b/SpringBoot-OSS/src/main/java/com/fancv/config/UserDamOssClientConfig.java @@ -0,0 +1,39 @@ +package com.fancv.config; + +import com.raycloud.qnee.commons.api.top.oss.OSSCommonUtils; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Component; + +@Configuration +@Component +public class UserDamOssClientConfig { + + @Value("${dam.oss.accessKeyId}") + private String accessKeyId; + @Value("${dam.oss.accessKeySecret}") + private String appKey; + @Value("${dam.oss.bucketName}") + private String bucket; + @Value("${dam.oss.ossEndPoint}") + private String endPoint; + @Value("${dam.oss.ossEndPointInner}") + private String endPointInner; + + public UserDamOssClientConfig() { + } + + @Override + public int hashCode() { + return super.hashCode(); + } + + @Bean(name = "damOpenOssCommonUtils") + @Scope("prototype") + public OSSCommonUtils ossPublicCommonUtils() { + OSSCommonUtils ossCommonUtils= new OSSCommonUtils(this.accessKeyId, this.appKey, this.endPoint, this.endPointInner, this.bucket); + return ossCommonUtils; + } +} diff --git a/SpringBoot-OSS/src/main/java/com/fancv/controller/ossController.java b/SpringBoot-OSS/src/main/java/com/fancv/controller/ossController.java index 787984c..a24d0a8 100644 --- a/SpringBoot-OSS/src/main/java/com/fancv/controller/ossController.java +++ b/SpringBoot-OSS/src/main/java/com/fancv/controller/ossController.java @@ -1,6 +1,7 @@ package com.fancv.controller; import com.fancv.service.OssService; +import com.raycloud.sheji.dto.DamFileUpdateDto; import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; @@ -22,7 +23,7 @@ public class ossController { OssService ossService; @PostMapping("/file") - public String put(@RequestParam("file") MultipartFile file) throws IOException { + public DamFileUpdateDto put(@RequestParam("file") MultipartFile file) throws Exception { InputStream inputStream = file.getInputStream(); String name = file.getOriginalFilename(); @@ -32,6 +33,6 @@ public String put(@RequestParam("file") MultipartFile file) throws IOException { @PostMapping("/delete") public Boolean put(@RequestParam("key") String key) throws IOException { - return ossService.deleteObject(key); + return ossService.fileExist(key); } } diff --git a/SpringBoot-OSS/src/main/java/com/fancv/service/OssService.java b/SpringBoot-OSS/src/main/java/com/fancv/service/OssService.java index 7a1345d..092fa4a 100644 --- a/SpringBoot-OSS/src/main/java/com/fancv/service/OssService.java +++ b/SpringBoot-OSS/src/main/java/com/fancv/service/OssService.java @@ -1,6 +1,7 @@ package com.fancv.service; -import com.ray.sdk.OssUtil.RayOssUtil; +import com.raycloud.sheji.dto.DamFileUpdateDto; +import com.raycloud.sheji.util.DamOpenOssUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -11,16 +12,21 @@ public class OssService { @Autowired - RayOssUtil rayOssUtil; + DamOpenOssUtils damOpenOssUtils; + public OssService() { + super(); + } + + public DamFileUpdateDto putObject(String name, InputStream inputStream) throws Exception { + + return damOpenOssUtils.uploadFileAndThumbnailToOss("exampledir",name,inputStream,false); - public String putObject(String name, InputStream inputStream) throws IOException { - return rayOssUtil.putObject("exampledir/", "/" + name, inputStream); } - public Boolean deleteObject(String name) throws IOException { + public Boolean fileExist(String name) throws IOException { - return rayOssUtil.deleteObject(name); + return damOpenOssUtils.fileExist(name); } } diff --git a/SpringBoot-OSS/src/main/resources/application.properties b/SpringBoot-OSS/src/main/resources/application.properties index 79971fa..c47c208 100644 --- a/SpringBoot-OSS/src/main/resources/application.properties +++ b/SpringBoot-OSS/src/main/resources/application.properties @@ -20,8 +20,8 @@ spring.rabbitmq.listener.simple.retry.enabled=true server.port=9010 -rayOssKey=LTAI5tDT2HxdMRBVV8pE1MNv -rayOssSecret=1whvEgrT0t7jo2vJxi0QgmJ0aWnzyH +rayOssKey=LTAI5t5sF7sXqD8by7p3RCRB +rayOssSecret=mwTXDxnvGGO6V5YcMzp80q8a5oH67l rayOssEndpoint=https://oss-cn-zhangjiakou.aliyuncs.com rayBucketName=fancv-sys @@ -29,3 +29,10 @@ spring.servlet.multipart.enabled=true spring.servlet.multipart.max-file-size=2048MB spring.servlet.multipart.maxRequestSize=2048MB + +dam.oss.accessKeyId=LTAI5t5sF7sXqD8by7p3RCRB +dam.oss.accessKeySecret=mwTXDxnvGGO6V5YcMzp80q8a5oH67l +dam.oss.bucketName=fancv-sys +dam.oss.ossEndPoint=oss-cn-zhangjiakou.aliyuncs.com +dam.oss.ossEndPointInner=oss-cn-zhangjiakou.aliyuncs.com + diff --git a/SpringBoot-OSS/src/test/java/com/fancv/AppTest.java b/SpringBoot-OSS/src/test/java/com/fancv/AppTest.java new file mode 100644 index 0000000..84d0c0b --- /dev/null +++ b/SpringBoot-OSS/src/test/java/com/fancv/AppTest.java @@ -0,0 +1,20 @@ +package com.fancv; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +/** + * Unit test for simple App. + */ +public class AppTest +{ + /** + * Rigorous Test :-) + */ + @Test + public void shouldAnswerWithTrue() + { + assertTrue( true ); + } +} diff --git a/SpringBoot-OSS/src/test/java/com/fancv/Demo.java b/SpringBoot-OSS/src/test/java/com/fancv/Demo.java index 587b9e3..8bacba4 100644 --- a/SpringBoot-OSS/src/test/java/com/fancv/Demo.java +++ b/SpringBoot-OSS/src/test/java/com/fancv/Demo.java @@ -20,12 +20,12 @@ public static void main(String[] args) throws Exception { // Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。 String endpoint = "https://oss-cn-zhangjiakou.aliyuncs.com"; // 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。 - String accessKeyId = "LTAI5tDT2HxdMRBVV8pE1MNv"; - String accessKeySecret = "1whvEgrT0t7jo2vJxi0QgmJ0aWnzyH"; + String accessKeyId = "LTAI5t5sF7sXqD8by7p3RCRB"; + String accessKeySecret = "mwTXDxnvGGO6V5YcMzp80q8a5oH67l"; // 填写Bucket名称,例如examplebucket。 String bucketName = "fancv-sys"; // 填写Object完整路径,例如exampledir/exampleobject.txt。Object完整路径中不能包含Bucket名称。 按照orgId 年月日存储文件 - String objectName = "exampledir/5exampleobject.txt"; + String objectName = "exampledir/5.txt"; // 创建OSSClient实例。 OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); diff --git a/SpringBoot-OSS/src/test/java/com/fancv/OssVersionDemo.java b/SpringBoot-OSS/src/test/java/com/fancv/OssVersionDemo.java new file mode 100644 index 0000000..a1d429f --- /dev/null +++ b/SpringBoot-OSS/src/test/java/com/fancv/OssVersionDemo.java @@ -0,0 +1,144 @@ +package com.fancv; + +import com.aliyun.oss.ClientException; +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSClientBuilder; +import com.aliyun.oss.OSSException; +import com.aliyun.oss.model.*; + +import java.io.BufferedReader; +import java.io.ByteArrayInputStream; +import java.io.InputStreamReader; + +public class OssVersionDemo { + public static void main(String[] args) throws Exception { + // Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。 + String endpoint = "https://oss-cn-zhangjiakou.aliyuncs.com"; + // 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。 + String accessKeyId = "LTAI5t5sF7sXqD8by7p3RCRB"; + String accessKeySecret = "mwTXDxnvGGO6V5YcMzp80q8a5oH67l"; + // 填写Bucket名称,例如examplebucket。 + String bucketName = "fancv-sys"; + // 填写Object完整路径,例如exampledir/exampleobject.txt。Object完整路径中不能包含Bucket名称。 按照orgId 年月日存储文件 + String objectName = "exampledir/5.txt"; + + // 创建OSSClient实例。 + OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); + + // upload(bucketName, objectName, ossClient); + + allFiles(ossClient,objectName); + } + + private static void upload(String bucketName, String objectName, OSS ossClient) { + try { + // 以上传字符串为例。 + String content = "Hello OSS 5"; + PutObjectResult result = ossClient.putObject(bucketName, objectName, new ByteArrayInputStream(content.getBytes())); + // 查看此次上传Object的VersionId。 + System.out.println("result.versionid: " + result.getVersionId()); + } catch (OSSException oe) { + System.out.println("Caught an OSSException, which means your request made it to OSS, " + + "but was rejected with an error response for some reason."); + System.out.println("Error Message:" + oe.getErrorMessage()); + System.out.println("Error Code:" + oe.getErrorCode()); + System.out.println("Request ID:" + oe.getRequestId()); + System.out.println("Host ID:" + oe.getHostId()); + } catch (ClientException ce) { + System.out.println("Caught an ClientException, which means the client encountered " + + "a serious internal problem while trying to communicate with OSS, " + + "such as not being able to access the network."); + System.out.println("Error Message:" + ce.getMessage()); + } finally { + if (ossClient != null) { + ossClient.shutdown(); + } + } + } + + + + public static void allFiles(OSS ossClient, String objectName){ + String bucketName = "fancv-sys"; + try { + // 列举包括删除标记在内的所有Object的版本信息。 + String nextKeyMarker = null; + String nextVersionMarker = null; + VersionListing versionListing = null; + do { + ListVersionsRequest listVersionsRequest = new ListVersionsRequest() + .withBucketName(bucketName) + .withKeyMarker(nextKeyMarker) + .withVersionIdMarker(nextVersionMarker); + + versionListing = ossClient.listVersions(listVersionsRequest); + for (OSSVersionSummary ossVersion : versionListing.getVersionSummaries()) { + System.out.println("key name: " + ossVersion.getKey()); + System.out.println("versionid: " + ossVersion.getVersionId()); + System.out.println("Is latest: " + ossVersion.isLatest()); + System.out.println("Is delete marker: " + ossVersion.isDeleteMarker()); + } + + nextKeyMarker = versionListing.getNextKeyMarker(); + nextVersionMarker = versionListing.getNextVersionIdMarker(); + } while (versionListing.isTruncated()); + } catch (OSSException oe) { + System.out.println("Caught an OSSException, which means your request made it to OSS, " + + "but was rejected with an error response for some reason."); + System.out.println("Error Message:" + oe.getErrorMessage()); + System.out.println("Error Code:" + oe.getErrorCode()); + System.out.println("Request ID:" + oe.getRequestId()); + System.out.println("Host ID:" + oe.getHostId()); + } catch (ClientException ce) { + System.out.println("Caught an ClientException, which means the client encountered " + + "a serious internal problem while trying to communicate with OSS, " + + "such as not being able to access the network."); + System.out.println("Error Message:" + ce.getMessage()); + } finally { + if (ossClient != null) { + ossClient.shutdown(); + } + } + } + + public static void download(OSS ossClient, String objectName){ + // 填写Bucket名称,例如examplebucket。 + String bucketName = "fancv-sys"; + try { + // 封装GetObject请求。 + GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, objectName); + getObjectRequest.setVersionId("CAEQNxiBgICmp5OcjxgiIGJiOGYxZTNmZWQxNjQ1MDE5NTRmNjRkZDEzY2MyMWEx"); + // ossObject包含文件所在的存储空间名称、文件名称、文件元信息以及一个输入流。 + OSSObject ossObject = ossClient.getObject(getObjectRequest); + + // 查看已下载Object的VersionId。 + System.out.println("Get Object versionid:" + ossObject.getObjectMetadata().getVersionId()); + // 读取指定VersionId的Object内容。 + System.out.println("Object content:"); + BufferedReader reader = new BufferedReader(new InputStreamReader(ossObject.getObjectContent())); + while (true) { + String line = reader.readLine(); + if (line == null) break; + System.out.println("\n" + line); + } + + } catch (OSSException oe) { + System.out.println("Caught an OSSException, which means your request made it to OSS, " + + "but was rejected with an error response for some reason."); + System.out.println("Error Message:" + oe.getErrorMessage()); + System.out.println("Error Code:" + oe.getErrorCode()); + System.out.println("Request ID:" + oe.getRequestId()); + System.out.println("Host ID:" + oe.getHostId()); + } catch (Throwable ce) { + System.out.println("Caught an ClientException, which means the client encountered " + + "a serious internal problem while trying to communicate with OSS, " + + "such as not being able to access the network."); + System.out.println("Error Message:" + ce.getMessage()); + } finally { + // 关闭OSSClient。 + if (ossClient != null) { + ossClient.shutdown(); + } + } + } +} \ No newline at end of file diff --git a/SpringBoot-OSS/target/classes/application.properties b/SpringBoot-OSS/target/classes/application.properties new file mode 100644 index 0000000..d420212 --- /dev/null +++ b/SpringBoot-OSS/target/classes/application.properties @@ -0,0 +1,38 @@ +spring.application.name=spring-boot-oss + +spring.rabbitmq.host=127.0.0.1 +spring.rabbitmq.port=5672 +spring.rabbitmq.username=guest +spring.rabbitmq.password=guest + + +# �����߿��� confirm ȷ�ϻ��� +spring.rabbitmq.publisher-confirm-type=simple +# �����߿��� return ȷ�ϻ��� +spring.rabbitmq.publisher-returns=true +#################################################### +# �������Ѷ��ֶ� ack +spring.rabbitmq.listener.simple.acknowledge-mode=manual +# �Ƿ�֧������ +spring.rabbitmq.listener.simple.retry.enabled=true + + +server.port=9010 + + +rayOssKey=LTAI5t5sF7sXqD8by7p3RCRB +rayOssSecret=mwTXDxnvGGO6V5YcMzp80q8a5oH67l +rayOssEndpoint=https://oss-cn-zhangjiakou.aliyuncs.com +rayBucketName=fancv-sys + +spring.servlet.multipart.enabled=true +spring.servlet.multipart.max-file-size=2048MB +spring.servlet.multipart.maxRequestSize=2048MB + + +dam.oss.accessKeyId=LTAI5t5sF7sXqD8by7p3RCRB +dam.oss.accessKeySecret=mwTXDxnvGGO6V5YcMzp80q8a5oH67l +dam.oss.bucketName=fancv-sys +dam.oss.ossEndPoint=oss-cn-zhangjiakou.aliyuncs.com +dam.oss.ossEndPointInner=oss-cn-zhangjiakou.aliyuncs.com + diff --git a/SpringBoot-OSS/target/classes/com/fancv/App.class b/SpringBoot-OSS/target/classes/com/fancv/App.class new file mode 100644 index 0000000000000000000000000000000000000000..84184014e9b6bfb34a0a591bae9c7d8ac4eb9971 GIT binary patch literal 975 zcmZ`%TTc@~6#k}MmevJoYf-#{*HX2U7~iTSKr}v7CDyOCQwu z;1BRe8P9ARTN2!4XXf0#^PS7@KRhb9PU@}01pE^VwioU zv~ueVQ_ZyQlT`%Qgg3+C{6@VgpPU7S*7Dnkw(~<0_&HU8LIE4J1~Q7VMQvPwB%UnncPP5 zt@2dnC`a4FGAw_}wNt6wQJErI8(JGDoHCkX*1N{WJUjMD_dV39u}8dbjN>AACNg?o z#krNdSGa7Ffq)Yg6#!I3HH(Da6q(!>(UFKHVV0@Tc2OvG#J{aLj}ns)+S!3TR1B}X zqlD&+4@{J&QV$97>{P_Dv@f_AljLu-?`Cgg>V%j>nPL7yI|Dop@dV8PYav>A$`HPj zNn%!ZjZFrt0iK0;jyCZfxB6rMP)3fS_1_i@i=HT$Ho)dIvwm}8WLt^Ivd$$_TD!El z)Ke$V9N!xC))zOCg4EvZTRW!OJI|awk-eRg`G`{Z|4l4$5>^NaA!ex@TJ7!M+scD|F5l%6WwJ4u=ky#{x-ZETT#v zK6tYL1FE%B>j$QGzhb&J^9{3OoCQpg-&IOoqqzD6UX`>pveoIIVI+8F*NU@&CAu3V SU#HYJ_E5^OoZ%*J0e=Au-~BiM literal 0 HcmV?d00001 diff --git a/SpringBoot-OSS/target/classes/com/fancv/config/Knife4jConfiguration.class b/SpringBoot-OSS/target/classes/com/fancv/config/Knife4jConfiguration.class new file mode 100644 index 0000000000000000000000000000000000000000..9f78e2f3d2496413e93a68d06dd8a6254cc92a15 GIT binary patch literal 2256 zcmbVO>sC`&5dJn0P6($c5wY}2rPd%O2O?4{XbFf&4VMxGsa3jjvJ*C(oRgkQf^X2i zLx1&mf3*D(Ty?EJKp#ZkqN}q{0$L$dnzgcL-)82UnQwOT*WZ8q31A%g7zS`vL$V7g z7%{YARKr*d5nPQTt>m>R#+AGt#e|ZdtKo*a`9%~rm7G+=R1~*jxQ#Dkm_{as8O*BL z9W~5pxT|5Fp>s;w(!b5no)}(d=$Lg1g5gY7+F~gv=Y_k*^A_#IvyREFb?!>FZfs4H7 zmx|7wQE<$lENnl#Yc%$an#da!D=10ZGwwL%uJFl9Ctal(!?pjVKCl|tzATG%=}C$u zW7|%{DTR{EI&P`yyy)_>s5$Pg3d$FIzQGT#8Z&~cfFf0H1(cpx&Iw#o+?6U<1II<5 z+Tm5sF!8ny-b~$W>sV{NR1$9bHF%yeXRA8pnnxQVzgRUVb-ai78OBbXbPe}(EZ{3; z;6B4af{s)zA4sbpT+g5aFW5zArm<#73=Mh>EXlm%_@3|bN-~hif+#zKt8=-vVqgts zRu()RSu7IWwtc^H(=ckaT54}ErTC>|Nu9KhrABouV^PNnzSgmd979(+_3-77KfL(q z7aePOpko~y41J`Q3Ta6OY~OV(OSl>y>e$3L8XoER7LPSN(XoZ^bZ|UYHZL+F z%P0o6smNihxS}9U?hEpMtCja-;y((Xep#rNgk-DfyOpC;Rqv=D0-9@?UZS%elAqD{@*^;niZ-&O{0)bv>TkytT8{w#07uKD Aod5s; literal 0 HcmV?d00001 diff --git a/SpringBoot-OSS/target/classes/com/fancv/config/UserDamOssClientConfig.class b/SpringBoot-OSS/target/classes/com/fancv/config/UserDamOssClientConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..490b68f3779be4013229ed65130e8b59021b1559 GIT binary patch literal 1603 zcmb_cYfn=#7=8QYt!iKCWh$zHFrzXS&h?6D8_@O&1P}pgY=X5AB{v$tV zVnU*cKfoVle0s)Z$@T$_ANsa^FVA~zfBpXclZX~*B}F}S+mSm-y4y`Dns;Quk$a9T zI&wcn?X;An2T6L!s7H97jG`CvV70<%ps*|U1+NOd&5JfvdV87C$jh3x%9kY-sd805 z*4kKMmC+HSg@OsUc@#L+tx)*#y$SbtSqdHTE#X-c9&mADz)PZ9lYs2lcLzqplOHR> z&zUI7HN^3WQKtw3#KdT{g+@_&p|nn`T=Vv%Wi)iERcEas6ex5_UD+^7L#4qL+&w$u zL#OvxXH{z%G8#L@YEX=Y&gF{I%06P$K9eaiO5{xidGr;OmTNV?EW=j%|da>AG2^Z(UZQw9k zjN|(Uq`8*UfE2C#U>oP)2?hk76B=zo_b>zNfz&Sh#+-6zg)4d{aAVaSgvJ_s5CAk) zG_}x^&z0-OSnK-c+_bxVTMcoGu|8L8irZn}YX~2KJDK^*|cehkp|8H_qWXUv>vX?%kw zq2-KAl#Crs{Gj&N*>9A<>cHy6N@8^#Qg>nY%L!^dtV!5T#mK{T>!Yy7ahsx>@azif fN-&M{%o}16Whjd?iaZPUtr&1FR&$U!+&R%7?#7rs literal 0 HcmV?d00001 diff --git a/SpringBoot-OSS/target/classes/com/fancv/controller/ossController.class b/SpringBoot-OSS/target/classes/com/fancv/controller/ossController.class new file mode 100644 index 0000000000000000000000000000000000000000..25a8b9166489d78ca0a0e0dd50c7e1ace911b06f GIT binary patch literal 1838 zcmb7E+fo}x5Iut=WC;a3#@7Usgn%u;_5{avocI%dL@di zQ_k2Z5qMCuaZ@Jk*hJ0UShe(_jo-++R#8HifwS?ER6PT^(sB0C#JWMZa+!KLZ zbzw&!ziJyqbGBw8{j$@l>-e=|G=cLq8>nzc#m3){g?YDU7=CU5dtf6M+c4CzWO}Q; z8$;#V9VhTpbtKqBU6-v+=uBJ1PHuEh&rPTwE~NfrbrgiQ(~!xY-Z!%0tXxwqukb^= zp`2cGmO=8n6bLMTa1enB6A|IIi?wPAT&(S@10{`>FZyC1AYy%eJ<{h;MNLT)7M^eA z^>=}8r%fs1JArc>+U?oKE9HCQbj(`aI~7>nM2*2Ny|RhhQ0;c+x^SSv4&xSNmf-9# z9eN>#cya%K2iwwbJ34Wx8zyq2dNRF*0nsySL$ZsSxi|W#2p)>Ep+hFgDs06WkiXppg^xA;Vqr++TlZ5{EDNPd&rGt>DMDaG&65oO^|Pjyv1O^(=3ayVol$ z{s!?24`VpT)hh#2_?T-YQ^0xNz0(W0h(c<-M`wA;t}OkIF@X(kIf0jpzaoF@=6e)= z=3C}(lA6FYfn8(hnbhxMW_#?HUT_JQ>A%R=E4WI_NrL|bpVD@k)_J~NqbK%k1)%4E=6`JQ|cirVV)>B sA2jtSu6I$)k3@0f1d4e&tWtLj3n}UurnJcWk_VY0zlmEs-%ii+A2n;^E&u=k literal 0 HcmV?d00001 diff --git a/SpringBoot-OSS/target/classes/com/fancv/service/OssService.class b/SpringBoot-OSS/target/classes/com/fancv/service/OssService.class new file mode 100644 index 0000000000000000000000000000000000000000..9988432a0a5f99870a8ad073fedc68e287a7e20c GIT binary patch literal 1369 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 literal 0 HcmV?d00001 diff --git a/SpringBoot-mybatis-plus/src/main/resources/mapper/PeopleConfigMapper.xml b/SpringBoot-mybatis-plus/src/main/resources/mapper/PeopleConfigMapper.xml new file mode 100644 index 0000000..d5eed5e --- /dev/null +++ b/SpringBoot-mybatis-plus/src/main/resources/mapper/PeopleConfigMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/SpringBoot-mybatis-plus/src/main/resources/mapper/TUserMapper.xml b/SpringBoot-mybatis-plus/src/main/resources/mapper/TUserMapper.xml new file mode 100644 index 0000000..132afb4 --- /dev/null +++ b/SpringBoot-mybatis-plus/src/main/resources/mapper/TUserMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/SpringBoot-mybatis-plus/src/main/resources/mapper/TenantInfoMapper.xml b/SpringBoot-mybatis-plus/src/main/resources/mapper/TenantInfoMapper.xml new file mode 100644 index 0000000..213266b --- /dev/null +++ b/SpringBoot-mybatis-plus/src/main/resources/mapper/TenantInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/SpringBoot-mybatis-plus/src/test/java/com/fancv/AppTest.java b/SpringBoot-mybatis-plus/src/test/java/com/fancv/AppTest.java new file mode 100644 index 0000000..84d0c0b --- /dev/null +++ b/SpringBoot-mybatis-plus/src/test/java/com/fancv/AppTest.java @@ -0,0 +1,20 @@ +package com.fancv; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +/** + * Unit test for simple App. + */ +public class AppTest +{ + /** + * Rigorous Test :-) + */ + @Test + public void shouldAnswerWithTrue() + { + assertTrue( true ); + } +} diff --git a/SpringBoot-mybatis-plus/target/classes/META-INF/spring-configuration-metadata.json b/SpringBoot-mybatis-plus/target/classes/META-INF/spring-configuration-metadata.json new file mode 100644 index 0000000..004fc68 --- /dev/null +++ b/SpringBoot-mybatis-plus/target/classes/META-INF/spring-configuration-metadata.json @@ -0,0 +1,18 @@ +{ + "groups": [ + { + "name": "spring.datasource", + "type": "javax.sql.DataSource", + "sourceType": "com.fancv.config.DataSourceConfig", + "sourceMethod": "dataSource()" + }, + { + "name": "spring.datasource.db2", + "type": "javax.sql.DataSource", + "sourceType": "com.fancv.config.DataSourceConfig", + "sourceMethod": "dataSource2()" + } + ], + "properties": [], + "hints": [] +} \ No newline at end of file diff --git a/SpringBoot-mybatis-plus/target/classes/application.yaml b/SpringBoot-mybatis-plus/target/classes/application.yaml new file mode 100644 index 0000000..974051b --- /dev/null +++ b/SpringBoot-mybatis-plus/target/classes/application.yaml @@ -0,0 +1,32 @@ +spring: + datasource: + username: 'admin' + password: 'hta@123' + url: jdbc:mysql://127.0.0.1:3306/mysql8_study?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&zeroDateTimeBehavior=convertToNull + driver-class-name: com.mysql.cj.jdbc.Driver + type: com.alibaba.druid.pool.DruidDataSource + initialSize: 5 + minIdle: 5 + maxActive: 20 + maxWait: 60000 + timeBetweenEvictionRunsMillis: 60000 + minEvictableIdleTimeMillis: 300000 + validationQuery: SELECT 1 FROM DUAL + testWhileIdle: true + testOnBorrow: false + testOnReturn: false + poolPreparedStatements: true + #配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙 + filters: stat,wall,log4j + maxPoolPreparedStatementPerConnectionSize: 20 + useGlobalDataSourceStat: true + connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500 + db2: + username: admin + password: hta@123 + url: jdbc:mysql://localhost:3306/mysql8_study?useUnicode=true&characterEncoding=utf-8&useSSL=false + driver-class-name: com.mysql.cj.jdbc.Driver + +server: + port: 9011 + diff --git a/SpringBoot-mybatis-plus/target/classes/com/fancv/SpringBootMybatisPlusApp.class b/SpringBoot-mybatis-plus/target/classes/com/fancv/SpringBootMybatisPlusApp.class new file mode 100644 index 0000000000000000000000000000000000000000..684d46a863382712964e162b412e162bd5abd6b5 GIT binary patch literal 746 zcmah{!A{#i5Pcg0N!=7^Xem%Q6mbYSu($SLgana#G6gj#J#bo^jajgFqxBl-XK@1c z&=2TGRm>VBdRQ?(lak zoGOm9ve=(YLgLPa(hSSJ)96B637!d^@}cwnVWll>N^DD0$_$H#(w&>LV_`)uowU># z3{7bh`Ca+>HeM3m@mdV4KTGXYE=Q_RWME%w<7hmiiD)k}HswV%`PlPc8+*xP^1wyu zOk(s{rKOcMbL1#fNktHLFpD{c&DWRE!deHPu}*fLH*geR$iy-9UmW7mT1}E(%a*jt zxL4ccAQMFqPFddeRD0yg$s5N9PwxD))+7k_L(g0xVG1VvVDXdBQ*#2{KCj PH1Dg}#S)!f_5<($W!u79 literal 0 HcmV?d00001 diff --git a/SpringBoot-mybatis-plus/target/classes/com/fancv/config/DataSourceConfig.class b/SpringBoot-mybatis-plus/target/classes/com/fancv/config/DataSourceConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..08688caaf71c39c610857faf8aa9ef257dfd7409 GIT binary patch literal 7670 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 literal 0 HcmV?d00001 diff --git a/SpringBoot-mybatis-plus/target/classes/com/fancv/config/MyBatisPlusConfig.class b/SpringBoot-mybatis-plus/target/classes/com/fancv/config/MyBatisPlusConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..6caadfd715ad37abe635b01f71092e617bea09d6 GIT binary patch literal 1265 zcmb_cT~8B16g|^VXe(5Z0)B(2Z9(QuA223RB_XzoLYfetrrV(oc4wOXK>1hdgCvsp z1N>3OJJV_!Dk{<4WM=Q3d(WJE?#zDu_W28d2Uy8r9M`hAo%S+WUwn*UGhxTjVHQI5h!a9oT=!w3K^E_ zp7Hs<(B2{UjNVrr-Z|epq26;7%TKg}U^Dko^DPJ~KsHpIDtxZHl7)^EGtDB(1 z!(O0tXFm|Wd~1R?R)L5}bMZ5jZ%CnuUv9_5RP?5@f|f=kT0Iblg5mz(qV|Q214oD8 zt1fY%-GJ6Gi-zd+WU%8oF6l$jjfqB)TDR(2x9Yp~0&>VRtlO6UQ$rY@o&!T^Ed#zS zsKc(FEo%>*k}U2Na2I7uuTnr2%M6QuK6X@~Rh4&z?(pZW1L;L1)S0}7diJ=rd(Y`-Z7H(X}UWsgWH`tJKKhTrHR4B z2Y-M+%J|Jvq177oVP?+EobNmLZ{NRsC8Ec4zeG8@Q=}~2Em4(fcB|)UHBW1dM&d~5 z1ED+86^s@eu4*|)Jajt_-tD9F=2BsUQDr|4jckcS8OdfKw!=^vZlnq$Mo$__`%cu> zGW3r$Z;7tb@0_OKVFXUsD1GYi3xKm78`YIsc%aQ~%21juM(JwpkWpqwd2nZ}Aw%&p zZZ(B|&0&qvL_@heIOJN|d+#x0jwQ^m^*QgV&}bC|LOZ*sO*k0s1#z@<@d}e^Ul8(V-q8XA9BG@Yglz5dYmRAhE} zyNyHvm+kN%hN(37JVv$ZF#evG0S|rWMQDUCG>{ovJw{W*5RArmg*jH<9=EkHLL*1Z zgXO#U8mQyH$FVQo$09P%ly?emN(U;|u6QnOrDlibeck5zPn|L>Q~RJFDBD~^Dkti4 z9~tONY2<9TrOk-pKH_8#{?AAf#?OkBX@tsU%2Odv_sX?4E}jbgXTL|17HyH$k(jpJ@fCukBR7W@!5`&X!cqSP6sKS1usSNiaU9)2p( zxt6#z3iLGA^|!<#@G_dA3S|=Rr(jA!w`jRn&nWXN`Fuh?eXi6ahdRyD4G_%%nng=l p2CP9#Gc=F4ymfv7LW&lX{br)NfZ&#JU&imP#IY5+4f)*3l^=+*P8I+F literal 0 HcmV?d00001 diff --git a/SpringBoot-mybatis-plus/target/classes/com/fancv/dao/User.class b/SpringBoot-mybatis-plus/target/classes/com/fancv/dao/User.class new file mode 100644 index 0000000000000000000000000000000000000000..2e017ba7c10f3374bfbb3f3166541b2db6693062 GIT binary patch literal 4990 zcmbVOTXWmi5nfOL0aD;avZVyAlUNSZ>KdlkG?1NEk)>LRB&(KeH%VIuA|VMD2`D5e zSG~9CHEk}vC7C|-v7YI8rk81)nM^0syreUI?o<2JU(uJk>9^;ABuK*^PG^X7_UwM& z^6Z}71N`m3Z@)uCkJ9T|8l&ekl%WO>O&&rXT09)`aE*sA>vWXG{1qO)%A~Kc^mQJ- z!NWIs_!bY}=HWXGd0`a)@dKTHs8GtQDpXv(>Kr=dn&a=5R|9`{ULos3%MZP}d&z5h z+ckH=_k++0y})lOG`Cs_>g8=GsC(6*Rjwax!_qvcwVGw8gDY=2;H^~QOAU_>T!m%_ zqODZ7fM(Xh#jW$0e5VfbXl#p{VZ#%fG!C3*^IFhA2t&>;P{(4Z6+d)$-3B~qZr$-} z3S}z|*9qM%gw=_;6?(PuS!jWKWS|X-xRyP)CPLfsYVcehh$%?RAmG2!E9;v}7q+me zdQkOtj^w6tQhVj%#@U6fC7@1wz85}@@Fu4&As355652%ddoaAp?-sK&ut(mKF|_3tRXZ~6iQM38L5@BP|M!QO1)g< zgrVCwd1>q_vH}pb%&@dZtAa4~bdj{jRT31h>Y@b2Rk_X3sqC*g2T`pW6~|xV{2;bH zr@1E!9aX=A@HZ~3tf3hc$mxdLY}G|@F%Bv_!3<~-#ifnVKZzv2eN^hg*5%hpchU0G5rMQ z?n^_oy#kv{<`>g|o%oX2v8;dnum@XoFBOY1gL!Q7n$FJ7hW=Rs~ z@3eFAqV6GzcjoQzXJe}NO%qc^E*70yZPUXmP^Z@vdg!+JlJ=(1{ddRF1im)L@SUMk zifft_x)-Y)W(&^;T>2oLfC-fjb&88!%&2!UqvXYms*h10g8U(uK1`FKpcj%%({v1K z^b*E7_$XsmFl*Cqk@5%O^kIx?q0GQcWJ&-%LLb3O;Won9Oa2q3e&0vVCz8>03FM)E zav_n7W=$Zg{p4aI89kps*80gKiDcXm3FLG?c{GuXn zJ&sb~qp~rlFsG+y-lSCWL61vBbkJM`vNS&po~B??#7;g#3rQ}A26f3Ltx)9hKH>6- zWS8ooF1b58E*}ss7wK%$F10~ja-(%zo)j*Zl6RRN)Ft<9$K@&Ea+yAxv`c+Zm$Ln% zTs|mVo=bLV4C+!|8AX+U)dA z%8Dg~;q_SzwmSD$8n)E;XyiJXbC!CO%r+utYk=hJw52g7{T_{8r<|o(=@=+)>j33# z!_paKL?GQVVxWSZ0jOYStqg;*5h!D2W1ylv3{cTFtzib45eQNYG-Brf8nN?MjzRed zl(X_N(5PJiXw)uR1qKx(P{As;LFx^3%n|3Mp&G+_QtpM#X98ofyuAnDYg-_a%{gMLb{(iWr)y-qLEMMzn? zN&9pO(lGs*T)GU&q<_*feI8Pd{)J|K8d4rFfC+jAQb9@M&GRgzB7FfdT&8<<<3E(w zDRYa)bsEFZP;Nmh#LWLIw)_7n{Ex~XXHgqGhHUUHrEz6(5>vM&QC?D7JBcDKoW!VP z*F?$U3l1vWd#OLdMHY_UEzX}-&xpc2QJmjHSsKNe>!i=!q+`#qK4+_Ju++$6aIs2L z-qwT(bt*`PrL|23J1tDd=(qSX@gQZm7?fSgzYm3qVo($m04d7*aNAv{STROg8_>q6y{ZV7j={Rf zer*KSd%<0Nf+3<9w^6#RWLrecBoVvZJDMYU_73!}hr1!*1jl!^^SQwX!ry17xODO4 z@f5gR@f7il;2C|JjuZ8N5yU^;`%Mby0EVC8$wKie{Q}pC OMc>8R!1{Z5zW+bHfUZ6O literal 0 HcmV?d00001 diff --git a/SpringBoot-mybatis-plus/target/classes/com/fancv/mapper/UserMapper.class b/SpringBoot-mybatis-plus/target/classes/com/fancv/mapper/UserMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..723c4881f3a2fca89b33848115d92049e42ee5b6 GIT binary patch literal 371 zcmb7=&q~8U5XNV#CblZ}Dn5eX96dw?J$Q-;Eeakd=`?K3?ku~TN?y%_58y+In^X|I zd6+-UF#Nu6KEK{S0N@Hva+u|Cl*6%t=~6eAV&_@GOSz#fVN15b$7;iMEXrC8RwPER zq(jqJ6m@WI7qAx3XvjJCct?RB#`bzVSd*={xFW%)z`nRC6wH>=`I_%_n?R?-cz19) zAQhY~Ivcg&XB~9a@~yQJ6H07Qa8ZhHFgUMmv-V{8P5di{$etzkj&Z?Gf{x<*1UerS t?*#m)`-Lf(|8=M!Ir*2xOo4()ioNtqNO?cy2^>H+)*KE~&C-4f@C~B-al-%r literal 0 HcmV?d00001 diff --git a/SpringBoot-mybatis-plus/target/classes/com/fancv/monitor/SqlPrintInterceptor$1.class b/SpringBoot-mybatis-plus/target/classes/com/fancv/monitor/SqlPrintInterceptor$1.class new file mode 100644 index 0000000000000000000000000000000000000000..5080410c1cf6c34cac4926b09245416a8b011ba5 GIT binary patch literal 1124 zcma)5U2hUW6g>l!71#=G{iq++s+96kyX}(?s4*cLn$X$=)5OPN8DZ=04DJp*`;#=W zni!)#`=g9^7E)Ks10>Addw0$~_nv$A*YB_20X)K94q0rP<6a&X?&t9UWeZytDi*da zR2i%Z_sanvF|2h?`Gh-T?fFidN5extYBFT?(2L4@4BH)711h=@-FN{z}Ck&aE>I;Tq$CKh{9P~u^iuZhqtag;k{SzK~ z#-9Z%!D+}dI#l=rFd(xK2p)j#GT4+M2Y@WPPGK2fN*LNZjU(@K3V z2ToU0>w{+PVu)0A6-gqsDK%C#iD1Zg)tK~p;hARE=cu@AK-Bqj>G~=nnrUSgYBuU< zFkCtkk#4I<+bF=ckwf0bGIlIHw6P0^n)#oXM!3)f%lrR;U-nLgON~@iIB@ugyF=l4 zJ+8gT8S&86=EUl>W1&KZt%X<^u1=+Gsesn$Tyuukb3{%oNXLtGGa+g`>11G9@cg-? zt7flOE-X4jdLT@bN$xp`W+80SCuM=gfK;hu#0SXIBgSZ|zx z)pyR2s((THV|=khXO_|c->^dGwHRE)Dz1=6pg1K-MbEhu3h#-Fco<#0KFj}%tYNh4 zpO9*NM&>7$K9HZn-{e0M$?fyxHr8>2a+%~yw1#9dxEVul;dbn8;12G_kqxYo&C~TP HS^E6}m#H4O literal 0 HcmV?d00001 diff --git a/SpringBoot-mybatis-plus/target/classes/com/fancv/monitor/SqlPrintInterceptor.class b/SpringBoot-mybatis-plus/target/classes/com/fancv/monitor/SqlPrintInterceptor.class new file mode 100644 index 0000000000000000000000000000000000000000..77a0a1301874cbd5951b5bd991a07d4ec9a6fe87 GIT binary patch literal 10344 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 S{sX)IQ=U9QJ*TVZ%wGeYxqMgv literal 0 HcmV?d00001 diff --git a/SpringBoot-mybatis-plus/target/classes/com/fancv/service/UserService.class b/SpringBoot-mybatis-plus/target/classes/com/fancv/service/UserService.class new file mode 100644 index 0000000000000000000000000000000000000000..b107da9f163165f4ada5bdfa9d93261b3fa451d6 GIT binary patch literal 1233 zcmZ`&ZBJ7%6n?r524e_J7$73z3vQs)w?vZ>64aQG3^7jOb9ZkU#kgxfO=m3afM&F}$p6)8bLb zsIYZlL|Yzf^O-lL2qR+jtTrcHoEz}1*y>|tq))WN8!A+GlObEF?lI(EYhN-<)Kw_o z#qFjv9|d`1DAlzmf<0lBJNGVg_E3@grGd~X2bzZ1-z~z z>ykAxiUUiwslUOu^1lh5bk34oxq#icDx6JXA8n{sC~Rz~T$M}i|7%ug=-7Djt#W0a zbm2GBx~;pK5Y?5;3A@cB=~1B;`X-l#lIp2KA|lvKWuSqnZLPY^Fx6-5wUuU}D}q?=9x#+E+gCTf z5XpetyRI?3NhhW$bX)m4=IxUv&3)7f;)r|NNZLYQB|m}ho8;%5%~QX>Sf+oNr+>+4 zQH4krNE;?OMlws1ibwl3I&qQ?H?;a4>?P z8PwMtb2f>ukUY*(gmVMz<308o^cR6$~MQ`5Ri?J9Q4b1{J!cmN&> zag$c+03NP$?(zM66o3DGegU{Z&xebak2X3Ux*iS~wyva-_L`yAA0!O!jUEezMl6-M zE9N7S5BVsgPCM2q&k~-?Qm>n?ol3*diBmlfU${z_VYFBbg|U|mT{G21Hjb2e75S62 z(_vl^sP|APE9WASMiMDfN?UHFRs?FsI-i8If)a&mivOsKJQcUH3=yp9XEVO!0qWTD za2VhS#|*7M8HiV&3p1`J;r(bPQcJDP4UsV-r)!ggJcES8DbXFOR0raPwA40N)O>2oFl-&Cv5}D&$wU(E{Ww;J8%f+4_6ADN{A6xP zOfB>~r7!%kQpV@0QGtr5a+Yf053`g53Xqsk1{pxl!y3vA+y9mB;GT#3c;MinhevqK z;Jp-KsCG}44ks-KZ4VuEN#j*pUXRa3U>Lgpq_-fnM24oPQ|j-yz0}@*$djbEqNAOa z!bz_Y?~PA`%XHf@FO?v-4bv=_s183QMnqIyr9`;7C@z(ML_IY$Ucn=}(8#p??PhRn zS4~K)o6D^KJPNdsqo-@X9GGo3tu9$U?Tq$f_Y2s^EPRdDQs#8w(b-!hU>y~*%BZ47 zAolV>1_spXx$alwPd}khFMdYp3a5fR<*ifc3f-$N;ni>*b&56UFETPLvm4pk#0Kq_ H!cE{80XOAa literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/Consumer.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/Consumer.class new file mode 100644 index 0000000000000000000000000000000000000000..d8467298911da35dc732d0e84caf6897c63bac19 GIT binary patch literal 1680 zcmb7EYi}Dx6g}g{S=({z;5IESP#Q=}9*`}xJRMR}LsBG%M^XhOK20{0&Bp5)vpWu| z5dQ=5F93;0g%F?lGyDU@nca2c#8D+a?B2b1?wtEL_wL{SKK>KH+jvkz6}PJJ@Jf@0 zr766M*E}rOXz@MVuHkjO;o**ly8`E86ACmtCJFsC-oJb3cT5v@5m%_dSRTf2T>|;r4yK*zb|!gI&8U+UT^5p9Cr|y-c^{&EDi@Xk6R`!YCCeqw^IvdlZ}yPW*MB+B2)jGLc# zqSPv_l9dsRBKK8xueNOlNubsv*P`>o!k1m00#~;N+D1LK6QvP*wx+eQ(njo#z+%ot z7IEKI_KiupK4T@y*hhWECieP9D{UF&-qX^RPhg)UU9^0dI}ys(^rL_>BZ;X71xFi+ z8T19N&3!v;!}9QGIdo^=)o~sd>X<^ET--OtrZ$oNoRqXNi8m{FtImOZ$HTjIyoVXO zo#wfYOU^!X=9qYB)v<#2Pu$CS61eR~_Wux7!z%6xT-;KDijLHcVz~bK;|IY(?a8hp zOM$dsME1b(Wu>;{8fIN@+yiD9@e?Z9b>wV%=*Wg6PsZxmiGN>i;M=U2UKIDX+;r`W#|8OlwOa(++#_@J!Rm;N$`!QDES-A;Zf4U!L`QNL8 z8_DOIn^yi5C-}|b<-0-6rxcXs#a|(QaV2YU$-JZ%~#f z8$Y46^cd%W-!W0bF-$ExzQAaW4C-?3UO@38F5?OzpCw3HP{H&X@vqX&;oqTj_|?Uw zzfk@KlgG$;f|Zd3s|D&1i)B<;^svy`tO{Z^z28vz86}6s$>n>9RmOAFN_ZYGWb!&* lq`XAS4a!-{mr}fpxfD0irp0x24Ikk?6P~ADp}xRp@js1mvcCWT literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/ConsumerService.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/ConsumerService.class new file mode 100644 index 0000000000000000000000000000000000000000..f9d8553ebfdc05b6ba494f918d85ef18ca9073e5 GIT binary patch literal 2113 zcmb7F-BKJy6#g1m7S2;? zN-r$$eE_W#DbcdL_B~>G=Nnjly)(c9E1KP!KHX=|&v*W&fB$>`R{%HgFoRYMXW(GO zE|=4AExnRK1Fkk>6xW(?J%hI~X4yB|s5FtrWCrK(UK&$r+)U$rfyPNM@XVAzeRg0? zpkY>TDuLFV7pTRuzoEiaxltsiEvNIcxF$o-o)cz++43TRo?Kr0?jsrGcU=E7cUA{c z*;nC;3U|D`nh9+>vfk1_gJ;gkDe}xOyWCT>Xga`2}UR^yZQbrLT+%8C*xU zO6l&#W0j8~HLrMuK$>#Mn98R`YGRB^)+b{PmAhPteBoZsi;N0XI9XHU-_tTh=$RE= z4)bcxvlVJTk@w3sR)MbNa$r1Pt$C5h%1sA>Hqv;kk-*KGJ`Ei*zRWZ z<}N2YJFw1Nrn2iZcA~0ty2~>7906VCbaliAJ?$>BSq*I}>9f)oDn&TXrhVJdrWl-< zlLU!%WYI1}h55}4ma!r*_Q&3re?Ix?+1Fn^+yCaTU%unq&2RRO_ln`(UhXZ}_{6as zC$loT<3ga*m)nXxo|opnXSQs&8yOe|`LKFK6W6EH@_#rrvYE!J?TAkV`j6Vs3wHFj zO1>d6ra756I^0d;Q+`x)T5sDiaOMM!_H0o`ks{DBao{o>DPc)(5S zDH_Kcenh&hX%Ee$yAWc&jXs{g_I_{*y*SL<-;W%AdDA!|m z2^2cUD|nTVQW!%wE)rG-SJA^=JvIBOf01`@FEvwwqBuWIV|@wwYov92)jT-#8=O6~ z9ASyWZ>b8uIq`X5i_J6NXS|c$8NcMO`FW)Vp>Oganbg8lY;bbiv9qID_eoop?O7ztvSy z7ySS}3UNJDN*1X)(p>Al&bjB>50Ah90Qi8{A?nx;uoL1Hb_47&EFUYa+zG={r#oV( z56rb>SdWyJ7iAtx`$fbVMcR=`L^cvudH-*)?rv1U@HR?J&c{M0cRZi+^Xb6oqRgc| zolG*72&ath6Lv0?X4vUmMYrNk@J#5G51myy?N{8wri8Y+AkDCGF5Qi}{v@o(rIVHl z!=Wi{B0nlW-~K|@cbEEil#r++PG>eLOF?yO?ff#V~joccVoZt*cit} z=}cnuSf!lQ5JDsDTuuu2#1~qyy{;Pp`rDOy0IGv2nM(-Ec z&nn#{>(iiu6|$}80)$v4Z-x9d0`bl7D=?thuJ!J*^mW!BQU=r!P|pmbi5FO>_y+wA RMvkB6Wo6sgq|?)G0Z-Q%!0rG5 literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/bean/OrderNotifyEvent.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/bean/OrderNotifyEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..c1b45275bfc92d2d30fbe6c3a12293aeb689bdf2 GIT binary patch literal 2560 zcma)8TUQ%Z6#h;!lL;YQO1U()R#aLbfu?G`lt9%|C{zMiDE0E(biWraGaUFEOUy$nuFcJgD)yE{stZ^d@h>Opl|d7E;(Ldn32TOwRZ(A-Bt z!!O%4fw7g6Tg~5-PU$dTeURT)(#Z#bR$bq|ceHS*9G~&K8GpS2^GqE;2cWfMK!+yU zaZYZLz@qZY?#{aOWL5d3kpXDe43LQoTm5U}gnDowD>OObeQo=`D*1)UFPIDWB+=24 zfa&^WF%hFy^?nhK6OVU};pqR_Dtd+wv?~ z8FT&ia&dv6xK4Pgc2M!D)eP1(*7Te7-LNRAI%_+&e@!6Qfx^y3qPbyAj;Rgzz$>Xm zTPJ_0HJg`o38pcC(`gK1NZ^hCuYfcz;X)e27)fJHuU^IZH1fF2TwZrwzvg>#KTK+^ zFM&^zSV^OZ)im4eDs`GwA0|U!Fc8^pek155`)ggADXd{#V7wLbM3k#JF*RDJYfelG zj8x^GV%wFZf7kX&eAs|2j@g&zt-VGqe5&E!VS6-@+s>i8r=qqEV=l^)?|MfT?lNO5 zuDf@z&+1xs9OcbdWUZzMc8dzasuE%=n|+FNhbXvQJoe8@VdW~Sj`3}B?w;9vKyLgAI7~9}7t`J(B)iXk= zCQOra3&sly43Z-R3E?k@7gTEQV_Gl-v#wCrF;0r8#(3{F8tntd6!hP#FR3r|6kR}T z(}ZOoc3f|SUJ$*u)_fH?$2s?9e?lr~ob1$Nw3T{y&^@D}Y9kkYQTNbXfA!Fn&Ptbl xAo?lLy~OVejyh8FVPK@zR!Vp1?KnGHS407uob@Yn8(XZ;3@Z~za=*aO;y(cG^w9tS literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyAsyncConsumer1.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyAsyncConsumer1.class new file mode 100644 index 0000000000000000000000000000000000000000..23d10456dcb4f148ba4f3edaf08872e17582c01b GIT binary patch literal 1325 zcmbW1-%k@k5XZmUQm!pUDguf>5ETRpWkC>)5DcmDM^aG15Z}ylY|BA!x9)8*jq#7t z2aP@$pZ%kZbJqh)B}RR@xt*K+?005%?)#4~Ujf{~QWk04%wQZ7X-xKD3Izw#SvZ(+ zP;@ZsfHQQjc*?V@49Urs^SNpsolzYhi*SzKhR?>IAE`vZ+WjS7t zb%K@|GFrt^41<&9eQ_vwO{gm0vc^-@Y89-vUB?((dWqXTk_yT4_ko3DVP@ zed*eWl-csCO4x>>lwY>7;*hd7RW9nn-ILsC_dr_8Ca8x(xT}rin~`(<`B6qIZH!p( zDkYWO(hcLvhhA9PfsQK7hAA)%Z#IHn_Q31F+e40He5Uxx9&I-cgMrmN8y(G3b}mBoEt*43&sRNj1eYP*l-&{Gx7 zFmcL-Z@W>)7Z=xPtka-rq0vv0rK-|1M=MU2kxdmofxV}f1bXS&9XV%khTe0n0Q8}s zRxB(lMTMIm5G)Z!d_bZj7?H SEQ%P%S+ZG@5ETT9AW-yM4G$wm6g@S|WEF9c& zP;@Zkz-8!OkxJTChUDbbHbYlQ?+S*#vQ%QD;qM6Zg74JG(_hveuWfT9!*%TJvU@UM z$gelof~N9HS_KVXm^p^r6QzVH)p!sHinv?$wC`59@(x}9wOf;c74+R*7eTY89-vUB?!tUwaXWVdKSYb%e3DVP@ zec{=Nl-ZJ1#cjh-$}ihkaY$L4s>|!#+Y_$Q-hr@`O;8VoxSlq`-He>;&yO-%X=B8K zS1GCNmTnkNJd|N+2Rf=S6Q;m0yxCAz`eIuKl1jd&l(yVTsxd<$64E-j5@z*An**1M zYJ|4Ux^PR{uWKcgrNi$3Ni{#l9&7KALxhyob?H%ctq5!}S`>NM@glXl*NfZ!$mm9$ zVZ?71k6f=#+mPNM%3~c^2eUb3(UZe%5NN;%Psl^DI~uq1-sszR4(4-Mz#ZyhXJ>Ob zhXIDg|GQczfUWj2%>HYC8OHzWc$%-8u0~@-Hz=r87WUn;u2zMi^5(-++kG^LQdKm= z#3>iP?M5A6TwJ5EPJ^a}Mn6fGs!Gostz5E^;3C&`Zzm$hm+s^qy-4pb!1D zVqsY+D%|{lV2Lo|0}}no>Cfm&;uj+ueOsiXmLkqjD>mkY+(8Tx?>rGwG;=_Hjo=qz z_&nJVo+(U!L+T^Cf00}2=GxR{V(JkqPe=^Y?gTF4Qe-dV3fWNl2-&M-M*}L%^#C_8 S7DbHXEZHnca_G01N9HG`(^W43 literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyAsyncConsumer3.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyAsyncConsumer3.class new file mode 100644 index 0000000000000000000000000000000000000000..a60064c1b10246a53e16b103a2b3c0877736e175 GIT binary patch literal 1325 zcmbW1-%k@k5XZkuDc6=F6#>N`hzbJ5awv#K5F|DJND3+#;+t8HZ8_-e*1avJG5%5d zpwS28vwxIv_Ig06#HcSfw{x?f{m#tJ{rLIy8-P2Q&me{CX^de!g^6xVBJW@-0|z%8 z6dX)Da2dK5ed(JehQ!3=CPQaYZ3~9pk}t(tJ=hZZCEu!&r>~?uUftx{x9iy1X?FaO zA-CFC2^-QYDjC)Tp=TMgPo)&PSmj|TDB^C(Q-NFN(%W}~H*VDrjiB%Dst7|~5v6!N z+74P^NGlmfF$_$UcKJSct6Wyx4WoToS+J^|pvkc^e+#hsgxOKs&$;G-FhY}{W29$W zyTUUODZSxWBsXIry4WlBO%R$%QmaGO7FQ; zR4tTg)P!49K}|^^4IQ@pC)NBAd#Jrl4iS<@)qIbtYeZ-Y(W1a@#|zZz9xrbDW3B2n zhT))5IB>l_X+vs_C{I*q9L!{qL3b86af|Apg(v)du{{#E^WMn2_YP*Wn8R)AVtZ$^ zID>wM`Tx6G$AHcDGR*vIe;LO9>Uf&3s;Wd|L^mj`mgjcelB!gMrt;?OsjWVmLtmB^ z!}tjozU4+8UR+$Eu}*=eg+@O?ma0n6EUjF!jBGOh8SDeSbfAZxU6J!XPSJa|8Gv5& z(Tdr!Qk32NkYF7);v+ix5>sE$nZOYv6Mb8zqaH+@!DejCvD^U+67MV#k~DKbZiV3I zV)!gs3s2{#z9abwT}R}mx`h^X>6m)J$`KMnw7Uc6aUrr7afz&zK1}v9*^!V6b2Y>@ Tj7AY-I88P~k{tRi=8*mc&$m@r literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyConsumer1.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyConsumer1.class new file mode 100644 index 0000000000000000000000000000000000000000..4f004f95d718fd2f30b8f996809f7bb77a2c2333 GIT binary patch literal 1388 zcmb7ET~pIQ6g^8RX-kk=`4m4;K}xX%1V3SLn5xK3ib|33%?V)}0!g-Rwm6LAkJ1Mn zeQ*c40SY>fyyRx@-aYr+v-j@LU*En1xQ7QhWH6aU5v2^Kx^W9-4bwSjFf`0) znALEbp=;3%T(!iIDo$=PbXLSRXXrKEfUhUzi94S`G->>X}MVefH8g@lcWh+zxKjrG`BeR){SVjD(6c!`S2 z)kIU;{HYrW+ILET>8J#T;q_*qT%T{cp-Vz92Z2zQa!Fo>QcR?kxE@vYPRKoj^psqv zg9bM$!f%Lx2a1wC`WI{K2=<8kDLRCZR-)nBbfJoesvIxMbiX}za@Q+TG#d;<{z3WB z_2y)#p4?ECn#yCC|4&K@mH1R7Tg7};+jz3Ry0*fQStByfM5r{(>Bym5$2{(koRZtz z-RIk*NzR9(?>}g`tJ5Uhr)D_aAUZCfk74%A&3OW=)gTNrXYCM%@&C$9bLj~u9zW{A z(5uhy8m4d@E=ibtl(pSQ^Xmq6!7%Zck!kD6qt?eYdJZz6d7~#IMV17muTCq2EF+sP zeF6JOKON|yZ&&Q>!#VobTLI`rfmSS1l%k@;j|r?Jiui<%LTc(OI#W2t$i;gDlxi@> z8EC~OI1z3?1_*DE5YjZYKz^CPhZ68PvJrT;H1z}N&*(ZvZm}!0vCAf?hgf-n#4w%i uz(tJ2_7X0W9U;#ZvR8@vXh_0b4{-xy9OJl&i8!!`^JH_xOruvdkL+)8J!eAz literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyConsumer2.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyConsumer2.class new file mode 100644 index 0000000000000000000000000000000000000000..05ea545643a4cc39ddd819d2895f272201a02d7c GIT binary patch literal 1374 zcmb7ET~8B16g@+M?H5uJ5D)ubUQ6mx;u4tTGJSRls;(m z!T9WtGTz;mZ)57q-o1D3oH_T-x%2Dy_a6Wr;z1ly+=*cx3sIyKSVYFcQXCfUTF6>h zwqP^#Z%R*^Erv*XvB1!~qe_BdFeg2++i;6Qzv0CiMTT<9;k5$SGVnXWUUMjYhD5%# zqddRi3Vn|u`O@=*-l=il7qqyRbCheBx#u)(_nlpnz7e!;=Y{X{ipX{Rxic6W3^C<( z5*QZJ=OK!Md-k3#3B9X~EVrIEg=aPb_6hGaz%bX%HilGQm_t>1#Wi<@5t=xUq;pl? zUE29V`NqOZ5^*GwSOq~0YvBml6r~xrt)E9TA3j=GOJW`O8D`IE z?XN;f;u?k-R?lU2qe@cBMNu%U{O^@B%y)G%4P;GK!nq?+`L*(T)y}C(MQG}8Dme9Q zj0RVFWfjiKDaiv9NN?k^P!|ihMejfqG-&izM95N$>6;|aCdJf zPT~svC))`a#1MHb=qP0co1YL^Pmu8$JwuVDZ|IHS6eAw4P0>-)AfQR)k>c>8tqAUAyjSoO-?BDmw-^8FuQ8!8Q0twMraarinPAH zCma)zGMk<&xv6VP`Be)m4k;_`+Pub{U14kG>6E7@ne_Iu%!xR{XHtN!NzS!~tk4pYfN@ck5sKg9~NJ#VGN|@E5()%_Q zRSRVrHDQ;OUsF;@Lx(;1lWKm9J=WePhX^U7YM#T;YeZm*(V|H7L*8KMcH*WlYgMl? z4Ev4Zk?Zy8c!u;E0ajFCEX?GPMOO~DaGOe?g(JKJu`?2P^8U!%cNS)In8O`vV0%+@ zIE#LU`Tx6Br-04QGR*vIYZ=D=>UbKhs&bb1lGi Tj7AY-=p~yaNf!MP^T_-JEsa#N literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyTagConsumer.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$MyTagConsumer.class new file mode 100644 index 0000000000000000000000000000000000000000..12bd7d6961b3e6c5f0b2b97eeb9497e15051245b GIT binary patch literal 1431 zcmbW1T~E|N6o%j7tL(DKih!c1h((|L`%-1jy!3(sg z^t!5OM?991sU2r57>ky`(7jd(jP%8(3?-Sp7zE02BgtQeTr8wI@lLd=H%jl@NucydMI;7O4p|>-&XBU<03Qg8z&*o^SWU!+chW>DjDn6pFy?*oy8tQSvNXOp>X{w=^(^aiaI1#rKUBtUggho2oKz5PfR}%On#R#6t zjebYtCp4XqtLpk{)TI*Y5i3hbbkpB;xQc6W?7?-4y_C5@@g^G38K8`-b?^WH literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$SycnConsumer.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$SycnConsumer.class new file mode 100644 index 0000000000000000000000000000000000000000..52781aac79c06a8c726fb9ab04adb106e941314f GIT binary patch literal 1531 zcmb7ETTc@~6#k}AmewM*c*AQ|kW#FR_X~(2B;HaGDM8T(GAu(`=+4yHDW-4!B~8@C zMB}qR%6MkGg@VT5KJ3XkbIx~e-^|ZnU%vymg9j<3Fq%dZ#T3SHr57a!SJQAY?%-OQ z4zD}7;ov4ikJ<3Up>c+hvZn%fol9@q4c@vnKQuxL?aqoYb1h z#*8j8bkC?Y!O&m!rI>33t3ogG)f!oHW##eO64$=fV`H~1iy>2KdU8g|un`DN>QhN2 z&D3}p3Oc=cu=GQnAXI;LR+tU7HqSK=gb|vMQcA{sG8`+EH~BVqYg|^{iqXETPS^&V zpfw3w@gENR!k({g3eQAgsfu5f+%z<``l=%^b}1`eb$Ok88^YDf+Y*L`AJ%PF*Hc=! z3z2d5MSB609T;(SQ`A(tq8i#0k9<4Qqx+V2)z-@}xX_Ts55$rm`ZVfkDV5>Ir}5G* zqe5DV*X>~5DZS+q2eeS8Sr_h%3hGJ`R zHYHj5ym;M@wQAHE&IQd<+q7c6SFGPk+r-d2N5&^AG!AZMa0rbMV z>&q`{E<^6whIy?`s=OAS@VCX<{rqs4PZK+KciUQ#gZmjwU~QRI!O>u!LnJqC3>j3Nbkd8B+yUV6v+h1baCtxSn&%IA4p3e zOaC771eS1w{>NKh$l(}isTiLl_Qm86%NLflh7b^m3tq0kGek8j*AW literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$TransactionalConsumer.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener$TransactionalConsumer.class new file mode 100644 index 0000000000000000000000000000000000000000..a9fbe3e48d39f639ee7b9af0d499dfeaab907f76 GIT binary patch literal 1560 zcmb7ETTc@~6#k}Ame!)Rc*7f2K})eNUQs~|A@N!is6mYnWLSo>(4DEXQw(qZB~8S{ zMB}qR%6MkGg@TR2eb|$8=A7@`zL{UYzx@C(jt42EFp@?R#S}(ywHGA^*V1q?=HPmo z4sSTP>EISak6H7>p)rOlWlsg}Dwp1-8@zXGerSXg+MN|)$g83p>k||*=}X^CF%%02 zj2T&E=$=t4g5gNnm*PbuSQh#fU#^iQS5_XcEpqK!JvMgRvKWrP(p-kzGrp3%Hlt+N z2!v+HJe5@2OpS-3Ah!nxt7E7m8g-PN6=qGX%yG>FVT2~gl#+4hR7Ih@&NsPRtrlG0%H*JBjOIhiv%j?`*6RuX?hA^~_ zux_)up3=fyh>WxIt(8o+VZ_xPiY}DA~h*Rn2!`cWU2P4k09ss{0=8 z!idn6BBf;P_8I!Tc=3<5YSbA9gRN4_v}E0vBFCkcjiL7iS)ZuTIJlj`A!IV>!yO0X z8QjG^hO4FKm+#1kycVADH^s{R{BW30Q%$?uZ7#{d{R}2Bx#y@k`wULv6vM=UZc}GQ zGK~E%2N;GAl#rpTV5!^IQDuvE8qk4i7$R+xOulmGh;fE`5z38E}mHfz^KuUHr9eK?E+j*vD*GC?w39Q^`T{EEaU(h|th zzlS`5SsbPRiKZ8FI8GY*M`(=fK$79m$1FM1g2>InKBHg@oBNEeTzB_(B;R(8R<_ae zdKW$&dCU>~d|Qg#PKq1`aGFr#6azqZno^vJQ`{tJQ>2QcKjCbncNe)?`11%g6E%^F xQCnElUJ_?1I)QUIAIU-FNggB11(Fv@UJ5aU;SiT`CGsfHsqLH|F%-}b_6LSkon-(3 literal 0 HcmV?d00001 diff --git a/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener.class b/SpringBoot-rocketMQ-consumer/target/classes/com/fancv/mq/listener/MessageListener.class new file mode 100644 index 0000000000000000000000000000000000000000..ff001da9bcf7764a106dd84379adbaf11b07f427 GIT binary patch literal 1427 zcmbVMT~8B16g^W4OWQ@hMeq{^p{T4-1QlXJnviH(NQB_?uuj*-?X2!>(f%ysgT@Dc zfIrH3cA;RwhsB5PnS17*d+$u|onOCy`~yrNw1@~@I;_gKTSgAY8SzrJwfORjMT!&b4<`!Idp2F=c#C2 zpl`$1e*A(y^W}Ykd^LQl1O{uqR@<%Sfr|FzK|qFLR|fks@)P@n%*XG1BQRHU!=}@a z+C6fbADzHAvEns3b!Ck7RPDrOw*Cz_ILTMs4O@|`w)`ae*g4n5LwO_xCSSL7>^IfE zZ+vFm)H;l1a??z@dVHD>k*~c*B%A6}7`=DgP{-Q~eg!Y&^v?8&cUH_V}a#Nab~)EYCW6ipMAz_$fiEu zikA>}ckBNO+2ff@?aIjZtzgQq|3O_a-feD2Tla-ypuE+qd}bOUWVJ=Gs1X zz#Rqy`f>MEJe}?Ug^}EM^n67=2_SG5z(yYT$mKADSz;3QK5>q}F%)PQP{IHPF^o}+ uV}jvo^cR6$~MQ`5Ri?J9Q4b1{J!cmN&> zag$c+03NP$?(zM66o3DGegU{Z&xebak2X3Ux*iS~wyva-_L`yAA0!O!jUEezMl6-M zE9N7S5BVsgPCM2q&k~-?Qm>n?ol3*diBmlfU${z_VYFBbg|U|mT{G21Hjb2e75S62 z(_vl^sP|APE9WASMiMDfN?UHFRs?FsI-i8If)a&mivOsKJQcUH3=yp9XEVO!0qWTD za2VhS#|*7M8HiV&3p1`J;r(bPQcJDP4UsV-r Date: Sat, 6 Aug 2022 13:55:41 +0800 Subject: [PATCH 04/14] feature --- .../src/main/resources/application.properties | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/SpringBoot-OSS/src/main/resources/application.properties b/SpringBoot-OSS/src/main/resources/application.properties index c47c208..11ca3a1 100644 --- a/SpringBoot-OSS/src/main/resources/application.properties +++ b/SpringBoot-OSS/src/main/resources/application.properties @@ -21,18 +21,18 @@ server.port=9010 rayOssKey=LTAI5t5sF7sXqD8by7p3RCRB -rayOssSecret=mwTXDxnvGGO6V5YcMzp80q8a5oH67l -rayOssEndpoint=https://oss-cn-zhangjiakou.aliyuncs.com -rayBucketName=fancv-sys +rayOssSecret= +rayOssEndpoint= +rayBucketName= spring.servlet.multipart.enabled=true spring.servlet.multipart.max-file-size=2048MB spring.servlet.multipart.maxRequestSize=2048MB -dam.oss.accessKeyId=LTAI5t5sF7sXqD8by7p3RCRB -dam.oss.accessKeySecret=mwTXDxnvGGO6V5YcMzp80q8a5oH67l -dam.oss.bucketName=fancv-sys +dam.oss.accessKeyId= +dam.oss.accessKeySecret= +dam.oss.bucketName= dam.oss.ossEndPoint=oss-cn-zhangjiakou.aliyuncs.com dam.oss.ossEndPointInner=oss-cn-zhangjiakou.aliyuncs.com From c91365c35bd535a66f4b0b7e700bd6bb32066a88 Mon Sep 17 00:00:00 2001 From: Andy Date: Sun, 4 Sep 2022 22:05:37 +0800 Subject: [PATCH 05/14] feature:spring security demo --- SpringBoot-Security/pom.xml | 132 +++++++++++++++ .../fancv/SpringSecurityApplicationStart.java | 19 +++ .../com/fancv/config/CustomTokenEnhancer.java | 27 +++ .../config/OAuth2ServerConfiguration.java | 154 ++++++++++++++++++ .../com/fancv/config/WebSecurityConfig.java | 71 ++++++++ .../fancv/controller/UserInfoController.java | 15 ++ .../src/main/resources/application.yaml | 40 +++++ .../src/main/resources/jwt.jks | Bin 0 -> 2200 bytes .../src/main/resources/templates/login.html | 37 +++++ .../SpringSecurityApplicationStartTest.java | 20 +++ 10 files changed, 515 insertions(+) create mode 100644 SpringBoot-Security/pom.xml create mode 100644 SpringBoot-Security/src/main/java/com/fancv/SpringSecurityApplicationStart.java create mode 100644 SpringBoot-Security/src/main/java/com/fancv/config/CustomTokenEnhancer.java create mode 100644 SpringBoot-Security/src/main/java/com/fancv/config/OAuth2ServerConfiguration.java create mode 100644 SpringBoot-Security/src/main/java/com/fancv/config/WebSecurityConfig.java create mode 100644 SpringBoot-Security/src/main/java/com/fancv/controller/UserInfoController.java create mode 100644 SpringBoot-Security/src/main/resources/application.yaml create mode 100644 SpringBoot-Security/src/main/resources/jwt.jks create mode 100644 SpringBoot-Security/src/main/resources/templates/login.html create mode 100644 SpringBoot-Security/src/test/java/com/fancv/SpringSecurityApplicationStartTest.java diff --git a/SpringBoot-Security/pom.xml b/SpringBoot-Security/pom.xml new file mode 100644 index 0000000..1f184bd --- /dev/null +++ b/SpringBoot-Security/pom.xml @@ -0,0 +1,132 @@ + + + + + SpringBootCodeBase + com.fancv + 1.0-SNAPSHOT + + 4.0.0 + + SpringBoot-Security + + SpringBoot-Security + + http://www.example.com + + + UTF-8 + 11 + 11 + + + + + junit + junit + 4.11 + test + + + org.springframework.boot + spring-boot-starter-jdbc + 2.3.9.RELEASE + + + com.alibaba + druid-spring-boot-starter + 1.1.17 + + + org.springframework.boot + spring-boot-configuration-processor + 2.5.7 + + + + com.baomidou + mybatis-plus + 3.5.1 + + + mysql + mysql-connector-java + 8.0.19 + + + org.slf4j + log4j-over-slf4j + 1.7.25 + + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.cloud + spring-cloud-starter-oauth2 + 2.2.5.RELEASE + + + com.nimbusds + nimbus-jose-jwt + 8.16 + + + org.springframework.boot + spring-boot-starter-data-redis + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + + + + + + + maven-clean-plugin + 3.1.0 + + + + maven-resources-plugin + 3.0.2 + + + maven-compiler-plugin + 3.8.0 + + + maven-surefire-plugin + 2.22.1 + + + maven-jar-plugin + 3.0.2 + + + maven-install-plugin + 2.5.2 + + + maven-deploy-plugin + 2.8.2 + + + + maven-site-plugin + 3.7.1 + + + maven-project-info-reports-plugin + 3.0.0 + + + + + diff --git a/SpringBoot-Security/src/main/java/com/fancv/SpringSecurityApplicationStart.java b/SpringBoot-Security/src/main/java/com/fancv/SpringSecurityApplicationStart.java new file mode 100644 index 0000000..8940b00 --- /dev/null +++ b/SpringBoot-Security/src/main/java/com/fancv/SpringSecurityApplicationStart.java @@ -0,0 +1,19 @@ +package com.fancv; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.security.oauth2.config.annotation.web.configuration.EnableResourceServer; + +/** + * Hello world! + * + */ +@SpringBootApplication +@EnableResourceServer +public class SpringSecurityApplicationStart +{ + public static void main( String[] args ) + { + SpringApplication.run(SpringSecurityApplicationStart.class,args); + } +} diff --git a/SpringBoot-Security/src/main/java/com/fancv/config/CustomTokenEnhancer.java b/SpringBoot-Security/src/main/java/com/fancv/config/CustomTokenEnhancer.java new file mode 100644 index 0000000..8833aa7 --- /dev/null +++ b/SpringBoot-Security/src/main/java/com/fancv/config/CustomTokenEnhancer.java @@ -0,0 +1,27 @@ +package com.fancv.config; + + +import org.springframework.security.core.Authentication; +import org.springframework.security.oauth2.common.DefaultOAuth2AccessToken; +import org.springframework.security.oauth2.common.OAuth2AccessToken; +import org.springframework.security.oauth2.provider.OAuth2Authentication; +import org.springframework.security.oauth2.provider.token.TokenEnhancer; + +import java.util.HashMap; +import java.util.Map; + +public class CustomTokenEnhancer implements TokenEnhancer { + + @Override + public OAuth2AccessToken enhance(OAuth2AccessToken accessToken, OAuth2Authentication authentication) { + Authentication userAuthentication = authentication.getUserAuthentication(); + if (userAuthentication != null) { + Object principal = authentication.getUserAuthentication().getPrincipal(); + //把用户标识嵌入JWT Token中去(Key是userDetails) + Map additionalInfo = new HashMap<>(); + additionalInfo.put("userDetails", principal); + ((DefaultOAuth2AccessToken) accessToken).setAdditionalInformation(additionalInfo); + } + return accessToken; + } +} \ No newline at end of file diff --git a/SpringBoot-Security/src/main/java/com/fancv/config/OAuth2ServerConfiguration.java b/SpringBoot-Security/src/main/java/com/fancv/config/OAuth2ServerConfiguration.java new file mode 100644 index 0000000..d63bcf6 --- /dev/null +++ b/SpringBoot-Security/src/main/java/com/fancv/config/OAuth2ServerConfiguration.java @@ -0,0 +1,154 @@ +package com.fancv.config; + + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.io.ClassPathResource; +import org.springframework.data.redis.connection.RedisConnectionFactory; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.crypto.password.NoOpPasswordEncoder; +import org.springframework.security.oauth2.config.annotation.configurers.ClientDetailsServiceConfigurer; +import org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerConfigurerAdapter; +import org.springframework.security.oauth2.config.annotation.web.configuration.EnableAuthorizationServer; +import org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerEndpointsConfigurer; +import org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerSecurityConfigurer; +import org.springframework.security.oauth2.provider.approval.JdbcApprovalStore; +import org.springframework.security.oauth2.provider.code.AuthorizationCodeServices; +import org.springframework.security.oauth2.provider.code.JdbcAuthorizationCodeServices; +import org.springframework.security.oauth2.provider.token.TokenEnhancer; +import org.springframework.security.oauth2.provider.token.TokenEnhancerChain; +import org.springframework.security.oauth2.provider.token.TokenStore; +import org.springframework.security.oauth2.provider.token.store.JwtAccessTokenConverter; +import org.springframework.security.oauth2.provider.token.store.JwtTokenStore; +import org.springframework.security.oauth2.provider.token.store.KeyStoreKeyFactory; +import org.springframework.security.oauth2.provider.token.store.redis.RedisTokenStore; +import org.springframework.web.servlet.config.annotation.ViewControllerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +import javax.sql.DataSource; +import java.util.Arrays; + +@Configuration +@EnableAuthorizationServer //开启授权服务器 +public class OAuth2ServerConfiguration extends AuthorizationServerConfigurerAdapter { + @Autowired + private DataSource dataSource; + + @Autowired + private AuthenticationManager authenticationManager; + + @Autowired + private RedisConnectionFactory redisConnectionFactory; + + + + + /** + * 我们配置了使用数据库来维护客户端信息。虽然在各种Demo中我们经常看到的是在内存中维护客户端信息,通过配置直接写死在这里。 + * 但是,对于实际的应用我们一般都会用数据库来维护这个信息,甚至还会建立一套工作流来允许客户端自己申请ClientID,实现OAuth客户端接入的审批。 + * @param clients + * @throws Exception + */ + @Override + public void configure(ClientDetailsServiceConfigurer clients) throws Exception { + clients.jdbc(dataSource); + } + + /** + * 这里干了两件事儿。首先,打开了验证Token的访问权限(以便之后我们演示)。 + * 然后,允许ClientSecret明文方式保存,并且可以通过表单提交(而不仅仅是Basic Auth方式提交),之后会演示到这个。 + * @param security + * @throws Exception + */ + @Override + public void configure(AuthorizationServerSecurityConfigurer security) throws Exception { + security.checkTokenAccess("permitAll()") + .allowFormAuthenticationForClients().passwordEncoder(NoOpPasswordEncoder.getInstance()); + } + + /** + * 干了以下4件事儿: + * 1. 配置我们的令牌存放方式为JWT方式,而不是内存、数据库或Redis方式。 + * JWT是Json Web Token的缩写,也就是使用JSON数据格式包装的令牌,由.号把整个JWT分隔为头、数据体、签名三部分。 + * JWT保存Token虽然易于使用但是不是那么安全,一般用于内部,且需要走HTTPS并配置比较短的失效时间。 + * 2. 配置JWT Token的非对称加密来进行签名 + * 3. 配置一个自定义的Token增强器,把更多信息放入Token中 + * 4. 配置使用JDBC数据库方式来保存用户的授权批准记录 + * @param endpoints + * @throws Exception + */ + @Override + public void configure(AuthorizationServerEndpointsConfigurer endpoints) { + TokenEnhancerChain tokenEnhancerChain = new TokenEnhancerChain(); + tokenEnhancerChain.setTokenEnhancers( + Arrays.asList(tokenEnhancer())); + + endpoints.approvalStore(approvalStore()) + .authorizationCodeServices(authorizationCodeServices()) + .tokenStore(tokenStore()) + .tokenEnhancer(tokenEnhancerChain) + .authenticationManager(authenticationManager); + } + + /** + * 使用JDBC数据库方式来保存授权码 + * @return + */ + @Bean + public AuthorizationCodeServices authorizationCodeServices() { + return new JdbcAuthorizationCodeServices(dataSource); + } + + /** + * 使用Redis存储 + * @return + */ + @Bean + public TokenStore tokenStore() { + RedisTokenStore redisTokenStore = new RedisTokenStore(redisConnectionFactory); + redisTokenStore.setPrefix("auth-token:"); + return redisTokenStore; + } + + /** + * 使用JDBC数据库方式来保存用户的授权批准记录 + * @return + */ + @Bean + public JdbcApprovalStore approvalStore() { + return new JdbcApprovalStore(dataSource); + } + + /** + * 自定义的Token增强器,把更多信息放入Token中 + * @return + */ + @Bean + public TokenEnhancer tokenEnhancer() { + return new CustomTokenEnhancer(); + } + + /** + * 配置JWT使用非对称加密方式来验证 + * @return + */ + /* @Bean + protected JwtAccessTokenConverter jwtTokenEnhancer() { + KeyStoreKeyFactory keyStoreKeyFactory = new KeyStoreKeyFactory(new ClassPathResource("jwt.jks"), "2022qw".toCharArray()); + JwtAccessTokenConverter converter = new JwtAccessTokenConverter(); + converter.setKeyPair(keyStoreKeyFactory.getKeyPair("jwt")); + return converter; + }*/ + + /** + * 配置登录页面的视图信息(其实可以独立一个配置类,这样会更规范) + */ + @Configuration + static class MvcConfig implements WebMvcConfigurer { + @Override + public void addViewControllers(ViewControllerRegistry registry) { + registry.addViewController("login").setViewName("login"); + } + } +} diff --git a/SpringBoot-Security/src/main/java/com/fancv/config/WebSecurityConfig.java b/SpringBoot-Security/src/main/java/com/fancv/config/WebSecurityConfig.java new file mode 100644 index 0000000..be4e852 --- /dev/null +++ b/SpringBoot-Security/src/main/java/com/fancv/config/WebSecurityConfig.java @@ -0,0 +1,71 @@ +package com.fancv.config; + + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.builders.WebSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; + +import javax.sql.DataSource; + +@Configuration +@EnableWebSecurity +public class WebSecurityConfig extends WebSecurityConfigurerAdapter { + @Autowired + private DataSource dataSource; + + @Override + @Bean + public AuthenticationManager authenticationManagerBean() throws Exception { + return super.authenticationManagerBean(); + } + + /** + * 配置用户账户的认证方式。显然,我们把用户存在了数据库中希望配置JDBC的方式。 + * 此外,我们还配置了使用BCryptPasswordEncoder哈希来保存用户的密码(生产环境中,用户密码肯定不能是明文保存的) + * @param auth + * @throws Exception + */ + @Override + protected void configure(AuthenticationManagerBuilder auth) throws Exception { + auth.jdbcAuthentication() + .dataSource(dataSource) + .passwordEncoder(new BCryptPasswordEncoder()); + } + + /** + * 开放/login和/oauth/authorize两个路径的匿名访问。前者用于登录,后者用于换授权码,这两个端点访问的时机都在登录之前。 + * 设置/login使用表单验证进行登录。 + * @param http + * @throws Exception + */ + @Override + protected void configure(HttpSecurity http) throws Exception { + + http.authorizeRequests() + .antMatchers("/login/**").permitAll()// 配置拦截规则 + .anyRequest().authenticated(); + +// http.authorizeRequests() +// .antMatchers("/login") +// .permitAll() +// .anyRequest().authenticated() +// .and() +// .formLogin().loginPage("/login"); + } + /*** + * 核心过滤器配置方法 + * @param web + * @throws Exception + */ + @Override + public void configure(WebSecurity web) throws Exception { + super.configure(web); + } +} \ No newline at end of file diff --git a/SpringBoot-Security/src/main/java/com/fancv/controller/UserInfoController.java b/SpringBoot-Security/src/main/java/com/fancv/controller/UserInfoController.java new file mode 100644 index 0000000..7fb06c9 --- /dev/null +++ b/SpringBoot-Security/src/main/java/com/fancv/controller/UserInfoController.java @@ -0,0 +1,15 @@ +package com.fancv.controller; + +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("user/") +public class UserInfoController { + + @GetMapping("list") + public String userList(){ + return "ok"; + } +} diff --git a/SpringBoot-Security/src/main/resources/application.yaml b/SpringBoot-Security/src/main/resources/application.yaml new file mode 100644 index 0000000..b9281ae --- /dev/null +++ b/SpringBoot-Security/src/main/resources/application.yaml @@ -0,0 +1,40 @@ +spring: + redis: + host: 127.0.0.1 + database: 1 + port: 6379 + datasource: + username: 'admin' + password: 'hta@123' + url: jdbc:mysql://127.0.0.1:3306/spring_security?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&zeroDateTimeBehavior=convertToNull + driver-class-name: com.mysql.cj.jdbc.Driver + type: com.alibaba.druid.pool.DruidDataSource + initialSize: 5 + minIdle: 5 + maxActive: 20 + maxWait: 60000 + timeBetweenEvictionRunsMillis: 60000 + minEvictableIdleTimeMillis: 300000 + validationQuery: SELECT 1 FROM DUAL + testWhileIdle: true + testOnBorrow: false + testOnReturn: false + poolPreparedStatements: true + #配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙 + filters: stat,wall,log4j + maxPoolPreparedStatementPerConnectionSize: 20 + useGlobalDataSourceStat: true + connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500 + db2: + username: admin + password: hta@123 + url: jdbc:mysql://localhost:3306/spring_security?useUnicode=true&characterEncoding=utf-8&useSSL=false + driver-class-name: com.mysql.cj.jdbc.Driver + +server: + port: 9011 + + +logging: + level: + root: debug \ No newline at end of file diff --git a/SpringBoot-Security/src/main/resources/jwt.jks b/SpringBoot-Security/src/main/resources/jwt.jks new file mode 100644 index 0000000000000000000000000000000000000000..9bfeb9c593e253d2183788fcda6f46b42f413c24 GIT binary patch literal 2200 zcmcJQ`8U)HAIE1!##kDL!ev4U@g3QTr0mPs4cVF|W0XcJYo)PeOR_$;P+10-Y-NgE z%9F=7*1-(fmuzWL2wnF+Pv_i!;Q8VG!|QxL=X}m*Iq%Q@>i#MS1cDq0{I|HtK{u7j zet`!Z$%DaYgFtXFK!xoA{9L?>TwoYj0U`tj!$B}AYzat>=CKtYnKssLP79rT?g{_k zy3|xLAzT_jp)eof)W(hC*wj|v%2sAqok2QMUtnv5V;#8MI*$5$kQy#j$F?kVM&4QGmj z@FZqxYq9|4BfA)@8209EQxpbm_tSviEb{f+ThO$@&XZeO%Ew09+k)UJc-9V;Y_PjQ zqM_;2(zc5a>Idde2mct0P`o*%>&Ah%f%Ky7D#}YB#EGS6CR$}JR_S*SFZG+{Jn<`= zzeGD-A3SV_aUtd!4kQ|5vK+H^nSV@f&hheSM&oo|3sMVOY$iLZuguS1N9#zeb+Q`d zDp+pWM!n|oM^3ogpj2;V%~&7Pt~@&ws@V#j_{%DeZUpWDHmmQ4RmuD&jP6X7=%%Yzk1+WjkP zeSwFutWs&Cfc-fnrZFN>KC7qln=kJMbGefCb2Hp=pOn(Qn@VcUsx$G~z?rV@2+7JcEmYpURUQd5^HG&K zQ@vGY$(20$_QNrDL@-+Plv%;Q;~r}$g;?(EmWb?18_Q0BnwYfSX#xEh<71>(bBE)u0W^C$7v|Tw(;frNVNQ|_6<4Th`KJgR( zvYj&XBVl5HWTtW;fEz!q;n93;s{H0z(9uP!&zf<#FZneN{KqA2Y~tlO+F{a*i95AxF?pNrR;2%(rgOYf+voN*}k*lnE|VUA|u7q_bS;*EMm z{4wMBV!us7LM>Rk0NQ;OKM_NM3d3;mV$}QRA7+vz7M{?xas{O33)ZLKEi@LD-i4>- z;$oXA;4kBx(!q_GsAWBSTU1zgLc8K~mVQ>|Ek&OTO@yk5k~!{0gF$eQ8is{%D)yhm z1TKh>qpLDsX0bb~Z`a~?1;RW;2gVv^J7=zn6MoqMs;>uu59@wDX(uJ_cWZ$jx8lTrcY++{s?d02w>aX!plikYkb{9@p#W#EAAwWUl zoRSHV-{yU(NlaHhtXE#%OQYql7gW8KLdsjKLHB$c!3h&W-YDnNkrw}c zTotHVx2CTM9Zkqh)Yom>;fqO-v2)MakQ1(1E?)oUmOCWYKP1pvM{u5{xY$C(TyRdM kDTO=s4QeX7rZdwo-Q)}9zd6o1SROuSv&5OXPP(!FCuoe+xBvhE literal 0 HcmV?d00001 diff --git a/SpringBoot-Security/src/main/resources/templates/login.html b/SpringBoot-Security/src/main/resources/templates/login.html new file mode 100644 index 0000000..b1183c4 --- /dev/null +++ b/SpringBoot-Security/src/main/resources/templates/login.html @@ -0,0 +1,37 @@ + + + + + OAuth2 Demo + + + + + +
+
+

Login Form

+ +

+ 用户名或密码错误... +

+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ + + diff --git a/SpringBoot-Security/src/test/java/com/fancv/SpringSecurityApplicationStartTest.java b/SpringBoot-Security/src/test/java/com/fancv/SpringSecurityApplicationStartTest.java new file mode 100644 index 0000000..2100f4a --- /dev/null +++ b/SpringBoot-Security/src/test/java/com/fancv/SpringSecurityApplicationStartTest.java @@ -0,0 +1,20 @@ +package com.fancv; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +/** + * Unit test for simple App. + */ +public class SpringSecurityApplicationStartTest +{ + /** + * Rigorous Test :-) + */ + @Test + public void shouldAnswerWithTrue() + { + assertTrue( true ); + } +} From 75645f8adc4c6c5b9dbad4734aaaa2863ac219cf Mon Sep 17 00:00:00 2001 From: Andy Date: Sun, 18 Sep 2022 11:55:29 +0800 Subject: [PATCH 06/14] feature:spring cache redis --- SpringBoot-MyBatis-Advances/pom.xml | 24 +++++ .../java/com/fancv/Application_Mybatis.java | 2 + .../com/fancv/config/RedisCacheConfig.java | 93 +++++++++++++++++++ .../com/fancv/controller/DemoController.java | 21 ++++- .../java/com/fancv/service/UserService.java | 34 +++++++ .../src/main/resources/application.yaml | 13 +++ 6 files changed, 182 insertions(+), 5 deletions(-) create mode 100644 SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java create mode 100644 SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java diff --git a/SpringBoot-MyBatis-Advances/pom.xml b/SpringBoot-MyBatis-Advances/pom.xml index fbd2556..6a46376 100644 --- a/SpringBoot-MyBatis-Advances/pom.xml +++ b/SpringBoot-MyBatis-Advances/pom.xml @@ -37,6 +37,20 @@ mysql mysql-connector-java + + org.apache.maven.doxia + doxia-site-renderer + 1.11.1 + + + org.springframework.boot + spring-boot-starter-cache + + + org.springframework.boot + spring-boot-starter-data-redis + 2.3.9.RELEASE + @@ -51,6 +65,16 @@ true + + org.apache.maven.plugins + maven-site-plugin + 3.7.1 + + + org.apache.maven.plugins + maven-project-info-reports-plugin + 3.0.0 + diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/Application_Mybatis.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/Application_Mybatis.java index 1b8c859..9c2724b 100644 --- a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/Application_Mybatis.java +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/Application_Mybatis.java @@ -2,6 +2,7 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cache.annotation.EnableCaching; import springfox.documentation.swagger2.annotations.EnableSwagger2; //TODO @@ -14,6 +15,7 @@ */ @SpringBootApplication @EnableSwagger2 +@EnableCaching public class Application_Mybatis { public static void main(String[] args) { diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java new file mode 100644 index 0000000..3e4d22f --- /dev/null +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java @@ -0,0 +1,93 @@ +package com.fancv.config; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.cache.CacheManager; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.cache.interceptor.KeyGenerator; +import org.springframework.cache.interceptor.SimpleKeyGenerator; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.cache.RedisCacheConfiguration; +import org.springframework.data.redis.cache.RedisCacheManager; +import org.springframework.data.redis.connection.RedisConnectionFactory; +import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; +import org.springframework.data.redis.serializer.RedisSerializationContext; +import org.springframework.data.redis.serializer.StringRedisSerializer; + +import java.time.Duration; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +@Configuration +@EnableCaching +public class RedisCacheConfig { + + @Value("${cache.default.expire-time:2000}") + private int defaultExpireTime; + @Value("${cache.user.expire-time:1000}") + private int userCacheExpireTime; + @Value("${cache.user.name:cache}") + private String userCacheName; + + /** + * 缓存管理器 + * + * @param lettuceConnectionFactory + * @return + */ + @Bean + public CacheManager cacheManager(RedisConnectionFactory lettuceConnectionFactory) { + RedisCacheConfiguration defaultCacheConfig = RedisCacheConfiguration.defaultCacheConfig(); + // 设置缓存管理器管理的缓存的默认过期时间 + defaultCacheConfig = defaultCacheConfig.entryTtl(Duration.ofSeconds(defaultExpireTime)) + // 设置 key为string序列化 + .serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(new StringRedisSerializer())) + // 设置value为json序列化 + .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer())) + // 不缓存空值 + .disableCachingNullValues(); + + Set cacheNames = new HashSet<>(); + cacheNames.add(userCacheName); + + // 对每个缓存空间应用不同的配置 + Map configMap = new HashMap<>(); + configMap.put(userCacheName, defaultCacheConfig.entryTtl(Duration.ofSeconds(userCacheExpireTime))); + configMap.put("users", defaultCacheConfig.entryTtl(Duration.ofSeconds(400))); + + RedisCacheManager cacheManager = RedisCacheManager.builder(lettuceConnectionFactory) + .cacheDefaults(defaultCacheConfig) + .initialCacheNames(cacheNames) + .withInitialCacheConfigurations(configMap) + .build(); + return cacheManager; + } + + /** + * 自定义缓存的redis的KeyGenerator【key生成策略】 + * 注意: 该方法只是声明了key的生成策略,需在@Cacheable注解中通过keyGenerator属性指定具体的key生成策略 + * 可以根据业务情况,配置多个生成策略 + * 如: @Cacheable(value = "key", keyGenerator = "cacheKeyGenerator") + */ + @Bean + public KeyGenerator keyGenerator() { + /** + * target: 类 + * method: 方法 + * params: 方法参数 + */ + return (target, method, params) -> { + //获取代理对象的最终目标对象 + StringBuilder sb = new StringBuilder(); + sb.append(target.getClass().getSimpleName()).append(":"); + sb.append(method.getName()).append(":"); + //调用SimpleKey的key生成器 + Object key = SimpleKeyGenerator.generateKey(params); + return sb.append(key); + }; + } + + +} diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DemoController.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DemoController.java index 1a8122a..bdaf868 100644 --- a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DemoController.java +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/controller/DemoController.java @@ -2,7 +2,10 @@ import com.fancv.dao.User; import com.fancv.mapper.MyUserMapper; +import com.fancv.service.UserService; +import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.accept.MappingMediaTypeFileExtensionResolver; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -13,14 +16,22 @@ @RestController @RequestMapping("mybatis") +@Api(value = "User") public class DemoController { + @Autowired MyUserMapper userMapper; - @GetMapping("insert") - public String batchInster(){ - User user = userMapper.selectByPrimaryKey(1); - return user.getName(); + @Autowired + UserService userService; + + + @GetMapping("user_info") + public User getUserInfo(Integer id){ + + User user = userService.getUerInfo(id); + User user1 = userService.getUerInfoWithoutKey(); + return user; } @GetMapping("replace") @@ -48,6 +59,6 @@ public int merge(){ a.setCreateTime(new Date()); a.setName("dfa"); a.setPassword("124321"); - return userMapper.mergeinfo(a); + return 1; } } diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java new file mode 100644 index 0000000..ed39fd8 --- /dev/null +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java @@ -0,0 +1,34 @@ +package com.fancv.service; + +import com.fancv.dao.User; +import com.fancv.mapper.MyUserMapper; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.annotation.Cacheable; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.stereotype.Service; + +@Service +@Log4j2 +@EnableCaching +public class UserService { + + @Autowired + MyUserMapper userMapper; + + /** + * @Cacheable(cacheNames = "users", condition = "#id > 0", sync = true, keyGenerator = "keyGenerator",key = "'user-' + #id") + * Both 'key' and 'keyGenerator' attributes have been set. 不能同时使用 + * @param id + * @return + */ + @Cacheable(cacheNames = "users", condition = "#id > 0", sync = true, keyGenerator = "keyGenerator") + public User getUerInfo(Integer id) { + return userMapper.selectByPrimaryKey(id); + } + + @Cacheable(cacheNames = "cache", sync = true, keyGenerator = "keyGenerator") + public User getUerInfoWithoutKey() { + return userMapper.selectByPrimaryKey(2); + } +} diff --git a/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml b/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml index 2788663..ee1bcc5 100644 --- a/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml +++ b/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml @@ -1,4 +1,12 @@ spring: + cache: + redis: + key-prefix: sp + type: redis + redis: + port: 6379 + host: 127.0.0.1 + database: 10 datasource: username: admin password: hta@123 @@ -35,3 +43,8 @@ mybatis: mapper-locations: classpath:mappers/*Mapper.xml type-aliases-package: com.fancv.dao +logging: + level: + com.fancv.mapper: debug + + From 9692a8b1514496f9c4225b810ad8caa0e215f6b1 Mon Sep 17 00:00:00 2001 From: Andy Date: Sun, 18 Sep 2022 12:42:42 +0800 Subject: [PATCH 07/14] =?UTF-8?q?feature:spring=20cache=20redis:=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fancv/config/RedisCacheConfig.java | 43 +++++++++++++++++-- .../src/main/java/com/fancv/dao/User.java | 5 +-- .../java/com/fancv/service/UserService.java | 2 + .../src/main/resources/application.yaml | 2 +- 4 files changed, 44 insertions(+), 8 deletions(-) diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java index 3e4d22f..dbfba27 100644 --- a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java @@ -31,12 +31,12 @@ public class RedisCacheConfig { @Value("${cache.user.name:cache}") private String userCacheName; - /** - * 缓存管理器 + /* *//** + * Redis缓存管理器 * * @param lettuceConnectionFactory * @return - */ + *//* @Bean public CacheManager cacheManager(RedisConnectionFactory lettuceConnectionFactory) { RedisCacheConfiguration defaultCacheConfig = RedisCacheConfiguration.defaultCacheConfig(); @@ -63,8 +63,43 @@ public CacheManager cacheManager(RedisConnectionFactory lettuceConnectionFactory .withInitialCacheConfigurations(configMap) .build(); return cacheManager; - } + }*/ + + + /* *//** + * Redis缓存管理器 + * + * @param lettuceConnectionFactory + * @return + *//* + @Bean + public CacheManager cacheManager(RedisConnectionFactory lettuceConnectionFactory) { + RedisCacheConfiguration defaultCacheConfig = RedisCacheConfiguration.defaultCacheConfig(); + // 设置缓存管理器管理的缓存的默认过期时间 + defaultCacheConfig = defaultCacheConfig.entryTtl(Duration.ofSeconds(defaultExpireTime)) + // 设置 key为string序列化 + .serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(new StringRedisSerializer())) + // 设置value为json序列化 + .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer())) + // 不缓存空值 + .disableCachingNullValues(); + + Set cacheNames = new HashSet<>(); + cacheNames.add(userCacheName); + // 对每个缓存空间应用不同的配置 + Map configMap = new HashMap<>(); + configMap.put(userCacheName, defaultCacheConfig.entryTtl(Duration.ofSeconds(userCacheExpireTime))); + configMap.put("users", defaultCacheConfig.entryTtl(Duration.ofSeconds(400))); + + RedisCacheManager cacheManager = RedisCacheManager.builder(lettuceConnectionFactory) + .cacheDefaults(defaultCacheConfig) + .initialCacheNames(cacheNames) + .withInitialCacheConfigurations(configMap) + .build(); + return cacheManager; + } +*/ /** * 自定义缓存的redis的KeyGenerator【key生成策略】 * 注意: 该方法只是声明了key的生成策略,需在@Cacheable注解中通过keyGenerator属性指定具体的key生成策略 diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/dao/User.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/dao/User.java index 3818498..d172df0 100644 --- a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/dao/User.java +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/dao/User.java @@ -1,10 +1,9 @@ package com.fancv.dao; -import org.springframework.stereotype.Component; - +import java.io.Serializable; import java.util.Date; -public class User { +public class User implements Serializable { private Integer id; private String name; diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java index ed39fd8..e79f9ea 100644 --- a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java @@ -4,6 +4,7 @@ import com.fancv.mapper.MyUserMapper; import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.annotation.CacheConfig; import org.springframework.cache.annotation.Cacheable; import org.springframework.cache.annotation.EnableCaching; import org.springframework.stereotype.Service; @@ -11,6 +12,7 @@ @Service @Log4j2 @EnableCaching +@CacheConfig(cacheNames = "coffee") public class UserService { @Autowired diff --git a/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml b/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml index ee1bcc5..c443778 100644 --- a/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml +++ b/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml @@ -1,7 +1,7 @@ spring: cache: redis: - key-prefix: sp + key-prefix: "sp:" type: redis redis: port: 6379 From 163d279a4450f16eae76274a3e69968bb24b4d5b Mon Sep 17 00:00:00 2001 From: Andy Date: Sun, 18 Sep 2022 16:38:55 +0800 Subject: [PATCH 08/14] =?UTF-8?q?feature:spring=20cache=20redis:=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/fancv/config/RedisCacheConfig.java | 9 ++++----- .../src/main/java/com/fancv/service/UserService.java | 4 ++-- .../src/main/resources/application.yaml | 1 + 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java index dbfba27..0aab800 100644 --- a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/config/RedisCacheConfig.java @@ -66,12 +66,12 @@ public CacheManager cacheManager(RedisConnectionFactory lettuceConnectionFactory }*/ - /* *//** - * Redis缓存管理器 + /* * + * 缓存管理器 * * @param lettuceConnectionFactory - * @return - *//* + * @return*/ + @Bean public CacheManager cacheManager(RedisConnectionFactory lettuceConnectionFactory) { RedisCacheConfiguration defaultCacheConfig = RedisCacheConfiguration.defaultCacheConfig(); @@ -99,7 +99,6 @@ public CacheManager cacheManager(RedisConnectionFactory lettuceConnectionFactory .build(); return cacheManager; } -*/ /** * 自定义缓存的redis的KeyGenerator【key生成策略】 * 注意: 该方法只是声明了key的生成策略,需在@Cacheable注解中通过keyGenerator属性指定具体的key生成策略 diff --git a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java index e79f9ea..6fc0f57 100644 --- a/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java +++ b/SpringBoot-MyBatis-Advances/src/main/java/com/fancv/service/UserService.java @@ -12,7 +12,7 @@ @Service @Log4j2 @EnableCaching -@CacheConfig(cacheNames = "coffee") +@CacheConfig(cacheNames = "users") public class UserService { @Autowired @@ -29,7 +29,7 @@ public User getUerInfo(Integer id) { return userMapper.selectByPrimaryKey(id); } - @Cacheable(cacheNames = "cache", sync = true, keyGenerator = "keyGenerator") + @Cacheable(cacheNames = "ca", sync = true, keyGenerator = "keyGenerator") public User getUerInfoWithoutKey() { return userMapper.selectByPrimaryKey(2); } diff --git a/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml b/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml index c443778..9c0dcb4 100644 --- a/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml +++ b/SpringBoot-MyBatis-Advances/src/main/resources/application.yaml @@ -2,6 +2,7 @@ spring: cache: redis: key-prefix: "sp:" + time-to-live: 800 type: redis redis: port: 6379 From 5fd13e10b5a03fcaa370603bb7b821d2afcbd691 Mon Sep 17 00:00:00 2001 From: Andy Date: Sun, 18 Sep 2022 17:10:52 +0800 Subject: [PATCH 09/14] =?UTF-8?q?feature:spring=20cache=20redis=20?= =?UTF-8?q?=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SpringBoot-MyBatis-Advances/Readme.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/SpringBoot-MyBatis-Advances/Readme.md b/SpringBoot-MyBatis-Advances/Readme.md index 27dd9b3..5a4d729 100644 --- a/SpringBoot-MyBatis-Advances/Readme.md +++ b/SpringBoot-MyBatis-Advances/Readme.md @@ -1,3 +1,5 @@ # springboot mybatis advance demo ## DataSource drui ## Reading and writing separation +## spring cache redis +spring cache redis 类型的实现,满足常用的配置、数据字典、类目等常见缓存场景的使用。 From e2417914050aa1c76330d1cab7a509be12d9ac43 Mon Sep 17 00:00:00 2001 From: Andy Date: Sun, 18 Sep 2022 17:11:25 +0800 Subject: [PATCH 10/14] feature:spring security --- .../src/main/java/com/fancv/SpringSecurityApplicationStart.java | 2 ++ .../src/main/java/com/fancv/config/WebSecurityConfig.java | 2 +- SpringBoot-Security/src/main/resources/application.yaml | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/SpringBoot-Security/src/main/java/com/fancv/SpringSecurityApplicationStart.java b/SpringBoot-Security/src/main/java/com/fancv/SpringSecurityApplicationStart.java index 8940b00..70daab7 100644 --- a/SpringBoot-Security/src/main/java/com/fancv/SpringSecurityApplicationStart.java +++ b/SpringBoot-Security/src/main/java/com/fancv/SpringSecurityApplicationStart.java @@ -3,6 +3,7 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.security.oauth2.config.annotation.web.configuration.EnableResourceServer; +import springfox.documentation.swagger2.annotations.EnableSwagger2; /** * Hello world! @@ -10,6 +11,7 @@ */ @SpringBootApplication @EnableResourceServer +@EnableSwagger2 public class SpringSecurityApplicationStart { public static void main( String[] args ) diff --git a/SpringBoot-Security/src/main/java/com/fancv/config/WebSecurityConfig.java b/SpringBoot-Security/src/main/java/com/fancv/config/WebSecurityConfig.java index be4e852..1aa47f6 100644 --- a/SpringBoot-Security/src/main/java/com/fancv/config/WebSecurityConfig.java +++ b/SpringBoot-Security/src/main/java/com/fancv/config/WebSecurityConfig.java @@ -41,7 +41,7 @@ protected void configure(AuthenticationManagerBuilder auth) throws Exception { /** * 开放/login和/oauth/authorize两个路径的匿名访问。前者用于登录,后者用于换授权码,这两个端点访问的时机都在登录之前。 - * 设置/login使用表单验证进行登录。 + * 设置/login使用表单验证进行登录。 未生效 * @param http * @throws Exception */ diff --git a/SpringBoot-Security/src/main/resources/application.yaml b/SpringBoot-Security/src/main/resources/application.yaml index b9281ae..8c933c6 100644 --- a/SpringBoot-Security/src/main/resources/application.yaml +++ b/SpringBoot-Security/src/main/resources/application.yaml @@ -37,4 +37,4 @@ server: logging: level: - root: debug \ No newline at end of file + root: info \ No newline at end of file From 821ad57480f6665caa17d17afd2b35b51b8f3645 Mon Sep 17 00:00:00 2001 From: Andy Date: Sun, 18 Sep 2022 17:14:41 +0800 Subject: [PATCH 11/14] feature:spring oss --- .gitignore | 6 +++++ .../src/main/resources/application.properties | 18 +++---------- .../src/main/resources/application.properties | 26 ------------------- .../src/main/resources/application.yaml | 8 ++++++ pom.xml | 1 + 5 files changed, 19 insertions(+), 40 deletions(-) delete mode 100644 SpringBoot-Redis/src/main/resources/application.properties create mode 100644 SpringBoot-Redis/src/main/resources/application.yaml diff --git a/.gitignore b/.gitignore index c0d329d..2d85157 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,9 @@ SpringBootCodeBase.iml /SpringBoot-LTS/target/ /logs/ /springBoot-ShardingJDBC/target/ +/SpringBoot-mybatis-plus/target/ +/SpringBoot-OSS/target/ +/SpringBoot-rocketMQ-producer/ +/SpringBoot-rocketMQ-producer/mq-producer.iml +/SpringBoot-Security/target/ +/SpringBoot-rocketMQ-consumer/target/ \ No newline at end of file diff --git a/SpringBoot-OSS/src/main/resources/application.properties b/SpringBoot-OSS/src/main/resources/application.properties index 11ca3a1..47dc664 100644 --- a/SpringBoot-OSS/src/main/resources/application.properties +++ b/SpringBoot-OSS/src/main/resources/application.properties @@ -1,35 +1,25 @@ spring.application.name=spring-boot-oss - spring.rabbitmq.host=127.0.0.1 spring.rabbitmq.port=5672 spring.rabbitmq.username=guest spring.rabbitmq.password=guest - - -# ߿ confirm ȷϻ +# \u00B7\u00A2\u00CB\u00CD\u00D5\u00DF\u00BF\u00AA\u00C6\u00F4 confirm \u00C8\u00B7\u00C8\u00CF\u00BB\u00FA\u00D6\u00C6 spring.rabbitmq.publisher-confirm-type=simple -# ߿ return ȷϻ +# \u00B7\u00A2\u00CB\u00CD\u00D5\u00DF\u00BF\u00AA\u00C6\u00F4 return \u00C8\u00B7\u00C8\u00CF\u00BB\u00FA\u00D6\u00C6 spring.rabbitmq.publisher-returns=true #################################################### -# Ѷֶ ack +# \u00C9\u00E8\u00D6\u00C3\u00CF\u00FB\u00B7\u00D1\u00B6\u00CB\u00CA\u00D6\u00B6\u00AF ack spring.rabbitmq.listener.simple.acknowledge-mode=manual -# Ƿ֧ +# \u00CA\u00C7\u00B7\u00F1\u00D6\u00A7\u00B3\u00D6\u00D6\u00D8\u00CA\u00D4 spring.rabbitmq.listener.simple.retry.enabled=true - - server.port=9010 - - rayOssKey=LTAI5t5sF7sXqD8by7p3RCRB rayOssSecret= rayOssEndpoint= rayBucketName= - spring.servlet.multipart.enabled=true spring.servlet.multipart.max-file-size=2048MB spring.servlet.multipart.maxRequestSize=2048MB - - dam.oss.accessKeyId= dam.oss.accessKeySecret= dam.oss.bucketName= diff --git a/SpringBoot-Redis/src/main/resources/application.properties b/SpringBoot-Redis/src/main/resources/application.properties deleted file mode 100644 index 0faaf5e..0000000 --- a/SpringBoot-Redis/src/main/resources/application.properties +++ /dev/null @@ -1,26 +0,0 @@ -# RedisӶ˿ -spring.redis.port=6379 -# Redisַ -spring.redis.host=127.0.0.1 -# RedisݿĬΪ0 -spring.redis.database=5 -# Redis루ĬΪգ -spring.redis.password= "" -# ӳʹøֵʾûƣ -spring.redis.jedis.pool.max-active=8 -# ӳȴʱ䣨ʹøֵʾûƣ -spring.redis.jedis.pool.max-wait=-1ms -# ӳе -spring.redis.jedis.pool.max-idle=8 -# ӳеС -spring.redis.jedis.pool.min-idle=0 -# ӳʱʱ䣨룩 -spring.redis.timeout=5000ms - -#redis ڱRedis Server -spring.redis.sentinel.master=devwj -# comma-separated list of host:port pairs ڱб -spring.redis.sentinel.nodes=192.168.5.86:28001,192.168.5.86:28002,192.168.5.86:28003 - -server.port=9093 - diff --git a/SpringBoot-Redis/src/main/resources/application.yaml b/SpringBoot-Redis/src/main/resources/application.yaml new file mode 100644 index 0000000..ea8e435 --- /dev/null +++ b/SpringBoot-Redis/src/main/resources/application.yaml @@ -0,0 +1,8 @@ +#redis 配置 +spring: + redis: + port: 6379 + host: 127.0.0.1 + database: 10 +server: + port: 9010 \ No newline at end of file diff --git a/pom.xml b/pom.xml index a769ffb..03a1ae8 100644 --- a/pom.xml +++ b/pom.xml @@ -31,6 +31,7 @@ SpringBoot-OSS SpringBoot-Commons SpringBoot-DynamicDataSource + SpringBoot-Security From 972d7a934fa59d0d3554d1b1d9b3155d554a331a Mon Sep 17 00:00:00 2001 From: Andy Date: Sat, 1 Oct 2022 13:16:12 +0800 Subject: [PATCH 12/14] feature:add maven template --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index 03a1ae8..2317556 100644 --- a/pom.xml +++ b/pom.xml @@ -32,6 +32,7 @@ SpringBoot-Commons SpringBoot-DynamicDataSource SpringBoot-Security + SpringBoot-JavaReactor From 795df9918b8b39a2c60575ed6c002a8dc9572519 Mon Sep 17 00:00:00 2001 From: Andy Date: Thu, 5 Jan 2023 00:18:40 +0800 Subject: [PATCH 13/14] =?UTF-8?q?feature:spring=20mvc=20=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SpringBoot-AOP/pom.xml | 8 ++++ .../GlobalExceptionHandler.java | 37 ++++++++++++++++++ .../fancv/ExceptionHandler/ResultBody.java | 2 + .../fancv/controller/UserListController.java | 19 +++++++-- .../java/com/fancv/login/BaseUserDTO.java | 9 ++++- .../main/java/com/fancv/login/EnterDTO.java | 17 ++++++++ .../GlobalExceptionHandler.class | Bin 2496 -> 4173 bytes .../fancv/controller/UserListController.class | Bin 1548 -> 2263 bytes .../classes/com/fancv/login/BaseUserDTO.class | Bin 3604 -> 4411 bytes 9 files changed, 87 insertions(+), 5 deletions(-) create mode 100644 SpringBoot-AOP/src/main/java/com/fancv/login/EnterDTO.java diff --git a/SpringBoot-AOP/pom.xml b/SpringBoot-AOP/pom.xml index c30fbf8..6115baa 100644 --- a/SpringBoot-AOP/pom.xml +++ b/SpringBoot-AOP/pom.xml @@ -43,6 +43,14 @@ fastjson 1.2.41 + + + org.hibernate.validator + hibernate-validator + 6.1.2.Final + + + diff --git a/SpringBoot-AOP/src/main/java/com/fancv/ExceptionHandler/GlobalExceptionHandler.java b/SpringBoot-AOP/src/main/java/com/fancv/ExceptionHandler/GlobalExceptionHandler.java index 6e91b28..af1f257 100644 --- a/SpringBoot-AOP/src/main/java/com/fancv/ExceptionHandler/GlobalExceptionHandler.java +++ b/SpringBoot-AOP/src/main/java/com/fancv/ExceptionHandler/GlobalExceptionHandler.java @@ -3,16 +3,22 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseBody; import javax.servlet.http.HttpServletRequest; +import javax.validation.ConstraintViolationException; +import javax.validation.ValidationException; @ControllerAdvice public class GlobalExceptionHandler { private static final Logger logger = LoggerFactory.getLogger(GlobalExceptionHandler.class); + private static String DUPLICATE_KEY_CODE = "1001"; + private static String PARAM_FAIL_CODE = "1002"; + private static String VALIDATION_CODE = "1003"; /** * 处理自定义的业务异常 * @param req @@ -52,5 +58,36 @@ public ResultBody exceptionHandler(HttpServletRequest req, Exception e){ logger.error("未知异常!原因是:",e); return ResultBody.error(CommonEnum.INTERNAL_SERVER_ERROR); } + + + /** + * 方法参数校验 + */ + @ExceptionHandler(MethodArgumentNotValidException.class) + @ResponseBody + public ResultBody handleMethodArgumentNotValidException(MethodArgumentNotValidException e) { + logger.error(e.getMessage(), e); + return ResultBody.error(PARAM_FAIL_CODE, e.getBindingResult().getFieldError().getDefaultMessage()); + } + + /** + * ValidationException + */ + @ExceptionHandler(ValidationException.class) + @ResponseBody + public ResultBody handleValidationException(ValidationException e) { + logger.error(e.getMessage(), e); + return ResultBody.error(VALIDATION_CODE, e.getCause().getMessage()); + } + + /** + * ConstraintViolationException + */ + @ExceptionHandler(ConstraintViolationException.class) + @ResponseBody + public ResultBody handleConstraintViolationException(ConstraintViolationException e) { + logger.error(e.getMessage(), e); + return ResultBody.error(PARAM_FAIL_CODE, e.getMessage()); + } } diff --git a/SpringBoot-AOP/src/main/java/com/fancv/ExceptionHandler/ResultBody.java b/SpringBoot-AOP/src/main/java/com/fancv/ExceptionHandler/ResultBody.java index 874ea20..d220288 100644 --- a/SpringBoot-AOP/src/main/java/com/fancv/ExceptionHandler/ResultBody.java +++ b/SpringBoot-AOP/src/main/java/com/fancv/ExceptionHandler/ResultBody.java @@ -2,7 +2,9 @@ import com.alibaba.fastjson.JSONObject; +import lombok.Data; +@Data public class ResultBody { /** * 响应代码 diff --git a/SpringBoot-AOP/src/main/java/com/fancv/controller/UserListController.java b/SpringBoot-AOP/src/main/java/com/fancv/controller/UserListController.java index 27e142d..9c2de53 100644 --- a/SpringBoot-AOP/src/main/java/com/fancv/controller/UserListController.java +++ b/SpringBoot-AOP/src/main/java/com/fancv/controller/UserListController.java @@ -1,18 +1,22 @@ package com.fancv.controller; +import com.alibaba.fastjson.JSON; +import com.fancv.login.BaseUserDTO; import com.fancv.permission.PermissionAnnotation; import io.swagger.annotations.Api; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.BindingResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import javax.validation.Valid; import java.util.ArrayList; import java.util.List; @RestController @RequestMapping("user/") @Api(tags = "1.user") +@Slf4j public class UserListController { @@ -30,4 +34,11 @@ public String userLogin(@RequestParam(defaultValue = "001") String userId) { return "登录成功!"; } + @PostMapping("login_1") + public String login(@RequestBody @Validated BaseUserDTO baseUserDTO) { + + log.info(JSON.toJSONString(baseUserDTO)); + return "OK"; + } + } diff --git a/SpringBoot-AOP/src/main/java/com/fancv/login/BaseUserDTO.java b/SpringBoot-AOP/src/main/java/com/fancv/login/BaseUserDTO.java index 5f8b097..eca5a05 100644 --- a/SpringBoot-AOP/src/main/java/com/fancv/login/BaseUserDTO.java +++ b/SpringBoot-AOP/src/main/java/com/fancv/login/BaseUserDTO.java @@ -2,11 +2,15 @@ import lombok.Data; +import javax.validation.Valid; +import javax.validation.constraints.NotNull; +import java.io.Serializable; import java.util.List; @Data -public class BaseUserDTO { +public class BaseUserDTO implements Serializable { + @NotNull(message = "用户姓名不能为空") String userNmae; String userPermission; @@ -15,6 +19,9 @@ public class BaseUserDTO { List permissions; + @Valid + EnterDTO enterDTO; + public void addPeemission(String p) { this.permissions.add(p); } diff --git a/SpringBoot-AOP/src/main/java/com/fancv/login/EnterDTO.java b/SpringBoot-AOP/src/main/java/com/fancv/login/EnterDTO.java new file mode 100644 index 0000000..bb3ca76 --- /dev/null +++ b/SpringBoot-AOP/src/main/java/com/fancv/login/EnterDTO.java @@ -0,0 +1,17 @@ +package com.fancv.login; + +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotNull; + + +@ApiModel("enterDTO") +@Data +public class EnterDTO { + + @NotNull(message = "not empty") + @Min(1) + private Long version; +} diff --git a/SpringBoot-AOP/target/classes/com/fancv/ExceptionHandler/GlobalExceptionHandler.class b/SpringBoot-AOP/target/classes/com/fancv/ExceptionHandler/GlobalExceptionHandler.class index ba749beedf9ef923c0f39e4c78d5f148bdcf103f..783254f5c675e0b5c25da39217e9d12840636232 100644 GIT binary patch literal 4173 zcmbuC`%@EF6vw}pS3+0?BPdEA)F&vqpw?DGX+sD?4TOeBMQrJkEMal83!4oO?MwU6 zTC3Aef9TlG*#6KT+F#nr3`NK3AJD&}==3N5gHF%gU6KH40Lu(}?>&3&IiGv(z2|KH z{O7?R0A9jv51vC$Ico8`8)rNSp|=8k2=iXQ2X7$a#sHT@%W)QiT=J$H=lEdAgYy{X zQ!nt|TNQX4BObg1$%9e*MU4029>^H>U<|`9Bs>_0;>HA@chL>ijid`2Lz${460*VI z4e3TgOsQihCd7~>^O3OgY=5XH;Ex7J&IE@>0^!ae*PM{1B~g{Mgg9Utik2YF%6@;u z-#gOf?+H0-m4p6JPp3cH6Yg^)Wo?S4nC%S34UK~gB>_Dy)69^f$$jbMsBA=~QI#Zw z5|h+H$x!&%5tf+aN{ZolD5fXHF-eO}i^18LJZUPr)-7pqRW`)asy-^ItHngOeN?%$ zTFfxlV69|UOv%QyDx2cCX-&JW}j{j zN~#jiC^94(3U9?a1~w72_W$RIPNlshYX#P6%vnZwIox!>l(_X)%%ivo+yl;qTgM>7 z9vdq_r_?kgI#Yv+uCC@gmxr&=j7@-wYe5TIW^lK~R42cB2K2NMle-k2P3!V!#iRV* zZ06#Vd(+TW%Cr9Xv=Wnj0`}v8fag)quy^V9myf@```6-~r5isiJ-oWKxcKDZm8DyE zm%jb}(Ko+5d3fjYdoJh#CNbrLAs_`)K$;Jx`Cx`3Zku@g(}PDhul@bi^|e-7x#p}3 za{?~mG9SE4=jYLPKR>?vV_xm|aM^|T1$=-h0ei7Wz=ycv!c_qu;bRv*5%4J|xF%p9 ze|a6Bxp2dU&ly@aU1eOjDc}p-qPo`7+}tAI1?;i=$L!`fCFN|c3Xe|6F_S7l0Y|wh zouMKjn?b|Sjows(p}L_lCr4z;aMkJ}PT5)JlgN{OSXb2T91}K>j~8ZP*^^zM_ZL9S z)-;CR!VVn9f<-KAj>^iR!uF!$hCahT5G>|GkO4iJ)U}|NPBLum2zL&R^o64%z5ZyR zo0s4M%gfFro(m0yR6C@UY;8}EHm3LR8Z;)+CE56LYkK;k!APG!G%^s33ioLz~$vr&3aaazPahI;fyimA6C9&`bv@pNE_bxnc$dqG>bw3|q)) zmm;fiD?AKG*7ulICwGnOxXUUtY$IQt@|Z*)TA4-f}y+ z`hu;1LpV$$+ISp6u{HSuwZ$aceGf(6;-&?Z+(&6Ks8hxVi*Wr)Z*7YnYC&jQ365K> zw`V$5$p(&EFud1{7ScXOTIEF~1_^-U^zS9{2|{>r7%WCgCrQTWht$gsP}BkPav*op zeUumD9z2VvSPjyI3R*@M#G3)}WIyj z)U4f_b_e8Dyyk!mI3RU4$o6HBY67WQz>Yi&VPfddVW`V6)R9~NdJKMtp#uSjq2FPs zwHbCUGw@*S%mXk)0OxZ6YBK<}1kkx2K&J)ZMlf^R+Gq;@tM%3{V%Iz!(%ti@^FA|= qO7FAtsOA@tSr^btHyPMQw{<%~RMW|?p?&BgSrJZK0q0k=8~7KqACh7K delta 690 zcma)(OHUM05QV?)33GdzJ1sOXnGqa77~Y70qu>LPhstAkCM1xsAYo0y58y9A?k@or z0t@2Gg^6po{t<~)O)|`K7Jd8Fsnc~%-}+tn(X{^S{`L+iu@ln3XoiTffR`cTysBq{ zNkvm3uPFt*QRZ!iX=app7w}$-4~CB+vwSklou3sh?&nf&KYbE3(QIiXc7M|S`OlVl z77UA)CB9g`YVl2rWtTI>h9y=EtCls&O0K&N)0y6&>@n_U{k%KyS_8wTWsB{rf2QO+ zW6Qgdga(hC`Ut8MEVgpCNHr#JPuaomcozbETIEb9WR^C;_Cdf?+NIJ#c~Z2vpLXa} zwV`~2^djk~z93x$Kj;-bqa&G-qm$>NE=WJ)3yl!aB~L7Lw}^W7@D4@vLO73J`qWDB zw!C$0e2E_i!#8A7T;h(i;n8D;KI$n}Wr!;o;!1{CEQ_^dC{{A`YX+f((slVUYh ugVjJSRs)Guz+h!9UCDjPEyd9_Pp>GLp(zO diff --git a/SpringBoot-AOP/target/classes/com/fancv/controller/UserListController.class b/SpringBoot-AOP/target/classes/com/fancv/controller/UserListController.class index 08844895a32776b70034ffbcab13a06cc8feeeeb..e1454a7d2a0e4eb3c1c87a4e99fdd0633c50a36e 100644 GIT binary patch literal 2263 zcmb7G+g2M@82)w=NJyrDp@8&ci?mG&GGGr>K@_M|+HjCiYFk~don#1ulbJX(fyJeF zF0Z`t!Yg0F>P1_tK7j90z4Q%SetRY)Ay^lMH8cPI=RbV^aq`DMzx)nh3ZEr$0`JH1 zK@t(nB`}}D0&XSnVHZ+ZOyV{^N?{3i61W>jE{SEV#IY(6wVbj*I_J1$-Ltl??dUnD zTsGWkfzBDzHvL)3WU`wAu?44O2=wGk+gPbp3WmEO3l=$4E=p@tx~4kUnK6Ic^aQfG zqEpegq+Q(Ai;nHPj%69He$O-9oay-s4Ho?+YIUx_NG7)H*}DHrbh@MrY}?ciHf_ozj|gWySCfmr-`* z&9W{1n#*k5JO=caSRPuh*}hpZHciiDCg*J1@uhD%HeFl~D^yjf*ixSN9QO--&nV~x z(=O?Pd*Vh_k(03XIx#UR zFqvtIH-MqfOV3d4cWYzyprsDOO%<9F0%!l%fIvL3`Z;|aze087^G<1>!2es1Wiv}b z@mp)l;1t&=Q7{4)o3El8l%=HuRnO=G zXL6>adwWuCmzJ13eXeRUoR}}mtbga^xRTeu+Ct^TXf2ex;!sJ#lPkxQER+?rZo24+J8scLgpVb1B8~ zP{Sj9%As%Wm({|KQRFDaGD~VLb~hm^bljG*#EsP7Ivt_PboQaZkaEo`7GyzkFM9rt z$N9UHUtM7f`;H>Qeb+W%2PTg0B!X*S-UMgbTTUB_gFQ;ngY6oNvgkYRJ}10v_~92o z;9_eG3zqaePE5PzG%oN9bAlfsfm15yq&i5me!Qo7()kpMd*unlV-gYc@!lCQPvRtL zEfhdM26!SqypC9)TtSroK>u?@9`q)kAi6x3jy*$11oy{&;^RE82!k8ubCA@VR2_K);o%}Kk-qF9 z!$%fZ>QJY6icmP3?o_~9qZ|$Z4TP^7fTDFkEl!oQZrW)&8^suTno8kYyvDsCpQD(l zd%aDg%4^S0h>t!+;u*RkNGF>J)DHp>sz#_P*CC3Y28td`;%!>4qnM<~Q507L6e$(p zH40qkmB5Wgi7!xJ{dJ{NPoe#cxGFQpm-n#DeN>#{DT14U^>eJvJ3PNjsW7S2m?8aM Ikl@*W0RrYbF#rGn delta 468 zcmYjMxlY4C6rA;$*d`%?IOYlokb`hTz}!8*05ymr5`{k?qC_ujmD^Jd>NXHMce9_Npdfh3}eIPGVg^KiqFNk4$Vh*u<7V`s?z({dn(Ek09-2M(Fae?6eX7H z%m6uL*%Rd0=x3#nA1lX5o`^?87bF4$yb1;}#2B@PIXbcj5ukuk=EZ>i1;$z!kF1d8 zvs4(>tZ^fUyT2$%M{eBybEI}0{o5LCOHrr0Z31Otjv!d!tp=!3W>PMw(_INPq+*J| QH2bl|8O$=DlXmBS0p(&YE&u=k diff --git a/SpringBoot-AOP/target/classes/com/fancv/login/BaseUserDTO.class b/SpringBoot-AOP/target/classes/com/fancv/login/BaseUserDTO.class index 24cf52fc54a9934ce12659747c7f418d143d2dd7..13a21545a8ec5cbb53579c09a26ada7b24d811e9 100644 GIT binary patch literal 4411 zcma)8YjYb{8Geqey+~TgvSK@tGi6`~h95v+Cd|N4(vktD@S)7`2l@j@DL;Zzp0m5st}YGvuxH=%p67kf zd*A)Xe{cTv#f(1A*r%yJo|#2h2*12Y$=69p9_0x&B(a(V!BoX?dQx$vgJF_tRhf>-rn- z-uTJ8uf2Nb%~${Z;-BxldHcOz-xfH~d(*{hJH59Rq^0Xtt7&^4?-xkfb%8wzqn91u z+O%4{Ft^ji(avIsY5R7gvSNEa0htYZ(=q*ai#E;l9Un`mjN)*DBDzKOtG*W;QOFEnDs*X4>Df>E(d|qfVKg^#p@Pn|Zm|VI)>9f6J|}n=P|x z(Hn}X$85*;PY8_6%BypmmM>+(k{F+z8?;bhECMC7p^&%CgiQ2^#3?E8JjV0lQU{pK z%i#g$hh#(A*$KM9G{x?clAM=xYAo8t)(9x%N$V$*8R-}=<5D0X7NGfiB4lj6giZD) zh&3D~>A`;ZP``o<@TSaDo^8quS4TbP1X6)$#;;0CW$FL;37=U+@JvkO4dwAicahpY##*F-i zZ`QU~&7CNydd+msNdIa3mg#MUZNoxdrhDrbmRHZvf6{8p^4blbH6A#ZnTh=v4d|q? z#!QbvKvX5e|8G4K#72F5XAV82|Z zalpX+_^81C{-RANGH_AKegdB~a9UCy!^aIgESFE=(*{0+&l-3FtbyVw*Y)Mt-3i;< z8&&ZQ9p5zYEqt5D@mLR&&pZVz+pTO^93>6=`Ea}x0(Q5e87~g3EWU&93Ot@LZMGA? zZJ&ALSHt8tL!g~(z-amoj-Ujm z)1)D*Yy09|+9n|#-JszG8LaQ~V-N?+c6QxuEBX|M#-256zT3K{;fE}$71!NvbEq22 zj$^f!8m8x2^x)@74>Z}{!XyAk-{XY9C>^B?DJ5@6d8GlJ&0M5EkHJ8 z7X)v13h{?Xr>GUOF(O?m`7`85HF}^%?uz6-fWyQ*$lYnaQ+ylquR|>S5vdd||Bm|< zX1QjAvng7&A9LJKhFHvFfjdg!2(1w~N?H-zfE#uzSE*dSg*=*n10%6kX_wS3H5wrx z(kNt;lG7{vI?}%-G&Cs`E({fBa}N<#`h|-_g*hmO2&?_VrJ=%{D73HNY|$?~K1BFX z;Mya+n-gh>1zNw7y+f1;RJ$py(h`|cb$;OwNDmKtm`JsoNHr+IZX(BnDp?$^Qn^=^ zvQoP$_XjGE;dm6M9xK&*RVjY66t6Y6Ru0dRdboJpyTEJpn3IGXxc?*>XmLvJog#&L%*k)f_>iRim7fAR_{i z>VVQW>DpjIUJ70AR^mH2i^mwF3H%M`IA&5DVZX;Rc_YO929J|U^LY)Q=c-^8uV96g ziUzj1dkh*{u&_o-$B(J)JgE$RhDWhZDvMi8?-xkr@F$M73#1He(6*B(Y5IRq(4fDM zNsT*{bn!m+g=FUclbtzumWfTv-;bzPWLwLQRAfeF7?PtboP%LqD%~(BbY6xbnylx7 zQsLhUS)4NB4prz>^rPb9vGnnvAf}6pTPz2?xNrm7(OW1!E%`<@Ef31+=tP%A5+3EN zN^r#b2!!;q(m5(r)!<0&9`DJ?jf9-iI{p_!3iBe;&s_#&N9@B@5_ zREi0C0Z-D`5w^w_o+6dT2`2K(q!eNv##czG@c9w^Dk&{U)<2Q`fQ+;TT?i%!LVQ3K z@jfLP6Hq#U4kq2piePF279;z)5m@U5$M_)!k%&GZ5=#v~qaefdweA<~G=m{On^Q8W yeDX5sd<;c?HO1csSEk^cjUnRdAV literal 3604 zcma)8+iw(A82_E^+;(@`Zf^@Kpoj%}Wfc{4dl4zOYFjETAmD}Rc4&ugXUguBgv4j# zlZj6n6JI4UJSahoJQ#h!#J@?z-$>HK+0Ja=u1FnUEf}_tHfrv8n~K3F2rp6 zPNg{K)O-TcOU{~W`P)^VHrOJbOqh&LpQcKuwYs`!+l}J~hIZnHF9|3!-YTtj&pEEW zu)VorSC_4oN)VM-wknsbsw4LiQ}Ndwy0~wy>}?irSZ?`tvEr>cZt^VjXFfG%r1 zD7)1NI04xiFyo%@3PmxauK|eT6zGp(Np>y(Zza3FCqy>!I+uK_yfJTWMcrqVE%&qx zkFKp-we_%d*-W$ae(}QW{Aq?qTC3W%?TXJn3w%!x#%^{8bkY}du<1<0_rfU>$Sir= z)v|rYk>ij{bodcD?}wOw35NAq<;%TT%yc z$i!i}j9}EnDKMDaNze0Ze%0CvhpE=B;f8@V6YFp&j_;kYifpui)#xgwfcHQKH?biw zod{v5o{}jswqMe5N+icwm1`m~Q({><6EoKyU! z_%%l!K#cy5R0@}W36T4^W&&9svTX8~xzC4Kyn_AQQH$sI(%u2ms^A9Pa6Gt5<3)aj z6pj3bj@YUeF!jKq83H1U%nJ^Y)2#de%Fnctf^;cV&a_qLNVQQ`Tb0eW${f!&%37;( zS6gMyG5u?GTeK?Y+9-#08ROaGjjEJrOjbo38T}PX`^<&4&>FSSg8DaV(ZjY7IMUvv z`l2RfD>Y2^1tyDlJqoqSOYKEX%C2mf><>)7furaMvNx9uTu750iK>S!vor9p!QUi0 zY$uJ4T8IzH^N=vhZ;{CxIP_n9!EcsI_eV#5gsR*d{R{f{P&@98{t114Y~&$~U`rys zFvg{%jQ@>nL3xaxyD-NK%0p!8h-^tEBwNx7s>EoI(R&x21+}0hKxRoN$SfHJU4o1V zq!)|?sI!zNsI!zQq$Ma5fzpLc9i-fAo0zRInnp+5=fA@5FyaCHfOk2uDGuh>D3RB} zhvzFykWz3K8<-@eVxG_26e$fAoWV3HUa&ZU_edG|hU0yLR2tv1sop1*!AbgY4Bfi% zFS>N-Pmt$r#6Lqk!S0YuKZC5_8OK>1MLv*WQRpcDf2LVgRzt>_9Q$MgsEs&PD#ZLC@tdKw SP27UZx&NGdgZu0JS^ont-?ae% From e0d8cc33c34f14c73cd43849b5c1a15842d05127 Mon Sep 17 00:00:00 2001 From: Andy Date: Wed, 29 Mar 2023 23:25:04 +0800 Subject: [PATCH 14/14] feature:spring PgSQL --- SpringBoot-PgSQL/pom.xml | 97 +++++++++++++++++++ .../src/main/java/com/fancv/App.java | 17 ++++ .../java/com/fancv/config/DataConfig.java | 43 ++++++++ .../com/fancv/controller/TestController.java | 30 ++++++ .../src/main/resources/application.yaml | 28 ++++++ .../src/test/java/com/fancv/AppTest.java | 20 ++++ 6 files changed, 235 insertions(+) create mode 100644 SpringBoot-PgSQL/pom.xml create mode 100644 SpringBoot-PgSQL/src/main/java/com/fancv/App.java create mode 100644 SpringBoot-PgSQL/src/main/java/com/fancv/config/DataConfig.java create mode 100644 SpringBoot-PgSQL/src/main/java/com/fancv/controller/TestController.java create mode 100644 SpringBoot-PgSQL/src/main/resources/application.yaml create mode 100644 SpringBoot-PgSQL/src/test/java/com/fancv/AppTest.java diff --git a/SpringBoot-PgSQL/pom.xml b/SpringBoot-PgSQL/pom.xml new file mode 100644 index 0000000..1ec9c34 --- /dev/null +++ b/SpringBoot-PgSQL/pom.xml @@ -0,0 +1,97 @@ + + + + + SpringBootCodeBase + com.fancv + 1.0-SNAPSHOT + + 4.0.0 + + SpringBoot-PgSQL + + SpringBoot-PgSQL + + http://www.fancv.com + + + UTF-8 + 11 + 11 + + + + + junit + junit + 4.11 + test + + + org.springframework.boot + spring-boot-starter-web + + + org.postgresql + postgresql + + + com.alibaba + druid + 1.0.27 + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + 1.1.1 + + + + + + + + + + maven-clean-plugin + 3.1.0 + + + + maven-resources-plugin + 3.0.2 + + + maven-compiler-plugin + 3.8.0 + + + maven-surefire-plugin + 2.22.1 + + + maven-jar-plugin + 3.0.2 + + + maven-install-plugin + 2.5.2 + + + maven-deploy-plugin + 2.8.2 + + + + maven-site-plugin + 3.7.1 + + + maven-project-info-reports-plugin + 3.0.0 + + + + + diff --git a/SpringBoot-PgSQL/src/main/java/com/fancv/App.java b/SpringBoot-PgSQL/src/main/java/com/fancv/App.java new file mode 100644 index 0000000..7b406eb --- /dev/null +++ b/SpringBoot-PgSQL/src/main/java/com/fancv/App.java @@ -0,0 +1,17 @@ +package com.fancv; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +/** + * Hello world! + * + */ +@SpringBootApplication +public class App +{ + public static void main( String[] args ) + { + SpringApplication.run(App.class,args); + } +} diff --git a/SpringBoot-PgSQL/src/main/java/com/fancv/config/DataConfig.java b/SpringBoot-PgSQL/src/main/java/com/fancv/config/DataConfig.java new file mode 100644 index 0000000..f3f9942 --- /dev/null +++ b/SpringBoot-PgSQL/src/main/java/com/fancv/config/DataConfig.java @@ -0,0 +1,43 @@ +package com.fancv.config; + +import com.alibaba.druid.pool.DruidDataSource; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.jdbc.core.JdbcTemplate; + +import javax.sql.DataSource; + +@Configuration +public class DataConfig { + @Value("${spring.datasource.username}") + private String user; + @Value("${spring.datasource.password}") + private String pass; + @Value("${spring.datasource.url}") + private String url; + @Value("${spring.datasource.driver-class-name}") + private String driverClassName; + + @Bean(name = "data_pgsql") + public DataSource dataSource() { + return getDruidDataSource(user,pass,url,driverClassName); + } + + private DruidDataSource getDruidDataSource(String name, String password, String url, String driver){ + DruidDataSource druidDataSource = new DruidDataSource(); + druidDataSource.setDriverClassName(driver); + druidDataSource.setUrl(url); + druidDataSource.setUsername(name); + druidDataSource.setPassword(password); + return druidDataSource; + } + + @Bean(name = "jdbc_pgsql") + public JdbcTemplate getJdbcTemplate(@Qualifier("data_pgsql") DataSource dataSource) { + return new JdbcTemplate(dataSource); + } + +} + diff --git a/SpringBoot-PgSQL/src/main/java/com/fancv/controller/TestController.java b/SpringBoot-PgSQL/src/main/java/com/fancv/controller/TestController.java new file mode 100644 index 0000000..2fcf510 --- /dev/null +++ b/SpringBoot-PgSQL/src/main/java/com/fancv/controller/TestController.java @@ -0,0 +1,30 @@ +package com.fancv.controller; + +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.time.LocalDate; + +@RestController +@Api(tags = "1") +public class TestController { + + @Autowired + @Qualifier("jdbc_pgsql") + private JdbcTemplate jdbcTemplate; + + @GetMapping(value = "/getUser") + public Object get() { + + LocalDate date = LocalDate.now(); + + System.out.println(date.toString()); + String sql = "select * from public.user"; + return jdbcTemplate.queryForList(sql); + } +} + diff --git a/SpringBoot-PgSQL/src/main/resources/application.yaml b/SpringBoot-PgSQL/src/main/resources/application.yaml new file mode 100644 index 0000000..f56948b --- /dev/null +++ b/SpringBoot-PgSQL/src/main/resources/application.yaml @@ -0,0 +1,28 @@ +spring: + datasource: + username: 'postgres' + password: 'abc123' + url: jdbc:postgresql://127.0.0.1:5432/first + driver-class-name: org.postgresql.Driver + type: com.alibaba.druid.pool.DruidDataSource + initialSize: 5 + minIdle: 5 + maxActive: 20 + maxWait: 60000 + timeBetweenEvictionRunsMillis: 60000 + minEvictableIdleTimeMillis: 300000 + validationQuery: SELECT 1 FROM DUAL + testWhileIdle: true + testOnBorrow: false + testOnReturn: false + poolPreparedStatements: true + #配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙 + filters: stat,wall,log4j + maxPoolPreparedStatementPerConnectionSize: 20 + useGlobalDataSourceStat: true + connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500 + + +server: + port: 9019 + diff --git a/SpringBoot-PgSQL/src/test/java/com/fancv/AppTest.java b/SpringBoot-PgSQL/src/test/java/com/fancv/AppTest.java new file mode 100644 index 0000000..84d0c0b --- /dev/null +++ b/SpringBoot-PgSQL/src/test/java/com/fancv/AppTest.java @@ -0,0 +1,20 @@ +package com.fancv; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +/** + * Unit test for simple App. + */ +public class AppTest +{ + /** + * Rigorous Test :-) + */ + @Test + public void shouldAnswerWithTrue() + { + assertTrue( true ); + } +}