From b0a740817777da6914826c9d9d59f7ab5928c982 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A9=99=E5=AD=90?= <454313500@qq.com> Date: Wed, 3 Nov 2021 18:58:44 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Yi.Framework.ApiMicroservice/Startup.cs | 8 +- .../SwaggerDoc.xml | 12 +- .../appsettings.json | 130 +++++++++--------- .../Yi.Framework.Core/CacheClientDB.cs | 4 +- .../Yi.Framework.WebCore/Init/RedisInit.cs | 1 + .../MiddlewareExtend/RedisExtension.cs | 2 +- .../MiddlewareExtend/RedisInitExtend.cs | 4 +- 7 files changed, 87 insertions(+), 74 deletions(-) diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/Startup.cs b/Yi.Framework/Yi.Framework.ApiMicroservice/Startup.cs index 060e93ab..7ed91dd8 100644 --- a/Yi.Framework/Yi.Framework.ApiMicroservice/Startup.cs +++ b/Yi.Framework/Yi.Framework.ApiMicroservice/Startup.cs @@ -84,7 +84,7 @@ namespace Yi.Framework.ApiMicroservice #endregion // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. - public void Configure(IApplicationBuilder app, IWebHostEnvironment env,IDbContextFactory _DbFactory) + public void Configure(IApplicationBuilder app, IWebHostEnvironment env,IDbContextFactory _DbFactory, CacheClientDB _cacheClientDB) { //if (env.IsDevelopment()) { @@ -142,7 +142,11 @@ namespace Yi.Framework.ApiMicroservice //数据库种子注入 #endregion app.UseDbSeedInitService(_DbFactory); - //app.UseRedisInitService(_cacheClientDB); + + #region + //redis种子注入 + #endregion + app.UseRedisSeedInitService(_cacheClientDB); #region //Endpoints注入 #endregion diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/SwaggerDoc.xml b/Yi.Framework/Yi.Framework.ApiMicroservice/SwaggerDoc.xml index 2efb0841..6c8d851c 100644 --- a/Yi.Framework/Yi.Framework.ApiMicroservice/SwaggerDoc.xml +++ b/Yi.Framework/Yi.Framework.ApiMicroservice/SwaggerDoc.xml @@ -39,6 +39,14 @@ + + + 璇ユ柟娉曚笉瀵瑰鏆撮湶 + + + + + 杩欎釜鏄閫掑綊鐨勶紝浣嗘槸瑕佽繃婊ゆ帀鍒犻櫎鐨勶紝鎵浠ワ紝鍙互鍐欎竴涓氱敤杩囨护鎺夊垹闄ょ殑鏂规硶 @@ -159,11 +167,11 @@ - + - + diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/appsettings.json b/Yi.Framework/Yi.Framework.ApiMicroservice/appsettings.json index 61f66577..e08f7152 100644 --- a/Yi.Framework/Yi.Framework.ApiMicroservice/appsettings.json +++ b/Yi.Framework/Yi.Framework.ApiMicroservice/appsettings.json @@ -1,69 +1,69 @@ { - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft": "Warning", - "Microsoft.Hosting.Lifetime": "Information" - } - }, - "AllowedHosts": "*", + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft": "Warning", + "Microsoft.Hosting.Lifetime": "Information" + } + }, + "AllowedHosts": "*", - "Consul_Enabled": false, - "DbSeed_Enabled": true, - "Apollo_Enabled": false, - "HealthCheck_Enabled": false, - "Cors_Enabled": true, - "RabbitMQ_Enabled": false, - "Redis_Enabled": false, - "RedisSet_Enabled": false, - "Kafka_Enabled": false, - "MutiDB_Enabled": false, - "DbList": ["Sqlite", "Mysql", "Sqlserver", "Oracle"], - "DbSelect": "Mysql", + "Consul_Enabled": false, + "DbSeed_Enabled": true, + "Apollo_Enabled": false, + "HealthCheck_Enabled": false, + "Cors_Enabled": true, + "RabbitMQ_Enabled": false, + "Redis_Enabled": true, + "RedisSeed_Enabled": true, + "Kafka_Enabled": false, + "MutiDB_Enabled": false, + "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle" ], + "DbSelect": "Mysql", - "DbConn": { - "WriteUrl": "server=118.195.191.41;port=3306;database=YIDB;user id=root;password=Qz52013142020.", - "ReadUrl": [ - "server=118.195.191.41;port=3306;database=YIDB;user id=root;password=Qz52013142020.", - "server=118.195.191.41;port=3306;database=YIDB;user id=root;password=Qz52013142020.", - "server=118.195.191.41;port=3306;database=YIDB;user id=root;password=Qz52013142020." - ] - }, - "Apollo": { - "AppId": "Yi.Framework.ApiMicroservice", - "Env": "DEV", - "MetaServer": "http://192.168.2.168:8080", - "ConfigServer": ["http://192.168.2.168:8080"] - }, - "JWTTokenOptions": { - "Audience": "http://localhost:7000", - "Issuer": "http://localhost:7000", - "SecurityKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDI2a2EJ7m872v0afyoSDJT2o1+SitIeJSWtLJU8/Wz2m7gStexajkeD+Lka6DSTy8gt9UwfgVQo6uKjVLG5Ex7PiGOODVqAEghBuS7JzIYU5RvI543nNDAPfnJsas96mSA7L/mD7RTE2drj6hf3oZjJpMPZUQI/B1Qjb5H3K3PNwIDAQAB" - }, - "RedisConn": { - "Host": "118.195.191.41", - "Prot": 6379, - "DB": 1, - "Password": "Qz52013142020." - }, - "KafkaOptions": { - "BrokerList": "192.168.3.230:9092", - "TopicName": "kafkalog" - }, - "ConsulClientOption": { - "IP": "192.168.2.128", - "Port": "8500", - "Datacenter": "dc1" - }, - "ConsulRegisterOption": { - "IP": "192.168.1.104", - "Port": "7001", - "GroupName": "ApiMicroservice", - "HealthCheckUrl": "/Health", - "Interval": 10, - "Timeout": 5, - "DeregisterCriticalServiceAfter": 60, - "Tag": "13" - }, - "IPLibraryServiceUrl": "http://gRPCIPLibraryService" + "DbConn": { + "WriteUrl": "server=118.195.191.41;port=3306;database=YIDB;user id=root;password=Qz52013142020.", + "ReadUrl": [ + "server=118.195.191.41;port=3306;database=YIDB;user id=root;password=Qz52013142020.", + "server=118.195.191.41;port=3306;database=YIDB;user id=root;password=Qz52013142020.", + "server=118.195.191.41;port=3306;database=YIDB;user id=root;password=Qz52013142020." + ] + }, + "Apollo": { + "AppId": "Yi.Framework.ApiMicroservice", + "Env": "DEV", + "MetaServer": "http://192.168.2.168:8080", + "ConfigServer": [ "http://192.168.2.168:8080" ] + }, + "JWTTokenOptions": { + "Audience": "http://localhost:7000", + "Issuer": "http://localhost:7000", + "SecurityKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDI2a2EJ7m872v0afyoSDJT2o1+SitIeJSWtLJU8/Wz2m7gStexajkeD+Lka6DSTy8gt9UwfgVQo6uKjVLG5Ex7PiGOODVqAEghBuS7JzIYU5RvI543nNDAPfnJsas96mSA7L/mD7RTE2drj6hf3oZjJpMPZUQI/B1Qjb5H3K3PNwIDAQAB" + }, + "RedisConnOptions": { + "Host": "118.195.191.41", + "Prot": 6379, + "DB": 1, + "Password": "Qz52013142020." + }, + "KafkaOptions": { + "BrokerList": "192.168.3.230:9092", + "TopicName": "kafkalog" + }, + "ConsulClientOption": { + "IP": "192.168.2.128", + "Port": "8500", + "Datacenter": "dc1" + }, + "ConsulRegisterOption": { + "IP": "192.168.1.104", + "Port": "7001", + "GroupName": "ApiMicroservice", + "HealthCheckUrl": "/Health", + "Interval": 10, + "Timeout": 5, + "DeregisterCriticalServiceAfter": 60, + "Tag": "13" + }, + "IPLibraryServiceUrl": "http://gRPCIPLibraryService" } \ No newline at end of file diff --git a/Yi.Framework/Yi.Framework.Core/CacheClientDB.cs b/Yi.Framework/Yi.Framework.Core/CacheClientDB.cs index 41d84a5c..32187406 100644 --- a/Yi.Framework/Yi.Framework.Core/CacheClientDB.cs +++ b/Yi.Framework/Yi.Framework.Core/CacheClientDB.cs @@ -44,9 +44,9 @@ namespace Yi.Framework.Core // } //} #endregion - public CacheClientDB(IOptionsMonitor jwtTokenOptions) + public CacheClientDB(IOptionsMonitor redisConnOptions) { - this._RedisOptions = jwtTokenOptions.CurrentValue; + this._RedisOptions = redisConnOptions.CurrentValue; client = new RedisClient(_RedisOptions.Host, _RedisOptions.Prot, _RedisOptions.Password, _RedisOptions.DB); } // 绠¢亾妯″紡 涓夌妯″紡 diff --git a/Yi.Framework/Yi.Framework.WebCore/Init/RedisInit.cs b/Yi.Framework/Yi.Framework.WebCore/Init/RedisInit.cs index 25888d21..da18bf72 100644 --- a/Yi.Framework/Yi.Framework.WebCore/Init/RedisInit.cs +++ b/Yi.Framework/Yi.Framework.WebCore/Init/RedisInit.cs @@ -16,6 +16,7 @@ namespace Yi.Framework.WebCore.Init if (_cacheClientDB.Get(RedisConst.key)==null) { + Newtonsoft.Json.JsonConvert.SerializeObject(); _cacheClientDB.Add(RedisConst.key, new SettingDto() { ImageList_key = { "榛樿鍥剧墖", "榛樿鍥剧墖" } , diff --git a/Yi.Framework/Yi.Framework.WebCore/MiddlewareExtend/RedisExtension.cs b/Yi.Framework/Yi.Framework.WebCore/MiddlewareExtend/RedisExtension.cs index f17beb8a..2d17b857 100644 --- a/Yi.Framework/Yi.Framework.WebCore/MiddlewareExtend/RedisExtension.cs +++ b/Yi.Framework/Yi.Framework.WebCore/MiddlewareExtend/RedisExtension.cs @@ -17,7 +17,7 @@ namespace Yi.Framework.WebCore.MiddlewareExtend { if (Appsettings.appBool("Redis_Enabled")) { - services.Configure(Appsettings.appConfiguration("RedisConn")); + services.Configure(Appsettings.appConfiguration("RedisConnOptions")); services.AddTransient(); } return services; diff --git a/Yi.Framework/Yi.Framework.WebCore/MiddlewareExtend/RedisInitExtend.cs b/Yi.Framework/Yi.Framework.WebCore/MiddlewareExtend/RedisInitExtend.cs index 8f813afd..010bb42e 100644 --- a/Yi.Framework/Yi.Framework.WebCore/MiddlewareExtend/RedisInitExtend.cs +++ b/Yi.Framework/Yi.Framework.WebCore/MiddlewareExtend/RedisInitExtend.cs @@ -15,10 +15,10 @@ namespace Yi.Framework.WebCore.MiddlewareExtend public static class RedisInitExtend { private static readonly ILog log = LogManager.GetLogger(typeof(RedisInitExtend)); - public static void UseRedisInitService(this IApplicationBuilder app, CacheClientDB _cacheClientDB) + public static void UseRedisSeedInitService(this IApplicationBuilder app, CacheClientDB _cacheClientDB) { - if (Appsettings.appBool("RedisSet_Enabled")) + if (Appsettings.appBool("RedisSeed_Enabled")) { if (app == null) throw new ArgumentNullException(nameof(app)); From 2e4f0249283b6043e3b9a7c9a6d452340692d28c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A9=99=E5=AD=90?= <454313500@qq.com> Date: Wed, 3 Nov 2021 19:20:38 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/FileController.cs | 8 +++++--- Yi.Vue/src/api/fileApi.js | 4 ++-- Yi.Vue/src/views/userInfo.vue | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/FileController.cs b/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/FileController.cs index 63d8ab79..40224c9b 100644 --- a/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/FileController.cs +++ b/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/FileController.cs @@ -36,12 +36,14 @@ namespace Yi.Framework.ApiMicroservice.Controllers await _userService.UpdateAsync(user_data); return Result.Success(); } + + [Route("{type}/{fileNmae}")] [HttpGet] - public IActionResult Get(string type, string imageNmae) + public IActionResult Get(string type, string fileNmae) { - var path = Path.Combine($"wwwroot\\{type}", imageNmae); + var path = Path.Combine($"wwwroot\\{type}", fileNmae); var stream = System.IO.File.OpenRead(path); - var MimeType = Common.Helper.MimeHelper.GetMimeMapping(imageNmae); + var MimeType = Common.Helper.MimeHelper.GetMimeMapping(fileNmae); return new FileStreamResult(stream, MimeType); } diff --git a/Yi.Vue/src/api/fileApi.js b/Yi.Vue/src/api/fileApi.js index 6a999fbb..3b653b07 100644 --- a/Yi.Vue/src/api/fileApi.js +++ b/Yi.Vue/src/api/fileApi.js @@ -1,8 +1,8 @@ import myaxios from '@/util/myaxios' export default { - Upload(file) { + EditIcon(file) { return myaxios({ - url: '/File/Upload', + url: '/File/EditIcon', method: 'post', headers: { "Content-Type": "multipart/form-data" }, data: file diff --git a/Yi.Vue/src/views/userInfo.vue b/Yi.Vue/src/views/userInfo.vue index dfb67f98..ff20c18f 100644 --- a/Yi.Vue/src/views/userInfo.vue +++ b/Yi.Vue/src/views/userInfo.vue @@ -334,7 +334,7 @@ choiceImg() { const file = this.$refs.imgFile.files[0]; let formData = new FormData(); formData.append("img", file); - fileApi.Upload(formData).then(resp=>{ + fileApi.EditIcon(formData).then(resp=>{ this.init(); }) }, From ca815ec53ebaf250c4aa73c1dafd8aac56b1ae8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A9=99=E5=AD=90?= <454313500@qq.com> Date: Wed, 3 Nov 2021 20:28:45 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=89=8D=E7=AB=AF=E7=BB=88=E6=9E=81?= =?UTF-8?q?=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/AccountController.cs | 2 +- .../Controllers/FileController.cs | 57 +++++++++------- .../Yi.Framework.ApiMicroservice/Startup.cs | 5 ++ .../appsettings.json | 2 +- .../1b0a926d-ddce-4048-9b09-e2b8ec37c161.jpg | Bin 0 -> 30394 bytes .../3d6ed457-0c20-4ce6-b91c-8c424f2f03bb.jpeg | Bin 0 -> 14035 bytes .../7ca98a58-8822-40f5-a766-2a2dd21d2431.jpg | Bin 0 -> 30394 bytes .../feae1964-04ce-464b-848b-86f2245f3f63.jpeg | Bin 0 -> 18821 bytes .../Yi.Framework.Core/TreeMenuBuild.cs | 2 +- .../Yi.Framework.WebCore/Init/RedisInit.cs | 2 +- Yi.Vue/src/components/ccAvatar.vue | 28 ++++++++ Yi.Vue/src/layouts/default/ListGroup.vue | 4 +- Yi.Vue/src/layouts/default/ListItem.vue | 4 +- .../src/layouts/default/widgets/Account.vue | 61 ++++++------------ Yi.Vue/src/views/userInfo.vue | 16 +++-- 15 files changed, 106 insertions(+), 77 deletions(-) create mode 100644 Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/1b0a926d-ddce-4048-9b09-e2b8ec37c161.jpg create mode 100644 Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/3d6ed457-0c20-4ce6-b91c-8c424f2f03bb.jpeg create mode 100644 Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/7ca98a58-8822-40f5-a766-2a2dd21d2431.jpg create mode 100644 Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/feae1964-04ce-464b-848b-86f2245f3f63.jpeg create mode 100644 Yi.Vue/src/components/ccAvatar.vue diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/AccountController.cs b/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/AccountController.cs index eb3fcf16..b1c7f0b7 100644 --- a/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/AccountController.cs +++ b/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/AccountController.cs @@ -50,7 +50,7 @@ namespace Yi.Framework.ApiMicroservice.Controllers if ( user_data!=null) { var token = MakeJwt.app(new jwtUser() {user=user_data,menuIds= menuList}); - return Result.Success().SetData(new { user = new { _user.id, _user.username, _user.introduction, _user.icon, _user.nick }, token }); + return Result.Success().SetData(new { user = new { user_data.id, user_data.username, user_data.introduction, user_data.icon, user_data.nick }, token }); } return Result.Error(); } diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/FileController.cs b/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/FileController.cs index 40224c9b..7c1e4662 100644 --- a/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/FileController.cs +++ b/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/FileController.cs @@ -23,28 +23,42 @@ namespace Yi.Framework.ApiMicroservice.Controllers { _userService = userService; _env = env; - } + } [HttpPost] [Authorize] public async Task EditIcon(IFormFile file) { - var _user = HttpContext.GetCurrentUserInfo(); - var user_data = await _userService.GetUserById(_user.id); - var type = "image"; - var filename = await Upload(type, file); - user_data.icon = filename; - await _userService.UpdateAsync(user_data); - return Result.Success(); + try + { + var _user = HttpContext.GetCurrentUserInfo(); + var user_data = await _userService.GetUserById(_user.id); + var type = "image"; + var filename = await Upload(type, file); + user_data.icon = filename; + await _userService.UpdateAsync(user_data); + return Result.Success(); + } + catch + { + return Result.Error(); + } } - [Route("{type}/{fileNmae}")] + [Route("/api/{type}/{fileName}")] [HttpGet] - public IActionResult Get(string type, string fileNmae) + public IActionResult Get(string type, string fileName) { - var path = Path.Combine($"wwwroot\\{type}", fileNmae); - var stream = System.IO.File.OpenRead(path); - var MimeType = Common.Helper.MimeHelper.GetMimeMapping(fileNmae); - return new FileStreamResult(stream, MimeType); + try + { + var path = Path.Combine($"wwwroot/{type}", fileName); + var stream = System.IO.File.OpenRead(path); + var MimeType = Common.Helper.MimeHelper.GetMimeMapping(fileName); + return new FileStreamResult(stream, MimeType); + } + catch + { + return new NotFoundResult(); + } } /// @@ -53,11 +67,10 @@ namespace Yi.Framework.ApiMicroservice.Controllers /// /// /// - private async Task Upload(string type,IFormFile file) + private async Task Upload(string type, IFormFile file) { - string filename = Guid.NewGuid().ToString() + Path.GetExtension(file.FileName); - using (var stream = new FileStream(Path.Combine($"wwwroot\\{type}", filename), FileMode.CreateNew, FileAccess.Write)) + using (var stream = new FileStream(Path.Combine($"wwwroot/{type}", filename), FileMode.CreateNew, FileAccess.Write)) { await file.CopyToAsync(stream); } @@ -65,15 +78,15 @@ namespace Yi.Framework.ApiMicroservice.Controllers return filename; } - [HttpGet] - public async TaskExportFile() + [HttpGet] + public async Task ExportFile() { var userdata = await _userService.GetAllEntitiesTrueAsync(); var userList = userdata.ToList(); - List header = new() { "鐢ㄦ埛", "瀵嗙爜", "澶村儚", "鏄电О", "閭", "ip","骞撮緞", "涓汉浠嬬粛", "鍦板潃", "鎵嬫満", "瑙掕壊" }; - var filename= Common.Helper.ExcelHelper.CreateExcelFromList(userList,header,_env.ContentRootPath.ToString()); + List header = new() { "鐢ㄦ埛", "瀵嗙爜", "澶村儚", "鏄电О", "閭", "ip", "骞撮緞", "涓汉浠嬬粛", "鍦板潃", "鎵嬫満", "瑙掕壊" }; + var filename = Common.Helper.ExcelHelper.CreateExcelFromList(userList, header, _env.ContentRootPath.ToString()); var MimeType = Common.Helper.MimeHelper.GetMimeMapping(filename); - return new FileStreamResult(new FileStream(Path.Combine(_env.ContentRootPath+@"\wwwroot\Excel", filename), FileMode.Open),MimeType); + return new FileStreamResult(new FileStream(Path.Combine(_env.ContentRootPath + @"\wwwroot\Excel", filename), FileMode.Open), MimeType); } } } diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/Startup.cs b/Yi.Framework/Yi.Framework.ApiMicroservice/Startup.cs index 7ed91dd8..97d9f5c5 100644 --- a/Yi.Framework/Yi.Framework.ApiMicroservice/Startup.cs +++ b/Yi.Framework/Yi.Framework.ApiMicroservice/Startup.cs @@ -103,6 +103,11 @@ namespace Yi.Framework.ApiMicroservice #endregion //app.UseErrorHandlingService(); + #region + //静态文件注入 + #endregion + //app.UseStaticFiles(); + #region //HttpsRedirection注入 #endregion diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/appsettings.json b/Yi.Framework/Yi.Framework.ApiMicroservice/appsettings.json index e08f7152..ee2132c0 100644 --- a/Yi.Framework/Yi.Framework.ApiMicroservice/appsettings.json +++ b/Yi.Framework/Yi.Framework.ApiMicroservice/appsettings.json @@ -15,7 +15,7 @@ "Cors_Enabled": true, "RabbitMQ_Enabled": false, "Redis_Enabled": true, - "RedisSeed_Enabled": true, + "RedisSeed_Enabled": false, "Kafka_Enabled": false, "MutiDB_Enabled": false, "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle" ], diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/1b0a926d-ddce-4048-9b09-e2b8ec37c161.jpg b/Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/1b0a926d-ddce-4048-9b09-e2b8ec37c161.jpg new file mode 100644 index 0000000000000000000000000000000000000000..aa4daf73a8242565ffac4469083aa29d20c1cff3 GIT binary patch literal 30394 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 MP(Agz_y2qKf6`TAZ2$lO literal 0 HcmV?d00001 diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/3d6ed457-0c20-4ce6-b91c-8c424f2f03bb.jpeg b/Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/3d6ed457-0c20-4ce6-b91c-8c424f2f03bb.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..a10702580514d498f4e6ddeb86a7a85f5f203767 GIT binary patch literal 14035 zcmbWdd03KL6fgV&;(&94Ij2|(nB{=xSU4kzGB^~+JPu_-SsG<(!@)5noUxS5P#HwC z%&;`GqZJO7rHEE$ozl|G%uKD*bh>o!H$2bx*LUyc;RW8kpZDRn*7~ir_gd@MlV2|Z zJwjk`AOHdZ07&@)emw*H0GOJZx|%9XU0q!h2Gi6r($mq_)-gvI>Kj?F+pr$F4ryg$ zw`H>p8jH3v~|q%^vpa_NR;RQ_W0EU z=&OSPFaQA|0kA#@q7V9Y7g(qKpHR^M9KioIKwyXpR8>t~1E#55(5?r7K@bR71pfntWMq9_ew8$KhDSt3?bu06*u5ulZxWrsJbWbWXnICwPHtZQse(dwc?Gxf z%-O1HUVVc=C=xeHn%b^P+pk^k=)7_J&Rtnw|G?lq`KV%S{PB~g6R)PGU%#1|eLMGV z>C^Jc>gO;2e*N|v7f6Zo{~rGf*#8HYz7iK$MFpaw_8S)nd{p^{=&L}j997r&kk#T+ z4UkS*>Tut(x+}dJ*3OiVi1xauL~P??bkl1hNO!IV>c zGW#S-25Eip`;))Xi9>zM-{=gFzrc3H?brizVY7iV!@*Zw$D07GX0I ze64CnB1)XxkPJ2rL_guffDkhK1Y9c-?MR6)WdkMfD)AJDWYr;f7Fu7bEi)492eVaO zIn*nGD7_(R^6yEf7iPJ@8r!~Ebn zD49JRP%eBG0NDKge*1PYH=Ydz;PotYZxX1Z0WMwWFQr?RUkppYEaeZj^9YI(je$5deLdaDyAq6>idRd!0#%X*uHgw zD9!b0J9q6OLSPrN8%po;Zt4w13sGQgY1L=RHF+{$J#FNgP$?W=t7pO2M9+fTss>u= z0l{q*$zbCEH+BdKf)~g<*f^#1&j+G@|GjqvAlXP9&mlolgNy0^Ho$>hdUBVOY+M@!C@&PFlalQEH5v;&89hq#6nR5A>Wt0U8zneKxHW( z5zlfHgF>I-w830^H+#=yh>79ZWH)>7NS4u>8pB#udM_R5k#;eNN}Yopq;>RH^t2`1 zdk1?IEgk-`RuQcfPp-suw2~gJo<>QQd>&03Nx5P;5fc6^L$n}HLCS0<&L-PTY*GoJ zcQKNs=aLWwFnO|sEr$*P0ZO#QwjybtU#s%gXQfp9p>$Wpzk&%A7>v#he@%rAtJs{Q zD6IyUPoXXmWxxh_JX;map|DXPs2L?I7^hC}mh_#QD9y#*3B%sOtMU@4Lk`0#&0%nv z#IOp6o~lAmvq3PZYL*Wl%tnbE;FP2MVap*@1Dv18f>ZMVN){dpei+y>Mq_RV( zNqOI}w;k}0tT=!vV|w9zwAd&lFH&U9qr*WO za5;v8?%=C8in&VRs6)}wBvmwX9;d;kBT#MvOC>Ky>947HfmMDL!xw!D%rc_q*V6M# z*R*(14QtV?`dTQKI-aE&0H+#}w+BGhuv6f50bo6QFMABE)E;88hHLM&iLPWu9ZrlA z$JhK8N*WqxQ)8G_ph|z&A=C_u5I6#2=uGXJnze9N5-o)srj$&nmL>sC?Gb|lZr=fa zr{1P!Pn~B+ndd{{3tXjiqt!pNiIrQOef-#)peMM$*+5Cg+9=6I{Oul)=WpNjq<3Ks zNuP5+*y+6&Ei{{=UCAj|{!GTU?0iZ@p|he}usJPONd0u57i(P2u11JR1ki1$o2 zARGPtsp<$jSRDMWZz?;4NkNF>StbF_2rKwK73_+jF3*yma5Y$dj^~WaTTdl!P|L#g zm4(=a*5ZE!7_)frq04ap=254H}W1zJj(#ir#8wQ^eAk{P;geU z4+T{hDX>rgEGml+OMz$K!HEI7uYz60Pr%Ix$T;{%OrRzF4J}1U7Ud!Z1w?@kDdngX zwQ?CJgpxO<6x~N}iB>EvZ6bYc2n`1rqQj|61T`!$jApV^W0H_8(|;*uCN#$(06T3Y ziWeZy6)WA9phx0}H)L5)pk!WbM;=fDE@hvb@I@DJ8nL%;D!!+nJH#nhbR3Cx)CIWw z=2GaCU7I2xU}xM{MF2f3nnP8W3?PhY%>^tromSN-s^r6z<{}G;YH>VMrKca_;%x80 zRtX9~!?^(0BB{PKU!N%E(fR(nsoHpYepb0XzTHR?PStxA2JfZ7{0z^OpQ!?b;K~3` zxYlp0$fK1-vJjEAhBeJ$n)r>_%`I-5u^*)`rEDX^8aS_vQoB~QR13dMQIUB^vD2LK z>Yqn%Q?HF?%RAm%5)N_F#Hi2WWJyO~o>1l%Uz&qcRZ_N|1*d!;h8pp~ToTkx2dzaw zKM}|*P1y$trEFJrl6sFo7NQ0}m(;PNM3obMj-J|w>ez7#UL{Ezx!wZ4V(2D#_S>C= zs4oReO-e5*DWn?D!$}<3fo4=+OFLd+=~xX_Nx*t?LN8fNE7(#CbS^@4a1d| zD-ALRFWA1_a*6>C2Ta3du4G*aBZB%B=L;9oWaH+TaZc z+GzXC`hKfPO(l>B`eQONKhI&JRQy2wX%EkoH&T%a% zj0gfe{4`!wZ!N+SVk{!|Al4_?QPh)C<+7Jl)ha+Z zt!M1$b%b4$Sjg9kKfY*9iE3S~>l&wt-4ed_ z#vmg>Zy#eXnV0B*($};Pye+mHuevQ!zjR;b@6&8gb{N8{Kp9SsRDE)5GtQskim=l` z=aP^}Wl+ea8d1SE@H-S<9K6sPI~t0;BXi_1IEo^9RRA(LvQ{b+w>Vfxmxf&E@6cL@ z*wq1n^=OAL+^1#>3@vp-ymg_dcfx-i8>6h9gw17y@ z%3~JHW8$i-EapxpYrClWKj#K*@UtH;Z6{y-v|}mM>4Ua0E|s7Lze)Ltxx2v&mh5KX zAqN_^O365wZYEiNE>w*TkOR?DWnd<6=ZtXVAjcQQ3Tb?my0*;;I=&an1*+BBVNm!f zfCLG?bByw}8K0q&If9TJoeNPD#L#;Xb;$y+s@uFy5k0S9!@i4Gq{S{kaq1lDpSYUb zZ|>o96IU+9I$SZjy#2=2Ku+0QbmV1*p|4}GYb~GIU%?B3U44^mj_KO_K*lIU#tjAD zOXal&IJ97Un(h%DT6V^fTYH*2Hymm=wME2o6bI#1h|h^tgX}BC9^oNOUQ)mzcaekS zTua~`7hfc@0V$qPZ+w!9)7wG~ak17iDJtOm@5eY(cm>1A0A+aA_D)j4D}C)|T4jd7 z$sd6k)eC2l9PeR#LSh&J^SFKh6JZw4Xm`@V1bX8na4I~!349B9~iog zwQ-jzEgZoiyK6*aV35G2>rdy&*2dM{wa=OTF#0$we(OS7PO#4pH?cNa&6B<>|J2%_ zHBVmAFT|$S+I5)F5donmjK8HSGcjLdoke?$#pFNnLM$$~o^rhS* z2!lWFX&?QRbdL&xlF$180uqZ8bNo2^Zu9aoMb@tEZ~N8WG?l+ysO5gm?)S<`ow;`S z{z1o6#u5YkiAi1g^}{U=eSwkri>=79^P;;(2#MCQ4D3o#1WsldE3OE*Xg3+T>z?09 z#QlBO1_Y&c&HXB?h*KBu8i$!n913p})c3PTJMqK1BVCA??XJQxy;rNEb50 zRiI3Ao8r9###WRYwObZ=`=Xw2qOb>>>C$IaO1A3Jg~ zDPYgIid}|fYZnb$?e%g77I%e~7;n58PAoD%QV%+SA-T^~YuFu7#rV$;*&AtcV9{W) zH{EPWhBPSV{>U57-xpDO7_t4k;c#(qMg!ae`;|;tK1f;^#q#LcpO`HHr(b>&4*s1{?oagln^x(?x<*jvH?X~2Q( zi~S}+Ia%z0H{DIXfDu-%D%+?_D5@~0N4b0bMBlARfUDl#{QTlVsQ1VgbGwjO*yXgQ z;VXjSQN{8Q(RCnoXJyyL{=z@lcVmI3)5H7YL}j7&JYPm`;2q9P9izGvVG0u<4PMlz zU=m7bg*~fHzLp6x|3F4s492>+67TOH-w;P>{nGf1CqNp$G|B61RtXQ~-i>7BHQnFj zOmdiES^f6cWS)jiOeNAJRstts3GGho0$8;>f477Ji!a6m!1GUCCR8$9;IB#|G?!^gnG}UqxmYgmf2e zuE9tVg*wm;4k4$yQDvEwjvXmR7TnxedA4q*XM6=NzdT7LCv-8mpW$Luy%=WhF&bnI ze+k4$hoNwJhA_H3y?&~dpU43bf_shn(4AO&Nb22bcIbJ!*nJ)+Olf`pI(Af7t;K`2 z1qOmS1gNMk;^3TK;#L;wYZSPO$@9S^tRK}{`f`BoCKVOK;R?kG!|sg&(6K1y7DF$hbktIX6*6K>;T` zBy%jk(X<7tvU}82xUJi+ zg)v&WTA3@7wVy;N2_P|gB^N}fR-x~gX3C9Gg!EW34>uX^?A{M&bzE0>8*-bpv4g%z z`AP44b1L(A7IWtZmKp-o?f!C{-m#JHKS_Oq7}8x({c}q2-*Ccu z0-tMV?59mjzVf6CH~m4z3Do=Ry>$cEG#pjscF0mo(+g7{yR^_R1t6J^=LtV$2`K>m ztz&qc!n(r9dbv41!rHRrVQu!&^#UUows*_S5H_x=LT7GPU^y)K>jqtX;A`dZyzSAl>T0^K(vs|14kY>@hNxQ zm#)l)#K&NK9VsM`%m$4cs4s;6&O53K1*>rYSZ}lcztg($+ycs`0$Q! zZ8UZ)CUc2^GiS8KY3;8VX9?ux=!hQg00+P^&>PLHz^S!Z8t|f(=^`LByNt<8o%7`k zgSVzIx^#%qd%iNd?6FXHG~cAUPuua>QaHZPMc-^n%!r-G>9v((oboT##Pd&zSf)nS z2#LnmfW&MjTh2P(zz#_|cVMx_|9(znkfyvL#TyeC6-U01Svl}1Gp^rk%t~)7rt7E+ zz3&+N;xxF5{b(}c=+wnv(l(lgEuoqLmqeBhPD{r5#TQW`rvQl_H9Wl0Gra8-Uxt}I zg4yhXw0tDQuR)rHAG(ciMmb<`S*KjKm~*zUvWdR;?D)raJk_|^TovKWZntC0^c*QV z&@J7bjm_)n*th-IzIp2H&Y9AYc*nA^IKoY8cK$rYX@fCbIs*!Y+A;tfnof7b0dUGx zIZJDF#~L>=do7Y>*=r`}tVjk_tECVethr2{Ez?2YDdv`B3u>i6R-q7~cd&|m9d_`o z@|fF)pK3_lztWulJiC0YFe)P9{LjXajXt&XfHfaeq_0U)yjaLYl|oQTw9(+J1Sj`@@3&sXepnE0d?^J+J@ z=B3++pq4-IV`^}YBY7zGN!FD)(!kSZUG}B79;3J@+li`vRpA~pc3}qs@4qn=qw3OZ-BtC~t>?)x} zr{Z-+ars7gm*KY)%>SVbAA7 zPY~}G_UD7Uf(X+`7Pc)O@3=U6)sC4(+SyHC_>@Y$uUm;$tt;I@$Gy?cAuBTy6dmZ+ z7(~0eg?70(H9QwSxkOOBklqbm^CoW}t-r^6-U+k}dvfi2eSH8j@FjIye(lRz^hLKu zKg(3IgO_4x$al=wDz&%igZH~TwYmsMyz&q|PjYkdoJBw))bnJxRcBsaElgN3ocYzqQii5MA233!QpNBpL+?2??CAmVUbdfaJlio) z8w?9obYSCIdN3L}h>BBp7tDnsOXUFk{2X3XEbU31V;i6J3yr2uo7UJ{@orgMcM5Ux zwv$W0lg(g(b|oKwHfq&G9Zj});=9b7J@9GsZbAbla2uw7-2RUB8qcFGWuxvglA`p! zX@Ust7{t7{+VP{a7@FvNbhC?M{!Gwj0=VXe$>o1b~8Hu*}EVKI7b@eAu#1ebY3r%eFf*)*D@? z*IK7`KNQIeT?@ZU)cBfj7ysmVgG*UrXDV;9DD>fZ%z6rZdZPX>A41PeS=Ky-Y+we< zD`ryN+#3Ht;LA1Kh9Vj5mQ5cV7^T$^c9v{MoKii$c5aO^N`;za2T5c*LhGAbb`Vrg zlWQ@%=Sdp~r+9t=c{9RL2HeHT0z;-ZR>7zcy+0 zpxT(3=sB-B((4j)>3K1cV!m(B707V-fK)*{A6cOSDAPIV@Z9)P4K@k7Nfq_Th@Wtb z%uaI*M0Hq+Sm@`Ce3dzThL~ak?18kPwkoo#)@&x68PR;6*ErseJx5u#o2u)w5~S6x zy9S_TM<98?NtZG~KpVoPrK3_7XXv^qeQTwuzqye~`aEHBGcC=q-*^fI*!MGD33pu{ z%1mtEH*0McRr@aOMaU@*Rn+%jDud4h2KemBGE{v|$VRIMc*j(U5Nz5{fNnx7Ib8F( zK?qq-0vAIe#)24h64;&5V8Kx2jzwXIa~q#6jxPJ!%t1+~uQ`6wP7YM#Ldnw8jFslM znUEcWJS2K8eaOF`&5J7|xvbYJENS-K%tzAr zso}vpWl^awE_O#UaaAkxR3Wa?YxtVjnI_L1kuf-mbbCX3mabBaQZ@d`} z3$+^J*jnjbkZjZHYU2|o9wbufe3VJ1%zD2mXoZo#3@W386zX!_wrk)X-fSTtIE9kqdPjdK(Rq(XmHcj%_~# z4B5QbFszFfsUeUJc8Ai10Tbx;6~-5ds`nouG+rgqbrXoToKasRh7AJkol2@brc5)u zs5`J~XOgGPDB8bh{yVdEwk0yN4ZpkTp~qPMB54avrQbfJ5~di$4Nf^DD?Cip0)cR@8DD^_$1&&Es1zhLmn0w2X z6jjF5miv({am%}(v7=hwGZ*8Be>}@n=%l4x`jD(Q1oXIM{Z$XQeS>Ur+1ybRf;cXB zu({|`T~yF3@|cp|SkE{y@fX8~KnJ*q92g3uW>W(NpLOG_&eZUk_{>rB&mcB%K&|?b z*Vx^{XaKO`v!4nrIWyN*TI|n1PH}N6_rqVUn;W{RC$8A_rs(=vqk*Q(P+qI$`p8H3 z*1oxTbgc4Z&flkgpHZoPAEk$F8=D6NxD0sUQx#G_=0(3WrxlhQiATIFUQ<$3!Z)rK3VzT9nYf_N3*syhcRYrKZ z!JPp0x=vLy`H55zYtm(rD>sXkAHt_4rk@(Z!Kn@M=+~wD8e2bp-vpxmJ3cZJVLxcC zqDvSYdmn|KEqnU)P|=-kdK(5%#q5rdAI!3W=KzDK0uq`q|NVu@CCoUVZOCTou~vLDb|I_sO?SZiWaWyGE@qc;@|i zH5#|I(hbl_+U^rQwdm!!ZbOty-qAYOP{n29zQYIVn{S=dH25^q^kh@@o6W*U#+Dl# zo)SD-GWUNoOD@7ByRGIpb9)PV_oZ-bS_l2e0T{TFUukeU~} z#4;y@e?%T|+?6z}oAe7H@a)w~UQN#hNj1&VN8cPc9aa)_CJ}TN+|_Z|ss`RXk~Gr) z@Wn|k^FDv4ndn?SwC8Eb?Hk9mH(2$`l6>~8FKO_8l{#&QNfc{Apg58}dT28fF^lA}~%Fd@h> zYF1&+2WOQK()3R=1%dNlm_vIWy&Bln8W<$Mv1pH_Wz8A{GyKgk zxJKo&-@fnzPa2?e$v);Pu7|R5ixJqFH0ZST{^q=h`7jUqteMLr@X_oE5@{G zr|!VQQ2TCvhg-LM+b0;iHM~HK+?)9Kz-^DnB)jE%fXe23`G9)JJX_Z7@F|RTVo4>=4 zf^Liw60~uHa7A{58oM$xyvWdUoA7X^$DUqfXV;-EkE7}@;TLy?NRLF`(T7#B^EY>> zVq%%&yotMxswa|wZ=-D*qBGydlB}40=q$Zev(X!zQKtYCFxej<9?-Skkj4igidgiH(S)=F<-Av6h5WS*ao47FNNzh8tR+LQ$=ZWrs}JXcer@W z9&je(oy4ue;eE{V$E4Vb=-lqG@vh`UUg+8O)GcQClTw_>ml$|bD&UN2w2-YCYbC)5 z1GWHZO?JT(eft{y_ugXINX(YVj#Co#!gp#e&MPjviX5Gs$?bTCs{px25+zjb=7&|X zg(X5?Ot_l}8!8ggva|`>HrSAErdAZA!@^o@@G2y5PFKmjV(wlxNzH2*5;Tf^)ocDU zsmHiirlLgxp1jT?PFt+}fX;_Jit!j$iG4Msqxyp0`SX?dS}MEzf&Cs((G3ebR<}{w zx5xF2xvD?rVoo&LnBS64cYHJ6bL)WA;M1zWdZzBbg#);r$AFkBS7{@)CipL9HGN{`06~l#fzkJpK_Uy zMI?yI{F|wDP46-!<$~S!G9;0FDy3z+i7jngF)zQyeLuU5=bBKqYn8p5SoeE$DoAquDxI zs^7oV6UAob$`7tqKfg#TQSnna4Sx_XbXX9QdES6nA9au9A*BByZ+A^ zt`coW3HvUQ)FI*3XZqUG%IGYr%wat(MFcA)Io@HH5d+cpgE{B5LqyFjAtJ%6|rDr3NvYe^II$@DpoSUc-&+(GJtqRSwNZ_ll&0ui@tK!4n^iCU=PWlXY zjcyEAzhV@7YVj~%4eU{dn=Pg5s+II*m1iF21C3_0SY^RumglQ_Oi8AHuv=4QmfxQa z>GF2L-uWEcHWvu5+{;;}u76Xcc}MR4_2E82 zR=Mt(dKYZf6O1ADu7e^`kU(z7B5fAQWfYTr5g^TQqVgC<%hER~d>7fsD=i!s&|=}M zd^L8uNZF}m^ePlS5(?KU3qxRdSwy@@$T_dP*7;G`xDe3=Ual+D&CyFCb*>xE-$Pp| zau0fX7BTam8EKTSw3&nS@feX}-GRfNq=RyFBJG?*p&Sh%@OGB1x!NpbB{Ik~Z9tSmAYJ?_vHrvzW z&%RQ%OvmCC{+{4R1Ykhfc=e-ko{(X@pkx#+7V?72K|MsP(cElGHT%U3opj?LXjP3F z?zdyZ;3EFf2J5tKw1bwE#>vcKNCyPos~9clk5QZw0%~@pNxjxNys+-xd3N;50uH3+ zC4ZUoXfAMSN3nwS2|o)5^g#XYU-;AWIM6NWxlSy=iYpLx&V{Ylk>1{ta*VRa$|m~m z(^>XQFTw@)OaBFKfK4~bQeW6yBN@%|q7=d_J!PjF*C%u+M$Oyeo3Bjn6YAMrAHX2f z#rHaVhWvO*${kjM35A|JsyE7`i>XACzC&Y8_zxRZu+2=p%ZH zCw_bL?3L*Fj#hoy^P=>mvCagT9BabI3K=reU;-Sb8t$W2AdI1_WKz@=~aq7S#utbAbkUd={#yxeI#XN+bW<>cv^h6ZD(K^q`nS zNuZmr*;M)YoZ?C9b_*XPK9KO3r-L$j7`V;D_gHcFTaeGRD$D7nNoW|Apc{_@xj|kO zXP-42PEY8EgN(Noq2Q-@5pb=2SviU*yQzqKS3Y05q9}`gRA`{@dIGaE)$87TAu-&3 zIpY4SYt)@@ZYAupi#Oib{~Do6|Fo_&JOb~-J4o}CCsyT&YNa9`y--V8p-UidBLI0# zu2Vu61G&DNm*R8?Seaj5mEkci@THK19wA(ZTd&kY${f)geMe|%SflOAr5Iy)S9PB^ z;l>I~zpyB=#r=06U*=*?tbz@Gni4i6PRQnsnZbPoY$SuZNXpzRYHIUjB zR&CPjBW}XMh0*a+81Rkq(n30%G3Z75!y4NIo|W^`*Hg2eDVB+Y51DvCHwGO9&nujT zSNAHN7swXQH&9TuH-%;{;j}IHPSkWjj2g_7%ygt$yDl<$vtIbl!hw}b1(92C@}If) z`%vx`&z8NjHPGihu$^&fxTt-7_lbSj8uq*5yWahd_ojGg`0|jNv5PN^E?fx4fkZq? zDiM3vrO9=UVp8-LY%QX61ynVyz73_J5^NX|BlJs6Z!b19KNnYg8w@|DOy}M9o^oWLY)1okWAxps*Lb)Fx zUBj7E<;DL#M1hzUL7^)zoX5|$t3&IRwF0=b0;FK}%;B9&GRdVUrSHK_*k{oh+ZNNmJvM>AkBnEW zuh?F@0(67GZSBIL=AU+d-AtlKlLQdiPO0?*%yY~qa^s_KlwmbtI-P)Y zoZA)O8rSP`@89FUfCl@+sn_qzI}K+zHS2g>3y*NCui_5_BK(gTuE9L{V8h8IaP+c| zO@kH@+M0?hj9@MBa4*^oe*rD1gS1U5=ejfa`n;0AqM11Nbp)W)ECuzb#lfu~d+u)x z_%2KSVQc%k>SFHmuZuW?*C|Y&{^*&yWk=cO>OM4oUG0gvd%+L2eg9CcDJgaic4(b? zI)qyN@y_W#MPAQr3xGE&MooHS95A-jCRRM?Cu~ybDp6*1IA4YWZpIFqEnp9*@TalWGYy;ERt5jC z{Wj=i2p>9W`>y*jQ?$~@pj z8*fS)axmFKQpsuA+4c)4X>W>adS0eXV9?ICj?D2uvbOOb2eYC-t#^4M&9YI$rgKE!nX&V z!|k{_bEF}o=|!S@-EP}%Q2aoJoJ+`zNZ2e9toddV7ym@5rVQ5DpIcs>JsB3GY)QR3 zBVT-3i>W(Px_z>i9=(y~R1!8`f}J*QdJ(%YUK*mNe8`hSsAbRpj*zzJ4D#>Su8e9L zo}R7~=obImR3E*U7q&%S+0(JExKs2sH{uAln2DD!kF)I6=7&H(--*w0mI>=% z{L{bMkls&g+6^(2XEcb2YxVd2)r~rSw5j$WJlpSIil*V+n%Ek}+M=pIiXF+-SNb!H zGn_ROPZyc3D+n|%I^?{r=5gE<(&@>3^zKtmQM>F5&P+4e&cuXZo+9h1V924}R06yo z4Hi5n+GK&SeOQ5F_b}LTs-AJo0^^Ehwd%rOGQ56kmS9q2QmzIH7Rg$b5Y(Y z8nbxkj2rwyzEQ6o_zpOGV%O-c3@&eIXxHc;YuI6NqRhaeO_pTdW9RtJ=Qd%_TNv1W z#NBbxz>UkiN0@J(KL>SQHy)7Lv@Jg;HTvCUhqGr~No*52hG!PXw^rmR^C z;yL2h-h9anI@d2GJ2S^iwy=Sl8{irIqfN;DM;adTHM7a{q01-UmDG4F^Spkrfv#EI z|GL2kGRM}r$uq>`tj%91R|U(g#qgWc^FC)v*B)QYRC%$ABZe*$Nxy&mxrMV=NLqgQ z*S8goP$pjU*3lM=)F$GVIC<&NV^!AX3`Olxb4KX}vys`|tMxt6Yi1?F<>i$oi@&p;%{pgoELhH%XV=YMprF3{Jaopb{jr$o_3hE}NAEdh=9UHwFL%r zu(h`Z@bK^e{`&y_^AcbM5a8n%;O7$%;1>`S6c7?QA|fIzECP~{6gzShBqw(iBrB_+ zq;Xu~n3|%jtcs3`nx+;63XwmqtEa22r=bne{_i3@f`Wn~LLxFEA~MovfQ;KkK~)mSAf=#2NbOwPAQ=7Zle(dQbgHn3>`^&+ z1r1FtZ3q;OFfuklnp#=g*xI4&9WYpT9Nxo|5D*v?91Ms{BA0LoU@V{Ii;jY{{!}axt0N9 zK%T!J4=4pV3pf<5G$+Vr*gD)x`h4$Lf~W!f>y?(zGF9SNPb-s@NxN=Saxe2I$7YvA zPJ4d#`Hs8#2F zwX0~Xzzm)G=CXx;kn$~xA1*Cn0L{N`C4KoggqdTy$<(q{1cXBkTvSqU?lXG7|An-g zKOMNCmAX?3QIxL6(}!@eVwL(Av_c7KVM|RqL9IzkkG~&dwXMFS+U*5^?@B$Nh>%mH zj6La+di-t~w<;`{<{l?!JmM6jW{vKuyx~TG{&2O4`2?{?BJP8psDOdN&C=4H7v&^i zXXHihJ3~h<7mDkh%$5k%ti_M>R#N!J6x`+t!t5M`mHQz>l)sT8L8H>DdCA(GA`p#uwllm{@`Dmfd4KnTeH{zGr#-foxD{^RQ0P2^Gh4UJ!X^tTM zXu&RftN?2-WrmeNGF(72^<}rT>EtM1h&TWOFHZh)-a;@b*6$-5E>=LmE&eKk1329B5MBum3oml?wH<&-rifT=OjbJjYdggb-Sn#XZ_hl z9KF*?hUgayF1el*ykntIiXVb6i~Am(RMSGRL~rMOBEEW5IP=!hq*~PUW(s$FkD%Z> zB(us8)shZs{I^=aXvaeFTb6hJ6T(}KB1x^ehZkfW%~;@pS4Kfa;84fRTn|i+ZSwC< z2sp5CY_2}H){=EzDR=}03FFsQ;o)Gb_gyKj&+CEDF{1tjRZSB{+Q4lUqil>^Qe2am zq1y-6x#0IVZ4)uCDZ~2`DItkrr|yavJ~?OSuWNV5l4Tm)ubF$r6)u(MJ19KE3%ahI!oSq1zhr* z{L|Tp=c7!bIxhOyqAxfU@{(|S7gt0BXu+1TO-93>Id_lfs|hsQQjI&^>@9cjYDLMR zyvw=7Ah750Y|j4UP#F#1j`dlLVVZ-NimN>|mX0N^U^pADCpaC&9RN2Q(BBZG0pOoQ zfn@#j6|Q{FDT8t?{}5)^dndGoTQaub;Ma@!d6N4fx3k3v+Mmpu$al1V9a94zMBb;_ z#g$yFSi19lc8>&yyFYxI*!^f?|*|ZnCWYFBX#x2$?WL59Q5T(dtmR%6fJtn2WO5rn6_j=|sW#e+V7m;Zo0 zQG#N7{BpdCLTG>xP1OaJbnuMsRQrbV;brfK_QKfaDZb$1q~QExvXfsb6c%nfj!$6@ zrlJH$giBSa$$BjvPwrfS&J++q8*3f)$9thk3s((0$+LX(c?EejjnUH}nU~ zE@f*^%U$d-hiCYEp6eGax1K}9)3pATssu({A>n<@Z`*3ioYxK==aq+fNIT91o8wS! z1wZCQ;RvaMGq4abU$T!9Rhi>fdukh?TPHFbR(>kvO;3!5t_UXiorvaPV@kS}A*Zw; zERDJ!X*9rfy)fon35DWCo;XI-|6}`!8M6L~T7~k~RC;BR0X8o1qFFWT# zi(Wqy=8?RL8E5Ak5wlM|h*3JP2ALP&Z`% zJ3dc_w}7tQ6Y{GjEhqFOxMm{ra|mEagO`*1kf1zGrT6d#%WJ)Ppyxl5$I~biHHBf{ zc-_a%aJA>Xb8`$e-Fn8Du}2<%JZK)xiMHP8k^dL49N0_V?ccLB?O40};8E?Iqb-jXgN^zIZ$xtO$zN^*4{ss4Mg zINj1#bhA;1Ws^$9_}!m8INvc0aG7hl_6j1Fu!X1v=N;R>ok}ZAR8JwzB;jR$MwDs= z4s77(jE!~;^i&j=?tP~ZPl`Ioc4*X15e&OkFmEx0_Ln8BN-GDS+l_?2f`YF)n zITzJiR+N)Yw~_ow?w-}2*nQlU3cvX)`BB=vM#xuo=g)ZhA=xpXmmft&OTcD-Gq=KH zoBuuUh(lvzY=)LAimmwkTlh}`KznU{(?=C?>76b56ldE{ITNwtFKjN2)HivJ9&sNz ziwJ_;Z48{sHMDdm+Q|`eye?y0=~s-MhpCyU9js=DdLe%(Y-2uiVuuyWdZk!|Gf?aD zTOoJlzwvK*FW9N=Q0s=78Y7ZX(YHE8eqkIw*=V|D>1bV4T%)yeHrr2N3;S829V)5f z{;$0Z^n=#&XX;=3iY4B%dO^X-0_i|R*=^8R!0HIuMF;ZZoas`T z*Z10U!@52a_wK_QR$nt?z9_YnbH)>QSyrcYvNl_P5c8kdA65C&iF^02Yarqb>8jyT z)?@k3hv~mNEJot)D=$7eb>^O$L1W3+``!zP%1LaO`EGgt<&F@8$frc}>Z`CS>}+3A zvD!PRVSb|A{d2u-xsE~nAx^a;TlJ7%Zl+p_EY#qhmBD*=ML>)Xcr~?AV21c$JHo}` z2IpR&{aa?_C4;z^CzidmDBt!3zn8B5SpaWLrOZ82RT7g1ifkVMeg@50DOJzK3BG?? zjm-qlo2eg>T)rOHa$eJEZ6Q=1les7o_#OW0(1$k z+mCzSw&mG%-s*N3xNzj$KN;A}`@SH4$HIPa_K5`!)tfPg zbrpHRL~hX)bA7BW{c^T+@6Y*kj`Awh$0IP_2qg{hW0CQ$3x=}1TP{YXx6==yiep;h23FLPK*4V+f~ zNX?&Oan-%-?S^}2_e%^_4N*ahiOv2Iph3cFiq-eY2sJb9d6gk{B=(VW-^X~Fyn4`7 zBPd2sj{ERp+m`z&$XaP_`miplU)*P!RbRk1&7ak$2F{sjuXA0)UhPa(ad^tlRMctU z7#-2)R!%%_KwN)D0{RIM#^$e1L`t5@?=ydm87kbFf-VWJbd&}U4JIw%|a z$(L~ORAl*bioKFeA~#RS0J!H{_m&~8Ju9(z*9mv$}Y)!I*=NW z&AH^3c=Org++dglaIuOkNc8`EcG}mz*Ew~peXa_iV-K%2n|r{o6#7t9`fe%NywO>( zre62`?G}<-ROlGU=QdRHi`7qVg(MSCC~#7o)^XOeQSWhc+hZN;mI(VITmxd5rJ<-W zX@j#0d1n!7UCYRu1tw)%D)(mY{ad4YeG%cRZ0KsNSro67W7#aNVNE6}`p8ro22Yj2Jxy{w;>;|bU$9+YHLt8<3!Wx&BLEj!``M>`7KeDhc~^*-nB^Mqk-J6w6DN|2 z)TKlOB>i51+7-D$6h@6SJJHiHG*{5htYU?*pgFm>e@NiRkTE-2ZR&A7adkHAqXT>sE0et}lZh3l& zX@vaPi-X%?E{H7tsgs8Inn(Cu3)!ET;(22Md4YTxhc_MZY>_4P4GH7ojR5z z;QU^ng)4P6bWGIiWrwUdo{tLU4O8cDL<}Ff?hFM7@H{l`-uf z9{4*}SJnSX%<*npR44nLSE^+?-V08;_^VUwe)}Fyyz9~Z`fcNz?02BxYiB{*uW9H)#~yB#I=9b1@66RZ zS*Z|O&sq&`oB;~%w7yLcupDO`1r_E)EecQ93(7aOd8Z{OmzREvZdVnPs^ zN)v=mrRQeBSz>eJbY5{>uFb{8dJDif;v#A8fCUG3rF~Jruy~>k?k+l*!(<(-XYOkYmY)MedvTw8+;-#0;_CM@SaZ<-$rtS+n{0 z0J0$kAbNbL^P1t&yA4*!2_#Q7oq?pKfHza__UpmNSuWMeCG{^7=>U=sBB$1(r%}P% z;&bN%{(uwp3Af8BIjcqR#TJ>x)>^{3A7=AH^@?P`y(^}eMaOTA4|5?8$KjKwK7tOe z#Wf0_Lg*Dy0CPEmsvR|>%dGTYi#g4ATZJ2W-zU5x9MOhhv0`HGzXDjWA=s#DWBrQU zY4R~RJ1aNv2F350gQeRg6GSxjsl)9{d>%PRH)*#wlL{@+_z2CxF%c@3q5O(K5H>;CD0D z!TRZ$#(O4B@#+)H?WZhl-nd1z`G(17uKa3uy=;CO zdo|SJ*rLT8n>e7mD>rm{U)holxCSnYt{fGK4r1a7MS8x@)(1Li6SPO#1Oc` z9goAt_T!Yshet@u$!&@B1BAbD);eWUG8iP@6%)aMO6Yz<=6 z87@@LE_cz|Gvy39u7mG#BZ-yA74eSF5M3uZD&nHLN%MCqIM6|Vu|t)`N{Xpir%=@o z7po_!=h|weR5!rnX9bfE8|$O=veMT z+#Nx3Kuf5oe6+1$5ervfsYT`#>e(Tj*5#{p0$zCu%m^aV5<}mOyhl7Yjcvq7T~^W- zRWz#$h+!eT5KPANf=VK)? zqZh_L3Z#E}^-}8Au8+eRTbsn+j-QZ_0jB76U)O5saLrqJrXVT?#L4p3YB2^MJ5Hof zo>vRSP{KgmU5C0j{rvv`jxY?-LgxIa6Hr47iCa#OlnUoLg?d8dsyHm=oHYw~M}-HkX+li@0T)aD)G-GQ-f=8C7M7h&2Yb*Ff&VT?>S=3~ z_>dfu_c2m^8A}zesw=`JO+sY|F_#o_?-4doGy84Wb{IJ9l{mnm-^n}czhYS~^iyU;MR;-9QjyIx3y z-C3@`_b~d`f|JFj6R+XNlTj<~G02OQK)M#i#?3;OIat^g;Rj8o(CC`)UZqG35HkY; zHT+wSu?#Q%TuO}lLkDl2fpLAq6V!yu)*}3yZH!Rt5CKL1X4_Zdu^Iv8bxwib7}iuA zaU4ogVY!Jb=(FdVnFG8J{EM;stw?x!fKw#DnKy8;{n|8kN@ZDF0{wYf(jlqaoJj6r z$XXz)b$m3_FAy>VkHt9K$H!G$v4u}$Zzwo&3zpzK(XjUci0IP=D%{o=iHw4;OrUXq z->dIbzj$2WQ7>ol3uM3V++_8j@dj`AT+UE=wMe1FP}8Hh>K$_WT(Y6VwH2~$hC<(j zBjg-V_2V-i7w{C(=x(68$lj!YT=TD2`s%hO+%mZ;g{VU9`?zO1xT|q7zV;x4<&|v7 zVuiyzVc(;jIZo$g;E^2z_|4|5EE$=f_<&?2`{KJdh9tKWb(5}voI#=uxe5awNLuF= zL;tXtPv%nHEWqp@x;nr;RbVBa%3C=KR{^VJOF03x5CMP&maCL*>kP@o50mZQ@Mjxj zmI!L*b2}q&bzus(5`M;d*%0ID9n`fB8d$Vs6YM50HIjgf&1(K71BHAdBMUddAUnjx z1csmfT+PKn#s;yOogCvZr0w)A=N!KiWQr3>vXDA#2xeGv3q8KG_3QCU+8^==QQmU_ z0x8dV*JwFNwyGG1zKOA6`J?!OAsB@dVCtCfm z`w|PFPrR=}Mav%`)xhWcdbgO7h!$M?$%rx|C%s;);4{VF=LISE{6y0%d}>RE)=4Q< z3zb)XutSSV5CutkV<2y_ubT{izE)6nVv|w9Wxuc$@tiZ}WMSsG-o@s-*ya9k0?%iR zb(fWaEXMn6)};h3@b+nw<_kx{R%0E87yH60=FRdh;{J+-EwE;{sMiY0^kQRK($2Qu ziwGp6)OTb-BVztr4C?NkQVVg~4)L8l9 zy-w2N+44Q?$ro912wjQM1kj>9BUKT7>9lkBQ*-~jZG7{xXmQ=8$-lL$EB&wJnvBOR zUaWA}=Gub(80LrDNPB0!9bGO^U+%O%BS=Unf-N$vy;%o$!3NX%o>|(!B9|{I$92!R za^bQzTH@pNN67Zh;#hl>8K*Hmo;ImCnp43nC}Lf}ueClScMG(PLBya$fwH$7Im`HI9VCh%` z+58^qDVTFDMEe1ANK=KYfsGu!p!lo~{ zd;(POS^kD)rY(`|-cuG|?brc`EN;uW?^c(DZTLZ?j!aFir#SVPVX!G_tEIt$AnB0l zQA3t~`SUc4&&fp9I^A@DD}Py8VnCc#Y|88#bW=_p{3xHFh={G?{)4uLagA{QwIc&- z?SVN3y*u{BxyD`t36fLEwejR{48tnUL)){2clFUuRTtLH_0t^Q`~xP@L=Nx! z?`zQSMy`aIE!}x{r5@?Qla04bGZ?-^`*MTmsd^&X2B(r{k=3MP!dMuE=?ALT=iW$~ z)x03DNy81WaGpzwn1#We#j-57GvY4XywL`xiDGQE=>8K#n7UkZN7*StvCEi1G92ei z3@l!Zh)$xkwrjHhp|{7us)*q0)xq_-Z_x7fIcRsj9_3C0?>qva%4UO-M>|zXkz~&$ zE6Mon<4WI<8_1U2s!$+KzGMucB}fY#-Aqzw7ayOIBpf+vH1FYG5F}0}vGf!qRqu^4 z&;8YY=3%@#+Mpacq74Jg@Cee#(voA?Fw7e_jK-$H)w)CLkTnNm3fNVMH)eX%(?e2j`TK5NC3+WGMB|Y}gXu8uMbJTgXvGaGjeg$sd_9UUQ z_|8=Ktp@h~*lNqE51&u*6`?h2uW~y!w94KWZg=AttT&D^-X&dBBwqpMpU_hb_z$bH z_tlSW6|0Doj?D?gxASht9%JyA?hl%^{eI_dRraB-BtgDOf80Erchv74vT6JKHc{cY ze&;cs8RC$A)gifC?j13q#bVFXUcqK%*%P2dln>;#|KUg`{X>z9Yku!DLA`d+(9Y6) z+g08}v8g|cqY;ss99zG6aa z$pZ^&CblBtqNF8C?XkAtXrWzqrSy=Mcd2^uQl7WHUB^sV`Vb|7_XTL3iU9EB*^G5O z%l>#~fSG^(ylL`vC;Y=@T%*^!d~YqZxaZqD$hBLys39f|>fQ@mB7~Yaus{aATY#SN zX3hji1FEJxU+9crhQ1u*9)PpLPnxjf9xJ2-tC2v{-0U6Z3qgmLXw#*zhMj7=5>|A) z+lT!7{Z}v{{O58w{vH{skG_pu(aZDuXker8{qxb(pd(fV>OIoM)F5}`VYqn9dC_g&!$8*%maX7Oh_ zFKY6APG}yguTX~_RNI#Oxqwv_MP|rr&D2R!5h|!N22&T(?{=!H_^?>SFBF!xO5?+Y zMxW+PXeLpt;NV`yv!3R|Lb_eGxX?XvYoUKTcqXAqh?~WeU|&VFzP6xo1L_`a>gK2O zky{*qWLxA^aPyzQ-}BST7)`=w!p#%umtm{Pr%rG6n`*J$JYyE?Z#jqZg+UlVto98; zQYX+9r3$RT=JF_F?xeGXb1m=d8ZJOhrG*fa38m9NE~P9!w6_q`_gLQW4ZJ4Oao+5L zXGfrTf%isoHu<3cA7=wCrGJ}JI81^B%B%}kE1*+t8Vxxs5;a4bOVuOw^+_B0MVpGb z%0HZosp_Q-9@71fDYsZM=KPUh4-quc+h+RmbK=Rnw&BsQ-QGkZhFSWy;H1+JY^)0$ z@TW8GFN_ho#V6O9q$}NC;m)fcTMLcSOfMSzS%xC zZ}w(4I5jT&q%gO=zSlrs{S)zK&X;w0fi72lZW~jx<#9RPt|=vrTz9G7eBj^bTD@Pv z;?poGKYEnXu8pJb>~6>30;E>5Y_0FZQE&1Fe+YPeO{*YY>(dwf!EWZ;IPH;`x%#M+ z2IlS1mHVn?Qyza5`U|hREh*Em%sMdw!A~t^>xn(kbK}T2GLsgOg<(p z9OJwe)ueELR<_-Gn<)pjx~zp*_+F@(YSH3XVIlDuA~bV` zQ(b^lKJk*Ao}YU#Cr?~;#TTI?<##=)C3S3K6Hjv*LI8U{r|J@#LW2WIM6<;lS z&KDxOaoAv$G_SP3ntZZOl2B#jw)%jNzDTuqVQLC(R~JiVbKWktGPhLkv$Tl<@ghS7 z8Hx)RPq0lM;~o_)Xk93iCO%?tZ3j3FHwa+^O^&x>zTq6ckMDW=_SZH)E3B)-)0`CA zp3?kQUZ#4Y_9%-6ZQ{y?4Ibu?at52%gf_^B;sNLF@F$RLQeV#PQYt@UL4G?xeOhB9 zxJul-$Zu4reywtPS!`aR3ZDx#lO`qyCxTTULugTnG~N`|507qxZwQNHIvvS#sbb_& z)Uw9IFazRmJI#hc<$1PG7SsRP132>~IPk1PolI_tX%$gi=42hE^){Iyi3qb%oj*=a zVyMii>|j#T8QPfv6SU`+at!Ha)mtCXv!b$B=5uY#@pE(`{ZxpDh|XwT#KKng6|heo zvUUKgo`xQcv8p+stBko}E=mL4BPUeW=B8e*6g zSR3{nHgA93l2-H!ydGZn>0t5JWZ0=2VRlwN!l4em_~CsuOVcObSgDhz9KH(N4TIQM z)}B>UF41TWe#9sC(WDuwmP8z*eYZ8=2b{*+=k6w`aul6tyyUOqaDRG&F-vZQpJQ@maO*WAZ>q2 zMjremm&z{N&cG53Db3F9gr4)abUHIIDwx`m@*4pZk{KTB$se9z(i3y zwZQoMt|eAO14~Nx3H)LMBGkX-%o*=_Q}Vs!N~q?jNt1<5H+<+3C4b-XUD%3{60(7! za@GC8qj}GSdZ+9ce#pi>S(w+ST@De+ zKLL7<+1$bTdFwR)24jo-fSSTqEzltvVj5Vuj6&jM zHyj)tx>)b#HaZN}e2e0L6Ib8i_XS-o$dnsgr}3VU0xp&pUy@-w?_rgu;nrhUejbiy zpdOM~A-&*+$He7M*MS8WA66>NoDRJcDo;bMJhONESljoMiOFJad)EHrAZ#k=}pir@LdJ{u5?gJ zJa+na4_)V~je|A~y4J)v(fDhu$kh}O?qO(3-lhneFuJRtLT%)~U2k)_!c6-wpK+Sq z65n5vpCef|F+wF0No&j_iLANz{!m^M=B4PBF^CGupqaq@#&7=&d@gk_{!3p6^(f55-`YpG6(yUOP%f2^%7e2!z}AruQF4hAL?0AL{t z@o+g@)70f1^g!)!1^HUE!2u(uJ%9!svLgcG`UjsPuAhk{Qmo@8V9tw*r{I92LB1t2 z-rB#|INI400Q}h`$-9Hq;w0!}0OAa4$D{OVszJD$<_`gJfQQ+eg}X6h2qzC?B*Sgr zJ{1n`hX&msW?!NdA5RiUIvIwiT+&{9R5T}^QzfpA**#z6v@xsyVt~5h#HSby0aS-& zm&CXS=0rt9zkGsL{6Nap4hJJX^dW+$B1&eb1U5C>KH|d_-F1c9N*5cC(X^8#76P{r z$CSf^3=&bL0FT&Ol*Kl52-t%j@2#rUE4?|yTpZOzuJO*Wddf@v43r?cUT+Na{#v`P{crktAQ?kvAX#DB z13T!kR3u2ozq3R1IPr=6fLw#8K>`E6Dfic|Z_Q2^BRshj*OBZLVpT|t&Ds*6I&Rmg zx+`KLbrw-S-2x4gMV_=K8$iT1KXz<-SGWswZx#6Du(~$i;1HXSM|aRi^_5q6<{Esg zau@oc*E-8@^bqEFbhBA+FeQv^=Y*Q;uzH=h4O!4=$ZGFF{V3!;%-TQt&xxCIFWS5l z&DQz_FWkJIlXneYb^79STn0Z|Lo-xRvw^?1(g{9b05w?Ql+}YlBWl_6`slSHu!Rjd z;3P4+2b7HAJ+6(GOF3u~Gili2k=&Q}sT$94` ze?4Rs+{N*uFykcl=aP{R91a-kC2fn;o@9m@mInprxdJJ-C63@dcd;^^4!Jx#7HV#h z#0wn?GxoC774tB$!%pIju!o@tuE)XcTk4#)^?v-T6pFS) z)`MWEw7Be1JwEtDCr2dhrA_JvPbdV#Pxr&LdN<>F>!60XKtjezCt2+rT(d2Nm(vLG zfP=(1u8rN*h;gMcn*CPR>^LH2-V+{QX*AfRK43?Xd4XvI%t= z8?`3`QxH@NclZfE7q0vFBD)s3ky+>*wxiVq0 z!J9K^75X#4zFvFQmudqq@C`7R+StHEK_okkH49Lc5>P*q`;jl0TMV7D zc2ZZ_XB0oQt!6?s8Hx-!YfP+(Jwu#V;kJLo?p2HZP?KjHhq62i3?Qj`rVG;UXRoHX zZ$=m+s$GGe-_*8Ds)hO}kp>*?6FKGrgk+7(1P1Cy`Wg5S8YBTfz#PKe` z;m*WZ$yHrYf;6YnRcmi(cMja78O!asz#)h9$@6MT#LypaW1lh=8Wp)J(2st%CiTCSLOdet^2bpf*-B_k(SwY&KeP~ znEM*=l}^h9=UOsKG8FOrL2Irkz9p-mX6nsA&M&>MbgN^E*xE)fZ)y+A%R7=$42Nfb zG&#$sOsAiGO>DUT%6dk=f(C@N|+87#tFJT5t;A(Ube{G!)n2F~d2o zd!eoSsY4TZI^u=F2i^|8+z~EdIb=C2J{E^(#OMd*6dyDi zi_8eAETKLzl9+K3)q(C*Ldnc=?1N=mlla>K_7zG;BD!;GMRVmo%|QJCqDsE8ETl4* zTS7txiy)g_z#dr-z1K?wx>D*_8VY4GE4bYN!>t^gyza+OmOzB-^!3D+`O%;81)85s zCR$Y1yS*1if-+jlN$gOo22yIc9653g(rTK3;NN!gI-ee)xTNwx4=K>hihXA~4`g~; zq09BX54-A~68gHmwt*-VKd&pXwnvSLM6vaBx8T7w_DI&*C>8)E;e-;$TcOh|GF^zS zP6!vKnSU~GsJKH^n7&22mKi!FK#4Cg-ON*y=+F{fH zrtgaa*9m3VbO;qUv10*mel#zx>ZJ@FkO#XZkABJPg+3a~9n(7^hvAQ(MSggw)hZJSsIV zRI-2Ayz;wODQrRmCR(<4?d+P%NgL^h3I{oA=+`}0cKEmt{5 zp$>}J-AS~OSaAN@Ot`B{F}F8s)>vT|ab~U8$@++s!CgazI&SJ1T!L5|;~4$xnbxbd z!dvF)mt+ic_bUskI7+={O9eh&Wi6GcQP{S)Ef1Urbzg1&T{yQfj%O%CdaS3ZwqMUv42-%yeG(Oozy5hcSD#MPs>O zO3Hitiqg*RseZSkrlHhR-v~_GF%=o_1?GNk^FLvQ!xWt}0W?81a#EorA~T%9`&yp~ z@3S{mu(;rBW7;U(mP^DI!FlxPB7R7^LApiWT&}vC+TEr)L zx7M={-9Ciy_whVm2;UCs>h;R-`Ud#inFPTd@-aR)yn{`fix!s!SI2QXlq~)29GX;P zP=#Q{Z1)jg0b)lDv3fC6SQ>`u#)do7qk2{6S?9z}5Ka@l+9o>|8yg(UUV0>zZ(yFYR&C4Rsn+qd z8Z}|$|8)0YdswmfZ74sTX&TwT7BW~@^HLGxo###5G7PrBU)GFGKKS5MJ2T-Q2+sxn zUEQw=hm5T1{FL%P@%o?OfhOTWuz1d#?@M{tG`7?1(&gfLHR;Nem+gxU!8`qM~)^f9g_d|yyh?CE5#oy?JPBZ^{*}Ot^eDMux1y?C|V81n!kLQ|VLirok z7n99>=97+WeE73Rthtjuo_+B;KQUb+v9U$qy_9d*c1})~ge|1Sfau6GN3ns4j9iRP zaxVdb8P4e5{aRV+_F8%ALgZp$>!J}6;@vVwB&%@Jx-hZ_-I!XIkDDO*w)GR!o5&=>M&;yRG9SjxDHLY5WdzPfZ*Y+8Y$-I z(ds{!W};bdZ-g3%s?X2gD^3}fc}>ps&g+wa)NW1aFtsOkTvuLyuu3aJ1v@{mJ64D{|t=f9(+FoX~XZh>cx$7z;OI&^o^B!sky5K&-Q;*a`RByd_X}^vByzdmG zTtb=`bp=x|*LXJ^P+?UIMw70^{Nx;Y^RU_zJ9vkEr_Y0RWw(!&$Llxo>U++4N#Ahu z;Va0qbgxpr4*Ak<>?CLVVsMa}ASY4MyD90&iMBR}xf>{{`Ou zSiw3zr}v-x!PK!*7_EyeUL(rOy_rSHxRp}bC*VA)3gv_*#u_bqV|K8JK~Lqkt*s=V zJ6;jvK<~GXL07MppyBJjUmFfR}m z$4i-n%{FqWRET@+)TWb^;_spUFM~1i%`esF9w*LC;PcL|g7=hpdyWT~9kN0+Vz4tS zGWiy}PM#&2JTnmBC*H$`Q$BThW#44BVVYTvy$s?`*b%+^71u!vhRlCk5Vq;nYTwH^ zNjECyf<0$IUl9o}J*=NR@oReLWM!jx$dM#9sAnQW$6R5)n%In{)ax+kXR$+PV^oc2 z=P9Rk?ya8MvPm9@O62(@?oX6@A97hw;eBL4yW8;nEe}d%XLFmr9pArUDdYb(MP8k2 zewTDeD}7~aWA`=6jvyR3$oU5PFud4Uma!dnuC>uH;(>)~-2mVIxgxSK8$iZi(Vvm9 zXu0tpz_}kDHS$04o>fpJ@0)$ps$m;9zDxSt@6XWU0)FMgZAuQ=v7bN2_@|q9zP2g& ze8mfL-OCy1!9K`e-<|xHp}>$b*mn{k4r0iW^E+raiIu~K)f2lo2Tnw9wGQ?j#ySTP#)YN&?@v5aiq-4kacr&q0zMDbxRU`WpHq*otY;5NUTrE=H8RkBh@p^Nfb} zo76Ad%0p12M$QwSE~j-b+43ELW~jbapuh>lj)|$u@3@AzDz68OxC}02MKeb!&=_W3 z6}#fjB>Mf3M|?frB0W9FmQa`oG1&(tN4mtFP@&vzgDcmjn(w-e3AR^n-3OT~ zJH9nS76DKA;v!W7(@>%UdG?bZy=aZX9?sL{FbMksl^kO(n(FKF6Xd}2(Ywn$_DYoQ z(pWdh%#s|L*Yaq*QuHYxtoPq$-eXs!oZ%h97CZi#%;F;iw_I!AbI+q~tL6dwL^ZqK zBtN~wCC=4gjJA=)%#0uhZIS)S9{A)%1=;}@@fu=cQ7bmz2D{LRnMol7ik0r{1X2!b z3s$R(zj2Mwi;MwR#rMEh_n{2%MHAgt(CE($UG%*{DnFma~sLSBCJy6ys&BipX8S^GN zLBnwVu*YBWP6^>ek;hCuuEnb*(@xWYn#1xbbLmRkAoCJOe%rx_pF8({Dw=E5)wg)F z+f&5G(%lK&t#+?$X{FHecgmuT$Hz~pZD5uR<&6eTl#gus`g|XyaZkdnMIxPJotDP^ zZp=wh+zC>$7T1Mkm04<+vE*Cw=Cl#D=?Yl|IPjUhMY_>~LK~b5Rsb4+YePa%AYLOh zIb_;0-(-t%37aLq38J=>N5M**s*|h`TZGHifyF^$qxG;tY@lR;fXyTlWGG5ALL0P^> z$>MzTuH8Z^eZe`Wzhup!!-HkhWE8?`g22#+iz|CvyII8YPQgO(Q*Y7_gfABfZg6wV16OL z%ej%Si;FT;ypGI(@25Z|fJTG)sbSi=E0kK+dP z-7_2#ul1nso)3#X$=!9G#5Y#`noC)4f=pcE&2ANva3FjFa2oFj1-#=z52@mIww^c@ z!I&iP>s{fw(Itwo25n;}NMajqnNsQCSowD4XY?#xX8WRHe*`;EByPXg)v51vtdV)6 z9{Dz~qUWd^zNN(GO`K~GM=!+(C_+~VE~3aQ1xGbRS;aX&s&@%-=>{nq62=1NkSI7h zq*3OJci&^zszsU$!viB(!91$~CuAe>nLmaO#Mik5*6FH=p{&XS7ND~i?>q3~whbz= zyXb&6S)qRF%Yn{&e@nvIi+wYJM$|dV1>Tjva?ufqC2psqCm&1Pdr{ywX-?1=75)!E zxcvC%rJpe18N>ajXBSzo15aSA26D;zqMfMABdH*TQ)q9coj=ltp8v+nJ-DWWdQy@= z*R-ZD*?U?~WdEMGKUq87!?m72_GjL0Z4sgWe@&UK)9NGBNsD z%E$0y{N+XS9Q1IILMV7#xYx^TNHnMDK<@%{+oX!OiqF6t@IOwFx~^AnubAxNeB_*Q zmqikrSJ*=4u&^!kEWKy7k^D-rLS80X43=)fb2xc8k9-PlR;E2oAj}vj-n@hJqMWi0 zFaMXof+i4{h2M2soAQm(qun$F*XO*U!?^1TY7aWAo7bSJNsi&A>QaMz1Llgi%I$58 zUEl+=Ba0;?Q08okET&B<%Ni1*GA&Z9m4m4mpp|?E4|br2vpsLGZZ)rf3+9i-5>ne( z4@6Ak1^#*ql5C*Q=o_VEZuRCWL<&S`46EPMTzquxjS8l%F)gkbz9t&ZAo}N%J?ry(7N7k71B5+o zFEdatfp|U1eShS61ddz^z2_WRctwyNFtmM4VD08&#^typzm%BQsH2vT=S?wjH-ruM z7AiEsI;8$2BdII#&;nWIuI{FTYJxY7i!}~H;PF&)pd$4Q+EuVhL{Qa{U{6sE7pROS zqC^HLltyfr12yb4ib&?Mb^p*wzh5?vnivN}XX$?d-$J#`I8|*oQbDzt4i-V%ys5wq zI!RDg%{VtFKEE`&MaCq}#3&!%MFo@1sq_6v#8vR!I5bYrvw(~7Fh2jq!|i;|)&r}- z> zY!(KP9~CpL9wK-9jA>c5zLco)PqQgX29ldkZ|e$eBRt{1e>46RsH^E^TxO}I8n1dl zL#6~mEQ1aB_=47|C*ES0haa<&uh9<5IDl70!ajsvFggr8CAp>NT4oBk;iHgVNiS9w zxP*|E!o?<~f5?;Bt+Y`Wh4FQj8BQ@x+;4n5=>D_D0LWY(=z*={>15biim`%ql75 z+%+C)Sg8Im3}FxNp2g;a-w?y+ph#SJWhAUvMv zL=w%v#|qh9{5RyHUI2--Wxbnb+pK!uti){exvJFpXOGyG(S|;1I5Ow@2&mFAM0IG- zl~A)uQU_mt=$} zOFh8w>cri(1rw7vL_eO8PW-9B(FUKN<)!-DWY(8U(`lQh9c<~Qa!!KtvX2f2sF7FH zs%_~=2j%Dk%c-h~`=^k_;*5%kUx@G2|X>#_`uW1qg;sIgtXYSvz_}_|d0=G_4j8!?E zrdl{zxl>s7sfud+wRPF$v;y+Y*XMJ`c#VeGoLddBlW*UI(F1n!4du)%@4M-C^xe_443E2&?70O?(5-dMw!wCFCCk|x0Erl=F-bJ9t){1@$?yPJEb z6Sdh_wmLq^$Ew7$3bd`(A%qk+DZU&i$3WDcaUwNe`| z6)*A{b3)J((zywA&&0+oH^_vsY!a&5w-oe~u%k21aa6Izgm}@?oxw^oPxk|Sx=ni_goHgm>iRf&y~ecPH~o#3KJ`XFV#Xaa*N|oR>Q?)&YYe?O ztH9f|TkEM2vA6hYg!i2~g#sfBdT703=Vs5njbXli)iZNdmVC?IQ!v>ssH7@-89H!4LFc-Hs zst;wXX50ElRHjW`-#Tvr`euSwz4tIJn_qjVTw>0F-&wR(?pXcMBS)(}O_gd$t%4T0 zt!uLh^qq0O=g0;>^;4$o4(yu?_c_@wWf=uU|D*&3{BS5QH1j>1lIxHs)sL6W4s@{7zb+^NvtZ>eGf&K4nn6DW{nLS z)4XiFubIEUef9Nl?J+S>iS7{rp*pVM*-j?TSiRlHS})ep94EB-e)Xkg<7DW1)c~E-ctA>wb#@#CM#k9Lrw&=hc{(XFSL~s*`azsU16_mE znDB2fVM1b#rF>!Nk7T0-U^i1u=@bh%P%a&H`R&6QyE6ZSAVRa6h` zBgI!wJ9exg{zCrl{{gTf@p5N2OSXELz<)jj{fJ09hL|GQU)b4mLwZ+*9Ai%nnhIZJ z(?y0i#BIJbuNY_stNbk$uAdrQz@1Ro@W$BI!lx#0>v=ECuqKH`e(m!}*%c?;ZPgbR zX0@AT%WUuP{o}0$MPJ`boAXT9Rq%i|)_Fxh;6(FZZ*+oQ06 zThuhvD<`>zK-LJduUY)}V&sJrT;F42c5Z7k4HALqK^+})M(bF?a-+!=mSsKxa^5ZYOL0;VjKb zXz0D#OQuV<#$E{ee_mp9QL9z8Td9$WZK#_{m&CB&%x2Uy?}CtjOE+Beg!}Sx&$6!l zs8%dJ{lchOuTqh<^aWkb{s2`p#$rHRT zL2d~Vj;B3rT3&Hd)h3cY)KpDi$`2n!4G z8N-q4zgk3PR-9zR?PCOU@=D5xF`{t08cLMa1s!dAxu_Ed5cIUdEVfa=V>~+ZYtrJz zE}KZ2==%@g9WLYU-t#rgL*9zldxQjht!E_0j+tr89Yl}97V$S*=H;Ts;d0K#Y6H|O zajy7V9c9ee?kwS$E>+HzRdD{F=YlB#K2_XjXkIezebb11anB|E=Ck|d{{n}=xwb#? zT0$ywDA(0_AJkXDY3B>37CPayyFyln)Rwaw)%g7zUBIz6$%1!xuoR;g|Ia-vAUB+G zV#!r;|iKPG&Q9^6Ky z0D=a8zhaFijDRKwT&^D3-sW?VAfsZ?3Mb|3GdZk_k8-RkeKPhiyfFZHi@mp36WpF7 z^QJwl%^|PmcfI$g5^LS~n-Mc=78w+T>x5-!RI}x5Lt)0UXZPPpb(LDK?^)v+?!BIu zx+cWGkm!*%+_=s68`e9UGpIgHaVB>XEm|i%Nw7IOf`m)EEl5ge1RR67{#4XvLQY}h zP8vHIomp{SfkoQb-D;HLpk%`u{U9@DhN3)*1H<_Y+oe#vUdbRV z4{{2M$^Zs`pfIX3d!@qE3OCG!rJk9 zj&1nVyMRXz>sBT3^5a@B83jG<_O>^b6u5$pA+msMQo^J$V$|e$||L8^e6b5_T&XxN779&%%ks9$K|5zeScROz$*m$ds zmf+~u9#?6-b6dc?S#j@lMpT(`=ao6o_n@xyg)T_dZyyO>&AmrS6S*2sOJ64dffWZg zN{_Fpkgm^Me3|(~brnDHNurZf`@Kcm_mWVSt@k&M32DDXC=aqCS!juItMWKPvo~v2 z*fFX8Ci&g_T|1!x@zBN+y&sVI_yF^fs2*mW3s?HG=eg(nJ)bqpkc&JnEm*oLcQssa zZfosNALjc^vs%Wk>-`N2klN2YR}UGN+Afga{29Vy2SVp_GN8fg=F7Z=bedETXeOW) zGrH@0Lq@TR3>b(N7)e^1j{mEz2K*m@M0*2g+_}W|Gs~Lq@`P8cYDvDexpOFW>>T-O zO$>|g&!N-=T`p-4ztFCz^|frVV_$K@LXo*;@_cIptq7D9aIsJ5N=#@hOCMtbXbK#k znk@yO5X9893uI*>M2>X;#<^S<=MT^PE`1L)2RU6PZWV53_i&7*x!z7%`yirUbC1@1 z+0`2YPQx>bWoH);p^}6OCJ(~SKH%qz3rk)#@wrH=%MnoBX6NsjcQk7}-loe~jUi1HkBmOE} z(2xbE^ouNsu`c;@TEfn%{a}jk_4Ye?pF7p13pjZgrnh0=5~sCRwb1?36RxUqR?y9s zrRUc{+WII|I?$5sb~m*LB$dJx+~4)bx)#N*^60Myl*2hUlte2Zt08!GZH+#&Je$~z zmM4IEHDkXFuKI(3VydwBP^tP}*$AzH}Mb^GAdkSO4^& ztnJr-e%+ghs#QWEpZG_mhuvXx?h0F~da&P|3?aObP za{G79olu(O^KDdR$@w+X1j&y4DDQT-gxqtYyTcaWP~bzZ^DQ?LB2V>IR(WM-EcHhi z#yahi4V~>Uo4M}NZx~;0^M(F0F{nVGbZL5Ie3R&SaNXl#wY53jLZ>g&bDBMn)dgvz zM+C%*4p2%dN=4q&s6f6TFXF`=jfCUw^2?FQfRKEVB-SG@8+I__0zA|&P|MdQ|DFI zMw$jj_cfo#5a8IouBIe#vXJ`~Kz%&$E z>k4`W6NYX>+SF9U3r-2rB-Cy-F5r*Fam*1!QiQ@rdMWZ$aKu&%EK3gqG5%q zX;I-vAAf4M?;me?Kl^x0#_LE+?4jFblCYf5z8`LieeKbai?#+e!`<1p8cO%|qFoon zk2lBYUU*<9ljD^LsU#R5zV;ZS>#h~JNVqJ~#2RBB6eDA-2)+!kcp@j!8uTOr$Bid@*t^ zX)aZ0wo0=JF%ecUECy0nnInbbQ~Zw7y`1*Y99i-Mjc-873@B6PKDp8N%RJ`ud5Js- z5~w@Ce6;v`1VoTBANASX-MeU5*#Jl`p$DR7^=+=&#~=5DFvz9LTy+4ceI>)}8!b}b ziBPBIA(r&bRcd;fCL{*peE6KDEu8bxkAM`|Bn`WC*Z;GjJGbv_bZab z8#HPjKWt!t5?{IMK=ffFB6)Q zEEG3buLhv|RCl&Wo^Jpt>vDZVc@-UGnM%ELM9kHD$b}f=MLJg@6y^iUDZ7P61t>-F zN^l;j#$&7#qL-YLZ!X;BhduL~O$VtJMhP%{3Pbxn%U$KkVcz{u-tY2N;`m6phbn0> z{K?z4fx8-G`dzw)CG#)iG7My8LKfX3Cnxh5;S+)gz zJp?)EmX};t z&~#Q4C{PsZ_7#%Tn&GYGy)tl=>s5X1m zDroi8kpixXuO+EZwp!yg2PIReVZMPmqo_lPW<4hPbf9cGo;v1Vj8!3Knd#dXP5snW zf|+As<~*|QdzY|$hq&3U-12Wt|K#EegW6TTHNNtX4r9x7C~Ui};nu|{$TVxFeWdLU z_dZqp1Gq(nfkz(2Em7&NHJALUqR__wm}{z zHs&t5`o*iQi)*2T;RjUfaYXYm2(EFapYjR)+j^_3tZ}8?b0z>#ZTba9Px%txRdN90xe? zf@2GJmJOb3w?XY>t;k)1afqx*$g>u3U6BX?U6NRDOfFMkoW~(}`FY@>X@_u=5W@9=?SkgZ?j5(n%#1~&LZ&d4PUsGq~gU*7QtnL+&{gdGgPOAmKPC~T< zMX+5Z?Rw^afe3G0B+0>Ho6SqRK0~$NVCm7?JJUH;;>^r>60(A_d~OlzlnS|W>mhJo zc*<}`;|@XO1004GnioDwmxKLv&e?FRCwVx)&cMAXK0=+Kzy+gT<- zDYS`t2Hf*gptSPsHG)A&pUCiwW zk(?G;u)-wItIZ8E1mm|dfE;Mcs)yiK0|C_TYGoKMs6Pu@m2zsY64e#b-d~A<-8V@4 zw9Sb}8M^WHuP-@q@H`z4HrVgPFy>__?Nu9&6LfJ|DZDf|ovSyD{NiKt;yL?RuROWl zkIY#4Ojt#VT8A%7gf)5?e>$&Tq&|ggPsSBt=2aF_s=Vstd=z<9&De#T#A-HP#8Zn% zg|g&`XvW<4&){0U+cg>~AyQZs4C4;kPB6_k2W60~Nx{cs;Y9wtstWoAWmpaQcey~s zYoPJ*opYEk*pfZ+bQYgZjjN@1gA5E5YbX(pA)+SW#pJ8oSV-j;|yV|dKc2I1NImHz7bhbWO)=T<3=2BShF6y@?6ve#Ce7~={&?0g z!XKec#+P+f$UJ~lWQ$Q<2y(y!6sUQSeAzR=#&30r)Q{V)M{|Sn!GrjTK5>){Hq7O! zh^@wF!g+$(hj7J8t3+<-6d!hJ&P6@2hGfK*dCD#^EExgci$3YgRaubxT9K_&_rC^*IzNfhP9r*R;5$1)ULo>C7o23t_ zpUGpHLA%(KI1pUELnJ3@@sgbr*%i4i8wnC9Hw34IR)IN2PF$bF6pABIfU44?K<5<| z_>S8g9b_JNFSMwY8oITRyy_h(8w26lc;6Kny`1CKJq3Dj;v3WRDR5sq0Goe|&>4l! zXwuw3RN+|eN0omqB9Zof893Xp*;D1-ccs6QI2n;V)(9~N)vClal=5>*XpXPh+G1(- z00(9cM9hyTEhxOLCd|g_3dRrP*B0WSv4ZcaNzjG-r6YVFdBQ@?E1*)Y{#k+d!aQjr*p`l4wbx6}O*jJG zORoXd0Gmv?5!n27=+D$42P@S2Cex68a$;sePN5$>c5(|8tQWh)%wPVh+wI$A@RMG+ z`pdiOddR|u$P~c`BRI(N>KD#M(tOb@JFw$qNz$8f9g6ELw>ukOt`P^_E+k|?S{=M3Yx8~ zkBk0}Uyh&l-TV%#s&G=;S@G)d^SL45yEgamj8PgWSAW>2xg`o{<9%?H_Ur(eorX$p z-t1vz%l!wq0lIF=M@&h~wm?3E1!$H1m0duF^Q*&?zv(w z_HCv5o!0$;*F{h2%4+@#2}z}_a5W{jQeQ+36ROhm3E!BcWD3Bu0HRuTfIU_sVb2A4 zgbP&#dSCn}TPR4KT9|0{vI_G|6+R7oR1=g5nB%f|JJ6 zhwTHhJ_y-gqULt^?HmT5Wx#JGvCx`4MjA@bOR`_G{F9IRtpYCYXZbd&@uP^^S&x=| z_SLgO{c$q^#@2)lbPX2p+DTrM+#{Kt$DY#vlSf!J{r`KC;1AC_G`gpfItz2e3(8DO zDKwb_cPY56hZywr{3aBz*EtbP5iQ5pUpV>gB`OJ>%!OrP!@YH1gTpxI^}kxE64nhv zxbB_pIDT#Agv}jKJ)h=Ph8)wms@Fg=V8prQ8BaQZS1VOk@Nnr~XQ{%b*apxHG7aSV z?nQz9z~IgJQWSudYcte*i{xrERFMViEZDnPpPf$nE9BJc#@~?l`=nW!8l;_K{hFCX zsJIQbOXSf_@mt0Z9zZr9^RiP^VsJEOfn%~ckkPkr*R8lkPATgHWC&urgP)-w(m-b= zWPu-U&OHxGY@&04Eqbye2Qt-%qAgE9giHU}84A(VS!C=S)Mm;5^VkP6RJ+&e`9Tlt zo4VpAu=N0^X4 zl>Rk|QD&w&O&!~r4VTq%!MuQIfgof+l6ZlLLlY&NB^Z*dMC7VLe;o}LatF>J!)1YU z$}DhG7g9nqKLn#+v5h{XU3>;A;MvdwWHz%E-3fpeAld2(;RVHVoPj8OT6$!|%Rkp5 z^j{gQjX(OO-XcrG&EdCWc%C<{F7Dl^Q>$^~Xk`~xFlIT_VNE*3IrD`!i7AFLYI^Cq{t;5vQ)-wbr z?4q)6Z`azmh*l{TMM3Edfp=dM>2`q_@q5sNeE!xjKVz5UVwkwLV81cbA+?yV8Ws!kao{fi;)G4pf}yUm3$6b1k#wWjyMVv8NpWT zv2lwf8BzKb^yv-n0CbBOEX*=ph^65w0xh}7#{nT9k^x2AE+uhpQVuuJ=QZu$lZ%Pp zY9&$Mo8;tE`2Rf)*g`=yTtY})(}Gd>WN}$c`yu3b-+~!n($xMLXIwWEMO=Jne?*A5 z>z?j2rtpoLa<`5&6l7|9_dOK^NrgO%wV+Gz!#e;zl2<8SgeQeiVunZ`PUk4rrgBz7RqyXk^ zO`H9$2EYtR>C_uoFqm|bjZNbM@GZ43EWLW8;Ah{MH%p%UR(1a|5#?;@e3LyQtketQ zrHz4}55{ZV-dVoXd!zQ)+@ARJG?W&znmzjb*7JT}=YyJlSAoUE>>aSz{EwCp!l^w> z{*Ki@JAv2I(*Z4s&GAo9b~gP&`xo}91H3TxDlUY=~S zI)Tm_91!iP^ndryPJ36aN*dgEJGjIh+o}q02~&mh>3pj2zmqcbQ~?F}4+|B3vzAjZ;k&(IOfW1|)H}N**kdza8ksYE3I43qc#LU=+p>2d1>xaiO=)hTsaUzH`gAIdahg!YT%Rp$dZvC&v>{$3#@<(h?42!;&R9y! z`ueQ}jh@4Tw8XzTd9>FchZYQS81N>sD)$p2?^zy!v2hp88bW3^e5|37ja$jO2qRZ5 zg9CIEy2#V+`7|^N`&5vvRwUv3=sm!@SWF|efFk_VoH?e(2|I7OK(RvG2G8W95>uI5 zIrp)GBPm5rHA#V@Wx##-7ZTQOK3S<&MFc^2_2RlP!Uavb8&}YvrUEpv0EOudU&0sL zlkHF+zf+GKz(4wIeBqa9puJ-WN}KdQy3C`wi7>KkY9z!)3fB0ZlzVqnV2)m8HZ4V=U3>AU9?76vW|Z$zI~FLZ0RW*XE$d5B-QtC%Yt=0T=)5%7X6{!sv@U2l!RpC9wg^A3XLRQF= zh4t~|qN~zCMmO}cMWfKb07wH({5tmzjR>VVVmo9HyaFe;m@<6&Z(G-!ls65Aco3gx z4SD2>IKmix3qvX;>#GYkqCLR8Y8DsZ>IPDPew-HGkuq07dwg-Knii@g+ws8+P03hW zXHpDsx_p!FLn0Xb1qx}mhyHm_$|ZOyLT5Dd(W7 z#@Sv?c|;TB7VfB{$ZWjPbTVl!F!nL!5#|qj^sS$#jej*tcYpV8d-<=lMXF9C;#1&V53zBO>n<_-K4WG%%gT&tw zXQ?C`m?Lymvn{7s<}k0f?ouw&(j4uh6bf)AKUrm-#y{^y0s4+yd-~*pnmKKb;vxdj zjs^D;T!f1y8d1+n<0^(J)x0K_X zl#Yf57FYXmu}2&Um(MJxXraTini4NuXGsby=k_#?;H*8~Q?NNIIFJ#t8YKJ`l995CfJ-q)jFxBuCO>3TG%Qp_Flizx>vmk6_1*5H$>*rwJ)aaE}%8yd9rm!*4xb*w-T-_#?4I42OFjrK~RuF?h zgDa=;vNT?GC+(?$t^izsBr!;o4D1)YZDxjCX@v8 z&A`0#A_xusj1i)xw$MFCn9n*+AHo5XTjXIH7fh#+f0wxpix_F8SeS34O#oH#jmbn* z$yTyb+7<{8m?Wrm9&RI!mW#Xgp@iIkfNXLJJ~_@E=qrZP!jS44tlQjB1b9^pcz3oQ z?T&`ao%YZ^JEP=KS$H9rP^ zaSn~Rr;bsI!N#(z#F;Y0WThCf*(woBpsz5tOb9p){vS0c8TgTi-~$qjeZ!W`=0k z`_ci+&iQfICQsd6v1vKsZ;x)hc2UcolZOidum0UrRdUzi0-C7?J}%dHnO3B^ddES5 z)^pbx-*pL0bG?4qU-PC;LXd~(ZFlzU8AF4KnW16W2Knv$ajwWjs})V`?TM2O%Z~yh zGWXUHo>*<$!nFItMU5mczu}R(*H)rIieE>P8q~g4MtqKFz3KRPhJD0){YAce?K0DcDue<2oq`t9YD4=W5*39ix{JNqL5c zr{O2AQ_#DfTh*OM3+eO}UM==Pl9I4_tZsc7a9S=<1=EP}xV=oy5Lm3LFTg*`7w1RV z<_eRwgvduJz`4a_Ei}hmDK`n7t1X;7H%PmOOqvx8wVF?@10FUC0;PADUKy@eHz6-f9*IrxoNg` zE9HIz+d%z8xWGBjCuIB6_~Rd=Y?Xrq8D6-@x>){_7(f_H+6+t^>Kv$XKZ1)+S` z5Ri6#Ok8pVGG2dzVOPHMsYU;dL5IoNTUTKBY#LMLQfG~*4JzKz`Mra8*qTv70Pk7W zwNP<0Rmt(FG7E!kFKX|jH|?V#2XXneF$C}76mEVt~6+@Q-Z MP(Agz_y2qKf6`TAZ2$lO literal 0 HcmV?d00001 diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/feae1964-04ce-464b-848b-86f2245f3f63.jpeg b/Yi.Framework/Yi.Framework.ApiMicroservice/wwwroot/image/feae1964-04ce-464b-848b-86f2245f3f63.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..76a391b43c32b1450ffb8dc89faa860708a389b6 GIT binary patch literal 18821 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 literal 0 HcmV?d00001 diff --git a/Yi.Framework/Yi.Framework.Core/TreeMenuBuild.cs b/Yi.Framework/Yi.Framework.Core/TreeMenuBuild.cs index cedaff6b..14b0e6f8 100644 --- a/Yi.Framework/Yi.Framework.Core/TreeMenuBuild.cs +++ b/Yi.Framework/Yi.Framework.Core/TreeMenuBuild.cs @@ -93,7 +93,7 @@ namespace Yi.Framework.Core { for (int i = menu_data.children.Count() - 1; i >= 0; i--) { - menu_data.children = menu_data.children.AsEnumerable().OrderBy(u => u.sort).ToList(); + menu_data.children = menu_data.children.AsEnumerable().OrderByDescending(u => u.sort).ToList(); if (menu_data.children != null || menu_data.children.Count() != 0) { diff --git a/Yi.Framework/Yi.Framework.WebCore/Init/RedisInit.cs b/Yi.Framework/Yi.Framework.WebCore/Init/RedisInit.cs index da18bf72..d8579352 100644 --- a/Yi.Framework/Yi.Framework.WebCore/Init/RedisInit.cs +++ b/Yi.Framework/Yi.Framework.WebCore/Init/RedisInit.cs @@ -16,7 +16,7 @@ namespace Yi.Framework.WebCore.Init if (_cacheClientDB.Get(RedisConst.key)==null) { - Newtonsoft.Json.JsonConvert.SerializeObject(); + //Newtonsoft.Json.JsonConvert.SerializeObject(); _cacheClientDB.Add(RedisConst.key, new SettingDto() { ImageList_key = { "榛樿鍥剧墖", "榛樿鍥剧墖" } , diff --git a/Yi.Vue/src/components/ccAvatar.vue b/Yi.Vue/src/components/ccAvatar.vue new file mode 100644 index 00000000..a8709e15 --- /dev/null +++ b/Yi.Vue/src/components/ccAvatar.vue @@ -0,0 +1,28 @@ + + + diff --git a/Yi.Vue/src/layouts/default/ListGroup.vue b/Yi.Vue/src/layouts/default/ListGroup.vue index 3fbcb133..2f4811ef 100644 --- a/Yi.Vue/src/layouts/default/ListGroup.vue +++ b/Yi.Vue/src/layouts/default/ListGroup.vue @@ -65,8 +65,10 @@ }, title () { const matches = this.item.menu_name.match(/\b(\w)/g) - +if(matches!=null) +{ return matches.join('') +} }, }, diff --git a/Yi.Vue/src/layouts/default/ListItem.vue b/Yi.Vue/src/layouts/default/ListItem.vue index 16056715..47b1ee83 100644 --- a/Yi.Vue/src/layouts/default/ListItem.vue +++ b/Yi.Vue/src/layouts/default/ListItem.vue @@ -48,8 +48,10 @@ computed: { title () { const matches = this.item.menu_name.match(/\b(\w)/g) - +if(matches!=null) +{ return matches.join('') +} }, }, } diff --git a/Yi.Vue/src/layouts/default/widgets/Account.vue b/Yi.Vue/src/layouts/default/widgets/Account.vue index c51c2d2d..a6218329 100644 --- a/Yi.Vue/src/layouts/default/widgets/Account.vue +++ b/Yi.Vue/src/layouts/default/widgets/Account.vue @@ -8,50 +8,26 @@ transition="scale-transition" > - + + + - - - - + @@ -60,16 +36,15 @@ diff --git a/Yi.Vue/src/views/userInfo.vue b/Yi.Vue/src/views/userInfo.vue index ff20c18f..cd11f4d1 100644 --- a/Yi.Vue/src/views/userInfo.vue +++ b/Yi.Vue/src/views/userInfo.vue @@ -3,11 +3,7 @@ - +
@@ -321,8 +317,12 @@ export default { this.userInfo = resp.data; this.userInfo.password = ""; this.editInfo = Object.assign({}, this.userInfo); + this.$store.commit('SET_USER',this.userInfo) }); + + + menuApi.GetTopMenusByHttpUser().then((resp) => { this.menuInfo = resp.data; }); @@ -333,9 +333,13 @@ choiceImg() { uploadImage() { const file = this.$refs.imgFile.files[0]; let formData = new FormData(); - formData.append("img", file); + formData.append("file", file); fileApi.EditIcon(formData).then(resp=>{ this.init(); + this.$dialog.notify.success(resp.msg, { + position: "top-right", + timeout: 5000, + }); }) },