From cc597c6544bf089b186bde0c77618d769f491549 Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Sat, 22 Jan 2022 14:33:59 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=AE=8C=E5=96=84]=E6=96=87=E4=BB=B6=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- angular.json | 7 +- package-lock.json | 52 +++ package.json | 4 +- proxy.config.json | 13 + src/app/app-routing.module.ts | 9 +- src/app/app.module.ts | 14 +- src/app/auth.guard.ts | 37 ++ src/app/http-interceptors/base-interceptor.ts | 87 +++++ src/app/http-interceptors/index.ts | 9 + src/app/pages/login/login.component.html | 35 +- src/app/pages/login/login.component.scss | 3 +- src/app/pages/login/login.component.ts | 118 ++++++- src/app/pages/pages.module.ts | 44 +-- src/app/service/cache-token.service.ts | 44 +++ src/app/service/tree.service.ts | 38 +++ .../addcamera/addcamera.component.html | 25 ++ .../addcamera/addcamera.component.scss | 0 .../addcamera/addcamera.component.ts | 23 ++ .../addhost/addhost.component.html | 11 + .../addhost/addhost.component.scss | 3 + .../addhost/addhost.component.ts | 21 ++ .../analysis-of-the-host.component.html | 103 ++++++ .../analysis-of-the-host.component.scss | 93 ++++++ .../analysis-of-the-host.component.ts | 280 ++++++++++++++++ .../editcamera/editcamera.component.html | 25 ++ .../editcamera/editcamera.component.scss | 0 .../editcamera/editcamera.component.ts | 25 ++ .../edithost/edithost.component.html | 11 + .../edithost/edithost.component.scss | 0 .../edithost/edithost.component.ts | 23 ++ .../navigation/navigation.component.html | 37 ++ .../navigation/navigation.component.scss | 79 +++++ .../navigation/navigation.component.ts | 18 + .../organization/addor/addor.component.html | 23 ++ .../organization/addor/addor.component.scss | 0 .../organization/addor/addor.component.ts | 26 ++ .../organization/editor/editor.component.html | 23 ++ .../organization/editor/editor.component.scss | 0 .../organization/editor/editor.component.ts | 30 ++ .../organization/organization.component.html | 52 +++ .../organization/organization.component.scss | 78 +++++ .../organization/organization.component.ts | 315 ++++++++++++++++++ .../system-management-routing.module.ts | 16 + .../system-management.module.ts | 55 +++ src/assets/images/bgImg.png | Bin 0 -> 1031478 bytes src/assets/images/icon/admin.png | Bin 0 -> 346 bytes src/assets/images/icon/host.png | Bin 0 -> 359 bytes src/assets/images/icon/organization.png | Bin 0 -> 329 bytes src/assets/images/icon/orgrey.png | Bin 0 -> 387 bytes src/assets/images/icon/power.png | Bin 0 -> 484 bytes src/assets/images/icon/push.png | Bin 0 -> 441 bytes src/assets/images/icon/role.png | Bin 0 -> 438 bytes src/assets/images/icon/user.png | Bin 0 -> 404 bytes src/assets/images/logo2.png | Bin 0 -> 10772 bytes src/assets/images/userbig.png | Bin 0 -> 8500 bytes tsconfig.json | 21 +- 56 files changed, 1848 insertions(+), 82 deletions(-) create mode 100644 proxy.config.json create mode 100644 src/app/auth.guard.ts create mode 100644 src/app/http-interceptors/base-interceptor.ts create mode 100644 src/app/http-interceptors/index.ts create mode 100644 src/app/service/cache-token.service.ts create mode 100644 src/app/service/tree.service.ts create mode 100644 src/app/system-management/analysis-of-the-host/addcamera/addcamera.component.html create mode 100644 src/app/system-management/analysis-of-the-host/addcamera/addcamera.component.scss create mode 100644 src/app/system-management/analysis-of-the-host/addcamera/addcamera.component.ts create mode 100644 src/app/system-management/analysis-of-the-host/addhost/addhost.component.html create mode 100644 src/app/system-management/analysis-of-the-host/addhost/addhost.component.scss create mode 100644 src/app/system-management/analysis-of-the-host/addhost/addhost.component.ts create mode 100644 src/app/system-management/analysis-of-the-host/analysis-of-the-host.component.html create mode 100644 src/app/system-management/analysis-of-the-host/analysis-of-the-host.component.scss create mode 100644 src/app/system-management/analysis-of-the-host/analysis-of-the-host.component.ts create mode 100644 src/app/system-management/analysis-of-the-host/editcamera/editcamera.component.html create mode 100644 src/app/system-management/analysis-of-the-host/editcamera/editcamera.component.scss create mode 100644 src/app/system-management/analysis-of-the-host/editcamera/editcamera.component.ts create mode 100644 src/app/system-management/analysis-of-the-host/edithost/edithost.component.html create mode 100644 src/app/system-management/analysis-of-the-host/edithost/edithost.component.scss create mode 100644 src/app/system-management/analysis-of-the-host/edithost/edithost.component.ts create mode 100644 src/app/system-management/navigation/navigation.component.html create mode 100644 src/app/system-management/navigation/navigation.component.scss create mode 100644 src/app/system-management/navigation/navigation.component.ts create mode 100644 src/app/system-management/organization/addor/addor.component.html create mode 100644 src/app/system-management/organization/addor/addor.component.scss create mode 100644 src/app/system-management/organization/addor/addor.component.ts create mode 100644 src/app/system-management/organization/editor/editor.component.html create mode 100644 src/app/system-management/organization/editor/editor.component.scss create mode 100644 src/app/system-management/organization/editor/editor.component.ts create mode 100644 src/app/system-management/organization/organization.component.html create mode 100644 src/app/system-management/organization/organization.component.scss create mode 100644 src/app/system-management/organization/organization.component.ts create mode 100644 src/app/system-management/system-management-routing.module.ts create mode 100644 src/app/system-management/system-management.module.ts create mode 100644 src/assets/images/bgImg.png create mode 100644 src/assets/images/icon/admin.png create mode 100644 src/assets/images/icon/host.png create mode 100644 src/assets/images/icon/organization.png create mode 100644 src/assets/images/icon/orgrey.png create mode 100644 src/assets/images/icon/power.png create mode 100644 src/assets/images/icon/push.png create mode 100644 src/assets/images/icon/role.png create mode 100644 src/assets/images/icon/user.png create mode 100644 src/assets/images/logo2.png create mode 100644 src/assets/images/userbig.png diff --git a/angular.json b/angular.json index d8c500d..778e1bd 100644 --- a/angular.json +++ b/angular.json @@ -28,7 +28,12 @@ "inlineStyleLanguage": "scss", "assets": [ "src/favicon.ico", - "src/assets" + "src/assets", + { + "glob": "**/*", + "input": "./node_modules/@ant-design/icons-angular/src/inline-svg/", + "output": "/assets/" + } ], "styles": [ "src/styles.scss", diff --git a/package-lock.json b/package-lock.json index 151ef1e..f23b09d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,9 @@ "@angular/platform-browser": "~13.1.0", "@angular/platform-browser-dynamic": "~13.1.0", "@angular/router": "~13.1.0", + "js-base64": "^3.7.2", "ng-zorro-antd": "^13.0.1", + "ngx-cookie-service": "^13.1.2", "rxjs": "~7.4.0", "tslib": "^2.3.0", "zone.js": "~0.11.4" @@ -2965,11 +2967,16 @@ "resolved": "https://registry.npmmirror.com/ajv/download/ajv-8.8.2.tgz", "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2", "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/ajv-formats": { @@ -6493,6 +6500,11 @@ "node": ">=10" } }, + "node_modules/js-base64": { + "version": "3.7.2", + "resolved": "https://registry.npmmirror.com/js-base64/download/js-base64-3.7.2.tgz", + "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.nlark.com/js-tokens/download/js-tokens-4.0.0.tgz", @@ -7485,6 +7497,18 @@ "@angular/router": "^13.0.1" } }, + "node_modules/ngx-cookie-service": { + "version": "13.1.2", + "resolved": "https://registry.npmmirror.com/ngx-cookie-service/download/ngx-cookie-service-13.1.2.tgz", + "integrity": "sha512-CInzm1xjI51QA1gCJEnqfDFLnN7w/SzqM5+kGdpI+UiCeHKgYEXpKG1s7lFz4jbLDrL/jHKtrf92t7RGsm66Cg==", + "dependencies": { + "tslib": "^2.0.0" + }, + "peerDependencies": { + "@angular/common": "^13.0.0", + "@angular/core": "^13.0.0" + } + }, "node_modules/nice-napi": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/nice-napi/download/nice-napi-1.0.2.tgz", @@ -9346,11 +9370,16 @@ "resolved": "https://registry.npmmirror.com/ajv/download/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/schema-utils/node_modules/ajv-keywords": { @@ -10074,11 +10103,16 @@ "resolved": "https://registry.npmmirror.com/ajv/download/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { @@ -10671,11 +10705,16 @@ "resolved": "https://registry.npmmirror.com/ajv/download/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/webpack/node_modules/ajv-keywords": { @@ -15805,6 +15844,11 @@ } } }, + "js-base64": { + "version": "3.7.2", + "resolved": "https://registry.npmmirror.com/js-base64/download/js-base64-3.7.2.tgz", + "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.nlark.com/js-tokens/download/js-tokens-4.0.0.tgz", @@ -16558,6 +16602,14 @@ "tslib": "^2.3.0" } }, + "ngx-cookie-service": { + "version": "13.1.2", + "resolved": "https://registry.npmmirror.com/ngx-cookie-service/download/ngx-cookie-service-13.1.2.tgz", + "integrity": "sha512-CInzm1xjI51QA1gCJEnqfDFLnN7w/SzqM5+kGdpI+UiCeHKgYEXpKG1s7lFz4jbLDrL/jHKtrf92t7RGsm66Cg==", + "requires": { + "tslib": "^2.0.0" + } + }, "nice-napi": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/nice-napi/download/nice-napi-1.0.2.tgz", diff --git a/package.json b/package.json index 38316ab..f67166b 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "scripts": { "ng": "ng", - "start": "ng serve", + "start": "ng serve --proxy-config proxy.config.json --open --port 4000 ", "build": "ng build", "watch": "ng build --watch --configuration development", "test": "ng test" @@ -18,7 +18,9 @@ "@angular/platform-browser": "~13.1.0", "@angular/platform-browser-dynamic": "~13.1.0", "@angular/router": "~13.1.0", + "js-base64": "^3.7.2", "ng-zorro-antd": "^13.0.1", + "ngx-cookie-service": "^13.1.2", "rxjs": "~7.4.0", "tslib": "^2.3.0", "zone.js": "~0.11.4" diff --git a/proxy.config.json b/proxy.config.json new file mode 100644 index 0000000..b147575 --- /dev/null +++ b/proxy.config.json @@ -0,0 +1,13 @@ +{ + "/api": { + "target": "http://39.106.78.171:8906", + "secure": false, + "changeOrigin": true + }, + "/signalr": { + "target": "http://39.106.78.171:8906", + "secure": false, + "ws": true, + "logLevel": "debug" + } +} diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index 0d6d373..c46a6d8 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -1,17 +1,24 @@ import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; +import { AuthGuard } from './auth.guard'; import { HomeComponent } from './pages/home/home.component'; import { LoginComponent } from './pages/login/login.component'; +import { NavigationComponent } from './system-management/navigation/navigation.component'; const routes: Routes = [ {path:'', redirectTo:'/login', pathMatch:'full'}, {path:'login',component: LoginComponent,}, { - path:'home',component: HomeComponent, + path:'',component: HomeComponent, children:[ {path:'home',loadChildren:() => import('./pages/pages.module').then(m => m.PagesModule)}, ] }, + { + path: '', component: NavigationComponent, canActivate: [AuthGuard], children: [ + { path: 'system', loadChildren: () => import('./system-management/system-management.module').then(m => m.SystemManagementModule) } + ] + }//系统管理 ]; @NgModule({ diff --git a/src/app/app.module.ts b/src/app/app.module.ts index a16a5d5..7599eb2 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -1,14 +1,17 @@ -import { NgModule } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; +import { NgModule } from '@angular/core'; import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { PagesModule } from './pages/pages.module'; import { FormsModule } from '@angular/forms'; import { HttpClientModule } from '@angular/common/http'; +import { httpInterceptorProviders } from './http-interceptors/index' +import { CacheTokenService } from './service/cache-token.service' +import { CookieService } from 'ngx-cookie-service';//cookie插件 import { NzNotificationModule } from 'ng-zorro-antd/notification'; import { NzMessageModule } from 'ng-zorro-antd/message'; - -import { AppComponent } from './app.component'; - +import { TreeService } from './service/tree.service'; @NgModule({ declarations: [ AppComponent @@ -17,12 +20,13 @@ import { AppComponent } from './app.component'; BrowserModule, AppRoutingModule, BrowserAnimationsModule, + PagesModule, FormsModule, HttpClientModule, NzNotificationModule, NzMessageModule ], - providers: [], + providers: [httpInterceptorProviders, CacheTokenService, TreeService, CookieService], bootstrap: [AppComponent] }) export class AppModule { } diff --git a/src/app/auth.guard.ts b/src/app/auth.guard.ts new file mode 100644 index 0000000..af4d216 --- /dev/null +++ b/src/app/auth.guard.ts @@ -0,0 +1,37 @@ +import { Component, OnInit, Inject } from '@angular/core'; +import { Injectable } from '@angular/core'; +import { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from '@angular/router'; +import { CookieService } from 'ngx-cookie-service'; + +@Injectable({ + providedIn: 'root' +}) +export class AuthGuard implements CanActivate { + + constructor(private router: Router,private cookieService: CookieService) { + + } + + // 路由守卫 + canActivate(next: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { + // console.log('路由守卫',next.data) + // if(next.data.permission == 'xxxx'){ + // return true; + // } + return this.checkLogin(); + } + + checkLogin(): boolean { + console.log('xxxxxxxxxxxx') + // 判断本地有没有token + const token = this.cookieService.get("token") || sessionStorage.getItem('token'); + + // 如果有token,允许访问 + if (token) { return true; } + + //如果没有token,跳转登录页 + this.router.navigate(['/login']); + + return false; + } +} diff --git a/src/app/http-interceptors/base-interceptor.ts b/src/app/http-interceptors/base-interceptor.ts new file mode 100644 index 0000000..7229f32 --- /dev/null +++ b/src/app/http-interceptors/base-interceptor.ts @@ -0,0 +1,87 @@ +import { Injectable } from '@angular/core'; +import { + HttpClient, HttpInterceptor, HttpHandler, HttpRequest, + HttpErrorResponse +} from '@angular/common/http'; +import { throwError } from 'rxjs' +import { catchError } from 'rxjs/operators'; +import { Router } from '@angular/router' +import { CacheTokenService } from '../service/cache-token.service' +import { CookieService } from 'ngx-cookie-service'; +import { NzMessageService } from 'ng-zorro-antd/message'; +//baseurl +// const baseurl = 'http://39.106.78.171:8008'; + +@Injectable() +export class BaseInterceptor implements HttpInterceptor { + + constructor(private router: Router, public token: CacheTokenService, private cookieService: CookieService, private message: NzMessageService) { } + + intercept(req: any, next: HttpHandler) { + + let params = req.params; + for (const key of req.params.keys()) { + if (params.get(key) === undefined || params.get(key) === null) { + params = params.delete(key, undefined); + } + } + req = req.clone({ params }); + // debugger + // console.log('xxxxxx',req) + let newReq = req.clone({ + url: req.hadBaseurl ? `${req.url}` : `${req.url}`, + }); + if (!req.cancelToken) { + /*获取token*/ + let token = this.cookieService.get("token") + /*此处设置额外请求头,token令牌*/ + newReq.headers = + newReq.headers.set('Authorization', `Bearer ${token}`) + } + + // 携带请求头发送下一次请求 + return next.handle(newReq) + .pipe( + //箭头函数,注意this指向 + catchError((err) => this.handleError(err)) + ) + } + + // 捕获错误 + //401 token过期 403没权限!!! 400参数错误 404未找到 614刷新令牌过期!!! + + private handleError(error: HttpErrorResponse) { + console.log('http错误', error) + // 用户认证失败返回登录页 + if (error.status === 401 || error.status === 614) { + this.token.delete() + sessionStorage.clear() + // window.localStorage.clear() + localStorage.removeItem("isautologin") + this.cookieService.set("token", '', new Date(new Date().getTime() + 1), '/') + this.cookieService.set("refreshToken", '', new Date(new Date().getTime() + 1), '/') + this.message.create('error', `用户认证信息过期,请重新登录!`); + this.router.navigate(['/login']) + } + if (error.status === 403) { + this.message.create('error', `对不起,您无此权限!`); + } + if (error.status === 400) { + this.message.create('error', `请核对您的输入信息或格式是否正确!`); + } + + if (error.error instanceof ErrorEvent) { + // 发生客户端或网络错误。相应处理。 + console.error('An error occurred:', error.error.message); + } else { + // 服务端返回http状态码 + // 服务端返回错误信息 + console.error( + `Backend returned code ${error.status}, ` + + `body was: ${error.error}`); + } + // 返回带有面向用户的错误信息 + return throwError( + error); + }; +} diff --git a/src/app/http-interceptors/index.ts b/src/app/http-interceptors/index.ts new file mode 100644 index 0000000..3e35136 --- /dev/null +++ b/src/app/http-interceptors/index.ts @@ -0,0 +1,9 @@ +import { HTTP_INTERCEPTORS } from '@angular/common/http'; + +import { BaseInterceptor } from './base-interceptor'; + +/** Http interceptor providers in outside-in order */ +export const httpInterceptorProviders = [ + { provide: HTTP_INTERCEPTORS, useClass: BaseInterceptor, multi: true }, + +]; \ No newline at end of file diff --git a/src/app/pages/login/login.component.html b/src/app/pages/login/login.component.html index e400637..5c926e4 100644 --- a/src/app/pages/login/login.component.html +++ b/src/app/pages/login/login.component.html @@ -1,33 +1,46 @@
中化石油销售有限公司 北京安信科创软件有限公司 版权所有
+北京安信科创软件有限公司 版权所有
C*wXT#=4KlRMY$rK_$2m6xS|I3BY*c>a{h}J;r18ra3eM849TR@N>b@5Bk3+vj zXSp?wKr`|k<2RIQrFyz}W26d$-`f5ri`{sZzu@HAD_<6k%~(#!#(ZX92-2&qPE~%q z?2z8U_OWg(XH5y+j=vbU%ej>`AGXyQHh5Wgji~eG$@U|O8F|E5a4~pPc~V)fAFCuk zk@P<2%#EgV-Bi@9S2N|_;_UA7sQ&u|ST47~V2%fl{iG{{+NQAl1bdc!+5;g;3NQAJ z=v+!Z@WjXC;vBnKYmMFRmaQshpCew<-!^T!YdUf;LdK5BlEE@&{WWV$|5pe4*Jl5p zhJ@_%^Tbg2vyX> _G|QTDC-Y@xFb+7bw(UdF6DYLU@sH@idD6DVRv1R%w3`FS+%zVat2`&zoO& zVx%|X3E#z`ZbUom+aJ {4u|=0{d%D)Foj;5QRV2f@oe-k+Y=<0|%PzYcrWA`VZZ64Qs1f2EMP?9KR*5?0 z_y5`k{)^?UklcN_K5ug>+8TJQjvU33466o5P3V%q8vu#^T7>2FM@q!nGQrZJrw_bo z?s{~{o%uD#;y&yU&qfqhwkW;lYLL7sTuu43Q5fOvwM;75BxH-%umQ`F8f{EuCL!^_ z9(e#Tm50g>+;KDEbUrC2e!C7e%>xcouK(W<`u8Qk{2oaSs2YUTs6O=*bO3cy!8gSP zj5MkMdIa=M_(~*S#vx@TTrU7S-4Pmku5rOlvN+l+EpTe!nzS6BvtnP-*p_gd$I}Q_ z6Lp+De^nGM1&@iks-rrouaxZMC8qhgKnlbCbN-w3Co0^(iebyOIuO7JV_fa#u%<+`ZY(+Yh)IL2 zXI9vOhrn?zi44>WgT#^T&?&TH8ha%`^{MTQo!^9Dkl|^po^B^0!xb3$q5u2f7RLU% z)Tuo6+W7q1UZbjy$oPvW>+cj=H)8SSAdQeM+@AQacyE%4pw5U1Y=1_~;Dt4@SbzJ@qmE?w*HZ{V=(Z~p z1HY+zG~^}n2KMSQOcvX>l+%eQLW0G#90lOyi@tAY5e@{W5uE&sgblUNWR&1uKZ&@9 zY{;n$2J0a=&PyUL-9s;0m3x!nl@tCWZzZq;Kb23WmRCNAYs8b$Ka01psJM*KL@|Dt z`_p7BA^i>G`k*1|#o85j fw} ztAXJUqJFU<5{(dSas(Sn(DtNXmVOl*jM_%|{ IrjBvrOL>k7lTDzzi*bI0ExntT3rYPNrWhO-{k7b$2Iq4ysK*QU2if?V{_@}J0v z^EA?EcjOf^Xo2BX@ZeBpK+?+w8@7UuQhk+cmsNPwIrv*pSH zVkS7vfwrW8Dn#={NbJ#L{LosxRR(%lvO_a9qYqe9efGRBy?tTtks_Mw4l4EDfpB+6 zP^UR6&{;p0#bdS}EGt5I$cNP>y+GIy35|g>bnx% b5{&E+hV`p|N|UD}Tt=XJ1OsbE#2T(mWxoj*Rm=_gT2X?ar?p zXkJ=W+*ESh34!8oJE(q^+V^O_(xIVjr~YZ?CJyDZrHpDf47rvJ5UdpwFDbQ~DP2>h z3Rz)YwNz=&d7vaauIzhhzi5hk7oq>t)|LIcxQrUEq9O7JWKuH3yEh^{A7hu%Y^% zWcmLh)PFSx<%hROw&SwTkrFaktWf`xz&WwZ+su8A(A5uAk#NMunkNx$Wx+Q4)Q}Vv z=6S3`^PHmwd3t?0?&+1(tS673{#uR)=Dr)e6Gb?#tEUU -d?{Uf`gP?qdxjcq+xxuH1Yd@>yr9t_Kgvm^!2t2^7`l^GHVvCE|(z7 z=ffQClK`fox{I}bh0uDLsvpZ)JK_A _u-rVOrRNf=~~xs918=s}`idL@5hatUQvR9pDX1J$aQ&U9dZ8%0_@ zE}SH$R*ifjf@P4P&ig70b*&hW(l#ZtZcUb;r#-8m_e3Fn6O|uGtvPGX>)@^!>u shR)V_zQ`B|l-jSQGOI8B z-|!tG6%QQ6xbG3-2)NpX5m65*P{d|(eS74mj#f_C>gReO;hrXG8@YscT63tjVaFX_ z^LNq*IZ5m*gVbZTdoZ4<*Y0aW^V!hE<+T~m)z62UCn(JLxVwZBxSP66lpHL6enYu$ zHl+aDNk@2T3@@&nufuq0LXR Z3_O`Qpra;AlRP3VHo@6L&}%4q-#ULtp4Zs6H9H zSAP36^+$KkM(}b)V#DCZsZ8!u!mijIZFk748F+Q<%y16z*DOy*f(h2`U1ug5yj)%I zB?=rpe2n4ng=GYS+?b;TUA)qX{Il^fG%s!&wrPq;vuD=lL72Ua=8#ECDlLMj5hW4* zI9XT2>+rHdsd^j{*o(1l7md)I(u|wl?Ed?0{iEd6@<}z7bm(y;2etLF$IZOUH96sh z&aR1eX+#~#xELokx>8cds;<^OGX8Q1+ggvY3mu+8^e)vTj90#1KtP>Z{Wk52cy+;P z`km+9_WVPx H92UjqpOVGORE(Sl{Vo1)u9wF
C6CU4^d?Z2#RM{-TI?4351pdT4w=<6wxB3Wv*vjnGh8X;UEh_0DO(V^pxYKg zeD >|+Bqvo2Gbg^vzR-evBg+?bHYma@TCkaTa|he5h#NFsK9w$(I L2EMH{Hj9aec>w1*vY>Vg-AWPrms-*`|Mb$t+s3f!HCl z6+n}Z_~MEh_lDB-pRvJXf1IqjtQ^%&0Se1Fiv5jjVIE*K3Jg`h{F$K$%`Bx=H=K{N za6p@Ft&mN=19ePbD$6K`mRGZNAUezlJhc%Cs4hQP5|h8oV5dkv@m}%|?*;AF!l6RB z5dE3ACVIxMBg-NM-BI3)dB)a=n|Hl#h)g~oL#momV^ZSs1tzX#Y}WU#^nf y&J|IoAHdR}3klUuZaZX16hTfs#YcBI71VK5NulL>?!{X600X z13x%o`tL@1C8gU?)_n_qM;bFdV =5442l} z$9H+It-Lb=TC&inTJdAS%pk&Y-_q`!b6J4b7| e`F zsimHI6jSbqM_a2%tg3A_3WVaXG<8Wy4=VE_W=Y^I5C(P6GB%|iH07ae7wO)TN@mfN zj&8p-1#qE^a_61E-5Y1luT#fu6t;(}-OG-E7q3s_v+3oMx0NH4&ZC`E {OF{rB8D`^2{&gTE8~9=NAV zmjG%e5G6}BAY_E!ukG@xR~==Z0$3v3NUy#cuK5`Es&kSXE4*-Awd)VOGWFf_*Vy(> z?jd5@5F7}VVu6!dx Bn(Ep9*frg$`(;oc9Vu)Dy5drkC9C=iqz_^n zRJ#l#_*jNUYBvW{UMUhfxI>$VQQ7tcgHjJzIw!Ar)b$B9Ya!k;! %-gV>rXwlnjY*1anTjM)^;lm|V*S)nj`46qjK}1E y=Z-OesG1Q9saNR5Bn)R{X~vUZ6+{UAFh?tJ`&5 z%9TNkq5}y6U8o=BBCrMbSoSUaFIe-+01|P|tz^f3YLU(=1EI3)1O|%cY(XUp&RT05TTdh%h6M^|*bBO8sRr8n8?Ge{MC!Dgash+g{&JuzZ4DOwCpc!F#)kzn;A zcOgDjL7Zi)+4n}-!8ytofbVu>8$-b4l4tyv89MaC+)^3ktc218$roX_D3E<}IanA% zB97g2AacD-v;XV#R(X*(q?~x^Ufw7^)nlL$@Oi#eMe0R}4g~QaYb$<=i?B!r=hv|# z1RQmLUun-Q#fIh3fskp0it&R1J#Mg6L5^w#_x%3Yl9MkM59AbXzOTzs1b92dVomX* zKj)IjmPJK6oRb7qQoMt<(S(Y?mbc{b`gGX1RGgN%D~0TsHT=jvrglo)UB_hjPt4ye z_*YHBkxvR+2Y&6XgscbtiZh2yR*N}fYr{$4?dbjA$0iX)N4r>z6t1D;1~szuRU-FL ziQz?C!QGmO2hgavY=6dk4IO^M9QmQazIXf8u>*8O5*AilH$^XAyS(`CDOhzkI)|WH z$vUbiw?d}M`>nXzWS-3a+q0KQY8bp>{1HXdw{Vrz!sqUd#$9m+EST>Da@KirqML5f z<$0!vLWWPMPi)a@^S8J{{bGM1y4FWKS!bypj$%=2He)-JMSP(j^ZiT56Ca-JfY!Hr zg}1UZI0?Wa3Wde|%tE bHK7*-XE P2fol^XQk{NADvU)~rLBld7i7h{(5TImZaMTaK1nm;B2`#j5 z^qjA&JA_D=uSexrWr%)vZufT3LPd&-MO@V!Ws~X}#^mXUi=8@1wx-3|L*C&J4H*jY zP^0ZBVAIGAJF`P#yR9Q_cx&ZVpq<_p7q0H+1ga7MwUtogJ#0tqWcTU|byXWCG%4lU zy%syYza*Y9Ql9%^v6V#aHH#!_D24*tfL8B>D(3REd^%_6Kkj~I4DV%eIQZ)S)bvKU z&?j>&`8rnekZ?3Trd~x`rH$)kGw4~z|DwZ*r6Z~F;GHQc;x1sQbl>!klzQze6Uf(< z7xL}t;d^baghG0;Ln$G7IrCPD&YCN$&~Z8 )PvCi%9ogxI-*dczWwe2u|wH;5jcee)FLY-B`EUJLJ)jf&i*cN-@woHR!!W zpW{#x+8(NGJ;$AB&pR-00tOCoDD9C78W!3K+|%Hqv-=bHOGRCwF{6m%sHHOUx5VG* zK1Vg{po(}?)uk1y>EwGcS|9aJ+ahnsmwjZ)tMT>TY482Dm0D9i!33gX*yNju+IWYw zr`-mW6|#FTW3MNL{uhvuuDwi#C&rZ>uvx2WBBblnZSqF_{G*0s2o<+uBho4{noCD# z<;80BAE0H#1saL|ZG?Zn{ C13D43nG~sy&iKAiY&0C*5;eR0CM8#Y3ZM}j zq*p{mz}cu-A02wpOml@Jb0uuF7SB#dGJIdOk{|h(a->tC*9tU3elM!?o* !u?LjFv`;2xESl2K2{{%MW_ LwSo zQ=r>Xy^y{q;T^cQ!HNn5N7JuVPQ&&NQ&`(cCKjrM?xy-MGqjTnVw59$7jvqgcKirL zL8odWw|mtsDufHG|K!qKI!}#GLH+kioOe)hWnmKAs|w%*=JSEG{h+avrxw;HhyO{O zkRxKzx1s~SUQ$<6?_1WpC+v1xaj$pLjaM83HvahGGzeehrpUUFt%X#|yQMfB1=34b zQ>QR(e6Kk7SR&zWLZpg0+iYqjnc#hxoPQD?ef`!%g=O_s0pJ%tzl0%`Dr-V~+0XYb zFF1CAs)u#2EG^iA@_wnZyZYpvPhO8AGP}0=hdh$EX4i?q>)(5`n52G4?^78V-f1ES ztwT> )^?zB;fW&LDMi{o_`+sBk^9 zj@i1Hb0zeZxA_#Dj-Sj>6>3f7D5Dg }%Tv|MugO`2^piH6d!qrvzoULhoo@ZLn^zv9j-Nfbe8vDyU8OK`G1yK6I z^`Kf;l-^{%1<$MbW7+O@b9JK0DQ%|i<}+b+Wo_1z>f|mU>$gS;{j)YrCB+{~Uw$ z@30R0y~15`z;`UC26|)IwT{gY9L?QPy|i;=h?ZCVdL6gxN-z~X4@r}ifeIF0N?(q% zwENJ=5@`PIs3U@JIlEuRMu1jauSGX3#sngAB2|L31z)N|3hRQw&(;*3qgqz3uXA?% zL%@4YWBGd;gm16uA6(c|eNeuX^GFI-1hjZ5+FICF(PKvPuYcV=4blA1>9stQc58Qe z-W*)w(+%{t;Yz>atN|~k01+HDdli(ecWM|MXA5e(-_|4b+%`b2Bp(gc+$h}M0NToA zz!C~AwSL}7fyun0Xvo z*e_Qi3KQwjbh=N#8m*9r-p?0I+2DwwTNSS&b=WtbP*xToxbjU}bwkXQ&4kU9pf6ts zAj$)mVPm2 nj#{BG>4Is-RDVT(UpR)1=THDEODJ~=Qk4c3 z-C#dGllwS3R5&~nJ1-R`HFjZ(D;S(I6{|tUdpOk$xyNfDl_uEuw!F?e_EcIacmA?r z43!G4M;_Ib@z{{mM@sKAL#2o6jx_Lk?QP_+$r}q9=M2aCwe&7kq;=c&I*@p>*3_-1 zo%a&LW0v9;>u{DWw8wOf^l9ulSofd`RRg+X)1D!^j=^h7T#m0O+I@-cWBlcFdzD_? zv)m3kpmn)A26@$bN9Sk^=$zo3#X_xWo$=&O;kiDj+uVh&HcS#{Gp^b_q+%Nx<9#Xt z#i6g;{)Yc&{U9HZsrX?C-R7gvf~Q~5)fD$&n7h42fQN;uPuINuLO-$aR|UXds ZwTFdi?4VzlcQd?Z@ha2%9O3`m&RuAK&W__$r5U>=FqaXw?9Bi_h* zhZpHx-K5407R1| >+;2fi^sVa{*?tN!k&`8sz-E?J0xLc zb!tNhcFmy1c&|XV-OF+@OWjqZ8%n6iS7K6*;oW&*w^D$0gM$m9CaT}#MxaOat}}Mj z<~6 d{TrbIJynUGC27g$=Jn~YeQft70>7g&Ap`= zVD1vgI*gfhC6vN$Gk1_^!5O2(kuKHn vhKU#2reZw6fQ888sp^|)5>SEMR7#*?XROb|(W>$c zcLUZ5TuD;9E$6nOl_mjGs{g?Q1pZw@ua^Y{P4vpic Ma^0he8K2uG2i|6 zCP1405#P}&3XSA)ASz 37 znux-SCax^7O~ci7;~VWS)=B(&XRBRs@OQ<>STy0?B8VuSQ6bkelO=nrKDB~fHi;z7 zeT~!yC|3ZdEJ%pFVc;r)gx;i`r_%u4I#kdCi27JWR%FO@d0!2$@zq3x*f2yRbXJm~ z?z1cGRNcNMOn5XlveLB#U+*wsH5JeYQ8v|iM&+Yi$SYZlY47FQ_8=^T*aGvD;DwH= zOR$ChvbYvZHPT_YgCL7}s@)9xk^*Ina=ssKaNK8+9ta=DAQjVt=?ZDn&reMk{HH4Z zYmiHmwJKd-=`Y>VSR8n2Q6wS|5F@?**AHF=s$@C?$!_RY37nz)oNQ?Dv-4Ibk6m&y zVGu>X-$)R|i52lxO;5!!s+Rwo(9#@{zb5O$(wk#TZ vx5hTg&3W wak~#G)V@TT&c$)8^rO!4COGEbx97^iKkO=r)W#B!>&+`S7*0$7j6PMF zKB-rKec?Cz3$>~l%;8)wcSfN05^p~FU~?JwEnc+Kp8ZvN_|)NLvUPS6 8 z*2JjAWRNYE%7EpxUtE4B&IRcZPNh@e{$ZFu-ul9s4ON13C@VW2N;3);Hc;^%hgxe# zFFwiu27o&6bcv612I5XtyL&1gb_|`U+4VoJdH|Yus{0gTLd9?Y;hTGTsf5*u%^&%C z5aCS2^vk+*Q+{wk=?wC0PzOTPCkjrjJ6VyMV4A6RIE^9$6;>uAc}DwQTwcf~vZ8&4 zo% (lWg6KXt!l?c4as#?7%EUP5YyTF-C4T_7?2 zF=BLOZhI#>{r)Ij_B*N=lSO-p&%!j#Dou(-Q;I!Zd{7~@bq}OFWY?UEos1I8ova_z zyfC-(^={6%|9#XF8AHIaI$?}a?DusyX_v|N+r16BLX3WKUgYYbfUA^sJiYMJ=5ZD; zj8h~7+Iq2P55}dAT8oM;Gsnm+3@C4jO*-TtP>;MX59^~9oZ2V(9~T8fI5oUteyHZ| z6cu>FKxzV`6?|t8*RwwDF-}-KzflC6`AgK32v^Ay)<6Ix){Dtxe3M`j24m#NSe)oK zUr^M>mwZgZMAEL{NMwEpT-ksKU-jme3RjX 4moCmCz|;>h4(Ryp6o>YDYI +3W^V`LME0G!3)_ z-svP~{(E6|!L$2q=|qPhEi9l9^Yt`=XW+X+W~&SXEpUM7xhNq|_So{e8Ry@xxh ztyiD+^?L_!-?i0~oBW1)cqr=4d(gdKAT^y6wz@1aE-JL#UtkxT{xs380qKt&57K+! zZDO`4O}V;7*{iim%A0(Pl5`+t=eNY5j )*xX1BtK29rHgm9}`C2^|zA0Qbyo zlc|boWc`-r{o#gxxdI$&PH9CpUIqU=B#gG} t?Ip$KRW3 zf;H8nJKvkd-VBK*WPif(R5B~f40DMah7*>u{Tcq7OYAUp UyIWJ6k`xXXue2x>pJz@CzM?v$$mo0@PQ9K>%)b)Mj(ccGd4@;iaBe=6 z;T!eXk|yOPy414cd87(4>&?Kc J@nTE@tX6;w2hk`De5Rj~rME>Je0IbOVDUe4TToJC8OlC#_iC z?sPi6=BKUEEb3Hk$APYC|R3+ z8`hrp9P+6F83>xEW?sVsfp2Jc Rbp_hBdn17E0}WJ|b5|d_G`p5hnPOLUyNs zhpO{&hFEvO?I>rZo6>X#eG@<*I^V)YC{qLCRx4Kky9!H6`YljAOhMjvz~=jMO41(t zp_VeQyA1A1<_rqiRakI~Lhaies+vbqs9cY5>${QtWen#h7?%~5Ojq#K(2~81+QgrA z(dJ5pw39+Sn?7{M2fgN)V?%=ky6)Od$ABw>QT6#n*umeM4Z&Ia#E$AR#Tcf%3Qvb{ zh__dxhC9+!?qT5Q;zz}gI1}C*Ey{!0T|j&^`zOy>>>KD&{$;R){;4A|!+k_x zQX*@AN5>a&ik95E5wx-&tf-p9uJ7`L><=n=wx#Yku@1|-ci}_UPa*LE(<1)`*qNU$ zli 6rWxz UY*y>b!L(%{cPpB}%IbD|+2(+Z#Xk zQ8>6pw}1W}Ch=PHMlzt+=KAqa#p&6C4IL{^emxT^^H`@f8~u?ZNM3ch{U)nInnAcm z=x0z%CxbCfy8j;Bb}T0#7fL(qT8@==fRDl3nc-gMYP=`e^DZatS-U5`? z8NH6&+#zc;(YRj@1Z+R)p%`^8`AiPzLn3amJSmQ8+T(FhUMiljU&keovaRMqVM_0{ z)Cj3ehV;CX^73zZ=Q_WbbT&Vk1B=x+qY%Woj4L6v!K+mQoqPJZeTq9r=~-6w(Ubzx z;tI)9Nv!lHz4f TwD-rLcA`7K%N@4C#LMD7QYyZ0UM#cRt`%zm~Pjk> Q@mvR8+%wJ`70%gq=-;dPmK6E{!Ov7sN@O}4j1LHp%P38|8O ztdOkqirP$8BE7%*Edj?!>*cIK&_x3wc}!Rt*Sq)&s(^F&13KZcV_Dj=DvJqO$q4j0 zVeULG8#7`lMv@-YjN10WhRi`usUtsLB_6$-brj~TzB6Kw+sc(3Xe{Qu(JNyYDQLcu z&C(a>yd04(b<+h`e!uV>wIcQ@a#G3jjz>zQ1Kj8+JsAAg9QR+@tR~U_G3Sayjrh1Z zxGyB@qpK D0ZIa0-Oby@?<^7_ zUPcty14Qs9(FJdP^wf2}qqfmKV%?v|Y%E?wkQd|cG%|pNK(=1w@3TlJ_hohgF|=cu zbv#VQp}~6B7Q|txFW|*zvonT)2PpGgS}TJon|8$LfYULwcfiksS#>X~-pch1tx^h9 z^bxIR*6SLR+@sja>+?^KdBxfJTAR{!Xcb(3sg!thaCO?ZqO}1VdR%j9d-eF5ju)CI zFeg_J5ZgSetK8KYn9iZyAwIG!58jLpp-tTrmd(azq2y=B+$6a|w7$= HV{>3?(mbqAA_W728Os?L1HzRA2fIF)=dhi6fX)j6@XJ03K%3RwM& zU<1E(g3RICw i@36A;q}=Sur=~m&vML2ZDZJlPgeMEp>J^Kx_2%G-vjRD3k95 z0UPX67f}5eDTUOa{-p$13`v@&&|B8Ygp8b5M%T{6AOtZz;=v6aUH3O(sZS5o1xO|N zF0EhKm&kLmldw2B*N6aW&DcQm)p^UcELE#bG=YJtKHkRkhODkDR2p%z^_%<3Pyn4C zneK=NtBXS&`CVwIKfcIXsD}G8e(!_zfm131KSw?i{cp}4&5$BA@|}G^=bIABGRg2( zMpS~y48jQ*dtZ&<3sa4|r7w)PYJ_4!Y{l-b#y)Q>Flf`@&R!X%V!8UPmUM~QaLGlC zx9P2kU!d!b?Sl}x!kTng0Mb>&eLCx@OkpuPc9vR-;jzK1B_dFDv%)kkr@Om5?wE6S zc+#;YzOP(rY?L7ZT_j-@yjzB^0{Oh9 RSl(f*x`j7mq$jH(YFp?E*t2HS|r2`ixA zB_~j)Wq$G7hUg3uH0Ezgc>0joVs-BH{*IUzj->bERCHnRZ>el;9Wn1`tBl{D!mq2Z zy9gav-JYt7-NA(T|Hq=x=ZWT&j!G6KlO#uwkQUmz5=v^tEizNXUgfCEO*o6#5gqNd zU@AtSpP9aWlf&5?c7UM=I?N|=st?K+a#%&<%!#{=sK1)Zu^bvvhik0v=%L-+gfy-- zV9jDL*_sA85iwoy3lsDaLGBReIQ&EQ<## hVZ 5<`t zrnl%_LM>g%G8(Nor3rX6X+z{18c9X(vst|Xqe3i-RZ=4G!x FRrdVSjoyCW${icJekybbLkCV^`VlItv7O}O5pR7`f^Ee;hY#uu-j4Xi zQjRw8k;d(9ELnvQUv_^B_mE2)k)lEen=5QsK)7!hhE}qN1k&1?JCjUwRusk?^oRcF zM0#$Htex;U6@5GGzLNy?fGrt@xQS;e@n0nRygFW~MQ6Ia{Er%jKFO1elJ+vNmS@)^ z)tUGvuHGVPtDVrd6$`GZ@n?K6mnM0K=OS@*VQYj)UNnzd{zMY^a?Pt%*4^_PWf|0f ztgud9hfRdK^HeC$13IQ4j@6q4^r~+WNtgkBA7iMh9$6P~ILmdCIdbHSv^^V7Px5 +j2fWV0hbzcK48SUIEduHd{x2gnhlaE`Z`Kg$g8}-Pl zT*iwC#R@w}AuClZst8& DAvJAj)OFyY E_T^vN^QR8j#O!;`%6$Gd$hWq z#iGOGrLZlGLtWa6ZpSDW#kRr(&@~vodijnzq6EJc3_5XovMlrzY2%Yabn-%l=oTSZ zy3WZdTOwG~geVnHI$fznx*7>1LNZ=gNDoGYXtu}8yn42@a Cq1B@VNgUcx;V# zAA2^T5*cY@0nEP*^;^HbwWCZe rG}eCO%Hpw?y~ie O!W@g+{UodKdchmI(+O7Aw?bdwY zS97oa(qFKFPSenZ)N6=V`et|&D H&1TS*(Ix}depKQwCy;MO1{eF z@@K>gN mW~z1pTskAVThGQk9;s!C+16mG9W#EFiMgaKQUx95 z9PKbW&Fq~$I$E-!vYgViS5TUIF@xgYI)A*;y>K3mPRbn #lBQnA~{kj zr8YD0a|wq=ORFvEjILV*@IcnJeaAYG*8qyJwG&zY-Fi(0eMrhY3yw!F=^EQ%KGT5+ zt&@NC|B9o_8>zQ!dE~~F+z{WG4=7^&$jf~hwWtW{WOgOYwQu!^PO~(7s)%sPa!v?# zQ;Hjs@QTm_70JHYA9Vre)< n?Q-R7U4)7E}Z1B_t &zAR3O zeD540y@~-*Tb@KN)>Ko05Tvu8bfMqFE89g)*zyp6$%ByR4<3ugwOd&e`R?mX0j_C* zAR>`FERwuUB^Y0{jbNu&jlW_c->q`h(nX&$$N?F)92j~(rM|6feco`=uJG(JyNH)9 zfxy7tq4L{dBaJEjr7o;S)~0bxkkuEdA0fCD=Dmcr %<1xa8UKX{d z=JW;O4ql#gqR}vpBd!y~kI_%+7fdFUkab?>#9}qv45$b=EeeA;cpYu2_9kZgkNKvB ziO4w@(J2lEakcn2*XQ)%^R=0&`dsW4qmiS^!8gcQ2L8R(QYoY> ># z4nKmx96;<7AyK~8@2H-=Qy7dA)MKUQnOP^EiBL3RoAqihUceijw7VMHdn`R@rdfGA zD|9G776yIHUY5GlM&rJ|Zt8hE5OqO0x^v+D55W#p7v?l&lkNIQd&xnp3F>(IbCqy# z7q(=}{;*d}vgxY@6Oa6ahogMb@git)^cXik0lTxSIJb1{i?5|5H#ocr6u=!$VRNnb za-MXB*Jr0K4qWq|DV4>C{(hZiZ|o^vV#Qlow>W*8+v&|0r!N#&weFrfk;%!8*u!^n z6qi%^)J`;H9Qgga8m8;On-wA+Ka4x3++E1QEY<)octRi7!aj1x8D22fIkrST+rJOE z;R?E=SJC|W-(~LQRIOW;JN@P={2gx&QuFN#Ce3fe(1>O fPL8nW`_EhBw0e;G&I3H1LekA4L1yP4>S+X-GMLiZ5hNzE<2JCQ) ZWPINxiNfSo-)fl(v^*wHS4zM+MlEZf%XaZ| zR1~(>z;LzWm#oo8NI{vWM^4Q<%zds>j)S+SWqc$)r@**aCr$x6kmAR;l1%6@nusT8 zaL$e8-uT9CMl*q9;HnlhG2E`fRnm|o6YhC~!}4NkI>Nr?5ee_^d9fEcHFZQ`lbq)+ zmf-CKdZ8%Yn7NkuH-@K2%~|+w^ussL4c1RQXecnHpK&%bI{Q-urlQ9i6G|b^koUbz zSv2MPNF|SLBt6FHpC$*%SzuF-4j|8ptZ?T}5fR;(vdF>jnVnxOh(D>FqVDISK)h^z z_Q+Wdp_z=CCGJJMM@uN#j|^7WhOfaaH0OE_UX!DnuVN^g4l5-8INnfIs@$zt{A>81 zTzWr)chpeTHZ{a l!FGW5Or1bA3>Nt?()r=|&O5Qz+W%CuB+p&d? zOST4lYcDdW^;ep(fwJd6w4F27N6YON;qxb38>%X&lfh_r@G?slwXWL|!)L~@IO5gO zRW+cr(L$ZNT$a~f5rNDr8=^r)X;3Fe>csK=w`FGw3)fkt4CoojEvUEB*t L9L}prS_PwIa0uhtJIUp zusY}FeLO`>cLi9XJa4x4f@bTfaiq$Ad)0b5f~OWsG?MN1jr0@S##BUZ&lPNEqa4et zz!|s`FWLV2Dtj3(;eJ^~pJk|3apYncak#3=<0Z?hZ}Gd?fvU 4PINl_~+orRXWBHUD}f|2%AKu$nPl_-iCpkpbvCHBM8{$H*VtKrn%++3ccE1E&FnZx_F8 zuZD4eMqZXv>Z}OkR#>Z@4PYm)Ko#AykBWBje#_T}_!t|zLvm? &jyQ z9-if)k;P^~nK6c@B=(X1V5m9k$`U@&?Gb#%h)6|_Lr?0TS>rGvSctSNfTi;`y1()g zT{5{7e)+{QI12gE`36LJPp&U{o@c|86H|=+KU|&lUz6eA_UTShU?2=ZLIH` fu zqNKp+?#{6xg3^LA8l|O68a9y8-8}>e=^8nB=IePq&;9-0f5CpZu3hKna~$vEIK7;1 z>v>Dqr@bT?rhFy_Cid?;Z^Twjxm`w`$~3xMc^x1QFLuO9e~p-laHq#NJmOcPr6P%- zPk4JG8?;;G)#E()SEyusaT+KR+%H+P3eZXzKDr{MICaHJT`7R1MvX{(H |3B BLr}WJR1TEZI&`BxQE>eGWm{P$=x&sxs|4B|64y;*jxl1m0>y^1K+jo|Vz< z P}O#YAQy1_R`G wt%ddo#_ z8fBwdH4Qva#SReig?G%s6oin^0NKH-ct^<}5(i#pc1qZ@a%urh@P%I_xpSTu`{fj% zfi$Te+N<@T%y@_*Edu|}-=-NKS7WzIETDjVun_4#G=ZUJj!{1bXGLs9-@EeqDBaXq zX>A*yG9|+`{p*;KVQ>h)4Z>FqA5B>c)Vr-u^##~sQcv;2r3DI{E#>O37 7;&4S01mEUMh8Nm-FW>L;4SC2KDdZ$8`3G+YRsbO?>=i6O};&e!o9 zzSU5M8uNt59=3cg47I%DggNIr88l&%*qtsuq-}$o1(sgWbJbNW|JUP7CVKL(vLNMl z4uD`8pT^ro6__)>{w?-KskJwyNTiwQ-M02^g!BnJN7-lB?Yj*cXc1TfT!9XW?yrM> zIn0*0l`CJ9OS^orf26cXZX$fi#!dq|`mFMs7pFBrwb=PeVH2MV7(bqv{qhR>7*;74 z&nNESwMWaV5auA4Wp;Ux&zN9qw-#ZZBT?BsfLo}-9Q=ahm@PxTQ<_Ygy2|l(@jDUP zWpK@1zk*pWc+b77Nu5@wm3t`6D5Ql;{2t?e<;SAf&Zim-eA)nxuvCjMa-JY!6uy^v z?T9-f0>r*@Z k^dkf0Dw$@}xompK_T{4W2jE=t@;$mgnw9UF z9#%8cQm*yUC|Sqs-C)ZxwiuAzI(8^%Rw*P(^a@BVJTgC_CrfJL5Yy?EL!W&1=vVV2 z-SJ`fj<&4V^_iHq@UWDvKhRnJY4i *+92g3@1|&x$IWk0wCz4&ql Y&@0ga-%PQv!98qR+!ee^VdN=f|=;}I_3Ui zO_mmK_OOx1pO6h}evu#`F} niWg1H;x@m z3*`9zLHa<(XCc?;+Mt3u=2+zoKVFJD%k9rNF&_7;X-hu9v!&G=iRYO}=YrL}RZ#x! z2k?8VC%PjGqUr(>-KP$b qD|i^yGt(C@viISJJoRu5lM5z z4s~iu+I7!VR#{cQZ}^`8$)x8YIO?O&4y6HTk4go^(UukZEw+b$5>yVeMh_2VTPR+( z>1DbJhZZki+zk5;DvQ0kP0mSwz7(t*gAz)*KtHiP;>Om&QAR;&77}}N(bNTh-v%+2 zsayW!3MzBS?>;{YtaN}p5s7X+{1T%udXBTO`-aI2+|L;NUE4<5bQKA(z}0xnn<}9+ zu1DhSih;r3LE!&AS|xn>hY#Fr-x|dF+t`(pkWkJiC_j|agvWqmQ-9 _<)P4cIz_#%{v*tk(~;xPa>s56V^b zS#yHV?g`aF0IR &iNRE3x?qL)}FAJ4L0Q{FU!z#8YYWK|XZ*CJL`be$l z;wjQ6mPN%5&BOxMJP&N6>oRC9L6IGa&i9%2a0yokp*_Sr+V+4!Syd=%UJ>;ZkA*vd{KX#$N} zU*_Y^jEanMcGlwWbuTOFNkw|(!Y=4+19hhkMIg=Wx8AsqP+Ft9dz=J`CGhk7&t8WV z3j)ay$JN19PQ&3A4^bR%*EqLRdL81-EhdXNe%t8kyJs(HUH$yyqt5rWZ56?YkB2gQ zOMC1s2MMDX%Ga;`7qy^D0=DHdrud^5bHW-|M_nO-!0h);fBt-VOBS#SK-vC8HkkWi zhA)ODGr6IZ3{j_}lxZ>R#KXYt%Z@Ok!NttbC0{R5Cc2Z2ITg8z-MMtiqnS`Kx}3hd z>!(8BTpcbt0tJrl0Y3!o_6C{oDYBED_P>ynpU4zlk?xMfehoYp7g_GOIrQgSwIV6m zIV;HeUtLv|+)7m7=Ni!*2PblBA3i4qE)+WN%|8H7xH_RfBE?WqZ+v0#Q8pym(syPY z4V*Z#IBU=N(kHh@&|z!AJ>yDurj4| wMq!u;1dKlxbyh WSu{#7oxz3_xHDQ04JZAk(RV= zx-MuQPKI0+S=FOgnd4br(cM~zH~22#Hr&BHWRJ?BD`PCKg9BED*L!tvUoU_h<7z5^ zJ@TAtKT$>qci`euiIaUe)XM(^VzRri-+so@MApRnGmGG6B~)YTUeX0^&OVZeNBE|4 zd$5ht-%&V+XX87g^#ja{ekG;jkJGsV Fi>GD8%4Al6-Mzea5`Q|8Kkrbn`0Gu~ zsAwlu%OIx4J`Obwj!nxRsle_Vfh#!ZND@Xcd;;o!Gw}C}f6wc5-r~E~z`X2QM(>UV z@fV}iSZnjxb`wn<{_*Dt0A# 1>BUi)R%^50_T0p-8dd0L+kju2paXoKQ~-S_Wt z7%0M6KBtrqemmG}C$fo7n4Ei{oJtkw*_3OdY-|@_5kh(;E>TSM#7!h6{WwX fG@h1kWzr3x^9{M$)4S}NmA HYXt zDO2m%cvpQP?ZFJ8h;@kWSWoVCLvS}<`bY9Ou=qZ(Muk_vCgqS-1oaT_@ztv)q2o(3 zDjH;Ll1osp6=Tf+;k1{6yB<}`U`@IC+%i8Q_Vb63*c6%h{9MAXGB5T8s+KX$RoTq@ z@rcQ!;pM5&KKnbpNp(Cd*%jYxa6{}X`kE^xEvSx!syu`>l}vOndf-dOv~ Ox8Qr(5VvdF% tj@%GpMMHG?dh1v2- zg~JABy0ie{MxIfsb~dEPBaa# GnuA|ER;M-LnF_cx%iV8N*sb2&FoXh3g# z)r5x>cGbwv!;+}Rj|_mMSban3D;zGG>>-y$s{8jmc#=eayMbL36idG&42_T;TwQ}= z$1OV@eC{Q@v?7Y%7fE6UbV=zvkoxWI0)AOyS_gHQN1!vAf5_r^^Hr@?t66LW`RY#S zo0vlqo&)Qz;)O$`( uJb*8P_tv63@}iwfVVR2=uY`Mn+Q){{iDhGq-uPQ8z%;%zg0B zBe9EO@rSA80T>qKNzKuVo_$k5z{iVMyIX+w63ickQoB?4)h~T8eybVcB9lmV?TuUe zw$ZjtvVxt!E$DZ~B&phsHN{uqo_-tkUNojdopaI$s>kkCks*R6Q@j+m_VtH>c4qrM zUiH~u+bl;4xpaKwpZ`tY8KzByDjb|P#|ibS97j`~eIiB4Y}c^d{XsmxfJh$xYbPD{ zUvv94?2doX^`CZmho7DeX`IhhISG~=b5^QKvPZ`pj^~g?t8c0HkUS6zqSb;o%wM!w zG6g>fhR@FEQ0Kj6rgen$6c IbL@%r)b9c1bJ75 z(fMZ{skXs0-EsDj%+kN^9P5B6t`~n$JHxdJIt`a+E&_XA5ps#*!h0g|m)6pd@(Ggl zG{mn3Gv@2fJUSC8?a3NwDswm$OxTO| 0@B#n|XR%2?h0nO~w!E437_QU2y#prJ~ngYR}n% ?HKJ-H@Z)8{K0vB zq0QF-0ZoT5 wdSxX4sJ6y~t zD76<{wo!d{@{KriI4^(bH6&^P>xzGX4nf-nnT5hR0`d_S3Bdhh`9=X{a+0J$K$hYC zsq_9M*`s)t`}OM>+3LmBy*Q`Y;XVcN0D0nA3sejPl7^B@ZG%mrd*W1&z+q(DHlPW> z;fw6aYfHUMuN|H`uGe|KACZWy3_ZhqNyK-b^ZF_696z{@zlnJ>L-X}Ga1^U#HNIln z?uj6PYH}!?C&HymdpAmNv=>iLR*5Ovf@yjgJ}7b#PGz${rG2Q~;vE$D=+fBX8w0G| zy8!DwDvdG77Yy&D2QLoe5cmM5#&Lt@)7 m+K~)@7oF1^y(q+lWBwSV zc732^?t8rIug`8Axjo_oazu_t_AJu8w|M7Fwak-qQa(aQ|456#3=(hP)oHC0I}(r- z VX&b}3p;SEp>9qi|Ni-7+2hNa{48nJD|v+J8z#zy zdk4NxcKNwONqhRY;^PB&W59yXRoC-%qf_iDHg(15M2F{FTw=^Eter3)$3Q}ucZBWA z+AZ;Ll!2ANV@%(+w$)2uzqfj-kjT7%?7iCKCnUeWCyYw{e!qEU_80O2xj{^7z1DsF zgu&W!mUWgXDoG|| N>8o9ncvqV0il!H!4VsvtMHv` z(&l6fnr>Ex+fK$~f2X$nlUtI4KW{^R!qZZ@PZ$Gs%dJ?EwW%JI<6g2zul4GSz5tdJ zNTDL&qCwd~^5po_jg5Eh-hWx82ju@=k!?uO6dwE1TaTCI_K%j#XJQ>V_V1z{!|Dk{ z>o(ePF(TodSIzj6{R2D1g({yKsW`|$0V7-T&~(%pFZV;c1&JsvmNHlZ AXg$$xu d?<@vb(yqiOm2AP8*T@|g^Z~BcYgZN =o)WakZK!S{gg@bSTMuoQ%_&yR@XQR)(@AO&rES~Lmfy@t!^lut zGM^n{R$u$M0dq9U8nG+8d#!l)*RdG^yTstdC#iue6;JS^XLm?)_h7E{deTxPkGcnj zLC&0f`*QYW29hVg`!*(RjZ(kDy#7*~&IYOSY}%7**27qH^=;-3pAs+iy5IHrGqL~8 zY7nyh^ZZHZ{u|)-xBoi#vo#3hiN!>nq0+v!ZxJHaar6yR(t_l9=``U~k2SKC32vWE zli*nT2xJRohgy1Y#j ptjL{i1ZO92c?%v)TfA(>rEv09Ta`Y1Bk |KoZ;3MTAOHoF?Is z&z{2vcT34>UntS={=!@KaXR$Q-z*)H5lzUYs&3z|`YdkfBb zKI^y^CpP%Gyb krj P!;{mWAL=Z<68kZ0vR(`Ct#ke z?J)=Jx&8}zgEX#`Gyv#5W=Kzc$8rpqRvDmL3HxH_WLDtx_vl78C`9k}HB}zv<>}Fx z$$;&cL4U7MU`v>Pt*;5k=%L)Ejwys7fRCJe;jq(7a*JWR+jEcnWS^VkKz*>g6g#1$ z!i*=UgW2-3KI)lDo*bfQWbo||-9OnUgm)S^HW@2ZxW=xV$~PN@%3kKgDLU5<=7j#a z?-K~IJk5q_aAASlAFF|s;fAdoV}plcsYoHB)m$s5{}vO_Jpc6C%jNcX7S&B6U^<7) zgeK56k}2My4-5 Q{wC@)68^M|X1rm0|L*Rq zyLxjwug*B&S~~; )h*njaSHMZT?5fU5Kn@NBjtzg9gmQrHN)nZ2kImrKVE{>_z$iEcZE>SC=- zGK UF2zdiy&m>F&4;TfR)g=0ERoLWBC2yUFZ$sZtYaCJmJ z>>zW!eInl6Os()*UQ+lirK6Lg1Jx2o>+xp{pqu=}*7%G%K>Lbfi&S>fM3!~Dv3~kE zQya+zaF;=@Rl;>#AJRU$aNyDW9`XPrM)85JF)Mj`()i16K+0Cjc<561(u4LSPx5Z= zt0m1_w&tO3veUqiO|zzaW 9MS)LcH|wHu#~U L5 z$NqNY4sX_n?2%WzMcj)SwBW3^d6`O~J?WmWJ4gT)2V0u>dK3bUf&y1V7!8Z}JYI;n zCDK;70Rmi3ma8SVsNQ@8qXk1MFSm(L!*7MGx?khW%$5h{{p|kM?{&5?Wolpkr{nm5 zU*n(fa61Y>?3|!L_n)z7+sV2l4GhTK6;c!U9pW-R4cGkr%V2M{Hi`1MPEwQIW@Ox| z#dEEo7yRpnB>jxIRF2ZK`WhZE4glj?bA;d9i1x&wkGOTGskU~WT2(SSG5KP>B=^OZ zI_tmPXDP54qq#@@Y!VkcZn1I$4ij>@j1RwNJ(n%uS1Y8qC9>xrlQn|;oI_aB3MR*l z`KE6z8!emnkeLOKC49r5mmJFp>UTxodk52d2K?vdu+=GjXTt@H)$j9%cYrPLAgHnt zJ)j}sTF9?FHZ+6~IDajCqc{Hoqe|^r1II41s~X-^LlQBRhI8TQr-d~$?=xLWRtDZ= z+70MVDM?eWIqte`rxTmmWn`MVsU&z7?i=h=XKWKp(QbHt&u$qonJ!Gr!Y9>fJ AVQSakCPyNd=7C{ZnY!aR&}IE`XwzA>@nht3K;`k%B&<5&g%*dWWp+*jFu2si z?%Iswy{2v{V-Te2Q5FHWSyL{gdz%xY_dDI^zr9%6uQ)l`8P gzz5J zLp2}q*6{e ^rRS|3W7&F zWK03Lz0hV!8*;El$V%uX7sU}O3~iTZZ@;C9LF;ohfZo$qvcTKZ7UkC?>61akiM{YM z- nK|w+X)I;A;vm0OsQZ_- 6dRuQ`cM?> znVFfI^Yz~K1iXi_h;?h6ym47#SU}jwO8-cPh~q()Rdb`4(;cVPnq~#9&=2 N}I5M6#66l@`fI_kZWq aUdlCshb%4`laj%v{SM)nX^B?FEyWU&~O*o<0hO-{1 zOdp+@Q_d(#3Df(d8Y3 z~N#xrTawdxY{)f7@_{ zt0}Wv(Bx 5==L=mZNkQbB<5_$7-4Rp)B$#5wc zuLuEl=g)V)V0 $iKI(0(>m4hZ)GqE z!~1B&4jQ(EL_-U0fNi{i=Z~CDIGL%~dW3`OTxgtYp4Lb#B95OE(wEWhg}i8;zie4( zxpocP-f2<20;RcyJz3u;8e1A!+^(2mWOhmLLrq)yy6~Y*2gOg3n`Vo*$q0j_c3I`} zzgD*9K5xO(cIR7??|;9TQ*==jTTi;TFyR*U%dg4nFaC7Y_rswIRGY`fsq@XiF#hw$ zLA;;_q^O}E#lUO22l8N^yMp$}=Pe_^_+71okW*q-?C{_AlI1kTNAn+|vB&HiHbG;& zS`TVm%CG)IKHwv7i6>fOhq#D`#rC|KUC?xany# !^cquJc-K+-MK0C0(aO+79{j*7zRH~SLVqw+-bS?E7Fy5PUT&R0@KHeCqvAZxt zHWb#@vdpZxj7okx$0{1`F1;(k=lvRaPChPq>XsDExo!~&2@?Gne=0=Y7j%}IQ<-c3 z^%xU}fe)B WSHOf;_TV(=Jeo^q7AJd1}RiY$v6(GQU3|=C|pah2+bbprs7(D7@u*z^plMo zwd@3Wc>};U irjc`yOW{!&~?$4cEh5^`B*=nVl0c2e)MN#U2e#4OL3G z@28`a^nwUSCaqcu5T;!pJ>?>``TR%Ey-3!6ZJdYVb&(`R!n;T}qtFFMSNIgG5EAAz zS4qs``O qQkPKmJ6g_28Z^&y9>Sn(Sc zpX z<3q`z#wJc0ozGLU! zNODC!N=U{=P|Zqh*f59gp`9zS1>6-Z0*POv$=CDqng z8|!T{@}yrSmDVi;yl=a7BQPk9&v b?8g_zHqi-gGTr<<*}`@zZ6zV<7%&|a za22>MPNtjL9v2pWB^esO1e}d;4sCaOXLi9pwY+m0QJgouDOa+Y!g8cQD|DGWYo~@J zF@UEuFD@yM`YmgTY*xw}Xfzs!mU_D*KVn=Ie{0PQ+6<({>!ri?+0GnqzU;=y19h>? zEsBkLiXg1lWwn*!22IvoU3vZgdMlcU@bG*Q@-D|PdT)YItsJ*yR$TBy?s8gzqYHBh zq}S}9BC$PSlB{5l>P2VOzmORJd<3R%NF{j%xb}i4cC2SIxA&D#CP#NB-^A2G2R)!b z(U_ WAG?7&Q&LsW;vc7PpOIC%GNX zy2bUHhmT|7%f{=`4~s-+`AN1Ul$Vo1PYK)S<-TEl0F8?7%9b8$=VQqP8 zZ#?p`eozv|F5M%SNW>8NM09C2gX1!c`El)SB;L`)cxjup6NhUrSAWaB=3*ayOIMrI z#MFX)ksDdCUY$Da&Glo?fO|>OW4C^mocnX6+o8J)VSrqBb8gHK7Mpq5ZgVC8A>5-S z8<1VQQ|8AUQ?WB&y I7cAvGJV^RC`n%n1oNcTmr^bhjFA?RyjOKWj zEnf$KdDTu1Lnvx|oIiV5CnO#()j`WJ{E1r(_Nyo9nRaQ{@*n ec=*gfzTy&?)w?WGDK&+Y=<8u{U}6%H8`voz1p#Nw26=MX@1~ z*u+q!GO(GXd84#G(qcxD%wAFY%)ZTOKDM~Mn#L){d1>FDkZ09BSE+P3{s!X{R-q0O z=at!&_0Mdpx;QN9pt&H-glmXmD^4)gnVQU3%CJX7WqaFGqFy0+m&9`q3@J% z+3^~RDV$z;1^fQ#U;Q=gv`TiBQ mo#?2vn%FSB{Oms zK6}xa+ooqC8cIG0N!~dglUFepvC5<<=WVZFD7b*QR=YWbNY7&e%l{MVMhHN83H|5N zM{QjxgLj00`wSc91V7Q=EN3+xIgFc&>&j%U>Wu3s8Q>Y#a+g%)_5+2)En}RdUpo8B zG{I%S+DB|DEcQ#Z1Ply@b5v%&H>PW=BKdA5)TR0R6Esl&qN*_x8-$OoyFHSU9X?82 zE&?-c9Q9-3amVS&8DsZ&*{59JFgqr>>Bvs_9}!g^*b_jrJKiNt|DXcJG{nIX6FMY? zKO}@TX^0}I>1cQJ_3unu6Ro!BItHvtIcaK-ODZYiR0-ou_gAjBik)N_<{TCVLA;Re zz~{<*{Zb6$lY~yK9AvQ{VXsq{oQSQS4e^o4Z#al4t*KP79^*;}O>S|!DD^`Zun%Db zTcuy{OZt&{V0`zPzPTi5=%tL4lO6w%q6?&wD3k1XnV?FZZfMrnM02ozfXl({SMU;e zF8@d+kRpq>@+L}k#(tS`d}AOe90Tm!IaP%IwoYxX-;DhF=;2t(<{8MdwZlHJdtY^+ zT7V&bgC11u3jv-vT`lwHh;MI~EV~WFmmIwinM}?}NSRMMn+S@ZWlj}b0=DKX$_}h7 z`q*0 _! %Ob}j X(9O*|T=_rA9afFJsG4l(uZ6{^$oA1FFQ`c3$i2iq&c z83r)v+^I->Et;Vp5bn!rq`cb&s7zpqOA#uj9spMo37yhL&d|qnzGj_y34;6ViRuw< zXw*vzSW?$!?tCNs`eW#U8SsmTxu&_=umJL?AKgYS>A>{)=jAVLQS9>^JiR72t9Jpc z2{%7&fP!@P+g*+6dY3>c(z2UX-^bHwObhpX>Dqd!wY|f3D}6E@P_qs;FSKBSzR2`H zp)T1a& B$3%9bN)X4x!`A4uqs<#S7#?t)9-?0 zPW?!_c~TtIt0wb%R9j)fAyPXI-b#7h+Od;=m^$Vcup7b9^XvSrMEbbJ^yg@#{Ul99 z(h&$=81~6EHY3(Uw4GAXf9UeXa#Pmvvne=2R59VOTKLyyf+z0ZN_Ds0-0HV>+q2yS z3lS*&dsI^CfJ%{t^m-$>W8itHg$tVgk+w3eM%ujD{J1wGLyf*FJwU5lZ;2Pj9{Un} zD03vN_fWCTuX|0p#7;GaYp{Ei^o%Y*F(i%cHa*9!PdXpEjJs-sd?_K6jcRNt><@&C zr)!kDG~!8&$&W>O_-&?9boHxgUMdQ!g3_>Y`?D{#$m=EgTFw}B`&Nwk^Y|TDYe-9e zJ7dzH=e+}|^eu8TEDSTu?yf*rAdA-pUYoLz_^H9TXy+LxPt=txsj59%s9X`}i*7HY z#9?j>pf8|S`)U24nOQawm!WId-so|zm%4Z3DyW{+-k$4`WEi04$2ab(kfbg!GPtP& z1u9o!GIT_Jsx^(G8^4ql$8NwS-UqvUx9lULMf%88z%e=P&7qLEZn*2dpd!V(wnZf4 z%TZbSEfeEx@e%UrZ1h>JsWb?}byd|V7Pn*cJtQ$?@TQHZjvr%=sn{`Np5DiKIA`=( z*UAvyTZW2dq{5@><-a#y&j>doXUQ*PhDbv=)iFLt!-v w=CJ*r&FI&!|M3gyx0AY`q?6rd z7ml7#N+yMXyv{kLu@7XT#b70*zgJc!9f4sVtZJfHyET=Fsn~PqWWFU2Ugj}2qq!D` zBTH88WaKo{{Rr5!HkuCE#LLpdtY{2dgzLl`?aheg-Wh^9L4&mW_x$;brv&=DWAY-P zpOm7iQtfn8Xw(TOMsYSY26m}PL;0fhw=X1Z4w3jSXX?a*?;D!RmlIwG6=Ci=HvZUl zvM*r!DPywRCCv=rkmQFm*CHnu=MZFZlzdajEfXg~T*osaxA*K8gey)%6Ac<2;-n3R z$ZM-$_jgU~I_uqpI5ai2;B7m6>H$Tle SSp}oZh)~!Yv99BA zBOkVk4NdX60IBN2**3>BVywZmflc!lM%)^^{>0|gjbf_tyLmdc@vUNcOpv_E|Ewd3 z3Jxd@UjLIXNEyoa;+$-QwY{dv4R+!H5IchrAw&MI3llL_wg(34J#vTshp2`{gSh*s zrM_d#P}#|7pM|@O_=%|)Mx8jiZoH7R?J4i%*`g_{6v3$|dfy0jLeo&L`uFHTR%WFA zV=^2^#~nV@56BE>d=EdrhkKq;6Mrs0&mj&naWer`;3j$>3En}MY_Y0g$20f|e&WjL zmirYoMq>1%y?&Ij5)T^=MdAIDRpO`=`d56_%sJjNPe9tMt*wbBixoNHuq43Uais?l zPtSdPS2)#1sfPZt=Z&gu1rc}8^$6@P9+6sz!kQAgiV>=KVrp?WenZy&rBMNdNQWNR z4${30j91qfcZROIT!Ujg8h8^SL35-&Y& i~YgEUz4=wr9W{E>_SRh*?>*oqkGoa!AjRfqCk0&Mt{ z+tdFTG){#6TMiF3JFzOs-o}1&B@@BarX@Vo{bIma+ z9nM{$HC}HCTPIZ%*im(ZrKA{2E;WxKCv+Tdp{`jP2+3-0`+Teg5HGX;2UmX|%ENGu zOZ|R*!L98~)QsyBXYS7J4G<23R>_ItlNl1{+*`VxKXWz1qZ&sj#L@>>#*5oNkUo8z zuwX@G5@}~4SAXWjp*%?v7eYbySPi3Jv(Jj;1h{(`8z5=4WD^I)MvK_hS-{;d>_o A-+E4eGgm2Xkm}3mmD;P9 B*Y;BER0 g}J$0K8_RIQ^s|n%AtZC#Ix2lWQqd>Rx)V+0W!ZD%NeUzZCP;X0Hg%AGUkl!lv zoh$OVU3!HJdFFc}d#&HR(uLL7ViF10+x_V}w=*nw>0XRHb^nh+LlOEf)sRU>H7D|1 zy_t?FhLGIi*~(f?!u|u51b`9WR#C{VndMKB8HusC`~xGS+Fcj-TT^hr@!iZZtp{AM z#-80V{F%4q3;z+>K&3loje-sc9E3{U^A8paaEci=b$^E-<6=7z!>6u%>(l3yejd}J zYp(lomb`GYHSGN=ujMn7oJ%5-JI{p`=I>vzf6 Wlmbg6-7jt=Pu>wk6NzK~xF~`MWXhvb*wK*q7lC!A0nUKzuTEF*MP7vni zsS8+AiUMAj+H>;a3=pFUYm3f=hL&i0m!aJ3%D)>Hq_qiW=SdtC{h>U5W7T& 4 zQEw`l;CIcoK}w_wKVoRKh9gW12x~XN#qUZS(vUZenxPME>pAY&+yohF^$^*1zC5m* ztu;x_Zn+&%Vj-2QgSRjqTW=`_Lw@vr*p 9wm(TcVNa5h&CWQa`4fM|!z-m+ zLWtP-O)TaO<8ZBke7zQq8l7_^!pi3ZWd{ye*SGYkXV uJ+CCmBQqA6NC}z zfMdEGsP)A%kwYDH-d5{iaOJp~S%sY;RjIjZYXa^@#96=3NhXfF^W*Emx~_*KoFfn4 z*Aab|tlf(jUZ3TZu0fioN_PYfKEw{h 4X o3623DyeV){xirZDL>19{K_Bwm7 zh;cW=1Wpk*4-#ohnHqFnS>+Jtsf+}U4dWHs9WUd*~nR z1g>P1!_V(YS)r4r;9FE4=ZWT~mP$?;@s1r#+!3 _4hZ)l8WOyYzLXI3hF*-j;>db% ii}H zzo*T$$7=QTj;0uK1d?=dS=#+i!Qm49so)t2fdrC|LR5N=fTMeIo8tpmhRJ^ZXy8DA zL#tlrtIQO3_;^OWpI5Yg-8VwHK^k?bfSp8$N$6q&$;&ZAg!P)|ltR7Qc&iy-s_V(I zM{ypbfh(A$zrd_;p%6q$2%nj8yGM4{6~4-1i V?8-t?#miklRz#gc$uyq?WKV0Kk zy73 Ty%jAfILG;kR-vokR2n$#{yK-~v^RxQ`d3WLq{8e-l%&y~ z3W`Q1vg|BePK@p=a=ceMl=yue#=0SOi8yukMI^W;hJT?m=NxyZqkv+DKKX(7SUSgG z1!>c#a<(wq`gDoqXfqP 0b>%q4^vU+>`1H4^A zm0`o=>F-lX<=V;Z6rK-X$(}&EpJbe8bv>M7BmeX?Is ?5ZAYxcKr8-d>^ZRc z_wtlP(%{)Fo^<*Hzdfa_Nmk}uxI4b?dgmL-(Vp-J?(4MiUIHnE_JU1~CN=|OPa^em zFu4w4x-DQ0^%St 0F~ zO<*Fw+Q3b2M3I?b`oTw4MAC*Fx}+CXAt?YPVB>RGM$dimEWO 8O>n2cO4*cvcs-F{g%3EKy})9ZARHc$80E%*8h*^O=TdBipKo zirlTdej7wke=z6?c3(;h$Yi2?XkwA^yR;$^B(rzI+s1_pVa3>OV55-|b7n`?U<%1^ z3fcbP!0`-p+iKh*F5=f*Vf4Lu_v)JKv+INHY@0~KcCMf=H<_t@WJ?$i5u~KU8?jIa zhnCe?2mGz$je%AD(&Mk^z6#egzwZxB+?276oO1tN?cI1U_tc~FTG|Y9eAXG!FU1tG z`+=$X^6dAGCV)&FVr+Tg8F^}X)!BV72vA #Fr5}P10PbF9Y*0dM`d%@3irCrv(xq^Pmk+96=U)kcGw5$3y;K8XcgOFP|M& z&rW6RR)C54S1ZFX4UGkd8&NN5@2UsTRtn IpMgF2ys{N%ceG zVZSn^sL&dgiU*Vgs3`WW?#XuIOb4h0rfp)bn9ajKKH$J0uLoiM=>x_zcWTR}iwf%0 z$Buh1B}}bk1=hg?6Iy5Uc;wGe3{m*I%9%gmnvV`fSb%1Vb=x%qeGEtaagwrwOa Ev _ zcuX&Whu_A0$p!@GU|&v}*g8Jcigjar-sn_OKdmvCO+U*&cq7db;)^|j|ME2ZdOFvN zne!{WF+7ICnhUXsq$p@^S2gbsNC#!pFi|Sc8U56y!iAM#_9!IfddPE6ezu*>_A*bW zVho7!!W79*#SdIcT*PblMTXZh1sK^aU*gKk{=Y7p{R*evL9T>`SrFq8sscx<*ZxXg zw(03fZH+k5!%7y#?iaZgZ6;S1LcjtGPrH(b-bZ~S9nTfrEH3C)rUNqt{|c4T&U5h6 zT6KVZnJ7Pe r|(<&j?T!gWQn7!Pd7Lth-Gu=Uu4YCO1Gl{h~7P;`Ryyr zM?B;^;rG&MhlsW%Pr{v5OiLT@6ZSQ(+?4K+nQ_9L`dK~maD#$KM923x)|phvs4GKr zd@B8Mf6^E*(XDv4b>GLRBTJOj LUL5>b z5$?(rejpgcx$z3*&z%NgTJyXdEmhhIE-n|U9PV*;tND$_!ii!(wzTG~ud;7kdmFn> zg{t)6_XT8}f%I?d=W0QrA8GgC@h_GGTE!(NOj=Fc3P`lCT%;flp^eFH0R+!`g#Iob z1@gjwPi#ocx0flfgXI1O|0f`fuuD?1!&|ilNLH;q%P?M+3`)ZN-;yiSmF*6zKa%p+ zZ+TB~ijGP@N!O8^6q$Lf`D+T#lFssq$4*-6c-|_hrV64FJz#ZE m zq{|_sK^mmHW eCPQGerwH|z3zS8*S ?lwJ%fTXyWCFXLom znyeC~f?=6!0(mSVQKa8rmq?G!&pc&!;M_cA_8f~_fHfOGMukenwI_QAS^7T>F}Dr~ zbCm2-Is06$c~+HRFbC^`)o*Ey4-Mhd+bXITue#LGt}5WVFR-w2E$kdt^mgM4 a~r1oDh)MAth5Ti_`*F$4GU2!*gh?3j=L&^0RQ0A5KyYGw QlrW?3RSwtuItE~6}qT%A57hay?%g5n5L;ef1 ziiYtej`H~m9vb+j_>fb^j&k?&aK>~--JwWNEaT}hoW*0py(ynhQ&3Z{b^Us{#cERJ zt~0Js1lZJ+$f)bNuXH;$vQIwlW)MmD!?K$NJxr3Y=9_!Qe7WYfh(KUjh?qH}rwL~B zc$jE|*n7>pF~)<{VA~Gw>??%S^UF4KpEL{&+%H^95m87YE1=DpWcm@F(G5|-B%qd+ z*#+wRiclwLt+u|5+N^yDbDhBFca&4n>KiS_s9#PoGg8nd>dp-Sy6Dq)3&c#nn_v55 zn `Tj6heN~afZ5hrSg z?PR25SC&hEw&~dg{p_t~ySzmX>ZZ7*h5mkTc%f3y{*ZuXW`t;*?(yF%96KNE_f2Q6 zoJydev1ic1ncaA!O73V7hC*{Nl?7kAj(^+L7r3bySxak>eH#7fG=i_?zEnnZK>?SX zO%Yp8m21(k*j2Gs^B;Zpc*FbDaXB48oJ}ez(%Tq=o^h*7f){>`@#E#>*m)4^?(@&T zs8J`rzc)xL5_A2ETUjJDPH$D#iG${T`(jFqKup4@1&5KWlzs1 M8N2GjgXG#tj{f+8SP*1!|M=<7D9_E9Myl^ zCInR%*US=oFR!Dt(XH*`a#!q&UcANBUm3*su}v(pC~Mo!j==En`Owt>z|WY?@enOc zp!r_0I?-)c{UV@Qq?`4o>(<91yJ`Ew$K0prkv|WByI@utA1fZ-TZqQC?)-2d%p!3x z*n!S5Mzuq_+fP;FR)_E5wB zlb0a%qyKu9$U3RTQ+;Co)wCxnztS``nRPT$tb@uKNgk6mL2iE-(m_6F+o)yTWf}gV zU67$@PLuHUoV=yK3l*DLKLlOzS~P64#A(|f>8dNPf;nmy@PZ4B?jUT@P|TFElX}wE zyR>p}Bj}A?S}{cH1J!X5gX9_5N$q*HN3ss|=AlY>3VxFS;z30cf>VW>6QG0YLUmhu`pf@m|#6*wK3GD=R>R& z)>}djM6%d>btr=*YdUVFAhf@u|I#0V0e4iU PqT zRVb>)2;4ro3Kmti{#87FjpL9aARq+#j{L^rI(iNLI%ZkO$EQ??+^@5(rqjf%T4G>e zhxv`BLpNPsl2hTFIio-ca&EIF%g&s0|8Ik{J=RhG$zb&76>84~3~Z9vFP9DqBnDT$ z9X{2%L1RR_d#GOxRtmsnW<@Si%Ry8Fdk(lwy8<{64s;VbC{ihS=kdp>-OYxdZTx3B zGdF!Eqm%2P&wYV?amMHcRZwHh?#Uy^GnRm|(5wLw5;hUj!fsZb5c~&xrZGG)O>RuW zz%3$3{^Rwlo99t58qGBU+DDG_3RC->KR_*D*49M8D!d!^pm-XP-*rMb*VPF`Xk6)c zlWSQVOn4UpWdz4j;{hkhvU1!^_3hEJIuB9QA9WH^|K~_>eUCOlF&VBJ8tHiX_0l1Q zRO4#X(#D?AxsA(8gGhj!izm|(tL#>NOZq*bF(I1)gbzd7?5SfA)jZ9cHwhVY-!Q1Y zl~_Hji%$ANP;U_~kSBW}ld(7o%?-?ZrpUs|6sS29Fr|xnA?Z||uQIx8O0+!uTq6as zK;e*77)xlB)JM?&4xsYxHOnsS$)=KnNOM5{;BE=aaX=?G`WPC5^J=UN_06|W6JLgK zG`cLYI^6VV64Qg{F wEcv^h!jFOJG#%_vuBt zSBP>#zDB2fb8J=#=B ?KI$r+!&!9jR$Amk6HR5tM7E7B z*F?lT>`9HO=(p1N3l 6y33?^snN7HxJLG zD>%J!Kg2w!$H(-|5`=+tw;AOla9`_;Cr#b2nwn1ntg5QHIkNj?Mh7{kkZB7ZT3u0% z_A6vGJ!!iE%D=<~BSdaL3PqR#dQG45>m$b^cwU;V`MA^|x!)yC+!%H_WStfGH5W3C z2%3DZ-r>}UZ MP5gEBR*VXkpOdm&M0T9J!AsFFC6zGlo7#J(VU@%cx{_iyEmiS2hpLfni&&L $la#T^}@>32+!g+vr6h>8$(z@VHns2SqdMZvIa;H0#?e5Pry2c$k0( zIh^@HWG2!9mTD`q_wG0BO7E;m vmrWwBO4}ZsFt`4l8U})X z6^L|Rg;QXqJMM_(s>O!w^zRRv263%UPJmaONqrQlc>;d5>y@x8@l_L=ZYmGo8QO}= zq~)TJG~IU; `j!rf};= zKY^uB6Nk-M40 EzLgbc_xhT`Fy$ zkrnF8br&s6UNm^UjUH20>W*3+Xxv>t&m@tx zU*d<7!aUqyu6yZXc-JyR;1xJo{R;B>x!1k@rcch56dnXyJrQUXRDUk?ay{Jp&~vKY zM;ky)FM4mCHajtc{DRV4l0X)ih!*67nKM;^@>(lM=T7sl!b9;%+n|8gC0(XJL%aY+ zE&W@(`&V|ErW5}{$WPr|8ECggk)$8%!HT|5#2I7B%nou&jC*7QA!&^rJqw*D&ONkW z8r8XbYG52L=$?1VrJybj)-cwhB)Q%dr{7-8$a#CmH{n!dz5SLd9vjDTaTya XK{)s@iV 0JfVGP3@mN2}^IR#hj|`%kNrp2~GnlVSSI zGfF-5OHpaUtCts9=}-g0T|iEw)mX#CC|fNJ sz9}dXtUVf?K*ZGPA zAkyfJ66f1#>m~Qg(wuvqUT@~yzKnKm0Aln0)5F$ z)%c z_zdTAGF4aZ@^86%CYv^*xr9#-W?}P<5868BzUE|y<}%8qeH8Hr%Lc#~z)UI=_%8DE zL(@6+#39}2!Mn!-mz?0w!Knvb5;M7 ^qY-_64mjzL&=N zsHMB5EJhyS>mAsQzKLz%7~*j_VbreW@hpS1Om*@PM%m)Xa9+~}T#C_n61o%9fcV7R z-XE*Hb9C;Hy(0cZ$F|Z$g187Tj_(gIeXwU=!lk?7o}#_ZDZESQ_R2#tcy^~REK8eE zIRc(qmAP#~O3T;4*MS#HU@8%P8;ng~`#kE=NX4Tntj~ANBJX=)ID!)4LG&TZ@0X5H zlW8^H>*xMv#1kCy*Nj~&v_@O| ?2Ln;C+ zI|rO-y0f?)bKkd{0pZtwDZ3LfveH32lB8jo0;YEI9ViF%XP|Jq!R{Jqq`A~eeh4K{ zaTc`%vN!>8x3c=a!IeHoN4!!;@Rt|U(TnDRb?(-sMTO 5OSPd;n(>GwJl?OekPdoTqzU4eK9|dpgZ08WxNT*FuX+0!eT08 z#RjfMeY?KwWgnWa8vcKAOzwwCgbh#LRo?d)F3Ywi-u&a9e`6;xiGq pA#d`2<7=`u^WT>o#p5`5ft(YI6MpUIX+@Ydiqcg zt|~*cTiQmR1if;UwTz@LL4JKY8bL{nE0h&_=IX7F@|>w&gSSsrvf}OeMLU0{cc4#- z-FKg8f1c5AixS!Yl$GZ09CUNK?|6$9l$)9yk@Rx=xo~I^2Y(3zah7RJ(C_n*uL&4q zX&3jFS4$GW0GTf2+6DMq$b1-xs9)e`Kn@KGh38Zl36ZS&>#Ts$*eRmsmTG~?xp5)6 zZ27>CKR>|`EE1Uo5*LQ;FGfrxJeYzI@6ZWlys}>Nr=$&VpWTW)yurfcyG@fIDYbAq z4M PxP{pwkD1$0QTnW6so@*mxKW6zH> zng@TUw0w}qb1nrLL|mkCE=$fUkk`vK(rJeqfBdk5zv|jo1_C1`E3upu75O-7dBsP} z>@PQnZk*zq`!GDyEEGe{3jk~0h%X)92Wfp21`p(!?&9-9Pt)|!@cc@X<8#9rVt0!D zK~ggJmES9DszyLQFs7q)HHK+Y=*yAh%}*JsVjn93v*v$^_G{k2hEP)b{6p-qP`vPd zH_8)Y_1-rAWP*%+y)?xah06}j+F)dC-T5|czX8}X7G5!!uOR3eDPQ&rhd|bBojwbw zls{v(`YXvkHdR;F`*sUCvDW^{IDTKv%D4nzcNB21*tGL`B35=2fzUOxA{(_3JkI-> zo$;s0Y=2EknmvgbC5#!3xo~)&Fj0r0J=VQk4^7=w91T(SO7V2(nsu#jH!iJ^ dM0PbHtaRiyd^BxGYG7v8Hc;t z`dmNp Xdm?6?1>pwGELzL6h*?H@G+sVU#ag{j}r86c@K3^+H$+-(s^7ZB_e1n zMOx`)wxg}o(ejv;9d;7NnL8pw?|;|?hdqpky;9eCg;uUwlB^JrGJk?Vy<}uQ6^gf( zaa}oMAo@$|iii(Zp#$yuPUc6lD~)N6ob^4rY+>?rDW=U1Fw~qmhw 0Esf5rK7;I>sY}? zz!zt7#7w@E1AMa4G)5W{%*Zsj7|DgvfW?u7vBJzM$YKum=7^# z-&W;j$PIo~AY> >DBJlJ*xN zvU#?521Yzy32v@cqAR~}1oz9!sn7*8 e$tT{s9s(wUF2{X2AHLiO-Z12uFW&}6 z21B(`$%jTV0R&_!d9~^0x~H+?NO02jRpHIh<% LV>6DB;iFKp9zkLLjVILYPYpAyzaRHapn7?%ca=5}^taJmIu> zqjaA69uWfm7LD%SiAoIjfqz!Pbu9kaKM951ZP<-bj`*1=k0&q@O6w8>c?6Ag4?qD{T}ibjCnfyorEJF8$_S8Guj z`~f%_15+19=K|w57 )Y5141e&lNC)^f-F6s_ zQ?m78&H#?K)%<{vvTJieO?SFf-cU||f-jo!QQivfXND50Dr^p-k|(C!@mG5DUpag`|)Ov6QFhCV;@|P^av;DDtPo`06~mtz!VrI804v1mmhSD zZLZ;;R?C?E{fUCS;0$|b@SSK2xP=Q=+qB0v^u^hxb40~({V43G6?b-sAXq~If5J(w z!JzMM-Q!ml8CurD)oKp @P3b-odKx%?`<@BdV_a^_dVkOyW&xb@iXjDc+ ;~DH)ds zy}NVA P7x!K%s->)&Mgle+=PpW@#i%O#T(x|q4+2^nI-}`rz2nauNELNG>DQI zV*X1IPhO+BE l1MLO0w|9bAua1&XjjL^rOc@Vp<4uh}_j< z+T6X3YH~q3`0I@y_H~SB_$IG{|1L24Ef=TGN6p}Y_E6JSFnWgNXvAEH`gs?pqSzSv z%9nSi{m&D2X%-X(x>r}hVxgrhsef$Hq=j1h#K>uf<1Pt!sR=b2(KN9x;&)^RZ1rT& zcE4IIlf@L~HDfAL)nxJ#j~QJ>8ylw^mEjm PiLcwy6}NY?;xfXLu79JzCOJwEk-wTm(ad_JB~PH9z8OE{64iz;!N8Vq)g zsHr1GP|5LxtY5V_P+!Zw<*nAChs+akXyplnWh&H6n(5y1A69URZ$)zLybI~5r1r*k ztIuZmJ#KZ>Y>-OUU2OUDO9%dRg-nts72IRzI(0ZKj2vi(Tm~sn-*^l#bXc-$N60mm z*zu}%ZM1(3G$yE*6&TN~N7#VO%*(qCdHRU_DjqQYDj3l2)aLSbcYLgvxLvDwz082r z4+d^rnMC#Z|JB#Y&E|Bj%Us}8%0ml(HG|NCLoYklhW1Eqed(Z H@up#_x7~{sP&6>3QlMEJiMhx6a!;Rue1{>%I_LIp^ta zYx6>uWK-D>$=Vfe=qvNwkB;$x!uFb%zGi;^z3C#+yV0?OJ05zGiwKmX@ikW#@QvcT zw{A+3 Qnos0znk1b 3V0JJ}PeRU`)dWmdk zq^yZXVafz((a|P-xu~ZYp!xDJBWFC~#~#yP!%=+tXuR+A*qHb-X+e;0+F{ilPxyr~ z)*Oc;*^G!G|D^CpkZI+HUJp(DU1YNOG=aN|h^mF79%T1#Zi{+Tqiz|7fhwiBpSU1~ zWY^g$*wPh6-ld2dE0yR*zE0cWN_v&>Aavh;gKx)qVn8aAlZESDpQPq8zP}*N=)k!a zbI@FF%Fjuj0K?IH(@_E<-Q-ZZ%Dpd^MG&2nfR0}6mA;xP L6k11;Xt%BqG&$i#UkrKV9_D_1IlunB zA5+4g5&XqIwV;wZnX??7YdpN#_eJ?njfZ#)nFq4V0}VJGP1nq7-2@0VkM3K!C@Cos z6cJlJ?c}ZER2CPP<_%tmvwbj(2^>q+ZO$0GY#w-hNPL&K;Q<%>etWv1Sd=iIR=^UG z^0o_De9iYvBaJ$#l4mn1?OTvs@V`!h4E7ptNXe$Gg^)819)?@OIuT$Ay=-Ccc+GmP zc1DqM@PLgE;_2o% u;VQWM^M#?NXA5u zxCK6Og}a+^JfU lP@& zxOs5krUK0V<>pv7l!1E?Erf|*WtDnvkaG=IWx!6y&pTuS1_a!ZE0{==%0D UWT|4b{d3?tgJl!UqUO!@ixj39RVTx1lPWm5s^@OA z?`e8iFz1#H=SsTVF+w@A$Lwf!K!lQ?4wS3YEy?-iKAZhIE$ XA}{f18u@T6+m5EATJa-A#b)kLjv+g9qad7iUnsg<*wt z>YZGL(oEF~uSy!pzjS{_RXHMMXBTyABM5@L#@vpBNrpp6cNci0U9+$_mbCK@C6r_? zXK|k$uL|v&lu$N}HZvp|VBr4oRTk8g9O2U9L>H?3viX(?>&B@2cd^!x$VQ3#G&M;b zcHS08iJ;k#z!n8>uv;Bkuu5KdoX0WqVCDI?k| -DG=b z(n_q$?)-&$*0^^COi^bd3!gh&U#BH-55NQ$(JLAny{aELT<223+}P*`N@YLs!k;Gw zio| caZL+xWIwXVLmJQP;bB_j7e+w+N9mXCgtmKl$0 zr}WpWO98>%cBbH4|9zJl+~z^8hO|B1n$Cr0fb=cU8|*_C*u# {a#+6&nDwyWZuT{M5@;B77Yk zCI^-K?@}i)9@>hwfZ5wtf3iY&zwXt_T#H#--yRw )xCeT28fVzN>z`#tR>44EK)o955;4)-3<&N(?oS6TU{~BzBAcQ=eVA{{I=tS} zK5;;)Nz;%Aohm+lf|5(WgcDJYt=D>)adh=WAH+k=Ac5tprKiL~?<2a(cWr?Jn6>)s z#pMTMJmh#2)a_=+dCj}s?;-g-HpXiZiO%6-9pSIZ^Gg2CGrc_KDQa$)6U7#1#byWt zw650)JfIV8o#|>0XgQ+{A}*!TtiY!m4Tu{kBiZSde-t%bZ7QjE7z6yMC47R ufne x_kKpbs zkkvQI0PTZD7H^hBZ>2N@k3x@m -`cDQf@-q8UhkPS_Lm$=vsf{lIn_{ngA8!e@RwI6a6Ysw%QDnzkM9ueS zk_)A@zCA|h%oQIa(!xp&5C+-cSN|OM&E;AXb7lL6lQ%5s*Qb;i2ysbrpx)my?=Nct zm+MFEp$wCO>t0Wp4g)n!CZt|F4IbDB >eXRAiN5fz$wcJ>y#i zak`x;Cg-E$>yK#CC9*Ki6+#*Prbpj^yG$Qy38!gx{5aoP>{r^vg6;a3wy+|0PC;Me zq3=64;rE7TB)_fqIm1d61t_>y5I8yT?a*fICc*)L7U*o$9Am&YrCR QD z8m@^n@zWI(2OAD`zf#s;#fNW4yGKlRTxbEU@%5^#7q8;1Rl2p#+h*?T0L34xNLHj3 zGVg!3 @W>D>`?GQuK~yzgicc5ayVEj P z9r0HNgwS9~*qT`YsnHT
uQx3@S0N6xx3!Ow_!go71 zAkp?(khm+>U!ipD0e%6W7#PM5g5}-wH#|na5A_4Bp~F!{H=&@|EDE7L?x}~g7CIxn zj!w8UEHAgWi;ohLevUFgpU`gE$xOg_c65mLL<~Hbj<}`Qs8+^ag3Y{40&K{m0^Q`D z=O*@yw$Z<@mf=ucPNiIZpPht^qGLES%T69LxWq#uF1tdPAB^C8G x5)-Xhgcy$CC9H?DTIYl+VN)s8ZGNoiA1Fg^azkx|Y zTMr%>Va=fz4^XUIMpZNdD{A@X=Q(mjO=pMAB`%uBLY1!3;LpEic_xt~Ym0Pj&1E-- zm_zzX2n=NpVZ$OFJ^FT&9BNJ;`cyc*5%8;=!TF5YuaL8rqs2DRu81KEi04KoH~ =|AWgUL14r?L`3dP)qIP9=F1>@bf~!6u|DJue_D_C< zbh7}jA4cVZ=FTc^1NZJ6 g#+9mT?V{SHp03Iz;u9MwmkZNL`85$XS?99WQKkg z6uY3zRAPA>Kl8t**mK$CT@?lB85+l7YG+DJdi2A!xgYX^yu;$^f%W?YH0PIa27SB_ zIy>-*9%c6BgzpDo;>cQGCARr`Id0&G%Y+BFr2eQI(Q~G&6Q5zg`UKg)a59~5SEpJ| z)P2)d#0e;l&D^EyRPO%f;eY2YnDigUXaIS9CY!#-E3k}Jh=vtD^TPncx+auI+Ks#_ z>-2L<&{MpNR5PRRp8gL;3}uVl6a9{>4=aQnb$09X3mwX^V#%UOMr_LxJmDg{4t3ig zGR<|-BukIzP%ffvRt7cTqC`vP6pn_-tftdOPJ8J5=GCoCL;3u$o5t`jzo%!Bz+`Aa zu0h^wi(_bRd+3MhScbEJ{Z%l}CtK#oH!RQcD$5-yGlPs