From 0172303314fe4a73ea1b4a6038c8ca7bb9f9de6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=8B=BC?= <2468023037@qq.com> Date: Sat, 15 Feb 2025 12:35:18 +0800 Subject: [PATCH] first commit --- .gitattributes | 2 + .gitignore | 33 + .mvn/wrapper/maven-wrapper.properties | 19 + logs/abnormal.2025-02-11.log | 552 +++++++++++++ logs/abnormal.2025-02-12.log | 481 +++++++++++ logs/abnormal.2025-02-13.log | 779 ++++++++++++++++++ logs/abnormal.2025-02-14.log | 172 ++++ logs/abnormal.log | 2 + logs/normal.2025-02-11.log | 93 +++ logs/normal.2025-02-12.log | 140 ++++ logs/normal.2025-02-13.log | 432 ++++++++++ logs/normal.2025-02-14.log | 336 ++++++++ logs/normal.log | 42 + mvnw | 259 ++++++ mvnw.cmd | 149 ++++ pom.xml | 87 ++ .../java/com/app/app_hd/AppHdApplication.java | 15 + .../java/com/app/app_hd/api/CommonApi.java | 96 +++ .../com/app/app_hd/api/ExchangeRateApi.java | 25 + .../java/com/app/app_hd/api/InviteApi.java | 103 +++ .../java/com/app/app_hd/api/MessageApi.java | 39 + .../java/com/app/app_hd/api/MoneyApi.java | 77 ++ src/main/java/com/app/app_hd/api/PayApi.java | 25 + .../java/com/app/app_hd/api/ProductApi.java | 46 ++ src/main/java/com/app/app_hd/api/SingApi.java | 40 + .../java/com/app/app_hd/api/SpeakApi.java | 25 + src/main/java/com/app/app_hd/api/TaskApi.java | 183 ++++ .../java/com/app/app_hd/api/TurntableApi.java | 34 + src/main/java/com/app/app_hd/api/UserApi.java | 255 ++++++ .../java/com/app/app_hd/api/UserbankApi.java | 74 ++ .../java/com/app/app_hd/api/VipRewardApi.java | 50 ++ .../java/com/app/app_hd/api/WithdrawApi.java | 154 ++++ .../java/com/app/app_hd/config/WebConfig.java | 30 + .../com/app/app_hd/dao/DictionaryDao.java | 10 + .../com/app/app_hd/dao/ExchangeRateDao.java | 10 + .../java/com/app/app_hd/dao/InviteDao.java | 10 + .../java/com/app/app_hd/dao/MessageDao.java | 10 + .../java/com/app/app_hd/dao/MoneyDao.java | 10 + src/main/java/com/app/app_hd/dao/PayDao.java | 10 + .../java/com/app/app_hd/dao/ProductDao.java | 10 + .../java/com/app/app_hd/dao/SpeakDao.java | 10 + src/main/java/com/app/app_hd/dao/TaskDao.java | 10 + .../java/com/app/app_hd/dao/TurntableDao.java | 10 + src/main/java/com/app/app_hd/dao/UserDao.java | 14 + .../java/com/app/app_hd/dao/UserLogDao.java | 10 + .../com/app/app_hd/dao/UserNumberDao.java | 10 + .../java/com/app/app_hd/dao/UserbankDao.java | 10 + src/main/java/com/app/app_hd/dao/VipDao.java | 10 + .../java/com/app/app_hd/dao/WithdrawDao.java | 10 + .../java/com/app/app_hd/dto/ApiResponse.java | 71 ++ .../com/app/app_hd/dto/BankAccountDto.java | 12 + .../com/app/app_hd/dto/TongjiRequest.java | 23 + .../com/app/app_hd/entity/Dictionary.java | 26 + .../com/app/app_hd/entity/ExchangeRate.java | 19 + .../java/com/app/app_hd/entity/Invite.java | 27 + .../java/com/app/app_hd/entity/Message.java | 34 + .../java/com/app/app_hd/entity/Money.java | 45 + src/main/java/com/app/app_hd/entity/Pay.java | 24 + .../java/com/app/app_hd/entity/Product.java | 93 +++ .../java/com/app/app_hd/entity/Speak.java | 21 + src/main/java/com/app/app_hd/entity/Task.java | 28 + .../java/com/app/app_hd/entity/Turntable.java | 50 ++ src/main/java/com/app/app_hd/entity/User.java | 126 +++ .../java/com/app/app_hd/entity/UserLog.java | 21 + .../com/app/app_hd/entity/UserNumber.java | 22 + .../java/com/app/app_hd/entity/Userbank.java | 29 + src/main/java/com/app/app_hd/entity/Vip.java | 25 + .../java/com/app/app_hd/entity/Withdraw.java | 28 + .../app/app_hd/service/DictionaryService.java | 8 + .../app_hd/service/ExchangeRateService.java | 8 + .../com/app/app_hd/service/InviteService.java | 8 + .../app/app_hd/service/MessageService.java | 8 + .../com/app/app_hd/service/MoneyService.java | 8 + .../com/app/app_hd/service/PayService.java | 8 + .../app/app_hd/service/ProductService.java | 8 + .../com/app/app_hd/service/SpeakService.java | 8 + .../com/app/app_hd/service/TaskService.java | 8 + .../app/app_hd/service/TurntableService.java | 8 + .../app/app_hd/service/UserLogService.java | 8 + .../app/app_hd/service/UserNumberService.java | 8 + .../com/app/app_hd/service/UserService.java | 11 + .../app/app_hd/service/UserbankService.java | 8 + .../com/app/app_hd/service/VipService.java | 8 + .../app/app_hd/service/WithdrawService.java | 8 + .../service/impl/DictionaryServiceImpl.java | 12 + .../service/impl/ExchangeRateServiceImpl.java | 12 + .../service/impl/InviteServiceImpl.java | 12 + .../service/impl/MessageServiceImpl.java | 11 + .../app_hd/service/impl/MoneyServiceImpl.java | 12 + .../app_hd/service/impl/PayServiceImpl.java | 12 + .../service/impl/ProductServiceImpl.java | 12 + .../service/impl/ScheduledTaskService.java | 86 ++ .../app_hd/service/impl/SpeakServiceImpl.java | 12 + .../app_hd/service/impl/TaskServiceImpl.java | 12 + .../service/impl/TurntableServiceImpl.java | 11 + .../service/impl/UserLogServiceImpl.java | 12 + .../service/impl/UserNumberServiceImpl.java | 12 + .../app_hd/service/impl/UserServiceImpl.java | 30 + .../service/impl/UserbankServiceImpl.java | 12 + .../app_hd/service/impl/VipServiceImpl.java | 12 + .../service/impl/WithdrawServiceImpl.java | 12 + .../app/app_hd/util/PaymentRequestUtil.java | 139 ++++ .../com/app/app_hd/util/enumLzy/Result.java | 55 ++ .../com/app/app_hd/util/vo/Announcement.java | 72 ++ src/main/resources/application.yml | 35 + src/main/resources/logs/log-lzy.xml | 73 ++ .../0df3c7e105e7565cdb02b23d152d5b7b.jpg | Bin 0 -> 37903 bytes .../88acc7638b94f5d2869d3d32e68e57aa.jpg | Bin 0 -> 62388 bytes .../895002addbceb4169967599f9f087bb1.jpg | Bin 0 -> 54115 bytes .../c817cf8328c739ed87a237394447f573.jpg | Bin 0 -> 42227 bytes .../039faa1fb225ef5814a325218f2e00ee.jpg | Bin 0 -> 50636 bytes .../com/app/app_hd/AppHdApplicationTests.java | 13 + 112 files changed, 6549 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 .mvn/wrapper/maven-wrapper.properties create mode 100644 logs/abnormal.2025-02-11.log create mode 100644 logs/abnormal.2025-02-12.log create mode 100644 logs/abnormal.2025-02-13.log create mode 100644 logs/abnormal.2025-02-14.log create mode 100644 logs/abnormal.log create mode 100644 logs/normal.2025-02-11.log create mode 100644 logs/normal.2025-02-12.log create mode 100644 logs/normal.2025-02-13.log create mode 100644 logs/normal.2025-02-14.log create mode 100644 logs/normal.log create mode 100644 mvnw create mode 100644 mvnw.cmd create mode 100644 pom.xml create mode 100644 src/main/java/com/app/app_hd/AppHdApplication.java create mode 100644 src/main/java/com/app/app_hd/api/CommonApi.java create mode 100644 src/main/java/com/app/app_hd/api/ExchangeRateApi.java create mode 100644 src/main/java/com/app/app_hd/api/InviteApi.java create mode 100644 src/main/java/com/app/app_hd/api/MessageApi.java create mode 100644 src/main/java/com/app/app_hd/api/MoneyApi.java create mode 100644 src/main/java/com/app/app_hd/api/PayApi.java create mode 100644 src/main/java/com/app/app_hd/api/ProductApi.java create mode 100644 src/main/java/com/app/app_hd/api/SingApi.java create mode 100644 src/main/java/com/app/app_hd/api/SpeakApi.java create mode 100644 src/main/java/com/app/app_hd/api/TaskApi.java create mode 100644 src/main/java/com/app/app_hd/api/TurntableApi.java create mode 100644 src/main/java/com/app/app_hd/api/UserApi.java create mode 100644 src/main/java/com/app/app_hd/api/UserbankApi.java create mode 100644 src/main/java/com/app/app_hd/api/VipRewardApi.java create mode 100644 src/main/java/com/app/app_hd/api/WithdrawApi.java create mode 100644 src/main/java/com/app/app_hd/config/WebConfig.java create mode 100644 src/main/java/com/app/app_hd/dao/DictionaryDao.java create mode 100644 src/main/java/com/app/app_hd/dao/ExchangeRateDao.java create mode 100644 src/main/java/com/app/app_hd/dao/InviteDao.java create mode 100644 src/main/java/com/app/app_hd/dao/MessageDao.java create mode 100644 src/main/java/com/app/app_hd/dao/MoneyDao.java create mode 100644 src/main/java/com/app/app_hd/dao/PayDao.java create mode 100644 src/main/java/com/app/app_hd/dao/ProductDao.java create mode 100644 src/main/java/com/app/app_hd/dao/SpeakDao.java create mode 100644 src/main/java/com/app/app_hd/dao/TaskDao.java create mode 100644 src/main/java/com/app/app_hd/dao/TurntableDao.java create mode 100644 src/main/java/com/app/app_hd/dao/UserDao.java create mode 100644 src/main/java/com/app/app_hd/dao/UserLogDao.java create mode 100644 src/main/java/com/app/app_hd/dao/UserNumberDao.java create mode 100644 src/main/java/com/app/app_hd/dao/UserbankDao.java create mode 100644 src/main/java/com/app/app_hd/dao/VipDao.java create mode 100644 src/main/java/com/app/app_hd/dao/WithdrawDao.java create mode 100644 src/main/java/com/app/app_hd/dto/ApiResponse.java create mode 100644 src/main/java/com/app/app_hd/dto/BankAccountDto.java create mode 100644 src/main/java/com/app/app_hd/dto/TongjiRequest.java create mode 100644 src/main/java/com/app/app_hd/entity/Dictionary.java create mode 100644 src/main/java/com/app/app_hd/entity/ExchangeRate.java create mode 100644 src/main/java/com/app/app_hd/entity/Invite.java create mode 100644 src/main/java/com/app/app_hd/entity/Message.java create mode 100644 src/main/java/com/app/app_hd/entity/Money.java create mode 100644 src/main/java/com/app/app_hd/entity/Pay.java create mode 100644 src/main/java/com/app/app_hd/entity/Product.java create mode 100644 src/main/java/com/app/app_hd/entity/Speak.java create mode 100644 src/main/java/com/app/app_hd/entity/Task.java create mode 100644 src/main/java/com/app/app_hd/entity/Turntable.java create mode 100644 src/main/java/com/app/app_hd/entity/User.java create mode 100644 src/main/java/com/app/app_hd/entity/UserLog.java create mode 100644 src/main/java/com/app/app_hd/entity/UserNumber.java create mode 100644 src/main/java/com/app/app_hd/entity/Userbank.java create mode 100644 src/main/java/com/app/app_hd/entity/Vip.java create mode 100644 src/main/java/com/app/app_hd/entity/Withdraw.java create mode 100644 src/main/java/com/app/app_hd/service/DictionaryService.java create mode 100644 src/main/java/com/app/app_hd/service/ExchangeRateService.java create mode 100644 src/main/java/com/app/app_hd/service/InviteService.java create mode 100644 src/main/java/com/app/app_hd/service/MessageService.java create mode 100644 src/main/java/com/app/app_hd/service/MoneyService.java create mode 100644 src/main/java/com/app/app_hd/service/PayService.java create mode 100644 src/main/java/com/app/app_hd/service/ProductService.java create mode 100644 src/main/java/com/app/app_hd/service/SpeakService.java create mode 100644 src/main/java/com/app/app_hd/service/TaskService.java create mode 100644 src/main/java/com/app/app_hd/service/TurntableService.java create mode 100644 src/main/java/com/app/app_hd/service/UserLogService.java create mode 100644 src/main/java/com/app/app_hd/service/UserNumberService.java create mode 100644 src/main/java/com/app/app_hd/service/UserService.java create mode 100644 src/main/java/com/app/app_hd/service/UserbankService.java create mode 100644 src/main/java/com/app/app_hd/service/VipService.java create mode 100644 src/main/java/com/app/app_hd/service/WithdrawService.java create mode 100644 src/main/java/com/app/app_hd/service/impl/DictionaryServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/ExchangeRateServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/InviteServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/MessageServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/MoneyServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/PayServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/ProductServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/ScheduledTaskService.java create mode 100644 src/main/java/com/app/app_hd/service/impl/SpeakServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/TaskServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/TurntableServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/UserLogServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/UserNumberServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/UserServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/UserbankServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/VipServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/service/impl/WithdrawServiceImpl.java create mode 100644 src/main/java/com/app/app_hd/util/PaymentRequestUtil.java create mode 100644 src/main/java/com/app/app_hd/util/enumLzy/Result.java create mode 100644 src/main/java/com/app/app_hd/util/vo/Announcement.java create mode 100644 src/main/resources/application.yml create mode 100644 src/main/resources/logs/log-lzy.xml create mode 100644 src/main/resources/static/uploads/20241119/0df3c7e105e7565cdb02b23d152d5b7b.jpg create mode 100644 src/main/resources/static/uploads/20241119/88acc7638b94f5d2869d3d32e68e57aa.jpg create mode 100644 src/main/resources/static/uploads/20241119/895002addbceb4169967599f9f087bb1.jpg create mode 100644 src/main/resources/static/uploads/20241119/c817cf8328c739ed87a237394447f573.jpg create mode 100644 src/main/resources/static/uploads/20250120/039faa1fb225ef5814a325218f2e00ee.jpg create mode 100644 src/test/java/com/app/app_hd/AppHdApplicationTests.java diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..3b41682 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +/mvnw text eol=lf +*.cmd text eol=crlf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..549e00a --- /dev/null +++ b/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000..d58dfb7 --- /dev/null +++ b/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,19 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.2 +distributionType=only-script +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.9/apache-maven-3.9.9-bin.zip diff --git a/logs/abnormal.2025-02-11.log b/logs/abnormal.2025-02-11.log new file mode 100644 index 0000000..cdd6c6a --- /dev/null +++ b/logs/abnormal.2025-02-11.log @@ -0,0 +1,552 @@ +2025-02-11 13:13:43,009 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-11 13:49:47,521 ERROR [http-nio-8081-exec-9] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.mybatis.spring.MyBatisSystemException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection +### The error may exist in com/app/app_hd/dao/UserDao.java (best guess) +### The error may involve com.app.app_hd.dao.UserDao.selectList +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection] with root cause +java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835) + at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:455) + at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240) + at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) + at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:77) + at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:64) + at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:348) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:89) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:64) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy66.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy73.selectList(Unknown Source) + at com.baomidou.mybatisplus.core.mapper.BaseMapper.selectOne(BaseMapper.java:332) + at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:732) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$DefaultMethodInvoker.invoke(MybatisMapperProxy.java:166) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy73.selectOne(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.AbstractRepository.getOne(AbstractRepository.java:78) + at com.baomidou.mybatisplus.extension.repository.IRepository.getOne(IRepository.java:221) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.UserServiceImpl$$SpringCGLIB$$0.getOne() + at com.app.app_hd.api.UserApi.register(UserApi.java:68) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-11 13:52:36,642 ERROR [http-nio-8081-exec-1] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.mybatis.spring.MyBatisSystemException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection +### The error may exist in com/app/app_hd/dao/UserDao.java (best guess) +### The error may involve com.app.app_hd.dao.UserDao.selectList +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection] with root cause +java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835) + at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:455) + at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240) + at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) + at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:77) + at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:64) + at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:348) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:89) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:64) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy66.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy73.selectList(Unknown Source) + at com.baomidou.mybatisplus.core.mapper.BaseMapper.selectOne(BaseMapper.java:332) + at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:732) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$DefaultMethodInvoker.invoke(MybatisMapperProxy.java:166) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy73.selectOne(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.AbstractRepository.getOne(AbstractRepository.java:78) + at com.baomidou.mybatisplus.extension.repository.IRepository.getOne(IRepository.java:221) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.UserServiceImpl$$SpringCGLIB$$0.getOne() + at com.app.app_hd.api.UserApi.register(UserApi.java:68) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-11 13:54:51,442 ERROR [http-nio-8081-exec-5] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.mybatis.spring.MyBatisSystemException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection +### The error may exist in com/app/app_hd/dao/UserDao.java (best guess) +### The error may involve com.app.app_hd.dao.UserDao.selectList +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection] with root cause +java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835) + at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:455) + at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240) + at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) + at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:77) + at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:64) + at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:348) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:89) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:64) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy66.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy73.selectList(Unknown Source) + at com.app.app_hd.service.impl.UserServiceImpl.login(UserServiceImpl.java:24) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.UserServiceImpl$$SpringCGLIB$$0.login() + at com.app.app_hd.api.UserApi.login(UserApi.java:40) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-11 13:57:27,228 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-11 13:58:16,518 ERROR [http-nio-8081-exec-3] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.mybatis.spring.MyBatisSystemException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection +### The error may exist in com/app/app_hd/dao/UserDao.java (best guess) +### The error may involve com.app.app_hd.dao.UserDao.selectList +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection] with root cause +java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835) + at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:455) + at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240) + at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) + at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:77) + at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:64) + at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:348) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:89) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:64) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy66.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy73.selectList(Unknown Source) + at com.app.app_hd.service.impl.UserServiceImpl.login(UserServiceImpl.java:24) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.UserServiceImpl$$SpringCGLIB$$0.login() + at com.app.app_hd.api.UserApi.login(UserApi.java:40) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-11 13:58:50,948 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-11 18:52:58,982 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-11 18:54:36,727 ERROR [http-nio-8081-exec-9] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.mybatis.spring.MyBatisSystemException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection +### The error may exist in com/app/app_hd/dao/UserDao.java (best guess) +### The error may involve com.app.app_hd.dao.UserDao.selectList +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection] with root cause +java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835) + at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:455) + at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240) + at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) + at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:77) + at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:64) + at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:348) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:89) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:64) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy66.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy73.selectList(Unknown Source) + at com.app.app_hd.service.impl.UserServiceImpl.login(UserServiceImpl.java:24) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.UserServiceImpl$$SpringCGLIB$$0.login() + at com.app.app_hd.api.UserApi.login(UserApi.java:40) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-11 18:55:02,797 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] diff --git a/logs/abnormal.2025-02-12.log b/logs/abnormal.2025-02-12.log new file mode 100644 index 0000000..b5f55ce --- /dev/null +++ b/logs/abnormal.2025-02-12.log @@ -0,0 +1,481 @@ +2025-02-12 14:10:48,022 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-12 19:33:05,143 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-12 19:38:57,184 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-12 19:39:14,802 ERROR [http-nio-8081-exec-8] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' +### The error may exist in com/app/app_hd/dao/MessageDao.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,apple,image,status,status_text,url,content,createtime,updatetime FROM message WHERE (id < ?) +### Cause: java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' +; bad SQL grammar []] with root cause +java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:970) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:387) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:58) + at jdk.proxy3/jdk.proxy3.$Proxy95.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy66.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy74.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:300) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.MessageServiceImpl$$SpringCGLIB$$0.list() + at com.app.app_hd.api.MessageApi.lists(MessageApi.java:34) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-12 19:39:14,803 ERROR [http-nio-8081-exec-3] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' +### The error may exist in com/app/app_hd/dao/MessageDao.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,apple,image,status,status_text,url,content,createtime,updatetime FROM message WHERE (id > ?) +### Cause: java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' +; bad SQL grammar []] with root cause +java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:970) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:387) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:58) + at jdk.proxy3/jdk.proxy3.$Proxy95.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy66.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy74.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:300) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.MessageServiceImpl$$SpringCGLIB$$0.list() + at com.app.app_hd.api.MessageApi.lists(MessageApi.java:34) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-12 19:39:14,803 ERROR [http-nio-8081-exec-1] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' +### The error may exist in com/app/app_hd/dao/MessageDao.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,apple,image,status,status_text,url,content,createtime,updatetime FROM message WHERE (id > ?) +### Cause: java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' +; bad SQL grammar []] with root cause +java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:970) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:387) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:58) + at jdk.proxy3/jdk.proxy3.$Proxy95.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy66.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy74.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:300) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.MessageServiceImpl$$SpringCGLIB$$0.list() + at com.app.app_hd.api.MessageApi.lists(MessageApi.java:34) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-12 19:39:14,802 ERROR [http-nio-8081-exec-10] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' +### The error may exist in com/app/app_hd/dao/MessageDao.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,apple,image,status,status_text,url,content,createtime,updatetime FROM message WHERE (id < ?) +### Cause: java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' +; bad SQL grammar []] with root cause +java.sql.SQLSyntaxErrorException: Unknown column 'apple' in 'field list' + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:970) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:387) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:58) + at jdk.proxy3/jdk.proxy3.$Proxy95.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy66.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy74.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:300) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.MessageServiceImpl$$SpringCGLIB$$0.list() + at com.app.app_hd.api.MessageApi.lists(MessageApi.java:34) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-12 19:46:29,222 ERROR [http-nio-8081-exec-1] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception +com.fasterxml.jackson.core.JsonParseException: Unexpected character ('<' (code 60)): expected a valid value (JSON String, Number, Array, Object or token 'null', 'true' or 'false') + at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 1] + at com.fasterxml.jackson.core.JsonParser._constructReadException(JsonParser.java:2660) + at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:741) + at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:2054) + at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:780) + at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:4912) + at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4818) + at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3772) + at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3740) + at com.app.app_hd.api.TaskApi.getCode(TaskApi.java:85) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-12 21:21:53,751 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-12 21:26:59,935 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-12 21:50:45,410 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-12 22:11:50,436 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] diff --git a/logs/abnormal.2025-02-13.log b/logs/abnormal.2025-02-13.log new file mode 100644 index 0000000..fa9b917 --- /dev/null +++ b/logs/abnormal.2025-02-13.log @@ -0,0 +1,779 @@ +2025-02-13 08:40:39,510 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 08:42:58,338 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 09:35:34,746 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 09:53:23,118 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 09:53:31,143 ERROR [http-nio-8081-exec-6] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key,value,create_at,updated_at FROM dictionary' at line 1 +### The error may exist in com/app/app_hd/dao/DictionaryDao.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,key,value,create_at,updated_at FROM dictionary +### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key,value,create_at,updated_at FROM dictionary' at line 1 +; bad SQL grammar []] with root cause +java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key,value,create_at,updated_at FROM dictionary' at line 1 + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:970) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:387) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:58) + at jdk.proxy3/jdk.proxy3.$Proxy100.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy65.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy68.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:300) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:321) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.DictionaryServiceImpl$$SpringCGLIB$$0.list() + at com.app.app_hd.api.CommonApi.getAnnouncement(CommonApi.java:31) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-13 09:55:02,897 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 09:55:08,296 ERROR [http-nio-8081-exec-5] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key,value,create_at,updated_at FROM dictionary' at line 1 +### The error may exist in com/app/app_hd/dao/DictionaryDao.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,key,value,create_at,updated_at FROM dictionary +### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key,value,create_at,updated_at FROM dictionary' at line 1 +; bad SQL grammar []] with root cause +java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key,value,create_at,updated_at FROM dictionary' at line 1 + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:970) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:387) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:58) + at jdk.proxy3/jdk.proxy3.$Proxy100.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy65.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy68.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:300) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:321) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.DictionaryServiceImpl$$SpringCGLIB$$0.list() + at com.app.app_hd.api.CommonApi.getAnnouncement(CommonApi.java:31) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-13 10:01:29,432 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 10:01:52,054 ERROR [http-nio-8081-exec-5] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: Unknown column 'create_at' in 'field list' +### The error may exist in com/app/app_hd/dao/DictionaryDao.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,`key`,value,create_at,updated_at FROM dictionary +### Cause: java.sql.SQLSyntaxErrorException: Unknown column 'create_at' in 'field list' +; bad SQL grammar []] with root cause +java.sql.SQLSyntaxErrorException: Unknown column 'create_at' in 'field list' + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:970) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:387) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:58) + at jdk.proxy3/jdk.proxy3.$Proxy100.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy65.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy69.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:300) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:321) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.DictionaryServiceImpl$$SpringCGLIB$$0.list() + at com.app.app_hd.api.CommonApi.getAnnouncement(CommonApi.java:31) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-13 10:02:39,919 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 14:23:40,618 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 14:53:21,777 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 20:20:54,775 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 20:33:04,822 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 20:59:30,507 ERROR [http-nio-8081-exec-9] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0] with root cause +java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0 + at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) + at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) + at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266) + at java.base/java.util.Objects.checkIndex(Objects.java:359) + at java.base/java.util.ArrayList.get(ArrayList.java:427) + at com.app.app_hd.api.CommonApi.getAnnouncement(CommonApi.java:39) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-13 21:01:41,210 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 21:01:49,652 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 21:02:01,095 ERROR [http-nio-8081-exec-1] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.mybatis.spring.MyBatisSystemException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection +### The error may exist in com/app/app_hd/dao/ExchangeRateDao.java (best guess) +### The error may involve com.app.app_hd.dao.ExchangeRateDao.selectList +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection] with root cause +java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835) + at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:455) + at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240) + at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) + at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:77) + at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:64) + at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:348) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:89) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:64) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy65.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy67.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:300) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:321) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.ExchangeRateServiceImpl$$SpringCGLIB$$0.list() + at com.app.app_hd.api.CommonApi.getAnnouncement(CommonApi.java:39) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-13 21:02:12,899 ERROR [http-nio-8081-exec-4] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.mybatis.spring.MyBatisSystemException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection +### The error may exist in com/app/app_hd/dao/UserDao.java (best guess) +### The error may involve com.app.app_hd.dao.UserDao.selectList +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection] with root cause +java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835) + at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:455) + at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240) + at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) + at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:77) + at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:64) + at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:348) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:89) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:64) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy65.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy73.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.list(IRepository.java:300) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.UserServiceImpl$$SpringCGLIB$$0.list() + at com.app.app_hd.api.UserApi.userInfo(UserApi.java:196) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-13 21:03:10,704 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 21:03:20,424 ERROR [http-nio-8081-exec-1] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0] with root cause +java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0 + at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) + at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) + at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266) + at java.base/java.util.Objects.checkIndex(Objects.java:359) + at java.base/java.util.ArrayList.get(ArrayList.java:427) + at com.app.app_hd.api.CommonApi.getAnnouncement(CommonApi.java:66) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-13 21:04:05,187 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 21:11:25,521 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 21:27:24,510 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 21:28:29,657 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 21:28:34,277 ERROR [http-nio-8081-exec-1] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0] with root cause +java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0 + at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) + at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) + at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266) + at java.base/java.util.Objects.checkIndex(Objects.java:359) + at java.base/java.util.ArrayList.get(ArrayList.java:427) + at com.app.app_hd.api.CommonApi.getAnnouncement(CommonApi.java:66) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-13 21:33:34,796 ERROR [http-nio-8081-exec-8] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0] with root cause +java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0 + at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) + at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) + at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266) + at java.base/java.util.Objects.checkIndex(Objects.java:359) + at java.base/java.util.ArrayList.get(ArrayList.java:427) + at com.app.app_hd.api.CommonApi.getAnnouncement(CommonApi.java:66) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-13 21:50:31,515 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-13 22:01:35,416 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] diff --git a/logs/abnormal.2025-02-14.log b/logs/abnormal.2025-02-14.log new file mode 100644 index 0000000..eb0c85f --- /dev/null +++ b/logs/abnormal.2025-02-14.log @@ -0,0 +1,172 @@ +2025-02-14 08:37:07,084 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 09:07:46,548 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 09:12:19,259 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 09:46:37,457 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 10:31:23,571 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 10:39:41,605 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 10:41:28,488 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 11:13:20,886 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 12:07:51,972 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 13:05:18,389 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 22:45:52,651 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 22:49:42,317 ERROR [http-nio-8081-exec-7] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception +com.fasterxml.jackson.core.JsonParseException: Unexpected character ('<' (code 60)): expected a valid value (JSON String, Number, Array, Object or token 'null', 'true' or 'false') + at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 1] + at com.fasterxml.jackson.core.JsonParser._constructReadException(JsonParser.java:2660) + at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:741) + at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:2054) + at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:780) + at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:4912) + at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4818) + at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3772) + at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3740) + at com.app.app_hd.api.TaskApi.getCode(TaskApi.java:89) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-14 22:49:48,403 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 22:53:18,793 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 22:59:13,595 ERROR [http-nio-8081-exec-2] o.a.c.c.C.[.[.[.[dispatcherServlet] [DirectJDKLog.java:175] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.dao.DuplicateKeyException: +### Error updating database. Cause: java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '37769217' for key 'PRIMARY' +### The error may exist in com/app/app_hd/dao/UserNumberDao.java (best guess) +### The error may involve com.app.app_hd.dao.UserNumberDao.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO user_number ( id, user_id, wsnumber, createtime ) VALUES ( ?, ?, ?, ? ) +### Cause: java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '37769217' for key 'PRIMARY' +; Duplicate entry '37769217' for key 'PRIMARY'] with root cause +java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '37769217' for key 'PRIMARY' + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:117) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:970) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:387) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at jdk.internal.reflect.GeneratedMethodAccessor22.invoke(Unknown Source) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:58) + at jdk.proxy3/jdk.proxy3.$Proxy99.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.update(PreparedStatementHandler.java:48) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.update(RoutingStatementHandler.java:75) + at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:50) + at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:117) + at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:76) + at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:197) + at org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:184) + at jdk.internal.reflect.GeneratedMethodAccessor101.invoke(Unknown Source) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333) + at jdk.proxy2/jdk.proxy2.$Proxy65.insert(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.insert(SqlSessionTemplate.java:224) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:59) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:152) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy82.insert(Unknown Source) + at com.baomidou.mybatisplus.extension.repository.IRepository.save(IRepository.java:37) + at jdk.internal.reflect.GeneratedMethodAccessor100.invoke(Unknown Source) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:723) + at com.app.app_hd.service.impl.UserNumberServiceImpl$$SpringCGLIB$$0.save() + at com.app.app_hd.api.TaskApi.getCode(TaskApi.java:146) + at jdk.internal.reflect.GeneratedMethodAccessor99.invoke(Unknown Source) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:257) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:190) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:842) +2025-02-14 22:59:37,426 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-14 23:01:34,779 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] diff --git a/logs/abnormal.log b/logs/abnormal.log new file mode 100644 index 0000000..517cbe2 --- /dev/null +++ b/logs/abnormal.log @@ -0,0 +1,2 @@ +2025-02-15 11:36:12,473 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] +2025-02-15 11:40:56,755 ERROR [main] o.a.c.c.AprLifecycleListener [DirectJDKLog.java:173] An incompatible version [1.2.14] of the Apache Tomcat Native library is installed, while Tomcat requires version [1.2.34] diff --git a/logs/normal.2025-02-11.log b/logs/normal.2025-02-11.log new file mode 100644 index 0000000..a448fca --- /dev/null +++ b/logs/normal.2025-02-11.log @@ -0,0 +1,93 @@ +2025-02-11 13:13:42,296 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 24604 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-11 13:13:42,298 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-11 13:13:43,179 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-11 13:13:43,188 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-11 13:13:43,189 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-11 13:13:43,190 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-11 13:13:43,247 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-11 13:13:43,247 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 914 ms +2025-02-11 13:13:44,075 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-11 13:13:44,117 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-11 13:13:44,380 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-11 13:13:44,397 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-11 13:13:44,408 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.581 seconds (process running for 3.121) +2025-02-11 13:48:46,506 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-11 13:48:46,506 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-11 13:48:46,511 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 5 ms +2025-02-11 13:49:46,398 INFO [http-nio-8081-exec-9] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-11 13:52:35,619 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-11 13:54:50,422 INFO [http-nio-8081-exec-5] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-11 13:57:23,137 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-11 13:57:23,226 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-11 13:57:26,547 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 12508 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-11 13:57:26,549 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-11 13:57:27,411 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-11 13:57:27,423 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-11 13:57:27,424 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-11 13:57:27,425 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-11 13:57:27,495 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-11 13:57:27,496 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 914 ms +2025-02-11 13:57:28,275 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-11 13:57:28,313 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-11 13:57:28,577 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-11 13:57:28,592 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-11 13:57:28,604 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.503 seconds (process running for 3.001) +2025-02-11 13:58:07,947 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-11 13:58:07,947 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-11 13:58:07,950 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 3 ms +2025-02-11 13:58:15,392 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-11 13:58:48,292 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-11 13:58:48,383 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-11 13:58:50,249 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 23728 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-11 13:58:50,251 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-11 13:58:51,116 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-11 13:58:51,126 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-11 13:58:51,127 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-11 13:58:51,127 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-11 13:58:51,185 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-11 13:58:51,186 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 902 ms +2025-02-11 13:58:51,955 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-11 13:58:51,994 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-11 13:58:52,256 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-11 13:58:52,272 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-11 13:58:52,284 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.485 seconds (process running for 2.998) +2025-02-11 13:58:58,309 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-11 13:58:58,309 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-11 13:58:58,310 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-11 13:58:58,421 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-11 13:58:58,531 INFO [http-nio-8081-exec-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@636b3bd +2025-02-11 13:58:58,533 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-11 18:52:57,568 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 4496 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-11 18:52:57,572 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-11 18:52:59,349 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-11 18:52:59,369 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-11 18:52:59,371 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-11 18:52:59,372 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-11 18:52:59,472 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-11 18:52:59,472 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1836 ms +2025-02-11 18:53:01,416 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-11 18:53:01,440 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-11 18:53:01,458 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 4.826 seconds (process running for 5.855) +2025-02-11 18:53:09,325 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-11 18:53:09,325 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-11 18:53:09,327 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-11 18:54:35,551 INFO [http-nio-8081-exec-9] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-11 18:54:57,223 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-11 18:54:58,196 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-11 18:55:01,541 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 24316 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-11 18:55:01,545 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-11 18:55:03,182 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-11 18:55:03,203 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-11 18:55:03,205 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-11 18:55:03,205 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-11 18:55:03,312 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-11 18:55:03,314 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1711 ms +2025-02-11 18:55:05,289 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-11 18:55:05,325 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-11 18:55:05,342 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 4.731 seconds (process running for 5.729) +2025-02-11 18:55:05,596 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-11 18:55:05,597 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-11 18:55:05,598 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-11 18:55:05,768 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-11 18:55:05,974 INFO [http-nio-8081-exec-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@16e27b2b +2025-02-11 18:55:05,976 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. diff --git a/logs/normal.2025-02-12.log b/logs/normal.2025-02-12.log new file mode 100644 index 0000000..0f60fc1 --- /dev/null +++ b/logs/normal.2025-02-12.log @@ -0,0 +1,140 @@ +2025-02-12 14:10:46,933 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 20428 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-12 14:10:46,938 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-12 14:10:48,343 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-12 14:10:48,362 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-12 14:10:48,365 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-12 14:10:48,366 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-12 14:10:48,440 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-12 14:10:48,441 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1462 ms +2025-02-12 14:10:50,170 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-12 14:10:50,196 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-12 14:10:50,211 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.804 seconds (process running for 4.585) +2025-02-12 18:12:28,617 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-12 18:12:28,721 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-12 19:33:04,343 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 6256 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-12 19:33:04,345 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-12 19:33:05,347 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-12 19:33:05,360 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-12 19:33:05,362 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-12 19:33:05,362 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-12 19:33:05,426 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-12 19:33:05,426 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1046 ms +2025-02-12 19:33:06,558 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-12 19:33:06,574 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-12 19:33:06,585 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.774 seconds (process running for 3.445) +2025-02-12 19:36:40,857 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-12 19:36:40,857 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-12 19:36:40,858 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-12 19:38:52,461 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-12 19:38:52,800 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-12 19:38:56,465 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 25692 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-12 19:38:56,466 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-12 19:38:57,368 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-12 19:38:57,377 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-12 19:38:57,379 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-12 19:38:57,380 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-12 19:38:57,447 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-12 19:38:57,448 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 947 ms +2025-02-12 19:38:58,233 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-12 19:38:58,273 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-12 19:38:58,555 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-12 19:38:58,571 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-12 19:38:58,581 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.597 seconds (process running for 3.176) +2025-02-12 19:39:07,457 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-12 19:39:07,457 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-12 19:39:07,458 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-12 19:39:07,590 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-12 19:39:07,715 INFO [http-nio-8081-exec-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@15fb2748 +2025-02-12 19:39:07,717 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-12 21:21:47,544 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-12 21:21:48,354 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-12 21:21:48,360 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-12 21:21:48,364 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-12 21:21:52,954 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 29476 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-12 21:21:52,956 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-12 21:21:53,962 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-12 21:21:53,975 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-12 21:21:53,978 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-12 21:21:53,978 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-12 21:21:54,046 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-12 21:21:54,046 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1055 ms +2025-02-12 21:21:54,947 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-12 21:21:54,989 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-12 21:21:55,257 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-12 21:21:55,275 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-12 21:21:55,287 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.817 seconds (process running for 3.362) +2025-02-12 21:22:03,845 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-12 21:22:03,845 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-12 21:22:03,845 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-12 21:22:03,966 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-12 21:22:04,069 INFO [http-nio-8081-exec-3] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@2d9a07ba +2025-02-12 21:22:04,069 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-12 21:26:54,805 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-12 21:26:55,491 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-12 21:26:55,491 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-12 21:26:55,498 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-12 21:26:59,219 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 1140 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-12 21:26:59,221 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-12 21:27:00,108 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-12 21:27:00,118 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-12 21:27:00,120 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-12 21:27:00,120 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-12 21:27:00,181 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-12 21:27:00,182 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 931 ms +2025-02-12 21:27:01,026 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-12 21:27:01,065 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-12 21:27:01,323 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-12 21:27:01,339 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-12 21:27:01,349 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.607 seconds (process running for 3.094) +2025-02-12 21:28:03,829 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-12 21:28:03,829 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-12 21:28:03,829 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-12 21:28:03,947 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-12 21:28:04,053 INFO [http-nio-8081-exec-3] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@325ca059 +2025-02-12 21:28:04,053 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-12 21:50:40,442 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-12 21:50:41,142 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-12 21:50:41,146 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-12 21:50:41,149 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-12 21:50:44,695 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 19344 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-12 21:50:44,697 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-12 21:50:45,577 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-12 21:50:45,587 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-12 21:50:45,588 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-12 21:50:45,589 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-12 21:50:45,653 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-12 21:50:45,653 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 925 ms +2025-02-12 21:50:46,504 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-12 21:50:46,542 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-12 21:50:46,800 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-12 21:50:46,815 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-12 21:50:46,826 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.592 seconds (process running for 3.091) +2025-02-12 21:52:03,649 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-12 21:52:03,649 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-12 21:52:03,649 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-12 21:52:03,777 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-12 21:52:03,886 INFO [http-nio-8081-exec-2] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@5dfe07cd +2025-02-12 21:52:03,887 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-12 22:11:45,685 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-12 22:11:45,998 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-12 22:11:46,002 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-12 22:11:46,006 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-12 22:11:49,698 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 20500 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-12 22:11:49,700 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-12 22:11:50,620 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-12 22:11:50,629 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-12 22:11:50,632 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-12 22:11:50,632 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-12 22:11:50,692 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-12 22:11:50,693 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 952 ms +2025-02-12 22:11:51,577 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-12 22:11:51,622 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-12 22:11:51,895 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-12 22:11:51,910 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-12 22:11:51,917 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.717 seconds (process running for 3.23) +2025-02-12 22:13:03,647 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-12 22:13:03,647 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-12 22:13:03,648 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-12 22:13:03,769 INFO [http-nio-8081-exec-4] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-12 22:13:03,874 INFO [http-nio-8081-exec-4] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@1ae7045 +2025-02-12 22:13:03,874 INFO [http-nio-8081-exec-4] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. diff --git a/logs/normal.2025-02-13.log b/logs/normal.2025-02-13.log new file mode 100644 index 0000000..f59e2cf --- /dev/null +++ b/logs/normal.2025-02-13.log @@ -0,0 +1,432 @@ +2025-02-13 08:40:38,571 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 22896 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 08:40:38,579 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 08:40:39,738 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 08:40:39,751 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 08:40:39,752 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 08:40:39,753 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 08:40:39,830 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 08:40:39,831 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1213 ms +2025-02-13 08:40:41,111 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 08:40:41,128 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 08:40:41,139 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.085 seconds (process running for 3.706) +2025-02-13 08:41:47,423 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 08:41:47,423 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 08:41:47,424 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-13 08:42:52,260 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 08:42:52,343 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 08:42:57,594 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 1040 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 08:42:57,596 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 08:42:58,518 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 08:42:58,528 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 08:42:58,529 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 08:42:58,530 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 08:42:58,601 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 08:42:58,602 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 974 ms +2025-02-13 08:42:59,506 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 08:42:59,552 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 08:42:59,853 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 08:42:59,870 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 08:42:59,883 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.776 seconds (process running for 3.316) +2025-02-13 08:43:40,186 INFO [http-nio-8081-exec-3] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 08:43:40,186 INFO [http-nio-8081-exec-3] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 08:43:40,187 INFO [http-nio-8081-exec-3] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-13 08:43:40,355 INFO [http-nio-8081-exec-10] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 08:43:40,489 INFO [http-nio-8081-exec-10] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@4278cd85 +2025-02-13 08:43:40,490 INFO [http-nio-8081-exec-10] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 09:35:30,183 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 09:35:30,258 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 09:35:30,263 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 09:35:30,266 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 09:35:34,033 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 2416 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 09:35:34,035 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 09:35:34,918 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 09:35:34,927 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 09:35:34,928 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 09:35:34,929 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 09:35:34,993 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 09:35:34,993 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 926 ms +2025-02-13 09:35:35,836 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 09:35:35,873 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 09:35:36,139 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 09:35:36,155 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 09:35:36,166 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.58 seconds (process running for 3.093) +2025-02-13 09:36:01,086 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 09:36:01,087 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 09:36:01,088 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-13 09:36:01,211 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 09:36:01,303 INFO [http-nio-8081-exec-2] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@5dfe07cd +2025-02-13 09:36:01,305 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 09:53:18,119 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 09:53:18,198 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 09:53:18,202 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 09:53:18,205 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 09:53:22,381 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 928 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 09:53:22,383 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 09:53:23,295 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 09:53:23,306 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 09:53:23,308 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 09:53:23,308 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 09:53:23,375 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 09:53:23,375 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 959 ms +2025-02-13 09:53:24,309 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 09:53:24,346 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 09:53:24,614 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 09:53:24,635 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 09:53:24,646 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.844 seconds (process running for 3.462) +2025-02-13 09:53:30,707 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 09:53:30,708 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 09:53:30,708 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-13 09:53:30,854 INFO [http-nio-8081-exec-5] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 09:53:30,956 INFO [http-nio-8081-exec-5] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@52abfee0 +2025-02-13 09:53:30,959 INFO [http-nio-8081-exec-5] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 09:54:57,349 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 09:54:57,426 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 09:54:57,430 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 09:54:57,433 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 09:55:02,144 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 1676 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 09:55:02,145 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 09:55:03,068 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 09:55:03,079 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 09:55:03,081 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 09:55:03,082 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 09:55:03,143 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 09:55:03,143 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 964 ms +2025-02-13 09:55:04,007 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 09:55:04,046 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 09:55:04,317 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 09:55:04,338 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 09:55:04,349 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.654 seconds (process running for 3.165) +2025-02-13 09:55:07,885 INFO [http-nio-8081-exec-4] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 09:55:07,886 INFO [http-nio-8081-exec-4] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 09:55:07,888 INFO [http-nio-8081-exec-4] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 2 ms +2025-02-13 09:55:08,021 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 09:55:08,135 INFO [http-nio-8081-exec-3] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@477297b3 +2025-02-13 09:55:08,138 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 10:01:25,043 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 10:01:25,121 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 10:01:25,126 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 10:01:25,129 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 10:01:28,736 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 21840 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 10:01:28,738 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 10:01:29,613 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 10:01:29,622 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 10:01:29,624 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 10:01:29,624 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 10:01:29,684 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 10:01:29,684 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 914 ms +2025-02-13 10:01:30,540 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 10:01:30,578 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 10:01:30,850 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 10:01:30,870 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 10:01:30,881 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.608 seconds (process running for 3.092) +2025-02-13 10:01:51,617 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 10:01:51,617 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 10:01:51,619 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-13 10:01:51,744 INFO [http-nio-8081-exec-5] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 10:01:51,852 INFO [http-nio-8081-exec-5] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@f4eb185 +2025-02-13 10:01:51,854 INFO [http-nio-8081-exec-5] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 10:02:35,401 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 10:02:35,482 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 10:02:35,487 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 10:02:35,491 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 10:02:39,219 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 21212 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 10:02:39,221 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 10:02:40,092 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 10:02:40,101 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 10:02:40,103 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 10:02:40,103 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 10:02:40,162 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 10:02:40,163 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 910 ms +2025-02-13 10:02:41,030 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 10:02:41,070 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 10:02:41,338 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 10:02:41,359 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 10:02:41,370 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.633 seconds (process running for 3.13) +2025-02-13 10:03:16,398 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 10:03:16,398 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 10:03:16,399 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-13 10:03:16,563 INFO [http-nio-8081-exec-6] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 10:03:16,671 INFO [http-nio-8081-exec-6] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@3ed2eaef +2025-02-13 10:03:16,673 INFO [http-nio-8081-exec-6] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 14:23:37,227 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 14:23:37,322 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 14:23:37,322 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 14:23:37,322 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 14:23:39,865 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 4928 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 14:23:39,868 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 14:23:40,800 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 14:23:40,810 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 14:23:40,812 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 14:23:40,813 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 14:23:40,884 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 14:23:40,884 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 984 ms +2025-02-13 14:23:41,770 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 14:23:41,809 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 14:23:42,098 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 14:23:42,116 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 14:23:42,128 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.762 seconds (process running for 3.346) +2025-02-13 14:24:46,091 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 14:24:46,091 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 14:24:46,091 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-13 14:24:46,225 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 14:24:46,331 INFO [http-nio-8081-exec-2] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@5d48bc2f +2025-02-13 14:24:46,331 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 14:53:16,865 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 14:53:16,943 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 14:53:16,947 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 14:53:16,950 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 14:53:21,052 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 20416 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 14:53:21,054 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 14:53:21,947 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 14:53:21,957 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 14:53:21,958 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 14:53:21,959 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 14:53:22,021 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 14:53:22,022 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 937 ms +2025-02-13 14:53:22,873 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 14:53:22,912 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 14:53:23,181 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 14:53:23,202 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 14:53:23,213 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.611 seconds (process running for 3.11) +2025-02-13 14:53:37,152 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 14:53:37,153 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 14:53:37,154 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-13 14:53:37,286 INFO [http-nio-8081-exec-6] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 14:53:37,385 INFO [http-nio-8081-exec-6] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@4b8a03d2 +2025-02-13 14:53:37,388 INFO [http-nio-8081-exec-6] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 17:45:23,725 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 17:45:23,915 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 17:45:23,915 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 17:45:23,915 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 20:20:53,808 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 12468 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 20:20:53,810 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 20:20:54,985 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 20:20:54,997 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 20:20:55,000 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 20:20:55,000 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 20:20:55,072 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 20:20:55,072 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1225 ms +2025-02-13 20:20:56,117 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 20:20:56,163 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 20:20:56,513 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 20:20:56,534 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 20:20:56,547 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.316 seconds (process running for 4.072) +2025-02-13 20:21:06,985 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 20:21:06,985 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 20:21:06,986 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-13 20:21:07,141 INFO [http-nio-8081-exec-10] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 20:21:07,266 INFO [http-nio-8081-exec-10] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@48a3f9a4 +2025-02-13 20:21:07,268 INFO [http-nio-8081-exec-10] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 20:32:58,764 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 20:32:59,474 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 20:32:59,478 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 20:32:59,481 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 20:33:04,081 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 23576 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 20:33:04,091 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 20:33:05,001 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 20:33:05,011 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 20:33:05,013 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 20:33:05,013 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 20:33:05,081 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 20:33:05,082 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 958 ms +2025-02-13 20:33:06,036 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 20:33:06,074 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 20:33:06,356 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 20:33:06,379 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 20:33:06,391 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.739 seconds (process running for 3.244) +2025-02-13 20:33:17,131 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 20:33:17,132 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 20:33:17,133 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-13 20:33:17,288 INFO [http-nio-8081-exec-8] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 20:33:17,399 INFO [http-nio-8081-exec-8] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@1212e320 +2025-02-13 20:33:17,401 INFO [http-nio-8081-exec-8] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 21:01:36,102 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 21:01:36,790 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 21:01:36,795 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 21:01:36,798 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 21:01:40,505 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 9260 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 21:01:40,507 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 21:01:41,384 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 21:01:41,393 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 21:01:41,395 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 21:01:41,395 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 21:01:41,454 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 21:01:41,455 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 916 ms +2025-02-13 21:01:42,485 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 21:01:42,524 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 21:01:42,816 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 21:01:42,840 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 21:01:42,851 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.812 seconds (process running for 3.294) +2025-02-13 21:01:44,435 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 21:01:45,233 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 21:01:48,780 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 17776 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 21:01:48,782 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 21:01:49,857 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 21:01:49,869 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 21:01:49,870 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 21:01:49,870 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 21:01:49,933 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 21:01:49,934 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1115 ms +2025-02-13 21:01:50,968 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 21:01:51,011 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 21:01:51,309 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 21:01:51,331 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 21:01:51,343 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.097 seconds (process running for 4.644) +2025-02-13 21:01:59,819 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 21:01:59,819 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 21:01:59,819 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-13 21:01:59,963 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 21:02:11,892 INFO [http-nio-8081-exec-4] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 21:03:07,008 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 21:03:07,702 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 21:03:09,904 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 22476 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 21:03:09,906 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 21:03:10,892 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 21:03:10,902 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 21:03:10,904 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 21:03:10,904 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 21:03:10,967 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 21:03:10,968 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1028 ms +2025-02-13 21:03:11,909 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 21:03:11,949 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 21:03:12,245 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 21:03:12,263 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 21:03:12,275 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.889 seconds (process running for 3.577) +2025-02-13 21:03:20,074 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 21:03:20,074 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 21:03:20,075 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-13 21:03:20,198 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 21:03:20,324 INFO [http-nio-8081-exec-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@1b339c4e +2025-02-13 21:03:20,327 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 21:03:59,575 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 21:04:00,322 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 21:04:00,327 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 21:04:00,330 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 21:04:04,401 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 26276 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 21:04:04,403 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 21:04:05,380 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 21:04:05,391 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 21:04:05,393 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 21:04:05,394 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 21:04:05,460 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 21:04:05,461 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1025 ms +2025-02-13 21:04:06,446 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 21:04:06,490 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 21:04:06,796 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 21:04:06,817 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 21:04:06,829 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.958 seconds (process running for 3.606) +2025-02-13 21:04:14,523 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 21:04:14,523 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 21:04:14,534 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 11 ms +2025-02-13 21:04:14,656 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 21:04:14,779 INFO [http-nio-8081-exec-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@1b339c4e +2025-02-13 21:04:14,779 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 21:11:19,782 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 21:11:20,480 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 21:11:20,485 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 21:11:20,489 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 21:11:24,794 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 2200 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 21:11:24,797 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 21:11:25,693 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 21:11:25,703 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 21:11:25,704 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 21:11:25,705 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 21:11:25,766 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 21:11:25,766 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 939 ms +2025-02-13 21:11:26,698 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 21:11:26,736 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 21:11:27,002 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 21:11:27,026 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 21:11:27,037 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.701 seconds (process running for 3.214) +2025-02-13 21:11:34,368 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 21:11:34,369 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 21:11:34,369 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-13 21:11:34,471 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 21:11:34,568 INFO [http-nio-8081-exec-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@65e24921 +2025-02-13 21:11:34,570 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 21:27:17,661 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 21:27:18,373 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 21:27:18,377 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 21:27:18,381 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 21:27:23,764 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 21128 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 21:27:23,766 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 21:27:24,682 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 21:27:24,692 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 21:27:24,693 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 21:27:24,694 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 21:27:24,754 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 21:27:24,754 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 957 ms +2025-02-13 21:27:25,723 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 21:27:25,784 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 21:27:26,137 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 21:27:26,165 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 21:27:26,178 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.87 seconds (process running for 3.356) +2025-02-13 21:27:41,910 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 21:27:41,910 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 21:27:41,910 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-13 21:27:42,024 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 21:27:42,125 INFO [http-nio-8081-exec-2] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@37fd3f20 +2025-02-13 21:27:42,127 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 21:28:23,994 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 21:28:24,760 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 21:28:24,766 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 21:28:24,769 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 21:28:28,912 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 10432 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 21:28:28,915 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 21:28:29,840 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 21:28:29,850 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 21:28:29,851 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 21:28:29,852 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 21:28:29,915 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 21:28:29,915 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 968 ms +2025-02-13 21:28:30,864 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 21:28:30,907 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 21:28:31,186 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 21:28:31,207 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 21:28:31,218 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.827 seconds (process running for 3.461) +2025-02-13 21:28:33,982 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 21:28:33,982 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 21:28:33,983 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-13 21:28:34,085 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 21:28:34,181 INFO [http-nio-8081-exec-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@74a9c8be +2025-02-13 21:28:34,183 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 21:50:25,311 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 21:50:25,997 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 21:50:26,001 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 21:50:26,004 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 21:50:30,778 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 23756 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 21:50:30,780 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 21:50:31,686 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 21:50:31,695 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 21:50:31,696 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 21:50:31,696 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 21:50:31,756 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 21:50:31,756 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 944 ms +2025-02-13 21:50:32,685 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 21:50:32,723 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 21:50:33,011 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 21:50:33,033 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 21:50:33,043 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.768 seconds (process running for 3.279) +2025-02-13 21:51:01,895 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-13 21:51:01,896 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-13 21:51:01,898 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 2 ms +2025-02-13 21:51:02,086 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-13 21:51:02,204 INFO [http-nio-8081-exec-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@7054af13 +2025-02-13 21:51:02,205 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-13 22:01:31,952 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-13 22:01:32,638 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-13 22:01:32,643 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-13 22:01:32,646 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-13 22:01:34,499 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 14308 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-13 22:01:34,501 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-13 22:01:35,614 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-13 22:01:35,625 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-13 22:01:35,626 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-13 22:01:35,627 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-13 22:01:35,684 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-13 22:01:35,685 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1152 ms +2025-02-13 22:01:36,713 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-13 22:01:36,756 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-13 22:01:37,063 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-13 22:01:37,103 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-13 22:01:37,119 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.072 seconds (process running for 3.615) diff --git a/logs/normal.2025-02-14.log b/logs/normal.2025-02-14.log new file mode 100644 index 0000000..0ffec79 --- /dev/null +++ b/logs/normal.2025-02-14.log @@ -0,0 +1,336 @@ +2025-02-14 08:37:06,180 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 15320 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 08:37:06,185 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 08:37:07,278 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 08:37:07,290 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 08:37:07,292 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 08:37:07,293 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 08:37:07,358 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 08:37:07,358 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1135 ms +2025-02-14 08:37:08,335 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 08:37:08,378 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 08:37:08,704 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 08:37:08,725 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 08:37:08,742 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.124 seconds (process running for 3.825) +2025-02-14 08:37:51,035 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 08:37:51,035 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 08:37:51,036 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-14 08:37:51,187 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 08:37:51,293 INFO [http-nio-8081-exec-2] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@405a0daf +2025-02-14 08:37:51,293 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 09:07:40,263 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 09:07:40,347 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 09:07:40,350 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 09:07:40,353 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 09:07:45,829 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 22280 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 09:07:45,831 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 09:07:46,719 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 09:07:46,728 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 09:07:46,730 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 09:07:46,730 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 09:07:46,791 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 09:07:46,792 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 928 ms +2025-02-14 09:07:47,703 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 09:07:47,739 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 09:07:48,002 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 09:07:48,018 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 09:07:48,029 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.646 seconds (process running for 3.134) +2025-02-14 09:08:21,751 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 09:08:21,751 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 09:08:21,752 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-14 09:08:21,865 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 09:08:21,955 INFO [http-nio-8081-exec-2] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@4e02e80d +2025-02-14 09:08:21,957 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 09:12:14,870 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 09:12:14,944 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 09:12:14,948 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 09:12:14,951 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 09:12:18,557 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 7164 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 09:12:18,559 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 09:12:19,426 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 09:12:19,436 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 09:12:19,437 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 09:12:19,438 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 09:12:19,497 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 09:12:19,497 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 905 ms +2025-02-14 09:12:20,396 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 09:12:20,432 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 09:12:20,697 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 09:12:20,719 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 09:12:20,730 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.622 seconds (process running for 3.151) +2025-02-14 09:12:51,119 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 09:12:51,119 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 09:12:51,120 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-14 09:12:51,216 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 09:12:51,326 INFO [http-nio-8081-exec-2] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@75433f42 +2025-02-14 09:12:51,326 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 09:42:59,250 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 09:42:59,330 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 09:42:59,334 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 09:42:59,337 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 09:46:36,747 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 25584 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 09:46:36,749 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 09:46:37,629 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 09:46:37,638 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 09:46:37,640 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 09:46:37,640 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 09:46:37,700 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 09:46:37,700 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 921 ms +2025-02-14 09:46:38,545 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 09:46:38,581 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 09:46:38,837 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 09:46:38,857 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 09:46:38,868 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.566 seconds (process running for 3.063) +2025-02-14 09:46:44,753 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 09:46:44,753 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 09:46:44,754 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-14 09:46:44,861 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 09:46:44,953 INFO [http-nio-8081-exec-2] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@37fd3f20 +2025-02-14 09:46:44,955 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 10:31:17,266 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 10:31:17,424 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 10:31:17,428 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 10:31:17,431 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 10:31:22,861 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 9256 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 10:31:22,863 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 10:31:23,736 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 10:31:23,747 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 10:31:23,749 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 10:31:23,749 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 10:31:23,810 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 10:31:23,811 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 916 ms +2025-02-14 10:31:24,686 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 10:31:24,735 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 10:31:25,054 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 10:31:25,080 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 10:31:25,094 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.67 seconds (process running for 3.144) +2025-02-14 10:31:44,524 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 10:31:44,524 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 10:31:44,526 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-14 10:31:44,639 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 10:31:44,733 INFO [http-nio-8081-exec-3] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@5c0e9aa6 +2025-02-14 10:31:44,733 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 10:39:36,204 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 10:39:36,379 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 10:39:36,384 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 10:39:36,388 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 10:39:40,882 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 6644 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 10:39:40,883 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 10:39:41,776 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 10:39:41,786 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 10:39:41,788 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 10:39:41,788 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 10:39:41,852 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 10:39:41,852 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 936 ms +2025-02-14 10:39:42,733 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 10:39:42,764 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 10:39:43,029 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 10:39:43,045 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 10:39:43,061 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.629 seconds (process running for 3.128) +2025-02-14 10:40:00,026 INFO [scheduling-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 10:40:00,114 INFO [scheduling-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@35de7b9 +2025-02-14 10:40:00,115 INFO [scheduling-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 10:40:36,283 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 10:40:36,284 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 10:40:36,286 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 2 ms +2025-02-14 10:41:23,546 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 10:41:23,733 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 10:41:23,738 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 10:41:23,741 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 10:41:27,772 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 21664 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 10:41:27,774 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 10:41:28,661 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 10:41:28,670 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 10:41:28,672 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 10:41:28,672 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 10:41:28,729 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 10:41:28,730 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 923 ms +2025-02-14 10:41:29,590 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 10:41:29,627 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 10:41:29,904 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 10:41:29,924 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 10:41:29,935 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.653 seconds (process running for 3.168) +2025-02-14 10:42:10,108 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 10:42:10,108 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 10:42:10,109 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-14 10:42:10,242 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 10:42:10,357 INFO [http-nio-8081-exec-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@776eb357 +2025-02-14 10:42:10,359 INFO [http-nio-8081-exec-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 11:13:16,020 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 11:13:16,214 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 11:13:16,218 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 11:13:16,221 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 11:13:20,145 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 20548 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 11:13:20,148 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 11:13:21,057 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 11:13:21,067 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 11:13:21,068 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 11:13:21,069 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 11:13:21,131 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 11:13:21,131 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 944 ms +2025-02-14 11:13:21,996 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 11:13:22,032 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 11:13:22,302 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 11:13:22,322 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 11:13:22,334 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.677 seconds (process running for 3.219) +2025-02-14 11:20:00,021 INFO [scheduling-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 11:20:00,117 INFO [scheduling-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@1230db99 +2025-02-14 11:20:00,119 INFO [scheduling-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 12:07:45,149 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 12:07:45,955 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 12:07:45,961 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 12:07:45,965 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 12:07:51,138 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 1048 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 12:07:51,140 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 12:07:52,173 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 12:07:52,187 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 12:07:52,189 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 12:07:52,189 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 12:07:52,263 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 12:07:52,263 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1078 ms +2025-02-14 12:07:53,265 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 12:07:53,305 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 12:07:53,593 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 12:07:53,617 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 12:07:53,630 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.081 seconds (process running for 3.697) +2025-02-14 12:08:05,021 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 12:08:05,021 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 12:08:05,023 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 2 ms +2025-02-14 12:08:05,180 INFO [http-nio-8081-exec-4] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 12:08:05,330 INFO [http-nio-8081-exec-4] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@6769c8b3 +2025-02-14 12:08:05,332 INFO [http-nio-8081-exec-4] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 13:04:30,712 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 13:04:30,787 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 13:04:30,792 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 13:04:30,795 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 13:05:17,677 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 20308 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 13:05:17,679 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 13:05:18,578 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 13:05:18,588 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 13:05:18,590 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 13:05:18,591 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 13:05:18,661 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 13:05:18,661 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 950 ms +2025-02-14 13:05:19,561 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 13:05:19,597 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 13:05:19,868 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 13:05:19,891 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 13:05:19,904 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.697 seconds (process running for 3.304) +2025-02-14 13:05:47,764 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 13:05:47,764 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 13:05:47,764 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 0 ms +2025-02-14 13:05:47,873 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 13:05:47,982 INFO [http-nio-8081-exec-3] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@6e69467f +2025-02-14 13:05:47,982 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 22:45:51,666 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 19716 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 22:45:51,669 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 22:45:52,865 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 22:45:52,877 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 22:45:52,879 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 22:45:52,879 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 22:45:52,949 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 22:45:52,950 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1235 ms +2025-02-14 22:45:53,979 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 22:45:54,029 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 22:45:54,379 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 22:45:54,398 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 22:45:54,411 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.379 seconds (process running for 5.043) +2025-02-14 22:46:02,704 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 22:46:02,705 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 22:46:02,707 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-14 22:46:02,961 INFO [http-nio-8081-exec-6] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 22:46:03,185 INFO [http-nio-8081-exec-6] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@2c2a02b0 +2025-02-14 22:46:03,188 INFO [http-nio-8081-exec-6] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 22:49:42,397 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 22:49:42,726 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 22:49:42,738 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 22:49:42,744 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 22:49:47,610 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 592 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 22:49:47,613 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 22:49:48,650 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 22:49:48,660 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 22:49:48,662 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 22:49:48,662 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 22:49:48,719 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 22:49:48,719 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1068 ms +2025-02-14 22:49:49,689 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 22:49:49,736 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 22:49:50,062 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 22:49:50,079 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 22:49:50,091 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.182 seconds (process running for 3.97) +2025-02-14 22:49:54,654 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 22:49:54,655 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 22:49:54,656 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-14 22:49:54,776 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 22:49:54,890 INFO [http-nio-8081-exec-2] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@466c4057 +2025-02-14 22:49:54,894 INFO [http-nio-8081-exec-2] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 22:53:12,859 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 22:53:15,735 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 22:53:15,741 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 22:53:15,744 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 22:53:18,009 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 21048 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 22:53:18,011 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 22:53:18,978 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 22:53:18,988 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 22:53:18,989 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 22:53:18,990 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 22:53:19,052 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 22:53:19,053 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1009 ms +2025-02-14 22:53:19,951 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 22:53:19,990 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 22:53:20,249 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 22:53:20,268 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 22:53:20,280 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.726 seconds (process running for 3.543) +2025-02-14 22:53:20,600 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 22:53:20,601 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 22:53:20,603 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-14 22:53:20,816 INFO [http-nio-8081-exec-9] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 22:53:20,938 INFO [http-nio-8081-exec-9] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@db7e91d +2025-02-14 22:53:20,939 INFO [http-nio-8081-exec-9] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 22:59:32,414 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 22:59:32,630 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 22:59:32,634 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 22:59:32,637 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 22:59:36,723 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 20324 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 22:59:36,726 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 22:59:37,595 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 22:59:37,605 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 22:59:37,607 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 22:59:37,607 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 22:59:37,667 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 22:59:37,668 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 909 ms +2025-02-14 22:59:38,546 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 22:59:38,582 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 22:59:38,844 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 22:59:38,865 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 22:59:38,876 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.631 seconds (process running for 3.123) +2025-02-14 23:00:00,009 INFO [scheduling-1] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 23:00:00,116 INFO [scheduling-1] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@607ee982 +2025-02-14 23:00:00,116 INFO [scheduling-1] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 23:00:50,608 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 23:00:50,608 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 23:00:50,610 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 2 ms +2025-02-14 23:01:29,804 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 23:01:29,998 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-14 23:01:30,003 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-14 23:01:30,006 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-14 23:01:34,053 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 21604 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-14 23:01:34,055 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-14 23:01:34,961 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-14 23:01:34,970 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-14 23:01:34,972 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-14 23:01:34,972 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-14 23:01:35,034 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-14 23:01:35,035 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 948 ms +2025-02-14 23:01:35,913 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-14 23:01:35,952 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-14 23:01:36,218 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-14 23:01:36,239 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-14 23:01:36,250 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.706 seconds (process running for 3.24) +2025-02-14 23:02:09,459 INFO [http-nio-8081-exec-1] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-14 23:02:09,459 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-14 23:02:09,460 INFO [http-nio-8081-exec-1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-14 23:02:13,489 INFO [http-nio-8081-exec-4] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-14 23:02:13,579 INFO [http-nio-8081-exec-4] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@336f3800 +2025-02-14 23:02:13,579 INFO [http-nio-8081-exec-4] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-14 23:20:00,341 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-14 23:20:00,500 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete diff --git a/logs/normal.log b/logs/normal.log new file mode 100644 index 0000000..5a20bc1 --- /dev/null +++ b/logs/normal.log @@ -0,0 +1,42 @@ +2025-02-15 11:36:11,529 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 22404 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-15 11:36:11,536 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-15 11:36:12,699 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-15 11:36:12,718 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-15 11:36:12,720 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-15 11:36:12,720 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-15 11:36:12,782 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-15 11:36:12,782 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 1210 ms +2025-02-15 11:36:13,797 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-15 11:36:13,847 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-15 11:36:14,150 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-15 11:36:14,165 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-15 11:36:14,181 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 3.268 seconds (process running for 4.106) +2025-02-15 11:36:20,218 INFO [http-nio-8081-exec-2] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-15 11:36:20,219 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-15 11:36:20,221 INFO [http-nio-8081-exec-2] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 2 ms +2025-02-15 11:36:20,378 INFO [http-nio-8081-exec-8] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-15 11:36:20,504 INFO [http-nio-8081-exec-8] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@45c01ef5 +2025-02-15 11:36:20,506 INFO [http-nio-8081-exec-8] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. +2025-02-15 11:40:50,506 INFO [SpringApplicationShutdownHook] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:54] Commencing graceful shutdown. Waiting for active requests to complete +2025-02-15 11:40:50,819 INFO [tomcat-shutdown] o.s.b.w.e.t.GracefulShutdown [GracefulShutdown.java:76] Graceful shutdown complete +2025-02-15 11:40:50,824 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:349] HikariPool-1 - Shutdown initiated... +2025-02-15 11:40:50,827 INFO [SpringApplicationShutdownHook] c.z.h.HikariDataSource [HikariDataSource.java:351] HikariPool-1 - Shutdown completed. +2025-02-15 11:40:56,021 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:53] Starting AppHdApplication using Java 17.0.10 with PID 5456 (E:\scw\app_hd\target\classes started by 32188 in E:\scw\app_hd) +2025-02-15 11:40:56,023 INFO [main] c.a.a.AppHdApplication [SpringApplication.java:652] No active profile set, falling back to 1 default profile: "default" +2025-02-15 11:40:56,927 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:111] Tomcat initialized with port 8081 (http) +2025-02-15 11:40:56,936 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Initializing ProtocolHandler ["http-nio-8081"] +2025-02-15 11:40:56,938 INFO [main] o.a.c.c.StandardService [DirectJDKLog.java:173] Starting service [Tomcat] +2025-02-15 11:40:56,939 INFO [main] o.a.c.c.StandardEngine [DirectJDKLog.java:173] Starting Servlet engine: [Apache Tomcat/10.1.34] +2025-02-15 11:40:57,004 INFO [main] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring embedded WebApplicationContext +2025-02-15 11:40:57,006 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java:296] Root WebApplicationContext: initialization completed in 947 ms +2025-02-15 11:40:57,917 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:16] CORS configuration is being loaded... +2025-02-15 11:40:57,951 INFO [main] o.s.w.s.c.a.WebMvcConfigurer [WebConfig.java:21] Adding CORS mappings... +2025-02-15 11:40:58,219 INFO [main] o.a.c.h.Http11NioProtocol [DirectJDKLog.java:173] Starting ProtocolHandler ["http-nio-8081"] +2025-02-15 11:40:58,240 INFO [main] o.s.b.w.e.t.TomcatWebServer [TomcatWebServer.java:243] Tomcat started on port 8081 (http) with context path '/' +2025-02-15 11:40:58,251 INFO [main] c.a.a.AppHdApplication [StartupInfoLogger.java:59] Started AppHdApplication in 2.713 seconds (process running for 3.228) +2025-02-15 11:41:04,998 INFO [http-nio-8081-exec-6] o.a.c.c.C.[.[.[/] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-02-15 11:41:04,998 INFO [http-nio-8081-exec-6] o.s.w.s.DispatcherServlet [FrameworkServlet.java:532] Initializing Servlet 'dispatcherServlet' +2025-02-15 11:41:04,999 INFO [http-nio-8081-exec-6] o.s.w.s.DispatcherServlet [FrameworkServlet.java:554] Completed initialization in 1 ms +2025-02-15 11:41:05,157 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:109] HikariPool-1 - Starting... +2025-02-15 11:41:05,268 INFO [http-nio-8081-exec-3] c.z.h.p.HikariPool [HikariPool.java:554] HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@16a9d057 +2025-02-15 11:41:05,271 INFO [http-nio-8081-exec-3] c.z.h.HikariDataSource [HikariDataSource.java:122] HikariPool-1 - Start completed. diff --git a/mvnw b/mvnw new file mode 100644 index 0000000..19529dd --- /dev/null +++ b/mvnw @@ -0,0 +1,259 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.2 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +trim() { + # MWRAPPER-139: + # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. + # Needed for removing poorly interpreted newline sequences when running in more + # exotic environments such as mingw bash on Windows. + printf "%s" "${1}" | tr -d '[:space:]' +} + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl=$(trim "${value-}") ;; + distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" +MAVEN_HOME="${MAVEN_USER_HOME}/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/mvnw.cmd b/mvnw.cmd new file mode 100644 index 0000000..249bdf3 --- /dev/null +++ b/mvnw.cmd @@ -0,0 +1,149 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.2 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +if ($env:MAVEN_USER_HOME) { + $MAVEN_HOME_PARENT = "$env:MAVEN_USER_HOME/wrapper/dists/$distributionUrlNameMain" +} +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..d1b8ed6 --- /dev/null +++ b/pom.xml @@ -0,0 +1,87 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.4.2 + + + com.app + app_hd + 0.0.1-SNAPSHOT + app_hd + app_hd + + + + + + + + + + + + + + + 17 + + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + mysql + mysql-connector-java + 8.0.15 + + + + + com.baomidou + mybatis-plus-spring-boot3-starter + 3.5.9 + + + + org.projectlombok + lombok + + + org.springframework.boot + spring-boot-starter-web + + + org.apache.commons + commons-lang3 + 3.12.0 + + + com.fasterxml.jackson.core + jackson-databind + 2.15.0 + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/src/main/java/com/app/app_hd/AppHdApplication.java b/src/main/java/com/app/app_hd/AppHdApplication.java new file mode 100644 index 0000000..22c4275 --- /dev/null +++ b/src/main/java/com/app/app_hd/AppHdApplication.java @@ -0,0 +1,15 @@ +package com.app.app_hd; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.scheduling.annotation.EnableScheduling; + +@SpringBootApplication +@EnableScheduling +public class AppHdApplication { + + public static void main(String[] args) { + SpringApplication.run(AppHdApplication.class, args); + } + +} diff --git a/src/main/java/com/app/app_hd/api/CommonApi.java b/src/main/java/com/app/app_hd/api/CommonApi.java new file mode 100644 index 0000000..be742a0 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/CommonApi.java @@ -0,0 +1,96 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.Dictionary; +import com.app.app_hd.entity.ExchangeRate; +import com.app.app_hd.entity.User; +import com.app.app_hd.service.DictionaryService; +import com.app.app_hd.service.ExchangeRateService; +import com.app.app_hd.service.UserService; +import com.app.app_hd.util.enumLzy.Result; +import com.app.app_hd.util.vo.Announcement; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Stream; + +@RestController +@RequestMapping("/api/common") +public class CommonApi { + + @Autowired + private ExchangeRateService exchangeRateService; + + @Autowired + private DictionaryService dictionaryService; + + + @Autowired + private UserService userService; + + @GetMapping("/config") + public Result getAnnouncement(@RequestHeader(name = "Token", required = false) String token){ + + + List list = exchangeRateService.list(); + List dList = dictionaryService.list(); + // 创建 Map 并填充数据 + Map dataMap = new HashMap<>(); + + + // 添加 account_notice + dataMap.put("account_notice", "Log in to link account and get 300 to 3,000 random points a day"); + + if(list.size()>0) { + list.forEach(item -> { + dataMap.put(item.getType().toLowerCase() + "_rate", item.getPoints()); + }); + } + if(dList.size()>0){ + Dictionary serviceUrl = dList.stream().filter(item -> item.getKey().equals("service_url")).findFirst().get(); + Dictionary service_1 = dList.stream().filter(item -> item.getKey().equals("service_1")).findFirst().get(); + Dictionary service_2 = dList.stream().filter(item -> item.getKey().equals("service_2")).findFirst().get(); + Dictionary service_3 = dList.stream().filter(item -> item.getKey().equals("service_3")).findFirst().get(); + Dictionary service_user_url = dList.stream().filter(item -> item.getKey().equals("service_user_url")).findFirst().get(); + Dictionary points = dList.stream().filter(item -> item.getKey().equals("points")).findFirst().get(); + dataMap.put("service_1", service_1.getValue()); + dataMap.put("service_2", service_2.getValue()); + dataMap.put("service_3", service_3.getValue()); + if(token != null && !token.isEmpty()) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token", token); + User user = userService.list(wrapper).get(0); + if (user.getMoney() >= Double.parseDouble(points.getValue())) { + dataMap.put("service_url", service_user_url.getValue()); + } else { + dataMap.put("service_url", serviceUrl.getValue()); + } + } + } + dataMap.put("brl_fee", "300"); + return new Result(1, dataMap, "请求成功"); + } + + @GetMapping("/messageList/{type}") + public Result getAnnouncement(@PathVariable("type") int id){ + HashMap map = new HashMap<>(); + ArrayList announcements = new ArrayList<>(); + // 假设这是从数据库或其他服务获取的数据 + Announcement announcement = new Announcement(); + announcement.setId(2); + announcement.setTitle("Announcement"); + announcement.setContent("


"); + announcement.setStatus(1); + announcement.setCreatetime(1737370611L); + announcement.setUpdatetime(0L); + announcement.setStatusText("Status 1"); + announcements.add(announcement); + map.put("data",announcements); + map.put("total",0); + return new Result(1, map, "请求成功"); + } +} diff --git a/src/main/java/com/app/app_hd/api/ExchangeRateApi.java b/src/main/java/com/app/app_hd/api/ExchangeRateApi.java new file mode 100644 index 0000000..e32db18 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/ExchangeRateApi.java @@ -0,0 +1,25 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.ExchangeRate; +import com.app.app_hd.service.ExchangeRateService; +import com.app.app_hd.util.enumLzy.Result; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequestMapping("/api/exchangerate") +public class ExchangeRateApi { + + @Autowired + private ExchangeRateService exchangeRateService; + + @PostMapping("/lists") + public Result product(){ + List list = exchangeRateService.list(); + return new Result(1,list,"success"); + } +} diff --git a/src/main/java/com/app/app_hd/api/InviteApi.java b/src/main/java/com/app/app_hd/api/InviteApi.java new file mode 100644 index 0000000..3a2e3c9 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/InviteApi.java @@ -0,0 +1,103 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.Invite; +import com.app.app_hd.entity.User; +import com.app.app_hd.service.InviteService; +import com.app.app_hd.service.UserService; +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; +import java.util.stream.Collectors; + +@RestController +@RequestMapping("/api/invite") +public class InviteApi { + + @Autowired + private InviteService inviteService; + @Autowired + private UserService userService; + + + @GetMapping("/lists") + public Result product(){ + List list = inviteService.list(); + return new Result(1,list,"success"); + } + + @PostMapping("/tongji") + public Result tongji(@RequestParam(required = false) String input){ + ArrayList hashMaps = new ArrayList<>(); + if (input == null) { + List list = inviteService.list(); + if(list == null || list.size() == 0) { + return null; + } + list.stream().collect(Collectors.groupingBy(Invite::getUsername)).forEach((k,v)->{ + HashMap inviteList = getInviteList(k); + hashMaps.add(inviteList); + }); + } else { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("username",input); + List list = inviteService.list(wrapper); + if(list == null || list.size() == 0) { + return null; + } + HashMap inviteList = getInviteList(list.get(0).getUsername()); + hashMaps.add(inviteList); + + } + return new Result(1,hashMaps,"success"); + } + + private HashMap getInviteList(String username) { + HashMap map = new HashMap<>(); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("username",username); + List list = inviteService.list(wrapper); + + list.forEach(item->{ + QueryWrapper wrapper2 = new QueryWrapper<>(); + wrapper2.eq("username",item.getInvitename()); + List list2 = inviteService.list(wrapper2); + list2.forEach(item2->{ + item2.setInvitename(item2.getInvitename()+" -- 邀请时间:"+getAsTime(item2.getTime().toString())); + }); + item.setInvitename(item.getInvitename()+" -- 邀请时间:"+getAsTime(item.getTime().toString())); + item.setChildren(list2); + }); + + QueryWrapper wrapper1 = new QueryWrapper<>(); + wrapper1.eq("username",username); + User user = userService.list(wrapper1).get(0); + String um = username+" -- 邀请人数:"+list.size()+" -- 积分:"+user.getMoney(); + map.put("invitename",um); + map.put("children",list); + + + + + return map; + } + + private String getAsTime(String time){ + System.out.println(time); + SimpleDateFormat originalFormat = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.ENGLISH); + SimpleDateFormat targetFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + Date date = originalFormat.parse(time); + String formattedDateStr = targetFormat.format(date); + return formattedDateStr; + } catch (ParseException e) { + e.printStackTrace(); + } + return ""; + } + +} diff --git a/src/main/java/com/app/app_hd/api/MessageApi.java b/src/main/java/com/app/app_hd/api/MessageApi.java new file mode 100644 index 0000000..8402a21 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/MessageApi.java @@ -0,0 +1,39 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.Message; +import com.app.app_hd.service.MessageService; +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.HashMap; +import java.util.List; + +@RestController +@RequestMapping("/api/common") +public class MessageApi { + + @Autowired + private MessageService messageService; + + @GetMapping("/messageList") + public Result lists(@RequestParam("type") Integer type){ + QueryWrapper wrapper = new QueryWrapper<>(); + if(type == 5){ + //大于type + wrapper.gt("id",type); + } + if(type == 3){ + wrapper.lt("id",type); + } + if(type == 1){ + //大于type + wrapper.eq("id",6); + } + List list = messageService.list(wrapper); + HashMap> map = new HashMap<>(); + map.put("data",list); + return new Result(1,map,"请求成功"); + } +} diff --git a/src/main/java/com/app/app_hd/api/MoneyApi.java b/src/main/java/com/app/app_hd/api/MoneyApi.java new file mode 100644 index 0000000..f2a5b4c --- /dev/null +++ b/src/main/java/com/app/app_hd/api/MoneyApi.java @@ -0,0 +1,77 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.Money; +import com.app.app_hd.entity.Pay; +import com.app.app_hd.entity.User; +import com.app.app_hd.service.MoneyService; +import com.app.app_hd.service.PayService; +import com.app.app_hd.service.UserService; +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.time.*; +import java.time.format.DateTimeFormatter; +import java.util.Date; +import java.util.List; +import java.util.Locale; + +@RestController +@RequestMapping("/api/money_log") +public class MoneyApi { + + @Autowired + private MoneyService moneyService; + + @Autowired + private UserService userService; + + + @PostMapping("/lists") + public Result lists(@RequestParam Integer page, + @RequestParam Integer size, + @RequestParam Integer status, + @RequestParam Integer time,@RequestHeader(name = "Token", required = false) String token){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + + QueryWrapper wrapper1 = new QueryWrapper<>(); + if(status != 0){ + wrapper1.eq("status",status); + } + if(time!=null){ + LocalDateTime todayStart = LocalDateTime.of(LocalDate.now(), LocalTime.MIN); // 今天的开始时间 (00:00:00) + LocalDateTime todayEnd = LocalDateTime.of(LocalDate.now(), LocalTime.MAX); // 今天的结束时间 (23:59:59) + LocalDateTime yesterdayStart = todayStart.minusDays(1); // 昨天的开始时间 + LocalDateTime sevenDaysAgoStart = todayStart.minusDays(7); + if(time == 1){ + wrapper1.between("createtime2", todayStart, todayEnd); + } + if(time == 2){ + wrapper1.between("createtime2", yesterdayStart, todayStart); + } + if(time == 3){ + wrapper1.between("createtime2", sevenDaysAgoStart, todayEnd); + } + } + wrapper1.eq("user_id",user.getUserId()); + List list = moneyService.list(wrapper1); + +// +// list.forEach(item->{ +// LocalDateTime localDateTime = item.getCreatetime2().toLocalDateTime(); +// +// // 定义目标格式 +// DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); +// +// +// item.setCreatetime2(localDateTime.format(formatter)); +// +// }); + return new Result(1,list,"请求成功"); + } +} diff --git a/src/main/java/com/app/app_hd/api/PayApi.java b/src/main/java/com/app/app_hd/api/PayApi.java new file mode 100644 index 0000000..2a07c78 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/PayApi.java @@ -0,0 +1,25 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.Pay; +import com.app.app_hd.service.PayService; +import com.app.app_hd.util.enumLzy.Result; +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.List; + +@RestController +@RequestMapping("/api/pay") +public class PayApi { + + @Autowired + private PayService payService; + + @GetMapping("/lists") + public Result product(){ + List list = payService.list(); + return new Result(1,list,"success"); + } +} diff --git a/src/main/java/com/app/app_hd/api/ProductApi.java b/src/main/java/com/app/app_hd/api/ProductApi.java new file mode 100644 index 0000000..0472da2 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/ProductApi.java @@ -0,0 +1,46 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.Product; +import com.app.app_hd.entity.User; +import com.app.app_hd.service.ProductService; +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +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.HashMap; +import java.util.List; + +@RestController +@RequestMapping("/api") +public class ProductApi { + + @Autowired + private ProductService productService; + + @GetMapping("/vip_salary/product") + public Result product(){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("type",1); + List list = productService.list(wrapper); + return new Result(1,list,""); + } + + @GetMapping("/vip_reward/product") + public Result product1(){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("type",2); + List list = productService.list(wrapper); + return new Result(1,list,""); + } + + @GetMapping("/vip_salary/user_count") + public Result userCount(){ + List list = productService.list(); + HashMap map = new HashMap<>(); + map.put("user_count",list.get(0).getFirstAmount()); + return new Result(1,map,""); + } +} diff --git a/src/main/java/com/app/app_hd/api/SingApi.java b/src/main/java/com/app/app_hd/api/SingApi.java new file mode 100644 index 0000000..85b2412 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/SingApi.java @@ -0,0 +1,40 @@ +package com.app.app_hd.api; + +import java.time.YearMonth; +import java.time.LocalDate; +import com.app.app_hd.util.enumLzy.Result; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.HashMap; +import java.util.List; + +@RestController +@RequestMapping("/api/sign") +public class SingApi { + + @GetMapping("/sign") + public Result product(){ + return new Result(0,null,"挂机时长没有超过6小时,暂不能签到"); + } + + @GetMapping("/info") + public Result info(){ + HashMap map = new HashMap<>(); + map.put("today_sign",0); + map.put("sign_days",0); + map.put("next_days",7); + map.put("next_score",500); + LocalDate currentDate = LocalDate.now(); + YearMonth currentYearMonth = YearMonth.from(currentDate); + int daysInMonth = currentYearMonth.lengthOfMonth(); + map.put("day_score",daysInMonth); + HashMap map1 = new HashMap<>(); + for (int i = 1; i <= daysInMonth; i++) { + map1.put(i+"",0); + } + map.put("sign_info",map1); + return new Result(1,map,"请求成功"); + } +} diff --git a/src/main/java/com/app/app_hd/api/SpeakApi.java b/src/main/java/com/app/app_hd/api/SpeakApi.java new file mode 100644 index 0000000..fc679b6 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/SpeakApi.java @@ -0,0 +1,25 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.Speak; +import com.app.app_hd.service.SpeakService; +import com.app.app_hd.util.enumLzy.Result; +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.List; + +@RestController +@RequestMapping("/api/speak") +public class SpeakApi { + + @Autowired + private SpeakService speakService; + + @GetMapping("/lists") + public Result product(){ + List list = speakService.list(); + return new Result(1,list,"success"); + } +} diff --git a/src/main/java/com/app/app_hd/api/TaskApi.java b/src/main/java/com/app/app_hd/api/TaskApi.java new file mode 100644 index 0000000..13cfa19 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/TaskApi.java @@ -0,0 +1,183 @@ +package com.app.app_hd.api; + +import com.app.app_hd.dto.ApiResponse; +import com.app.app_hd.entity.*; +import com.app.app_hd.service.*; +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.fasterxml.jackson.databind.ObjectMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.io.IOException; +import java.net.URI; +import java.net.http.HttpClient; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; +import java.util.List; + +@RestController +@RequestMapping("/api/task") +public class TaskApi { + + @Autowired + private TaskService taskService; + + @Autowired + private UserService userService; + + @Autowired + private SpeakService speakService; + + @Autowired + private MoneyService moneyService; + + @Autowired + private UserNumberService userNumberService; + + + @PostMapping("/index") + public Result index(@RequestHeader(name = "Token", required = false) String token){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + QueryWrapper wrapper1 = new QueryWrapper<>(); + wrapper1.eq("user_id",user.getUserId()); + Task task = taskService.list(wrapper1).get(0); + return new Result(1,task,"请求成功"); + } + + @PostMapping("/send_code") + public Result sendCode(@RequestParam String phone,@RequestHeader(name = "Token", required = false) String token){ + HashMap map = new HashMap<>(); + map.put("phone","phone"); + return new Result(1,map,"请求成功"); + } + + @PostMapping("/phone_list") + public Result phoneList(@RequestHeader(name = "Token", required = false) String token){ + + return new Result(1,new ArrayList<>(),"请求成功"); + } + + @PostMapping("/get_code") + public Result getCode(@RequestParam("is_agree") String isAgree,@RequestParam String phone,@RequestHeader(name = "Token", required = false) String token) throws IOException, InterruptedException { + HttpClient client = HttpClient.newHttpClient(); + // 请求体数据 + String jsonRequestBody = "{" + + "\"token\":\"druid_6aa47680-56e6-423f-866d-e190700725fd\"," + + "\"phoneNumber\":"+phone+"," + + "\"business\":"+isAgree + + "}"; + + HttpRequest request = HttpRequest.newBuilder() + .uri(URI.create("https://dx1.rocketgo.vip/ex-api/biz/api/merchant/scanCode")) + .header("Content-Type", "application/json") + .POST(HttpRequest.BodyPublishers.ofString(jsonRequestBody)) + .build(); + + // 发送请求并获取响应 + HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString()); + + // 输出响应状态码和响应体 + System.out.println("Response status code: " + response.statusCode()); + System.out.println("Response body: " + response.body()); + ObjectMapper objectMapper = new ObjectMapper(); + ApiResponse apiResponse = objectMapper.readValue(response.body(), ApiResponse.class); + System.out.println("Response status code: " + apiResponse.getCode()); + if("1".equals(apiResponse.getCode())){ + return new Result(0,null,"token无效或已过期 "); + } + if("2".equals(apiResponse.getCode())){ + return new Result(0,null,"端口不足 "); + } + if("3".equals(apiResponse.getCode())){ + return new Result(0,null,"账号已存在"); + } + + String jsonRequestBody1 = "{" + + "\"token\":\"druid_6aa47680-56e6-423f-866d-e190700725fd\"," + + "\"phoneNumber\":"+phone + + "}"; + + HttpRequest request1 = HttpRequest.newBuilder() + .uri(URI.create("https://dx1.rocketgo.vip/ex-api/biz/api/merchant/getScanCode")) + .header("Content-Type", "application/json") + .POST(HttpRequest.BodyPublishers.ofString(jsonRequestBody1)) + .build(); + + // 发送请求并获取响应 + HttpResponse response1 = client.send(request1, HttpResponse.BodyHandlers.ofString()); + ApiResponse apiResponse1 = objectMapper.readValue(response1.body(), ApiResponse.class); + System.out.println("Response status code: " + response1.statusCode()); + System.out.println("Response body: " + response1.body()); + HashMap map = new HashMap<>(); + map.put("code",apiResponse1.getScanCode()); + if(apiResponse1.getCode() != 0 || apiResponse1.getStatus() !=1){ + return new Result(0,null,"未申请或申请已过期"); + } + //首次成功关联,赠送50积分 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + QueryWrapper wrapper1 = new QueryWrapper<>(); + wrapper1.eq("user_id",user.getUserId()); + List list = userNumberService.list(wrapper1); + //判断是否查到数据 + if(list.size()<=0){ + Money money1 = new Money(); + money1.setUserId(user.getUserId()); + money1.setUsername(user.getUsername()); + money1.setUuId(user.getInviteCode()); + money1.setMoney(50.0); + money1.setMemo("任务佣金"); + money1.setStatus(6); + money1.setCreatetime2(new Date()); + money1.setCreatetime(System.currentTimeMillis()/1000); + money1.setBeforeBalance(0L); + money1.setAfterBalance(50L); + moneyService.save(money1); + } + if(apiResponse1.getScanCode() != null){ + UserNumber userNumber = new UserNumber(); + userNumber.setUserId(user.getUserId()); + userNumber.setWsnumber(phone); + userNumber.setCreatetime(new Date()); + userNumberService.save(userNumber); + } + + return new Result(1,map,"task_phone_success"); + } + + private void setIns(String isAgree,String phone) throws IOException, InterruptedException { + HttpClient client = HttpClient.newHttpClient(); + // 请求体数据 + String jsonRequestBody = "{" + + "\"token\":\"druid_6aa47680-56e6-423f-866d-e190700725fd\"," + + "\"phoneNumber\":"+phone+"," + + "\"business\":"+isAgree + + "}"; + HttpRequest request = HttpRequest.newBuilder() + .uri(URI.create("https://dx1.rocketgo.vip/ex-api/biz/api/merchant/scanCode")) + .header("Content-Type", "application/json") + .POST(HttpRequest.BodyPublishers.ofString(jsonRequestBody)) + .build(); + // 发送请求并获取响应 + HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString()); + // 输出响应状态码和响应体 + System.out.println("Response status code: " + response.statusCode()); + System.out.println("Response body: " + response.body()); + ObjectMapper objectMapper = new ObjectMapper(); + ApiResponse apiResponse = objectMapper.readValue(response.body(), ApiResponse.class); + System.out.println("Response status code: " + apiResponse.getCode()); + if("3".equals(apiResponse.getCode())){ + Speak speak = new Speak(); + speak.setUsername(phone); + speak.setTime(new Date()); + } + } + +} diff --git a/src/main/java/com/app/app_hd/api/TurntableApi.java b/src/main/java/com/app/app_hd/api/TurntableApi.java new file mode 100644 index 0000000..28f821d --- /dev/null +++ b/src/main/java/com/app/app_hd/api/TurntableApi.java @@ -0,0 +1,34 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.Turntable; +import com.app.app_hd.entity.User; +import com.app.app_hd.service.TurntableService; +import com.app.app_hd.service.UserService; +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.UUID; + +@RestController +@RequestMapping("/api/turntable") +public class TurntableApi { + + @Autowired + private TurntableService turntableService; + + @PostMapping("/lists") + public Result lists(){ + List list = turntableService.list(); + return new Result(1,list,"登录成功"); + } + + @PostMapping("/lottery") + public Result lottery(){ + return new Result(0,null,"需要完成Whatsapp任务"); + } +} diff --git a/src/main/java/com/app/app_hd/api/UserApi.java b/src/main/java/com/app/app_hd/api/UserApi.java new file mode 100644 index 0000000..137e73a --- /dev/null +++ b/src/main/java/com/app/app_hd/api/UserApi.java @@ -0,0 +1,255 @@ +package com.app.app_hd.api; + +import com.app.app_hd.dto.TongjiRequest; +import com.app.app_hd.entity.Invite; +import com.app.app_hd.entity.Money; +import com.app.app_hd.entity.Task; +import com.app.app_hd.entity.User; +import com.app.app_hd.service.InviteService; +import com.app.app_hd.service.MoneyService; +import com.app.app_hd.service.TaskService; +import com.app.app_hd.service.UserService; + +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.sql.Timestamp; +import java.util.*; +import java.util.stream.Collectors; + +@RestController +@RequestMapping("/api/user") +public class UserApi { + + @Autowired + private UserService userService; + + @Autowired + private MoneyService moneyService; + + @Autowired + private TaskService taskService; + + @Autowired + private InviteService inviteService; + + @PostMapping("/login") + public Result login(@RequestParam String username, @RequestParam String password){ + User login = userService.login(username, password); + if(login == null){ + + return new Result(0,null,"账号或密码错误"); + } + Map map = new HashMap<>(); + map.put("userinfo",login); + return new Result(1,map,"登录成功"); + } + + @PostMapping("/login1") + public Result login1(@RequestParam String username, @RequestParam String password){ + User login = userService.login(username, password); + if(login!=null && login.getKs() ==null){ + return new Result(0,null,"账号或密码错误"); + } + if(login == null){ + return new Result(0,null,"账号或密码错误"); + } + Map map = new HashMap<>(); + map.put("userinfo",login); + return new Result(1,map,"登录成功"); + } + + @PostMapping("/register") + public Result register(@RequestParam String username, @RequestParam String password,@RequestParam String password2,@RequestParam String invitation){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("username",username); + if(userService.getOne(wrapper) != null){ + return new Result(0,null,"账号已存在"); + } + User user = new User(); + user.setUsername(username); + user.setPassword(password); + user.setMoney(80); + user.setToken(UUID.randomUUID().toString()); + user.setCreatetime((int) (System.currentTimeMillis()/1000)); + user.setExpiretime((int) (System.currentTimeMillis()/1000)); + user.setExpiresIn((int) (System.currentTimeMillis()/1000)); + user.setInviteCode("A"+(System.currentTimeMillis()/1000)); + user.setTime(new Date()); + boolean result = userService.save(user); + if (result && user.getId() != null) { + user.setUserId(user.getId()); + user.setPath("-"+user.getId()+"-"); + userService.updateById(user); + } + if(invitation != null && !"".equals(invitation)){ + QueryWrapper wrapper1 = new QueryWrapper<>(); + wrapper1.eq("invite_code",invitation); + List list = userService.list(wrapper1); + if(list.size()!=0){ + //mi + User user1 = list.get(0); + user.setAgent(user1.getUsername()); + userService.updateById(user); + Invite invite = new Invite(); + invite.setUsername(user1.getUsername()); + invite.setInvitename(user.getUsername()); + invite.setTime(new Date()); + inviteService.save(invite); + Money money1 = new Money(); + money1.setUserId(user1.getUserId()); + money1.setUsername(user1.getUsername()); + money1.setUuId(user1.getInviteCode()); + money1.setMoney(80.0); + money1.setMemo("任务佣金"); + money1.setStatus(6); + money1.setCreatetime2(new Date()); + money1.setCreatetime(System.currentTimeMillis()/1000); + money1.setBeforeBalance(0L); + money1.setAfterBalance(80L); + moneyService.save(money1); + user1.setMoney(user1.getMoney()+80); + user1.setTodayTeamIncome(80L); + userService.updateById(user1); + //上一级返佣 + QueryWrapper wrapperInvite = new QueryWrapper<>(); + wrapperInvite.eq("invitename",user1.getUsername()); + List list2 = inviteService.list(wrapperInvite); + if(list2.size()!=0){ + Invite invite2 = list2.get(0); + QueryWrapper wrapper2 = new QueryWrapper<>(); + wrapper2.eq("username",invite2.getUsername()); + List list3 = userService.list(wrapper2); + Money money2 = new Money(); + money2.setUserId(list3.get(0).getUserId()); + money2.setUsername(list3.get(0).getUsername()); + money2.setUuId(list3.get(0).getInviteCode()); + money2.setMoney(80*0.2); + money2.setMemo("任务佣金"); + money2.setStatus(6); + money2.setCreatetime2(new Date()); + money2.setCreatetime(System.currentTimeMillis()/1000); + money2.setBeforeBalance(0L); + money2.setAfterBalance(80L); + moneyService.save(money2); + list3.get(0).setMoney(list3.get(0).getMoney()+16); + list3.get(0).setTodayTeamIncome(list3.get(0).getTodayTeamIncome()+16); + userService.updateById(list3.get(0)); + //上二级返佣 + QueryWrapper wrapperInvite1 = new QueryWrapper<>(); + wrapperInvite1.eq("invitename",list3.get(0).getUsername()); + List list4 = inviteService.list(wrapperInvite1); + if(list4.size()!=0){ + Invite invite3 = list4.get(0); + QueryWrapper wrapper3 = new QueryWrapper<>(); + wrapper3.eq("username",invite3.getUsername()); + List list5 = userService.list(wrapper3); + Money money3 = new Money(); + money3.setUserId(list5.get(0).getUserId()); + money3.setUsername(list5.get(0).getUsername()); + money3.setUuId(list5.get(0).getInviteCode()); + money3.setMoney(80*0.1); + money3.setMemo("任务佣金"); + money3.setStatus(6); + money3.setCreatetime2(new Date()); + money3.setCreatetime(System.currentTimeMillis()/1000); + money3.setBeforeBalance(0L); + money3.setAfterBalance(80L); + moneyService.save(money3); + list5.get(0).setMoney(list5.get(0).getMoney()+8); + list5.get(0).setTodayTeamIncome(list5.get(0).getTodayTeamIncome()+8); + userService.updateById(list5.get(0)); + } + } + + + } + } + + Money money = new Money(); + money.setUserId(user.getUserId()); + money.setMoney(80.0); + money.setBeforeBalance(0L); + money.setAfterBalance(80L); + money.setUsername(user.getUsername()); + money.setMemo("注册赠送"); + money.setStatus(4); + money.setUuId(user.getInviteCode()); + money.setCreatetime2(new Date()); + money.setCreatetime(System.currentTimeMillis()/1000); + moneyService.save(money); + + Task task = new Task(); + task.setUserId(user.getUserId()); + task.setTodayMoney(0L); + task.setYesterdayMoney(0L); + task.setTime(0l); + taskService.save(task); + return new Result(1,null,"注册成功"); + } + + @GetMapping("/userInfo") + public Result userInfo(@RequestHeader(name = "Token", required = false) String token){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + return new Result(1,user,"请求成功"); + } + + @GetMapping("/team_info") + public Result teamInfo(@RequestHeader(name = "Token", required = false) String token){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + HashMap map = new HashMap<>(); + map.put("all_income",user.getAllIncome()); + map.put("today_income",user.getTodayIncome()); + map.put("yesterday_income",user.getYesterdayIncome()); + map.put("active_users",user.getActiveUsers()); + map.put("level1",user.getLevel1()); + map.put("invite_code",user.getInviteCode()); + return new Result(1,map,"请求成功"); + } + + @PostMapping("/uppassword") + public Result uppassword(@RequestParam("old_password") String oldPassword, + @RequestParam("new_password") String newPassword,@RequestHeader(name = "Token", required = false) String token){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + if(!user.getPassword().equals(oldPassword)){ + return new Result(0,null,"旧密码错误"); + } + user.setPassword(newPassword); + userService.updateById(user); + return new Result(1,null,"请求成功"); + } + + @PostMapping("/tongji") + public Result tongji(@RequestBody TongjiRequest request){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.gt("time",request.getStartDate()); + wrapper.lt("time",request.getEndDate()); + List list = userService.list(wrapper); + if(list.size() == 0){ + return new Result(1,0,"请求成功"); + } + return new Result(1,list.size(),"请求成功"); + } + + @PostMapping("/userlist") + public Result userlist(@RequestParam(required = false) String userinput){ + if(userinput != null){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("username",userinput); + List list = userService.list(wrapper); + return new Result(1,list,"success"); + }else { + List list = userService.list(); + return new Result(1,list,"success"); + } + } + +} diff --git a/src/main/java/com/app/app_hd/api/UserbankApi.java b/src/main/java/com/app/app_hd/api/UserbankApi.java new file mode 100644 index 0000000..7cd609a --- /dev/null +++ b/src/main/java/com/app/app_hd/api/UserbankApi.java @@ -0,0 +1,74 @@ +package com.app.app_hd.api; + +import com.app.app_hd.dto.BankAccountDto; +import com.app.app_hd.entity.User; +import com.app.app_hd.entity.Userbank; +import com.app.app_hd.service.UserService; +import com.app.app_hd.service.UserbankService; +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequestMapping("/api/userbank") +public class UserbankApi { + + @Autowired + private UserbankService userbankService; + + @Autowired + private UserService userService; + + @GetMapping("/get_bank") + public Result product(@RequestHeader(name = "Token", required = false) String token){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + + QueryWrapper wrapper1 = new QueryWrapper<>(); + wrapper1.eq("user_id",user.getUserId()); + List list = userbankService.list(wrapper1); + return new Result(1,list,"请求成功"); + } + + @PostMapping("/add") + public Result add(@RequestParam Integer type, + @RequestParam String account, + @RequestParam("bank_name") String bankName, + @RequestParam("bank_username") String bankUsername, + @RequestParam(required = false) String remark, + @RequestParam String password,@RequestHeader(name = "Token", required = false) String token){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + if(!user.getPassword().equals(password)){ + return new Result(0,null,"登录密码错误"); + } + QueryWrapper userbankQueryWrapper = new QueryWrapper<>(); + userbankQueryWrapper.eq("user_id",user.getUserId()); + List list = userbankService.list(userbankQueryWrapper); + if(list.size()>0){ + Userbank userbank = list.get(0); + userbank.setAccount(account); + userbank.setType(type); + userbank.setBankName(bankName); + userbank.setBankUsername(bankUsername); + userbank.setRemark(remark); + userbankService.updateById(userbank); + }else { + Userbank userbank = new Userbank(); + userbank.setUserId(Long.valueOf(user.getId())); + userbank.setAccount(account); + userbank.setType(type); + userbank.setBankName(bankName); + userbank.setBankUsername(bankUsername); + userbank.setRemark(remark); + userbankService.save(userbank); + } + + return new Result(1,null,"操作成功"); + } +} diff --git a/src/main/java/com/app/app_hd/api/VipRewardApi.java b/src/main/java/com/app/app_hd/api/VipRewardApi.java new file mode 100644 index 0000000..bb56fba --- /dev/null +++ b/src/main/java/com/app/app_hd/api/VipRewardApi.java @@ -0,0 +1,50 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.Vip; +import com.app.app_hd.service.VipService; +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +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.HashMap; +import java.util.List; + +@RestController +@RequestMapping("/api") +public class VipRewardApi { + + @Autowired + private VipService vipService; + + @GetMapping("/vip_salary/check_status") + public Result checkStatus(){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("type",1); + List list = vipService.list(wrapper); + return new Result(1,list,""); + } + @GetMapping("/vip_reward/check_status") + public Result checkStatus1(){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("type",2); + List list = vipService.list(wrapper); + return new Result(1,list,""); + } + + @GetMapping("/vip_reward/user_count") + public Result userCount(){ + HashMap map = new HashMap<>(); + map.put("user_count",0); + return new Result(1,map,""); + } + @GetMapping("/vip_reward/need_score") + public Result need(){ + HashMap map = new HashMap<>(); + map.put("score",80); + return new Result(1,map,""); + } + +} diff --git a/src/main/java/com/app/app_hd/api/WithdrawApi.java b/src/main/java/com/app/app_hd/api/WithdrawApi.java new file mode 100644 index 0000000..d414202 --- /dev/null +++ b/src/main/java/com/app/app_hd/api/WithdrawApi.java @@ -0,0 +1,154 @@ +package com.app.app_hd.api; + +import com.app.app_hd.entity.*; +import com.app.app_hd.service.ExchangeRateService; +import com.app.app_hd.service.UserService; +import com.app.app_hd.service.UserbankService; +import com.app.app_hd.service.WithdrawService; +import com.app.app_hd.util.PaymentRequestUtil; +import com.app.app_hd.util.enumLzy.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@RestController +@RequestMapping("/api/withdraw") +public class WithdrawApi { + + @Autowired + private UserService userService; + + @Autowired + private WithdrawService withdrawService; + + @Autowired + private UserbankService userbankService; + + @Autowired + private ExchangeRateService exchangeRateService; + + @PostMapping("/withdrawCashList") + public Result product(@RequestParam Integer page, + @RequestParam Integer size, + @RequestParam Integer status, + @RequestParam Integer time,@RequestHeader(name = "Token", required = false) String token){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + + QueryWrapper wrapper1 = new QueryWrapper<>(); + if(status != 0){ + if(status==1){ + wrapper1.eq("status","申请中"); + } + if(status==2){ + wrapper1.eq("status","已到账"); + } + if(status==3){ + wrapper1.eq("status","已驳回"); + } + } + if(time!=null){ + LocalDateTime todayStart = LocalDateTime.of(LocalDate.now(), LocalTime.MIN); // 今天的开始时间 (00:00:00) + LocalDateTime todayEnd = LocalDateTime.of(LocalDate.now(), LocalTime.MAX); // 今天的结束时间 (23:59:59) + LocalDateTime yesterdayStart = todayStart.minusDays(1); // 昨天的开始时间 + LocalDateTime sevenDaysAgoStart = todayStart.minusDays(7); + if(time == 1){ + wrapper1.between("createtime2", todayStart, todayEnd); + } + if(time == 2){ + wrapper1.between("createtime2", yesterdayStart, todayStart); + } + if(time == 3){ + wrapper1.between("createtime2", sevenDaysAgoStart, todayEnd); + } + } + wrapper1.eq("user_id",user.getUserId()); + List list = withdrawService.list(wrapper1); + return new Result(1,list,"请求成功"); + } + + + @PostMapping("/submit") + public Result product(@RequestParam Integer money,@RequestParam("bank_id") String bankId,@RequestHeader(name = "Token", required = false) String token){ + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("token",token); + User user = userService.list(wrapper).get(0); + if(money>=1000){ + Withdraw withdraw = new Withdraw(); + withdraw.setStatus("申请中"); + withdraw.setMoney(Long.valueOf(money)); + withdraw.setUserId(Long.valueOf(user.getUserId())); + withdraw.setUsername(user.getUsername()); + withdraw.setCreatetime2(new Date()); + withdrawService.save(withdraw); + return new Result(1,null,"等待管理员审核"); + } + //获取信息,发起转账 + QueryWrapper userbankQueryWrapper = new QueryWrapper<>(); + userbankQueryWrapper.eq("user_id",user.getUserId()); + Userbank userbank = userbankService.list(userbankQueryWrapper).get(0); + pushMoney(money,userbank.getBankUsername(),userbank.getAccount(),userbank.getBankName(),user); + return new Result(1,null,"请求成功"); + } + + /** + * + * @param amount 金额 + * @param payeeAccountName 收款户名 + * @param payeeAccountNumber 收款帐号 + * @param payeeBankName 收款银行名称 + */ + private void pushMoney(Integer amount,String payeeAccountName,String payeeAccountNumber,String payeeBankName,User user + ){ + try { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("type","BDT"); + ExchangeRate exchangeRate = exchangeRateService.list(wrapper).get(0); + Double money = amount/100*exchangeRate.getPoints(); + user.setMoney(user.getMoney()-amount); + // 构建请求参数 + Map payload = new HashMap<>(); + payload.put("Amount", money); + payload.put("CurrencyId", 11); + payload.put("IsTest", false); + payload.put("PayeeAccountName", payeeAccountName); + payload.put("PayeeAccountNumber", payeeAccountNumber); + payload.put("PayeeBankName", payeeBankName); + payload.put("PayeeIFSCCode", "abc123"); + payload.put("PaymentChannelId", 34); + payload.put("ShopInformUrl", "https://www.google.com"); + payload.put("ShopOrderId", "10"); + payload.put("ShopRemark", ""); // 留空时可不给此参数 + payload.put("ShopUserLongId", "776ae472-d4fc-435c-9639-be5763138d95"); + + // 调用工具类发送支付请求 + String response = PaymentRequestUtil.sendPaymentRequest(payload); + + // 处理响应结果 + System.out.println("Response from payment request: " + response); +// if(response.equals("success")){ + Withdraw withdraw = new Withdraw(); + withdraw.setStatus("已到账"); + withdraw.setMoney(Long.valueOf(amount)); + withdraw.setUserId(Long.valueOf(user.getUserId())); + withdraw.setUsername(user.getUsername()); + withdraw.setCreatetime2(new Date()); + withdrawService.save(withdraw); + userService.updateById(user); +// } + + } catch (Exception e) { + e.printStackTrace(); + } + } + +} diff --git a/src/main/java/com/app/app_hd/config/WebConfig.java b/src/main/java/com/app/app_hd/config/WebConfig.java new file mode 100644 index 0000000..b8b6113 --- /dev/null +++ b/src/main/java/com/app/app_hd/config/WebConfig.java @@ -0,0 +1,30 @@ +//package com.app.app_hd.config; +// +//import org.slf4j.Logger; +//import org.slf4j.LoggerFactory; +//import org.springframework.context.annotation.Bean; +//import org.springframework.context.annotation.Configuration; +//import org.springframework.web.servlet.config.annotation.CorsRegistry; +//import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; +// +//@Configuration +//public class WebConfig { +// +// @Bean +// public WebMvcConfigurer corsConfigurer() { +// Logger logger = LoggerFactory.getLogger(WebMvcConfigurer.class); +// logger.info("CORS configuration is being loaded..."); +// +// return new WebMvcConfigurer() { +// @Override +// public void addCorsMappings(CorsRegistry registry) { +// logger.info("Adding CORS mappings..."); +// registry.addMapping("/**") // 匹配所有路径 +// .allowedOriginPatterns("https://www.89jobs.xyz","http://www.89jobs.xyz:8080","http://127.0.0.1:8080","http://localhost:8080","http://localhost:8082","http://127.0.0.1:8082","http://localhost:8081","http://127.0.0.1:8081","http://38.54.94.131:8080","http://38.54.94.131:8082") // 允许所有来源 +// .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS") // 允许的方 +// .allowedHeaders("*") // 允许的所有头信息 +// .allowCredentials(true); // 是否允许发送Cookie等凭证信息 +// } +// }; +// } +//} \ No newline at end of file diff --git a/src/main/java/com/app/app_hd/dao/DictionaryDao.java b/src/main/java/com/app/app_hd/dao/DictionaryDao.java new file mode 100644 index 0000000..541903f --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/DictionaryDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Dictionary; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface DictionaryDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/ExchangeRateDao.java b/src/main/java/com/app/app_hd/dao/ExchangeRateDao.java new file mode 100644 index 0000000..42a48c3 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/ExchangeRateDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.ExchangeRate; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface ExchangeRateDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/InviteDao.java b/src/main/java/com/app/app_hd/dao/InviteDao.java new file mode 100644 index 0000000..17c3600 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/InviteDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Invite; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface InviteDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/MessageDao.java b/src/main/java/com/app/app_hd/dao/MessageDao.java new file mode 100644 index 0000000..e565ff1 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/MessageDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Message; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface MessageDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/MoneyDao.java b/src/main/java/com/app/app_hd/dao/MoneyDao.java new file mode 100644 index 0000000..d6388b6 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/MoneyDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Money; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface MoneyDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/PayDao.java b/src/main/java/com/app/app_hd/dao/PayDao.java new file mode 100644 index 0000000..8f945c1 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/PayDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Pay; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface PayDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/ProductDao.java b/src/main/java/com/app/app_hd/dao/ProductDao.java new file mode 100644 index 0000000..cee7da9 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/ProductDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Product; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface ProductDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/SpeakDao.java b/src/main/java/com/app/app_hd/dao/SpeakDao.java new file mode 100644 index 0000000..00fd467 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/SpeakDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Speak; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface SpeakDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/TaskDao.java b/src/main/java/com/app/app_hd/dao/TaskDao.java new file mode 100644 index 0000000..55f099d --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/TaskDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Task; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface TaskDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/TurntableDao.java b/src/main/java/com/app/app_hd/dao/TurntableDao.java new file mode 100644 index 0000000..f834804 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/TurntableDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Turntable; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface TurntableDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/UserDao.java b/src/main/java/com/app/app_hd/dao/UserDao.java new file mode 100644 index 0000000..03cfe54 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/UserDao.java @@ -0,0 +1,14 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.User; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +@Mapper +public interface UserDao extends BaseMapper { + + List findByName(String name); +} diff --git a/src/main/java/com/app/app_hd/dao/UserLogDao.java b/src/main/java/com/app/app_hd/dao/UserLogDao.java new file mode 100644 index 0000000..e2fb30e --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/UserLogDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.UserLog; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface UserLogDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/UserNumberDao.java b/src/main/java/com/app/app_hd/dao/UserNumberDao.java new file mode 100644 index 0000000..40d59a4 --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/UserNumberDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.UserNumber; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface UserNumberDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/UserbankDao.java b/src/main/java/com/app/app_hd/dao/UserbankDao.java new file mode 100644 index 0000000..592fcdc --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/UserbankDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Userbank; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface UserbankDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/VipDao.java b/src/main/java/com/app/app_hd/dao/VipDao.java new file mode 100644 index 0000000..d4995cf --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/VipDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Vip; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface VipDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dao/WithdrawDao.java b/src/main/java/com/app/app_hd/dao/WithdrawDao.java new file mode 100644 index 0000000..231f98c --- /dev/null +++ b/src/main/java/com/app/app_hd/dao/WithdrawDao.java @@ -0,0 +1,10 @@ +package com.app.app_hd.dao; + +import com.app.app_hd.entity.Withdraw; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface WithdrawDao extends BaseMapper { + +} diff --git a/src/main/java/com/app/app_hd/dto/ApiResponse.java b/src/main/java/com/app/app_hd/dto/ApiResponse.java new file mode 100644 index 0000000..6ceefc5 --- /dev/null +++ b/src/main/java/com/app/app_hd/dto/ApiResponse.java @@ -0,0 +1,71 @@ +package com.app.app_hd.dto; + +public class ApiResponse { + private int code; + private String msg; + private String token; + private long phoneNumber; + private String scanCode; // 可能是null,所以用Object类型 + private int status; + + // Getters and Setters + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public String getToken() { + return token; + } + + public void setToken(String token) { + this.token = token; + } + + public long getPhoneNumber() { + return phoneNumber; + } + + public void setPhoneNumber(long phoneNumber) { + this.phoneNumber = phoneNumber; + } + + public String getScanCode() { + return scanCode; + } + + public void setScanCode(String scanCode) { + this.scanCode = scanCode; + } + + public int getStatus() { + return status; + } + + public void setStatus(int status) { + this.status = status; + } + + @Override + public String toString() { + return "ApiResponse{" + + "code=" + code + + ", msg='" + msg + '\'' + + ", token='" + token + '\'' + + ", phoneNumber=" + phoneNumber + + ", scanCode=" + scanCode + + ", status=" + status + + '}'; + } +} diff --git a/src/main/java/com/app/app_hd/dto/BankAccountDto.java b/src/main/java/com/app/app_hd/dto/BankAccountDto.java new file mode 100644 index 0000000..1a97c07 --- /dev/null +++ b/src/main/java/com/app/app_hd/dto/BankAccountDto.java @@ -0,0 +1,12 @@ +package com.app.app_hd.dto; +import lombok.Data; + +@Data +public class BankAccountDto { + private Integer type; + private String account; + private String bankName; + private String bankUsername; + private String remark; + private String password; +} diff --git a/src/main/java/com/app/app_hd/dto/TongjiRequest.java b/src/main/java/com/app/app_hd/dto/TongjiRequest.java new file mode 100644 index 0000000..1faada9 --- /dev/null +++ b/src/main/java/com/app/app_hd/dto/TongjiRequest.java @@ -0,0 +1,23 @@ +package com.app.app_hd.dto; + +public class TongjiRequest { + + private String startDate; + private String endDate; + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } +} \ No newline at end of file diff --git a/src/main/java/com/app/app_hd/entity/Dictionary.java b/src/main/java/com/app/app_hd/entity/Dictionary.java new file mode 100644 index 0000000..86af32e --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Dictionary.java @@ -0,0 +1,26 @@ +package com.app.app_hd.entity; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class Dictionary implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Integer id; + @TableField("`key`") + private String key; + + private String value; + + private Date createdAt; + + private Date updatedAt; + +} diff --git a/src/main/java/com/app/app_hd/entity/ExchangeRate.java b/src/main/java/com/app/app_hd/entity/ExchangeRate.java new file mode 100644 index 0000000..f649dc4 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/ExchangeRate.java @@ -0,0 +1,19 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.io.Serializable; +@Data +public class ExchangeRate implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Integer id; + + private double points; + + private String type; + +} diff --git a/src/main/java/com/app/app_hd/entity/Invite.java b/src/main/java/com/app/app_hd/entity/Invite.java new file mode 100644 index 0000000..1e64345 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Invite.java @@ -0,0 +1,27 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class Invite implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Integer id; + + private String username; + + private String invitename; + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date time; + + @TableField(exist = false) + private Object children; +} diff --git a/src/main/java/com/app/app_hd/entity/Message.java b/src/main/java/com/app/app_hd/entity/Message.java new file mode 100644 index 0000000..65bf3f4 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Message.java @@ -0,0 +1,34 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class Message implements Serializable { + + /** + * 数据库id + */ + @TableId(type = IdType.AUTO) + private Integer id; + + private String apple; + + private String image; + + private String status; + + private String statusText; + + private String url; + + private String content; + + private Long createtime; + + private Long updatetime; +} diff --git a/src/main/java/com/app/app_hd/entity/Money.java b/src/main/java/com/app/app_hd/entity/Money.java new file mode 100644 index 0000000..a3934f2 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Money.java @@ -0,0 +1,45 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; +import java.sql.Timestamp; +import java.util.Date; + +@Data +public class Money implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Long id; + @JsonProperty("user_id") + private Integer userId; + @JsonProperty("order_id") + private Long orderId; + + private String username; + + private Double money; + + private Long beforeBalance; + + private Long afterBalance; + + private String memo; + + private Integer status; + + private Long createtime; + + private Long updatetime; + @JsonProperty("uu_id") + private String uuId; + @JsonProperty("admin_name") + private String adminName; + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date createtime2; +} diff --git a/src/main/java/com/app/app_hd/entity/Pay.java b/src/main/java/com/app/app_hd/entity/Pay.java new file mode 100644 index 0000000..7113143 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Pay.java @@ -0,0 +1,24 @@ +package com.app.app_hd.entity; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; +@Data +public class Pay implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Integer id; + + private String name; + + private Byte status; + + private Byte type; + + private Long createtime; + @JsonProperty("status_text") + private String statusText; +} diff --git a/src/main/java/com/app/app_hd/entity/Product.java b/src/main/java/com/app/app_hd/entity/Product.java new file mode 100644 index 0000000..637a7db --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Product.java @@ -0,0 +1,93 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.util.Date; + +@Data +public class Product { + + @TableId(type = IdType.AUTO) + @JsonProperty("id1") + private int id; + + private String name; + @JsonProperty("user_count") + private int userCount; + @JsonProperty("first_amount") + private int firstAmount = 0; + @JsonProperty("gift_amount") + private int giftAmount; + + private Date createtime; + @JsonProperty("id") + private int code; + + private int type; + + // Getters and Setters + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getUserCount() { + return userCount; + } + + public void setUserCount(int userCount) { + this.userCount = userCount; + } + + public int getFirstAmount() { + return firstAmount; + } + + public void setFirstAmount(int firstAmount) { + this.firstAmount = firstAmount; + } + + public int getGiftAmount() { + return giftAmount; + } + + public void setGiftAmount(int giftAmount) { + this.giftAmount = giftAmount; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createTime) { + this.createtime = createTime; + } + + // Optional: toString method for easy debugging + @Override + public String toString() { + return "Product{" + + "id=" + id + + ", name='" + name + '\'' + + ", userCount=" + userCount + + ", firstAmount=" + firstAmount + + ", giftAmount=" + giftAmount + + ", createTime=" + createtime + + '}'; + } +} diff --git a/src/main/java/com/app/app_hd/entity/Speak.java b/src/main/java/com/app/app_hd/entity/Speak.java new file mode 100644 index 0000000..c891d53 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Speak.java @@ -0,0 +1,21 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class Speak implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Integer id; + + private String username; + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date time; +} diff --git a/src/main/java/com/app/app_hd/entity/Task.java b/src/main/java/com/app/app_hd/entity/Task.java new file mode 100644 index 0000000..342d37b --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Task.java @@ -0,0 +1,28 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class Task implements Serializable { + + private static final long serialVersionUID = 1L; + @TableId + private Long id; + + @JsonProperty("user_id") + private Integer userId; + + @JsonProperty("today_money") + private Long todayMoney; + + @JsonProperty("yesterday_money") + private Long yesterdayMoney; + + private Long time; + + +} diff --git a/src/main/java/com/app/app_hd/entity/Turntable.java b/src/main/java/com/app/app_hd/entity/Turntable.java new file mode 100644 index 0000000..82de4d2 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Turntable.java @@ -0,0 +1,50 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + +@Data +@TableName("turntable") +public class Turntable implements Serializable { + + /** + * 数据库id + */ + @TableId(type = IdType.AUTO) + private Integer id; + + /** + * 标题 + */ + private String title; + + /** + * 金额 + */ + private String amount; + + /** + * 概率 + */ + private BigDecimal probability; + + /** + * 库存数量 + */ + private Integer stockNum; + + /** + * 创建时间 + */ + private Long createtime; + + /** + * 更新时间 + */ + private Long updatetime; +} diff --git a/src/main/java/com/app/app_hd/entity/User.java b/src/main/java/com/app/app_hd/entity/User.java new file mode 100644 index 0000000..247ada1 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/User.java @@ -0,0 +1,126 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class User implements Serializable { + + /** + * 数据库id + */ + @TableId(type = IdType.AUTO) + private Integer id; + + /** + * 用户名 + */ + private String username; + + /** + * 密码 + */ + private String password; + + /** + * 钱 + */ + private Integer money; + + /** + * token + */ + private String token; + + @TableField(fill = FieldFill.INSERT) + private Integer userId; + + private Integer createtime; + + private Integer expiretime; + + private Integer expiresIn; + + private Integer allIncome; + + private Integer todayIncome; + + private Integer yesterdayIncome; + + @TableField("level_1") + @JsonProperty("level_1") + private Integer level1; + + @JsonProperty("invite_code") + private String inviteCode; + + @JsonProperty("active_users") + private Integer activeUsers; + + private String path; + @JsonProperty("f_id") + private Long fId; + @JsonProperty("ff_id") + private Long ffId; + @JsonProperty("fff_id") + private Long fffId; + @JsonProperty("prev_time") + private Long prevTime; + @JsonProperty("login_time") + private Long loginTime; + @JsonProperty("join_ip") + private String joinIp; + + private Byte status; + @JsonProperty("withdraw_money") + private Double withdrawMoney; + @JsonProperty("task_income_money") + private Double taskIncomeMoney; + @JsonProperty("active_last_time") + private Long activeLastTime; + @JsonProperty("active_total_time") + private Long activeTotalTime; + + private Long updatetime; + @JsonProperty("login_ip") + private String loginIp; + @JsonProperty("team_users") + private Integer teamUsers; + @JsonProperty("task_status") + private Byte taskStatus; + @JsonProperty("top_id") + private Long topId; + @JsonProperty("is_active") + private Byte isActive; + @JsonProperty("all_team_money") + private Long allTeamMoney; + + private String remark; + @JsonProperty("admin_money") + private Long adminMoney; + @JsonProperty("growth_value") + private Long growthValue; + @JsonProperty("vip_id") + private Long vipId; + @JsonProperty("today_task_income") + private Long todayTaskIncome; + @JsonProperty("today_team_income") + private Long todayTeamIncome; + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date time; + + private String ks; + + private String black; + + private String agent; + +} diff --git a/src/main/java/com/app/app_hd/entity/UserLog.java b/src/main/java/com/app/app_hd/entity/UserLog.java new file mode 100644 index 0000000..bcff12a --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/UserLog.java @@ -0,0 +1,21 @@ +package com.app.app_hd.entity; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class UserLog implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Integer id; + + private Integer userId; + + private String wsnumber; + + private Integer num; +} diff --git a/src/main/java/com/app/app_hd/entity/UserNumber.java b/src/main/java/com/app/app_hd/entity/UserNumber.java new file mode 100644 index 0000000..4e3780e --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/UserNumber.java @@ -0,0 +1,22 @@ +package com.app.app_hd.entity; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class UserNumber implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Integer id; + + private Integer userId; + + private String wsnumber; + + private Date createtime; +} diff --git a/src/main/java/com/app/app_hd/entity/Userbank.java b/src/main/java/com/app/app_hd/entity/Userbank.java new file mode 100644 index 0000000..befe9b8 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Userbank.java @@ -0,0 +1,29 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; +@Data +public class Userbank implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Long id; + @JsonProperty("user_id") + private Long userId; + + private String account; + @JsonProperty("bank_name") + private String bankName; + @JsonProperty("bank_username") + private String bankUsername; + + private Integer type; + + private String remark; + private Long createtime; + private Long updatetime; +} diff --git a/src/main/java/com/app/app_hd/entity/Vip.java b/src/main/java/com/app/app_hd/entity/Vip.java new file mode 100644 index 0000000..58cd6e7 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Vip.java @@ -0,0 +1,25 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; +@Data +public class Vip implements Serializable { + + private static final long serialVersionUID = 1L; + + + @JsonProperty("vip_id") + private Long vipId; + + private Integer status; + @JsonProperty("user_count") + private Integer userCount ; + @JsonProperty("$userCount") + private Integer dollarUserCount ; + + @TableId + private Long id; +} diff --git a/src/main/java/com/app/app_hd/entity/Withdraw.java b/src/main/java/com/app/app_hd/entity/Withdraw.java new file mode 100644 index 0000000..0a71228 --- /dev/null +++ b/src/main/java/com/app/app_hd/entity/Withdraw.java @@ -0,0 +1,28 @@ +package com.app.app_hd.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class Withdraw implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId + private Long id; + @JsonProperty("user_id") + private Long userId; + + private String username; + + @JsonProperty("amount") + private Long money; + @JsonProperty("status_text") + private String status; + + private Date createtime2; +} diff --git a/src/main/java/com/app/app_hd/service/DictionaryService.java b/src/main/java/com/app/app_hd/service/DictionaryService.java new file mode 100644 index 0000000..66fe271 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/DictionaryService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Dictionary; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface DictionaryService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/ExchangeRateService.java b/src/main/java/com/app/app_hd/service/ExchangeRateService.java new file mode 100644 index 0000000..042e7cc --- /dev/null +++ b/src/main/java/com/app/app_hd/service/ExchangeRateService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.ExchangeRate; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface ExchangeRateService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/InviteService.java b/src/main/java/com/app/app_hd/service/InviteService.java new file mode 100644 index 0000000..8409a73 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/InviteService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Invite; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface InviteService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/MessageService.java b/src/main/java/com/app/app_hd/service/MessageService.java new file mode 100644 index 0000000..9f346f0 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/MessageService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Message; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface MessageService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/MoneyService.java b/src/main/java/com/app/app_hd/service/MoneyService.java new file mode 100644 index 0000000..6327349 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/MoneyService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Money; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface MoneyService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/PayService.java b/src/main/java/com/app/app_hd/service/PayService.java new file mode 100644 index 0000000..13e15c0 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/PayService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Pay; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface PayService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/ProductService.java b/src/main/java/com/app/app_hd/service/ProductService.java new file mode 100644 index 0000000..47337de --- /dev/null +++ b/src/main/java/com/app/app_hd/service/ProductService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Product; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface ProductService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/SpeakService.java b/src/main/java/com/app/app_hd/service/SpeakService.java new file mode 100644 index 0000000..a468096 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/SpeakService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Speak; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface SpeakService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/TaskService.java b/src/main/java/com/app/app_hd/service/TaskService.java new file mode 100644 index 0000000..6be061a --- /dev/null +++ b/src/main/java/com/app/app_hd/service/TaskService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Task; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface TaskService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/TurntableService.java b/src/main/java/com/app/app_hd/service/TurntableService.java new file mode 100644 index 0000000..96862a2 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/TurntableService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Turntable; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface TurntableService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/UserLogService.java b/src/main/java/com/app/app_hd/service/UserLogService.java new file mode 100644 index 0000000..ae2a9b2 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/UserLogService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.UserLog; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface UserLogService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/UserNumberService.java b/src/main/java/com/app/app_hd/service/UserNumberService.java new file mode 100644 index 0000000..6c4ba01 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/UserNumberService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.UserNumber; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface UserNumberService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/UserService.java b/src/main/java/com/app/app_hd/service/UserService.java new file mode 100644 index 0000000..f874bae --- /dev/null +++ b/src/main/java/com/app/app_hd/service/UserService.java @@ -0,0 +1,11 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.User; +import com.baomidou.mybatisplus.extension.service.IService; +public interface UserService extends IService { + + //判断账号密码是否正确 + User login(String name, String password); + + +} diff --git a/src/main/java/com/app/app_hd/service/UserbankService.java b/src/main/java/com/app/app_hd/service/UserbankService.java new file mode 100644 index 0000000..bfc36eb --- /dev/null +++ b/src/main/java/com/app/app_hd/service/UserbankService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Userbank; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface UserbankService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/VipService.java b/src/main/java/com/app/app_hd/service/VipService.java new file mode 100644 index 0000000..2d68b55 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/VipService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Vip; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface VipService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/WithdrawService.java b/src/main/java/com/app/app_hd/service/WithdrawService.java new file mode 100644 index 0000000..609f402 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/WithdrawService.java @@ -0,0 +1,8 @@ +package com.app.app_hd.service; + +import com.app.app_hd.entity.Withdraw; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface WithdrawService extends IService { + +} diff --git a/src/main/java/com/app/app_hd/service/impl/DictionaryServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/DictionaryServiceImpl.java new file mode 100644 index 0000000..6fe6f16 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/DictionaryServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.DictionaryDao; +import com.app.app_hd.entity.Dictionary; +import com.app.app_hd.service.DictionaryService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("DictionaryService") +public class DictionaryServiceImpl extends ServiceImpl implements DictionaryService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/ExchangeRateServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/ExchangeRateServiceImpl.java new file mode 100644 index 0000000..9a0f119 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/ExchangeRateServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.ExchangeRateDao; +import com.app.app_hd.entity.ExchangeRate; +import com.app.app_hd.service.ExchangeRateService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("ExchangeRateService") +public class ExchangeRateServiceImpl extends ServiceImpl implements ExchangeRateService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/InviteServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/InviteServiceImpl.java new file mode 100644 index 0000000..db69dbc --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/InviteServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.InviteDao; +import com.app.app_hd.entity.Invite; +import com.app.app_hd.service.InviteService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("InviteService") +public class InviteServiceImpl extends ServiceImpl implements InviteService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/MessageServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/MessageServiceImpl.java new file mode 100644 index 0000000..b59b256 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/MessageServiceImpl.java @@ -0,0 +1,11 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao. MessageDao; +import com.app.app_hd.entity. Message; +import com.app.app_hd.service. MessageService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +@Service(" MessageService") +public class MessageServiceImpl extends ServiceImpl< MessageDao, Message> implements MessageService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/MoneyServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/MoneyServiceImpl.java new file mode 100644 index 0000000..e551639 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/MoneyServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.MoneyDao; +import com.app.app_hd.entity.Money; +import com.app.app_hd.service.MoneyService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("MoneyService") +public class MoneyServiceImpl extends ServiceImpl implements MoneyService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/PayServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/PayServiceImpl.java new file mode 100644 index 0000000..3b339f8 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/PayServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.PayDao; +import com.app.app_hd.entity.Pay; +import com.app.app_hd.service.PayService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("PayService") +public class PayServiceImpl extends ServiceImpl implements PayService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/ProductServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/ProductServiceImpl.java new file mode 100644 index 0000000..d9908da --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/ProductServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.ProductDao; +import com.app.app_hd.entity.Product; +import com.app.app_hd.service.ProductService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("ProductService") +public class ProductServiceImpl extends ServiceImpl implements ProductService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/ScheduledTaskService.java b/src/main/java/com/app/app_hd/service/impl/ScheduledTaskService.java new file mode 100644 index 0000000..5bd3036 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/ScheduledTaskService.java @@ -0,0 +1,86 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.UserDao; +import com.app.app_hd.dao.UserLogDao; +import com.app.app_hd.dto.ApiResponse; +import com.app.app_hd.entity.User; +import com.app.app_hd.entity.UserLog; +import com.app.app_hd.entity.UserNumber; +import com.app.app_hd.service.UserLogService; +import com.app.app_hd.service.UserNumberService; +import com.app.app_hd.service.UserService; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.fasterxml.jackson.databind.ObjectMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.io.IOException; +import java.net.URI; +import java.net.http.HttpClient; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +@Service +public class ScheduledTaskService { + + @Autowired + private UserService userService; + + @Autowired + private UserDao userDao; + + @Autowired + private UserLogService userLogService; + + @Autowired + private UserNumberService userNumberService; + + + // 每天凌晨执行一次(cron表达式: "0 0 0 * * ?") + @Scheduled(cron = "0 0 0 * * ?", zone = "${scheduled.task.timezone:UTC}") + @Transactional + public void clearFieldInTable() { + System.out.println("定时任务开始执行: " + new Date()); + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.set("today_team_income", 0); + userDao.update(null, updateWrapper); + } + + @Scheduled(cron = "0 */10 * * * ?", zone = "${scheduled.task.timezone:UTC}") + @Transactional + public void hourlyTask() throws IOException, InterruptedException { + String token = "druid_6aa47680-56e6-423f-866d-e190700725fd"; + +// //获取所有用户信息 +// List list = userService.list(); + HttpClient client = HttpClient.newHttpClient(); + ArrayList userLogs = new ArrayList<>(); + List userNumbers = userNumberService.list(); + for (UserNumber userNumber : userNumbers) { + String wsNumber = userNumber.getWsnumber(); + String url = "https://dx1.rocketgo.vip/ex-api/biz/api/wsStatus?wsNumber=" + wsNumber + "&token=" + token; + // 创建HttpRequest对象 + HttpRequest request = HttpRequest.newBuilder() + .uri(URI.create(url)) + .GET() + .build(); + HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString()); + ObjectMapper objectMapper = new ObjectMapper(); + ApiResponse apiResponse = objectMapper.readValue(response.body(), ApiResponse.class); + if(apiResponse.getCode() == 0){ + UserLog userLog = new UserLog(); + userLog.setUserId(userNumber.getUserId()); + userLog.setWsnumber(wsNumber); + userLog.setNum(10); + userLogs.add(userLog); + } + } + //在数据库更新userNumbers + userLogService.updateBatchById(userLogs); + } +} \ No newline at end of file diff --git a/src/main/java/com/app/app_hd/service/impl/SpeakServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/SpeakServiceImpl.java new file mode 100644 index 0000000..811563c --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/SpeakServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.SpeakDao; +import com.app.app_hd.entity.Speak; +import com.app.app_hd.service.SpeakService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("SpeakService") +public class SpeakServiceImpl extends ServiceImpl implements SpeakService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/TaskServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/TaskServiceImpl.java new file mode 100644 index 0000000..0f429a2 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/TaskServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.TaskDao; +import com.app.app_hd.entity.Task; +import com.app.app_hd.service.TaskService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("TaskService") +public class TaskServiceImpl extends ServiceImpl implements TaskService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/TurntableServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/TurntableServiceImpl.java new file mode 100644 index 0000000..9fadd3e --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/TurntableServiceImpl.java @@ -0,0 +1,11 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.TurntableDao; +import com.app.app_hd.entity.Turntable; +import com.app.app_hd.service.TurntableService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +@Service("TurntableService") +public class TurntableServiceImpl extends ServiceImpl implements TurntableService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/UserLogServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/UserLogServiceImpl.java new file mode 100644 index 0000000..fa7c4fc --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/UserLogServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.UserLogDao; +import com.app.app_hd.entity.UserLog; +import com.app.app_hd.service.UserLogService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("UserLogService") +public class UserLogServiceImpl extends ServiceImpl implements UserLogService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/UserNumberServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/UserNumberServiceImpl.java new file mode 100644 index 0000000..9a4733e --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/UserNumberServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.UserNumberDao; +import com.app.app_hd.entity.UserNumber; +import com.app.app_hd.service.UserNumberService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("UserNumber") +public class UserNumberServiceImpl extends ServiceImpl implements UserNumberService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/UserServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/UserServiceImpl.java new file mode 100644 index 0000000..4e49a13 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/UserServiceImpl.java @@ -0,0 +1,30 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.UserDao; +import com.app.app_hd.entity.User; +import com.app.app_hd.service.UserService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service("UserService") +public class UserServiceImpl extends ServiceImpl implements UserService { + + @Resource + private UserDao userDao; + @Override + public User login(String name, String password) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("username",name); + wrapper.eq("password",password); + List users = userDao.selectList(wrapper); + if(CollectionUtils.isNotEmpty(users)){ + return users.get(0); + } + return null; + } +} diff --git a/src/main/java/com/app/app_hd/service/impl/UserbankServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/UserbankServiceImpl.java new file mode 100644 index 0000000..aaa3a13 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/UserbankServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.UserbankDao; +import com.app.app_hd.entity.Userbank; +import com.app.app_hd.service.UserbankService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("UserbankService") +public class UserbankServiceImpl extends ServiceImpl implements UserbankService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/VipServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/VipServiceImpl.java new file mode 100644 index 0000000..837235e --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/VipServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.VipDao; +import com.app.app_hd.entity.Vip; +import com.app.app_hd.service.VipService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("VipService") +public class VipServiceImpl extends ServiceImpl implements VipService { +} diff --git a/src/main/java/com/app/app_hd/service/impl/WithdrawServiceImpl.java b/src/main/java/com/app/app_hd/service/impl/WithdrawServiceImpl.java new file mode 100644 index 0000000..096c5a9 --- /dev/null +++ b/src/main/java/com/app/app_hd/service/impl/WithdrawServiceImpl.java @@ -0,0 +1,12 @@ +package com.app.app_hd.service.impl; + +import com.app.app_hd.dao.WithdrawDao; +import com.app.app_hd.entity.Withdraw; +import com.app.app_hd.service.WithdrawService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + + +@Service("WithdrawService") +public class WithdrawServiceImpl extends ServiceImpl implements WithdrawService { +} diff --git a/src/main/java/com/app/app_hd/util/PaymentRequestUtil.java b/src/main/java/com/app/app_hd/util/PaymentRequestUtil.java new file mode 100644 index 0000000..7879402 --- /dev/null +++ b/src/main/java/com/app/app_hd/util/PaymentRequestUtil.java @@ -0,0 +1,139 @@ +package com.app.app_hd.util; + +import com.fasterxml.jackson.databind.ObjectMapper; + +import java.io.OutputStream; +import java.net.HttpURLConnection; +import java.net.URL; +import java.nio.charset.StandardCharsets; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.util.*; + +public class PaymentRequestUtil { + + private static final String SECRET_KEY = "sZ2wAfh1lMkxBVrlY4uZY8Fj92E4scFf"; + private static final String URL_STRING = "https://mdf.hr5688.com/api/createPaymentOrder"; + + /** + * 发送支付请求 + * @param payload 请求参数 + * @return 响应字符串 + * @throws Exception 抛出异常 + */ + public static String sendPaymentRequest(Map payload) throws Exception { + // 生成EncryptValue + String encryptValue = generateEncryptValue(payload, SECRET_KEY); + payload.put("EncryptValue", encryptValue); + + // 发送请求并返回响应 + return doPostRequest(URL_STRING, payload); + } + + /** + * 生成EncryptValue + * @param data 请求参数 + * @param secretKey 秘钥 + * @return EncryptValue + */ + private static String generateEncryptValue(Map data, String secretKey) { + // 过滤掉 EncryptValue 和值为 null 的参数 + Map filteredData = new HashMap<>(); + data.forEach((key, value) -> { + if (value != null && !"EncryptValue".equals(key)) { + filteredData.put(key, value); + } + }); + + // 按照字典顺序排序 key + List sortedKeys = new ArrayList<>(filteredData.keySet()); + Collections.sort(sortedKeys); + + // 拼接 key=value 形式的字符串,并加上 HashKey=密钥 + StringBuilder paramStr = new StringBuilder(); + for (String key : sortedKeys) { + paramStr.append(key).append("=").append(filteredData.get(key)).append("&"); + } + paramStr.append("HashKey=").append(secretKey); + + // 转换为小写并计算SHA-256哈希 + return sha256(paramStr.toString().toLowerCase()); + } + + /** + * 计算SHA-256哈希 + * @param base 字符串 + * @return SHA-256哈希值 + */ + private static String sha256(String base) { + try { + MessageDigest digest = MessageDigest.getInstance("SHA-256"); + byte[] hash = digest.digest(base.getBytes(StandardCharsets.UTF_8)); + StringBuilder hexString = new StringBuilder(); + for (byte b : hash) { + String hex = Integer.toHexString(0xff & b); + if (hex.length() == 1) hexString.append('0'); + hexString.append(hex); + } + return hexString.toString().toUpperCase(); + } catch (NoSuchAlgorithmException e) { + throw new RuntimeException(e); + } + } + + /** + * 发送POST请求 + * @param urlString 请求URL + * @param params 请求参数 + * @return 响应字符串 + * @throws Exception 抛出异常 + */ + private static String doPostRequest(String urlString, Map params) throws Exception { + URL url = new URL(urlString); + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); + conn.setRequestMethod("POST"); + conn.setRequestProperty("Accept", "application/json"); + conn.setRequestProperty("Content-Type", "application/json"); + conn.setDoOutput(true); + + // 使用Jackson ObjectMapper处理JSON对象的转换 + ObjectMapper objectMapper = new ObjectMapper(); + String jsonInputString = objectMapper.writeValueAsString(params); + + try (OutputStream os = conn.getOutputStream()) { + byte[] input = jsonInputString.getBytes(StandardCharsets.UTF_8); + os.write(input, 0, input.length); + } + + Scanner scanner = new Scanner(conn.getInputStream(), StandardCharsets.UTF_8.name()); + String responseBody = scanner.useDelimiter("\\A").next(); + scanner.close(); + + return responseBody; + } + + public static void main(String[] args) { + try { + // 构建payload + Map payload = new HashMap<>(); + payload.put("Amount", 100); + payload.put("CurrencyId", 11); + payload.put("IsTest", false); + payload.put("PayeeAccountName", "Saddam hossen"); + payload.put("PayeeAccountNumber", "01874483943"); + payload.put("PayeeBankName", "11"); + payload.put("PayeeIFSCCode", "abc123"); + payload.put("PaymentChannelId", 34); + payload.put("ShopInformUrl", "https://www.google.com"); + payload.put("ShopOrderId", "10"); + payload.put("ShopRemark", ""); // 留空时可不给此参数 + payload.put("ShopUserLongId", "776ae472-d4fc-435c-9639-be5763138d95"); + + // 发送请求并打印响应 + String response = sendPaymentRequest(payload); + System.out.println(response); + } catch (Exception e) { + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/app/app_hd/util/enumLzy/Result.java b/src/main/java/com/app/app_hd/util/enumLzy/Result.java new file mode 100644 index 0000000..680275c --- /dev/null +++ b/src/main/java/com/app/app_hd/util/enumLzy/Result.java @@ -0,0 +1,55 @@ +package com.app.app_hd.util.enumLzy; + +public class Result { + // 返回编码 + private Integer code; + + // 返回信息 + private String msg; + + // 数据 + private Object data; + + // 时间戳(秒) + private long time; + + public Result(Integer code, Object data, String msg) { + this.code = code; + this.msg = msg; + this.data = data; + this.time = System.currentTimeMillis() / 1000; // 转换为秒 + } + + // Getters and Setters + public Integer getCode() { + return code; + } + + public void setCode(Integer code) { + this.code = code; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public Object getData() { + return data; + } + + public void setData(Object data) { + this.data = data; + } + + public long getTime() { + return time; + } + + public void setTime(long time) { + this.time = time; + } +} \ No newline at end of file diff --git a/src/main/java/com/app/app_hd/util/vo/Announcement.java b/src/main/java/com/app/app_hd/util/vo/Announcement.java new file mode 100644 index 0000000..72918f1 --- /dev/null +++ b/src/main/java/com/app/app_hd/util/vo/Announcement.java @@ -0,0 +1,72 @@ +package com.app.app_hd.util.vo; + +import com.fasterxml.jackson.annotation.JsonRawValue; + +public class Announcement { + private int id; + private String title; + + @JsonRawValue + private String content; + private int status; + private long createtime; + private long updatetime; + private String status_text; + + // Getters and Setters + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + + public int getStatus() { + return status; + } + + public void setStatus(int status) { + this.status = status; + } + + public long getCreatetime() { + return createtime; + } + + public void setCreatetime(long createtime) { + this.createtime = createtime; + } + + public long getUpdatetime() { + return updatetime; + } + + public void setUpdatetime(long updatetime) { + this.updatetime = updatetime; + } + + public String getStatusText() { + return status_text; + } + + public void setStatusText(String status_text) { + this.status_text = status_text; + } +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml new file mode 100644 index 0000000..36360db --- /dev/null +++ b/src/main/resources/application.yml @@ -0,0 +1,35 @@ +#服务端口 +server: + port: 8081 + servlet: + context-path: / + +#服务器配置 +spring: + mvc: + cors: + allowed-origins: "http://localhost:8080,http://127.0.0.1:8080" + allow-credentials: true + application: + name: app_hd + datasource: +# username: root +# password: 123456 + username: app_hd + password: fmW4NwwXMxN8ShSM + url: jdbc:mysql://localhost:3306/app_hd?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai + driver-class-name: com.mysql.cj.jdbc.Driver + + +#配置mybatis plus +mybatis-plus: + configuration: + log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + map-underscore-to-camel-case: true + mapper-locations: classpath:bean/*.xml +scheduled: + task: + timezone: Asia/Shanghai +#开启日志 +logging: + config: classpath:logs/log-lzy.xml diff --git a/src/main/resources/logs/log-lzy.xml b/src/main/resources/logs/log-lzy.xml new file mode 100644 index 0000000..7945369 --- /dev/null +++ b/src/main/resources/logs/log-lzy.xml @@ -0,0 +1,73 @@ + + + + + + + + ${CONSOLE_LOG_PATTERN:-%d{yyyy-MM-dd HH:mm:ss} - %msg%n} + + + + + + ${LOG_PATH}/normal.log + + + ${LOG_PATH}/normal.%d{yyyy-MM-dd}.log + + 30 + + + ${FILE_LOG_PATTERN:-%date %level [%thread] %logger{10} [%file:%line] %msg%n} + + + INFO + ACCEPT + DENY + + + DEBUG + ACCEPT + DENY + + + + + + ${LOG_PATH}/abnormal.log + + + ${LOG_PATH}/abnormal.%d{yyyy-MM-dd}.log + + 30 + + + ${FILE_LOG_PATTERN:-%date %level [%thread] %logger{10} [%file:%line] %msg%n} + + + ERROR + ACCEPT + DENY + + + WARN + ACCEPT + DENY + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/static/uploads/20241119/0df3c7e105e7565cdb02b23d152d5b7b.jpg b/src/main/resources/static/uploads/20241119/0df3c7e105e7565cdb02b23d152d5b7b.jpg new file mode 100644 index 0000000000000000000000000000000000000000..29d9b2ae75379c9cb90a1fab38e39ecc4b410e2a GIT binary patch literal 37903 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/uploads/20241119/88acc7638b94f5d2869d3d32e68e57aa.jpg b/src/main/resources/static/uploads/20241119/88acc7638b94f5d2869d3d32e68e57aa.jpg new file mode 100644 index 0000000000000000000000000000000000000000..da2cf2151666d003531a11128952bc436e01636b GIT binary patch literal 62388 zcmb4qWmH@-*DhKp?(XjHTHK1m0E4@`Yg=3gcXyY;okDT<;uIMiiaYH`-*?^bu66(2 zoLMJ3J16^OpG>mzBs+gs{{Di(P?S}Wg@T5LhBA4-p#H8yNkPHE!v6cg!NS4A!NGq( zLiq3=P(LCeBB7&VV4$O-qhVqb;9z3mW1*qrlHlSK5)u;=W8jdIlM;~=5D^po69Nqf z5B~xF0}28H3K1qcCeiU{r{r~1d|I3B{@SeK{g#!DY!hpqi7jc)8RtuM;Fp;Z36Z~5!$v^?0&4VT# z>o>l}i6J~qk^+rid(wNt@K92LCc^wP{OV{Wv*~QyT=qI-~aYt5#E(ZazI> zCbw~)YL>EHm$IW&g(l3C1J@r5w=uMTPE8rxmsxsFM z=vE(R^t4hT3x7>GGXX<{UK!s+{CBH4e;7Q{&&-cra2SP%ej#W6;O?INfC=d?$1kk- zq(Hi59kg|meY)~Rv^IR0G&V$vBiCtgWRnV|#_j9v7vU8ygR%pmt3J|_iQ~iij0qce z;*H@xshou!k9Km+YgK~)U*U#%P@r|bAAgD%yT-JgTT3lYl1}-DoAbX=IkzMwC-9}9 z{{6cU@0ri`$ZkD8pZ)}2AQaXo&4w;F!USjq{piPsE#$Zf0~&1pJo;$PvTXbI$qVwM zuant%V#VUv%D$wNr1V|u{8Z1QAS=m7#-n3=Mv%nJ*3(VKIYs~c1nzt$h<6Zzacsh_ z_2uK7Bw^yHl4fkQptq0K6UF@D@tTWywV2(S5BEvwUHd?Hr1we?eBIFKli6AmPW4(& z1FvYH$P?NSC#x7^!RfW@{S*~Gl&(dKSH_57qiy4>ea-nLX1~RYj113*9L%_&6gbz_ zQd1pG2{Ry|sI6uW;`vA7ILS-U=dEBOtW%ikimWp6h|vwWSpUhD&UN&8aFun*z=>ARQ$R$RF8`{t*b@0WN+UV0^}!ncuXOsFFz!tGXi zTCfjy+)*g+)Wu&?Za*Go$h%j6G2)*_ARcf_8j#*TRX)TQr z7-Xi-uCkN(^`s{%Uk`7>Dw;}Z51ZWT`@T#^1Wm15qrb3S5n5*@g^@JyW7!Xye6u1K zT41BXJrfnH3>M{bWr3qul6@&y0iI?_Guut#IKIikPGRT=P3akvZY>vF>`YCT^N=?0 za&Z`~U$aVL{CS+0XQ5xQ$Y?iVdiBi5%%)*qvG&2qWO5ZG3wu6wZTY2`j-;GcKwomdRjcxKx#e_***5$)E*9vbmyopa5**y>v5AMD$}wPEZ@G6;ik-KWB9EbjGEpyXl2}dw#`C9UcJe8t+ANpR zq|~a7+AWv4*;Lz2f1B&>k5O7Z-L}@i!hu3=4cGb^{DA0)dgzAlLGpgIAD#qF{n89v zAN$97K@BI%reDY)nFko6E}(!VZd|~IhD<3ySOP^aD&l616)E!|ZA|iwRA_cNOF5k1 z+^zkqv_47V1}>f9kJanqog^v3A3F9CeL#_QAj;LZWX^|v;w~eCGTeB7DHR(JW&%Wa zZntLHkhHM7BMC9>)#t*ssW!z)U;b4)6aK1+mhc>@{CcrQzZD`ho$Wd_MAc?@jIu*3yl!TLHV=Wx^c5Cee6S-c(vz7qGCzdaY($(AGMsi*`a1e+eB}bjr4@ z;=|W@DHWXNCc3M1b)&3K498e%+$=wr~mWe3ufW~FEz>}y2!&*+jp-L$^ zi&boal&0oZx+|n(x~?Qi!n+bKN&dZ_r+(P!0_biy!}ji;%;zJzQ&U4-sG<(%$r`2U zKzl5yL|{$IU0yTRkeDs^T++>;MYNul!J6(m-OSIH!`!9Fy!OYoJ?eDq+y{2nKA&7Q zqwtmB!Q{9LH)zce(R@ospdgwmt~%8Er`GU$T~&0AavtMpyCjf` z&?1%sRnm!4_mRO!{&n1EF(aa>X`Lnbr?bp#qZsr&zMgtB;sg1%`JY)dJXbG&H=HYp@G-^0?qh;M3DGvVToy+Yi(chOlJA0Jt$O1v1%=hR> z^J)E#34M8^zQYg9uukMRf1A))_XG_tZw>$4;gRV=zFzcPJeTB68VSlf803Z=(JuaU z?@@5CF1YffoW6tEx~FLnBu)`VgFksZ#Wg6mQ)d)~sm&J#6tw_p9x$=8WV0%5^yqvY zt{pu--j{|aK_U?GPEwJdXpb@o&BAnNJ2EW-l-7YGMZN*pFGDq3$)Mi@!}t2Z6@e6$ z_7I!2O0%B+PQ9!v-ic(8fd{e52#o-_bSlaW&unpWzJ>tF8L*4iTqQT^<0eX&=nqHE zyr!NjAn{xWy{7??Yf!UVOilcz1f*$$-VP3zuh+uDm^M16)fl{y`NCQjT$_%# zq!z9z=;*@}AyB-RK$n_Sn$sW&^)){*C3JCNR-U&AD*{Lc%!2v6+K8w|tedqnhaX1e zSzey*s@^!^SqtbD{(4NsD_uNP8LDd4v*os}nuyX;v{d`0d4tp*EL!i4FERB*-ukp$ zW+cI#`-PqE6!x5u=u?wXYTi`uy5D!6nx~*9&CJ>Iv`vGbI@tqWB~NDL!dtudABCrS zPRC*9`i~x&_%2^2aGi7nK?_#Ly0_bTqRivG4D!W>WHfnUnRgfZrIc2TzHgH+7N9o{ z-P~{$h$0Bt?oNY**eb3O|3uroS*uICPGILgQeZA1v6P5UtFE(Ls$RrD%egxsj(=O? z+!aC1U3p3Kn}MYOVi&N~R*yHKoEt)&&zttkpK9n>d#0ZCD|hd5!n8qSiR7oD=d*I35V{%8$^M zt=-PpK`N@0Z5>J%3%@yH&-4 zOw$~jWL6Lg)y3U3w}qDq<}9Ge)1;46?=s$@wo;q|y(eAX-8x2(ZXNvy(2{9C*lS@yrhJ|YgN+4}QSS?C9~|J>1%|^|YuBb#4?yf~ z@+Z7vi^{1ilr4%QPlAOok_8cPphfc9Gt??jgTB4~g}P)-_Q(~ccSfZTp0mkKTjWnD z)0Gv=dVita3iu$^<{?|DN8j*%o$iDgrEjp*co*RD6yTfOOH$pmS3~9Tqu8V-4lDIr z`PFS~GF(_TU5*wP(=^9ju68f5R(F=iQD+@k>+EvK&r=A8VOO=ZYXUt+=U97+o_Auo z`MIky-IMF0%y4m{Gt*m>?d%^5{EszkxH8d2=xzRw75mQe`d^ki+lA%kWLHPJH`m3X z;l@N)rkL*ZJeX0Ox%SlUN&N*-ZLG|z_ClB~Q#5DOeEZG7&E{wwFl^w^zUs=gW3i)& z6s1T@GPOf@g75Kgm6mQ(?nn;fN~O)wo3*Nhn~WDOqc@z@G^|Pp7#*CT)CCDGm6{}W z5gh?eF9<25xjwnXW+|Vd=K`u~eb*_$UQj~cbBpkCO{fved|R<5TC%LF?wGLl)=GfU zts=`qNVK_m6SiLZ@>+`KYh^&YT9^$&rbz&5OarFfw^-h9B-}N!KUTfc*M8yD5KRj# z$r%&bOExe9vdvh=F|Bh7!oJf3s3I~MpQsbZAN@J)Qa`%B z3t#DiBCD#EGzglo)g2+Kh=^*C_p+D2o6zewXti89JM!DFWokxt@v6its+Mk}wu-Wo z)2_-`Q*?x^+B9F2q;{SVE+@q)>M@YR3KT7I1VwjHFDjpN$=@jfwd&gmek|8~2u4T_ zMd2f{WJDvTJ`v9aRF@k+R>}^Ot3t0{tGs%+6a8s!{q2 zMKbd^a(kE~`-SZO1Yt@g2U&%%W+>XSc2SFExgQ2j%$~{5ZD7BvQ~pzRvd5954Ed~>wjZ6{1~^eBncAcSTlPLnshXCBj_@? zlU}s(7!!2b9_JHgo3je&`U{11%uaEF@P~4Ne4|NEau0w_EmHcq`Y%)^S4bj**Gu#U znc8p`pu$)r&Rsj=%igBk9_fOZ%gR}?65W+ed`S(M>7XKi3vfItFUsR`eQ1;ACFB>y zsGYd7sqgkfr`0iK7-2K|n4EiTqenM=CTPXeknvzzhhwGVpiwyyPk36aUOjs1qNZwV zJk!)Ks^Q_IuymY|A?+bCz_s}vpUMg^P#Nzv zTJjhf*#~YB6lhq-6y$u(sDY)Mg%sG)e8VxBbuRfLRI7~=dgXm_5My>>&SOw2Osd4( za%|8N$?-hE_OnTDRE{t;kLJlg7h?XLHw0X+dFc|!8RKLPdf8_&Z`2&pABE&IfC(GT z?6*c$hNWIjWXS5XJB$Nd-xL*75mhAZs@GCU!d}lBJ;8>bK6?t6P&$rOf8-;Hm;LV7 zf4^}8YY<*mZ`P+X;h0w{xM#FjvCq{}v@e%<0%KvLbD}p~#>^}tC_W4a5K7arKLKYd z?5ZY=^{QAen^rDiBT}1r)@{x7sMvRJ4^NXlKXR&_Hjh(Yj9knuM z5Cv3gSCMC$Te7+Sg;L%5a<;{;SGSzr07uNOg5l%wbV%&8r={(@QkFHv5~Dwa*Y)bB zHO5oK=hswhokcGH#}in#v}MY$+TvM!^4vK8xoAFnQX0$AP&{<4bDie7amkjp>T9Gn zosS4LmB_FJs}6MQNp8u6f{;~mJ=?Q_W0F@gdupq~oyA&bpdPnyy-=4h14@`?Z1~x{ zXRG~0cd#yBWy?FIz}g6`Kn&Bc4mqYbGTbbg(0*^&ZwH>VBWB_beW{Mu;>#@re+tED zHqy6P=Gw%UVlJc$b!(Plv`dgy@xf{>hPfI&-YuR z2>Tu2y^~g389U)+$V3fmO@&aQPDj!t7Q@JJfiX1ZzB=lMuI% z{_wYrASDvY7}VJEyyBGlZv}){qSB0(?jC!92hGP3kC)#Ax7}@f+hlh)nE|1$nJk_w z7F7^#vp!(xW@9Gv{74Kv=E{&qJAbwaT?^=#QKa9S>~j3@#|3&qI}5H7;AG$RjpMh7 z)-~U+PRAizJjmCc4iG>{MU{GeOt;n?+Id^oAqA2+I*Zvv=+Mw$-ivAJ>SMhbU8!WP z=E;74{;y@r)+S_tnhgBsfO?;i5s5EHO;&Nvy~pJ8iESxP**kyS2dw-$0)fli=gvr} zz3{OuUB~3p)!GYM=B8>FM7tJ@)?t64xWH+4f)`~k9N$v7+eJk6aVq!3_cI+(vmb=) zYL1N>MVj*IV3s=;czcGWlgl@5gk4u-x0rl&_gxk_Gup=q&sbG5pu*-KPCHB&LLK_F zEeg0TD|?N})kw3E=l()@u|ucEL6&-1Zu4{aATocUq7NIJ26e_9dxD383C?(-wR6c* zP`-kFZSpA>)7Ii9m-&4CuD8$qRHtcDZ=`iutWI(CDF&zIRg;f?^Ii8y*ny;q$#ufL zob$$0bn6PHcg9lflf&^5q(N-yeHNy}cgE|W_fbI^a;me6S~uPk`Qr7ma<>xQaF3>3 zP2lDs&|{mnSTcnlD;MCJ643uzGbX5~)d|#0_?AMpil%!S!1d8L;-B%TA|B9#u%}T` zR!>a^`E%tq-=C}C9@ts1NnVxDn9)5v{OoAKdO!)Lw9sON}Rh=!8BPxB`4l` zqjFf1RwINas18-8n>LHtCA;kLQuVuqfwixWS6>($OSFosQg8|;;uCK;4jcj{7u<0V z>X2lJn}%k`I6uqc0fcE7cbshBO~ds`%UgI~gt1|u=WFcrk*A`J5`K#;W{f;WQi6v@ z%ny%PICkzE|*Dps6~a*A&fh+Q>(k< z1cj9*1^FN5)Q4pF2&6T>_lsdmi&#+XqENJGBPqU zAKLc4EloPvuhhnlvlkUx*2{+8_mzkRvZM}2xj}0?p&T&!tUL@OU~X#?o8?};%d9hZ z(Cif;Kv@XLkFkzoi;y zo!|)(`iJQqr_aiN3BmToYuInqD@$ki?{Z_mi`}uebQH*NNh+eZ$X{9ZvOVa&HXG#V z7uPsA090$Oz6hQ4EH7cB+5XCLXii!$vOUU4^z29v{Xx1Y^Z|#2CU`e1TSW6+r!KCh zSjuYM8erpXX+U$%9c%zl#6UCQ5Y$2}X}vM}MJ!zjugPqR)vf`WE7`LGfE#_g`BtMe z{$Ll|-mf%)ouu<$0zb*y9`T(sJ`t>0-Ij>?){xi1DqAzU8`>sCAwP7cS20(!RB*4< zx#apiq51=gpm!Q>m{|+ISC!=NCZqu{FuO}T%GU@YfsaQRxY3>5p(``=!Pran4V09H z-~RDw#q+V$6gK7Eu#IiMmL+AO3ydY;j47-q*5$82?b@4HBV&qRmt{Flw<;(!8{vnM z#|}4)O6D18A7=LmsPg+_GkYoaIxShCyh+tg38X*$uxYU*UgE+WHIYa7f>ymkYo-W2 zfowmZyKXf5D{w&V>9+F@-9Z_E+mD*i_)5sJX8N5&nTYZw;nsc z+eO`6jc~!#gOH19VL#3P^bt@euc0o2WOcbpxRhDVYa(qPN$vmIGJdc7J{y$#3&olU z-%0`tZ~MsgwRM1i^3aI5-m+Aq+F7idKX5@*5xfe`D@Ze;n}dAio4e%mWv&Q#HXcTM zcF=yT%J}Wfya*ql9MuD_649!271CQA)jeJ+uo(Ah^1EW!nX6iZmpWkt?Ha^&!<4cI z6iY7DaEmoZOea>mMuazFI)^sKHe;929%?_dE2xWTGQcX2`;~eEGy1XNq2LyLu5DDn z@--XX4_%3D2_QuveBAJmc|0E{zt3qt%CPgBd!d}jb*#BmHnh}i6ntktMNSS_2v1<* ztO_3>IO>DO3`+lIhNcg&beM- z=XFefN%|5U%@S+Pl0ZuXu-2;cR+s^_hU;oJ6 zEnM2Z`nTUo~?SwTFe(<`%0(&mX?XKl*v}4%_}h?VJ{YQxVm#t+{^Q!=WI>NUSR4v4K~~ zoqmEvu=eK~!XI#VUK5_4*(_ic%JabV4x7!Z)e22`I-ZSPrKuZdZ2O)YHEf5b-b%X;GVdM@{Z|b^T&keMmr(`24+**THvnl2q%MJOiL`_Si8Ka}K zKl4jh+V=bt*7qeONW-NJ3~>c3ugP3pvRbOq>}`!x#ZreqseLQqw`6k6vY2J9hzAoO z*mD0+XM_MAw-1Px;|FWCJ!?&C<65zR3Xm1!5T-Roro1>YyvQeU5rR4NlZGb$$85)i z=?kidPUE^J;_&-?y8U48_7~gC1k*vN&Ugwvx)P6(W6SQX)hbg<__@%{wh_4)=$YkP z;LrrQO^6_8!C<7WMFW%Ca;y|xnSx3bCH0U6nOQkyT4e-li&A$=l=fc2o3kk*#)I62 zXsXX=9aX}ttzB)2Oj)~rK`BCqdh8?=9R?s)OJmfRNsHip8s^D})Cda18(vm27~;=E zpXj0gLJ9ZA&?aqxP2#FMa=_rGmedhTCWS3SZeuJ+y*cKH0ZiALRCsFi(DC(GA7ywa^WH~h)bhxI!o) zvDRKRHqES04G*(^vDEI@w7F$Qbp~idgN46_rY)AWS?x*V(R;BLPT@+0f7KxENeE1uEIsA-ef-`rvm#3wYQ5FwWfhIO*(R}Gm+;g; z)bFlt+{;msL!^<JX|y~G?)mRc6Ff`y>o>pE#_WD1 zW?1Oc*gz)SAWqR!aV4gqNa%o)=r_ZYZUzPl(T6A$Fnr8&tZwwu)G)p!Kl&pnme{GH zq)-9$=>_}h@DLPIV377qTSdaEwWuI|r)B0Cy-7euNOhONtL!Hj)=U#C*-M;WBp^M_ zVkpY6CIVRFTgOCqs5E#Cn+}93WljvYm>|Lnr-8pVK;tG`g+LkJw+iINSr4(Oci8=a zDE(4j3Un`ESfMVOxhLDrB-_Z{+ zHcr;@-65-BC)_-lP(ybqk5Nw6ORKmYl}Y7iHtk7KE8UMZ2Be-;AhfcxsjAqLb6y%s zw=Oa@Q&oRqn|Ca<5R@sRikcqIw8OmTuzK?OyOZYF{xMlF&aN=w#2u?z|Nb#D@q!)) zfD%2b)L+oAawexwV+n;!B>~(cn1QOG)I8gj)1!4bZCq&=&dx|8bLvrHshoPgA#m37 zc?bz`MQ{i|K5(K^*2rvEW(IOgI5ThXyzHQmqfQ=2t8>}_XMVzF1knka1n7{Dr+Z$?1Aq!F`x5><9r6Xxqa0l zlQB*(+S^jVJEZ(Wm`@H%vFJMM!GwP5n0Tqh7Stt=!Q!k5D0D>w?)b#@4LLxC-AmuV zx$Ihg`DD8vsS&!nBK^FFSGu5v9yDS0;51IQ{W;%C>Qc|$VFlYV|h5dDPI;b7wm`3r@j1)vxZ zucdS+tKl0UXEG-L6VJ{!K{=GsiYz@ZD#j>9w2^Xwwv-vX;HHgzY4+WpE6koeh^*hC z=9@q@poMayN*ErNlWCc@yxak+VZXGu2i?V8Lm0^@OY5S?v67YQlDQ>t)E~?939l& zP0)z5v%qri=5t@|SFd!6b=zRX&xrTUwO#0mNKYuRcf(It-&A><+Ps|k=LcaDgDA@R z?^g7R5lStGpTNg1= z&m6_DDTu@G(geOjN&yXv+ngd_K?WR$DM!FiI6Lns?;4hMZeunwXboa<)f|zugK!$! zN}^k60WtD~J;p#GRV_POmLr@1luWp-60N58)#?0SsMQ<6w80<9)?JodxG_$x z)acd(M#Xi*BOYP7wCTkcTuwHedvYozC;lQ@V5|uzK4Qj1Qlj4JdR?DZ_G5@&>e1S9 zneFn4L28!rLI=!#g{QyWT~n$t@+qk7AXm+`UkakM>--FQq4DQJF}27($w(;iA7Vvj zF<-x+-|-L6EgxIm!ENHLA~$)cJ@wny&s~lg*l1(@x6t#xo&hZPxVEHXoYHVypne-k z-_*PaT;r#!Tae1D?-9v1ZgGs>(9%W3+Sz|q(XV70Ld~HWZzqA=Kxl#ofGxroXesV(1mHAWlhu}YX z<}c;)Mxaaw5w|!{k%)^>TYq->Rn0wNk*7*ZJQL4~x-(hAdrR`)SeRVWW(p6ZC?v1X zSlFw6>p*lOMuC1Vn%x|LJ8F=8s(6GCEZ zhW!i4Fjx3iI5i0YX?24dbWL}U`nf(p?(&d&mYU_LwF}mwo6zvPYhNaF(RF^DqJ_B6 zc}nD1o@lz07uRlb0m28ix{NF{y$6XOsggR*=6E_I*mNVP6RTCYx{;1j*Pt zNo6u(O_RppTAdBL@TLzuedU`<;}VT>@vymVPtj9OCIh-;U0VR2hLIh~xSZ)+2L=~l{X>}ECSe!*1QqAj~CcI7v`Xufo)>< zB#;fIv3@10M~g9nvv1FxG7BBNnBHzil_Wgc)%Hsy4#ar6<#^!PX<1za-^riHR%8>a zd#zQsX&ZJ{o!_N9)pP|~uAj1->iHv0tmqgGci!{<1lRS%d8}Nro9m@F!Q7h|O(L&; z^XFia)mB1UyGkP$Vsw_>$)!ojc2ap|kz{^^; zYS3OcSN*CnIHMeWhM+s40wcPP6fh!-1Z(s54wC0^gj1?JcRUAAqka?Q}f!of06ya=-(6Ab@*y^c?AapH5AV)X?2s;BYL%>BJ9Z8 z9rll8EJvx-JPw*dVx-u(43!!*nqOmE$9i)~7m%Ea)f%OSRpbRMP^7qU5&NYb$-j%| z7u&5&n7@OQ+Su0GYP+=wyS3J`;5{p&_iewmcaCbY4A`}fcX+~_E_%-Pc!$8qaJIO? z@6Xt;=~5t<=1BkImAWU36#b97=`Jn@ArPe;HlEsWe+uIOV;CMV=p7RFr~U4)FN-Q@ zWyKGxe(!3=)v{mY-g;wX_4RC;UoZbSzi*d{VnRW~!oWkr!y&?bfc@th{U5()On5A8 zN=^w394an#TvOLV3TjD>Z;9Z`4>bLA9G}bvcCNTJ-Tt$03JVP_{ti$mxo9f zqqaPnEka^f9q7YTd24YLJ%CJW9D@Fi+k-w-I+~T2N|gxs^VjcGF`mR$)K9 zW1Zo|m9ZP-s+!fvZ|O@>#EI9&Ib|{OQ*mR8CXD#B6yKDVdku@9+etDFINF+!kh#6@ zWVI1y_qyuc>01{ucp66jCB-nEvA)**8pf$f$9iGwcnQ~~bDHiXAB(>^KMSjC$qFH% z7hdn2FlRG?;xe)mjC6d#Stig`RG!ccT=zl)Xh(2(%WhXW3WUR=7yLOXP=dp>LG3Ib z}?8y956&0xE( zvPt=yDKmep%}op$3qe0gu1Avx2`}la_fG0Ad2Dy;w}xC+>Mvogs^w5=3NoCd^{q9( zm0G+g&%aRUSwpL@tB>%hrbF{av=OGm-pTCHV!^2ctGG(g-}W{-^g|IDT92oWv@on6 zDPUzHOdyt@>#_s}9e+_rX_2g77Y-hVbx24y1{#`qe;#Baco2F?B{fJGw-e$ng?}! zK3|_3vgqEXI%H=wVKgqZY8FrJW3*7w^SeWRmluAAtY|8xul?o zrc#+Y-^fj@G9(kN#n~ZgX>pb?5%@0rzGd;cxAbYNu}Z==xZem>IQ#cm(iEX;(M95t z^Z{@?_+AT(Z*rxQL+;iuFUwEU7Qupj!P`bp3nLjD$oJZ7+n|>if5%8+>HtFg^p-Kh znvzoI$p%2aD2$pahcdqW{B3^GLaeGNvk@xj_=&M7<GT`Ut|sB^4eKMV^z1S*nU(_!1gX;(HR}=#MgDmo z2pZ2aIBzq7=zX+=WnC@_shWNPo&xoOrvQm1yNQ#KoCOy^Nm|Q7Y2xl+tsb)5CZ8S= z3z9{A{5YT_y=Trp63jU5{yM?^wPh|%YRPWwq^WnglUvcNb2)v!@pkHXR_YRqd%Zo~5cdXfuG8Nl_I=SkEAbAMZOW3ByU1S` z^#Vl7KrDcLR8SHyIjtO=lx73Ld@kR)<}HaZ8YdE@wQ_U7NpX*A?yPiK)gAct%ORVj zk!K&j(VvM?bvXtmPE^gQ80ZkHoR+R@^cRX|g{iwVOjBJ!?WX{-9+zM#ZDIJ1Xp*dh zmtO9Yfu|A9=&QsAtDXD(qMP)d$;F5OZyPhlAncziF;Ra3nNIow48u^lj;* z-S9f@eu@gp0PYEz9LAzRWg0)mX_Fdzp;ZawFWKPnbgP==Biz4t>FTSbq=|PiWpm}m<{a=N z2L>AKsccnrgh#CgJ-h@5EZ3OBcE5X(5iOxi{j`+Ik-Zn1-u~$s(^90K`txa(r=}M8 z=}wIUyk0cyZb2l9%|td7we(R+&vEvPG zAu+>Y8as7OQ+pThgND`=MboAysq~yLsfB@o6C`M*ERCGHChuX?U0_qF$eN$gwGm`% zb}cm8F)bLiDOP0N#+>6&oTu9jYMk6X8@$L@X9=G1T-4_JG{V{AkJyPSQ#Gx}IxxP! zyqzj4!$STVVpd$e>BU)Nn`LThY6`EW1cWIc17w&Fmf(Q|9eHWVn_F#a zQnC>ygluIacFsvM*Ft+1;Y9-Fzc<5NoOTr=wlQ}-7eX=76Bz$NwW4^kxLDlCt1@8y z24YRRaApeNlU1aOA8J|jv41r)tYPcP*0JB$Tu@SRq-Z1vRIn;=8VAKK#gC&VyF8~S z5p7{}JZHkM4Nh{dp{FU=^yI6pedw8^tJJd8P^Oqx+y*SXoIEHk`LfEt`(K98{qYo291BAg>tmF8Ng3+4>H4x**L-18MaywPYznbdPwMgaU z5@(MBok(%CoYUwPg;@Dv?OFN#Sm~b`Y`3{XfMsO?>?{Wp3i~T?1PTpCGwICeTiQ6F zZ#y}usN9fb)!=;CY)WfBP0ik@^N#J55rk#|&$CL$RZr40K4sTc7>6c`Q|6k%n(+sK zo_3dsZzX63sfZJMLZXw^eHu{sS;|*h-?{YDa@Gua-;HK4rB_eKI>a(&B5e+>8r>@w zC!Q2H%Q`ksUVM&#r;t_L|7}!2$XnK@vD_46sMOx`?NyzMlKV}(K?{(CvX?w=Zq7ZH zJY{kAeJDG5W4^K6FjL&u&w*c+ z{n$FEn^?w=h~bbX>*|`IVg|x1FJEz<&_TT63szSh+8lhm98JBc9&}70zc=v(H&UE@ z_1DHP4o9<1WI*Cir*OS=Hwd!^%3$@b=)!!|;Y@E^*94ago zgQjNDJTA4?uWo1Af&`7P$VhqZv$X04uw?EFFxpbkNKZR;#lrqbl#|0|LUF=xUzL#{ z^FAPlW2BCz@7ar~0_uL&i*d)*lfxz;nR8q?W;DMN(34Ywb2(AOmA7ZS*y4Kw(8+~W zO`w)65Y-))JKD2--HZ8+7j16r(y_3UvYVXRAsV;#iDF#RtCBAMT2>zk89S-2 zrp^*cECXmBg(q8T>Yy}0oI7+DhlF8u3#-cmh};>gjakxn`wYttb};6F^V#!O!JAhip`}!tSX!RXp_AGtOF;tT%E)% zcvR^mC#_`O2v3$W9fLRI>Pl0Pt92L~(fx0-<4Jea9I*^ruYQ?`@xM@f<4C#%d-SP<+ z_4(r(dy%4Th`^^!{nzbxa3cO6aPoej^y3G3xc4KN{}-H4a$@7CQ%RV9z~FNImRJa$ zBqP#pRDBe=B$+NA6G+CMg4sG)s zu6?E6>WKae^VN3<7m9uR%TZO86ij8- zv-eYOBV_lLp*6K`+|lDeqh(dOE^kfuHZXW+!E&ZFO;K&*Sr1cw^XzMhu%1QfM7|PB zO3}JqJ}ysC0<>UCEmXE$EC#gOQd%;bBTLRW;Hz?rDkzOzrJp-|$LlQg5<5kJUWph@ z2j|#4c6E4cVep69{z$8`u2Zf$Hfj!JQpWy3Qnz%LxO`ELuqh{Y%HAE{ru}>(pD!xu z5Z_i(=?F5eDSq+Cn074f-D^Dn;5Yj2><&*xuX1SN+SEzcF07WXI6^XYmJeslB5ubf z6hBEXWkwsadHeQ~=u@%u;_+OSHq6Ha`0((qXk#rxCf~&pex?=Howy9L9?!h1N@cz| zYpaTTCY~mEN&D0A0-wqYoT)iOdx#r$>}x|`QOVq_zc{TrF%vZfaTP=Cg5C?KcKneb z`R%92N|J+b#9av}X)Oa$vStmEDGQr~(ySbVQ5X1SC3zlF0LHN4f&!*=9l}encuJD*~ zbjA(>qBYHR?|w~Rr5MTAVf*JhWaRuPO`M3Hfj@6Lbjzoh<3VJQ;fjcJeb>c69Cta6 zE~KQa5gs6UaB9cQ&X*}I(Yb8W<(Gf@2hyknnRiHrLp$Zx0IB?_BEgtzhSio%u;km6C{S)fsfL@Zy#C#(^}F+iTuqQ) zJkGtG#!#e&&}QxP)Aaaw#W&#`<+s03a5ug*;?Hk5PCg#WVhuU>dNaujo#9?wZ6e{D zscOKJa%^Y2fVkjfVXwxL%*&(?7v#7IP!?Y1xoFrSx!hge_b)g@@o6f8D>hjVyt86j zH(89vn=Xa+WmT98vtbdMoD1E5u!{z>47HZmj+Bz(<{r}ZT*a@9@ue=+du69*y`k1O ziyRUgIR8QgJ)h*JEQ*V^{npl#o~GH}zSJ(e<-bJyZeGHLw|1{~7_BlL!QR8ou+vGs z-dkC^^BeVLglT}c^gh*6?Gn-KI+);u@vFZR`-N7smSb+2|Gw-`K`#}4COJcK|dq#o7FLc9319@nm{;mpj# zA`J+B`_sLT2VP+lLyu}Gkse3^l61D@Hif)Xo1JI~mXSLL%oF6r*KZgy02L}i{m%Gt zyR`rjwV{HaMsLc?$kamtDo*7bPZf6Al%p3Dos7S*?7=5htM7~35>+m&e2nWXg*tnf zYSR=u>BPn|s!=km+*KB~CeGUEDLB{i%N=2b>)4Go!v&?;!OQsV&QAN2fW+JI>Wlcm zXC?=)j}QkZQzyr$-`W|II883Vfd|y{jS9P+`j{B3L9p)Su^yTJ!PWZ16C+clX{`Li zSEO)VJK{WQ7cdD>L`-%hp*=4;85>kaKYow*;qLQwbmk0Uv5W1?=6D-^c#;t^(CFfu zM6|}t=aaY)Z?(PKYk8srya)%C@g{=cG;?HKqn)0v6rWn^N@bl*vX@(}m0Rr3D;onF z>&86_>Tql@a?qZrGOQ+a2q8`}`GxGiGCw#2Jq^ISF!@c%KiAfaJOiPi2LPwLU=lMX zLh5+d8=o_tpAU0NI!Y?D52H}R43^5)rBoG{m754(g-Q6iJef<9R-prfKWOH}--kftL zlY4ge`}V2}pm~(#ffrA97P#ee>e#JQ4DqFsdjHb5+SVLbSMMwgywS^96b+v8r8@ir zq>cL`V?HJ{B_+SqtdxK_lYdoXKlq7=S6j!1VODWLFZE8JjoGd*Q~EBa9}x0n;7PD7 zspy>6_8pN`r?8tf%&qxje?b`hBTtaQ(bjtm=2riSikx9S;9Qs!DW8+WpCu8O!!5j3 zQBzTZ=UQdAauU|od*r2fxbsw-AlGISY!MV8gK$t%ot%qnnb{(yibUs!1JX_&Vktd`2_&!r6O9>jhPsrBd?A5LyXC2lfAt~u6R`^o3KFFysH zcjfjIiE*aD7!nC;9Ir9|B(CAluKvk|pEPuDlx;ANc{Ue(bNi0X0d0LF?!9SOO?S$b z9#SDi=rlTOT3S*O@x0uJQmrJXqUyr%MVuPi5>g5YOOSbr06=fg@0Va@N>}GVkY4gj zPuI7y;(O_ZK71nWj|j!i8;Vs-#ydi`f! zhjGw$ZC#7N*Hr9EF+K50`>QU9-~`#$%SGk$KXP8itx78_9FfNPO6NFn)92(M&8XO2 zgIQf`e6+(Chl%{4%&;piBiX$Xq^&hRp1>Ju8F*nySH_T*&IdAU>TQ9dOm%2bQyaqh z%o8?_8Be8oF?lD>$}dS@G7@i*ENHc)W3FVM!EM^>hSx8dmQ^A0snztldr5>KWJ~*F zO%X6#t!{WwxlR43X2@d5HtgphT%*vK#T#wR{%-B_4`2X)fi|YKrQ6#*fH+E#vZGCh-22toR)qsE9ZU|wcUoiDpZvN=}|ee>QME4yri zu&wc@wyCx$Xyzxk_>i^z^jeX={N(06L28@GZ!wi2?{AKnH*O`2r^OYuP(c5mOfo1{ zJJ3%X94OhXy#~cma%TQ6!RDnEo=}fhv^xvPfm3Z-&6ibi4Bs@&?ncj79ebk$F;3fB z*uRTDq^_?8%=-i^;Q`B+uAjs791Q7ciBzz4=o9BDX$Z~^%U;Jt`@M|fHVDhTb*!om zI=>WqtJ)f})-kzotJam|;B>V_sfMUk`pG<>SnTxAgymesPX5^}tFcsXrPyrZUh4em zS9ft*p5D;hF^;#w0r}9$Y>PvM4(Krat5+ZbUs>&V{@VeH^E{H7dWT)Rll2``l%MY8 z_1)hc{m;f>g;${!70653c0t$3@WM+MbC zA`|OJbN68%jd@tiv2D)wO;#|M?>D;T>qlBfYa57HhnvoRQ{=A74xN!fU_w;4UOyaQ z8SNRwf^E97Xy! z;oVyB_hCPhaiH45~_tkgIJMcW88+N^P(a5Up<0ZY|h*jOBYGqC1*5K@*ztXsc8+qL*fD= zEFncK9>>5qwrWIDB(spz0OY#A-uRMO8x-V%o?o^Aawq}TR>MZ1LBANQ-7RJgey#7g983yZen0e)()y_!r z>YC>1SY-k4t``XEAArk1OLb)e@-}G;XtvNKM`tnhR|Ja4$#El+Af3xdae)vQd8@G+ zvQRJm_3V}bIzIkVxSpF%n^F+lkw?Z-oA_psQRw928*1ow-WZd^w;ZV`-O~ zow^Kd2Kw>Fy3ci1O)wvzLU=Fa95E*B4ysu_fFDaapfW@6)XhV2Uz+lAt-3*mF;|h< z2jdzUAo%c~=1LohlLj4|E!6#ll&O~-Cv3LHs21T;icsXZf$=VAiQKvUMVF#lHc%5G z=ksOtu|`n11pfOY5|^$K=KLJr9F$trf{eOVrRGzhrWdq~&+B=^sb6fsutz0O$2{{R zkN6*;GV9`y$F5z?T#0-xK@C(Xq{9ajdst*R54#}Vk)^|ien@UO$dH7-C*FPy5~S7a z2jdKB$RDqDvhsha2dnMiSoXv`2y_^_q7uHcEUV)H31 zE2Vp)7D_>A*m_=wHkGpW$;c_}46l#}1{agsO(c_mXQYPA<=|)W#dl(*E$W z|DjAmi$Hu7jUvA;=A+G)?{3i;Rl(J@5)K(h6K#IOd9ft^;jeHJFsz%&p>v)PG;&qH zOp*}%vnBYa+%+gbS!6)}E2-gOF$N{KT=LBY+K z4`IFiJwBn!e(F8z@odroS}`^Ti%EhMVItYHFk4>w+0~VWnnY9*IrER9KveI-!5myi zvMKo7=EBuBmnbVjX;Nd@Dd2nQt4O^UXG-4m@c!)=`!*vRms5?c35&KJ?LZj~@8{x~ zl?XVq_tgCEjPtu2YSJ#n%&&15CNuA`A8{WWo@OH3K+}*n2Sd(a`;I4#OZ&eKqdl}p z_M^ReOeSN8D%WE=iPCKm9_}q3J1$-hmAN@Mwred)R>P9*p=-1DA1XA+8mDcXiz^Yj zi$;`juiUFi$+<}e$nVBjw9kC*hwtt8x39t^32fFo{W)VajUvXUs&NAmP^HShUT)z# zPISCJdaSUzcwT?12hj4=P_gTepWS4IB+UZ2KJy8pQUpVx8a ze>9-j03=V19qq;d`om4@&cyM}4+qfc?jVWqHVO}@^UT9wvE=@^-1FMQq;2<`Y)6%^ zG&=W{hW+1~nZmNn+U-N_mjuHiz^u*IBgOysA0ks zA zjO&NvQx3)jPK?}FB8FQU-)ovjwHy08YRgF?&KM^$?@F!@=#kpW+1K)060jo|p;vQ| zm|FfwOjJa+9P}Fb@hvA=J@*6S`fCGer)9QW<1jHM~X&?%G3daQ4LOl)WCRwq05{+A!Df+ z(-rQE!4{WA8TrZ&0!>5oFs7@l*;s9DstF?pnAe5sH$DPLw!iARgZ{7daJerWRTm(9 z5;>Z6KGrR@<99RN;NU&QSrqxOU3!l9oDZtewOT*@(d;R<{ z)?zo7Gmx(`m1wsGw@+;7t4BxKJb2Fx&Ct+8woc?S^ST(bU2T8AATYYcs8g?_Iqt9X zaC#2qt@z><=3XENUFG}hpY}}-zbNjDY2lZsGvDmUy-W^bLgNMf^O4rS_%M_CrgJq2 zUknumBe{EZj0^~(v|rRd(%(|FcKwC0fzW2!W)>3zLo8`hTXR^$eY{?0L}{K|Wl^AT zFp0FEiA+j=ov;PkYtnQ{_&LaY$uP*D~{gqe5fdrJTU)O1H31wE;`67?tQt+2aT~pVT(~Ky29pR{Ed&bQ0=q2^bder zCG-!FV8M!B;ND^TI)qx%heYqg@;g!8Y2B_omL{FDP0~0Sj5s^$MQR{FVpig?pUG|l zv{gcMB2Nd8v)Bjm@B5N)8;^%DkH+_UnbtRhEM9vf%-M)ma@Xm(1+u<~Sof&Dj6LCt zh4%Z3Cs&^rx%qIwSF}NGND57w?1=-c@a$swc4=!Rn(mko~;KNZ^Q!)@G_{yhd zBQI5zNlc~i-v%ML{AuGEzNa8c=By4rB)F{$!h4s4FN9$D5@})xZgbU84fHq+dE?5g zbF@D`uf3^@d*wZbC;bPwEWo%dok-73B59)T4b(T;pYs;p!tV+=sAUE3|3*j)Ivt}$ zHTU~T(BDEd(v$9Do9j~IPu~|XF-^)5nM4()-{3QPy@Cj%`P)Ah4MY%TgDCC4Sr)P# zuQ$|$=klx}4F4PBZ;AcUb~)00ge5&$+zRyLO`QZHTb_c8@jTwn_KG94!@TP*Yoxal z#|@LZvJSO}zwtf4FIkqrVY|N$?nwV(#6-?LV=1x?I#siSezA2}=s-_)lZ(q-S=i|0 z(vMbWsv1JusABRq6t0K*Cx_t84=k4lUy}RY2obv~*CPmn$PN#;;0S@$m8_Ny(ji7e z$IwWFHNPD~7RdbIRg>GQ>yfXPV?p20x6*x`NoJ=>cya3LLr9Z*ah_BMxAo^jtzoQd z&0UpAj=9s+Y2OMsdfF`HVtxtBWnR^qUn>>1a+G5YNbPUG46e`PmPb$h;LZkii_Y#m zu^?uT2tQUA8L|M{w_^Mh*?ysAkY>ksFP_(_+*+l5vJSg3b^B|&Y73$GkZ${@4b##XroA`m8<=hhJkYlJul*KRC_4_humXT z$Tpy`BW3a8R1>8}dNcSXQl1DvVP*vv7hTqqJ2m|SWR#-)D)^{5F%+YRYqVAia=k32 zGiWeqv*SFApMW$TB3vYQqSE|PX5AG&C~A>z*>l+7(a#=3^(6vj6J@%Hrr}TO`_FmY z=zjn!T2mPd{f67o__Kbqsq#VTa;?q;*V2TUsIxlQi!}94vn>n{$7&_c+3Pi`VW(f! zl|q<@N%$B;Af>>C*j~-_@S&kuc76Fiagj225qM=xzN?awg#+za^ESY+bLEb_O6&a6 zGq+;t;x7D%2m|gWn1)!v>q5WTK%OiXxCGrQRBOBuVX0)lgB@G9*6kdNlKbPG? z>>gF!Vv72Y75PnfwVfM_2aHIcjM?737ZCq=x zCn~-;9YTDF`NRClvSLX2{7VM6k3a)cvWlsSywJ$}@q7s;Z_Nb3GSz!s1aEJ-!FNSbq-fu{m1%e9(1PAHLO?ai;7 z!)wS*YHk6j=BsyD8b=e6qXE~sjNN(erpE{F-rs8ep3yVliA+Z@-8UR}E<2YJA)!qr zYd5O>sMV;)flCH)bH%b+n4rYODmK#FBgwXZAV~8g=jP;wI(V(Mf_t^>6$RDAXMrsa zTlUW~XZ1%W=ZE2z9bc|CbQu-$s%aUhq@QdQLY==^xn_g<8RItX`E)$PSgXM?UC9U} zM7{V)j|11j)@gj0NW6;1++MZphle4R+;d9Dmc%lPhG4PgQ_MyR&Y#cp5m zU28p{`A!R`V1-P2cZEaF&hOY9%Lk*sB~Nsl5Z}hXmHDzYSu52!DRKH#r^uYJ1}X&) zvWYy>?I+>z3;c}^Jo}*dEQWUIRd^?NSMXHa1}HW}@{r*#fyk_PH=nP7XHl_(6Z{VX zn~i2}DdheFi;jvw25)fP|6IPV{gY+eov%rRTNY-mKl*ecKZ^uBW5&RtbbA%j6s-A{ zvr*BwbE6@d*`wtEzbD2pz|#EL8cU5~T*jc~j1sqFPQ=W3AQ_Law79dOE-O#638i8Q z1e2lC-_mF^H*Ya$UXd-7=^yJtIj8{b)X!DDDQJ0WxKZ~ylW*mjM{x6H@%!#!iod^; z-&n-ZX!0xPrCaL8i{bkjH3^=eod1e(?=EiYKY)5y30?tT=f)>>WFjFwb7%B-GR>kyd5z6Kw%jg&=13{OfRzI&Oyx0Lr$o>wcB!Fk4pC?(_hGei#g)J&dyUZ_$|5y5XGbg$x6LR z!Z$Td9DDk{$aBHaUGqe4^2TNv^*5=fULs0w4Z1RTnjLp>dhOuCt2MdP zIe$L^8n8Z|9NJYzcsO0og}x?6P5qe~%~|ui2H}iLME`X28%c0;4VS}P$^~EVo5~8M!PT%99DUyAZR;w-gG!GWyGV_m!!&#hM4Yj;EMl$_}~zKD}nZ z53TFr$2p6he%;TRgrnvtGr#fm6xW=&bUr~_pM@dsh0y)ZOIe6|#(vhoiWYimD#Fx; zAjLlu12FbqxjluvDvs=p1y>N9fPmrcr9c*9$B5R&5DQoPiEh|Ue_3ywx};04G|wvO zJE+fZ5hFZ1Z83W8ZYe$rz1auk8kB4l_SdaFYR#(sugD7*zfE5rE`!bI@`ra8}fF!Jy^RW-`apx1`iFs>uwuQ77VG>A}@rus4>j}tZJCq3dtxeV^f*>uX zd6P(8;sIG-e9iO{TeK{LdihZTYA0s?8e9(?bAB06>;MnoRnNt^@S$c%_X%G^HImdL zE^uo&DlJRb%lb>TRV=K41U>x3`5>3Dt%w0)ik?9M58vOTXz)EyIT&KDg7Lhp{ix%1?%sG6{b2Lugz-9h5A5r5QX&OZwG7aI=YY3 zPsp#+OKYvPs70$&jjo%OUdkZ*eJlrM1$U@kL@g~P_S{}g!|1uY^#ld$l5-~>wdWZU zf$Hvb3XKi&LJ`9~l4sOY#=>lGXt$@qj^U2|R{EMnF?2Y1*T7-_w}&L>`#YMby$PI(Tnrg${%2T_wjMV) zT_k%-7+xTKwX6NXn#);M5_oM4^898Ev-rKwLWC4D zHC6Jt9tXTB>v7QolVy_R*W?YL*~$yM%s}rP$t$M>LM-=vR$)vZ}PQeVpGU$#=s& zKmZ;K$cE=bbsoEB+?B$Kdp!lvAMX%4Clq5@ksWx6Xa|g>04~pAgM@GVN(xKmXbbD0B2IcV+A$zWFfdYomZ>GMJ%VU|iw}*{3b%49lZ!v{=_ZZ*^gNU-z3V zN8^mR{)@Z+m=B_ zyo8`Hc$oZKZmm9(W2e~qf-M$4bUF%l4yCCRuTPLrTT`b8DX8rGkydT>2XPY<^ zH$EqnOP=ZASgIjL*{_1{bz|PR=;L}Ly;0MZ4aW7^=&tKry7f^PzW==GBf76Sp80D? zl17VuQ~W;MWOjW+_K*&B#yKNJ;oS%+W(L7YT$8}SnI-GtuLor%WlRJ#ZSjcs+@EMS z4&V=W$1>^TFKE8jO4zUKIC(13jejf6pZCd;4v&FWurng*>Fg2a^nQ9&YYgi(3Yxrn zo|z&@x_;6O61Mfp8{RW#2u;vRv;g0m{N;4FtcppMGFvFu^#v7C!v=>%W*eF#WeO&s(gcUJ9M`YO#~;Ghs{qgnuk` z%{3dh9jt#mat(?PhCd!L!u^2mM0-Q>qzn@9kb|@zDqyU9`%_d!e zVs*qAN(uu#)jR3*!$Ce+lUTF*pZQ(&j?r+f%$$$054&j|7fbC*`d5l)V4iV339q(Y z(3CGX{igg2O6eN|%U_!!JCa(99Z}yl{Lxj?lG|1rr{7Fd3^Y;^L(r3q1}wcUJe<~N z{%SVdY8~Y|J=V)#g83GdRydv2RW~O!pOQGOxjP!JDz$iM9oMt-A_!wF{@|$TKo4r= z%HaebN(-_r0joMkC>{^G^+I8Knyk1l+L(hd_8%Hg?p6wDv@RGXrqu;yr~}GXoT_RO z)P5-k(jyEW#$w~%2bTPev&Ax5VB5;DBC;kY4U5bcfGR9_DMR1u zwewq|-se6rnJCcRL=o1M1LaPLwYE7kf@ak^eKq4{C-L|y%5A5$3Glz)36|)L{_5hd zK^yY9qRf$Qvp&KfDHU9?02{v354_kZl~^o*O1gd~uH4?R`?a1|cQe$;{D{Dc81z-h zrnEA?u-8>gB6nRF4g$))Rg>!BbB-FtUOM1HHg)7vx_e?LL>I{3_GJ6J$M)kn7 zfmtn)hdnCE2LZ$6DjTDT0$$f2=H?-Hfz}u02@e1;QFHPR>j?|@;e|^CB;mvXo(I$! z(E=p*A#BWRZ4&3$SMBa8Ur7wco7G36^n9@FQxJ(vME&qR=BzvlDx`zzjyy^0?qWr< z6-t_6eCz(6U>s&(Mf;PZxHJDTsmDkB7Cy0&1Lv5Vo8vxgcuxcG6q?4|rEf`9F`^J!#VowWlLNoBMzMzaw`XlPe znOrZ0N!yJ!7?3AMYCPb-gm!<3*`}4iY*&%OxnN;YE+5?yb6Rx8n6iHiBZRMv*(iOI zGbu1NWscdLFoNx_Bts7e3vytIqM8>h>3z#Rb$2qC?3?U+?OS`4P4ndhJ;^S+`d%a zIf99k-^y?-ZC{Xo#-_>N%FiL-Sk!lhrzkO=mrNAaq*>dp7_c|q_qQ|gRI)V3O*6`axl`i5JXO1IX3kD70;rw#)X`5d{|{@J&PhexAcTijv)u(f1S z1ixQ-Pm;84VUk7lnN7Q8Ja41h>nr79YHVb~ZJU%8R2MzfKzqv_WX|RbAaBrWsV(K* zye#DYZfQ8pH!OvS540k8UT3r{YZ3a7+@3cPoQ};=AVYhMX+&6Dt}7!kl?i=4 z*aWs3i+5y(e62>IF6M*fZQa!BF{nLv3NpP!*%$yA+=g*9d=40WiBz)LDW3slkMeDr z_!K0o|K@~M)e){IuP<^eK>GmH!E!%e1j3`XI`WzzVpsD zkxr6VQ5hf`pBiJCH0QS@)U8RH*Ef`LI@A5W5C#QlozeFy_(#KB8@HXc2^#Nt5OP8C zs@zmhRT>!Xj_Kv;0P~d^^$p6~&bSZ0k(`?*u78{)H}EQGLT$j@Ol1WRl59&qY+M}* zy0)Kt(j9uzv)iqA~Ia`fJ*;Zj=!cJiiofxzrJnosrUI~wAu4j%+&pSoj}zO@B8r3wpJ?kGZnTzz+}( zPV{$^mB-$(diy9JTMB=4E{!K~h zF3n*5ekV_xT=&8>iK_1)KFJ<h1LrPR=>D`Xz4{3Derigsni{OXau;OZBG&a{@1}zytmr?xjaej&d zI&sL1cs$iZ0b(R#v=c7&4!GlVhDO$^$G*0q%M6D=lNM)k+M+;BmV$>!&HH5i?6Rb) zPe@G?LEdD!@qQnpO))n*$+V@*7PAu?6;r}z5R`PHwi71VFk&_Ylc(vW-%v|Hg9Qei zt$-{vy3T)0&f=Dix@0t5^!1x%;Blal0I#Yo1R3BauTz0z0%%ttO0e0sDpLlT|LcXW zjye-&cFxDwAg`DKBaewe@acTc#FB$H2AhdQ6kA(jVY%4~I^4dlq&s6SfmfIu<*is$ zmLeWw-q588P~l{^H>J^!*flrB8_D?3kII}#zwqdIBeMPwp3_*vOdSUWFW%b93*6=;;Y{h96@tg_ zr|KMxm}@gO1zn~}nK0|2H@E6N&)`e_Et-FY%S_zA)o_LV;K=&C#T){TJcoC}%CoJf z*ye;C!u}yMDwhQ(YO*)MbzF|2o;N&+TR##vOpskFi&gpNQ4?;^4qx`J7OT}vK8Av+ zVkehH_Mp2K_4iO1WwC^7CkU#gLa}iywL%R6>ZYnOGOvBQi*u^d365Ow&mFg!+lqFA zIPwsd3;*Xl{4}kAwh^(^_ zEV<6zRn{>>4~JKJR_Y1M4(z|kNK|JL8EvmE?3m7D2N4Y+1>Ftu1R?|jIQp~~*FLG$ z{T}(A$>g&EO8U4fA64~A7?sg=;wt#DErU#TbU^w z8;3a&vx<3i66r+dV1}3ZrYjAPG?tGx((*RyrE{bPXQzBp>y5{sHp zA>Sw7<8b6&W;(|OKf@Y_ZJ9|X618~1M$`JfW6IgrvF)<-dn!sgb3Y%4vs6I3%ZK>_F6kjWb;cyQzg$gvb{B|=*j+1( zy&k(yauGwaMmUL^w$z^;Whr$=w>^~$hkMkb9cx;ja$@8+za4zAX${ zqSFOUEQ+5MuJklRc2)~Oe5*ClUw5(pJ*Zf)=)}M^Y`mI?d%iQ9%j-N5)B>COA~Q-0 z?PYM`(MyWAcw`oMdfQpK$X%O(ebJ4J8Yw9F*c0`xpCNZUQqgq*(^I;0;APQckC5-| zjk8(LP!nijAI8^@dbPhGpACI`1$i7bA@ z%|!e_+4t@0G{|mq)~sx7>TkQ!y30g>w<_hk!S)!=UJRGH9>o+yMRrP`2<8b=GT)PK zs{!-k?4|^C(S@i)Lu(>RoK8HcM=oX*JkmH0o0wctmjz=DYHF?w>A713g!`qj6tS2{ z*}XwJZ@n)Fzm?9Iaj+1l@@!L}LDUrQt5&1?er1k9FNXSWC0hK09?SSXJ&MVP*4Q?C zP4#>BJLXiHxy*W{)?nzefuZ;a<@lj}{C|L2%~XZx7&1!-KDV^Ley7xZzX{9enxuE? z9Kr-^zfLkyIxdnvs!8S>WgU*=Vq55*fSZQCq-!QpM4WL!^W*3hsX}H=JKL4z7-|Mk zF0uZA&k$s$M_Fzx3lIzZ$%ivZn9qm-7vl(xmE)f%S2pkRTF7) zuIY!$f$_50VT_e${lGka@|hWm740LOs3y?J)u&WSZR+e%8N+&GFoDOynqemjmtL z=F3`7tiYgak9LVvQc-DB|3lSV7O5cgB*vgNOk(ubIMXzV%XV8;Q_KS!D(?2S)z$_(C@XtK4 zVA&qsQ@&2CqxXfxJ!aTdbrcfUeB(2163#qh8-=#LF~3Qny`~?uXSMJhn`y280K9gu z_qAwlIy)@=KqmqEyf+0jeK6Z68!pbLDff>k?= z{q}Wg*tyl*cT)H;QMy<$coU6D%=Sb?bv7KG39-sZKG@~PO<;5krPNYhTMNTr%z(cv z-_Hm9iRc7N<6#^S`f!O*`iFYN?zu{{KkTAa`bWW6Yfxm;IbbIzgv}FPv^|$WMVgHAArD#RsJClr6HV0 z_)9E5iB*;9qYqcBTQt- z{?KO{JB5uv58??vQbzDlRLT5;qlr)}(z#xtTe`xRT8`Y?^kLoLzI;&TAV~o6+1-z0 zLmhE4Q)zg&0kCVOdRj5wk$2}u4!$v)97@J2*+cejd*?ruT{V=YrZ@)E0bj-HI34w2 zcSGeXA39xj6n)l_M5i*2Hn#M%z)WZn1%Kk~nc9rR;&@x9AKWX8Ef(yb^>vR@**jW3 zYR)v=)@GUwB`;g|uIo58EHg^1u25dDRR=T>?W=P9E(M@5$IUrDu z#mG(urJ22m{R0rF7w`}-LB$>jzYMmejR6uBlj{OEtQ+WUY$bpElp8oBO{m2}Y~<|1 zbFbxoXb{P_*^`HXc=l|4)yBYV&*nfT;aC{gMF_mVjWv^F4&}9IYMr0Ob0gjFg+b4| zLUpiTzFnF?yiN6}OT;;`M+FZ2A=KY~%g1Z4ra?xxc;pX2z_=ToG*kodC+z85(x zDj{+c2&^NR_`%@N!K^6P{N<3XJaI7O8wow-!X~3}D|B;8;3Un!{z|-xSLuI$A^{uR zGOE&3mR^}M+P18wTUXOfEu?iqomOx`du@}fGPhX3_o&hnx;IwuTDM$HXkyx(b}iPJ z>MbPRl4H2hsrjP`=5Iu39b@kPXRxe8pa~MPrkR`^&^Sz#LX;i<)q_R%^+m%&4&8W^ zkwv{8?N;{r_JLrtG&>=ORrK*6;Iz@L;x_o)W$OB(1=X9pSZh!bpNJxm8K<#w^0p&i z)ZM_}YtgPU!y8`9V@+WZm(J9+e{{q9s;+J_gD*YP)y~GZEJL;2`KTt%t(=vvJ@Rd9 z5lj(7nuIo|Jg_Q^g`2ZSaftm!N7FGKtLgs_a4(-H2Tz$N2~*pdHxiu#^h zftql*>eIk-) z)2v7x`%~evpX@S5>LvUJZJ17OH%A=2b@25L24$hO*bT%kfe!NX>Z?Hg8RIPuHN!>n zx+8jo)+N%4|7tpnV?eTk7nszu&(r}pyuP%oa6T(XO`qg3v z!Hcwd-#3Jy=066x{lBk{KbpZv2QKZJakn}sWG6UA)j9`=ej^tCqOeul>|HA`N{?Ls z0CykF1z3FpJM9O4jwZBNg75B=_O#dRutxVRnOxXI1_^|b+!XZ|!95KFEe5w$zXpd6 zj8$F*R}b5=a4!}lrZ7KS+S#kequNAxNp#!*Iv%PymI9wO*=(yv~>6 z7bWx_qAO&?0H6V#KI>1U5;jwX_Ent z?>J+pH!PSywO4x~Y$>ZJqIc-cN$0E-_jr(fX3X)7BI>61#6I4XjT-l28h%CYabDN` zP+H;8+@*TyuK1Ie{G6i#KNNJmNb&V>j=>GpyZVE(AT|7?N&mhtdi`(K!{=^88-Dlo zL(45J9zR{jbRSt%b}q8OC(F}B;=V>OawM9`P_FSiW&}jT9;5s95}nN2Fj!U|l6%D) zUlYAYi?$9Ia?NEf5lb-u((Cskc7Z~C1((`ow;a?G2cOHGacR!(cziEGP@0FXN8)-; zz~zU3!3!t5vnOWtBF{~&_w81)&g53A{Z?i{(JU=&EthM9&nBi0B@3ML-%0`=yd}{U z@efR`p&`qD3lvz#6lMplL^^YljS;E*IPiQEL8_FBQSe~z3wn+m<=?U`uFg+f!#}`G z+HbPSb7v*I28=ACP6^k|)A8lBq#oXuid#dEVZ0{PQ4*6t10vS!h(2drll~AA+JAr# z&x#a_?B$IlC&uKTQuOwqpRwa^Y;ALF4l0zmhuWzX^3dHZ8Rop8ZtPL0T9dTk7xWnZ zCW0AeTDv41TmG8lYqXMV*`JF~u<%Xi$UdA9%6Aa_zKB5J)qPj^>kU$)Y z&SC35Hx3ZWq4G`%D8AeJ{4?wJUBmvEXAKk<*!dq3_bJ-`KceQiZS_<6f1$aH~s#TNN zmyoCqy348;^0dU3eidi2a~r1+t~>vlNzPX0XFD>GlSkC=JE>1ho0>te;9~Rhhflq9 z2=S(YJI2aHx64@D)P;feLit&1Cl~n68x#Yq)jwWbXuF$o5PSO_qyXv)2?)+{`gCde zd|UtdANg+3HtF!LcUk{QO`!V^HR1D-O`jzH|9WK8C($1b@Y#Rtlahe?U-bTK(qA__ ztfK!zJNP0(b}I5&jU#(P8T3R|pyf&YIyW!zI2Jxv=!b~$9tH{}l6)ATYi06}H0`1% z4HDHO&%scbB&Ej*=N(%COsp%++04fujY6bxvm}DNJw>-a72L&R%-V*rCWUx}7_<4q8M7bV8AIJL2meIzvMw-T1la}IERvjJfG948 z77u?Z&1zAV$@>p5C~`6RIz-wNJ#M)rp*}ATQ5trPrv;qP>TBo&&?i+jN8*Zn$72YV zlEe+yV*Fj(^^gTCBF773)EYR5p!-5^ynGsza-HJcz1<`E=goq3&mz=HssFUoO(vX> z6Xy+a*j3~N0qQ0@f&N_?8Xn+<{)qA7lKsvz`H_1VtaK+*@m#nS@cXLA=5dSTr9S)paq{EmVQ}D` z2fM za*~#)mKVXW%$cLYx~URMK*KVm0wj5aA7oDPC88X#iSnOCqH*tSE(zC%Fy2_)=ItvS ztLMBTv>TDhMPtJw?Pd~Sd_9}dY+=F9rmY~vR zD^vd4*dj?J2K0C&N}v)M2b=^175OkS`LHEzBsCKYH3AU>t?Qyhl@KpXX|Nm!oAQYX zV9c2;+{veEh`F1t4Od79>nmrNGqdMf6KsqGy|Wd~ zw4!(?!@Y&_cU25kJmZKo%?<)edOze$-cw%JEQg3q14Wi`SPO8B6OBJyBdEF~%?j7? zgK8h@jFvD+jW!6&zjvK`m`Z+FeV48119c2*PZtgO&bI<;G2{fgqX}Jb5aqPo;Svl8 zvvsHeH#4ifB!w|Gh|nFEIb3+gop?$2ls%9qR#BpkOm5>O$z#{kDrA$A^GnFTqnN-4 zz-d?^C!v}B}?S2&}-9)8mX0TIcv&NUDZ5#6KyZZP5^$8Nru1+#J zn$0O7qz{V@vYrB2f|VS~-7?@%v-TQMFaVu(GUu!3A;2Rl{-}$0z_gw$x@M+@q$BpL zC46O(q zNU!Txs7j^oW_f=RKxx3+YWLdjDD!L_OwRh4qyW&F)+&~G2STsP%oPGI6~Nfq z+ETr^9voG*4Ize07qV<99Zs;?cv2=E+84UqDlh68PMn2*5HwjnGH?B-{gosdQ&rsZ z=hAl=fUKMYbjbNvL~*~lQT+ypH97G+*mNFjHBk~v=7RGd-UU-z%UjK($I#r<21Jry zXFtJ0W~;Ul-)Z@A)mx~!7B9-mP~SjqOT*n3wOg|9NGbK2nDi5UOAX)u?!nkvjZPNt z`9zieg2~!O29MDN+L!#q3np@FJtq}j;2%JaB>I7k9%7s$4_jS+ZHnUha38I*U!2{`My_YRGys6aB-Gkd?D>8K`6aq^r057?P=LCr zJrx0n#SY9TERl!PfGjAYwKdB_M5$rfQ7%;~`paEf92!|++4cL@HnohHRh$dWm}RSH zts!DOw1;l+4Npyc`|np(3GiYt6~xmHjB|uYy{3)@0etXYG!`=Y+wv$aGA^?kTK6^_ zz!|Az&K>PAjnp&EHwJFlh`4Nj`g0SQ4xS@{;-%k^PUz4?-J;cHUeK5cB8}m4RWr&o zXvXMPM>FNPf5{jhTGbrFmBMu64Dk^qk9I?7H&33~9TY8vnpwG7AcozhVH3kTq*E5F>I9H2k`Y!@- zdO8B0*Vs7Z5OSKz`9i7gXlazKsDVBhGuuiM<{>8pF<0nHSs}Dv!k0Z8iqK{%uJiu( zU-Wr4)p<29Tu;rjY9NeplS_(HKoN)*p$Wi#i5PtoEy1AW_?Djjr78`655d1r%d8Ch zYvn0ZCX6guntvqzg`KP<{Q+ylDnGOo%$y!Z`XHf}KXUpU3mJNG|1H23r4NMC6{q=QWME0RmTWQl zx93ubS}+y9PK-L+pIFOQFjEeLg(F~>VQ|~uUE%^E$fH16OUA!#3i$;u zp6YRm*XN_i8etw=t^Pyr_X23j0eY!_)RO@_Uf-PRlV8P9{_6ZfQgG6R#yFhziIW{hxuVU!%L zA9dQjZTNIINnqS*_=udoBE>e@KGkJMUdMZCSyZm~z(m6B&&3lA##P7oMXlc}%~D;@ zWM3JX{gfSr*R7Dy%diDza*a_X_T)GYj$>qF{O;evP)<*$_uiFDscYi zT@lt6)yQgI#YgN))Y7K%kB>{j^}}#18}8gl09Z9IB!sNg(hrQvGIMS$6)MPclrKTs zgrQ+CHO3fQ?BPNakq*z23>mm{8fqx%4$VpFBM%-H#asulC`}~1#EA#W<(j8$-<-G;0zAYv{ztCV%l*w0=aWbuu+OF zJpzV{wRw0)k_JEJOCY42fpMyd&xIA=4=^cp2Vqf3_zj1|QsotR81h>}J#kfd7p|cM z{(^Y?jH#Q^Tnwls1`_4-dS^NoP_)iY7Y}|Fxw3-U9mHq~c?dpoS$B;ZKQO0HcBY^z z$vBmvwhvJ|DfEhp0p%(L-Jm~fj1*-E?R!;bz?5{VkjrM@@z#4xqHM{kNGd;mS6F%F zZt0jfum;#iA(S9bw25*|LU*Z(?i|9|7vyb;_<65L5H8J*cV z{O{YN?7&S){90zb4-&FSAzet8G1lq7a)6iF!XmWjufN=FMpBkcgk&YwD{^J{_bUcB zqL@)%=L|%=baVjfhWhvW^g*H!;a67mWE}Er?2IoSFiFivyg6s>11;z!KpdvXI8 zl=W8gt|;-vu(GKdN*sLh;uMZn;sZ%ZWH{se0?E@IhA+d2U9bbm$sI}{!-&1J1J21E zJEPQ$q2`7o2ZF>9c$-@3PErHervj=~Qr%bS zg^pa%nf3_;+@+@AIATTH0i|+QqewXdpZZA7jh4|8bh@#ZekD&Ks`mv9AO-eu!$kMh zvl(<^TQYszA1l)~E=rET`;HY(NR~)1fI%{t^3yp6IyaUMvyE8CP3=H5jwH!2tz(gC z`A==70#DJ16O3|lNld>kDeO?*25HB@qmz&pP$_^9c$chKq|r|_Q(A&fh}Gb-(A#K| z;F0xeV7eD@a-1x)2GUnafd-D5P$CSZMPlR?K$6#1_*0mhXhk+%3>dfJp*T|+V)C1v z2z>r<%{1n{-gn)q71<&&IPtHK&SMsIm5=S{*g=U#UMR=*?UUS)CQox{`V z!yp>St9bR#5+Dx6xCl-I_Ub;9*AWDR<7QaVBA1A)Y(zGHlwu$ueyRnS&7_v11^ns5 zeW&vs&`*#ZR*HmQZ`EAtd%3nj15G^Ob|xK0C|0Rt%&4+iU}Bo}Y$ijAHX%Vy&7i{| zG+yiV91D8aGK(c8?~s4k+IQ+Q1=s&B>EfG@{fjvQ1OP0kQFPQ+Wt|hG-rA5;$I6_= zaV6LQ=CO{sSO(jD5aSRjD0gdA&A8C_h%7idzf)t02LAC*GS+;Or8a;{dq_z}OU%PV z(M1m?_*BceP-ppnw5s6w9Qh}eU5U!rRwaZuyoLZ3Ovpp$bybiX=(hx|mf|5Bz9Ru| z6xYh-Io407x%__;k0X}nF)(OOD8^HqJ2q;7W>Y^&Bpy-4spid;r|N}^0S}V6Z;n3? z`-z|G)F2PJY*8Jven3F20x%$bXPeD-`|e~=KO-PP^F{DDv}Y@H9YGmap|q;M6ZN(* z2?RW(CjO8*@;#hAfxTF+I2tK~$DCNa<{5mxWuZ+Zn<`+cjiA=mvlCRMq_6{-qvg~O zqMD*Zcq?72Og>z)!z;vIL@yKU~O15n8 zI*4{OxnL#(x)@Y)IlfU!;=8RGKN9{7;VCW6`<_adl0WssF#5b>iKy8&KC>y?AlL%L z6*1H3k4^e;grD>J;}}z5#zyK({yd0B2mcJ=7$5U-5MieW<*qEq2+@8uP!cA}>a!L6 zN)U=d(0BJ%>Neu*a)b>~Ix@l3{h9am8}9|ZQ64H4ozlWmwq7ne#i?PCUXUy@x9=k+ zO+^J3vz;IrQ{4$bvo5}V#L=Jf(UBlr`8wl%=YDbD3@RW#44EIuJ+du{(6JrmsRG2zJIVr7>PAp z8WqqtLh9it{fN36g-`27D~nJ{NVl8^y~(D-v_yJ3fzn94rQLi)Md)GY=(8g3jECUPad9M}%xutm_Qu-7uK2mMzW|c~ z!y`63MGJEGH)L~obc8mVeGnnqlq@XTX!w4L^~^asgCV7yF;0ZFnu3W~+d&Ok$G>Y| z5*|{@f>Js^S8oM(-%^$HT+}TTa5h1nx23j=R&`iIfroX;=HO4X--+U%{1`bKM2`&b zVvm1mtU&&QXGlDZyeZBiZ*mc>!WDBdt)tVT^Pf)tv#ciRh6PmU_%EXMz47Su>iR{o z#e(L;HR_@1*Hx7*0vLM{IwC~=TxOp_<=8kUn63zsXiJwdD1}^pHCy6#*1jk8X z*^DNSg-33~3Z=}2&ay*DLO!M9?(%Nb#Ota|1u@cfWA?eSY_2Kdw)DaJC~e8yo!?iG z{g3Z5DuCV!*|dm!M>KjN_l9;TfgL5q^1_gJ)Y(=YJVSI?jdqva@rP@z`7ZL=a&Z&# z9k4{?(O0g+obtfV6v-dbZ@yca^xifaZ8pa}GMJN4vfO6y9U)sLZi-wlaK@VrXaO=s6wqBy<`n~Dh)BV zWGxjL3v~%zfj)ifPG(3yvJYYts|#hPdD%jJW!p7ySCdgVUw z9>p^xS-jZ)4Q>yp#(?w5>8!8X%4>y`F!g-_Mk&oYALJn6ZBaJ3bD%gQ?RM|H9BPpr z#v#to`+8KN-AT*R3rUnJ;xr%lVVd)+SeekOTcRY)_LQh?kJv=3Q{RWpiud8?KGLFh z&dHi*fAk;+P3b1tW?;n7k7AX&VgLkUVETc@4L(`HxO`s>D`scFeOlMps2Gjsq4V^> zZ8IWLcqW;oLwda-I|~}^sa{xT&rCz2=Tkxh^PdW5@lZ2KK)kBWEUj@rx`v9*;HUv$^-)?E zxga2qu92*?ES}^?w=LVY99s!f7)|x3Y->bmN?s_RlqvTOZMs&O&5w3OMSQA+)p7JM zm?gFSBRSuQp{}BkeZUqzW~*_6?QO^YeNPG3s7Wt+7kP54w)_{yg>n7O>m57p8XM!H49;0^36u4J^&Pgd2f9>*p&8HAa@SEJ2OZP;; zgEat6$_6k5mU2vPnZlbMzT=ClIc!0#BJS4OpOGBl}|h$j%6Gl}w((*B1lkXnc8EmWfk8qXwj%%t;3G2BcCW6p>8%IeJR zVw8mM(=u=|TX8Czz zk@yKFeBx{wpF}boSJ}j3{gu*Bc@M=l#n45WI+F{$%wyT?(9x0SV%J)UX&r+0;WQyL zky%63P9>)O<#>qZ)pdcg3~X|oeE}QIkrQX74_QHt7 zkqwdupw!mLS}FitW*DzO(qyVf*h1AM3UgQi^}({Fa&@Zz`~<~LS^P{bw*3IBlRLtE zLEa#}Rv3wt1`hT>VN(gRB)Ezhy^C2K(X@f)P|j7+E(sCTa0nveJplvx=<+n?hafKE zZpw5*;Lmk7l}kvN6D2uh!Tq5H>7XG96T8_Q2l}E61=f@;bMoxa!l#O|sGeJ#x7&C# zdI{-aC7AUl`1HuitTmk_VN??+^@i$8&@zxcVTurVpjcj95FYb6Cc1NGA`o1Z{^ub{ zMr`>11dspwRwi@(CC&pIe|0|JFnUNyqvD~bIRJNx9qWpj& zH*JBm+p8qkQ&dq5oY=fMMETT;-wtSu#nUM=B*iqakLJ{B;4`X~_-;;x*<_bC5E4|v zOKtOFWMYniwY|1XTyLON%7Y)s9FpIXL_aYh{&;{5Pj|>>P=$X~PUTVm&7Ka7b;ER_ z6u$}STA?Mkp`U+qM-sf4Ve%>hBcZQF6+ev>l43yIDGZBSa&IE5akr`<#V(0rswdn-CI5=Q4os=?l+wW=uO;y~+R&Q7V}vU}k{|u~o`V zaDa8=jKg&ahSx|#8(|MukJ_4=^EbrjJVGfEm$4SHz_+MU`lLxBJgH^GA5i9rEbE;; z(pISB|GNumMZG55bsss0vcn3oM?)!QTWiOux=ZuE8hd(M z=-?8ue_SH&O#*I?r0()U8<8ZizL^_4ygBou-A^4A6wc6|?_^{F2_LSzyQ^F5u~ABz zAh}iItqKHVDH3L6@dv)X>Q+lMs;;d3c&JhflEe;XNyGuM$Tqn7_s~353WQC3q`n|k zjjq6nIZ9~>uw&SMRfYS9DGEDta01l)J_;r`Y^e{Y#fEYDAW=yc2!XH$SOxK|1R^9P z)E7cIa|k4jPsJ@d4+jL5(nJsOU6&-A$nmIl11D}nTGCe4shQqVDSUhGil{=MvM3En zAR9EP7&4B5>)Jfh=hTP~z^ZJQp!`(a*7A~+&|5{x)RNM$`v58;Je;_=QVseK)sUK2 z;0i%Y^Pe85jnkOOOgw>U8%bY(aY>cDBoc%yv`YmU{d+D6uQti|rK{f(;_entC7cLg z8M9G4B}NB{tp#a(UhHB4gs<)zWgg|6;>Z9(ZNcQ>Q8KsYuQUz)g9w<5eELNH=X1`m=AMIIzVd_oFe|R zjY6Uk(|;v;VTy_2O7)ay6jG%#_S^(B)e%SfWMhzlF6Mc{c}CTt<3jJ@gAyS^wU?VB zNyi4WROV!w3Mcs?&zpk?+a#YAy*eP5u75{OrOrEJ2F@4)^_yUnfb0R8XZdc2-jS@7 zp_y1#tSyFNd{AO@n7nMVJQBNxTP6ILPqn8ivJobIGoR+==D|O6^8ztABz1T>a50h4 z4osYoK3o~SPJ>jimB;p=jS{B#l8w!eP>9?rfggGCT~&R5^vb)82s9Vj3B0i6KaVRS zXKaZf8hFKK--`iIJ7h~dW>z9x6@>Zsm~fDDtF&*tIfVrhy-r#lXEvhnTjfwNH!9}1p;>(Gab;-)(rhs*ns^Kj zDJTLZVj#|$5rH=HqcFPc`}YfNp{JyA2rE!xWdN$su+1o@@{y7bNq=YmjMRvK3;@qN zEx}axD-2Ex_sk22gknUjt6;MhGoV5MC{;{N@*pgp$5do?VyyN=9{jr)HF~no{h{tL zBONIINzn@ys-^(48byU00(1nLCNKs-dZIG&8#OGU0eBQb0z(CsBOy_x=ry*Qh9%<2 z_q+9r;@oC6r$Ahy+ed zj7JaC6z+jB?h=bDA5|Sa?pER!F&2?8LvM{-`|_!v`-#R~TGfMh1Nx&R0i{VcpqB1!2vr>=qhC&(|Iu;6_l=nvr3X(VX2&lE zwaqgV$%Ri{8d?rT2UJhda)h(N#bMHYK-5LU_6Pz6=DrBuSiEK!l57u=wef&Jux-6oP43FN8SQ)@Ww%QjJ) zv_3^^@GPDy4P-{s;G7R8Rt&GPqO*MndKhxyGKMYjMAZuJK!V}sJ(2E+Ng!T@Z3pWa zA`U80yp+C)s0Jz6R2ts~=wlGWk8WVD{^?Yy9u(m=%rQay>iZm4AV!Q6U`QM6x(K?H zn0WB-z2!Z|*Ogix7KSmHBA`Z~{m!@sjTI~8M%{%pbsxEof@g}y&^74Kg%+-4`y>&| z(#(iL7QasvQddwL)Ih@sPcV9NIS-D7vf8&;5v=8wPX+N&5Gn9O*h7d)VN@qeT3X)fA}62 z;)CR|*-wNdq0HCnItrKq$#)s;)J55&$>1!uc2N&>1L`VWPU`UG%tzf zZn}DYiuJfk_?T=1=SCf}0eqv1{7jOn4>=N)x1oZr(ep0#cY5AS@0+P%$m3SgiT_b) zw!?ojFPX09KoiRngE7@-Z)cF3Dgizf!NUyApipaE&O;l^hX@llDIwLpv4fdMxAZg@ zSr}oo>rtd+_zQv%xNg46G2==}Shufk(=-x7Xurny0DwLFm;qHX|);xj^Y{7eMmr{&NF>cV$4#ey_xr}Kog za!4?+$c{TK0TE)`k`yrZsW=Kjz2bF3jy5Cw1yom;MnFx{ez^tG+n^0RhCW}Ti=g!Azey!G4-GWIM~_A60i-@W?Z~XLO2ts%>U3=cH?>_+2oae7w~;Clk-$c zlA-GAo&E_bSJnvp#DX8$nLyoYA&Gb5pOgv7(H|?x05ukyL{5=dRUcx^I2G*gP~wFf zK*ca|gd~v?WvN;n{h}|U!l}SSsx}Czc4mCcj1m~UAsW9#Q{JbAd#)7D07{o-QP3^* z>TaiZAF9@rRS+TMnA@BvCGG?%aRmP+!2ahH4M8EP%BlqvgPaHM$sM3GO5ox(mRBY4 z!J$`9prT`Va6{3C%28!CX^5>&ZQ-*EEe8R&KB!A zY`<}TdhsE}BgKiyO5e{H&Y%N+^ga?_k8z@n5xEG?qP0qQd9TvC`L5Gw7-k;jo3V8#Ru1mgV+9m`ItK$r)Bdbjt!i=96rttd=O{LXPrUNYNL!lR4I7a02S=7rFyhuyl8i#RTrEAAU0iDa%U z12ub0J%0ft04tOrsH}}bunJ>F0fuIUd^mwwzAPJ+_r)BeLeqfuf{3J$wlA43cBp|F zN*4?%+Stlg64ki8YxA=%mj~ou-$&BM=)NzsNJ~Fhm@5X$))N%H?sp4CD6w{JV4elw z6(=yIedQdR`0X=}SAzTln#kY2kTON&{&Q~h=?JywK zwD6#c@b$Ft4r8PViEsQ{Wk{3hN|lUmbb z$2+E`zca=4vreR%-9aTey-tXn{)Uuzex6k~1Lj@+Sv6zi+nXwKzY`v9s<(Li?kP=` z&%5iw-#N~Gf3&C>jlXTp9Ye31xqwiL5VzC!(9g*15eAX(mMpmW3e=oJq(kapBN3{~+||n!sVE29N=Ozh8xL0TNzf z8XP$6nALw(a-k88xRkGTV%D$9yjRbK^E@&y(;O=qIhGo@B$WS*vAydBNosy~ zzpiW1{&T|0wf2$!y3uFf!tLWq#vo=#m?Mhvr#aUa5<83e`(J_?LtI5D=tqO^okOd| zfDkf)0xiCuHfKQJVROSW2{Oe-Gn75UO_SN5gl9l)wR}4}+g2N#s(JQqs+h9R9LW$K z;ds&m?5mx~K-oi2ka+_&-n?d_ztWxK5_`uHX~}{)xhuPC0n4F?H4J)k#)UF$Jb9B0 z5_o$Nt3XX(^|xZoVglm8&aYK__sC>r@*3L#;>+(Z}pw z3Y_XetFJY1a<_mY)qbtFPivn76a3BRux_42OBF$1nbu1P8o*W8I0=1DzizKrMN$n} zejcl5Qjk!PU=K9>j&%Ha{X$i?i^pFU{dSt%9Ba(E0;@YXZf|Pgc_G&L^b^8?>Tcj5 z^H#beMwcA4EwD}jPfPm#%|ZHvy29<%3m>wWk0%|9tj@{a^1+ zp@DReZ*(%XDf+IX+meL+(VD55jkuDLbWz_qja}hY!Tnm=1Kf+)}V)gDf>T z0qjH%oz;Y>+wmN&FnrUpR6XzS?B@_!?SO#(Z->53nL!CYc0(=nZHd!4wjUcVp6^){ zwb8}C48Do{m}+g8@z&(Xdfn7J5~#6q20Dr0#PhN7vFj_Dzq{rnV47E~x%KZWR&GG! z()%8*979do@-iiTsLyb$q$&vKVxRdGk}3Y zegdC-1kc#*gN)q1;ubwea*?=T;y=~Z$Z<9LIwrJC3kScl7~+?d*HM|P?821rY}|8& zL5_n@9AmCxYvQ(PHyg&j_TcXArRDnHKPT|2O1`#z>3P_~Z)@Pv_qeFR#A+q5(>>Bj z1a)sRs(Jog;{6DMn#C`RaeAH8Z@8=2(Bdwr7<}XW?0LH}o5et5J{v|~NRo_#v*s@E z9Qv?_+B7h)d?lfkAy?g-i=OdDi~Y{rsB18Luz&o$71AvlU;qV04@8W3sOE!`BDZdHd*!t477pS2m!X$lHj{_ki{kIqn0RRsk_Zm%=@nAe!QGLniibQ~Ng?s2y7 zQzZ8fA0Cw|lne5l%O&ilpiJWtKM1TWNum~NIHXqg+)<=A>$wa@ccvWYd?g-G_8QH% z{K>I$B}_WV+%K#jxN?35lNy8i&iYIBYzT7@k2zn3X)x;5W|H*+?XVdl3l#(~EEoG) zs(JG$NED)VpvZ~z$E&^*&353D`%pZ=%dB7B2+@X?qaPvbCmxE#64KA*wmtll zv)7a%swI4CK%A&##si~v@&sD7eUgzoy-rRopPM;yR)V`MbL2V1x>v-#tc{O+4WVwB zK*anshf#_un?&RJk5)RZx%=l6kk*o%-OfE4#f4qal_|~V?C$mTvSz775-zX##P^0f z^s*JUOM2S}z+wz5GJ(pj9|T;*S&6~EI5~o^>cj<#h)xl+kM)~odf~?ZbV^7$a`*uD zEW8>-P*;f!akF|qzonicboZ(yOsXGuc3fHw`TK|PoOV}?Z`c4%X2rSFEoO7mmbSjxS8_|S665@2`-nM>;kGK)X_AC!_HQSZasj$7 zd!W=0;fqfhLfD2%Uqr}Fio2;FN^3(jX)%BLtGnf`+K7=RIJQ#QU>+{KVcPXl>XpLD z|A#(mxlxvi+~}BkA03Iw(0%*5DbK;n$Fhh?1>u`DqWw>@y+>^O`Rg|6eMFZQnbuG9 z8K!9T|)g1)j1PXK~ z#F}3sTV9xGEa0{kf5s`tC3vOU-cXAybwnhwhC;K3eXbM2me(EIUCfiuZTp;li>LN# zX#rOLK0&L?s934!&TzGk^7^|n)Zc=EL0d7@E%)c#zj#tm0)tyLe)f~P_e~Kd+ql1d z-)n14G1ntfTHr7BVHJ6_wKmySj$*!XmCV}tl$2MWWfkH0E-P;OkAlm(x>G}R?F9Qx zz}v2`-%~k6>4Q@S%{O;nd^J3Nf1Gv}y(D~B$7}O)8`Uj19(pzG_55SH0Q)<}tOu{;Q+(b>WDB5r4<`10YgUdZd&>U=`N6)~dmRM`H)8V~qK&Yj zXIp*g$F9-__XIEZ8<2Xo-E-XzP^rx?1br>j@S#{I?%u#9Ejw%UyN|7Z!kUs*{tM_` zDSdv@oq&Gw2Cl$h918MUZ9mEKpzZzErjy-!E$B~eq5!EC3VtnfZ_OE(su4PZ6J z?gzH~+R=?p;AT|TUPqp#F*921!F*?x*XN(Tr8+PbLgHFzUU>n)5bJfptD>5}6D?yw z8CJJ(eR#^M=ZoiqJ22JJvf??!aNhKYt*3>B-wKa8u$jD_C}mN+=ycI>`5AeuJ%!&S zVK{kiAJDM9m;v%045OEv%N~ghF}8fLOvPsxq!vDgd!l_l7TDvD$vsJTap-5(={0!6(#YZZq`Fn}V3J>2SXkk6g4l*j;_4bqY7+6J@W2p5KQU z{}v_#UykccH)7(m0|foGfu#SMR)1zS&OBAC7G-SYGb;t4!)$D1&BQ=_Qg3x-t^ zafJTfVm}qiPyT^)6CK&ueupj<9F6<-mCZ+=hbg2ouF&_sQ`Ox-`&_rpS-2mM&86Eb zH=cE#V@+FgRNF}Cgomwu|9KLC*|?@7W1WA`!Ojs@IMo8V&5c^#f1W^CT=KMj?|&JW zm`$Mjl=Ydg!Qgg^n7Mf8G2SGRs$n@BpSE#mi0^3XcZO_sP+g-_?;VEPuS>ShY?>~A z&$u_wVP?#OC!6#RWgz3_)N?8R2Y9>-FytPr-|%O<$~C zU3tGE7yT#7DlpDxpMY=Qx;t;HlNKQX`9 zPZ*tP^nfw$buePbPxXkdv-#ko{GI(k#H8f9Mrrr_z7D`195d}eF+eHu+nq3qTxv98 za^YInppHFm^#{sd-QueGC)JwQd|UM|9$^SvcN+!dw(WO9$|w73gc<9|HuCiJ=ClxD zwo_?joNu!wGtaL0a66ZfGTMFf2o?t!o^}02=IF+X_MQ19 zM1COkYQDTL3f_JFkjvb7z~9<0dz6UO2mfJ*g7a zCwtu>1T|i)I&t2a+#QyJx{}uENFPf1f@_}NH|pmCI;YQa;q%YYlpmka>K>5SzOz(6 zR%sGSyeJ2#Tm*+<&)Ji4;d+#pQm_{y(F|}#KMBkGkWBw~tOi6x0D=BDR{Q@O3`0{d z{*BePpqEtt6|4O#8T^_9ePsh^!Y>m0ev@|P=PLNC)0VGj8_LObB~1BI5gY5;{bO#` zVI-bqomubrd+OV|^3A^hi4z^w zqC-1Rn2LwcVFC7m;V6bqiWRk~)su|;7xW@{&5Ea%B5dw+9V!3*K^(#ly7dp#U&N*| z2Yr_kh*s(!XQqu9uDJVuLb!=xMp~=DlIq zy|%Mb<;|0C!Kn1CEUT|9Ci9(1L(^@Ou^;BIYZrheaJv=B+Ok%9iw>^F7ZNnxMkP>h zPPS0oobzSk_|0664>TTlecz`T9EnN735q5-AQ22BT)CNaaAch_(fK0O!Sku&XMMBu zb&+qN?N=pbix=D)idcIENpdkw{1v*&Kj!jB3bCuH8^)1&IQE4fzoF120kVa`~4m=TeC zjMH~nitLR9?w39><);w=f7Az*=2bIy&R-zZS=q@GZ%F(r8JbqTav?hXYPP~DyVCj* z^q?aI?J4>y_!@QXHg-hEGIpBS_}OiT*Q97of2*%!Yc zwHnQ%x}u3S4{JI3{FBNyG*&m91D@QO4Se$JgWM`J@V95n1FazwpYIJ_OYEvnI!hkw z5t4JX(FJxwE?wWR3wd)Yp}67Q_f;TF?Osc}eqYV+Uq-wta#mIQtr(52Pvnbj0RI6n;^81WS&(QSe(%WC++vr1`8$6dXcnt!ljBR`n0{xRkyWmOP z=ijfDQ{PTG^vxcT!2Oc!50pVSoWSCMb-Qu)52@H6>bvcw5s;^Yca65yIAaD!bWf6Q z>CK%o>8MluQXUnwHuV#Lxx|KdZEUN=%LWB2+uHbxDjER=wysxzYs10tlwl$(Wn9{h zqsh*9;;D%n?<|hxb+Mx#@*lX~xs<%=ss0s__0WU$&F}^{W%sbKb&)V0-6kt|tX3)2 z+e0uweKP`E-hc)-x~MWeXZANs3%1ze*#dC(oIqRv?&i0J+kTn2 zg%m0jD1XNPC{g>WjSEZ{k})s6;W9sN<-IB|XUyJXgPlpsM`64*pUW&zp~;OfG<&{2 zf%|MHJJ!ImGo?p{%{xruy<%=E`m;W%UEsn)&abahq59DWzetQ6&JG-0YM1vm-R}0_ zRE5T#eyYMX;%E~MCaOHtm4zPF8Qecf%*4hjWe5%Z50*k=C;~30Ng`6n!nZ?pHaGWA z#(t@#*Rok_RMA^(UruJgTUFZx?Z0Au{c^^|uPtkC@-9Nj$I!xAm)-xkjDz@_tPWp* zlaI1Q78#bcd$bzas>uT*7LVdJep-hoHw`mdMO{+sw{UiBe(o9CY!>7$7 ztz)w^Li7cjUu^j7tSTau1W6k5=r8zMrsZeMxR;%jD?gCX$;JNXzKtkKgxgzDNi}rg zri6&kj-K<(!!emHlR=SE?=Pl5nB`aOQ=6GX>NZHVtQ!Y$>67&Sfu)il5eC_N^1)hh zS@~(4)-Qd~4a<%<$&w;lgk=5aPpTqWMhYBWhhZ}y?V-f)Vl`v8aHfPp;KFCfffAsM zO36wqk@(Y2Su`74(${6fVXoK>Z}iur&pRT|FstDavGJEg^a8Mw~fP8#dv3?5d50IM&+$)LmX{Xz=46GgnTMSvkbpdCCq0yi49g> zPo!@GG74$ccx)cU=0$H2mpUu&hG=6kXKjWP_d>UC>_OiaJLZ zAUXW-Eq*Oe<)9L7;nd%Wt3sa=>KblU|6r8Oiq4el(vnVEu6nxe0rZ71p*3?_TJX=k z*RGY!V9E_)t2XzEEipqThXfAfLeMNS2+%P@7=F|Rq3&a(njH>T(#n4{$XDf~Bg6BI zAI7FYqk^~wS@xaTg(y`sNABPA+mbU0Eoa}Ro+a>871F(Jv#tsqGu8t-(uCU4a94Lk-kSl4&oJFRS1)eL8Tjz z@4l?WA!3L-={GZbh5_lpt0H!0>Pz)q+ywE<=v~;5%daXBuZkZm`u@3IFpGi#1fHP? zv+;@SA|&1CleKd3S>!<#YFBl8z&^cVWM(wW%AJsX7eIiJd5I7zA-rtf62B(B5{HfyJJP!lEXDY& z3uP%?SE^xBqQln?IR5Q`$yFg1Tw;+RjZG>m!h}Omj8#zjky-Z@EVJJZLuaPhW2O0& z);{|-wnW~JpWHHIo$8mJ=+-~wk%TFMGeSKc^=-eDsWHEi+TuNGcAU3yNhdNB?5~Tx zpO2eL8$YL~e~B_G*(q})VT~%<=M`{JBO!m4j>N#cad}$MBR@98ya7l1d40cW_~&TT znrO0PUAw$!FT#~F+}JM4$?4gw^uLehw~iI|WpjDi z?BVX=KMLUnZuVmBI2rMO_67ft2Uhv=|4h*Th-zxdC1l1pkb+3}6gUsYE_ypJLF%`f zGIDu>2In+ijxFc)yfJH`xyFlUOncU1V0#H%;-Pq_%1g@&Gkj5&)a6fa`ZGtxL$Rfj zNc4E}7l2_^TJ}5Q6eqCr(7Vn+k1=a`4?GHtExi*n~ir|sm93aPOnGrj+?I=;Is@LBx2CQ#a} zh%7G2HjtA*-!OTxlmftJIAr|6YvRJ0P|GD^w8*BYK$>k`uiriKvx3mNv!C5}q)|XU z&K1*`kI(y{MU1>Ua+>E_Z~w>R?@BJ;r7&>7Wo@iGr3QK;5<|d6d6lTo0zC)>@YgI7 zo=bnzhN?|{^uyj>ymf`io6`G*p)yaDl!N~-fOi0wl=ie02AIY@kBRbJML%f6f+X%H zT~oCAQLjDKmY{9#Js1@w;NmEa<$-l!c==qts6+sl@gVJLPVkkSA6*%O*34%6n>Jd` zoG!I!GcL?PCa*pPn8q2<%3QT_49CkXFLzxtRXV%%Fn6w?V)|f_?afze>yee6 z`PTb&^vidT)#SrK`I*Jv6}%;Rl68ED+FXtNJ1sun8rAiCx|L0LZr>}1J!JM-+P;Hk z^P72%%EoNjiKVK(hp{awzG2*sOQGp;Cr|K9tZ{8l;q6e8;0!@`x1$!5`3;NGAr1mO z&P`V89ifohA-MRo*lx)RhrE|kpR}N73y-Q5v182h87ji1$avI=QWuoIv2zP&WjGz( z&J^=t)W-aj7n73UN|}>qAEA5p-u%M0*l1BO|7Rd0Lzz0ha^S&y{kt7XPcyorv7g(O z9C~T*&aUsZ(QS{~m?2k-!lWoc8MWDyfof9^U)de;X}{wgYentSig@3zRN)JP!GCa7 z5BxUhd{&ZJ=e~6ueDl2Ls&`+QI6oPY2x*YC&GbFqROt{6 z$Gf%hh9I2nHfeR_-&>U~0^J^Je=hbv#6jF48ycdDnMCe;@)ow&aJh{lUfvdo@so)# z-Q8YKTruIEJZGhM3Jh79S4=X#ClhrfY*0u?lf&LloFqv`A6(y9pQxDm&=@y+omo_( zaHEyVU}3#bliaCDbOFV}75c0`dQi{*!l-fK;dwHcDXtJzsbea_@bRmO4L>;BnitXZ z10@b^K418ZaNWB5FO@a}X)ALl+@%tiCRzPM7YriA;qeh2{2Mm-@Ys8c_anCSwoUS0 zZ7Sj`HeG})BLTMi?~EJ@TP51w(g!g!yBmD*cFMcl)2&5iNNDG|Ud^X>ijlQWTF+b3 zn?3l@euOtedf$&b$h+d)IOJRJCjCbvFOr;Dt92k_?pP0x@ydc^u%k#a^Y`R8WtQ>p zS!U_uaXt<)$M1Zot$cbJXIJjRx|BhcNaf>wGqa5pc3pR*7t748 z=f+bZvpSf|o;^8`*Mq>Ilj#KuTceEr`T0h#C75;<=i|qiAGtPnb<`_QibpF?>Na=J z4Y)t=I+8Zp7@m9Wi+U2mP1%;pbfvqw^|S&_*lyQ_#ZncN}GD?*kRS4$G?> z9Hg0eGHX3q$@s|!X-+WyFFWjM!;M|_cN%9}@@upE0V`GCVbjaUe57TrBys;a42qqa z{AQWmxHb-LW42hxJ^k+Lf_Z`wnG+?8gNI_&-ZP)}t{*d}rNXP~e2R-U9e@sp1(XRF zWy~ktKOc3f?3hv8uf;|xh@F_uv?dJ@Ppp?(;?s&e&0ffvNZ>}ud_gsH*nR%Z3;hku z3&A7Kzs0u7v;G1u)XmB@>LtY0o%bhrl*KO8RsP`p1&lwB8^7iXn4zzA-GAwbkP!YA zN&dfe-B&Uqs*+C^{j;1~m*VjMVIz9Y7N8bwiVYdh;SKrEQGEIy`^T_$*Rpl|L;tAh z+=b%GD01jO8$CUdFEzhqWYf5XUARHyt6gIQ_M#ci<$Qcz`^#dbDbAxPFJQWFzvCxQ zF?ZQGK0GMSNJJ6h&^c&aRU0qMcxIQ7K;S^4__BqV(G1=gbE0((>73P? zp6X>W6vlqa%dFls@+Ozv?31~dwbzGZL2qyx=ie;_iCOChWMeyG&arK}5Ru`musclL zraGx+kvy8uK7Duz|AYLXo11$hq8KffzI>SUmCtL=g*H3-^qQ=sRRiCUapiaHcTB9Z z01ejmKOzbyS%U4Nj(6MGthW_6**@X10J1t=6=^3r%Fvgcq2Ik7JeSEs`o5%`PwR}A z$YfU&OqgA^S2xe_n{AdSJdytwb1#h0=!#6Xu^wDCdw?IbbxYH^@WhE9Pki9p=CICD z3b8*VTR~Q5Jq5&4FYt`D9^NK>ygc_`Z^RS~@A{MZ!>kgVn^G_h7R3b``>jm?@QZBC zU*2i7^7AWM5M6Z(m_8*=!#$|whkvWmUyuI)fa%kxPKApQ8E~aymkM+#a^r`MHa>j$ z;^W^p2NA1?E#2WoxRmhfNgq=`6+$9WD9R1yv?SP$qX7=bh*WmOcUq z1qCXQSYSkGD2nq7dOQ2X{bGOAColJnJo?F1M%4$!)Te%kw9Y6aC%`1Mv9LbwnjNkRvlZ9q){La5z3Sow#~EHdp*d$J~(OofU!&>wblaI1so zR{-&-+v?bi=9byO58GRGjtf!FsRP|V!!u;-{{YRvL0HL)?5N@n=ocSFceUyenzMyq zigH7e($rW%PY?)BrO32ISToZ)u7X-G+&;*FkGg(Q6%1Q}!dR`n;BdfKn-#W7ZYkjx z`+A)G1{RRbObziQzs$HN4Q&Bpctl#Aa{(QK*kx)G?&v5J-EbQ$rVpsiR+Dm)&8p;j zLC|V#88(!NsL#-|vl-5gj4v~NrLFlE$tCe)9In$AUWLI}JEqd}qUEo_);0Q$Q zF3;E_gB|y|8e)k-ii#G8qDJ)sXy43-L@T3E@%R_fWMf|pe=$5w-1E5y4Brb zexWTtW%C4MhLL?F(6|_fgp@~K2jsk^8?SrwlGjU{)9iiYa=8qCBo{Y$hLbNv(ois& zIaFSIlY@xz_!+m~ukIlGb2;7D4{b9L_3au?rh3_A9XWEku!HkWL#t2^tdVDQ`Wsw- zZ&S@gd^dmu82^ufQq^izslKV-V6x$RayRQtyY22uzwplS-8x+%f( zMq?t0Gfre-zAocR&CbYx&C0-Ao=q|})CD|LEEbv*#lOt>sr(|@VwmDAU|jy`xzh9i zrHF;(JLvZ`dM=3l%kVQb+w7H}jU1L(Yhw81ODM21@FmYH6R*a~l7vK>l)l(;8En%8 zS+_n_6}npl2S6he>q{KRW(O{p1&I^F`+#Bm#D!@(w-3f8+djldotNEk$=X=EbXc2Q z{{ZCdeu|$@!o)PHwT?3>+hK-sNbbq=BNAW9=`mSVugge7P@IJ=Fiypbb)mB>htL}$ zTe1(i2<9u{MF)Jl(myBYPLyKLc*STQnvPRhcEx+OnNPt|tOtQ}xeH%HXb=ZbU{9l1 zCX7ShHwVKNT8BvURmSBw8Ub#z>9}lK#}nVzv>m~~FHP!bBl5}Lq$a={m*AXtfJNu5 z1~~S}Y;(^y=~EX^t@>?KLaWF~gf;VQb*q0fQ#c6&8Xjh7W66yac5$-ljutVtXBzx= zPH3Nanm@#mWYEVtEc*nZbb$OX;FNQfN!m7*I`}Fq&;E)o?ejll?gmKWwXFXDwwRdF zxNg|f>LvP5cuH$KhAAXT$ z!qt%6cZdLq{V+_YD^FRZg|_A5lgMJIcbu2t#txRf{`DekTGvs7;(P0i0GZ)W^91-- zS1zHieN0(apF{nABuox)7PAP= zy9`jVtqkjaM8CS<2D~w5o?*$=%3|93zgxekL(frVZ)pZCu(k+^Zju4eWSa9)<)p6% z-d)$C0`kw!D82b>X|`c3><|HMg}>GpxyGFkwh4l&!k#E(6zYzxTrCFCvlK9@VQNE& zEba+dW(}5e1nzds%b<#fL5(p))j@I720~){Jp%*mWnXA2I9PXcQ8X@9PHNF!qK3y? zqU!x6V`Dbm(TnLcGiWM;D-%ppTWJ2}>}9V?CLU1I>CkZP!tKcjKznN_&R+`yb|@^- zmsh<$Mh$GP zmNR3J)|VmBS@>gDGPN{@Oi)m{?!#t92zpW09Amu9?8kMpB72jmj$k_v-3QndY)8iS zjp#Yno=2IJZ>FL~Iz;DF+CRsg~R@ zD#n_=(z7G0{{Sc@2y9h1p;E@F%BoV6)k1g8s*r2zp|G={_A;}LSYFxx0Cy=1>Y)sS zsASLkxn`R1PXcX>6mNBL2~$q9EAHKL?CY#Y5|?+=;vws;UwPels!#hlxKgWT4?^dM zp|q;rY5xFc2cnLec!`(t@k3YB$Dd)80|`iayp}2N3X5eP|FOoJ!u|Apr9whN)RKue}*gqUAOG zt{IwfP<84IYB7oIuyd3Zj^3P;UCi-)WBIE$DxYv}_!QTQS)VS9!t7&PH}i`GH* zTb4_jqXp$s%F)Q>x210iRpku*=SNnqSw{omWut4UixoMfFH2z-=^1)X~;{vpuqwA77d9a?xm z!tR~3t`dsDYPV!}Bf@DNHGy_S(Z|;f8pE<-)D&MgWrP7MSjbodf|{|;W(n@G zyHx1RHR@kC*9^SSibpI>%Wj#9rdMz^gb7jU;A5`^Wv~hz8=g;73#4bi5?C6d+bA)Rrnvk{Jk{w=&Sv`WAD>H1pbxD z5vHlvw6L)i-_cg)#rFU)dkKvt5$!Jg--J;E?o`oI&{pSZBxhh9aZx*FV!4h&GBnr# zqU;h~;}~0xgBZErYa#YrARwfQu9usz?F@6)QI9&Bml}XE;9Ec`-%Mu8-3*Y)cPI!I zv&k&nv%tHu^<# z*4(eWA1rN{Nl|MOF|0k(f;-JqSWQb_OA^JUVuqK_Hd;53mY<>JO*^=IH>;u%`^#s3 z4cX13D|1B_z@V{OoB?DM`_yVh1h#ucgp&>2mN?8u8w=FA7c0C}qHf-X?A?LZH<|p% zC0Sm3v1szItj<|r=`(@`AQ$zPsvZacd>%-Q^Rmc%8K**z&<)!fCviy5Jha@4BZ139 z9#fs1`7P|jOBAv@;8`7qQR!kTxr0s+Lx(_n^x#_8VSL3AMFefQM~cpv<$dU7uUjl26lEMtirrN!X?KS;X{fb0^K`hOS=T_K?$#~fA}q^c{sJ38v&ZicE;NFs}{tzuLL0f2%guAfqw zT2>iWzJf%J1WO%)-AE+$Q_$<^>SC^Ok(LR@!=qW#QO9VnC94Ba_J_Aig?tN(^8-_( zjdhvFMQD0E0lH7^9!LV>3YBl6)i=!@Iu4|LS);T2{RMfyPyYaG{{ZKYfIDGHMsW^voNSCyF)bZjtK`vB*r5Z>$oJE6^q2%TitD-u-i4E_9^r^qk@=o0C z&fGe4vpW;9J5cCO#OzMo?M}q(&dlvcr4XGodQq2R9XNF1(T7fUr*3v9YIeOBVs<@E zvvfqGnvX5v_P7$Q@FtPa?8h2|eO|A#6j&-g%VRF0&6%IfI*?HSaun&g;%6BVt$tg( zzkCuNo5OKY-?XWGD~LcAh+|p$`epeHZc6R>6HLaFwnht9~K0`-;K}0A9kFJ5mC~^qd$0u$*9NFyw7ITw`*@g=XiaX(rkcc8N;$x za9|S9Tw8w$xiLH7Vvg12YfK{M1*|N*cH1(eF3`Q8!W;hZb_&^7QkTtF2uDF$5GayNRsa+2|H+@Gp38^5mjn zSg+LxTMVtz7wzrA3zs!5PHW3?+vR-o>Gp406!;nhD0)H=trQ;Ok+U>D`z4WIWM3c6 zf*$oXtzmUsM?l5Rs$6BZr`mqdRA38>-KuW3^w} z1<26&wc5mpwVLIycQXdVZG1Hfo#K_i7s)A5${;0`%CU-ZQ1*a95WO%(>+_UNiJx*- zbp*maa~4qcsPjamSISfHn>rW2T2f_X{a7arQyo^K*gi0fn_+&2;GwxqYgk=Z5kax? zYL^lGAH(@Db6KXftS+mFr5w4bON?uE`)}F^2nTU{wTTgHG>r3M?SE(_V=&gP!X#~s z#rIMg{T*VpAskn#8xE3=9&VN%2*YC)eF0FbR7w=@J>#`xctJp@ET_>##H|;^R8PuUetgYDzJ;0mACR7%L*y z5sc8lDefwL?uO&f3+BWY)_VQ1rWk%A$nAMJi~g!rsW)gKLt|0(f>`jv5N=Et1S}+$ ztq2DP=<>;F?a_{z-E^*j2)^EO+nDmCruR&Hmlfs^2)0@eM44iRAK16|$A(}a9E;Iy z+6@iFwAdj)ll2W zGpyyjMucPa_8t*tvo+O2Zy?UMx9maU5cnApJ|EEf!W)P&8~Fa_oVMnsCf?igy{b)d`a7b>?BC%RB*OA@TA&kPjpd6XG_ zg5YY%e>C_o#FH8;1-Fo5?T?Bsj8E3wctM5uXsj0AL5ZPw?6Kp(Roe-N!Ci-O$YH5f zpvhZ+oThk|?!|&j^f3e&fUFUKAPqE8Wx*c=yd<*Pn}m6c&;e&4rd^jR-iA~zCAQK* zX|)t|ox=)%JHVILg$qRJfW>C1oFrU%w5U~uFWQ}tEWoijj|&cpcv^8Y?HtK;9g^Ai zpPCQ+LTcr!+cIPzQ4%XDMU$1W7f%9*P0E(1L)f$N4Hp!K7BJ*bG_w@w2V@`S8wG5A z<4cs9fv2dvzzbEW)0K>f9-+^kyL>e&h7XMSaHZ<&?6Gu`P?&9 zQc_zO);(Rv=+@$%rET$0bwSFzRVm=4C=wvI3Ur0)+7~`u$7e*LfIYI6Z=*ax2c4OA zZNhaF1ow1Pz!MY?bj6@32LUdxxa&5c54y6x0E1LLlLmmG90al+>e9`C)?b2Q!v%g>6!q*N22#x9Z^>nHa47IuP6}n^0zyl4-O9Y%yv3ekD+yr z6)_NwC=Dk9QdPjEc_QX%uJ1RmxnRrkw;MVj3<38gLtx(&1%gkNIGND^U=M7fRj_Y} z0?YgUm^{A(Db-D@;0aQeO2wck2LfGB^ugr;UEdV;2~37wV$c)=fhjdB^#eh+E|~66 zQt}(=8f_2@I<`xlzNWXGm_koPFDaRJ?sV078oG%?#w38X0Yq42fO&9$!!`RGS}ZL> zuLwyT&@na!EtgP;!hW!H1!2dsF6z3E!2|yQq}YM$r7|Fr=?kd*(gXBxW)b}TaGlfO z#ujpk7v*XFps zBD6Hx8GOf}pCx}avOJ}VV@)ByL7R$kogRO28XwPHQ`&Q3 z8T+0652QYtJrKA~q9U*^9+-j&4@G(pp=NzG=%FoUJv7RN{{Vyt5Q$BnLj{5+b@m6m zG!}cWeWEg{+W!FH001-DtbB=NN4R{GV;|cGFiPI8YVWNLWdgwmOZXlm)8Wk`tD9)V z`xN_Eq3X_#K4@15c0X;n8=dS3xO94sW9_bk+3Mlq>`uUTMpq7;3 z^vUhV$W;qH6VRuiA<69MR9@pmtu7UdMRU9`MmQ2fShb<$S|!_{TMewbBY|23tISVK zymV!X04u8SJu@vk(xVdoq4W^72@rVO*y~_IZEvTQL5lWK2=-LhwV})1w zfB~pg&bTs_=&3at18W2;G%g>XLR>J%bjDP{$9*%*7o{}re(6`PTV;fehnLJP4t~#5 z6F&*iHofI7W?s}>h;4B(TsK2n;MQin*qYS?33qcQ<29{9UJGLq-TAV_$DNcRNCsWS zH*i7=gcY(!g+$qKVB&2PI853UksoUgvB(&@!sEMmRY)A8w6z+(^BQ#0vof3>1VANJ@r-Y<#mmX_EmM`G@UO0GS%B zDJKCi5R{Ng8ZCDhI;z)_0a~|IB5@iTp>_r$$!|d*peisVo9pN_!#0-O!7M7c=%iey&q&3o7V=g6^F4-*>J_vVmYaXCBt+A*iAIG$bua`I z{!EqdFZjd}szWZ;_#(Qw?Y*mML@;t74UlpvBT zXty|ynElMH*NxDV86#p^T}2H3FsEmPy(wJFlf(NW22hPL~&1;QsiF2w04~UP=eKFZNO$h7F>~s!yoLT z6?ZRa^p`uJ9s-={CE~Xn@VTxE1=7z}65Oo4h8C<` zjgd7C*{C99v?wY`O;a*Wlwg6t6)rx+Ffs}vCJ`x>Z`Q@EPzr3LaB(4NG_YM&O3K&_ zur+~LlO~lj@S=N!%36=!Fx{jrCagQn0^! zeF9S}==Sw37Zs?!>*LGl2lU4??CeV}8YKk^fe%=)LqK(8XpHT-_?-vH(>M^fdWNE7 zGSq-E54gignl&J$lPaL#%EpIi88t;hPeACsa{0|@?3ht*7Lc$lGWrfOOwEd4$=R|B z0%|Qmwq_`B=jhkuOHvvr_3!uNN&!=l8)0Wosw5Zgl@42wEn%t+qIX3{ zFJw|35?6D#H|z?@X*-mNw5+n&dh*MKuIDv4V7K+PW%YEi=1fazn>R~bGR^*>_&foj zX>fSjgw)ePw7>oJB&14bv6XklC)A<^bxFBLdR9_`9i&gBv<_Ud<4`hGL%Hab^vpC> zN_N^>R*lj$Rl=r6?$U{>6k>>P+ypF>fOBqlgjG9T(NkllZ$@vIl~Gd$3YL}XFiQa{ zu9B{48XZcG!7;i@sX!TV7qRT^RsryC0hGh>cofRr=?Z*;15UE;)T`TRI5lB!GQ&j) z^x4sngR!Emp0-)2+r-0d)t@Mu{{Si5B=xWo)ZV?{Nx7)jU^jdj`U27_I+*3q=new} ztTj~Brjr1O1}a)joZ+g|8>=GsEW=oo4NcLd6CO81@*06ymH?|XTA)!-+ZHG0iqTE_ zR1RC3?!8jjzDC>=eM{+Sx@TBb z77=#Lm-I=_$jNAVru}9*4YgZ!N4x+WF4=FsYc8_aDCt-;aP@(1rr07vOwII^8%*Gp z?q}F$K7h7nW@cOJBG9n7e)k-I?*IS>0!l4^0|?V|_dEI=y&SA`QJT2k!mJ9N1gNF5 zvd|9TA&npC_^hTW3$n^Ajd!xn{{Sqz1K6@zu)|n008ZTrPy@1kDYuDSTog8J0c6Hj zR9ID_B|~wWKaTK;?RB)eaYFEJIJu9IqjTCk zd}mEx7Cb(X!ykcw@;AtpDp&YOZ|xn1nDGR#7F-jTd2v$vL!^6*cWVV|+y$hhImdlU zX9GpA*~F-;*S+2eNn@Zh!n$J6iwvFBiD?5Ag>J!e??^E9K{Dnhc{HPf%(9D5Kxc(? z#?Msmh!Dlav=tRHRU+)5`^HN2_eT~o#0DU>0m+6v4=-?b#$!PGJtNT=kmQsnlz}{? zqN<|-s+LeFF{@>W_ZPflc$=`bmGfGZ2%054F*=c5Nm(pM3>L-IKxF}UVXpBA$mR<# zr7*f5b1D0s{WeD-%zEx-c;w-Sr!E;NVM?x)RUKH&5p7VEXjY-is0xD4fXfc_#Hl8) z;R)LLXg5ot$qnEAp@5D^EFmQ_@R~kN1W>!&?f^<}P;n4#M*yH04;ORUv~_g{3yt3s zT6iZtaSc8x57us*uCq*(SM6jB)+p*Vs;i2ijJd0JUZR7Wk!{kfVoBs{1}((8R5dCx zu+U}>($Erv(_WXBZOnXKWpD30j@_elp<|+TB6A*M_@$rw(oyQUe?a;k*o><#`DXD@ zYU;uUMJcXo4FxF8jat3NGwm_HDj9kRw~-sBjVQ2Sj;@w8Eyk#qhz*3hlwBqnV*|3w z{{WaXuHq?0rf2Yz90m1_D{-nN;sar>#TQA2S^JMra6RUHmG%r>iX-DQ`4a;|xQ))E za)TT`b^%O4DC`Zh{b0b`jFOQTYW z(wmLclNBPHEX}@^M*fA)-sI-)!KlT`Ot!i%*vv-|*K6I;4>>_GB-Mp1JW(WmN2`f{toa#$l+bC?NClKJz}Qe3HLBDsSl)2QJ2~j0Bwu%NQs=IO*MTy zHQEKUz*N5yY$lX58FVJ>5Rs;cRGPuHWQoZeFgGTAh1g~ed20ag0vMQpPhc;2RY3`o zNQFtPc@j)aTV(LXn1to0YsMA-H-($iVa2wO52)RMGR5Dizx8JZj8c=Bm z%wYt|BazPS8!4sf7b6;zrU3S|P=Ooiaoz{LbUDBvZsFT&_ZUOo{NOk0OM}G9Z)mGt z3=${bsx{hSX&ixQw=3vbTPYwQy|J8g7?z^$uWnf#y8s{;yoitk(^yK+d2nSQE(Bud zfiG{BWM_7wG!`Knp;iurLbbd08;Ern3^{UGEEl|pk&MPvMQ6RZIQ6KtVDC+08}jo1 z02#~`1`zR)@WW2Bl6xJ9Np#p_ua;NrVd7?H12{q*;qR*Ln@?X?`%Zn2oMKBUbby)P zD*);0zfu~UAQehp@s(nm!#)}vd_*>(u$C&iOjf$OSCI5=5}-=XMj*F}H?Fk+KQ@57 zt-}LtnJdIYoCqkVEye^CiMpnpMwbwq*IIxQ$~%JYw>xhjYFY@3lvAz7L>6S-QY782 z#`V^v$$+HMo$Fq;@d1Qo1pxt{@NNhX$x65^)YZj?JZ=))RYkpt+B^ICiY@y@Uo1W% zp;SHKvBH4>=~AbIVjM7Ga-r6Dkb&K(a~z8o3k%RSPdq}lRZ?_E z3_tNkh0wDEWjBFWBn>0+hiGVm=QOAUpH>+_I0&Xlz*kj{MV%$?(oYsh_?o7fW2J~# zX48P!MxtLufU&d)LW`19cR_>HjF^2o?VKuJg9(_b1Uaiq(68YIYDgM_8VCk3XcUWJ zu24X16mx-M+GUR%2%&0^B}(AJBhT9bO#`LYcFI+F5xWy5!SCVd8o@9wiD=iWe0sP-7Vg$>lCmgO6xaM3TT51q2I3b=wHFtJMxasCCIUkB7W4 z9>2)MyLLLkRE^ik3xwa&K`b_v&x7eU;q?`^_t%U60Hgl^{{TDh>x4=r_IQXY;pkec zX^hgv{T{YZdpd?{;(q6NvF97UkSpAK&cl=Yf*t|EOE$ubbvO}wn!eD+j%23`oH;U|BC%^NO{oBZu`r-zC^M=sBHK&o zK#0clMcm4^QZ)jz5~ZxI?izv#Lq)FOpMLBPh<3vTSsusC6DBXtk{)p^QV(vk1SX>m zTN0dt>Xh2Zu*MVw<|i=&2+mHUYFW`@0;n*mQL#?7Q=Rx2od$}{K%?wbU|NFZ4MwK$ zX=i@>xsT{t+`8S>vb&TGeaK(LxwDzB(u}Au9Z-k$zCXl9Uv+~t5dQ$*PcYuaD{qx8 z-mY?8&%Ik6*n{>J-`$qo>GmO&3FTw}X(o9GMVQan~r_dC1GXnSdeAF&d|N@d=mMo$wnZ)}pk>u(4h=^Q~g85c96Wl9gR zavXJIA~CX&`PT?UgGBz&uxMqy2?9kQAk zG9W*KN^smM*vr;O2f-dTF6Nr;;XOiBHkpP5jM9GRc(B@zM%=5w3|NV=#hIA@00Ag# z#j2Lj@Jb3Uf>`@JQ7LVxaxlzF&}S%bL;w)ith>wbIBVD*u$42!TM*Hy+)UI7=2d`I z(@B1S_j{{Zcpg|d+mbD~13 zQ)t;VA*2wORB?BrF3-KGXiGQenD19VUINE4Q9(a<6QdeTrD`_Xz%7`-#rp$bV5YqzE!^p>4WI1+>CA?*v{ zmR~W_`u@aep5y{Xw8h)eTwn&Sw5%~#C~UIv1_Mab>zfk@@bMcH#)(8`s#XSv5n6T* z(~=0MsWiV3aVc)bUlln2as@R;|b0wI{A7S z?;#snh_{-oNM7ek<=W_&M!|kL`kxUNR2s%=vdAP*dEqy+1-A=;0@o-PJ5cchyvMG5 zoL`2`=10Hi?{=+@z2RnR^gd7R30pvBk!$LFvZy4(Haw;tE);^$M7X-lJ;2>%UM1Hu zptD3?)l)Sg0zspi8NP_qve5-_EQ9U^Segy9CmJD8w^Z=XI-X*rEzpsy%0FUbFLXyJ z+34ljpGzqZQj`omB+EKLH9+IAgm#^bkCq1z0~*<1L;nCN@Jd*yo&A~KnOA86)(n$} z1eN?i%b>E%vB;S%={A!W>9&bl za^tkPR|lFM`tcP*3N`YSC&3l@An^nEraHZ>%U`HVRVALx#zWn|+>jGehETLGwa20e z^Unia2{sRqn70AsU7+BW;{q!pGIJP@Z2tgL;x-dF0vQ4A56o|>)H+vU3+bH=@){C{ ziI@!!P|vg&gAd0@5Ww`K4Dd^kQ3MZ1?sxRf%QQ0FOVBGm1U?f*a3$_s?uR#KLfSsWz zVbCcBu*;GHD{&64Lx(HY9nd{zdK^2U*5G=_N~DC!=69!h2VYH{l6(=iAyU*0)X+@U z;RMW@TWx4JI~sI~h_)r9BS} zUJS?jW=k&5I2E^41Uv=Iv5s{&Oarklo@|`>^3gJ0t0=5jm&)yM`$t7U1+V5-lZ|Bt z2w^n{wSsJft5_nS0%KZ>-VrHP?-fx4Sf~O3DOfy0{3K{xt`hTa++$#h&Hnc|#(Z(?a!>oG#=YKq zv6c4REDnSs+&Z}KVczw)fJoi6X0;2f@58caxCSD3!E;C)y01fw2soq$j|;)= zkrPunEPtE;1fjsc1ZA0gq00wl0>k>hbHAw?ffPq{f$=&i&@-Z)xEmpX@jFmgQ0T*_ z=#wUl1`U@Jt|el=jbM(#Y5eJ(+F3B zW6BPj9WopP(7BJR%3ps{Xb@H#w4kUyXk!nVXtPJ`pNYAje1|MW`kU|KKQrk#N9^J% zds#ac`Q|l4%pu@#f%X1}f1<8x)3G}VR}p?798TQr%kUw@hpwCyBHU4;gt$JT4P?sh zC7eL?gwC9=Nk-Xs62~MfqF2@)n7K|<`05F=;YttW1`djGdey{6UUr2ocSgjb(FQi5EtqFP3cC#I^ zcOX3`2*8W#h{bENRwa4@C|k@DVh^Z5l_;3{g9L(@PZJ+SI3wtVU1w(kboCIg@wfi> GKmXZ&XHLuj literal 0 HcmV?d00001 diff --git a/src/main/resources/static/uploads/20241119/895002addbceb4169967599f9f087bb1.jpg b/src/main/resources/static/uploads/20241119/895002addbceb4169967599f9f087bb1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2be8e8a4c697951d747bf39e54ee864277f02f91 GIT binary patch literal 54115 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®M|Z)(8FoLb|A9u@;B94r=1L!y1KLc zEPv%^`Cft5;#PJevPVAcNRrJ)ZmDI1GC)5?tlA?Vztgywp;Rs0Jp#K1cmd1mz%nliU z3lI1>U%I(WnZi4q!lm h0t5&j_zNHWHpBSCs^j$xNXrbc!!Oj`O8U;T|Jfn9a~=Qy literal 0 HcmV?d00001 diff --git a/src/main/resources/static/uploads/20241119/c817cf8328c739ed87a237394447f573.jpg b/src/main/resources/static/uploads/20241119/c817cf8328c739ed87a237394447f573.jpg new file mode 100644 index 0000000000000000000000000000000000000000..aee11f02eca9e7dccb85756d71042b45d7514e27 GIT binary patch literal 42227 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 z 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

XjP-%%o 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%0AQr?;M z?E~EbhM0PqW$w2B3d}*;k-ZUOx~JZl)n})ONXhNj_oA$M{h`aZk7EtwcL+;PmSs{8 zFuXF6bXL~&X`Kk2&-A$ zIcKhHoM0mSaR1`N!?!nPH=Ox17(YkfAKr7maoCE=>e{SBy)_HC`2jia^+y|lqN?xz z3D3Pxxu*Qat#m-FeeXG3?N1e?Nw9O zpQ~Ip^tD;3o=`h-@#^gch=7wT1PvQb0Xrj7fil*OJlK7(3@6A-T-ns0dg{fpO2e`B zAB?s{dSjv?E*aRK>Om>&XhMC6S0)9nLvAwOtc!lZ_w3m8j%DQ~2}?7<7M&~gI^Gya zu}_e0zsV!FPF6Ep zTTF9NuycXZQDelm&+bV%#~uxvlYw$z+`B4UNP2wxc0$CTn93Nm1gGv)RcyyK%f&w0 zO1pG`Q|B}Dl{UyL-r6_w&Rl#traYuP&N=?{Hy!3+(*G?@4oxukO^zx5%akXSm=>=c z&NZT@K9(C)8r11!X-Rxs{iy5LzBl9 z)PLcqsQ3KHD$dF6*UB;MaFyXG^yB@S&_vvDLbK-G1ET8Uw?)U$;jHvq^)&5~s1*Qw zsH`CNZTl-?yrx~ttv6UWI)}|btMH?=@WdK*4IY}Y8j*>bdO}TN9c${E@AwtXvH-gw z^R<56u^3avcD!iD30;&=U5p?v7`6v0XD6py7Q{7do;!mL8Lt?TDteboX;i(cC#QlK zuU62Jq%}E6nyOgY^J!w~1^B7>Q+xf>pKIo$;9ST{ty+rJtGJ36G@g8&0qw#ihV_eZ z3Mk@r2v(L(y$JqU?a@RF>&Yn;5*Mk`6Eb?hgT-?NFY;K>9(-`f{7MDLC?+9ER;41( zj%ln94@ihf5WRdzP|?aR33WpxIVoyVO6C|J!Wy_Ts1$b);YraVvkhd;KwI>wl`~ z>yK$$G!atdVxEM%qsdeZ7u=KI|7Xa{@PqO1WzPm925&2j-U*7QI}c$aG;F#L17gh9 z_Cl=uWT@xYg#O4wz}}0W`w%em0d{(}KDixdQE1If597^5ZgS(6ODHU&hp{VYwd3bF z`5&u1UGW!1*=M-1J#+4`;Y!1R%KRD>?ucYVnsI{6dIw?UnvHf|YK@8`CN2T%1)iFZ z(uz$j(}+_6k9O0g@G}*uJPnyPkax;m&BI!n8+AYD+U^E69pkvw0aZS>K-f`NbBs@qE1I<7Mb5 zN~hOyXwm%qr7*KtH^QZ!j9WrLDqSm-jc`TIv`!qFq-`ORMz{b8pnoqwr&9hUZB34% z1t7D<I!A1oqShVBKZ+M?x)@2$+PpGV9+%W}JC@>iT2i!OT5)$KiFNi% zB!?7sQ{+rLFmH92ys!Y;(*m(EtRuM=Rzio2i8=*BB|Rvk$xyp;qdfawe1&>qfK7Mi zo+>|^{+)$oUa>Zn6zrr!ce-SR^^}!Jya`%z^;Y&SAx{5(D@ zUa*62`!=#8X33N|ZS~TH@jUTruW%zxY{jf5bvi&EqQVKp#tO@$;WeC!Si#|#^%1&z z!m#j`gJP+#YtmgAw=MchH-4>jGuyD_TS>l}pOhk28fc{iXX_GLxskdA$JA{UMWs(d zNpH4YBX)lS6}g9R?Gqcke*y1xenA#OW@`2@CVX#j9hF`&=(tz)5iPcVog?e!*CrIh zfzKnMve!9!=>&CxY;^N#;Os~{$L1j@Ed%mQC000i_LR<~v^ZJ72<3HcUb}P6pCcQY zyE-5inwi6{47-hkzxI{WPO_`A9nE|R(w<;UXU&)+JugUD2r7&R;T}Z@jaNjvJPb$* zFg8M~p0rNTQqNHTdh0JHVF0B-@2Mt}kRq!(yvQiV0P;j~qmC$Z8yq|9j@UB37n>9v zLT89kWo0)qwXUSvAIA9F6WQ&(AYl zYh`zhPK*7+k&hNWC$P6O3md^D!Cp36TQ$MQ5-1NI#ZA&72m&K8@i{YqSXW-p+M1=_ zjO-A+t4}v$tsarn=~uMI_4es!12G6H>6A!ht3UTc(1n3;J35hkFV=)IJaCr;%WZ0c z3PfA<`04~tjjDB*)UDXG;`K?J(&G<8Ue}xDs}kWh@rMcZ4v9An2ebW2_LI+L=r{t8 z{alaakA@@#y07hU(O8{&!Cx~5xM5#`O_4E!hxdkCYhG>&vOZ#nZZQ5<%NrRrBq~#?A5{+J5ERP5O7|y8~GV zcE7w-iRq)>eSf|zy9%nV!9iy%&4Q!LpZ;pJ9r4v1X*d2I^(Ldf+2AY9>R98{pIqfn zvZfy~U*=td$5lif^0Z92E8=1Gk>XjnGgtcUo~Xhzt&4DI^skR?5reD0KU_#hJiNYn zw);x>mgU`pS{crwL=>V)k)LpFQW6$4NlNgB>O}h7S=_axr{p(}S7c9@9#EwCe-M@7O2d`WC zc3W)!M3MC61L{@X{HlKeApA^6N#|%PYh<&Go!v(2@s7HG~74y7x|pIpcjpUjwA_WW-6VSzrcXKNzQOQ|smx2axBW^l-y| z66O>msbJV`V8Fw+0Gze#>Sr#>w9CRFeTUQJuj9ru5S%P_vj|m50Pcqr}ysA!>{CBPc;Xv@3e-3R=GLTSML}L}OHb`n^jNFnkdeL$54j98;yu3TQ5)n@_PuX8rC?T&~?lWA*%#Fy!al zaamfPRoR(H&K8O%+bC4tZJS=DUNq31S-ZAPg6W)=d@UvT?(t0Ae1Y`)>LCfLD%<4L zXX^Bf?U1IoPH7c1PE_87t^V)t_L%+~omWFm$*?XalAsREO-N|l2ZJwcsDAO!M|tUW ziYbFllG!Reb4;6o2hR*Ao(wTv&^c8ZN9_Xuz&t|!rog>r9Bh(&6*X)5P39jlbk7?3^E!RgghV5Zhin?VS}M&pm?x#C1yxK%=t?js-5<3xN3c1= ztjd#;V=zZ`{Ztbe;Z#7~$LhIR!CceVmcN5HxfukebbZQPux+9+8V!A=3Y;dbdeg-k zzgjM8yT4;=TUFuS>KKcXbPICsntjtk@~K2E6V@OI7jhHeZTPVo-JLQ)KnEPzI}+9u zKX%k3fwXT^$q=V5eJxQ!ELx^JE(`#^Et-zk8bwZE4^^(Wc+P3OsK#0>Huo`Z>zX$z zXc0Z#=ovQ>uMw#IJQ*QLo*ytAVW;boA1ozPzLA-ye+cQ=S z<=8059xHO8`|@1iq>C*sh2sgp2Cw<=fYiZo4i4)_X(#;zoP1a>R)slK+#~my!_oi( zv;xu&MLeXWGCiMkk+B4V*`NkkcfsjurU7mH?AM>0472Nk8pibY!xh7~St~enJ}N5B zT2Mmu*Z%^hG5Tn)GfjB%NH7yue>OKQq@_bIbaPDSvPxDMvI8B zKe`OBDdRqiC_TCeukwkz#`Cn8lqs9Kj~1_Hm00{Tb2G4Tv-Ry2?Y)@!)uR_HMJw^S zs^gdaLJ_6y`_~2;(1tw);lL%9NvpqGm9sK#1g57S;Z^6)K4VIjG&T$I+}l5w2iFEg z8wx&wHv^w`t__klB)m9yt8FcZxI~L4+`R+73#UXy|3$4% zXa%k<7YF9;vb}-Q6H^)4 zJ&I)7E2#FOxoc&a$m_FdRN4eBoPTQbwRgT6J2y?E&+UxqD|7#E<7wxepqf)=PV3vw zSkzaCaX7m>tqKo#K9>_hfry>AbCgOg=89C(%v8x-sERUZEB+8q)WmuUk=9+*<{M1& zP>GyTv&M;-G?y=bM7oo|zZ2KJJ`ghfK zzy&23;-zZMI#+kcF`~+n$A=Wd>#P74wHmOGh{4`OaoEb^B{ z!YPI=+nZXN=|~l(#IFFePCGP1V2+DU0nd`GaXY$SiD)D0g~nvp)TcazOT#c!e@#@% z1jbC$kUZ7$lPoa6RR4SxH^VsX zhJhSh-b!oc89_~2z=wVClB<4k3~9SGe=$#JHoBV}quA&1S+k&;y4J)^M5aYCEWa8L zI89lOCy~ktuW_}GS>mEz>Ewxr6~To|K=CN-b>*?sCEB?Xw4)O~Z?BO#=Kp?4sS}Hi zw<@UFa&BVCZgEE4lU}2<4WX7XTTV3F1SR~GXGm@T-eBAM>+OO-ZeHxw6s-v!^{~~B zH2n&$F?j}+mg6_aF_I44E3Lj|7po1wh(k0!Yyq+L^(oyC#Cf*gME?i|N5)M1e`x&w zJ;}IBzSt}t*Q_v`M&@Ib83UV&1<0;vQ}(E*QO1$|gPR5e+8=%f&7{WZb$;5DB#TxR(3z3Y4+-j882uKcjVFuC{vcO}Pgx^qeh5a}RBB9IO_XBx}w`xij?cH}ogCFSNRGZ}sy z1vlPPx?&1bOpvr5E~oj^>qlB`vE85pGcl)Q%*`&3IGEG12B2}0A8U0aR59V+&>pQ96SO% zJi9!rZtYjPtMP-ZfBT@`|!l2I;?xN>XB7$9z7DWvy~ewg5@&sVUsHV3ps!m zh#p0)O^7r2tLI=Zt8VO2Zf6ynRorlwr*M!+qSe&+OGI$qd2K}1pl_>2M~AQG3v8G@N7c%KW;!I6W~Fj>~lLO#8dC{jw7RU>dmVxC!#zxVD8Um*Fi z{=8qSeY;`|q5!5l`wuy-@Bf7$gB%F4^Ve8w*wBep|6`zFg%l4p(0^YmJ5u35B&UKt zVU?-Y&io=EWq6Xf`_@43?tMzD&NbKN(Y(Wt?f*g#P)V;r)(WOMcm>dPN=GfcXhli* z@bEpl^RybCCKgr-0Tu2iW0xCSrcR%$n(_-=t73P!-J121Upl#=I0CM?zKc0Vvu@P? zU$k-4#9akXT4N)-c#S576OTG$qj03#r~DE1^QFFdzNnk=WduqdxSw2AS)FmuO{(V> z2?~%rLY^7QoeBA6-G zG)S=k8YYisVcnBWbPDL>Q`XEsWX5V#7mgKLtNb@LU{?A)#Npm<0H=6Xf+YV6CYF1( ztaE2@pLq?(Ohzr-UO+C+l$VNnSi(ZC+Jw|PM?V&nOa3=P003TYSx~1f;T@W6oNo*t z@;m0jWM+r}VC28I1|WXfg64p|^ilCA$F~e7llCF#XwB@Ur0=swgntCnI^>RB z67sa^AiNlYA%cSF*R(C?0`2-kO;f1*GTbVHE3TjWA{Nc4$Tpx%OTplDk&466mH)wn zS<^vJ=ARJ^<1sI4@|GjEYVMqd#hct>U>JRg0|0zFr1%?Z{%PS`Xe9X^0Kj>Cx$L9{ z7s|R7J|PF>XW1KutP|nSSX)esIEDF#G4)@1b9Qd?CfNuLJ8!_P|B)3!6z+(@7GLWO*%1XcRCn1)UD~72? zsNB6lynnWqvK-&pmpy-Sup%{ZXM%c*zlA$x&TJgqQH}DjVq=uA2H9T$%N{yAcwDz^ zvF|s!l)0CaF6$+mrD_=ktc7QJc5V=it{m{>FL2)u5LV!n{+$3(ZXLJg0ssUy4wC** zxfA=cjx$2E-J($=#~G+C^FvL@{4dwlAMQ4cq5S1HPmFEyW@kBYi*2%wjbucZo|BBe2}m(p7&I$DvyAj5rs%;PMI(;vdwjC3Vu9y<{Scx%P8S zJ8fl-!CZ9`UAJ&vacn`n(z%*DAQUWjSvRyJfWI_Qnk*X>tUEIVo-K;Xh8~3l@VVxn z+#U_EocZv`wdY%LwCuTv=KEt$I;PvFq3?~GhxGbnvnaJ+ew}Tw5?Gr2=CMinW5%OZ zeX!QYBXN3GH8cCXdg7`>nHCPX5;rO&C2Vt4WV~&h_;{et>*6G2v_`-(c$|LVN^7`4 zG9oT8IG63*G`f04nQnNnd}lDLDzfNqhg+;aunSGMdsJpU(h?R94$^G=E;t}tImBK% zaF)zPjOUo;DJ-BA98^hd9$d9cm%j>O&x8QiG5HT#~ z1Z3#XDbV6RPO9LvjCMW+KKuSWWHyOV;_)3>oo^VrCVvH%)+@jn$x&j9A-kcH zQ349e(hX@W&XsVlY-Zm(-_vT{4GZ&npSx@28YN_jl}uR$vct*ZXNnGgU$D>KrztSm zD>y%`=~^s0R&hynWSYP?-`SNrm+iL?g2cEb*@N>?4w~DKTnDvke~gi$Q$njsXO4!! z9LlHm(t;f`Ec=u6Zcx6=he@68zFlyYoA5keM^#42R0H+2{RrUTyd!mnU($_fJd22Y zuBvEHW@uAC_2D3cRCcSAf6liM(@J@F)kpVM;LV2jae+;`RpciMz*>f#kKp=Atn5C zFC&KO0WNX&ee>n#=d9FIETh0JHD3(jSjgdGi!GmgSU@nvR`xArG)|;QED=%d(A-_X9ov`W>;v z+uq-1qPDgLO--@5pO-N@t7MV8f=NxhdXRrtNove4!}tSa!NG-9pDCtdkgyRFjaxU# zKAqIVm(H5lCD-$D}snm+S$`hr!93AK+u-vU+ofgPgOoACkgJfIab zuPVY5?*IhbH+fs*(>yk z6lB*06E0se-5H#H^>9D|EI9`kS3spOxDksSyRU23@h2a3bt$B4Ley~&cUK1FkDZmh z*LoNxvq3rUCN{Q{4&BmE%7$Fce8(;*YB8@1ZFWkEfrOJQqBlaey=>-eXO*^LVsAqI zTY|l9SFoz)gDoUr`px)n`2VX&Qzv7dxCPbK8`{6~&rq~L|VboW{F%-#(*z&gFkp>i8$<#Q# znJk!`K_YV#g#T^Pgk6bfeBti{S+erW?;5A_@iR6Y07<2v7+ek|YX#%Wt~Ot<3N~e* z_#+NIRCdImHY?t=i3?*loVd=F+3jcyxM_*kbq>;#HUImQ{qHi=q`gOF?CJW{>6jDR zQNeE@)G6i1?{ntwgT{myfz|@VCkfWBPC;KiyhGo8=YVervGpXh0Uo(~u6=93U9VFk zBs^kWOX23}m_Fs_H;D7KM*a^jFeukDA`185+^*Vs*B#-=iCN|PLzBkCRnF?Hvv;q6 zvgsC^uTEsb2**ZRJAMYmaR-vbXJlngJ34K9cBi5rAeOx!^`;+olDTn!o+Iu$KgQi z$n|zgqj!7sEq?p$^}*@<3;Kiaec8H$-NX7E#2K#dT$G;n6!f_U3$42sC17am7wIw11rB zN&G%vxn6#q3yblRtF{tY5n1`T9~I%)qPb>1Wj+n+uV4UUzCJ zbe_Wkf<(7~3Vg4CjxEHB-TxFxj+jM+?PSX<&djulBmr%@)yH|oKRZX;V>e|mlWVlA z`Jyz(xw-PLtD=pkcKdoWd6#H3-oW#k;nEegRG+(YWV7eyde52RBKww~O?=%|?92Zx z1Z=}dzs>kcRF~j^!9Z7rpL54G<93eE^JE$2y|+=hJ+Z(T5#%_5ptd_(V`^=78DhFA zU29&Dy;hCZ)Z*MR(~_3{sITME-X((A^?SXCW~H}Yo^s|t*Z|<1N)j&XuW9tEPKnE`mX?P-=04LJ53cY3N$kI2-gejs7;n3KE=&L{ zEG!HhEG#m@KimAbZ8jVXJOBX;8wd9t9;V92PZX4F9GqMx_*AUy+|=K`NJxHv+x8>9 zxdUJjU|#{tA3K{O zHF%N8Zv6W|`?!1~z(km6&Cj9X?^9KTZ@>tyVnm{S&bb`YnMmxn@f?6B; zSp%$&CIi~HrPZScEYhJDxC(7Cc9(-IZM~hJjXj~gz?NyYq`8kmtY2|eGbCUGC=98l zUSRG<#D9sPRXj&-!;(%->{~P;(~}KNGA-|l5N$b4DO|%y%lh4`j=BU8JKekjU>m>L zW?4&-%8+QdvHyM!6qeq5^0>IEj}6f)G!M-Kz5B$wJ=jfN++rGZRg+rJ(&6VHo5Sp7 zwMCBB?7!wVi1>0f3#qKFW&h2N{q$`sSbLklwO|b7I z_lxSXHEn67j#=mZ0&R%jOZk&$glL2UDlzmcW0O7O%LMKv7qgi*W}?ico3859X)j z?fLLIphOv2{)_*lm+qQmYr)=VMv*-)@u{xzk<&r(FA(vTcUAiDnBO^Sd3=dc%v5X!=-0eo*B7i6@06=!fPi zNdaue(sH4R!3Z~A%r6U=%bb^DtW%FvT3PcRYjA(@4#y}BK3KmnOn2O&i~XUqpD^}x zO--*$;S~UOdqPjWeb0zfWFhP-rxcOYtKG-CjAn5XYh@bPuG#5Q`GCODnZrMEEX#IC zbxYW)J6H5avOGghn@zyym%O%Pf(~$r8F7wnM|U-t-qu63I>*O2a{S3#3;e}~>7i)Y zF@5hG(xyZKR? zot@+5Lj>J1Pubhh9QY_r#g6mBcev}WPFCUBW`v;KQ}P~LAdGZUm0Pr7Sk2aL5VSDS~Rv^3Ti zRLPcCS4+)j=lEGyc;GjJPT7mH!Le0&Wyw7_XITuSg(nWaFvhZaILAYH4%T^D*0T$y z97^96tZie|XFf%uQR|F%He0iYHnnPqE;eNu+H2*tok3=EXOFqqJM+Ll_2g=uAAGX8 z{Hd)K{ZV#j8XJ=y8}MB1JQa-?G#3{0PS#IzHp^cDd=e3@ab~@i51NM?5gAD;dgZPI z{qmny>|(1HOEAh!LU0kB;R>v9>aF$-y7iB*VV}7k(w>`U5qybBzcdBpvNy{f^#`AN zd`vO+?^`*(Ml5c=B^vvFjkf=>NR+BSi7nlU zeAFt;toj4(@+^@R#$V}80S&JJIczP4Ion-GNnX_Z(_7Enpfn79&%oBesMc>EdyHHK zGmz6(gj4N4%2o*eB^~!~jLcm~Tt?%?G-de|O1)+UKWmAD`saiE#3e5`F>9(7nYe4` z${9yY-XRU4Y|V1k>;cZlG&(vO!kw(jDDih1Y;z6> zj2%)W=6qUScY^IjDz0_-P-~G4MdQV`iR(pwM`T7}j>Eyh+WX-QTt;MOFiF#6>8V^q zG(`TX{TBMWrsrdUd32;~k(UC;kSiim!QNd@<8PlcyOvSinX$&GoL-G^B;+?M@W zPrAUt4?4d4-nqb371cYy|GYenVoKyLv8osG8Z3el~2|; zdukt5el7P;#zy1*1(iq^iTqBwZx*J9=utt>wsq`IOQ6510gIC{BDra)*H#Et@9|5` z;Og6P9$tgPy~x3Bn-r5Xx1MoOzqu^| zSlT2}B-<+%F=`W*+TD^UGw@}Q!IJ8@ATuX4Rn}lE9wzT7WcpE8dU7~=%cB4yR~Wmt zQ!*!#UJ6f$k}{rsz&>4!EgO#oi{|9CJYF};O^Ox#R0>4PCN>CgOSKr62j%4Q?;@*zB)fHt7?=R~Rtb3LKb~5_2 zcAP{#5$!|fAP!=GxiaDk^^&g`LePF|nxBgI#H!>s3;YCWob>=ar;(%%lrseSv|T*# zW=kCp+n`lo+)54~M33F04vXwubfDq%FB6Zf4p7Gud$Z4XeugvQymir)+j*-_h62w+ z0;OGwG@qZWJfCo5{cs%G=Cb^adbm!Mc90_0;aMJjV8u789=S;s@ULx)TR3?!RSEyn z*zFn92S3Sad=nv?z6#95w;zrXxg*WrzY~j*-hc?lEMEnN1JYQFlst$(d=VA-^5t!6 zu-d8)3AytI^DIR4_ z9c#UrIYUF?TF=^64KQI|nOT;kSP8%F+Mj13n^Gd8d{DzMLbXo1K3A!0ja2D7;eqd+ z&qB(?idBZ27oS72KzRCHR*Kq#4e5L0%ku2?g^;p*0~66l@QXzu*c> zxgph0RMw>fn$wFG?kMx6SxipcL*Y8c0V4k3@Y#qvo4o&U@zA~O$uRI6U%%$fuz#0Yr0*yBzT_nHX7 z8P}zrJjM+Kn$ZCQNxf_t~}=s+i8c3 z$yLEg6AJx|E(+E(-m~a$0D)4FblH%Q7K2aX)y5;7h;j4t=msMn*(EOx;qco`(0g#2 zBU-Z@y{c#SBeXpzp81krw#XTQl1jowkv-;;_Y9nU$s0<7lm>sTkdknW|6z=^ukB=$ zMoMOA*Pv(O(S_(6>&<|;f}B+*Oisb4oYg8wG_09t59KhnVF1wJyiE%XixAr$U??+JQxUo5e2x2! zqO|6b-CG5BBPp!Uktpgcmz%Vqb;^q&XX=`pyT)NWnJ$5SpWN0pcvo5e;NBcYLV?-R zelZPAyR?hHSEjnW+@F8)EVQ|YA;)m7E>`(k zrrKYKnC2U{0X+k5Xx7YEkK6fjs7TEb`z}p*!oHTV)Xd7TtwQm*{g}_s;;hD4u=p(7 zO-yeEBF9dZug^_DQ<}mFt{TzSv#W?iFD|HV%hUCi?a|@t*frp7(xBIoqD3;aqk6U~ zc?HO76u9k?oG|*gBHrhzNm`FS1Q2P3P8!F*DEfE38$L^rD|Q#=JJTq)U;7*+^d;xh zV+h!|93lz0-M$Jd!DX&)(>pwAf~nzj62sB=lB*Y(I>J!-Y(N|W#PG}EaQ!q*Z#1G2)BaATz zGvm7-G7nwwkJ1lm{AXU8ZK3sVn;(zz?RN0D9E2`AxvpRwQlEDW0cp;DSFm^*YK6Hp zmrSa_FF9V*ggkubC$-OVoH%jhe)!4%*&v;p>9iZPHAkNyv>Act@x$1#0TOaWYih`! z?Bw0{kI6U6)kr-{q9)cPYw#Cq_rF>yf7-?#kd8V26qoZ;n%$1;6@YT}Tu-3b%hX?K z;Tv6AT)CAmZQOMNnj<)%>9#4$J9;h^My#2ew5r0rbyJsl1q4|Ky2L(6zF2lpltn#j z1T4Lf5+&bo3#bzv9lUIcv=lbyjot(XA!91LJv^Qa*+hGz@3l_|oa|QCmq0yNeSC{& zQQ2ZYwZ8(M%;`BM(ONdZg4}zdE9cN`V%J_rFU9|cLVjz7Y)&o^o|b-fu8kE$sv{pi zK`FqIDTVS-Cmy}UJHhe)-ilC|?6xWQh$_u>`?ab{!7@Im4`u}t)EC(42+-gp+mF7Aqmx}EO}a&X~Kt`^2MBVaT*GbkC#VO7AU0jq35#+Xjsa3?%c zC&`Y5`-T?m-~yFD*Cb+-26xzaL(-$%R`WQ($%rYXrvV?@VjGRd^inGA>cHAUk{$a8kJvt&bA6yM9|1=(bA-~&N7Qp2`=$!Wc$Tv5C z3nz1XLSc&*CE(Y?uf!?lBR&~rdcK@6t&jKQVS<)ZzsqSaxfA;_(rvLYT6_Nx{Ep=# zmG|yy$=uUIHdj*EP-4BjxD(_{(1P``ig{19$zJX~;j%V?7X)7JuKLxB8RZ*WZhR@n z-7XK~Qy$i#E--IJGtS#hMdCjJfFBzCz{jf|BI13X(|EoW{bVWJ5;^74h_d-y`k`FA z_|J_;Py4lqr=ZGx2g{_nD}Q641=4S0!U5;R=xE!aU)4S|9pPS=ncL5S2nz1-{*pqJ zC`V4c=0fzP_t52+$=&Zl7I^%rK6U$rzGo zwve|75fQKrEVSK2z-}nT<$ti|d|S3YPp+MA>Kf{G{(+Q?*x!Tb6rhX;YmSh!36&F&IlR#Sw2vkE?w3xOU7L*P3W z!lU{RN0TySknZ}CjvqdM{w#Vcf55t;aT)*dh1$wJACvNYk8k*MH1s&8Nnu!dY=ECD zDeSa)H2&6E#LE@fo6Wv)iQ9X2{tB2^pDT&}aOaxHdmH%$CS?WYJ^9bRWUu=g*F`78 zd4~0X`d#PiQR#S1F9R_O=SJ^X0AKiFZ}o(tk}EVpjeq_fo-WC;+1Pgi!Pp+>3EZ$X z<8R@=Y`oh3P%dVXm<|;X8SZJufE<;}ZpV%=^vBF}*=B?M`Ecgn5q_YZz`RVnHpw9r zG5BziU|@FB_!H4V%XOvP{Mc?gksCeSP*S&(wZlQ3PyhuM2-F#HD2F##B5gNt{rIi1 zC2QenQb$N@$)7RxFo=v*zDT0ACio9(PfP_%`Ns#>?2>O6VImHaSC|~BTYuZHMjrN-xmK6)|=7fcZfqP5;I}qzF$O;Pw9{UrUDyFCk z`xjFLT#ApZVt6KI&b8hD^1!~uWQoAs54Ta^s2ii)k?Q1WdNLqG6L40~T}vAhUCw4E zXY(>|{ZLoK2c08Okli>Hb>j8@x zcI+vuw)DkWYhk{nJ;x$1WGMx@Xp23d#BXkSf`8NQLnP6mq|Z@u1ua5hO3(EX^07Y@ zKwO_BrDL_JBF2Y`(aK%{@M%kng(2{r*gG%iY%crG*7dl=`-7h(>n8KY>baYAlLLKa z3w>h>><86^WdvwWC9C*wH~A_L(kRSh6aDAw0BV0z*0+h+=VkF+JbnR`GYrA>o=$CH_RtaH5#*Q zl-MnA?_ss+j25*L4_p6-%|ZBzui9^DQqGPs=Z#ON+5fuawkh%BL(t#5NKq-JM_vt6QbpIX%lwl?zum%U#uEM) zlz^uNJRziVa?sJF0{(4`enXE^QiX7X;uEBH|AGGL@|LMvk5c+}j3tolP+Ll&8=@!P zu*rY~7*Y$q#>Z&aMoQ6rC@_nUNGO#Pff&QYJpim-`CcyVk>jAxPykb zZ*zHMVi(P)8S~t&rBV*uXf;x9(3tX)8$_E;UU1v^eMpT_B8ximOt)+@U~QRpCj!8wpifH9B)YV6G~eMyWXkJ zQ*&|9Yq7teu3Yh_07JBTOET>($XOm3N7?%G#vp_ESyAj`^|<ZNqn^r}U3#dfJ$BDzZT=NtIk*1ycF^nl;8OZx2SI!8?112x5kK+?<-1>HrOSD8 z6~2;Xg&x3J77n-ZSssOT>ZPog%c~P+?^AywAQycc^s8vBykS{85l|{yuVl3QAv9lE zi;h`Qsaoy|soAS( z^lawm=9V4Mpl{ScQZFG9T$JZk%B}7hyE>&3%OPp+>RAL7=%v}ViV|_fwTh6-%aKHE zg>#NID^)1l+#4)vVw(2ge6SfIxw7RvFMeO$`m=Ir>omOWe4r^)5&7iLEHr_O8a+ZY zsf~x7{;5l!XrwKB{#N5^DpPB-C>t{vVskK1xe_J@?>2WT#KkR^Y2zSH>SCL2`f3 zf^TO2($kBmldr00^BL$p`jU4&;ZY~(hb%QN+=$GHY-(4gYhM-WX|yufQfu#ay_s!k zEWq2**}r0Xk&xc~b9(lV)ds*LyqWEHIHIZ)?54P4YR>qSKjMF3;(g@!qEb68u5R|# zC8&FYDj~1#{DRfQHSu589QGe;{(SGVnQmUmW#g5R^ziaWBoB8l!Bm-{P{^&kII4VQ5naFZG4mP6K&C(t;*i*3dK^Ve#hqVMA)eO9 zQ)Z&L@@RxAzy*_$ni4MzGQZM#jL4E zkh6-o4=10+qJn<;Q9z^Nq5iXbA>h}$iq%hYruxOVh$IzZ%VeQ(ts6tU`tBR$PcD#t zzsh+?rSnhWiZTUl+)W;CG;W7^Y@0$e#hR2A7t7!g0<>2DvlSAr;i1uWi%*(8Jf_FI z;CT)m+X+wPDngmgzHI+h<;Mj^h&o8zXY;ROV+U7Q^J<=NH81MvWjmyOMKWRKWK|C;kte>4st2j7ZQ|Gt^+Xp}M7bM()N zmY;ao8m(mau^p5te?s^nkfhecd;3B2hWF&`M+c4$bp+TceJ}N8!x`C`PlHN}r`r~V zMaSW7O-JvXasmR)#o5poFwPfN_RrKcB-kPUMrh}AEt58Qmxbyb z`V3yHW@~#-fIWK@ROvx0W`ZsCJF&x`vX_H5^F?;whop%69eODJ7G7PWjbrnl^9Ugs zBDb_dI)a5Nj!AUXj%^>Os*D*YCheWK1?fSTQIgYfk624-@bjQ7%nIZ~^B(cj(iO7G)%lX$`TfQXzb!Cs#o{(zq{Ua6tf1}v zTDLB$Q4r-tJL#gw-~1ux_A*%E#<_>OX{-LD$;^8-^q&3s{OdE_1aV)|)Tm=%;fyGM zA;1S#MnJutFH#g4JfnGjZ9{i{$H= z)pcNrLtf|~81c&!oo4%|>t7!#TTh@s;Av%Tw4^5!A~PPJYLdm}gm=PCWWI_m zqV@Neb(?!c`GZd&A~$2@dluYoxIoI%wl(dq0<%deo9Y{*mIk0b6Xc z182eVqAj`?lv{@>nd@J&q{P0U{!@JuQHG$TKCn<^zKeL zTz^q^u-+icS^7ZItTG*4vIN|PWp>g6Ph|Bn^gTU(Ja}wM^WRQx@pKUS~yNrI7=h0e=DW%)Mr)zOUzC-c<^~LHE2Rs)dG1xy_ zHRmjF6s85eeUJF@=Z{?k5cb!i*4+i}a(kuwVn&F=UmQ>+&zRhhN=yg%d=YU~$UB{%IXy`>ohZzCE=tiG43)AX;C~$^6yEnYc!n~gqqOlr_L=%92H%Uims@Lz3Yjx zrjg1083P(|+93b-qJbG-^A8lyhNY_xNo@c(Iwg<5sxN6t0L_B1xp6V$%u#lD&SRSc z>38xQ@u%D-+*(6^D}``;M++_1X^}%Q^GOQR4v61`4@cr>>S!n!l9q3!R~V9k zd36!#NHR+*Vxn;(Qd^PL6>HweG8(*p7CgjUZSbxJE*9%Jhr*TBTQeB0unMG}Z47L@ zbi_}ZQnfj}Z(#%Ha_Z;|lzpN=j5+9TUjFZOhoBw)3|;ubQ$_K#j9#sn`8$`&q1=o9 zKgx}mIz6uGf5cCyjGphJBnVG0)T}Y|sXLC4!Ppvz@+$*nwM}!00ysMv`&d-tF@v+- zd@_vj*wRH?0iY`|HW+~#S+BmCABaU{^P~*b5|ngzb6imuPaev;&itkNvI*)>Ie~oY z=Zqeu5Y!VDHOe1DkFQX=;+;8A$|F)zA3YOh&A-D^xM-5+WD$w%s~@Gf%Rz0W;48aSAGiq~D7;OR;lFz@C{=d)N7iVYGw-3Frz(`q>$HU70V1T^|R+;g8#p zRus@8?E~|8foqwNN7K3~th&i98~b>7DZ|VhS!dJz^+MMSU9YanjhOog#Vkn1mO<6M zVw9%Si-0Dz zDmhWLgm)JxC?Z0X{y>rb#amf(PFUI`1*c72S)!}iJ)K>i2dgOV&9?M z`Z175`n~CASsDA|_+8+dwlana_1VT5lW=t(y)rY_LW?i?eSSw0ehD1uBOxGtkU7Q-!nC!Dqx(l?%j zGU8p5GXLzR2@Du-D4!4DxfE+`is*@I6+1uC`SFD|-}1>^$Oz=P|Dz6`o>X}w4RW`8 zP?2uD~^3!>}PZfw#KZWVe@(y0r&p&v(4+4$vp(cGJ^_T8Nr*wiAUhp|$F z%qYPVRp$clk78}Su`3D%vSMFutMl$;#jTn4f$xfK#u1yd+>2{6c-EZvaHwsD0(+%H zY7(aGQWpFM+_Bonq~6ri%PW_uo>?hF=}Ht`geVS6(-~!I4D&eIoA|Q6C$kYv2agHN zFWt|~Kj)0W?@@_M0?(1N9enf;QUYD6BNGZD_F`=cAB+k6%&)~*Mu}P?q*Z*>MD&Jt&_qc=#M%t1QfY??)3cs&-JJbk-&!R|dw+{iFUW0G{ zedKE$8Z8M=aEGd{)l5)1VRm>-(ncVt5{;Q~B*^!9Lmq8`h)LdSiEfH5HvqZWlHSu>>2X%y1dq z8O6U%209z6*n1M9_qeyE4BY^Uom0|(i<`md4oaV}^Wu~sA7nJ()=*CrF8u2Xm2!bt zaPHV0VYUyZA)t?_YmBWscQLB`x8>QN8o(`vRho3xM89W8G~ge8{Jk#X?d-NTZv|1c zAlgJ|snX8P8rYcYGk7=BPR{uKgj-y+tr#9s^SDYEvz%E)TC$HgTcAog)qs1xw|dYn?@jO(fY9e?QrS@n$zSw?}U)bQ(mEZVG} ziZ~|4F!ka$Q1)*EPFApC7F`f@otZ-JbS1w3v|<-p4Fr*~_slGE?yd>89%lAdt7?&m zn})B@uO?VRRgoKeT96FCK)#4&SwdbZ}l#aec(5y~4kh=bmNd zK<7vNt${Vf0Lh-p-hX~Kesd}dDALW`nvm2fQgEv@fm!uTQL{$s(u;XhcNHEEODh3% z4^HNsai5#bBx}_Bm3ux0;w>GeJQ5O!$!_qHJG+ci5z$L zkh*?Hc>CdDRuKErF-+Szbp(AtNfW24SY4+W*c|(EJ3M0_jL3#Ml&L6Rj?V z1RMIp*NvDqVAXan^i=&vfTM+|{CFy9exGu+SM{&DM@QH8j}#K_VkmALwP}!=YHcvCu6LSYvZ^hsO}(80Ormz*tJzxFRiUJ_UdYxhZ_`(*Y>mS2_nGc&!S3D0 zQ6}MUm2=83ery|rU58XaUlbB@m&@wrqhEYcwTsvBrO>8zAV+rUb+p(rk1U~(!Z|&D;Do}ero8C^Re&CMllKej(e<}u=vE>wH>=Sv<30OBXi_I zg}i5+;%v(s5Z$)2xC2}%z+0HtXmfqs$h7{SK!OhGxfRDsTrb3sO`HY|Xl_pHCaP8`zjDkT;3rM7* zalI?hrlhi6xZm#0><&tk~xy= zEhS=peR01gCdBjX^(s4!kmvuxjvhorH%hg;t~`*w(XRNBsv;N+&4?K@SfvM?MrZE#5o=}$kDN9j+Tt{J zzl!7juX4lNr{$0hv*reRqtJtBX_Y*eAfC;>jnTf)ClT?n~6xES?AE-j(S<4 z1T68Y%Q8uojS#YhBK56yISIhyx|rV}%OV z=*K*v#!cxPW14MTxizkI6`iL~!)NF7gJ_#of}05wI}@uaas0RMV$n9sWz|xJ9SS)f z3W_^txQ-yTjAR${dghKU4Gp9XsuF0*vPU{vaN*#PwYsLirF{idGAlIbs|RZ&edF00 z`i`1&I1ddG5hGMF314fA?i?TEHj^i#n$-Fh;Vrtb zgZg5R7^?tsFN*5gFT2NfrZUwIQJiUkgXHiMzYpFXyw;^aoxQqCv@Y<-rUi`>cI zAa{4kxRYKH0Wq(pVCt($kRD`MGC|QezhiR)R2>kVUjZ|Q{%B}6{|{YX0Toxzc00Jk z;O;KP-QC^Y-Cat7!QI`;;O=fM?(SZ!I20*Tte5xw{;TW1XU&A74@Nib8g{9%S>c!p&3 zQ}Y3rU6f(lFV2db;aq?8Ci&XdY9itL9EtIb1dTe@4Dl z5HoHVKUII6Rr^N=X*Dq`xm^L7d{NphZ()9TBErws&V92swoO}HoIrGKa4>SXrvSTAT~Fq|e$ zmQvJcm-JAS<+yT#tLzL%4MbY^JFwdrVWv^|`n4;>bXb>H(bxw#U+qh9^PZM`q#}a3B|VG*tDfKNf`n?<+z_B^W*Sq z3bOC%brtUEJ&kRx zolDo+h-J%2xs4Za-{-D(`kZl=|Kqk&?GGTQy;Wn-D^}x3C~4x5;Y>rrbil-HWg+b}I36_@oH7J{_I4XbyY8qK@C-XtreK zEupPeX?b(`gw0Q5mav6SJHD5Y*;Y)H3?KDxduUV8z?6wNewKgcdi$y0crjI4xsfOB ziM7z-9#m3aY_g+GY<7W?rueQfB@{bc@pAsLx}*U7XLacxS1ZUckT6g% zAFE3r>MV2&XmU183NbYxCA*m$7MXi+aw7~Yhq$V#c}ihZ|Gc_KNYQ}BHI;^I=$@$O zjRdH;dH=r@Td*P@imgi8oY^x!qq72yM48WpfU!*)kU6@kUh;X2lVG~qV)80AeB z^C~FWb@}@wR23ZQVYjq zyS|Lhdh>lnJ4EOX@?E!C2SfCtC)-ms?}bYb`Sr4&#@`?h1^J<5YJE6qW#0^Se3rzF z2(#~yl8}-h_$K19O&p>P=zbp@`6O285F0K0G6(B1>hoxuN1<1>oOC1PvdRArsdHJv z;Ym8R@LwsaZo#!>fYM5h`6K>KwXSjb4oRN!^Z~8)Nap5~n|GmihLnErbD)T$)$x25a+MI{j4vVBA%&t3{=FrDE!lbH{ zK0XSYBk3o^DA(#b1)?W5A%R~ss*7xuub)9riO8eb4~F)@6EmXpn-5#*7}S_Dn|=%l z`}QDcKIlL&*DEi0FN-d|1J@0Z5zFZXjV*fxzs@_xn8-{zG8CSDcyg}k@W`1^2vCqT~ zC(*Z(tFZtF)`e~qql{X+-S#b&H;d@2>`N91c*>gLfm*Q97iCjH?fC}5_I@Wlq`Vnh zvlo`Gh#stB6uvL>-Z|nCii$rYockaYkgxn&AQ$>doJn|k*oL&^aA=+s42-Z6*1wyt zCXwVHUa+)l?i9YPBWDcH3)lua0XHR&R;5&Ez0{KDdRXmki+K%>JQB?C)-hu@E6Sq8 zPx7d|LvwzF4+;d>|1tA0m_4n5D<$pJNf^A>;N+I8xT`qujxMv8K1b6gHqjrFg>n26 zQLv=Zi0&+VjB7PexnNH0&EWDG!<^(x0ooc|&hXgIFu}@`b*YEDfX=(;;HY)Lo&_`4 zPEwGYZUO9j6_24adyCHV^3tr;b7k&|oJ{_{@IrX&Hrw}CodH~eg=?W$WQehqZ^McF zE@wi32530%TaSqDQnNj_OxWCU{Cs%b$UTyA3*Q}wYPC$XvLcH;KPCvLA^!|LC+$fj zY*5#}+^;H!?MSbcMJ+)A9&Pb6QjFph?VXjJd2L6|1XnEQ$9E0a+2EgT^GlpnU$xOA z&A`ZR(+Wh5xFg1f8@|i#p)2WB8vHXIegU)sbujPGXZxFXx>3Xvr)I_{3`-=~iQvi+WDPqB%-6NDM|# zL}ztmuVb}TN&<1lS!`3crASk_YEi83i_%4mPDV0)VZ`YI`S(X*@5)Ej;+cge60jKJ z?A#8qN#F$&v!yvZ9vOI5U$qDrw7Pj#_4O;H&_@1EmIzHEv%gN2j>a|9d%B?D-=DG) zkq@(kWaHn4WAbCSEsOogD?{~JyEaoVp!M5FgF)3hHmr30z zU#&yiHh~^5CQb2Ku2KdX>RD3~TMK));Y$d2=0uiGhul91XhzQSF%Os_y9g4um2X-J zDeS-C5I1CUCDyK2_I!Pi!{w;cQs;J+MX8wP7i)#6Cp-Qj6`4SB)Fdi*Pyas?sByO5 z2W{vk4bm(KQ$1>#QGRXfV71Jf=r+eARv~zwpf~NUW#_7M=+usBOc}-HDi(HzANoU# zbXnp5ql#^YVUwXShKH9klJC#;aT#(7Ik;bmcY(OCc>=6kIv=0@XuH;lxZ)@ohyV!0b65zrF-=@`%8jH z?p@6k;m4*kPRQ&gs>WxXkO6a)7ae^EW4p~6msj4!1qMfHhR1Dsg413}ix`Jp&g)KVGOM>Js_W6D&b*YR=vjKNcYSJqW`3-Y#^2lrEk^jg!w|zfbv%T_?KUP1$?oY#AlC2^aJN3Ngi+eTtlGUn zd?7^_c+@Uf&?f1LJj*#gTqkQS&#oGhi%x4X>g-L&QvWhf7}?2N@Tbs>RB4Wcq47QQ z2`1bdKOSb+iTLboY48o_Wr9#laChVfjTFd2zwm3 z%nnE;4pMxpZBdm^Rh4OPK<1*ao0O5E zxO7L&sa$I%V6=%ZFJda+jQ4K5ch3E^oO#>(s#dvlI=Y9dUA%g#YSCO>7z+Kj&g|5y zTLS_pY7@4m?WOG&SE*rH3c-D?}*1OVbXz3qMe-wSg zu(|ERP%W`VI8oKDv${YRU;NLbNRS+bj#ahHRdo)1wL;oC){swQ@yJ)ULKGUvu_>w^ zr_FwDa)Wblg+64LsPMKOTFbK}Xv-nT4`0oP<9u|Cui5U!ou=0*`3 zj1jRL$n;&$cuMwTe&wsoj`~I`qgc^?;2QHHk!FGLWyZ^%T_x4h(MlqbImoK>KaIUo(M{RMzKl4sX9qT;3>GlS< znde&(mV;lq3Mt7wvOLKR1dxb#N->0{n$n6g%pZ+6PXw_%whkCCw{LXDp*D6rwM93# zYccho@`w(k6YNh5J>a-nEYX;bB_+{2f3J2rdMj@PA-Z{@6?=`dC4~3SUObj-!(E-_ zoSJ(;wN(7`wr8QKESWt}!^jb$Hzn>go0Uz7YEZeKXgAKGeCN%%>-t?0Bo9yV~*+`LnlL(A5)C_TLF9W~16?;I0Ojc5C@leCJFaaL3D4azet$^lY$N$wRl=P^wJc$GWgO z;o4N_PsOl_`l?#|LD7huvr_U^k!76|Gu7f!Bf3lkZ-hSMcX`VOZYu-E3ysI2S^rdp zW`Pg4S1&*(_w`g2{ZYa=3kPy$=R(PIB6y1m*=ya75#rf6-uw0kZ8(lz0mhx&*WzDD z_-=LXXjhD=ABe5$N}c1kdg_P8JNOj`l0?a87l%{l(^Rhl&P)88S*K{=>Pf@>pSnjr zwu2+SX%l$Td%!CW_MwxB?li(BL6H@CU4xg|a#?3(tQ@o<+>RO%N1J+!HNkH7heF(Kop7MXdla(lH8#K9nQlXoSH;?B|7r>P9Q%j)F+8!dmOJ!X zH`uUg++v)j+s3+q*@3&ske#N0vqpNpFSVM{z+H)lAcMQC8aF~vDhQE@^Gl)IYc+A8 z=eJm-^GEu>fb!dfOfw{6H)x$<@ypalMicWKqii+>#g1?!J)~S{L&mQ$x@Ga3v(+lh z^0ZBY8dw2!3&KXZbYaznP$R+Sms4 zbTp5DXhjtF6j+|ueGW7GO66gR#(AalN1)0;epv-}dO78p6pM9Xx$R+HxMZpK;61a9GnNfkCoQs&!cohk#?s|ccdQmlpvgT$SNW6=8^O{UNBEe|X1!~KGlu?Xoqt>+KvOr0GJ03e>sv!{e4K}Z zl7|63rAK=eT?xj>u@Sjz`RAd|o6b#}?UWFlk@NkA)qa!1t4b$EEgBNrJpKKBI=`HX zhihB~JTO^hc!J{sh8PhJcItASS#=4&t!6IHrJQYX&QCly$3!RouD6l{Zi0tRX-&vn z#$eYeAQmP!k8YnB2_p(8GNpxK{;*&_gySq0RhpH*LU_x#2reOeV69+UvRNS$`@=YW zge_93=~zg)HM3ALHPvAd3{eC-MI2E_jgIDfxANr%6W#jvN-m+768eIsz&AQ@3=KM! z_L1i}zqHxRR$F#AH4&=C_yn&Bdu4~dyzZ)WR2Hj}KSN=aRZ zKMo!{tr0qQeK=N2@c#S#VXEZ5ge|=A&}nIY<4>pZ7|V{pChn%iosw8IbnC?yIW>GT zugiVJ6l=)2Gs`c+m0P;IJDztejVm7I@1fNW`McPtCeKJ0UU{dBt`@O=i)AmwHvEhi zUOlHbo)!u{ken9rT$7Ug?Z;(j#T)wmqq+ZKB0xV<{(n;XWv-p`Elwqn+4)y$K3T9} zv=**n&U|kg7>(*$g+FVtA6Fbu-1xTM;2a} z903>k=spe!CSB~)eyAxcAkQ7JO8ld+0JHOFCdvM?2i!$r$?}PfmNs^O{TzByHf|1( zt{!Whheg&A8iSVXn2Tc^K}y4dEU9P4iC_7UM4Uh4$Y<-)K!WRsj$n)^-iDvLW->?G;{tpoWFlO!Q4Agb|9&RU>oE z_0#!iO4^K4O_@YY|2Wjl?+^8OFy-=o!}Zai9Zg=^)!@$RppkMlB9f8CHlB-!e$%Rf zmA|~4O;5YMK0qkh3%f&4vN2hIrA0B-uWU2np_7K)sJO)S60*@)-S9HEf__gctU;hA ziF4_Ut|VbqpVFb*==ec7{%h3BnD}L3(g(^XuJsPSa#}vryj-ElhO62yHiff1iS0IY ze_NVPY+6kMersvx|11aM+a&C*Bgx3= z!C3+Ravix8XW=7%I@wzlc|&b|*x?uP;e9ur4yaVZ-9kqd*XaB1PUQ=s%P(9@XT`Uf z{Pm>tUI2}0#(YjknoZttLNLwfwIHTG*C(i#R5Q1viKA36KaEG-%>CH>X6B1qL`ncz z$J|m`%CR-9){9(R>&rB4>)uPHxm|_bWD%U;oN)m+$6+q8uzT3_i-mS-E_iZ7EftqB z(kQ7rd_54M$($p+@!Z`Z_tv!QD=wDNs}qbE+mejL`h zJzWKC&%eS3Ou~+_`=NIGcbex(pXW?qGg3|u=x7G%|1WOzf!?bOXxKU+x?jaiY4YQ( zDeWg}*z((D%<%7Y8$?l1yg=@)rbOEW<{sT4XnV~?+1KMOb>#i?UkN|V772k6pQ=H+ zE;#S%4OhW$YSTj`KNGAM8DC`PKUmLK1MA~62AS7ILeYn`-S_GBx8EzGBTaYwpAbX@z<;0ftms$j&ECn}hcgm>;_6ExGUZ8}_=E%U_lx68d+p z8*4!KeL231)Zvl9%i?D4jv8Gu*odw^KK(-5pfu5=V;`8fSb)@pM=eyaD(l#>h&qCz z+Z-UM^ZzJ0w*?ty78e_?Bzsqceef@US>;AIk#wg9XKOxMom~HKphOocC5$D5h%q&@Y#2>Cy z)w{X<(v!VO7m#nA%@K0ATlLd7-rv!ZWV^BzOq6Qx+R@Uq*qYzc%IuoalBoHhRt%RW zkLjgXpMGjNUA3ocy7AsS&aqH$uRqz;YOQu%dFdE`kTXNM?wtRSI|<`mG=P?_f{J@} zynNH6-bB?u#HpCbn=g`|m&}?XevZq)zxJn=QT6#LL&wtHa~(mS96#WLrEv8u8n2P) zUm~tu7`3d#&^5As6PV`IHp8dNZRKJ789nX7<%rB8G~URM3)kJm_b-Ak_MU#h*hK=V zwI(um=x}{e?VUcBYL4OIdzIo;ik|Bb+D@M4ZxHd({4aEmS>!!;vcdd~mX(Cjmdwv4 z#PiatrIygSayo*2e_MuX9ol-70BTy$e3Qu;3v6qwPCU?NkQ1TEbvyQKb*32NYC*kM zccmC6`=Wppts9k38EVnCI8*4f>v5QR)c)1M(mZhPb%Q3_%)^-zpN6oloxpM%`&RUN z$F6CdGDnV|zHqQ%yx9xrnbcWJlP>BfP^Dp7=rCDX7Q>A=8JK3@Wt%s0r!Beg=#Eq$ zKUJ4*pcHy}ZJ@j7kv;V(EuQsirG&mPZ@g0;hez{K3Ns(i4N&`acy*yg#d~ODX8y1( zx$kzyQz;7Nn1JqX!z4rLKlDhf24;pI@Ig*kJ#8X9%lV^%L&LN7Tx`$#)947pHX{A6H9H17g(-jPuCZS7}g ziq|Dc6s=3T(xzo4GkN*jeYP5ui}N<8^>-NLSXnHCr+4CaYk+auEzH-91VPa?^ur@% zH-DB;>P{`rgg-oBo`=L?CV_H3ukgQ~2H;RVi&TZD>?O=P@3eGZGCE|;wA@!d__w6U zYb-FL6-))4G~QD!^kIGQn8$Z>@Vmj=r3rk{)*~J4BiYK0mX+QL&u73Uu%uPVwmIYYTjwpP%FSlHgcNY22ordcmGSA&Hs5gYTIRN9 zXNs=EKf2J>V}+B3Z?v~H4uc9|G!jfO59p)4(nqXq^NLGKL!!n{-Bj3|DWe`%{HRE%YkQwU zn6YQ2C?8acD~dy{&sthm`hgPmRARMG-Zu!MoKu6Pu*32e)$Rt8 zv)7S;eevMMhudMLFT|RwQASQJ46^u0Sw=s03VoxZi@l`%XuIg(vk%w}8!iT0FV-`* z%bX5Nl8-Gq2)~bN9nQK`>-v+Ia-kd!3B`1| zZAzX~Z{iZ&!N6#fg^73IhnRp?KwqOZ#gmMBYdUuT?cMPB&g9^nLeothX?j zrtj+V8!blZ@aj?#VGWa;R25sV0`<0~_Ki&I-)n1yVhlO5_KzcN_Wz4EsYT+9JuFt& zZz$#`J9D*dC|Aig+~7C~NTwsKi+DWfhBgK1+Y6r{jnhOAMa%&MqU$ptZ5-@Un^YXY zB&x^TE#Tw(vl@#$fsjA6Z_6?vXq1a$RX^-pqMp+amz)x+qxW+o$lF*A(MTqSMZPHV zt}4wn{2JPMR4GNx)>0mK_Qm=%ZQ97|@UAW7yHs1p(9N6WTS=K;-t6I_W7E#Qh7!1q zGg-4?U{IBH9Aep9>sG&66lKudm`Q+wE8jp zyx&6Eo}s{KZR)J%kBt)}RVwXiavwK?5&s#lsw!w6{l+($0t6pMUakw~3B->B`M{7Z2pNDo6 z%?CLJ77`>xe5Dq?f~+bBoiMq$V@YkvjBKd-3!uFUXF59VtD?*o1#6yZ;jVedEHJ}2 z7WH|F&DRu9^ZmNSB6!%UEv+>u>g5rT8b>_w{j(>M>l3-~q7(mkx`i$5ps{g?SqWb@fvs1<^&~)Ku7ZdeSFB>Ew3^ zDf$k_=~PXkw1Wv(Q#-?1PWkn-u2JfCZu$>SySYu&Yw?SBhN>PMWrl>+63?Rwc$y0O zUK9DYOIU~WVE{jL@?sCOaR6`4GXcNBqH-+7j(e9)5>EP!sC3Ei$c5TewPEk!^5ETX zIxiXOI?tICr1sTFQ6@spk=T>7aAmy$g^mZSG2axo2f^u@{y%3-dM zM$i!{nD^Ka9f@iM7v5`&kIx*Dr*Q0I4G-ca(1RRs{*>q=YqveF%6 zy%??N*AL^u1t(IQeFlEIK!&cb@Z&62YDJ+lYmyi5ZqKSp_=UC%-K^h~s#4~wG6Rv? zewbgjuQmAx#FVsv$JQ9SKZyzzMLCgd_}vSGV++6G7$E2l%+c^n6uNw(5 zq@42t#hL^=452GpaHfnu347qURPy^MjtL6bkFOd&#fi{x{d(5AI>h7-s5}SR$)1r8p2H7Twp?Z5NUyY4vm}qtw3ju9Z=%YW2PJFW|%4Gjx@h6R@WT1|p5v z+SC*VMxzFXtc5$U`O$6P+6@S$(I@GJf62f8HIM;;C=n$$YDsgWoQxKGz}j>x=;L-b z9I8~LFd??^;yPZ)kP%IHcww%JM84kX0(6K6L}4yGyVh`b0XA0$C%$FRzFEVV@I#^# zhL-zS6LYfcD;W5Mc*3dlz0&4Y>cY@!$nz z@0xuwZH28bXG^LutI(?`3m2S0&!Ku$?Wn)EVF?jZ&dm7~`paT8Bozk2Oq?e|^S55b zIS@QV5{6L-Q^>Gh2koC+%|8JV$z@>LNKz>V$flS0mR`R-y3j%%#aPHHbPUe86O|kA z?U(*g4Sp7^!ibP0G1vK(9!EcXlfHY|~Nai8A zx+T^msI0$$R5n&)ccLV`CpQj>6{~uA3J8cHB|DYhl&2!T3uxf!+c8P0m3jzZVu?%$ z5Y;;0ej9Ef@TPpB2ZC%~Qk0A+CyF^ip7r2_4kn6^z5irjNBp_qhoRf(UYuHX6(8T_ zFpp&*6syHTn4YjA=?g}0d|cAfHkr4K3LTLfIpQz6k?%LW7!VWL?YQU#7AV*da~qM! zeeBKV$b2@2#4qxH0gX=IS=W-YZL%h%$i`rx5MUT0f#igmq5y#i3HHn)iUM89T+uAc zu;?&)9#KTZAn)hsJSB^H6iP`k*okGOsb`D&oxTHk$Y0rq6h#EN$TEP>U)jZx!tGs| zym(G_9BM3o4iJZV*|P#!#9$KmA(8XW2WvztnD7YWGTHznK%&P`{rVOv$Wp`DsChDJ zA!sa0Q|YkKKQdD@WGV14(zjH!m{Vo;y)ltLDyXs}X?XISVYCRo64v)Z**{xCA6NdN z+1$a$^{#I241*MnO2`R4nMw-7GizTJI6VVaF|ieD|k*pf}jL1E<({%2Oj#NU$e^Q zp;-h>-g0(zO`M0`L7#ULaI|sB>h28^ozt)n+DvgFngf9?(O>(H^6y`_)XZFW`woHS z@L|>%F~8BDc~b`Vf(OUQgMjnUeGoH{hg|T8uwta+L#1#CQlH`f0`LyF2ixH6j89~a zY=lL%gJB^`Ej)U5E%7rw2k88yz3j2X>XTWmz<{+h@!y%51i4XMs`vCp!CKD>RkvVK z?mJKgRV3Ik-N0eKc8B{QqozE&-kx{0we{*HexiorKU$O=TJ z$9RW}dN#5xKD<#>Nd0mQ7Aiad>PIl28C@e>q6Y&&96xwF>;Vkej^eivX7Uj5yiuWM z9&qj^_!=Gj1*48msPIa~tTGeKlAC5zM=MkSBpnTBL29Wr#c4T{gtjri$WV#UGt(XS7Z@O%-gWzA67m=2=P?#$;^HZ9R3brZN@RvlfsC`C} zz8HH)TSepY{*@TpcD-&Ia_s6!^{51Enwz?X77=8^}7a58-lqsl{o>pu%2EbjuBypi9a z4#a#$YXI>owFNB@NN}Ki!Iyw`tiJ;)hSp?$^tu{j2K{>m&18)j+{;+!C#2&%BpzjR zeN|iuhIE%?Yk6)PorjItCzqKoaQx3rUGTZirf$g-L$LM-dDl?^E!nKH`VR8Iv~f%mMYkVo1`n z9%GGT0n&~p3Bsf>ma=#Oq6Fm-?gUxjHOHxOqm4b9_ZI3P4d%sgT`qcb30Q3yQ|Hq( z05mU^>$R9h@)d{RB~_^%YZt(HL3m8wVaev*GM5_U7AEPtnBSUEA;|MPka!Hy*{>*| z!s8Qkn!QQiN&f}F&o3m9130TT^KvqXz4J`^DpNZlNKW`~*jItkamu#vPxs1>n*3y# zSPs;es_lac#-tsp@TzltBS|rvyt+eYtC0ZJNoBDS_y$m32szSl6M26f6LPTD6b04m zp>qluyyln5Pr6W0A(2W1k!-g899%!1GLu%GMTRHD741D^8>C^r^G+%t_nO|;czV<} zNmUw0gCpm>aCUF6yLd=}5{qSBG}l87=PizO#kTTI66EP{h+X0GIn(T?Jwh6?pUWKW z`(adhKBGn_C`O%ytHBOttLS4N5YDf7G0V1MMzZF(a0YNRPD8)&vL`^X(sG zoSVI*v(BNB;|&|$i_O?ku~e=mw_$i(8E}fWkiuK4ncqcfwgzNB1{wZES&FVn1T_8(`n2LvxJ`_+y9y<-ff9q{HJhpXed)& zqjKef{#Ldr!o8nSq2Vi#3rgcIQRwt3+iPDk7EDDFcv}vP)D$%bhsKPkWmNCVe@j6Vfan*{3cKYT~W=(2C))YXF~tbhf@x?=XtrW6qUyWW4NrwxLHU!T9?Dj7s)Nzk!J4JU2}O>F z0ofcBVxZOi+vphuxqg8tmtmv?k3RkyUhs8roDV?ll}5$oh?(1}}Ss!2DV#b&2y*HD4kWIFE}NH$UtM(BAT&cjw>k~Y_*!UFjx{z;a>@;nmliWehJGe5m;>q$L{t>xAc}4P zGq_T|#v4I$iMy{y+NC1NlTY=PoZ)ceHuCqO?5){;Az#oieS;$AL^T7mK04k5;h_8$2nQPw5)F5bpk}Mq>E9=YH3n)*nsu{6;0|K#mvQhzpa%QesHc6EC{$;B{#UB~opo`(4 zr@8x3AXzmdoM|ec**%Su*vLy=4313UhS{KFqJL4)=`H8K6>}Xb!b@-0o4yv3$^o&c zR+7b;zo>?4D%`@GH9%Bm6>+7Akq+QBT+GS)U{48m2FHV;^i#)u7j)#T1X1V%EwE}Z z3CbA6;8A>)5h8jCqQzF^g0)N;5GeYVfZQaOXRuvL&gs=6L(3DQzdy6O&v;N^ympu$ zHbVe**|7jf^_Hcp!umNPEr6ciE3~j6G_fdnPd0pN3;-Uv4o6jT*A`74ihGzDS*-~b z?K&sgGwV22wX(3O^%A5N-fb`*r`aN`!&nwDxFxS#)P~nT2Dvho6RiodygGB>D^iUY z8hvjkmHIzrM3B+CONd}%@pxjsrH(URN3#GD<|6y3^JQTgO;$T&_}i!a5_!p z0x;EC`J1wuq78>T`pv+KW~!(6tIcMeSp(9NEhI$+ocC3q`|^>Yn{vG(m=#!osEl6w zu6clrp&JMNNp{yQFq2u5!DL8(m`yX+_zIz?Bj?BNe`6tW)Hv8sY08_vEc?j$WS=GM zOp~9Yl@QYKP`fMf@6uJy$;2!x+V*I_%A&24VvNu76s9KSDJmi@+wu`H-BN`P{y-t; z@^ZU{x(GW%9gMnX7vkxnakK;Maj$+Y7D-PTQA@E z+<}E|O2OnP6U9b;#Sf22pMz=-(N$2k1C8rwsyL`Pee71>NLB|O->UpQTL*rXHLGwP zIAD)zVwiw6eM3r5!`)8)ZC|U<-VUc!JvhsRLq^~}H{0?!cWzv4EQI;$eDGU34`=h% z=YBFg9WX8o79DLIfwhZ3NX3QzNesPx@H6hN`x~^aUJ(54_`pq;6xjF*u1kkctj6lR zK=nF@#VL4A^j|bcRw;3K-dIO{cfAI6!z`NAvUvoKKrR`0rE>yot1P;(NAEAI9!kQS zvd7$K(oI5!%)&tH!(8q9m(5F4iCg%c8}ASYruzLR1*!%2t3!kcnrZ=LI!uSKpSrB4 ze|C#vp;@lliekUcn`o%1h2G_qBU?IirW{hL>T;SA^;1TMAm$aNxDwHZP*C)furlPi zj@b(ibVkJe151u%F~Y%9Yg>&!R@vJu5h9`E!b^j73A>Wytz6voaWQ+5`W(LTO`;9y06vXn_CB+neYsk`tVMdXKHs=`2{RPlQ>GlZ^ z=df@OuJ+qz_qK#SB*BP;#ihy=T6AbZFcnV2C}rQ7fYgB$6=it;9FIX~ni_UYN@eoe ztEvmDcxtnD&Z&fw9mUYF0VFGIm@I)MkphvYK7m|X23*%iY#~$U;nFRNgM%BEP%wWI zI2`o*TP^zP!uFpzu~#*GCi@4aRJu!5F!$~%qVgt%`=pZ+t}nO*1JXClhkoNa2HaFw z{R}2xJB@_0{|mr{A7tu)DOCr5ildxA$p;Esu`>ZKBti?puKi}K$PwgHmK?33#~#{? zJv(|yqq;3!00Pb5f*P_>Nx&7XO0<#=Gn1@Q^!Y*y8(aGBU{$={qFvW@DN^2i)Sa0m z+46*;&nwkH%cAmll3r@`C+3)JwVx45kw}hsdbt3y$r3UUDsKi9rnuwfF;4__q){2* z44+lQN4!|ln~PuOz*GT=HPh*I#S>v_rfnRjTtJ=}sNn-ywqq!Lf;zPvZyKCjok6-( zMDT$e&t?8NP>3ed#8FCjSeW4ffKW-Zu4Me*mcSH80ERP`*@0*jrty@mB*(I`&ZroH zf;>9$lSS4li;*?Z%j|*+f*nS4j3J#AvFmvE<)_rwfiUKH4z#fgl&Da6I!&~3c-Iz( zULjaA%(^*~2`uBEarz|I=&`hVLDOe4A3XBL?y%H zg?~4zhq1&*`AWC~GC;n5O5=E%-oU59kWH?P$&&mEax_E;TLAqB6iH0<>ZGw9XZsg2 zYSJK2U5v@H*SyObBjT+^2}eMu;44o3gKab(atpCwq55pbvrO|vsd(|F7$UN<mTMlkAQm=i zOVO+QAttCWBr*$W89qIfAOMnd3Fza8!H`5OxS~T7Vh0mB34lt>p&8iVlAGnCmJuec zxmlCUA1+}V38yr48Nq;IEK8y2>*BwF9|&c?r}$1tv;jZ%Nd#XrOxbyuNA}PdHerIq zZIi^<(pZT>`Qm{C0L}evcE7)Xu0u4U0V;U8;XS%~F;Wb8=nMc51UHNOs(u);4IfBr zPz3iJu`Z1YX=+H#D%t=g8W43-+;vI-qRQ;U_#Lh8af4t7!Zvw?uY~2|XWxwMFNMt^ z;N*oPpZanAy>+wyYbyI?q#mJ3>Trp8T~P2-#K7l!Q8q|VZFyFPc#BMw3l#D>jtwl~ z2NdZUV2sFhUJ*L}Rc^ph7SUu#Fa-$M=?bZ=Fx~Z_n&+X-g-?7BEf^LD35oH&GShbV z2CR_BsPy4r-X={YZ6A$qc$>Go9M^OIDtCJpKB(}&0(nM@v0ZLH%FL(lVY^qkEOUcz zeF2vM{C(RQD5H^X;MaZV-L#D^rGA8)q@&~|QU0iIsSW0N?pRFQM(@}bS#@(;$p>+j zo;m#5ApjdWk|G)anTZ+Wo;y-ok50bQNfoIHT~qaY8XsySlyUdfq+;@tFOr zxIuZ$pM^YthfG_W<}7?c9&i^G1#Rnw9`BWghh7-oV@1^Wg%p$>x-LcKYkRn?!i!qW zfmmisIOF*YNJ!NDuI`8QsERK>g&3C`H8zq6N}D_o`vV7J7;+X)MiAO1lP-tfXMiw8 z(}g0FA@n*%9)5zCpdiZDv#4n|_8UOk2Jk$%YT4#NiK_9SgFnHW2k%WOjr!(JGLnju z!7yX;;^%5Wx{}dFbh{u=PpoC}h)W4{i3{2Q{7>bfj2pTNy29`{p`y)&i{hwM5n#$X z;=&5c-o)~aMtmCa)V__Wmc2GEj)3%|@UqP@NAN;nQ^ido;!guE~9z zXsF;_tdTNhF(gA7eN9R576f_)S|2es00)^*0S&pDXCFhgV0eI+UoL^M=qvUzm3kt4w29R4gN3&^^*aW@=ro|BvAmNvAsw8WrD9^ zNpv&lV10pV5-tQpWE6IZysb(FHdLqO4E zR+BYr!l_Byrmuxf7Xdg&N42oqY{7-bZgLvrRO^ z7CXg9iEI#s$cA1)&WH&-f+Ao=)wC{0=LzHHCO3@h8v``5QeBr+C`3m=GeNS)n{%&= zp`#h}eSr=RQ24M!@}B;o|3?1sP7Dcv`dC&3ew_dF zfP^Otfd_ni{_g|w-yqEC$B(@@Q1t(f{7(pi4g`R`fTuu)paA_h@nir@+#W%gKOn$= z8w+H(M#osR`2WO05%j>2ErtO8`@ATDE_9D?J^!Cr!6ep*lNAoY|NBV)){%_83HyJv z^%Y=oG|Sq{BEeaFad&qO!5xCTySoPn4#C~s-Q9w_ySq!!pn>n_J97W~+;jTbo$0RX z>FLp~sjhl!9b1lu_`mcR03Zf2InNRJ2>AV1wgJ%a19PX(GWWl7S^Y2&fjWobAcOzf zbO0Pw>=Zref9(_iVhjp0fW2Ra`hQ=U|7iwd?V>@bbM8X$|D0zdzrU;eV?nL}^>@o? ze-|)5{t)I=c^n0t$!Ch^P%jG@Dy7V*ZbvJ7ei^Y)A6!HuMDAT=?%p5_;XkREl?__L5-`>0}B zQ+V0HeJ_?(O`9cX+~h>Y?@^@WMUEOf`2YwAd?RSsJV{~$B#fC*^14qL{r!kSqpD&&nea6S!F%N#_h6&MuCtYOytx{!bQiE@vcb>+*i+6VlzZy?KfU~4wLl5MpWbHrfM)d{56k~eP+0YGx4Ec% z=LJKR|9Rs<@^^7GLwzBz49EX3+d@}T_kS`0 zii2ZhpD>G=%4$~p{*#S?xCd>u3PkJq`&Rs42?`|i?_ck~GanS;k18L=5wxfuZ!ZWS z6g2cdO(Xt>!a)6paYWuVNFnaSI6~0Te|GnV`5#CZe@Dgu-PuySQJ?Y@j4CjgrKJ_; z^IAhKy^C|F4>Abuh&EqiYSPTt#4ZLnqmTQVcc_^>GbvX9(LJWl{42gBR5rcL8FraMW#ak%E z!+T(@=eq%>JxZF$%eUH&=Dz?V#nr!#r9Kn)a2=@9eFTEiukJ2^sGz10QG2$8dPf^k{Ux?;FW zuVCdZCjRTYMv#Hx_fdmL{Q;UK$4hqZRr+Q*?_SX160h0v{44rfPN#cXjDsLx&3YE;MWgSF^p+CH6A6&l@|A886)2z*qJZ@UQYNKfV zuS~OU0@|v5a5vTm`LKSw(9wfHQ_6aCfeC)Ez1Ol!;5Yl>{e}NAQ(>d5`mJsYx0jsh z5^{YlkHHC6%%!Znb9Nk;-e= z1n;XD)Y6L#Hk0W|1MVMCDLM$Kda8241Xb zx|HAACNCpeeCiaLH1OP4aa)+3GA16sZP?>V)4KSZM4a94^IW5K>|z0RBduxFe*62m z*qL{vo*nabv{t{JV{cg>YjERv_qbn4DrlBA9cy|JpM!a;+b0&oLT#-~Dy5r_=g8gb z$LBjIkzJQ`mWUHOK5m1MPcc$u<9o0xe*vs0o6@81$x1Z6g`Q;9x0>KHEPW`w1{}0C zE%bs+W%Boc*GcXj%Abuelu}h`)V~pEpvo2LP^O5t53pZxP+Oyo&uOYH@QyQT>W6BC zi=#tdu^>8}V)Ta|0o0{`C}2lk_CMoA-MD5#!9*`A5F1OM(&f7*3EzHcq5IyVnYACI zlxOtlK;izK80MK*aL^B3D^#j@`>i$k!~3CDDVni9{(+WzwoFmYQdyz;vxdu#9Y}hW zLP$3bo_|x?4^S022T$Sn*lH$U?}to4s{Fb7kovW)f8f{7+!O&7IOnp*PaQdK<>tdG zTwY}%jKq+2Q8aNBik^xgGpq@!fdh)3?4HuAS}A+djH8M|!;GS_tnde^C4;&~W+|nW zQwc4ie*m>5rB#{RJcr8CP~0*qzxq;-9<#5u_g(2yRs%ld5Cry@3+2UMG6L9|>4BS@ z!=;ar5c{vu@{#X#^ptO}GGkrsnbOSH4>3g6Z(~9`&(XMUyev&U&jGIGFXKDBT$i}4 z`wOAa2c3?ip#6v{v53JNDB$&@f73b_jP4>~T{I`k1e@M6uF77HMl9cVGI<@Z1SZ>} z&I|5KSZ@1E%iD0(Yu^HExwk!W?yeD_8a8WRy848~t|!6Aa|2o#U~p!*v{5^HsQfTghPo<|Vths!v)i23@q z%l9js=WG7`N&=K85^9|u{dJ@aOdxB#LDCUCvx*>#<5jyRf$xdQ$TDkfY8ceYkUJzo zIr+SdPOD$x8n-;@4^ao#u!xFBQJyA%g^B`W?B_rR6Ei*-Q?~&ab5qSOQYr~QHJiRB zykdc){r!SI7$`T(9n^KHN>ZLd2JumCNxpU@``4vD%11+k`TC_CQvjG)|JdD+I!VVr>*-W2B zQ#;i%ovpcQTEvF$+}rOIs#cxY)A$tN9nR~T#xkWM=_Fc}|FWVx`{!u(F`Ru^`vLzR z&;A|+|HstNKMo|ASGP;7(EDNRck_?Y?C;1RpuYeccCu-#zHHZ;&+E*5Q(uZ!!g9L5 zI(U8|bX@ufV%<-4lF`4V$l#mC<~5lnsip4Wl? zjGFVzzW@fbdglGleJWj_DBfZ`&im`x&SXtTkerF^^z!r7tSt#05GN%@o%Ek2PW?>Y zd!kQjUIdW@A?sAbSAlm+4;ydeL%L z2*9gPeQDNeXEzmLo=^oPmwp-6;urlO^8O9%p%G3F+ z`ybIWTHf}ulqv6<*+PzkK78YKTW8Sq7+T48#6o@!f%r(SZGAr``<{3;zi@?XRNP%o@q-MKNd7Xu4C8X1&<}tB6kUHFg{$3rDNKIdg#zQRP>O^_e z40)ZC;E+qu{zWr@;!9=u@GimA$2HRE7~e~|v_H*iTT_~5UH#z3YAgYjWXD|OsuZySJ#1LIxQfn9` z=oe{KmFwdUHh{n3u>o>gm4AaCM>YW^Id>zMxo-nJjaES9i|T&?5I1d|Crt zx7x{xB!O^nu;cgi!a*f=vDb2)cWsGdXTog3xw*;%ngP^vZIM)SMc)k0>`hr62cYrW zsc9L>dy<0!;!0mqPD9!8tgYYNzs7yuvn%#g%`+(NBzD!&Zu4uN0F;<=5`aND3L~H% zCn)b-lhH5-31L#bpyhmN1VK4ScAID-lw4HDQFO2UNriYZ3=-i2sUqo!7>7vI56BdT zA2aRCRtqO81aj4}o&%)8v|)k%fY|f<_bP`eEv~z&H#=J55=5GteGF31PWnXm3?Ly2 z_i3p+;mgJ6_o_cvS%)6jv)iBDBVgf%qP(s3r7{#^$jNTy-t6qa%eWjjRX&u?@azyx zy7o!x>qGE>JZ|orVZzqmaeMOYR(Bi~8)@{PMm{}FzoLAv_|A7sU2c7HmECbQ?G6D9 z#lZP{a~PHwUf#X)>P`bqd~;*1&PiMpZzBRkK=8DYjE%#!sGGp!6fzh zZm%mC1r&UIkNp@OuSsf=fA$zd^~>nA?&C2e$apHc^}O;_W-vILzF~3Xh6fuE$d;_bG3 zWq@?mX*G$a0RY~C0kvGWl9-9{S00bknRq!|WKa{JMFg06395$$hg&ex&T;zr_D;?V zGPF94!5UDGxdw7sW zm|zS@Vsb(Goz=ksGuaMOqE)o z{4;r&r6gSO#GOSNODY${AdzI@$V^{(CVJ*yx2{=#IIu_Dhypt;27eRsPB^dFZdn(A zj}ABTNavzk-mC#(Clu4569aKxLsv%EPQW;U>`+{FSD-3ZE7pS8K{Ep_qS$1i}9AR&uHIP$}9;<1k@DATy*=nrQAJ{=p5*edfpUXK4 z|LEh3;-6owe|E~v!z`o1o1GN=!ysmRq;kM?H5;r5Cylq5HR z6A+E+>{d_&1(VE2(J@eontQ2&mpJxG6PX&mLtbo7Yj>Yd-hv+_8pn&XB(krf;uTnU z;`@ZC7BMesmdk!!mU!YKj9}RX|EzUIy7B-rS5Z)~pOWDU(qfs7#9j9W8ySm8GRvJP z__$8V#aUsfyg;dC4epktm?G&-sgH-6Yf6KMl_dD@E|+l>0>w9q2-rhjw;5TRX3E3K zZ?*6rqqM4%l+{62+@9|KXr#yo^U{;)d#py0PYA(+m@o^l)xRsL@{t0C+T(}_OHkR@ z7X8%VxkmB}Vip>E;>kITGNbE66hprxX4AD)#<-Ucuv5W2%H8Z^g~K<`xI3a&i4NO* z=wFIRF%VGrCR08lqAs7_9ftodR-@DKq^EN07!ZVT%NJ2KWQ6XOB+r4iZi91ktkl~_ z6Q2tyzZ%MX*tM{mjGi(`-x*af@T48gmg;XXOcW};g&`M(xAX?LYMTTzqY?ZVQopf* zfGY#w);NJ%{bPl+cvt1o&9KWAMP1_|COBLy$0V_P0-b66u)5MJkz*M&$ntk3@he#7 zchGg8Nl2qO_yz|8VvGPCOd%L$!K{w77e2@_cFbqg_G(;CVKtduUE_6vASdw_N z@Z)+=mC%Rih%^{b@O=@%s2t4-y*dGYdA>cu(P@i)PLR^LLVaO*TGo<{)E4wRL9oQn zf-Ka=g$jK`C-;_`PNISJxJ1OC(3|hEc_>s4ZCYW`eqAh@p)Fi*wy?YGIZg8{4;Hh- z&cUC28^E32Yy#R8w(qW!D1>ohEsNv1cbSYD(h_SUh-EQW6R-;!A}UiPH~Pq;k&w7D zOu^=%ho{K#zywL2s&3^FI-JCtHRnOg!&V6)2Hsbq@>T(DlnqkFHi4Laq?Kqw%)$AR zxrb2gN=}6$!m2%&tSyl6HYFUD5(XlMAkJC!pbKV4S$sI*?*7mK0Y&02^&aS%4V{6b zb)>$c0NQIR4ZA2I4S%&pKt7j@Xitq8{2DI=22(|f?{KpJ#gjl~#c1M8xHT@ma;6Rq zaw9}d&_LuIZE3qx85+OAxc_`%sKW}8ne6;AxDN#DpI_EYh+qe;q)m&N4Hr;Oso_;Yh_$iX1?3;2aM}HAr`lk|7nEx>1iIbQ>~x zu{aJ(mBwAi4lA9Ah}uJM0}7e3MWc!YpAfWHa^&T@jypH4!X-@vaKVF!ceR3WAEa`% z#QWGZFvZd{h|ila=3E_5%T`XXgjBm7k}!qFg=|VbBIcQiIdE9C)G{YeQh{qSiJ8;J z?R^s>$pDMBV;MjMS0q6e)QbpgdN~A9i@U0&2{7XsyCiP7hGrNeMp?OsG(2C+5>^~W z6KO6yrhM0F7>Gs9oZ~CT>JsOog*Kd8ft0&trvwCmAj7?smxMEgiZ^tYAitasruPJiB%P0_$gE0G(8lHH>QN%+tlCs+!4j~uRa%^BfXo4J8d;KdwkQId>n zhixe$mQKvU7u{5^B1fNpZxTa#DT7TKOMLBtLe~KHbCnS}5x!VJW=_`&@$;>iTo^J- zdFp^$Ou2!U1T$}xT9m2~SlBXTB%sVS3&nylVinn+GscVuA=Wun29f5?h(F_E!1sZH zl?mSVj0tH(jxcS+1u1z`hLkdE?pzW&$J!WD0kumR^>VA7xZ1rg3wf?(wTE0oEYwOm zo_Ht*H+Q(v(n3hklAcGBmCzViBxn|jxGOXV7`X?cES>(6Bqd%1t-z2Jm^kes!I4hB zL9ASFEAwoE;-_KZLeP*E$%@9a>D>(kKa}q0;@>Trz@0nk$rt!1mM~Y?SZ!dEu%5S3 zzpyA)xrpsc<~c$TV_q;WX;^~227R%zgC}iFAeRe4sZwVUK zkRVJ{LFnQEv@OOPtT0lSaD{f26{n1S4-tR1x>4Tc#xC74s53u#E8@&1l5VcBPa;SO zJ9FJtzx~4U6eEc5wS;axdmJ&D|p)h>^-aoX8oLSHN1C=dy$C zg;9B3qO-)3gO0F`INFX6V6{8D8yEN;&!M131NPMba1aJ2J09Sa^V?8SJ@>$m0)We6 z$0X-42FIBe;6zCv7Eq@acil%?q>x&yULK{a_%o{7J0izgjfbENUA-J!3QkDC3~zBx zwbn7jk)rGAuISIvBvwxXVv@lS7mxI=Z{mh0CdYCrZDot#W$q&=Fr()2w}vOLLDA?U z5zfe(mMD=QX;~Xu@lo0%(~_pJ@IhJb>urCOtuG-Y1E$y;`YO(RlZ10ESBr%205bTh>oA6|-ArZD!GmxL5{Ou+m!{A!& zn#dBRwN#2I*6-$URGUtQoV1y{v%Y?^+o0_WvbTxXU^=N z>(*CfT9CRWv!5hKMR=qZ9()&`Na3dE?y(7m-{+v}9V17aRWVG3%1bqF`H&`vAq53F z^Diq2f@S{_GW}y;QDO)={2l$=jRR2mS*;h}J!GjNwtf``rI#$fnO97+L*m%CyAb0`9z?AA3)SUq z_D;9JY2Igi125~|cSaaGScGYb(_<(oIBTizQ;fKofeoioQ_&szFly7my{*0o#`RxN z?w(tCfo+3P%flL2qE@^25$02b;@?uW$*oZfe{E3ba{mR0ly!1Wr~SioVY)kw^4j}# z^)=P;xv=>|!6{2(ckP`ttXa%&_>lEyHw<$hx!a-j@^!b!+;dQzk<(CY;OGdBGV$&D z3w!wN#k&Jb$*do!@*LsPFxNjsL*WVqW*HnsHT%O8KLm4g&<+LhXS1~q+;f*H{v;Oz z;QB5jB2<81WzK-TWE(HFG>9Y-UC6IjqJc+hSYA&VHGDtGMn5KIQs(G8T(qo=KT)(e z6^En&lIeUhgPp^M8@{gs$<3d4i*^dvE2>I;oC`+h-nZH*A{&ObhvCp_ia%hHOt`ST z@E+k^4~C~DfPc-0+Wfl>PyKR?2RFoL6M1LAwK?(^*?Zq1E}nZMCZ>k;JGLZ_1lm7F zAnBJs}-(Ra}HtXK2NQshO_UE z2<~p(D?&Am2SSHTFULSf->aNS&92CUF9k$TUozQfDW<~meQv%)aJ=JeHhhO|MMlrW zRQ=}d@h8!Vhp6APbIYD9WAfpZzzjuMIz1f-L7leMArXTYL0(tZ*pEf6VCq zb23Cx$j}kwA4jZ^$6R-PW6(P*=&<__1rh|{9||NMws+WCru!jxd-U{}!ju!iSKW`m zl1tFO@k-VQGEXJ4g3L%hM%_1AJwIphA{09bIC%?DB#_w$M2ycVh&&kJYEHl-Uz`KL z`T)wHKe=88RQWnp{D{@vga$!)FC6JUPc00ODN?k`5BZWPGwgx8i81|9#M@iHUy^Y; zn|tele9XPH<^CMVO)rRU%<1VJ0?*d>46^af)Z?$jtOO8%JX`!}+m!LE>DCV)o=C1# zYLPIc>L;)qQmw#o#csdnR5G;BWzEc-bNqFDb9|m}oqF;Y_momMu)!N%018W;U-z-Q znQgA2n+P6WmegXPyy~wwK~+faVadb406&p@g9YnU_jpk$ZZBAFmfIUNJ0t*%}tk$FQ;p49j7Fj37;U7alem|+abLOztPm6sx7miCiRzf<`$q7&%kh|TiG$#l&EK&Z zj&!csE_us*pO%;Fu#a$)PVy9A=NVL4W$#Yd3cuRmG-9pn_f+Z)7`qN<;pZalzQ}xc zUtU}|bVdzMbSpGSYo3c-V=W2bVj}`mvX^7I&%;q2WP*}=9r`t9=v&nGk>0NK^-u0h zoqAYCSZ0~0H(?Ss@Jm>AkH#vc}C zMXw$DxtC6Hw??!g;3$EEiI$+8u++EdD?mEkQ`Wx6#T`5$?B#=5%U!9_Ufh-)dV2y& zrrKys>)XiB+^o}x zJH!wF0M`7fENlJ9tS(*$c5K`#i-x84=0#U zFhf&TK)3Yca;MRp7Qg%>l&h&hr{P6IJ5iyM-&x2@n>Ib-3M;^f+XS4&)MHR}d646c z=g?dYTY#@iZlPJ8s;V7PzzSTbO27)}pqNW-(}kzTN3Aa7aV#EEw_2zi|3Oy%^tzU; zC5r{!?9h8W*cZm56?ACD#k5+}#Z2lcp@TF-ka>&CSj_BS8LLd2XV$eNMzIwp9U|;M zDp%XR7{kX}Ri1j{7^hK;q`Z6dhI7dJ=!}!W7Tio4)bd%u`7x{s&RvKQkTc~Bt7r6$ zczm}H3cDIuTBkj<$4Zs$>TCx#G# ztLev&ZTc5r>8zHGoh{>aCShjNHH=`ODYeQ*GiLfRzZ?QI^97@6Uf4*r92Sz1)U*5& z(&omc380Zu1wVslwtquqGBt#k*ECz1!RBmw+o80!(vG4sfTtz8e%=3P^Qom z}{GQQ%o=)bu=1C}VpMEtz`VDHTe{}_0we(*N1gS)HmtM#Vi}nELn-iF5vCl+Jri4~5+nrF*+9aB6m&2w>IbMwL!yJR2Tg1H;v4xi_ z)*Z2Pd22fa(%2J>;}M_hJ-AeMYNc3qz3i56N?PQ1-(Pb99a%%TxUJQ zNR@_9TxzaCg9gttr;xmr3MbKYA()S9jl~y`_?&g2JDZwI2muwdYmI1+LFHk1d2FGT z&_ZG-!bNU;7=E^RtUdQ`XPF_vCG8jC>cJeSOF3e_$n z-VU2i$-zy7M5PUOeE!<^OXwtod3uo}>Rhcq6ZBu`v6KUTQ&c9-s{FW-G8T?fwjDpa zqCp$yG@~|GDC!l_3GSF6gvpB>p*L7_ksbcyab|=VzMf}rL#rfTlN}{qgZ(^JOtLhw zg@pP`s2QPy-MNxA99wF9PgQ$~hpPk$lnX^YV5y*f-Uj(6P({L05)tf z0hfS)(!(Ijwqs;>^0o+U0E~*hm_g~|XUeAbpcI(|x`4c;B*=1*SH5=4HF%akN4#LJ zovpDEUG_JPlp&9Z+j<>9{6#2DC-0&BD5v#u{7!~%a(abKn z@1dGz-_s1f3ylRn0o|mpow>FE40$>-(WlaCbY|UbqplUn+i;`8+odZRlOMC^A-DZJ4U|3o%O0j@a@SGlb?9=06WGle_Tb`snz`H`{BEROU;NG-Hw4 zpRZfndcSrQoq{#KO^*$K;E%0ZEO{W}i^WLuns-$4GEs^ukCr#dg4RZ3HqKL6S_Hs_HT zAtb5`ok=%KDv|QGMRnyKv`2r4cxk7K+kW!x(ILOmuTTV3dG@7lMv~;ypSK@S4IHk^ zSfZTGWnW!Gqdc{qT4mS&Ft{RaM~shdBuCoS`~_%Sk{<8f%r-6fkkS89Bf=h5&4n$1 zil8O_QL`)-p1INtsxhe=+MH*gOnwXB?;LeZnm{?ST6NdfQe&*Yu*#*xW{{OY2a9H% zi)-&Ip&`rY@3HWHI`}m|c8Gi?7E)z`eWk1zH9Ba-`R)h4gA@g;yG~B<#85^>b!Xh7 zZA(&e)m_iQC(W#shF01uW&UEMLkSk&8%muGct(W^6wg11EkPHJ*8FFT81vl7y{*m4 zzmxyHFTCjWk?VxEJrBNyiAHBfhnpHYeQbCnh4koaN6r?7?Poqz+6cU}0;Kqr_By|1pVH4l5{txnLmEuho=gK)N_k2sN5M?+ z9%8KtTjZs)FQuJA18)7o84j6c28?(bKh!f8`VWNiEnJqQ(2f$q41F>iTCufyny>Y&qcHh&Qks}Q!X7qi_-64>a;J{qsO?aciamMM&-^S4|C z8RW0%{sBSQUSwq+l08raO-83}b|}L;8n+s{mOcl1zuckzg@)}CP`&u}Lbtap=* z{*06}w7G|1))i4REC?Rs7<$o^8L-s|YA;zTe>L@6Hb3!2nEixd=~Mjn=B_co^4?~VlVm)?z- z`UK$*dJIjlWBO7Tv0N{yf3a#cQGdkl_UHCs31O`c2p}^dfck~Mk*F(_Tjzr*F;FFh zIv6p#W%3J84(dfo60qz5q^oX1D6FSu}!W%PX*vPIeg=B*RE-D(HW5XR;G|vCjKF zp#I!o@3;IuNN`+c7ed0(H)*t>Lwi-2OP>uSKSyEEODog?=JcInFDD?Iee1 zs69G?m%15=xB+5vT;}h1d|1K#1+Y&o6tX}pSb6`cV8 zVn|ZeD)%MHlL%)~>RaqVTgtxgQ*kYge^w^XMp8)XM2GJ^h#Z6dWC3_Y#b51fBJH)C zg+Z;#5c*}5svc}p;tzRD0FAu|k2I2e@nkB(2F-MhC1l>ZOKs0CPm^It^LdC05w-{l zJ+alXFdMmrfaJq*#Gb!OYubM*5!Ch)$T?z&ktJjh*;BK$h)79eh{asB1TiV}LfBd} zraKaCheaIg&-h24sHS;GW9Lp(A2~?Z)mz9oj8A|9JfUV(O=pPXLFOzFgvpHWmnTP0 zOUI^=3pQi@bOF`d+MaY4(72rzEDL|dlBx`UU6puEJb8dBxDDGkgqDY=;_7H}Dl+so z6AFVZYW0p@^7m7qViQt0Xn9!#(32Cdq`+T07##UHgJ zmr8D?8h?@t3W+Z9voySj_0!Sh%S$Z`UE4=CLP`?j9G)@^Yq#w8_zQqe*hfa?RdO;M z`+?7Q@fV;+XQ{2J+ls6yU*X4xsm8k4tG#*o9jaQGJ@0QKL4CPplUwWW&%WusPO}={ zBy21;$jsqGnb<*Hy5Nc7*N*7UFY;d|H(e*ujgxY3zo^?{Uv}k4{9`FDg1Q#HlBI2J zXmFQEap5gBgD}%InjRX%AJa!aDW9J5 z71O4{jO-xWP{roDAJ~7}Ys$@}gnpKqW1le-Zid)%?ryuJY~lsYL5V$-NU)`vRGLWs zBVa7h2HVZzSflt;Ro{6hn#o}}aZ6Gzv>$l`Uv$TgW}8LwnDH{C1wi9j#V!4G222_( zs|U50oB}oCfF~UhCJtjS)nqO<&StGKSicl~@#i5vg@NG}v5AgWf_#QS>F!lg-T;;c z6PL{&B$IaC#XgD|WN#Js6LfKcgJ=2_d_Y&%j+29LZgh4C-vWza>A_O^E59b5p}012 zhrvZ<9q%}4lpyjSd#0EP5r4O`jPeo+&Loee`T^-CyAzooJm>V3r1m=9OD`Pl{a~!tv3HowrwMdxel0uWMNN4i1 z-5J5d=@uG6*Rq=^Vm$DG+=bS{F(7O}vZr1yxFH6qR$x^p3R1~&d!zAt0^DCr5vKM4 zOFUaQqa$9CjkIU8!Nj12IN@h#d`*^eZOO^RQ)M#YuNKmBF}?_6Q5S+a$=LhAzNPUU zM#8(2*yd98zFz#pXmQT&#J3yvU=*dGdMj`E6hEs<;&=n$@{+~vul*b_;RLXO-KUC1 z#R=-lEhQqbiw;&1T!%q1Lsp3RJYn#w4@Scw4{UnoPuZxCwNS`1VL+loPiM+qLA~~G zu;-C|K0N?M4UW{>=yC-ck5tsw`s?;EquhafTNeYCPC=OZki;O&27_2M9ftQ6tqIMM z)-%pb0`vtML>c@=)|0B8gwHnoH0BI-!T~UwI`(K@!oCIHKvahjZGZMs(BL|r%)cZY zqJBf(QBpO%-co<6MVNw2SMQO9-O%*Vl@H0b#vt+l(ZVxpixWZURD_XxryqN z@38|@9XJw;qss=65r_hI+j$AZYcMIp;>O(o68H+~H4sPeZAJrMFOeC>vV`)LTxp1t z8!#!qv9i~GZ3V#7!8G8ORmeHtZ52b~u#Um6JfW=ZB&GYfc_stNh0qx>A?VmncYCIN(w*+-%!N4gkc|SX$^=cXiSl> ziu~z}T&NmpWW+yD=&ak#j@?rP5RPFoG^Z!UX{5&3j*CUb!SWE}ND=pO%yFN>5PZuY zq_TJENAPHd1g=|_{ZrsAe%;}j6@P?3SYdWj8<{t%Oc7S z?_Z`O^aYBjk+Nv7}R9F_(6BeT}su8mGZ%lR>JN#;aPdisiaPXpoqe zvWEpkbB>JhYnC6UjF`)@DDH38L1vl;pA_dA)1j4~^Y#bs!hlyg_kW$08I;g9M~Cdu z4SGs0jTZYSxqnWVh3r@Rso0SkMGdMCh)&m>Wzs02^a4rWc;%4UR3yn%XxUs6w)X%| z?@q{oM!y+_QuR$`3Tnl19h0&1(+xzbY`sJ2?KC`^%3Dli4LF*yXj$nV!<5vsPNH2D z%pK&YH-*mS29Wj#tt=aU91r-f&!E70YT5Y&ldy33FKX$+V~~shmaj^n zmEe%KeYu!0G8Aicn*3Q+K@BcI^y;JY{mYWA6}ec&KfCANX* zvJD>R!4O?_IlkJ3*H4ye13Sx3wL-2_q_7DR4Mt3DWF^RBj)6>K*udT(I4qVb%S(rs z%+7Gzs%4jZn5fU$X4Q0ZIKPA^`LCJk@b-u~69HPfD}-|ySp$t2^R|_#i6%x5_;Gm< za1hhDj^0WT1Se9VpS|@IjgQ>uS210wfLv;g5#O0#gGcMXFdc{-XgU|Un%<++O=VF zAsG7H5p|C_rO#Dp|CGjQeNAZHdT@uy2n|Nx&A+tATjCt_-O*?DTjqV<(VKN-|JUB{ z0UR+0?xCke1f8w89PC7@3thvZ9_X-2ZI zGqGC`5dRSbn;Y4~u*Z0wP14dQC~MoJV2X%_SUbL#dM0BI^Jz;sa`(~b21Zt8tcz#w zh;FwF%nAK2tUkk9?bi<_dd7v>a+JdFOpXleo*%&Yn>#2GCU9cXH8KlMM+T31mWhlM z(H(27yh`;8TBh&|b^O*0A>xjyL1#j^q)#>TksEIq0Nl&a;S%4v#nom(nlJk!-y)Sf z#V$*Vg=KPz;Hj9oF$91k+AG@3m?aL8xi$cC6vk{dHST|XJx}CEmIba-sk@sE11m&8 zqj&{A%pG`maf)(MW0TW5#W#(j8PysMN!ezK89N$r9XeJ+)kYR4W71zAnW7|GHxg>1 zo7IcckUX^ZrxJ-~wfw-@*@vXsau`C+fTNbKi2EK~&ssblh%}4%J&PR2l9pdXOgo)X z-D9A-Z>{ex?zfy3c6d7w;jLEf>F0I6H9Hc7!lnvjLl~!w?V`*HuAjmu-83)YhTErJ zt8ob1#Q>i|I}6H(PJi3{V*OvVd41; z02A}nl^td63dfj2sSfS+b6=b3dflfQtfj(lC2-Tp$c^CrFD)8cco?+FG!)k-G}=xj zf@Y-e0qAIReXj}4;SXCUXme_0DMSLDkkd*+q5Z5X_b7j&|$`9pL>&}NM&*E0@ z^(jYv^4$;D_UU7rcNpzHJ|^@*_SuD05BaJR4);fd5AA*nqt4I#H#?oS?>ijb+CY@| z=I^>W%jUmV-`u|6;k=oBm-=_ZW{c!Ox>$KKtS79$0~{c| z`#tgqgBXonRYHEK_dLj;+{t*>D|-ze7j{gv`TG6LW$f@o#NUbC{dl{*1pGm&FDvEm z(zx<*ZwKVX5k3-BOPPpmLAmi4N@lny&&4hl+e_B0wKP_j)jai5&36}~CKWQC=(iE($Q`xz`Psd=E;;Bxb|N)J@)zDU8A|UTxwi#@ z376bcurzTOd+4&KcS9oFudfc3Cqp;b@q4C(nakBrhE_iqtu2IbR`Nn67r zjyOE7;xYYx3r;E$Z>(XOPQtI*iW1pnn-RG}C8{`o*y(snef9W^YRp$gUgl@2=)G{? z*V>qz9fgXInQ>Zs-`cJ-)DJ6CGg-}?t`=gEH&DUMblOFUsXV%@`$OU<=XqfDx6jC< zyXbe1S`PwVKQ`(zNK{wCZoaQ#)?}qW(JASc8#1}l>h%Ugao3HQ;BC<`B8i&^%68ya zfu1(y98n(OL@P4d?6+#ylYVt zWR_Ow3qhwW91*jDMNs}(6wX!iA;5y0o{Q+O!VL3Equ&l|{VrBSE8bXP7c3v{U7gku z1xZY;Pz!zxqipaG`{><%+F0?9iEw7y!frO&VfZ$WVkuyZCfNx!@h2FOqi$u5R=t=) zPct9x!q^K`W_5@}7*e@7j#3}g{HJq!0A~vOZgUQYjdMUKZz8Md-i4Ny61RoTVu5jY zz3cJ%E5~J6yG{4qcPHf0Y|2bF{=yTdd^a!F@n00_U-o2`gTP~l6YMLwBf<3>7JZvf z!GVdO8+4g8lAiVTq~-&9V}ssD{+qu5_ym0<#464?t*DE^ zaXG0$khlf)6q-JVTG@suPSFS+-59#HKmsH!A!9jn;}({yor;d zuP%-W_5z_6_`$iKG3`+D`4Z?IN$4|A_U9_bYBmWg?2kTKrtS%ej%`nnKfkSteG_j1 z4R){ll35873DcJ@{t?+geM*ia7nvKysoB=3BAPBig-rf&MuFx0GaRoEa!tZJflJ2Y z@mJQLPvb~}0bM`VGz2Rrwj;_#xJ9!ij}+tVuc0iNK1nwWL*@PmVS@!><7%zuyBOClX|JJz1e_YtJ_0Ngar7e2PJQ3 z>ccNXB`0;kMPU7+OkGxSO*!94W|WVhy$Y5D1xR8(>Vdh3+0G8sr4j`~iN*`Q=a9e8 zm?ed2^$RGmwGG!h=y*8?`?i~`e{~e{*u!bxg0th9}(q8ob5^(t*iUZob3o|E@7r&(mX!GvffJSITDH=1)47}fONJ@Hw7 zKGD>ZI}JUJpB9tU#Y`iT1m|s^WR}IzJQ1_PplIJPd)xDdh*f$yy8Bg5RLQp1bsfL% z`hA~=ljAh`)XBN?or^~Cn`aUErm3nMX$#MH!-zh(pdF|7$azJ`g1Nw)_N0Mjv;;`6 z7G66%1OL+=IlUuXfzsR~EZs+HNT;9HQuJf{nZMXnKFi*0Qz42*biYgLBzRX^TlePe uyy(1b@_mOOnuM9U<*Uh&q3bv)&Y{C0OS|J6u}nFGzxxYN`|JB(tN#x@Y~yMG literal 0 HcmV?d00001 diff --git a/src/test/java/com/app/app_hd/AppHdApplicationTests.java b/src/test/java/com/app/app_hd/AppHdApplicationTests.java new file mode 100644 index 0000000..e6447d1 --- /dev/null +++ b/src/test/java/com/app/app_hd/AppHdApplicationTests.java @@ -0,0 +1,13 @@ +//package com.app.app_hd; +// +//import org.junit.jupiter.api.Test; +//import org.springframework.boot.test.context.SpringBootTest; +// +//@SpringBootTest +//class AppHdApplicationTests { +// +// @Test +// void contextLoads() { +// } +// +//}