From fe0415db918ea85f07114da735b4e4a074306569 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Thu, 16 Oct 2025 18:25:32 +0200 Subject: [PATCH 01/18] feat: add picture upload and asso edition route --- .env.dist | 3 + .env.test.dist | 3 + package.json | 1 + pnpm-lock.yaml | 20 ++- prisma/schema.prisma | 46 +++++-- prisma/seed/modules/asso.seed.ts | 28 +++- src/app.module.ts | 2 + src/assos/assos.controller.ts | 48 ++++++- src/assos/assos.service.ts | 16 +++ src/assos/dto/req/assos-update-req.dto.ts | 50 ++++++++ src/config/config.module.ts | 5 + src/exceptions.ts | 25 ++++ .../dto/req/imagemedia-upload-req.dto.ts | 44 +++++++ .../dto/res/imagemedia-upload-res.dto.ts | 10 ++ src/media/image/imagemedia.controller.ts | 66 ++++++++++ src/media/image/imagemedia.module.ts | 9 ++ src/media/image/imagemedia.service.ts | 121 ++++++++++++++++++ src/users/users.controller.ts | 5 +- src/users/users.service.ts | 11 +- src/utils.ts | 37 ++++++ 20 files changed, 524 insertions(+), 26 deletions(-) create mode 100644 src/assos/dto/req/assos-update-req.dto.ts create mode 100644 src/media/image/dto/req/imagemedia-upload-req.dto.ts create mode 100644 src/media/image/dto/res/imagemedia-upload-res.dto.ts create mode 100644 src/media/image/imagemedia.controller.ts create mode 100644 src/media/image/imagemedia.module.ts create mode 100644 src/media/image/imagemedia.service.ts diff --git a/.env.dist b/.env.dist index 96900002..4fb658e7 100644 --- a/.env.dist +++ b/.env.dist @@ -18,6 +18,9 @@ LDAP_USER= LDAP_PWD= ANNAL_UPLOAD_DIR=uploads/exams/ +MEDIA_UPLOAD_DIR=uploads/media +MEDIA_DETACHED_LIFESPAN=1 + CAS_URL=https://cas.utt.fr/cas CAS_SERVICE=http://localhost:8080 diff --git a/.env.test.dist b/.env.test.dist index 0ee7f187..e2409acd 100644 --- a/.env.test.dist +++ b/.env.test.dist @@ -14,6 +14,9 @@ PAGINATION_PAGE_SIZE=20 FAKER_SEED=42 ANNAL_UPLOAD_DIR=uploads/exams/ +MEDIA_UPLOAD_DIR=uploads/media +MEDIA_DETACHED_LIFESPAN=1 + CAS_URL=https://cas.utt.fr/cas CAS_SERVICE=https://etu.utt.fr/login LDAP_URL=ldap://localhost:3002 diff --git a/package.json b/package.json index 4c3b2073..44575968 100644 --- a/package.json +++ b/package.json @@ -53,6 +53,7 @@ "fast-xml-parser": "^5.0.9", "file-type": "^20.4.1", "ldapts": "^7.3.1", + "lexical": "^0.37.0", "multer": "1.4.5-lts.1", "pactum-matchers": "^1.1.7", "passport-jwt": "^4.0.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5ce103e8..d9f87ac1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -34,7 +34,7 @@ importers: version: 11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2) '@nestjs/swagger': specifier: ^11.0.6 - version: 11.2.0(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2)(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2) + version: 11.2.0(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2) '@prisma/client': specifier: ^6.5.0 version: 6.8.2(prisma@6.8.2(typescript@5.8.3))(typescript@5.8.3) @@ -59,6 +59,9 @@ importers: ldapts: specifier: ^7.3.1 version: 7.3.1 + lexical: + specifier: ^0.37.0 + version: 0.37.0 multer: specifier: 1.4.5-lts.1 version: 1.4.5-lts.1 @@ -95,7 +98,7 @@ importers: version: 11.0.5(chokidar@4.0.3)(typescript@5.8.3) '@nestjs/testing': specifier: ^11.0.11 - version: 11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2)(@nestjs/platform-express@11.1.2) + version: 11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2)) '@types/bcryptjs': specifier: ^3.0.0 version: 3.0.0 @@ -158,7 +161,7 @@ importers: version: 2.18.1 nestjs-spelunker: specifier: ^1.3.2 - version: 1.3.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2) + version: 1.3.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2)(reflect-metadata@0.2.2)(rxjs@7.8.2)) nock: specifier: ^14.0.1 version: 14.0.4 @@ -2658,6 +2661,9 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} + lexical@0.37.0: + resolution: {integrity: sha512-r5VJR2TioQPAsZATfktnJFrGIiy6gjQN8b/+0a2u1d7/QTH7lhbB7byhGSvcq1iaa1TV/xcf/pFV55a5V5hTDQ==} + libphonenumber-js@1.10.54: resolution: {integrity: sha512-P+38dUgJsmh0gzoRDoM4F5jLbyfztkU6PY6eSK6S5HwTi/LPvnwXqVCQZlAy1FxZ5c48q25QhxGQ0pq+WQcSlQ==} @@ -4789,7 +4795,7 @@ snapshots: transitivePeerDependencies: - chokidar - '@nestjs/swagger@11.2.0(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2)(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)': + '@nestjs/swagger@11.2.0(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)': dependencies: '@microsoft/tsdoc': 0.15.1 '@nestjs/common': 11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) @@ -4804,7 +4810,7 @@ snapshots: class-transformer: 0.5.1 class-validator: 0.14.1 - '@nestjs/testing@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2)(@nestjs/platform-express@11.1.2)': + '@nestjs/testing@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2))': dependencies: '@nestjs/common': 11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) '@nestjs/core': 11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2)(reflect-metadata@0.2.2)(rxjs@7.8.2) @@ -6863,6 +6869,8 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 + lexical@0.37.0: {} + libphonenumber-js@1.10.54: {} lightcookie@1.0.25: {} @@ -7059,7 +7067,7 @@ snapshots: neo-async@2.6.2: {} - nestjs-spelunker@1.3.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2): + nestjs-spelunker@1.3.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2)(reflect-metadata@0.2.2)(rxjs@7.8.2)): dependencies: '@nestjs/common': 11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) '@nestjs/core': 11.1.2(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.2)(reflect-metadata@0.2.2)(rxjs@7.8.2) diff --git a/prisma/schema.prisma b/prisma/schema.prisma index ee6bef46..8d81df62 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -52,7 +52,7 @@ model Asso { mail String @unique @db.VarChar(100) phoneNumber String? @db.VarChar(30) website String? @db.VarChar(100) - logo String? @db.VarChar(100) + logoMediaId String? @db.Char(36) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime? @@ -60,6 +60,8 @@ model Asso { descriptionTranslationId String? @unique assoAccountId String @unique // User account of the asso + logo ImageMedia? @relation("logo", fields: [logoMediaId], references: [id], onDelete: SetNull) + descriptionImages ImageMedia[] @relation("descriptionImages") descriptionShortTranslation Translation? @relation(name: "descriptionShortTranslation", fields: [descriptionShortTranslationId], references: [id], onDelete: Cascade) descriptionTranslation Translation? @relation(name: "descriptionTranslation", fields: [descriptionTranslationId], references: [id], onDelete: Cascade) assoMemberships AssoMembership[] @@ -162,6 +164,22 @@ model GitHubIssue { user User @relation(fields: [userId], references: [id]) } +model ImageMedia { + id String @id @default(uuid()) @db.Char(36) + size Int @db.UnsignedInt + width Int @db.UnsignedInt + height Int @db.UnsignedInt + uploadedAt DateTime @default(now()) + isPublic Boolean @default(false) + uploaderId String + preset ImageMediaPreset + + uploader User @relation(fields: [uploaderId], references: [id]) + avatarForUsers UserInfos[] + logoForAssos Asso[] @relation("logo") + descriptionForAssos Asso[] @relation("descriptionImages") +} + model Semester { code String @id @db.Char(3) start DateTime @db.Date @@ -592,6 +610,7 @@ model User { apiPermissionsTarget ApiKeyPermission[] @relation(name: "target") apiPermissionsGrants ApiKeyPermission[] @relation(name: "granter") asso Asso? + uploadedImages ImageMedia[] } model UserAddress { @@ -662,16 +681,17 @@ model UserFormation { } model UserInfos { - id String @id @default(uuid()) - sex Sex? - nationality String? @db.VarChar(50) - birthday DateTime? @db.Date - avatar String @default("default.png") @db.VarChar(255) - nickname String? @db.VarChar(50) - passions String? @db.Text - website String? @db.VarChar(255) + id String @id @default(uuid()) + sex Sex? + nationality String? @db.VarChar(50) + birthday DateTime? @db.Date + avatarMediaId String? @db.Char(36) + nickname String? @db.VarChar(50) + passions String? @db.Text + website String? @db.VarChar(255) - user User? + user User? + avatar ImageMedia? @relation(fields: [avatarMediaId], references: [id], onDelete: SetNull) } model UserMailsPhones { @@ -899,6 +919,11 @@ enum AddressPrivacy { ALL_PUBLIC } +enum ImageMediaPreset { + AVATAR + CUSTOM +} + enum Permission { API_SEE_OPINIONS_UE // See the rates of an UE API_GIVE_OPINIONS_UE // Rate an UE you have done or are doing @@ -906,6 +931,7 @@ enum Permission { API_UPLOAD_ANNALS // Upload an annal API_MODERATE_ANNALS // Moderate annals API_MODERATE_COMMENTS // Moderate comments + API_UPLOAD_MEDIA // Upload to media enpoints USER_SEE_DETAILS // See personal details about someone, even the ones the user decided to hide USER_UPDATE_DETAILS // Update personal details about someone diff --git a/prisma/seed/modules/asso.seed.ts b/prisma/seed/modules/asso.seed.ts index b806bcd0..30f06d9d 100644 --- a/prisma/seed/modules/asso.seed.ts +++ b/prisma/seed/modules/asso.seed.ts @@ -15,7 +15,29 @@ export default function assoSeed(prisma: PrismaClient) { mail: faker.internet.email(), phoneNumber: faker.phone.number(), website: faker.internet.domainName(), - logo: faker.image.urlLoremFlickr({ category: 'business' }), + logo: { + create: { + height: 100, + width: 100, + size: 1024, + isPublic: true, + preset: 'AVATAR', + uploader: { + create: { + login: name, + firstName: '', + lastName: '', + userType: UserType.ASSOCIATION, + socialNetwork: { create: {} }, + mailsPhones: { create: {} }, + rgpd: { create: {} }, + preference: { create: {} }, + infos: { create: {} }, + privacy: { create: {} }, + }, + }, + }, + }, createdAt: date, updatedAt: date, descriptionShortTranslation: { @@ -42,8 +64,8 @@ export default function assoSeed(prisma: PrismaClient) { preference: { create: {} }, infos: { create: {} }, privacy: { create: {} }, - } - } + }, + }, }, }), ); diff --git a/src/app.module.ts b/src/app.module.ts index a9b8f700..3fe04211 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -15,6 +15,7 @@ import { BranchModule } from './branch/branch.module'; import { AssosModule } from './assos/assos.module'; import { TranslationInterceptor } from './app.interceptor'; import { SemesterModule } from './semester/semester.module'; +import { ImageMediaModule } from './media/image/imagemedia.module'; @Module({ imports: [ @@ -29,6 +30,7 @@ import { SemesterModule } from './semester/semester.module'; TimetableModule, BranchModule, AssosModule, + ImageMediaModule, ], // The providers below are used for all the routes of the api. // For example, the JwtGuard is used for all the routes and checks whether the user is authenticated. diff --git a/src/assos/assos.controller.ts b/src/assos/assos.controller.ts index f64ee5da..37717bf6 100644 --- a/src/assos/assos.controller.ts +++ b/src/assos/assos.controller.ts @@ -2,6 +2,7 @@ import { Body, Controller, Delete, Get, Patch, Post, Put, Query } from '@nestjs/ import { ApiCreatedResponse, ApiOkResponse, ApiOperation, ApiTags } from '@nestjs/swagger'; import { ApiAppErrorResponse, paginatedResponseDto } from '../app.dto'; import { AssoMembershipRole } from './interfaces/membership-role.interface'; +import { ImageMediaService } from '../media/image/imagemedia.service'; import { AssoMembership } from './interfaces/membership.interface'; import { ParamAsso } from './decorator/get-asso'; import { GetUser, IsPublic } from '../auth/decorator'; @@ -10,7 +11,7 @@ import { AppException, ERROR_CODE } from '../exceptions'; import { ParamMember } from './decorator/get-member'; import { Asso } from './interfaces/asso.interface'; import { User } from '../users/interfaces/user.interface'; -import { pick } from '../utils'; +import { isValidLexicalContent, pick } from '../utils'; import { UUIDParam } from '../app.pipe'; import AssosSearchReqDto from './dto/req/assos-search-req.dto'; import AssoOverviewResDto from './dto/res/asso-overview-res.dto'; @@ -23,6 +24,8 @@ import AssosMemberCreateReqDto from './dto/req/assos-member-create.dto'; import AssosMemberUpdateReqDto from './dto/req/assos-member-update.dto'; import AssoMembershipResDto from './dto/res/assos-membership-res.dto'; import UsersService from '../users/users.service'; +import AssosUpdateReqDto from './dto/req/assos-update-req.dto'; +import { ImageMediaPreset } from '@prisma/client'; @Controller('assos') @ApiTags('Assos') @@ -30,6 +33,7 @@ export class AssosController { constructor( readonly assosService: AssosService, readonly userService: UsersService, + readonly mediaService: ImageMediaService, ) {} @Get() @@ -56,6 +60,42 @@ export class AssosController { return this.formatAssoDetail(asso); } + @Patch('/:assoId') + @ApiOperation({ + description: 'Update an asso. Only the fields present in the body will be updated.', + }) + @ApiOkResponse({ type: AssoDetailResDto }) + @ApiAppErrorResponse(ERROR_CODE.NO_SUCH_ASSO, 'There is no asso with the given id') + @ApiAppErrorResponse( + ERROR_CODE.FORBIDDEN_ASSOS_PERMISSIONS, + 'The user has no permission to perform this action for this asso', + ) + @ApiAppErrorResponse(ERROR_CODE.NO_SUCH_MEDIA, 'The media does not exist') + @ApiAppErrorResponse(ERROR_CODE.MEDIA_NOT_PUBLIC, 'The media is not public') + @ApiAppErrorResponse(ERROR_CODE.MEDIA_PRESET_REQUIRED, 'The media does not have the required preset (avatar)') + async updateAsso( + @ParamAsso() asso: Asso, + @GetUser() user: User, + @Body() body: AssosUpdateReqDto, + ): Promise { + if (!(await this.assosService.hasSomeAssoPermission(asso, user.id, 'manage_infos'))) + throw new AppException(ERROR_CODE.FORBIDDEN_ASSOS_PERMISSIONS, asso.id, 'manage_infos'); + for (const key in body.description) + if (!isValidLexicalContent(body.description[key])) + throw new AppException(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, `description.${key}`); + for (const key in body.descriptionShort) + if (!isValidLexicalContent(body.descriptionShort[key])) + throw new AppException(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, `descriptionShort.${key}`); + if (body.logo) { + const media = await this.mediaService.getMedia(body.logo); + if (!media) throw new AppException(ERROR_CODE.NO_SUCH_MEDIA, body.logo); + if (!media.isPublic) throw new AppException(ERROR_CODE.MEDIA_NOT_PUBLIC); + if (media.preset !== ImageMediaPreset.AVATAR) + throw new AppException(ERROR_CODE.MEDIA_PRESET_REQUIRED, ImageMediaPreset.AVATAR); + } + return this.assosService.updateAsso(asso.id, body).then(this.formatAssoDetail); + } + // The route below is not public as it exposes the full name of all members, only the president is supposed to be exposed publicly in the route above @Get('/:assoId/members') @ApiOperation({ @@ -218,7 +258,8 @@ export class AssosController { formatAssoOverview(asso: Asso): AssoOverviewResDto { return { - ...pick(asso, 'id', 'name', 'logo', 'president'), + ...pick(asso, 'id', 'name', 'president'), + logo: asso.logo ? `/media/image/${asso.logo.id}.webp` : null, shortDescription: asso.descriptionShortTranslation, president: { role: pick(asso.president.role, 'id', 'name'), @@ -229,7 +270,8 @@ export class AssosController { formatAssoDetail(asso: Asso): AssoDetailResDto { return { - ...pick(asso, 'id', 'name', 'mail', 'phoneNumber', 'website', 'logo'), + ...pick(asso, 'id', 'name', 'mail', 'phoneNumber', 'website'), + logo: asso.logo ? `/media/image/${asso.logo.id}.webp` : null, description: asso.descriptionTranslation, president: { role: pick(asso.president.role, 'id', 'name'), diff --git a/src/assos/assos.service.ts b/src/assos/assos.service.ts index e21b02e0..9375a7f4 100644 --- a/src/assos/assos.service.ts +++ b/src/assos/assos.service.ts @@ -9,6 +9,7 @@ import { AssoMembershipRole } from './interfaces/membership-role.interface'; import AssosSearchReqDto from './dto/req/assos-search-req.dto'; import AssosMemberUpdateReqDto from './dto/req/assos-member-update.dto'; import { AppException, ERROR_CODE } from '../exceptions'; +import AssosUpdateReqDto from './dto/req/assos-update-req.dto'; @Injectable() export class AssosService { @@ -81,6 +82,21 @@ export class AssosService { }); } + async updateAsso(assoId: string, update: AssosUpdateReqDto): Promise { + return this.prisma.normalize.asso.update({ + where: { id: assoId }, + data: { + ...(update.name ? { name: update.name } : {}), + ...(update.logo ? { logo: { connect: { id: update.logo } } } : {}), + ...(update.descriptionShort ? { descriptionShortTranslation: { update: update.descriptionShort } } : {}), + ...(update.description ? { descriptionTranslation: { update: update.description } } : {}), + ...(update.email ? { mail: update.email } : {}), + ...(update.phoneNumber ? { phoneNumber: update.phoneNumber } : {}), + ...(update.website ? { website: update.website } : {}), + }, + }); + } + async getAssoMembers(assoId: string): Promise { return this.prisma.normalize.assoMembershipRole.findMany({ where: { diff --git a/src/assos/dto/req/assos-update-req.dto.ts b/src/assos/dto/req/assos-update-req.dto.ts new file mode 100644 index 00000000..7bf9c1b7 --- /dev/null +++ b/src/assos/dto/req/assos-update-req.dto.ts @@ -0,0 +1,50 @@ +import { Type } from 'class-transformer'; +import { + IsEmail, + IsNotEmpty, + IsOptional, + IsPhoneNumber, + IsString, + IsUrl, + IsUUID, + ValidateNested, +} from 'class-validator'; +import { TranslatedTextDto } from 'src/utils'; + +export default class AssosUpdateReqDto { + @IsOptional() + @IsString() + @IsNotEmpty() + name?: string; + + @IsOptional() + @IsString() + @IsNotEmpty() + @IsUUID() + logo?: string; + + @IsOptional() + @ValidateNested() + @Type(() => TranslatedTextDto) + descriptionShort?: TranslatedTextDto; + + @IsOptional() + @ValidateNested() + @Type(() => TranslatedTextDto) + description?: TranslatedTextDto; + + @IsOptional() + @IsString() + @IsEmail() + email?: string; + + @IsOptional() + @IsString() + @IsPhoneNumber() + phoneNumber?: string; + + @IsOptional() + @IsString() + @IsUrl() + website?: string; +} diff --git a/src/config/config.module.ts b/src/config/config.module.ts index 614c5b39..75245e5e 100644 --- a/src/config/config.module.ts +++ b/src/config/config.module.ts @@ -31,6 +31,8 @@ export class ConfigModule { public readonly IS_PROD_ENV: boolean; public readonly TIMETABLE_URL: string; public readonly ANNAL_UPLOAD_DIR: string; + public readonly MEDIA_UPLOAD_DIR: string; + public readonly MEDIA_DETACHED_LIFESPAN: number; public readonly ETUUTT_WEBSITE_APPLICATION_ID: string; // DEV ENVIRONMENT ONLY @@ -49,10 +51,13 @@ export class ConfigModule { this.LDAP_USER = config.get('LDAP_USER'); this.LDAP_PWD = config.get('LDAP_PWD'); this.ANNAL_UPLOAD_DIR = config.get('ANNAL_UPLOAD_DIR'); + this.MEDIA_UPLOAD_DIR = config.get('MEDIA_UPLOAD_DIR'); + this.MEDIA_DETACHED_LIFESPAN = Number(config.get('MEDIA_DETACHED_LIFESPAN')); this.IS_PROD_ENV = isProdEnv; this.TIMETABLE_URL = config.get('TIMETABLE_URL'); if (this.ANNAL_UPLOAD_DIR.endsWith('/')) this.ANNAL_UPLOAD_DIR = this.ANNAL_UPLOAD_DIR.slice(0, -1); + if (this.MEDIA_UPLOAD_DIR.endsWith('/')) this.MEDIA_UPLOAD_DIR = this.MEDIA_UPLOAD_DIR.slice(0, -1); this.ETUUTT_WEBSITE_APPLICATION_ID = config.get('ETUUTT_WEBSITE_APPLICATION_ID'); this._FAKER_SEED = isTestEnv ? Number(config.get('FAKER_SEED')) : undefined; diff --git a/src/exceptions.ts b/src/exceptions.ts index 28c17707..f8296ea2 100644 --- a/src/exceptions.ts +++ b/src/exceptions.ts @@ -40,6 +40,7 @@ export const enum ERROR_CODE { BODY_MISSING = 2022, PARAM_PAST_DATE = 2023, PARAM_MISSING_EITHER = 2024, + PARAM_LEXICAL_ILLEGAL = 2101, PARAM_DOES_NOT_MATCH_REGEX = 2102, NO_FIELD_PROVIDED = 2201, WIDGET_OVERLAPPING = 2301, @@ -68,6 +69,8 @@ export const enum ERROR_CODE { NOT_ALREADY_DONE_UEOF = 4229, APPLICATION_NOT_OWNED = 4230, USER_ALREADY_ASSO_ROLE_MEMBER = 4231, + MEDIA_NOT_PUBLIC = 4232, + MEDIA_PRESET_REQUIRED = 4233, NO_SUCH_UE = 4401, NO_SUCH_COMMENT = 4402, NO_SUCH_REPLY = 4403, @@ -84,11 +87,13 @@ export const enum ERROR_CODE { NO_SUCH_UE_AT_SEMESTER = 4414, NO_SUCH_ASSO_ROLE = 4415, NO_SUCH_ASSO_MEMBERSHIP = 4416, + NO_SUCH_MEDIA = 4417, ANNAL_ALREADY_UPLOADED = 4901, RESOURCE_UNAVAILABLE = 4902, RESOURCE_INVALID_TYPE = 4903, ASSO_ROLE_ALREADY_MOVED = 4904, CREDENTIALS_ALREADY_TAKEN = 5001, + SERVER_DISK_ERROR = 8001, HIDDEN_DUCK = 9999, } @@ -206,6 +211,10 @@ export const ErrorData = Object.freeze({ message: 'One of these parameters must be provided: %', httpCode: HttpStatus.BAD_REQUEST, }, + [ERROR_CODE.PARAM_LEXICAL_ILLEGAL]: { + message: 'Content has a wrong syntax: %', + httpCode: HttpStatus.BAD_REQUEST, + }, [ERROR_CODE.PARAM_DOES_NOT_MATCH_REGEX]: { message: 'The following parameters must match the regex "%": %', httpCode: HttpStatus.BAD_REQUEST, @@ -318,6 +327,14 @@ export const ErrorData = Object.freeze({ message: 'User is already member of this role: %', httpCode: HttpStatus.CONFLICT, }, + [ERROR_CODE.MEDIA_NOT_PUBLIC]: { + message: 'Media must be public', + httpCode: HttpStatus.FORBIDDEN, + }, + [ERROR_CODE.MEDIA_PRESET_REQUIRED]: { + message: 'Media must have preset %', + httpCode: HttpStatus.FORBIDDEN, + }, [ERROR_CODE.NO_SUCH_UE]: { message: 'The UE % does not exist', httpCode: HttpStatus.NOT_FOUND, @@ -382,6 +399,10 @@ export const ErrorData = Object.freeze({ message: 'No such membership in asso: %', httpCode: HttpStatus.NOT_FOUND, }, + [ERROR_CODE.NO_SUCH_MEDIA]: { + message: 'No such media: %', + httpCode: HttpStatus.NOT_FOUND, + }, [ERROR_CODE.ANNAL_ALREADY_UPLOADED]: { message: 'A file has alreay been uploaded for this annal', httpCode: HttpStatus.CONFLICT, @@ -402,6 +423,10 @@ export const ErrorData = Object.freeze({ message: 'You should not try to update role position simultaneously', httpCode: HttpStatus.CONFLICT, }, + [ERROR_CODE.SERVER_DISK_ERROR]: { + message: 'An error occurred while accessing the server disk', + httpCode: HttpStatus.SERVICE_UNAVAILABLE, + }, [ERROR_CODE.HIDDEN_DUCK]: { message: 'Hey, you found the hidden duck ! Error : %', httpCode: HttpStatus.I_AM_A_TEAPOT, diff --git a/src/media/image/dto/req/imagemedia-upload-req.dto.ts b/src/media/image/dto/req/imagemedia-upload-req.dto.ts new file mode 100644 index 00000000..cbe48c42 --- /dev/null +++ b/src/media/image/dto/req/imagemedia-upload-req.dto.ts @@ -0,0 +1,44 @@ +import { ImageMediaPreset } from '@prisma/client'; +import { IsBoolean, IsEnum, IsInt, IsOptional, IsString, Max, Min } from 'class-validator'; + +export default class ImageMediaUploadReqDto { + @IsOptional() + @IsInt() + @Min(100) + @Max(1920) + width?: number; + + @IsOptional() + @IsInt() + @Min(100) + @Max(1080) + height?: number; + + @IsOptional() + @IsInt() + @Min(1) + @Max(100) + quality?: number; + + @IsOptional() + @IsInt() + @Min(0) + @Max(6) + effort?: number; + + @IsOptional() + @IsInt() + @Min(0) + @Max(3) + rotation?: 0 | 1 | 2 | 3; + + @IsOptional() + @IsString() + @IsEnum(ImageMediaPreset) + preset?: ImageMediaPreset; + + /** By default, images are NOT public and only accessible to logged users. */ + @IsOptional() + @IsBoolean() + public?: boolean; +} diff --git a/src/media/image/dto/res/imagemedia-upload-res.dto.ts b/src/media/image/dto/res/imagemedia-upload-res.dto.ts new file mode 100644 index 00000000..05765717 --- /dev/null +++ b/src/media/image/dto/res/imagemedia-upload-res.dto.ts @@ -0,0 +1,10 @@ +import { ImageMediaPreset } from '@prisma/client'; + +export default class ImageMediaUploadResDto { + id: string; + width: number; + height: number; + size: number; + isPublic: boolean; + preset: ImageMediaPreset; +} diff --git a/src/media/image/imagemedia.controller.ts b/src/media/image/imagemedia.controller.ts new file mode 100644 index 00000000..c255abcc --- /dev/null +++ b/src/media/image/imagemedia.controller.ts @@ -0,0 +1,66 @@ +import { Controller, Get, Post, Query, Response } from '@nestjs/common'; +import { ApiConsumes, ApiCreatedResponse, ApiOkResponse, ApiOperation, ApiTags } from '@nestjs/swagger'; +import { Response as ExpressResponse } from 'express'; +import { FileSize, MulterWithMime, UploadRoute, UserFile } from '../../upload.interceptor'; +import { GetUser, IsPublic, RequireApiPermission } from '../../auth/decorator'; +import { AppException, ERROR_CODE } from '../../exceptions'; +import { ApiAppErrorResponse } from '../../app.dto'; +import { ImageMediaService } from './imagemedia.service'; +import { UUIDParam } from '../../app.pipe'; +import { omit } from '../../utils'; +import { User } from '../../users/interfaces/user.interface'; +import ImageMediaUploadReqDto from './dto/req/imagemedia-upload-req.dto'; +import ImageMediaUploadResDto from './dto/res/imagemedia-upload-res.dto'; + +@Controller('media/image') +@ApiTags('Media') +export class ImageMediaController { + constructor(readonly imageMediaService: ImageMediaService) {} + + @Get('/:mediaId') + @IsPublic() + @ApiOperation({ description: 'Retrieve a media by its id.' }) + @ApiOkResponse({ description: 'The media is contained in the body of the response' }) + @ApiAppErrorResponse(ERROR_CODE.NO_SUCH_MEDIA, 'There is no media with the given id') + @ApiAppErrorResponse(ERROR_CODE.NOT_LOGGED_IN, 'This media is not public and requires authentication') + @ApiAppErrorResponse(ERROR_CODE.SERVER_DISK_ERROR, 'An error occurred while reading from disk') + async getMedia(@UUIDParam('mediaId') mediaId: string, @GetUser() user: User, @Response() response: ExpressResponse) { + const media = await this.imageMediaService.getMedia(mediaId); + if (!media) throw new AppException(ERROR_CODE.NO_SUCH_MEDIA, mediaId); + if (!media.isPublic && !user) throw new AppException(ERROR_CODE.NOT_LOGGED_IN); + try { + const stream = this.imageMediaService.readMediaFromDisk(mediaId); + response.setHeader('Content-Type', 'image/webp'); + stream.pipe(response); + } catch { + throw new AppException(ERROR_CODE.SERVER_DISK_ERROR); + } + } + + @Post('/') + @RequireApiPermission('API_UPLOAD_MEDIA') + @UploadRoute('file') + @ApiConsumes('image/png', 'image/jpeg', 'image/webp', 'image/avif', 'image/tiff') + @ApiOperation({ description: 'Uploads a media and returns its id.' }) + @ApiCreatedResponse({ type: ImageMediaUploadResDto }) + @ApiAppErrorResponse(ERROR_CODE.FORBIDDEN_NOT_ENOUGH_API_PERMISSIONS, 'The permission is missing on the API key') + @ApiAppErrorResponse(ERROR_CODE.SERVER_DISK_ERROR, 'An error occurred while writing to disk') + async uploadMedia( + @UserFile(['image/png', 'image/jpeg', 'image/webp', 'image/avif', 'image/tiff'], 8 * FileSize.MegaByte) + file: Promise, + @GetUser() user: User, + @Query() options: ImageMediaUploadReqDto, + ): Promise { + const multer = await file; + const media = await this.imageMediaService.convertMedia(multer, options); + const savedMedia = await this.imageMediaService.registerMedia(media, user, options.public ?? false); + try { + this.imageMediaService.writeMediaToDisk(savedMedia.id, multer.multer.buffer); + } catch { + this.imageMediaService.unRegisterMedia(savedMedia.id); + throw new AppException(ERROR_CODE.SERVER_DISK_ERROR); + } + this.imageMediaService.cleanup(); + return omit(savedMedia, 'uploaderId', 'uploadedAt'); + } +} diff --git a/src/media/image/imagemedia.module.ts b/src/media/image/imagemedia.module.ts new file mode 100644 index 00000000..22554c69 --- /dev/null +++ b/src/media/image/imagemedia.module.ts @@ -0,0 +1,9 @@ +import { Module } from '@nestjs/common'; +import { ImageMediaController } from './imagemedia.controller'; +import { ImageMediaService } from './imagemedia.service'; + +@Module({ + controllers: [ImageMediaController], + providers: [ImageMediaService], +}) +export class ImageMediaModule {} diff --git a/src/media/image/imagemedia.service.ts b/src/media/image/imagemedia.service.ts new file mode 100644 index 00000000..4873fc72 --- /dev/null +++ b/src/media/image/imagemedia.service.ts @@ -0,0 +1,121 @@ +import { createReadStream, ReadStream } from 'fs'; +import { rm, writeFile } from 'fs/promises'; +import { Injectable } from '@nestjs/common'; +import { ImageMedia, ImageMediaPreset } from '@prisma/client'; +import { ConfigModule } from '../../config/config.module'; +import { PrismaService } from '../../prisma/prisma.service'; +import { MulterWithMime } from '../../upload.interceptor'; +import { User } from '../../users/interfaces/user.interface'; +import ImageMediaUploadReqDto from './dto/req/imagemedia-upload-req.dto'; +import sharp from 'sharp'; + +export type ConversionOptions = Omit; + +type PresetStruct = Record< + Exclude, + Omit +>; +const presets: PresetStruct = { + AVATAR: { width: 256, height: 256, quality: 70, effort: 5 }, +}; + +export type ImageMetadata = Omit; + +@Injectable() +export class ImageMediaService { + constructor( + readonly prisma: PrismaService, + readonly config: ConfigModule, + ) {} + + async convertMedia(file: MulterWithMime, options: ConversionOptions): Promise { + if (!(options.preset in presets)) options.preset = ImageMediaPreset.CUSTOM; + if (options.preset) Object.assign(options, presets[options.preset]); + let instructions = sharp(file.multer.buffer); + const metadata = await instructions.metadata(); + const size = [metadata.width, metadata.height]; + if (options.rotation) { + instructions = instructions.rotate(options.rotation * 90); + size.reverse(); + } + if (size[0] > 1920 && !options.width) options.width = 1920; + if (size[1] > 1080 && !options.height) options.height = 1080; + if (options.width && options.height) + instructions = instructions.resize(options.width, options.height, { fit: 'cover' }); + file.mime = 'image/webp'; + file.multer.buffer = await instructions + .webp({ + quality: options.quality, + effort: options.effort, + nearLossless: true, + smartSubsample: true, + alphaQuality: options.quality, + }) + .toBuffer(); + return { width: size[0], height: size[1], size: file.multer.buffer.length, preset: options.preset }; + } + + async registerMedia(metaData: ImageMetadata, uploader: User, isPublic: boolean): Promise { + const image = await this.prisma.imageMedia.create({ + data: { + ...metaData, + uploader: { + connect: { id: uploader.id }, + }, + isPublic, + }, + }); + return image; + } + + async rollbackMedia(media: ImageMedia): Promise { + await this.prisma.imageMedia.create({ data: media }); + } + + async unRegisterMedia(mediaId: string): Promise { + return this.prisma.imageMedia.delete({ where: { id: mediaId } }); + } + + async getMedia(mediaId: string) { + return this.prisma.imageMedia.findUnique({ where: { id: mediaId } }); + } + + /** + * Clears unused from the Database. {@link ImageMediaService.deleteMediaFromDisk DeleteMediaFromDisk} must be called + * with the output of this method to clear data from disk. + */ + async clearUnusedMedia(): Promise { + const targetMedias = await this.prisma.imageMedia.findMany({ + where: { + // Filter explanation https://www.prisma.io/docs/orm/prisma-client/queries/relation-queries#filter-on-absence-of--to-many-records + avatarForUsers: { none: {} }, + logoForAssos: { none: {} }, + descriptionForAssos: { none: {} }, + uploadedAt: { lt: new Date(Date.now() - this.config.MEDIA_DETACHED_LIFESPAN * 3_600_000) }, + }, + }); + await this.prisma.imageMedia.deleteMany({ + where: { id: { in: targetMedias.map((media) => media.id) } }, + }); + return targetMedias; + } + + async writeMediaToDisk(mediaId: string, buffer: Buffer): Promise { + await writeFile(`${this.config.MEDIA_UPLOAD_DIR}/image/${mediaId}.webp`, buffer); + } + + readMediaFromDisk(mediaId: string): ReadStream { + return createReadStream(`${this.config.MEDIA_UPLOAD_DIR}/image/${mediaId}.webp`); + } + + async deleteMediaFromDisk(mediaId: string): Promise { + await rm(`${this.config.MEDIA_UPLOAD_DIR}/image/${mediaId}.webp`, { force: true }); + } + + async cleanup() { + const media = await this.clearUnusedMedia(); + (await Promise.all(media.map((m) => this.deleteMediaFromDisk(m.id).catch(() => m)))).map( + (r) => r && this.rollbackMedia(r), + ); + } +} diff --git a/src/users/users.controller.ts b/src/users/users.controller.ts index 28062760..101b15cc 100644 --- a/src/users/users.controller.ts +++ b/src/users/users.controller.ts @@ -112,7 +112,8 @@ export default class UsersController { studentId: user.studentId, userType: user.userType, infos: { - ...pick(user.infos, 'nickname', 'avatar', 'nationality', 'passions', 'website'), + ...pick(user.infos, 'nickname', 'nationality', 'passions', 'website'), + avatar: user.infos.avatar ? `/media/image/${user.infos.avatar.id}.webp` : undefined, sex: user.privacy.sex || includeAll ? user.infos.sex : undefined, birthday: user.privacy.birthday || includeAll ? user.infos.birthday : undefined, }, @@ -153,7 +154,7 @@ export default class UsersController { lastName: user.lastName, nickname: user.infos.nickname, type: user.userType, - avatar: user.infos.avatar, + avatar: user.infos.avatar ? `/media/image/${user.infos.avatar.id}.webp` : undefined, sex: user.privacy.sex || includeAll ? user.infos.sex : undefined, nationality: user.infos.nationality, birthday: user.privacy.birthday || includeAll ? user.infos.birthday : undefined, diff --git a/src/users/users.service.ts b/src/users/users.service.ts index 8c039e40..c6061eb0 100644 --- a/src/users/users.service.ts +++ b/src/users/users.service.ts @@ -124,7 +124,14 @@ export default class UsersService { }, }, }) - ).map((membership) => ({ ...omit(membership, 'role'), role: membership.role.name })); + ).map((membership) => ({ + ...omit(membership, 'role'), + role: membership.role.name, + asso: { + ...membership.asso, + logo: membership.asso.logo ? `/media/image/${membership.asso.logo.id}.webp` : undefined, + }, + })); return membership; } @@ -135,7 +142,7 @@ export default class UsersService { infos: { update: { nickname: dto.nickname, - avatar: dto.avatar, + avatar: { connect: dto.avatar ? { id: dto.avatar } : undefined }, passions: dto.passions, website: dto.website, }, diff --git a/src/utils.ts b/src/utils.ts index 8e468be3..d80eb033 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -1,4 +1,6 @@ +import { IsNotEmpty, IsOptional, IsString } from 'class-validator'; import { Language, Permission } from '@prisma/client'; +import { createEditor } from 'lexical'; import { Translation } from './prisma/types'; import { ApiPermission, UserPermission } from './auth/interfaces/permissions.interface'; @@ -57,6 +59,29 @@ export const translationSelect = { }, }; +export class TranslatedTextDto { + @IsOptional() + @IsString() + @IsNotEmpty() + fr?: string; + @IsOptional() + @IsString() + @IsNotEmpty() + en?: string; + @IsOptional() + @IsString() + @IsNotEmpty() + de?: string; + @IsOptional() + @IsString() + @IsNotEmpty() + es?: string; + @IsOptional() + @IsString() + @IsNotEmpty() + zh?: string; +} + export class PermissionManager { public readonly hardPermissions: Permission[]; public readonly softPermissions: { @@ -96,3 +121,15 @@ export class PermissionManager { return this; } } + +export function isValidLexicalContent(userInput: string) { + try { + const editor = createEditor(); + const parsed = JSON.parse(userInput); + const editorState = editor.parseEditorState(parsed); + editorState.read(() => {}); + return true; + } catch { + return false; + } +} From cc8b02fcd19d7b0039b89a9f38c339c9b898269e Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Thu, 16 Oct 2025 19:02:19 +0200 Subject: [PATCH 02/18] feat(asso): add media connection for asso descriptions --- src/assos/assos.service.ts | 39 +++++++++++++++++++++++++++++++++++++- tsconfig.json | 6 +++--- 2 files changed, 41 insertions(+), 4 deletions(-) diff --git a/src/assos/assos.service.ts b/src/assos/assos.service.ts index 9375a7f4..52b51929 100644 --- a/src/assos/assos.service.ts +++ b/src/assos/assos.service.ts @@ -83,7 +83,7 @@ export class AssosService { } async updateAsso(assoId: string, update: AssosUpdateReqDto): Promise { - return this.prisma.normalize.asso.update({ + const updated = await this.prisma.normalize.asso.update({ where: { id: assoId }, data: { ...(update.name ? { name: update.name } : {}), @@ -95,6 +95,43 @@ export class AssosService { ...(update.website ? { website: update.website } : {}), }, }); + if (update.description || update.descriptionShort) { + // Cleanup unused images + const regex = /"src": "https:\/\/[^"]+\/media\/image\/([^/]+)\.webp"/g; + const imagesInUse = new Set(); + for (const field in updated.descriptionTranslation) + for (const match of (updated.descriptionTranslation[field]).matchAll(regex)) imagesInUse.add(match[1]); + for (const field in updated.descriptionShortTranslation) + for (const match of (updated.descriptionShortTranslation[field]).matchAll(regex)) + imagesInUse.add(match[1]); + const currentImages = new Set( + ( + await this.prisma.imageMedia.findMany({ + where: { descriptionForAssos: { some: { id: assoId } } }, + select: { id: true }, + }) + ).map((m) => m.id), + ); + const deletions = currentImages.difference(imagesInUse); + const additions = imagesInUse.difference(currentImages); + if (deletions.size > 0 || additions.size > 0) + // don't wait for this to complete + this.prisma.$transaction([ + ...Array.from(deletions).map((id) => + this.prisma.imageMedia.update({ + where: { id }, + data: { descriptionForAssos: { disconnect: { id: assoId } } }, + }), + ), + ...Array.from(additions).map((id) => + this.prisma.imageMedia.update({ + where: { id }, + data: { descriptionForAssos: { connect: { id: assoId } } }, + }), + ), + ]); + } + return updated; } async getAssoMembers(assoId: string): Promise { diff --git a/tsconfig.json b/tsconfig.json index e3d90c59..12c388d5 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -6,7 +6,7 @@ "emitDecoratorMetadata": true, "experimentalDecorators": true, "allowSyntheticDefaultImports": true, - "target": "ES2022", + "target": "esnext", "sourceMap": true, "outDir": "./dist", "baseUrl": "./", @@ -18,9 +18,9 @@ "forceConsistentCasingInFileNames": true, "noFallthroughCasesInSwitch": false, "esModuleInterop": true, - "resolveJsonModule": true, + "resolveJsonModule": true }, "ts-node": { "files": true - }, + } } From 942e6b34f73774d636bfa0ad6d4e2725fb5f09e9 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Fri, 17 Oct 2025 00:52:17 +0200 Subject: [PATCH 03/18] tests: add tests for new routes --- prisma/schema.prisma | 4 +- src/app.module.ts | 2 +- src/assos/assos.controller.ts | 4 +- src/assos/assos.module.ts | 2 + src/assos/assos.service.ts | 21 ++- src/assos/dto/req/assos-update-req.dto.ts | 2 +- .../dto/req/imagemedia-upload-req.dto.ts | 7 + src/media/image/imagemedia.controller.ts | 19 +- src/media/image/imagemedia.module.ts | 1 + src/media/image/imagemedia.service.ts | 22 +-- src/prisma/types.ts | 1 + src/users/users.controller.ts | 4 +- src/users/users.service.ts | 2 +- src/utils.ts | 4 +- test/declarations.d.ts | 10 +- test/declarations.ts | 27 ++- test/e2e/app.e2e-spec.ts | 2 + test/e2e/assos/index.ts | 2 + test/e2e/assos/update-asso.e2e-spec.ts | 178 ++++++++++++++++++ test/e2e/media/image/artifacts/image.avif | Bin 0 -> 12921 bytes test/e2e/media/image/artifacts/image.gif | Bin 0 -> 61429 bytes test/e2e/media/image/artifacts/image.gif.png | Bin 0 -> 61429 bytes test/e2e/media/image/artifacts/image.jpg | Bin 0 -> 67625 bytes test/e2e/media/image/artifacts/image.png | Bin 0 -> 286092 bytes test/e2e/media/image/artifacts/image.tif | Bin 0 -> 447099 bytes test/e2e/media/image/artifacts/image.webp | Bin 0 -> 20780 bytes test/e2e/media/image/get-media.e2e-spec.ts | 56 ++++++ test/e2e/media/image/upload-media.e2e-spec.ts | 140 ++++++++++++++ test/e2e/media/index.ts | 10 + test/e2e/users/get-user_assos-e2e-spec.ts | 1 + test/e2e/users/update-profile-e2e-spec.ts | 2 +- test/utils/fakedb.ts | 21 ++- test/utils/test_utils.ts | 47 +---- tsconfig.json | 2 +- 34 files changed, 504 insertions(+), 89 deletions(-) create mode 100644 test/e2e/assos/update-asso.e2e-spec.ts create mode 100644 test/e2e/media/image/artifacts/image.avif create mode 100644 test/e2e/media/image/artifacts/image.gif create mode 100644 test/e2e/media/image/artifacts/image.gif.png create mode 100644 test/e2e/media/image/artifacts/image.jpg create mode 100644 test/e2e/media/image/artifacts/image.png create mode 100644 test/e2e/media/image/artifacts/image.tif create mode 100644 test/e2e/media/image/artifacts/image.webp create mode 100644 test/e2e/media/image/get-media.e2e-spec.ts create mode 100644 test/e2e/media/image/upload-media.e2e-spec.ts create mode 100644 test/e2e/media/index.ts diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 8d81df62..45c75eb1 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -171,10 +171,10 @@ model ImageMedia { height Int @db.UnsignedInt uploadedAt DateTime @default(now()) isPublic Boolean @default(false) - uploaderId String + uploaderId String? preset ImageMediaPreset - uploader User @relation(fields: [uploaderId], references: [id]) + uploader User? @relation(fields: [uploaderId], references: [id]) avatarForUsers UserInfos[] logoForAssos Asso[] @relation("logo") descriptionForAssos Asso[] @relation("descriptionImages") diff --git a/src/app.module.ts b/src/app.module.ts index 3fe04211..532dab92 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -22,6 +22,7 @@ import { ImageMediaModule } from './media/image/imagemedia.module'; ConfigModule, HttpModule, PrismaModule, + ImageMediaModule, SemesterModule, AuthModule, ProfileModule, @@ -30,7 +31,6 @@ import { ImageMediaModule } from './media/image/imagemedia.module'; TimetableModule, BranchModule, AssosModule, - ImageMediaModule, ], // The providers below are used for all the routes of the api. // For example, the JwtGuard is used for all the routes and checks whether the user is authenticated. diff --git a/src/assos/assos.controller.ts b/src/assos/assos.controller.ts index 37717bf6..375f9ed9 100644 --- a/src/assos/assos.controller.ts +++ b/src/assos/assos.controller.ts @@ -81,10 +81,10 @@ export class AssosController { if (!(await this.assosService.hasSomeAssoPermission(asso, user.id, 'manage_infos'))) throw new AppException(ERROR_CODE.FORBIDDEN_ASSOS_PERMISSIONS, asso.id, 'manage_infos'); for (const key in body.description) - if (!isValidLexicalContent(body.description[key])) + if (body.description[key] && !isValidLexicalContent(body.description[key])) throw new AppException(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, `description.${key}`); for (const key in body.descriptionShort) - if (!isValidLexicalContent(body.descriptionShort[key])) + if (body.descriptionShort[key] && !isValidLexicalContent(body.descriptionShort[key])) throw new AppException(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, `descriptionShort.${key}`); if (body.logo) { const media = await this.mediaService.getMedia(body.logo); diff --git a/src/assos/assos.module.ts b/src/assos/assos.module.ts index bd02ca10..3c442841 100644 --- a/src/assos/assos.module.ts +++ b/src/assos/assos.module.ts @@ -1,6 +1,7 @@ import { Module } from '@nestjs/common'; import { AssosController } from './assos.controller'; import { AssosService } from './assos.service'; +import { ImageMediaModule } from '../media/image/imagemedia.module'; import UsersService from '../users/users.service'; /** @@ -10,5 +11,6 @@ import UsersService from '../users/users.service'; @Module({ controllers: [AssosController], providers: [AssosService, UsersService], + imports: [ImageMediaModule], }) export class AssosModule {} diff --git a/src/assos/assos.service.ts b/src/assos/assos.service.ts index 52b51929..3bef6f1d 100644 --- a/src/assos/assos.service.ts +++ b/src/assos/assos.service.ts @@ -97,7 +97,7 @@ export class AssosService { }); if (update.description || update.descriptionShort) { // Cleanup unused images - const regex = /"src": "https:\/\/[^"]+\/media\/image\/([^/]+)\.webp"/g; + const regex = /"src":"https:\/\/[^"]+\/media\/image\/([^/]+)\.webp"/g; const imagesInUse = new Set(); for (const field in updated.descriptionTranslation) for (const match of (updated.descriptionTranslation[field]).matchAll(regex)) imagesInUse.add(match[1]); @@ -112,18 +112,25 @@ export class AssosService { }) ).map((m) => m.id), ); - const deletions = currentImages.difference(imagesInUse); - const additions = imagesInUse.difference(currentImages); - if (deletions.size > 0 || additions.size > 0) - // don't wait for this to complete - this.prisma.$transaction([ + const deletions = [...currentImages].filter((x) => !imagesInUse.has(x)); + const additions = [...imagesInUse].filter((x) => !currentImages.has(x)); + const existingAdditionIds = new Set( + ( + await this.prisma.imageMedia.findMany({ + where: { id: { in: additions } }, + select: { id: true }, + }) + ).map((m) => m.id), + ); + if (deletions.length > 0 || additions.length > 0) + await this.prisma.$transaction([ ...Array.from(deletions).map((id) => this.prisma.imageMedia.update({ where: { id }, data: { descriptionForAssos: { disconnect: { id: assoId } } }, }), ), - ...Array.from(additions).map((id) => + ...Array.from(additions.filter((x) => existingAdditionIds.has(x))).map((id) => this.prisma.imageMedia.update({ where: { id }, data: { descriptionForAssos: { connect: { id: assoId } } }, diff --git a/src/assos/dto/req/assos-update-req.dto.ts b/src/assos/dto/req/assos-update-req.dto.ts index 7bf9c1b7..c962cce3 100644 --- a/src/assos/dto/req/assos-update-req.dto.ts +++ b/src/assos/dto/req/assos-update-req.dto.ts @@ -9,7 +9,7 @@ import { IsUUID, ValidateNested, } from 'class-validator'; -import { TranslatedTextDto } from 'src/utils'; +import { TranslatedTextDto } from '../../../utils'; export default class AssosUpdateReqDto { @IsOptional() diff --git a/src/media/image/dto/req/imagemedia-upload-req.dto.ts b/src/media/image/dto/req/imagemedia-upload-req.dto.ts index cbe48c42..ed1d6e8e 100644 --- a/src/media/image/dto/req/imagemedia-upload-req.dto.ts +++ b/src/media/image/dto/req/imagemedia-upload-req.dto.ts @@ -1,4 +1,5 @@ import { ImageMediaPreset } from '@prisma/client'; +import { Type } from 'class-transformer'; import { IsBoolean, IsEnum, IsInt, IsOptional, IsString, Max, Min } from 'class-validator'; export default class ImageMediaUploadReqDto { @@ -6,30 +7,35 @@ export default class ImageMediaUploadReqDto { @IsInt() @Min(100) @Max(1920) + @Type(() => Number) width?: number; @IsOptional() @IsInt() @Min(100) @Max(1080) + @Type(() => Number) height?: number; @IsOptional() @IsInt() @Min(1) @Max(100) + @Type(() => Number) quality?: number; @IsOptional() @IsInt() @Min(0) @Max(6) + @Type(() => Number) effort?: number; @IsOptional() @IsInt() @Min(0) @Max(3) + @Type(() => Number) rotation?: 0 | 1 | 2 | 3; @IsOptional() @@ -40,5 +46,6 @@ export default class ImageMediaUploadReqDto { /** By default, images are NOT public and only accessible to logged users. */ @IsOptional() @IsBoolean() + @Type(() => Boolean) public?: boolean; } diff --git a/src/media/image/imagemedia.controller.ts b/src/media/image/imagemedia.controller.ts index c255abcc..0fb0d723 100644 --- a/src/media/image/imagemedia.controller.ts +++ b/src/media/image/imagemedia.controller.ts @@ -28,13 +28,14 @@ export class ImageMediaController { const media = await this.imageMediaService.getMedia(mediaId); if (!media) throw new AppException(ERROR_CODE.NO_SUCH_MEDIA, mediaId); if (!media.isPublic && !user) throw new AppException(ERROR_CODE.NOT_LOGGED_IN); - try { - const stream = this.imageMediaService.readMediaFromDisk(mediaId); - response.setHeader('Content-Type', 'image/webp'); - stream.pipe(response); - } catch { - throw new AppException(ERROR_CODE.SERVER_DISK_ERROR); - } + const stream = this.imageMediaService.readMediaFromDisk(mediaId); + response.setHeader('Content-Type', 'image/webp'); + stream.pipe(response); + stream.on('error', () => { + stream.close(); + const exception = new AppException(ERROR_CODE.SERVER_DISK_ERROR); + response.status(exception.getStatus()).json(exception.getResponse()); + }); } @Post('/') @@ -55,9 +56,9 @@ export class ImageMediaController { const media = await this.imageMediaService.convertMedia(multer, options); const savedMedia = await this.imageMediaService.registerMedia(media, user, options.public ?? false); try { - this.imageMediaService.writeMediaToDisk(savedMedia.id, multer.multer.buffer); + await this.imageMediaService.writeMediaToDisk(savedMedia.id, multer.multer.buffer); } catch { - this.imageMediaService.unRegisterMedia(savedMedia.id); + await this.imageMediaService.unRegisterMedia(savedMedia.id); throw new AppException(ERROR_CODE.SERVER_DISK_ERROR); } this.imageMediaService.cleanup(); diff --git a/src/media/image/imagemedia.module.ts b/src/media/image/imagemedia.module.ts index 22554c69..a3978240 100644 --- a/src/media/image/imagemedia.module.ts +++ b/src/media/image/imagemedia.module.ts @@ -5,5 +5,6 @@ import { ImageMediaService } from './imagemedia.service'; @Module({ controllers: [ImageMediaController], providers: [ImageMediaService], + exports: [ImageMediaService], }) export class ImageMediaModule {} diff --git a/src/media/image/imagemedia.service.ts b/src/media/image/imagemedia.service.ts index 4873fc72..f5b714ef 100644 --- a/src/media/image/imagemedia.service.ts +++ b/src/media/image/imagemedia.service.ts @@ -32,7 +32,7 @@ export class ImageMediaService { if (!(options.preset in presets)) options.preset = ImageMediaPreset.CUSTOM; if (options.preset) Object.assign(options, presets[options.preset]); let instructions = sharp(file.multer.buffer); - const metadata = await instructions.metadata(); + let metadata = await instructions.metadata(); const size = [metadata.width, metadata.height]; if (options.rotation) { instructions = instructions.rotate(options.rotation * 90); @@ -43,16 +43,16 @@ export class ImageMediaService { if (options.width && options.height) instructions = instructions.resize(options.width, options.height, { fit: 'cover' }); file.mime = 'image/webp'; - file.multer.buffer = await instructions - .webp({ - quality: options.quality, - effort: options.effort, - nearLossless: true, - smartSubsample: true, - alphaQuality: options.quality, - }) - .toBuffer(); - return { width: size[0], height: size[1], size: file.multer.buffer.length, preset: options.preset }; + instructions = instructions.webp({ + quality: options.quality, + effort: options.effort, + nearLossless: true, + smartSubsample: true, + alphaQuality: options.quality, + }); + file.multer.buffer = await instructions.toBuffer(); + metadata = await sharp(file.multer.buffer).metadata(); + return { width: metadata.width, height: metadata.height, size: file.multer.buffer.length, preset: options.preset }; } async registerMedia(metaData: ImageMetadata, uploader: User, isPublic: boolean): Promise { diff --git a/src/prisma/types.ts b/src/prisma/types.ts index c29ba04c..b52bd894 100644 --- a/src/prisma/types.ts +++ b/src/prisma/types.ts @@ -37,6 +37,7 @@ export { UserPrivacy as RawUserPrivacy, ApiApplication as RawApiApplication, ApiKey as RawApiKey, + ImageMedia as RawImageMedia, } from '@prisma/client'; export { RawTranslation }; diff --git a/src/users/users.controller.ts b/src/users/users.controller.ts index 101b15cc..ca890110 100644 --- a/src/users/users.controller.ts +++ b/src/users/users.controller.ts @@ -113,7 +113,7 @@ export default class UsersController { userType: user.userType, infos: { ...pick(user.infos, 'nickname', 'nationality', 'passions', 'website'), - avatar: user.infos.avatar ? `/media/image/${user.infos.avatar.id}.webp` : undefined, + avatar: user.infos.avatar ? `/media/image/${user.infos.avatar.id}.webp` : null, sex: user.privacy.sex || includeAll ? user.infos.sex : undefined, birthday: user.privacy.birthday || includeAll ? user.infos.birthday : undefined, }, @@ -154,7 +154,7 @@ export default class UsersController { lastName: user.lastName, nickname: user.infos.nickname, type: user.userType, - avatar: user.infos.avatar ? `/media/image/${user.infos.avatar.id}.webp` : undefined, + avatar: user.infos.avatar ? `/media/image/${user.infos.avatar.id}.webp` : null, sex: user.privacy.sex || includeAll ? user.infos.sex : undefined, nationality: user.infos.nationality, birthday: user.privacy.birthday || includeAll ? user.infos.birthday : undefined, diff --git a/src/users/users.service.ts b/src/users/users.service.ts index c6061eb0..c7489920 100644 --- a/src/users/users.service.ts +++ b/src/users/users.service.ts @@ -129,7 +129,7 @@ export default class UsersService { role: membership.role.name, asso: { ...membership.asso, - logo: membership.asso.logo ? `/media/image/${membership.asso.logo.id}.webp` : undefined, + logo: membership.asso.logo ? `/media/image/${membership.asso.logo.id}.webp` : null, }, })); return membership; diff --git a/src/utils.ts b/src/utils.ts index d80eb033..21d33a36 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -124,7 +124,9 @@ export class PermissionManager { export function isValidLexicalContent(userInput: string) { try { - const editor = createEditor(); + const editor = createEditor({ + onError: () => {}, // silent parsing errors + }); const parsed = JSON.parse(userInput); const editorState = editor.parseEditorState(parsed); editorState.read(() => {}); diff --git a/test/declarations.d.ts b/test/declarations.d.ts index bf412f0a..b585d0d5 100644 --- a/test/declarations.d.ts +++ b/test/declarations.d.ts @@ -7,6 +7,7 @@ import { FakeAssoMembership, FakeAssoMembershipPermission, FakeAssoMembershipRole, + FakeImageMedia, FakeUeAnnalType, FakeUeof, } from './utils/fakedb'; @@ -21,9 +22,11 @@ import { PermissionManager } from '../src/utils'; type JsonLikeVariant = Partial<{ [K in keyof T]: T[K] extends string | Date ? symbol | RegExp | T[K] - : T[K] extends (infer R)[] - ? JsonLikeVariant[] - : JsonLikeVariant; + : T[K] extends number + ? symbol | number + : T[K] extends (infer R)[] + ? JsonLikeVariant[] + : JsonLikeVariant; }>; type FakeUeWithOfs = FakeUe & { ueofs: FakeUeof[] }; @@ -104,6 +107,7 @@ declare module './declarations' { expectCreditCategories(categories: JsonLikeVariant): this; expectApplications(applications: FakeApiApplication[]): this; expectApplication(application: FakeApiApplication): this; + expectImageMedia(media: JsonLikeVariant): this; expectPermissions(permissions: PermissionManager): this; diff --git a/test/declarations.ts b/test/declarations.ts index 1d8e1f5f..93894d4e 100644 --- a/test/declarations.ts +++ b/test/declarations.ts @@ -15,12 +15,13 @@ import { FakeApiApplication, FakeAssoMembershipRole, FakeAssoMembership, + FakeImageMedia, } from './utils/fakedb'; import { UeAnnalFile } from 'src/ue/annals/interfaces/annal.interface'; import { ConfigModule } from '../src/config/config.module'; import { AppProvider, JsonLike } from './utils/test_utils'; import { getTranslation, omit, PermissionManager, pick } from '../src/utils'; -import { regex, string, uuid } from 'pactum-matchers'; +import { regex, string, uuid, int } from 'pactum-matchers'; import { Language } from '@prisma/client'; import { DEFAULT_APPLICATION } from '../prisma/seed/utils'; import ApplicationResDto from '../src/auth/application/dto/res/application-res.dto'; @@ -133,7 +134,10 @@ Spec.prototype.expectUsers = function (app: AppProvider, users: FakeUser[], coun return (this).expectStatus(HttpStatus.OK).$expectRegexableJson({ items: users.map((user) => ({ ...pick(user, 'id', 'firstName', 'lastName', 'login', 'studentId', 'userType'), - infos: pick(user.infos, 'nickname', 'avatar', 'nationality', 'passions', 'website'), + infos: { + ...pick(user.infos, 'nickname', 'nationality', 'passions', 'website'), + avatar: user.infos.avatarMediaId ? `/media/image/${user.infos.avatarMediaId}.webp` : null, + }, branchSubscriptions: user.branchSubscriptions.map((branch) => pick(branch, 'id')), mailsPhones: pick(user.mailsPhones, 'mailUTT'), socialNetwork: omit(user.socialNetwork, 'id', 'discord'), @@ -223,7 +227,8 @@ Spec.prototype.expectHomepageWidgets = function (this: Spec, widgets: Omit ({ - ...pick(asso, 'id', 'name', 'logo'), + ...pick(asso, 'id', 'name'), + logo: asso.logoMediaId ? `/media/image/${asso.logoMediaId}.webp` : null, shortDescription: getTranslation(asso.descriptionShortTranslation, (this).language), president: { role: !!asso.presidentRole ? pick(asso.presidentRole, 'id', 'name') : null, @@ -236,7 +241,8 @@ Spec.prototype.expectAssos = function (this: Spec, app: AppProvider, assos: Fake }; Spec.prototype.expectAsso = function (asso: FakeAsso) { return (this).expectStatus(HttpStatus.OK).expectJson({ - ...pick(asso, 'id', 'name', 'mail', 'phoneNumber', 'website', 'logo'), + ...pick(asso, 'id', 'name', 'mail', 'phoneNumber', 'website'), + logo: asso.logoMediaId ? `/media/image/${asso.logoMediaId}.webp` : null, description: getTranslation(asso.descriptionTranslation, (this).language), president: { role: !!asso.presidentRole ? pick(asso.presidentRole, 'id', 'name') : null, @@ -315,6 +321,16 @@ Spec.prototype.expectPermissions = function (permissions: PermissionManager) { .mappedSort((permission) => permission.permission), } satisfies PermissionsResDto); }; +Spec.prototype.expectImageMedia = function (media: JsonLikeVariant) { + return (this).expectStatus(HttpStatus.CREATED).$expectRegexableJson({ + id: media.id, + size: media.size, + width: media.width, + height: media.height, + preset: media.preset, + isPublic: media.isPublic, + }); +}; export { Spec, JsonLikeVariant, FakeUeWithOfs }; @@ -330,6 +346,8 @@ Spec.prototype.$expectRegexableJson = function (this: Spec, obj: JsonLikeVari return string(); case JsonLike.UUID: return uuid(); + case JsonLike.INT: + return int(); } } if (Array.isArray(obj)) return obj.map(wrap); @@ -362,6 +380,7 @@ function generateSchema(obj: JsonLikeVariant): object { ), }; if (obj === JsonLike.STRING || obj === JsonLike.UUID) return { type: 'string' }; + if (obj === JsonLike.INT) return { type: 'number' }; switch (typeof obj) { case 'string': return { type: 'string' }; diff --git a/test/e2e/app.e2e-spec.ts b/test/e2e/app.e2e-spec.ts index 4a16e08f..ffb1a38d 100644 --- a/test/e2e/app.e2e-spec.ts +++ b/test/e2e/app.e2e-spec.ts @@ -15,6 +15,7 @@ import * as cas from '../external_services/cas'; import * as timetableProvider from '../external_services/timetable'; import { ConfigModule } from '../../src/config/config.module'; import AssoE2ESpec from './assos'; +import MediaE2ESpec from './media'; describe('EtuUTT API e2e testing', () => { let app: INestApplication; @@ -54,4 +55,5 @@ describe('EtuUTT API e2e testing', () => { TimetableE2ESpec(() => app); // Deactivated, see function UeE2ESpec(() => app); AssoE2ESpec(() => app); + MediaE2ESpec(() => app); }); diff --git a/test/e2e/assos/index.ts b/test/e2e/assos/index.ts index 5ce31380..4948959c 100644 --- a/test/e2e/assos/index.ts +++ b/test/e2e/assos/index.ts @@ -1,6 +1,7 @@ import { INestApplication } from '@nestjs/common'; import SearchE2ESpec from './search.e2e-spec'; import GetAssoE2ESpec from './get-asso.e2e-spec'; +import UpdateAssoE2ESpec from './update-asso.e2e-spec'; import GetAssoMembersE2ESpec from './list-members.e2e-spec'; import AddAssoMemberE2ESpec from './add-member.e2e-spec'; import KickAssoMemberE2ESpec from './kick-member.e2e-spec'; @@ -13,6 +14,7 @@ export default function AssoE2ESpec(app: () => INestApplication) { describe('Assos', () => { SearchE2ESpec(app); GetAssoE2ESpec(app); + UpdateAssoE2ESpec(app); GetAssoMembersE2ESpec(app); AddAssoMemberE2ESpec(app); KickAssoMemberE2ESpec(app); diff --git a/test/e2e/assos/update-asso.e2e-spec.ts b/test/e2e/assos/update-asso.e2e-spec.ts new file mode 100644 index 00000000..0b5e85e5 --- /dev/null +++ b/test/e2e/assos/update-asso.e2e-spec.ts @@ -0,0 +1,178 @@ +import { Dummies, e2eSuite } from '../../utils/test_utils'; +import { + createAsso, + createAssoMembership, + createAssoMembershipPermission, + createAssoMembershipRole, + createImageMedia, + createUser, +} from '../../utils/fakedb'; +import * as pactum from 'pactum'; +import { ERROR_CODE } from '../../../src/exceptions'; +import { PrismaService } from '../../../src/prisma/prisma.service'; +import { pick } from '../../../src/utils'; + +const UpdateAssoE2ESpec = e2eSuite('PATCH /assos/:id', (app) => { + const userNotAllowed = createUser(app); + const userAllowed = createUser(app); + const asso = createAsso(app); + const assoMembershipRoleInAsso = createAssoMembershipRole(app, { asso }); + const manageInfosPermission = createAssoMembershipPermission(app, { id: 'manage_infos' }); + createAssoMembership(app, { + asso, + role: assoMembershipRoleInAsso, + user: userAllowed, + permissions: [manageInfosPermission], + }); + const nonPublicMedia = createImageMedia(app, { isPublic: false, preset: 'AVATAR' }); + const nonAvatarMedia = createImageMedia(app, { isPublic: true, preset: 'CUSTOM' }); + const publicMedia = createImageMedia(app, { isPublic: true, preset: 'AVATAR' }); + + const lexicalText = `{"editorState":{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"I want you as a ","type":"text","version":1},{"detail":0,"format":16,"mode":"normal","style":"","text":"lexical","type":"text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":" text that passes the ","type":"text","version":1},{"detail":0,"format":1,"mode":"normal","style":"","text":"tests","type":"text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":".","type":"text","version":1}],"direction":null,"format":"","indent":0,"type":"paragraph","version":1,"textFormat":0,"textStyle":""}],"direction":null,"format":"","indent":0,"type":"root","version":1}},"lastSaved":1760649655570,"source":"Playground","version":"0.37.0"}`; + const nonLexicalText = 'I want you as a non-lexical text that does not pass the tests.'; + const validBody = { + name: 'New name', + email: 'test@utt.fr', + phoneNumber: '+33325000000', + website: 'https://www.utt.fr', + description: { fr: lexicalText }, + descriptionShort: { fr: lexicalText }, + }; + + it('should return 403 as user is not authenticated', () => + pactum.spec().patch(`/assos/${asso.id}`).withBody(validBody).expectAppError(ERROR_CODE.NOT_LOGGED_IN)); + + it('should return a 400 as the asso id param is not valid', () => + pactum + .spec() + .withBearerToken(userNotAllowed.token) + .patch(`/assos/thisisnotavaliduuid`) + .withBody(validBody) + .expectAppError(ERROR_CODE.PARAM_NOT_UUID, 'assoId')); + + it('should return a 404 as asso is not found', () => + pactum + .spec() + .withBearerToken(userNotAllowed.token) + .patch(`/assos/${Dummies.UUID}`) + .withBody(validBody) + .expectAppError(ERROR_CODE.NO_SUCH_ASSO, Dummies.UUID)); + + it('should return a 403 as user has no permission', () => + pactum + .spec() + .withBearerToken(userNotAllowed.token) + .patch(`/assos/${asso.id}`) + .withBody(validBody) + .expectAppError(ERROR_CODE.FORBIDDEN_ASSOS_PERMISSIONS, asso.id, manageInfosPermission.id)); + + it('should return a 401 as description is non lexical', () => + pactum + .spec() + .withBearerToken(userAllowed.token) + .patch(`/assos/${asso.id}`) + .withBody({ ...validBody, description: { fr: nonLexicalText } }) + .expectAppError(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, 'description.fr')); + + it('should return a 401 as descriptionShort is non lexical', () => + pactum + .spec() + .withBearerToken(userAllowed.token) + .patch(`/assos/${asso.id}`) + .withBody({ ...validBody, descriptionShort: { fr: nonLexicalText } }) + .expectAppError(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, 'descriptionShort.fr')); + + it('should return a 404 as media does not exist', () => + pactum + .spec() + .withBearerToken(userAllowed.token) + .patch(`/assos/${asso.id}`) + .withBody({ ...validBody, logo: Dummies.UUID }) + .expectAppError(ERROR_CODE.NO_SUCH_MEDIA, Dummies.UUID)); + + it('should return a 404 as media is not public', () => + pactum + .spec() + .withBearerToken(userAllowed.token) + .patch(`/assos/${asso.id}`) + .withBody({ ...validBody, logo: nonPublicMedia.id }) + .expectAppError(ERROR_CODE.MEDIA_NOT_PUBLIC)); + + it('should return a 404 as media is not public', () => + pactum + .spec() + .withBearerToken(userAllowed.token) + .patch(`/assos/${asso.id}`) + .withBody({ ...validBody, logo: nonAvatarMedia.id }) + .expectAppError(ERROR_CODE.MEDIA_PRESET_REQUIRED, 'AVATAR')); + + it('should return a 404 as media is not public', () => + pactum + .spec() + .withBearerToken(userAllowed.token) + .patch(`/assos/${asso.id}`) + .withBody({ ...validBody, logo: nonAvatarMedia.id }) + .expectAppError(ERROR_CODE.MEDIA_PRESET_REQUIRED, 'AVATAR')); + + it('should update the asso', async () => { + await pactum + .spec() + .withBearerToken(userAllowed.token) + .patch(`/assos/${asso.id}`) + .withBody({ ...validBody, logo: publicMedia.id }) + .expectAsso({ + ...asso, + ...pick(validBody, 'name', 'phoneNumber', 'website'), + descriptionShortTranslation: validBody.descriptionShort, + descriptionTranslation: validBody.description, + mail: validBody.email, + logoMediaId: publicMedia.id, + }); + await app() + .get(PrismaService) + .asso.update({ + where: { id: asso.id }, + data: { + ...pick(asso, 'name', 'mail', 'phoneNumber', 'website'), + logo: { disconnect: true }, + descriptionTranslation: { update: validBody.description }, + descriptionShortTranslation: { update: validBody.descriptionShort }, + }, + }); + }); + + it('should update the asso and link media to description and ignore invalid media', async () => { + const lexicalTextWithImage = `{"editorState":{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"I want you as a ","type":"text","version":1},{"detail":0,"format":16,"mode":"normal","style":"","text":"lexical","type":"text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":" text that passes the ","type":"text","version":1},{"detail":0,"format":1,"mode":"normal","style":"","text":"tests","type":"text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":" with an image.","type":"text","version":1},{"type":"image","version":1,"altText":"","caption":{"editorState":{"root":{"children":[],"direction":null,"format":"","indent":0,"type":"root","version":1}}},"height":0,"maxWidth":500,"showCaption":false,"src":"https://localhost/media/image/${publicMedia.id}.webp","width":0},{"type":"image","version":1,"altText":"","caption":{"editorState":{"root":{"children":[],"direction":null,"format":"","indent":0,"type":"root","version":1}}},"height":0,"maxWidth":500,"showCaption":false,"src":"https://localhost/media/image/${Dummies.UUID}.webp","width":0}],"direction":null,"format":"","indent":0,"type":"paragraph","version":1,"textFormat":0,"textStyle":""}],"direction":null,"format":"","indent":0,"type":"root","version":1}},"lastSaved":1760652246225,"source":"Playground","version":"0.37.0"}`; + await pactum + .spec() + .withBearerToken(userAllowed.token) + .patch(`/assos/${asso.id}`) + .withBody({ ...validBody, description: { fr: lexicalTextWithImage }, logo: publicMedia.id }) + .expectAsso({ + ...asso, + ...pick(validBody, 'name', 'phoneNumber', 'website'), + descriptionShortTranslation: validBody.descriptionShort, + descriptionTranslation: { fr: lexicalTextWithImage }, + mail: validBody.email, + logoMediaId: publicMedia.id, + }); + const { descriptionImages } = await app() + .get(PrismaService) + .asso.findUnique({ where: { id: asso.id }, include: { descriptionImages: true } }); + expect(descriptionImages.length).toBe(1); + return app() + .get(PrismaService) + .asso.update({ + where: { id: asso.id }, + data: { + ...pick(asso, 'name', 'mail', 'phoneNumber', 'website'), + logo: { disconnect: true }, + descriptionImages: { disconnect: { id: publicMedia.id } }, + descriptionTranslation: { update: validBody.description }, + descriptionShortTranslation: { update: validBody.descriptionShort }, + }, + }); + }); +}); + +export default UpdateAssoE2ESpec; diff --git a/test/e2e/media/image/artifacts/image.avif b/test/e2e/media/image/artifacts/image.avif new file mode 100644 index 0000000000000000000000000000000000000000..3277d9cbe152f172b8a75054b66d2bc6981e79bf GIT binary patch literal 12921 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 OSr2o>I+f|C{{I7W)EM&s literal 0 HcmV?d00001 diff --git a/test/e2e/media/image/artifacts/image.gif b/test/e2e/media/image/artifacts/image.gif new file mode 100644 index 0000000000000000000000000000000000000000..0857f02846e89ab27ea457a9833989dca24ae0bc GIT binary patch literal 61429 zcmW(+Wmwbi*Z*#e2I&R~M|UHj(u|ZE-5mpI0Z~UcjBe=~1~EdqyCsIS0wSS^fS}Vo zzvut%T=#X(eLgSFx$l$OI$8?%oi0I_pkJJl002M%00saE06+l%1^}=CfcxJm6bitg z00Ii2pa2F6V4(o+f2>d#0D}Pt7=VHS7#M(s0l5FkLlFQB0U!_n3ISjc02Tq@{&y)9 z1;9`M0tKK@00sqMQ2_3LnxGf}h5-;50EGcC7yyd_aQ{;e#R4!afWQJMEP%lRSS*11 zA0{XcfZ+fH4nW}m3=Y8J0Nnorg+l>241gm5I0}Gc05}$a;{Z4Sg+rlm7!;0x!ckB- z1`5YQ;W#K9fWe_KI1C0yz~Cqt90P-6VQ?G_4j|xA1RREdBM@*D0**nzu?RR00S8cU zC<+ck!4W7p3I)fY;8+wKhk^qbI1~eiVc-Z19EE{nFmNmej>EtKEF6l3!?17!7LLNg zF<3Yj3&&yM01ght!C^Q!0tZLo;20bni-Y5EZ~#C<0W=IiBLFlCKw|(j7C_?wGyp|I zp=cNsjew$2P&5XL#zN6JC>nsFp)fQIhDN~9C>R<8Lt|lR91IO0&`<;#hCm|_XcPjC zL7=e+G!B6VP-rL$4MU+3C^QO%#-Pwx6dH#@0~jM&ZyH92$#5<8WvIz(WB%48S7*JPN>L z06Z4J;{ZGW#Y3TZ7!;3y;!#jM28zc*@i-_RfZ?GqJPd|M!0;#-9s|Q;VR#%24rEFOx*!?1V+7LUT>F<3kni^pN{01gku;bAyD0*6Q8@E9B(i^Jn^cy2to zp{ALsx~h?;l$Zno=s$zvzJ)*_04E^w9}WD!n*bzuK(D})8?`$SO+eRfG~r({98b;B z#jMaAmqN=VEf(yQ$)m}{t{M;V%B-Hqx@TIcA=pwgoiE`sRie{cJ6o&}G=v*(t(z}X zi6P_A#ndlW!Lo(yrZ5d3>I^7#MJ+3jms6MVO?G)jBHopdT*Mk#mtIy8dR=xWSNn1RAXG)^cV>U#)PV2jD??~*4PDIHA&a2bp z?z1k@B$_^rBOyuRavi*myrV7Oo9klOb@=kq6YAf575;3^c_lFpTYSb(*+Y-^61a$X z7oL)5!d9%xLuxA3d>baLE&NBH?!0&dC*cadrV%J}elcri7cf34Qyx4zfjv;Jeps4xGlYEj?{UrjpW^Llr>^?dUz;-YG+WJa%uI$u)G2$tG0 z2cH|3^$qQqxws7&xp|n7{&O-bXpG?@eqza60~}hL&UZ$-r%S%X%2qW%Bzzi@ZG9yG z_sOllYl8@Yue6S}*DMxQ911P^ioA$8eC0`oW{o2EF8HWZeJ$V++|;G(liIkQbL`af zTedo6c-7~7ug-%;H?`c0Zl2b%C{j^kUjG4AVj})j35?rw@+!Nvxnou|BAHd7QzTAF zAm%07y7>LCaGa1n=2K$+YmLf3Xw94U(~D_PPy;U< z^c9V*O*SP?efVOy=(>D;gny1c)o9Fllht6CwIxG z<{zyHf1OGbvM(6?nkV^F(lN-3!W$W-Y*zXl2k@SSp0o{-3WPepz0)Anb>A@6*7+p) zqpf}a;*?A_7PH{obb~E(hXoG9s6qhoIP%gzcAYh=pI@`&~aZFNN1yh%g0=Invc{5GkMrh(f=I zG@Wd3Q)_kf(wsj3qe|K4yv!MHe5OwfHmk69E*_GZw6&mf`qL7c&Cs>~QXuWArc!E#Mk^-ChXGYY@Mulo$Gw9<+i_c2wGn}Yun*0d zJwsy(M-%5Mj!<0>wVxd9eT1UnRRdrfV%6?|?|vk7Jk;DUQDQGiwdX>pz;6?hfdPKn z8rDXQBfpsZt}?@AX{rsTLMHNJe`KO?+Q3>~CEInQCDF#fi2zFFuJ?t<1J`@o$9&_f zvZ?oe1Qsm93Y4}Ac5_vPHe*{?`7~S(9~+k>5if)8i*$#4%(JYksm^uY3bXgEKIG?qM z|3JWWjwBqqjS74fWJV{sDe}aN%c*5Shbw#2k>XZ6m*X+?Hnrhr3H-I5Sfe9($!C=f z5+nI*RFUnj*HCnXgrcOcyngVY{3xkms`oP3=&atXj?6H~I;4aX;MWv97Tpoxe|)cJ zCv}%4TgC3w2p(LmzvkT@BcK;S!?G1lCI^!D4om~dS~4L87Gf1mD@dN#vL*@00U-H(1mXN+_hh+O#MkGwLu?4S~YD*lmf#E@JVhJ%!EDC8oga6Q(!_f|3wBW zDcYu|)8)Cf?Tkm{OXhe#4R`3~v2u#|c(K}Oi3>LWstZ|&8)}a#QD%1V(sLlAr*D68 z^_Bli=YW*|jK9s*fcbr0D{_T$5T(BwAvHVvz?mLR=?D;zEC6JWp0+H_o(C#fFWMT` zwN6x3zS^{^yLAglN|1b)97C7~yZtHs_G(*|#&YM|ne4mPkaE=(7$H*8sHyPul}fVo zBAvvq%DW3krWM|V5T*B>AKC_@g(db#rK12^F@T^15%pQ?3d{)vx%L;@QE!aY4EQ=F z_I8&rbX(z#A^e?#pHdDI0OeeNC0 zQtkz&F5j@Jm8ogOc@cT!bg_?pEBs6fRqtaBM{M)FK9fF)h^epb)FQVcle789*zMPQ zxPNkU>f!Xbe17DcVDpbZrmFl_T?_UyZR(WAL^2iAh7aFr@%9{~>vfV+gk84rvhQWl zfu?Qn>BnZ1UWR!?MJvd_TfG(B+wUL$9I`7`+3NhFrXA_nX=A{=BY0){`wmCn)q!+6 zXXj2?U^$r8KrFDr8YB#RHpn}FQ`HD~CtEm8+fu#93U3CaSnMw9H+9C6sz4x**TD`d z9mI+y%As{3uHp&d4&JY;wfRg- zPb|gnk2m!A^1E>C^L|mD)?yKWO5y0>#V&S};GUaMX@IX12QNZGG^ip-%(jYzlI`9ygW@r7w~U+@XrzVo;g zp60dk@ARi1C+i;HcbhMTOU?IaCqv$l`eX=fZE#9?HdIHnRwC}QZuVvJ`%?z{Bl(ah zCjY+n$cZl&FX8fLV*#JE0rGR-yB2|K<{>8SZVcxkbn$LQppC|KRJt+9^moS1b|B`(VB6UL2f=I&L zNHZ=Zd17#Lh`iY7!rYtrs$V;=EY9w@l>B{1?*_xIu;iK=D_-C*>y zmkXI8j1iG}Ci#n&i_iM<3oUa+OeB`x)zzmUfTmyD1}slVEPyaIiuKk&c4_)g;p<|P zJ7T9-pS=DYS!ofC^>|U77g`Y-Q2)y}M=r`kAfB!ha8dv?9KHC7lYO)UefdMniQ%IR z?j~*UkY9G;H!r+Go;}B==tQX__5_C7U8b}X>9`^x1*z)eDjG2V(N&)WtZCF3^09|R z;dlh43aDJ(k2^n&UH%341SC%@S)Dq%Mj@TfJ((^(nGTy=l;B8KYq=`>bSKtZc2TxN zJBE8zwkYmd-%W-(w+F$<%dw8w)J_m&E!A)$5%n}xlO#N2BC=gJiK599T3E6MS2C?Y*6aE#_^Q`C&j^ZD%PMoL_WGxanHk6UoD6;tN|}Xz z92(}cXRXK=n_Pg>NJMFn_@^^vf}SQC7I?hKm1i(AurG*vGm%Bm1hJG$=UvbIYU%Y! z0U+m!_f$yFm5Xw_$%W^IIIV>;>_UW?+;e50KF?1vqknQ1n#-!>UKRpjSGDL|%bayr)jQvrc+tn3p;-uhcw!^DxTC zDgt5zl$+Z+6S=d68U_nEhZm-7!#SR>=TBdV&vYh&>m#RbinRp&rw&ns2}tnMk`EJ# zCSGZ)Fi^f$G68kbzCct%L9Vkv>8G2L`S*Yt7vRhiU7D0GfFBRwO>pDsh`&Sa{mINb z-OW2N?5S*&JBGOIb)|X7WcEK9rXZTMk=tVO@>I=96h^aPtRrmH(;paD@5wb{%+caf zfb6{osL7(wu!Ub>Kvh95m_ks_aFcC$`*I4 zx+#3}JDhr`5IJyLHNaA>JW>^>1F~sCWfhcXGZ*UN6;-_z{9N-x9SSPznVjkrAhyR9 z&Sa%7=yY?hh%%x;O{60n^(w{ON>tbIn6bFcHQzngE{qI?#4>Uqb3m;1QzZ2e1;SzG zf@D&M{_CLeeE$rqvOWCxq_2iWaEu7c2>FMX6brP;|H?S*y}h zYY&HJlCQcI$h!#&`IfF(u9~~qbwRejmb!G+aO>8v{|=yUZ=zgqt@~Y@d+;hi=w&!l znIx;v*;GP=qQwKnf~%s`UqbK1$;-RHrjp{lkpF}{$Jddx`&x4$O<%17>c?LTz#?pq zTs478GA@8txPn~~@_4#}O%YI&0Bq4wtdnj}1TyR;yjisDz9*Sq)@4KG=ma-XUfyTo z_0O47ASCyH_vB9*nFJ_^yqbKVakQ{id%Ws-*Sr2}mF!Lnf@c!fvTn=ynQr+ZZgsW9 zp^lq;@oXO(=r?MXk1@+a0EF6$aUi5T)OSY6Ep_$P-ev7xwcn*q9dBG$*U?jt;+XfO zjB$mH!Aji$O5Jo^AZeeD8IOX<>F#hJhxz*YKSBja!Tq=V+_$UBRlfl zL)O-yXZ;wZ)=B0_aAItKeup88ks^5~)qXXHBhg()BE#fN7OMuqDF80<)MFPk-tFoA zG;e#d25i)uBivR>I#|Kzm3Hu+k+{pO&XP(ig=6Ivn6X%KvakM6pJIJbKy&-Q@a{mp zj(}(HI#b?tkt4^G>g7&iHS`l7Squ=IfQVj?*!gE3)peE?!z~#C>_Qzi{k`lzma_I> zOp1HW{6kQ+nLfYsDmE&8S?#Ra+~2JBp~t$UN}m1E7L58`rrZPEkk>!x=|3mz8NO*G z3agGESN!AcU}z2EIBzXCpP0paM>}AF`8?NMh+V2%fF)6zeZ-_bTPba_Tgm}M(#w}Z zYiudBPZV4EK{KD$?qY=HzP0W)3(|Q2&yg?#kbg!HVt_WX_kz{;}{ib6`5rl;r#WY}q!mwsvkK+ECNZIS1ab*VOvy+_%(^vL0fi0D?;_a6BEg zz_k`p&a!A)QQ}Kot>2UiL~l>`gwDu6_60g%i~7zw;q%NpmM>^077}b%l2;by z5TJ%|x7tKEv`)h=MW4qPPjaHU9}}H?6n2ww#tu!dj+B{i&%i=k;A`K{q7_R4rJv=> z*&i8d{z(g(gfcb%*`W2G-m-aT;_pu(fhF4BeQdF;Ha<=+HZp{8xG!2bHyLmZCp0@; zCbk1D^!PF?j3nr<5RNSrpLuc%I+cVumi+0lI%)dwv?=Yt)~MamSbk}S*YSxFbC6xT zN_zIJ^!_#8T*YxH^^$G3oxED_0d}IaocQ5{%IkM22Fn^}v15^i4Zm>kc3t)3& zGr6XC#Khue93^FlU9B6xMLhN>ob9dSdj6}7!`c0f2+qITl!s;qABO^aKVOQ{%KM#; z_#GjmkFMQWy`8|_rNfeq{Zn>l{}9-*=U-DEEDvqEfDCr$!s9CbVb?vehTdSEP_TXZ zRzu&h4|?$*zvy`%0Y8`=o_vrN)qXLYwY{4scA=QE$t`{nBy)i>02xdGM!$FO z`!?m^DQE8jvq$z5UT;VEDZaDD{g(*GvyvX(-57XpzrDWpo?|vT{LT*H>J|&pq)+Pk z@T(>Ms~5a`QZE6(y8p^{=gNNmidKS`w&}|0WzhQuMjxdD6!C;v= zVm-EV2Nonh7tU-S*NxEYuPBxs=F}KZygoLlb>j=`;nHqk{u0WPu)P%-@Z{@>{Xi}2 z)g=qzhD_$UOxWqf!z&qMf>2*^EBsaM%ip9Dylg7h3gg!IV;TC3zCx*fVKOchZF@66Uvcd+7chOc}*UVkO-`>_>AZ*_72{pti+w`0bt>w7<6&)!Shi7yj` zrl-i3fj%J z{{yJ1?yB4Y^OJ~RqoUQ~$vGHf6;P^#2^5SXjw(@~G?H1B%xgkt`6+=_G zJP%|%7pheW$t6f-xEIPv^a~|8%#bW*0!G4==w&l6?gkTbCKJWD<2?c$d9l~lZ2>Eq z=C3W@`>n9HH?A_ej&{}4tZJpa^xf)kn|y1QXw>7WOZ?~r!p7pbBM?*vHLd;Pl5#0JzueGSipvNY6=)N_XH z4jL!oP$95XBPbeaM8?_2M8&6HLTMxS=*7F6_b+fAf&8 z&m%DL$m2)gTVa1S`K{mTgQDBjt%ge9b57MLZ5Emy&+7_Q#Hi@qTb5a_7dXPpuREu_ z8CmzXSsaT)Ct{YO=*j#P(&DA>z|xH9l4`!F2{l0TtOMVHPLjEhi9~@}Iuqp)5iKBM zckjyD@BY3(gZ-Nx6TREFxPgaq5$(jw&(nw)Bg#bZj-E+zDaD%_iICP*^2R)rX0WrJ|rD?Hn~;KPdNmVU@{O%;mDm zRbjay^|sFp9t(=Z@#a;FkNzf`mCZO%aPj){`C6stE#-UH?8kX}(vK|OQX6H?h+f(S z>$qCjecTO^AEj5voXN9v-^|LV#mfn5XBkF(TRzC~soaIaD|5}iN7O{%SHF20pe=-7 z>ythd=@(m#m5_g^=OQ`IzHsVd{OXj6kk@fzz~NJ^QVW@+NX6@11L}Nr#t_p)Svubr zn60hQpkE)tIBDz2Y2=SZtBB$mt?!jrNPn%)DzA!mIB*Qit-Xr&z7hBt7Ok@fjXF-! zO^gXic5XQS{P?UjTQ*zxZ>62NNc*ulV!x;9`OgGSn9AK-#uo+8-f~*2{L6UxBHTWl zt@_C{5h)br7}E*Ea^c$RAKMQcey-e(-`DZ1hF=;V$lhyYBLlxxryR?eh^b0K&LQ2`gN z4fhOCis{GBaI$|^pXfPYT2|trExzey6C$$x*~(c?l>3OGRLlR0b+htVR%JyX*7J^W zi8tg|F`-10NAa;^fSTrDCATl{Ev*h|>*s9##VK=h(=1|Be%_0MCf&j4$4%xFL(Exc zaT5D>yc^4!?>p06X@8GWw;idII(`?egaCqCq(Fy+al+%}ls43nhC)SP?lVbVe$%|d zhhJx<`+`9`5W?1h=Oh9Cr#n@AC>mhMlZ!*}u!i}I*5Lb0Q!0EUA4FXfoyk?_sbO=+ zC=o&zD+}l-JC%}5d%>0|;~orVS)TT2C^g0k`sSOlA#>bx(!ZLB-G^?+ypYrs>bj5& znB-x|F37*%Hkyk;)G$(dr*z;3%ENV3v@+{8UQQkOIUua2$K2k!n6$o(PD!g>N*s_E z(lE&~F+j*IsZ1I>29AD>?w6~3pTRy3EmJo!oN1^or$2>hDtMT<4M75v>vY~_yPm=V zYknJDShjzt zBu-HTm<+^GnBjzME!+7~7o;y=e0Hc#yZ(hx(}v%G2qQG+K;dvr}ow z(KDc27`sOmS&pux|3iu#m(v)yOS@BJ7e1|b{>`piQ}82-HzPx96A zB%$z6A-O-dR0I3px}_r7Q1CC&lEh6cO&QNmp6e-?0l(V)hb9YPj&n873?gWLn3H2W zhtR#4mePBL*|7D16@!l~cO3)|G8v0q$FZ?1jNj(;XD+6~@!Zok?Up?>D|(@yhdv3l z$GxVmd28>FqvGttzT0?{BJ9JCC10F>d_{MUg$_@c88%xlHyzu;`n?;NmU1lQQ={=J zoQV>w3vQ*NXC)4GMU(NoffC}ph)Izgr}U&slvq}HZcFK@L`d5v%hY4THS48C4Ix_T zyaGQXTh~GArz4`p=4R}5jPgYk(nL~r6u%kIuiL~j;{)tZrM$Ya>V{wb3T&%!h%Kcq zBcqDfvN_z`u$F~WOwA&QW7t8c>QD8C!P7=@;gU2G15aM8S3ffkE!{r7yqI7VAw3L2 zBw-Up>4+{%2?2`>DAmhPCN&lmRi7((DGTW9=;%Aft2wwK{;A5Z&$K_536N}Z^1T$2 zr(rrb!HC(woN2kp>_;7o-V)c4r-=4?;gQ7c`A+O@FS0g4Vg`p=&uMVP&CmIpoNs88ZANhwzUv?PgQiO)y#ba5VO2DWMVkzB9+C)p8Jpz#p|2Z4ea#mr({PTX2oPpU(Nz97$ zmLdP!mdk7g*}|~wD7PQBl>1L6q4H1=@^X)&(C*wUM1m@G13C$+%1p?L1X)H4vjZ!ExfE&~wOphU zUWzzo8I2EUX*0>N;eo080sJU+%Zr}_`Znqb;6XTRXS!6&m6`$tX{{t}Qj|a69sd&P zELoNu)#+nZvM|}c7};Ff#J^ehk`qOu1{6{^9!i`b=_I1)6r^*XJ<5;hpO7Xc8&CsV zf(awqO?A?j(CyZRO~STFP~xck#vQ6I2I3}w7|Ytwlo8ZjDy59sO;%wAzpWu4CrceB z@KPTQQ@GebfYG;l2ngw#kjnUZ4C zM{CsDKmWWN`EWl=BF5y$$jn|t1_?8HIhY8kSu~uUiyT@~OEQa+w*4_~IWy#LQ>PvX zCYGR*C?PX2>snLC;GbWVevHbKvDKRFR3YGg2w(@e^tA2@Pwo*YF%(lA3J?0=vL%I- zVQJI?2|X@GJ+Ky? z6z%oK29t%&NnStAaxQF_UWQ>m*F6iIwg{x|q3DDK)nw+3?Iopj=A@V#QB%~AU+4nQ zeUxbT)rVRP`)*SM3n#Vd6Tb=12j?uZDEFUrOZ|AAws+onN-)KuOcD*9s9LX@x!*c3 zG-2GFxa=&=;+1aN05*FKxZIB-BN=!r^5DdA)>fYzTT+^oW3axgVK7oxbFZ1mEqix) zfmpQ>FH=L_a?$19gXu!dy}UQqb&koAQJ_Wi%?(ih5hPIa%3N_Y)-@aHm0tdN`H+3Y zczq#f8r)NC23GGCd2zp~id`*oWM=Hca)Tc07-*MjC11z$;n06dZp!6%7=^8(i z$m(Em*>3|Nf5Q7T_v)o=p?CROYliHgp(Y9jM@a|d|~khj7Nre5^E}c&@qc$_=Wn;V4TCZq%}`(W*cFhE-kq04|ejL>z8ta0111 zcBw1OF7#p-?$>;9jU#s_1it@9-)6412$26-WWyFjlXfa_l>i!~7FHV%PgA6bBGT|I znR}g!R;D9o`r7Kab-YyWU-c$msiiM~oMY>_kfl))^idf;S#B+j#vspVkY*V5UX?>SD7ePndMn~>OCt)h)PeMvWbN_E{OICA_ zOKkT_ig#>E(sT2UuKI9cPH zq_hYqM3q|=IuqRWRT>SXRZ>VkthMlQ)I%lkgsP<7ORje_j9N>ht_%l1h05-Y%&*L(Y8sWVDs|--`|E>|}Zk zoOl-5$b4?XAm4mti1z(#dG&FR;n2EwR(b?Z6BI=<>yn-eKA)-=_1x>|G*XCka$8Ap zX-hFjMW^V31r=Nw?pbx{Esnk^J2|C}E6@mdv&nNfNn`vaq+QB_+-`|O`%mxAl3k*s zu$*B0n!)q_!$eKcz`R&(VoKt{v|`=cR8reM2H^r`+a9Dib{GE(*v3YF7C*}}aIGL* zh96LBkp^!c(SOZ!XM4cA^WawC1j0urle9#V$_Cv z(ISJiSToZA+9ziQ#huZyz?*PMMh}jmf;N7GZ4#$`OzEn0pdgg0FG(<9M%EcoHSa>0& zR^7HQS}6~+9=RkhuI|_I|&=T8?Nn~Jm2rw@aVSD+2Fy?DqBRgPSKT*N&c}J-#~itJ#g_fmo2@X-QF7* zYhHst*>!w|LpmHXdZe(5rdeIl)DFEzd`@P(54;R^CuJ&+zQ_xm>8Vn+j^|Qhy<@P` zJ@n1X=vUzIw(gRk8puz%^fTMbJ8~yP%;2ACLMuHAbytO!$ro5R$J?v7i&+ct$=HBo z@lH=Fb4!xTqxjxlSM8g1t&6P}*JEvDrOyuVNd?#JP#Pf{zb9!{hVIV(Uv6+5;J6pG zCQOdt)o-&E!P0s~M_4AI#Grat*i6csAYHPeU5U5ve-ur0a z#C{PgACYNpo3G*J-jPv)7PW$SN3ye*d5sjcKgEsq2k=lyGPQpZ z2**i=>l++A@Lo#8>ej`Dm)W!mI+1+`^04c_ZW5)17rj^WsGRO>s0fF-KD?=tkIaRf zL%$5Si#hz)g7~vBB&?AhpmUF9&`V(0Cwce;`fYt^Kg_?*Z-uOjJzTk!pS0$TZ9ZZR z&N)QpZ~evNk_o4k7=O^!wMnX!Xs`6&lbs zne#Jy75d^@qu^xuP3$f1S9ytLvNec=987F|?zlIk5(5#9?A+ZO9*n=st{8i>H$0re zY*66;Vyn5!KO+vCMzvqoy z$Y==Y@>sJ;9*HE>sFe~}DA$d_lNkt@oqw!owxHtB50h9NR8N{r=Tyo&Ee!fh2A`l^ zoQn0%9?~bH_FO2}i6deZvJBW7m^zIEGaSE7T;Neprc7{HxN-YTn$2gNZuSkwe|fZ2 zXZp_XZ-im3Rs!Evx>S-P z0K}1jfRf&ymG12*9|Hj@{D8}y#(ovg-H}-BY_qq$cL^%V%Dp9-3{SXhmnbDSBWR zrpghLLu#a{xsqV&)TUvMCwRSPZ+SPXZ3Gf`-q=poz{TP?| zsMF~rgBQ?DMlv*7qd&qjiPab<*>z_Ge?i~%{{Ai8B%!lzm!o4~mE%@cD>vYE07tI? z=g$vbB{*KK@fF|p-ny4OaaPI)>z-fbI}o%Vvi>*W@y9xf+Zp@HB`=(dJFeJ()yjfh zO_LEspfBr8pov{oiEiO_S7o@tb9l zA(w?blbRB2+{_Ne!|!U+o9J;|Svn`u9DavGkcF?n$GN183~TKTWgUU-EFLAkpRU$k z{*$ZlcYe2S&P5lyPR>$6%jfMxTLSv zE=YeD;Z;K}p)zPrr>_FCrtK_TYlpEJl-b_w@v4A3Kld>q!Swaz&WzB*%0&3{-onZP zuT@nhs%@oEPX{|$mHwDqfvbU*QO_pdCLNK;ji)hBgr0OalP#jD4IqsfEMAv`r0tA` z&`;d5>tFzX%P$cg%my34>%ZUzNdXdk!$l@D&Wv}N=#!NzhSz6txeTuL@FZrY3DfDw!Orez(N&A6b! z9Yc-3e1qm;_UhFXv1MRq7Cl5@D(?wY#{?AHW%!j%Mo;5Ycs&i0+2X>*ct)dWzpc zj%8Igkj)u>p5SJj(5#xWUk;?}81XmEBi^GN{l}P@x_9v$etN+0bhKKO_Cuj8jmy6Y z%NaR;8US)xpCeSabjIZqL=nh%l*gs(xoC#+y)ZwUy3GU4Xx4=^lk=!|@`t9G*a@fZ zC%j!^e%qWNooMpPwX^*$@z%Lf+TvdLc0&X0plDtw-Q7*rV;JHn(sdkQ zVCpFG6WOh_gD*JOY48m=obN9wb6dS?C^<|&Y2N4kS;)e!cx->a8b~B@?Zy24mhAt%{hwB=vZY$6R1h z)bbWifs&+>x0)gN0K4A2%y+jwe7baDDl^UW>FhsL{C%&*3#G1wYQh;GXN$mAN1vkH zTQY29$i=9ImVzr7-n=B11{SVPFzHtQeTt4mvoq&vxKw*j1(i4|!pqV^shQ;#i{g)1 ztqxjK>Kj)ANwaTSBloVsJB}gu(ifAH%_($}^?0_@KS9Ps0xlnMalAgMZ7ygR@Di@R z=f&H+XgQK)ueS44#3GZBM) zu5JryEfM!)F7C9v9RM;QZmum|yI>-Gz7ELp5#tN8bpUPr-8ifv9sh`2W^8`-Z0Fj}`Z_aa$>_=Ef zf`8e-s=P{c8CC_%BjTmgKu)J*%W*>6)V1t%LEcjQ-~`$f1L6fjn^OKRBIdhRZO(}u z&I+2u$lLm(HUmRcFVbb+l)DfNo7xB?!R(%$2_oeA_siA$AmCW@YmDh5DXD)804t(;%N9UH4_4)Gry2iAgnb7IH1J z+L_qdiDWzAkPw;zB><`tUH>8WcrET9QG~P0(HC((xz2x^ybDBO9RMzvvtKWL^6yh^ z>%S*Ez-Af5;JiBL-z&f5Cyz%U#AUyi=U=oFiUPyUbCHn?`v=+`yQKDEIwmx*e&+QA z#4Cs-P~b-N$ZogEi>No4(85TC$v-Y;Fb~KYed&~)0-Z=QqMRAD6<#TfJ~!V~0M$b* zzCB1)zooSCO4XW~>Y=xj5GB=KUs)#H`^^myS8q{u?)*N$KgJzs*uB}&6Zt?JXk61! zN-O3h)jYzW=Aeg*z75z}y-&)^LfgL%c8lKN#O%sU&-tOXuu;QR0R%TF66Ba(DxTab3DH`yJd)t zrpGyB|5mQOk7ZKZ5sS8Ctlim6T4V}bdxTM?g+*<0XG@sxJ<@l!PvJ&$M2GhiCZLNFpU8J z5pu4%N)Ymb=HAvGvmOd8H8et%lOy|fgmJ|6@j|t}qYG?ZT@M>Wk1Umb8_N-Er_>qy z0LiKEncw?<#K3UPxII=>z%3gG&!yHgiDfd5O(4C=%ZofXpCDc6OD1Ty;JyUKnvYCIZ~ zg>ib^K}k`%HMT{aS)b_KK#^Z2XxvCLPUnQz2pWY8x9sSiyBf4Z9>;U*;Xrck*80fO z$2s(AZ6kDi$j4&52qBk$ulMyJyi9IodIPSe?IR&8c6vAN|0sAvBdZ*LV0R=nO-C|` z!$5VZ+FgkxSr0ZWz2h2vjXGiMoareJ5}%QgcZ&b+MHILMFSX68 z(T134wlXKyM(X}5C+Fiab7q`ymeU`Sp%?hbMOy(^Ri;1B#P;+I2C;K^`IRv)XwY)m z>CHgB+DA+esf71k?MFwh79s!9{w*UR@1gp!TY5PHK)rxo4t;7DBqg*8Ov9LqsF^_= zWEfL?@h?_t&?9f~DDd=iv|lYdAx`ertInM0KMP%nyJCB`i4nOv@mWnzyd zZ6S1D?V5tH!otbYhW{hQOLwXyM6%Gz-6u&r)JeKS^fdmnL?e+5iK2_Q`@6pf7$#F| zb^AsVmtr3vEc6gN`t(AgLaHoC&wtQ+ddhpLeUQgpkeb<%HO(rP$)n^u9#29uYo#W2 zqZ0azKQJqf_6R@{dS9I|yt1>_ReG3b3pH5sq|Q#)V+t__Zk#ezzqSf)e}T>Z2rkc) zOO6UBbWwg)I6*4U;N1FpYyeBqQM&swkWAIr^2ye0skLfpaz^Uus|~29Xkn$=xq&}P zDMP7-E-QcCr)6jiJmsxbyKW(1B3CL9bQAuGXLlh91?V*}B?$$8*aoR&!>zP2~ zb5a$+ov_d(F4w-mxig+Z2v&CE@lw~|qrb3OZ1FI)u}Dbr0O6X}C(1WjYU-QNo5WBeu}LIpJMa=8(MPG&hc&_8#O6+ zLW>>MksKjBbrcn+kE15X9~Qsl%2K=?4LcMH2ger_W!t@N@V(@1?)!3~@YqtI8d&CL z*E+S$VpJxbd12j1ZjWc4zhgXb1;6OVo=f?uQv4(fKDLqJ(EDXQ zw@I|QHI$u-q_i}|&!W^)j%N0r1=N+CS15vD)R&|5C&%|yv!+XTzm}{{1!jGoTD0g% zxG&lG$w_lAb#;bSYcQv%P3T*akx!Imfp42Zc-zE{OlnyngDUgPOxnEl9!$*2>_^f_ zm$eYN_#P=+3yI#q`LV_itz+(YWdRQ>pxWOrry#sR4q!wyZm(YVRzlB>H%}rKy&&ll z|HMy2Q$vk5vtpb@df!&W_S>!|^=8~y`ojJ-#aw6nfQox9;s>!%LG+dBJ@bL0Ler8S zgl)XJ&+9SsMUiU}l6wZTGkxm>-LQHIvteo)!B5SdtFwcr=IWC5n$$&F)ah)1(32@k zXwVL`2=7lZ{GQjRk$dlA``dqh=Q$wvkhU zF8zU#J)Qpg+E@Ru2<>=e$#WWzOc0haupXc}lz2_O=KsK8+4Xz`K_Pguqz={Q=Ja@I zsx6F_!1|sURG;fDv$5KZGmc0z5qWge9$Sc41lVg|3!&u4&Zf(c(@%dyo24zN#aVy_ z_YC6nHFq_4+Spt2M<#U~{dGW=f=(Nk1J%3cIiyUT<1R8874_TuhHq&xRr(35R}(+3 z&iOT|@Dxt@CcaiDVPQ5#Od-d7p0_h4Lkbkc*{)n4bloDGObxF>P|@^}PLCa3dj6?n z`E-O4QSjlT^+Sy(F(HA;Lj7sS=J7=bkx$YWWL0HJs!>nu#9`h>&MS$l;eS6TaDCe+ ziz=v$7t9sB9$;A>X=61tFOsI-r8Z-!5pCTZ9>A0vE~rJXw`%qtw7eUqIQN}}9- zHmk+HwtPzs&LBiKmNz6bkvMRz>FU01U2(n&iS@su6qwkjktUUtLbj*J>irmTWA$H= z|M2Kq*A%Q%Hzejs9y)iGlS|XFq;3i*r(yax+fcOIqop2FN{(~`g)gL<=7jtPU#D~} zMR8U(lKXXAzvu;IX>{%&l{7x^| zTzMt6!4#<5c#i}-Ol5kQ_Q(qQtj{gciUmYtm~I&rp`sKQK2@o++82}7&+f?5HP4e`v*hD0;ez`YbD-nfmkasi{p z+PFw;2n?)4rip0or_)zrC+k&JMP!fQ1Ysu;Ok!d&h>vedi} zCk$ekm2k<(M&5>P)D4<{=0uHTad<$IKw4b|!KXHQyu14f!@EmxK}nT@pHty$V%kjH zb4zT(Zp%bTtut5aIfrKb)K5Bfd>X;7b>=X4DbrFa3z6N5N^r&asGAx-5=K#7ca38T ziS+lt$lwF-tR?nPyAYLGlnJ$*9MULU0ZY)?$oGiIET6y)mH%fCT@RFp&h;2O%{BkK zomD#@%V4#;O{qz6L;we?w8}#Xj<GJLa4?M^MIy0lY(Vo1cVpD%W+|TzBZ)I6W!8y5#-9D9p{S zyzK4lxnwy4tBb5{v3nddPq}PdvL2Q-%ax~wk1tH;B2-CR>A$cGoJqX1J0?I>Xkej1 z!72^}B5XpiNNEeRRH`|z z4i!7rMGF%xT$Ct#Hf`CqZq>Rl;lTsNj~4LewNPPi!3InUFd(oHFW(A>3sPvnfbn7` zf*~__ynw)h0ge4ODX3X8#JlFfC6g@uPLlvAYj1|+5;{#7{G)8 z5y8A66ImR%z~6$XI~S~wJUN5F4F)?$Jv_7W1_H4wye<*DW`TYyI3XB*;Ds*~JA%~f z@q^tjW8sS>Av1_ds5ui<%^4IWDV_lG%a5l7;!CNh|91K>Km=3LFDn6gItnERWg@U7 z3R_w*!U8!wi7mC%I_pEZ&?>=%wdSJhF1_k9?7JpH^R2k+T*Pj<&=~*Ak+Ixze2jqK z3P{c`iMTti2m(qwt$`U;+YGhVUSrL*1uVO5fF*X*?Z+G|LlUwkkYwUGAsG~OLAC_Da>c0PgQk2pE5V)t% zUr1_$QCkvxG^=)m(v+u~Qj&mClkCCpQBV!#u&ub%GRv(J;c`JPy40&nuf1?R4m#*i z+p7XA__D4{92fhsGT$J3Y`QvAgJ?5?>|Bfi;Y`CZFf%oKt^p`vV_<>-6u5E#%f@A_ zOUaC#HZ(7Zn-0c1n@laVc9A3ixI34WleC6DyG}VFJ5$Yx@9_U}zyT}T<0vDJ^781e zjM__;!x3Z(V5m|(O+Z4STJf|cR3&ceQMkER5BH%lpkGL;ttJ%wdS@& zgcU`)II>kQzV<@MG%*K5QaOYU6Np&Gd{Y)U9jlXww1=?sH(eZ?D2};mheM5l)m~d- zfpD#~j4|MzPS;-O-W9WfBI0x#O{39t?lE2mb8^=*^(8H$h%m`kG#WG+p0Nd5^;8cR`v3-wZ`kDGwny^f<5eA9k>7F60ajQ+Y$Ozc703U&Su3o>qJ`>+HcLmN^`%BBZ+JNzeFExdxGgY{i z!a{-($64TTEYjTrAs9gkPLP5Xq+stv)VsCl%vE&xKwW(Hv%*{lG`ymg+mhz5G$AW` z=Hi=Ywv(OfsYW0TDTw|=GpzA}25w>^pp>XY8v$U6GEBIPj|S+%AMplE!)gGv0Qe>X z4ktNC63(;?qN^o^25x&x(z`|@9nByqaSc=8pW5RyVBM;L6{M5};TT6b&XJBo@f})j zW}*%9E=B2a9MBGftM9nYT=pAJwR8leDf%U7hoS$P_VT1XzwoAL(s_=W_Le-r=x8L0NF#3axu151dRlZGd0(=+U8dx}pJ?@ORDq{ojQb%D9 zlbFRcW=b%~yFIc6Ehd=D2OsA%Ko&-5-(k#}p2s|YsmoYMypv(}vc?KrZ#tu|(M1ar&J?ajd4jRmCH?h0E}6zV z1Njy98ktkoj7MsC>)X80)EPF3Qa7Kx%n|>$v?XaZFU!U`yeb-_WotFPPSkKrgokwFB1Xg0>yeOa0aujz4h&HE6BUJ+H6E8@?b?%ide!b z%}Cs|qOhWqJk=CVoOsO>P9gc7sYX?*2;Eh>N{G*+8j%5*_05^=MoOPLb~;3B=W4H2 z5M+I+G(>yo-o84o7@@KOhZD~NKXU(tTb0##h_gTyfSX_iFIZKrT1!af%1pX4tZ^t+ z?u-7?uJ@%2y->RjV)1&|ydq6|3rP}c>}Az7t%-#~Eta$ha2d6|Sch%WCzxa_rW5+@ zIb8%`DSNXtmTs{)n}nN}ddRDG7RSJOx$SK$dIeiqp{{yi@RhNgW#0|=Rcy&1t;otE zlpasJ((#Sj_%^KP04=$O5wXy$upJVTMz3rumYYDszM-{KOg<#SkLbC?B_2nXu5@Zb zSxd{V!L&@q+8=4$wn^5?){8zg$iet>SODYJx_HgLu$$&Jry~aM_!d^p%8wV-9(H_{wC2c3{>dOE~RSzcYdx-z-f^ z70at@UF!_dh?YE+3oZYgHWeh*TAmRB6XZIFJB-Z%A9xAooXZZ5cdCEZ0HigLF9vKR zLba-IV-0}TNE-Je2-DNa@Tl4&wOl|7!0{!mi}5YF(`D zg_fm$aPMrUr~o&Qk)~^>tm7br55UA}`6%!TuMn<&9Tj|r>h{J1JJaPNECX8>I9g{}y+>?TYggYp)@;_xRrtVpm-V>PM(YfuR_sAY%X zPkd@AO}wXTrikwf!cK&QaI}YN3dV7&K)VnJ3q6rTBp^WYL%|3yR_-W89>!Mcq6$0! zko=|00_R=!tvEK(tR_O>RPGfe!q-~RiNr4Vl1C4(MzeA#38f`4h(N}!CQZDA*4#-o zj*v563(5bMruSqF0Jr5j#Dt|@3inzGHLwE#{U(d1FwUGuY0!^G{!W5^U;{>g14e)( z-bmd@KmzPh0%{IXWP){i3;IChEt)AsG6ICgOog6~kaFaGyob#$%J1k-AlA^t_|D!) zBiq<%t6u9kf`bH|$XdXMn`CS^0BwAV1x6$d9G_(OENQ#OWWUfwHy&f4su7<~qx3FA zGakZ*7-9tr5PP&Ekp}UwCTKon!saw!CQM=;NunJW%t2UYEPg=($e@@kP_8!UL{Kqd zq)Gdbr&~eZ)bI&S^R|KOw zy#rW)4_ACmAbjL9&I>#mfG$j6g7gspYz}5p!Un2BG=ED!^m8bFK|eUBj)ZGKU1csl z!eJP)&8jB6N^YkJGK7HTn-&mF2q#{uBhBEZdp`0Q(atft>8SEjGH&l!K(r6va+Loz zQnf@wF<5Uk_Nr*Ms5X7WH|P-17DF*u^z}6NL;o*1XH+-nX#j=*o{nmLpmTrR$6WuAj!;d5 z0-i@2`6@e~hdIYH8INu;D!`kzRazGbM_foV3`pjbFh_=9{RZ(mJfH+RU`Zv2C|kl4 zp_EjauVZ9lOXo-nTcAt9lwodjMH)|#{0{pDj9`5R^Mo`q`{fk_NKQv7Ob|(0SjtDB zYFz-$(VjEVic}<<%16LN^`7X7Hq?8}6`>?+s(i?YFzYhLUjU1wMv-}Ra?SeNx|a8?b^mgzjAO&gR1|ILv1b#Pie5A z;!psisv47O0F?;$n#vHtHC{=;Xd%d6o%9MvwLfi+U!RsL|8cIGsmktRnyzOc8~}t= zgmeoQxx%gSga$_tLxn<@PMYm8WD5ziQCVhdIu;69#wE~1vJdSt$m;fr>ZOVHZ6-z3 zI1aV6#OOEhl=57U)@FBCM$c`6q$U#=UAE+A$#pT{Mq4UiUOS)+9%vrt(-W7r`7jp% zp0bYMt)wQ(!Z?v@3)YWrb%DM^XxL6~2`2{UgnM5P5?5BH_6#!ym#=n&TxOQ?TxxFn ziZ|j1etM5uYiVo^cMod=o@njNp2nacBRdc6|Jt_l7|w-m2$ui+f@mMNQ2by6G(ZAc zcmqh_jmq~V+HnKiaV%Qk9!+y*exV+9SOPXcRfU2C7Q`e%(Nyw7h*1JGH$aDNxDDK> z4eU`s@?#4yMI|=CR4Sw-+8{u7SSV}&hDo3W;A22_u4+*#Lcv3R{Ro;~b0AlwMI>Un zgmjU#i{RX*HymSWm>_TEP{kDEmcEMtg2*zu#9sVV1S@W{<_FD0RJHmzXV2u8;72#$ zX$Zz;4(s-kHf;N}#%O-X^pa{?zht5OM>)WkL+n6{0YC%(VG5G=ADq@=#G-O%<_}o8 zB{o1Pn$#q6xpqwA4@Ol%lsIyFIF}RPilsDTN@9kG!j}KZVsj-7R?8|_q(gqws4o8G zHSHHKIs*i!sMgxBZ`|Y~B{>OgaB%adm8c|K#08O4D{j$jBo$KMO0U+k$ zfMlZdA3P>CTi~Ms;EN^ZKT$e0hgm^N!aqhDi?}w{eYb3Q8S&9mV%}d%w_nOf%6krL$N|uw`SbBbF*nrVU^t7nr$&+qFFWUu95N$BB6H+rQ31!NO?r@Qcg91FD3^)Kj zoVFzt;ABW402st1(swL2I#q@_H5Wyt|KUCwL?)OvCFTNomR?aNas)Ye|PZ z3<)*Ey(&Wh6kx~6qCl`s!kKwFwK?P$W}?DLA}1Pqrb&W7RYJ{;qElv~mlTID!bC{dcC}3N_m$i<^w=vggZuTW z{OU@niNGZQ6ks+igOXBolgf|;yJ>&oR(995yj50k%J7qP+>;a-lwGiF0fRc!tk`&u z;qa%dcin5gw*$sP&xe9SP$Iu;nZW-IMZ;A>3ub~9xB|}qK|c!oBpd{4OTy15Mb3xf zKDHFl{T0y1qR=a_gV4$+%hlMT<%4zNsx>!u>C`?1;J%W+cu#f%4_dl_%j1oZzqI&2=+>?r;-q zhh!=?9M1Zpao{dWxG(|If(M%_r>b;WQ>Mt7BU@Uq62HpLDl{WEsZdx@Oyt$sTZ5UD zQdL?-#UN9hjVAw5>{9ZI9FkX8P*qMhCM}8 zWhpW+K!uIfh>}z({iKps4H(svXaZtZqI)T6by<#Cm6(!fQW5pnY~mpVTp6zs^c|J6 zO^^^0(N(ltm;gwzMR->dBt=3=RD^(-Zo2uUKyAE9r$Z8Kmk>k|#ipg12(5{mc^#!! zK}|^6RE17A!35uY^TF4WPBvMfD0?p60dQPF@WSgZyZgQ= z1w#&%8Bvx1;5KExtd)0O2O(LIC{*kfYM-JwH9DW7mr`2jq#jogtY<|D7$8 zRlS9mj--O78B>fYFa(D~C}7rDiSf0Wh_lwZ*Hxaz_19&QnN(G%lM$wsQAjOdqgo8O zHEW4SL*`zLKB{P$fih4T?i!r8 zLje<%E<$?ZS+7P@-o3DS=!Fz&VfuYMDaJTK9FwFRTQPA<9fvw(fSwCG;9#Yhcq$QC z?ZyApfI=}y7!heHpcc-qo&{@-U@e8}XP@<4n0pbDHkpaj+O*_~5~mn-vpBw$G^mg* zS=Y5n1sP;jnnq^RgGTlk*=%X5YcBZz@OiM=f4Z$vD^dhN=RyS0TYf?JDm)PT=c6B| z!S3TPkip#*e71rl3^?X7kHcPalAlECCp)2(d>*B_lJKY{|B+OpdZMYqxFv(a+LZH9 z6}nw9h(#>=3`%a47}$+P05{uET7G7$S{bV^T_NF9fF!n+03~8Bg3(m2XSxy*VOeTP z%hb5$o(pc~D%acAlUhVV23)X7C*cfa0y7)dBV7DW!=<+IFCzXR#rJkYzbXHH zaUcq4*SqjF#^~6=A%o)|`RX_j@*&KPvtgJC&|?zORPZOEav;VY2&s-a&{90=k%3Th z8HuIpQ2&9Ms6eyC5l&K5YFWz)o29d}jAaS7t5vNebQBf^i#?(<438S=6_ar0GP7J6 z0d6D!S?R@e3ayACz1a9CLkvSz~ixoLs9KE-jEuL|W z0*Qi}DzeRM;$}Jt`P&!`hR6OngqjxlCT?2bf{v5`bKc?+$0)Zb`Y@^`{7e+c>^ZTo z@$xRod>-x^Km`fyidI(%3=M_$Gy;$kmmCty>uLuz2HeVIR|y?tgcYq9wetU;?73j* z0MnilfoqtvV$4Ks=OIrW4W&Kenh>AlwUkUzFh()nd%8CpheQB35jfW!XEQ&y{h|dM zkU#?dcN+NBaSCYRLZz>=Q%!7|9AZy8%SVF6!lfnoc^4m>B z?!nxM{Ni2!K-`zqm_@7(1ji9MBZ~z>WL8v}9GjB7ai~Ad%qZgxeBq1;RgXKq-Du%7Xv80l0Z?6mF_|C(8*)N~Jdj_Unmh$G zLE~()Kx7xnfm^;$qu{z;R)z|&ha&Sy_Usu7L2)an1hKYn8MXa(5_Yjd%VVF#6bcZ? zL#%ZQ_S_1p(g^yWz-wg#cu6Fs%qlSgP=eHIG%K&Ml6cjMk$XTlnq%hZdPgb^aB6|Z zI=11~q7L;2q%-j_p&F^X0d{b96Wmr8gl!1%xIl`^8$7}fA??7Qk?oXgd)zv>1IcDJ zJ1!kEP<-P95!89QfW6JVrvjMU375-D(nf}=t--t<42l1FV3!$Kqm%ULLyruGVZQG@e{ZuV-f^fo3W&KColJogIjd8fiaXhU} z&ufhrEa6#}gf;UMkrc@y|vUNpNQAPxPi=h`Y zav4G7BRNEu*wZ9o({S&m6;t7phjD~c;eIsYUt=*uQv-hY=7U-p6@xW8S!fx3Rg6k0 znUhJGm1&trS%EEJ9*Go?my%CgMih4yPz{DEq%%V?B}|P8 z7e+%pE|L=7DWW4vq9ytznJG^g=!nmDNR5INiWE?iNG-ADQNIH=DM3)3k~%54Zt!`Z zW*HW@$EF+jwuEk4qhb&rSX`FHuLIHKIlNg;uW?Bdp8KjBG zn4uemUl1}E(PE-$s-|n&o#4qZF5m?nut?;IkXi;Io+)i;c6IJaDrpvxWvOklbt^k6 zLx1N`RHurGv32D3EV@Z{)&@PTq+o(nV$-7%rbRs(gmxzQm`h?TV&geSl%M2gT824T zt%zFqwxqgKXuE@$hC%-UY$~g>N~=VfnS%&Ojz|+2!ze%znjFI()Y3s-sY#N?AWNYw zr9vvd5;RPZW(=TiQlW0OqKZPQ7S7UAjggTA1|_0#crY?D)U#2Dxgyu887gHNy`vIF zqawvacNRHBi3Np+(wkFrZIEVfIBH@W)fAr zLSaaPD>5k{oPwb2nkooZvvfgBC}LVS0yS?*pB5@!SF;)4mlaluM5v;)lS{d3S{|9H zIAs8}GQl4mNE4w2IRvLk6U%KLWPD<)QC``VUE8r->yU|6M2b-%OJJlK6=AHjBuR>{ zfXR?U!CJi3L|xOa$2clCM4x;IB8f#%dhs(yD2%cAHMyd%S(qb|(FB!?z1hp1x9VN+ z1V{=imCME?d6kuVsuhw}vA*O`#(E;mL${>UAU|s|(>is5ai{~brEZ%dXdyFuRTL@Z zVU*#ra>4&8xq_}-!!^OzDSGuFMi>-(QL5-xL=|FM^6OK$n=%w8xD|;(hXN|v3&J6+ zluSv&CGbb!MOXE)F`P3iLgy5u3%~c38KtY52~~JnQJV{}D?3blr;?RGftC{0Xfo55 zWEYeHH5FL8p?iCmzdN&4q#~9You#Q)bfGCMLja*DE6?&QcOfk zx2A+|3?^ydYH(I+I_^iV!_pa7453A`L?wj9M%C}6cDU?hAm>d`7`a5D1m~LUtER#{XbaqwaA|y2#D>BJu z928QqeXnfK_goQERs!&}&uf*Ua+ft!<&f z*#{wD`g^4DXFY+>KaJ1aYk>!Q9^jR*a}_zK)3t!nVWmmK#pl$ctBH3((XgAAqy+zN zT-;KK;g%uhIbU_y_0-S=OATq)iQzvI5d3N=>ptN{sKcdZG z+tl12p z7@mEWU;($%T()N0ND0EXXZ^(S3~5lZB1Y064>HeC@faZ1%tUlcBqC?wpp2gEq}G>jtjA4`XodghfXfsN_%|J3U}|Liwo{SdBtD$aS|w zp*oy=q3zkv+yIXy0gpu>!U$o1C%vwXb|h2D#l*x;N*cv^Jg|x)UYC}u7^VmYhX)Wj&v2y<-T6*R-;^u2E zyEW~$yYg7)-OPuQbSYKVWA?H`tLK_ToEr<|P)9s@!4}t=sIii`)h30T9C%EEM89Y0 z)gG`+OTup4l$+}XJn?6z(lP5hvGyym5Dgfz%_N<1OW;kLq-f%#NOqx^+h++i+C9jq z1>*}q+HfIsb(_F~$1O*$QIRz4E5jmSQ7sP=80`M2FI3{TV_Lq8rO)G6*b^dt>A_BJ z?HkXg4BpR}TOMXm0xbIJ>>I!YR{;{6m0BLvqfv=@aTjQgLg7uJjT+jtnbCW}#Vy{S z33BVwJgqe{F&Mri-u&wi+^-z$(({cqRMBneceWm~-x8JE`_2E|t5|Iv3`CLPJ6ZcR z(n0_nFZO9_+?d|r$c?a33#@Im)PIN2uIm(C?oeA}H9H;Rvfdautl2G9m}g1vcrn37 zRNHi}0P2P!1>Hz=pM|O2!TGHuf^oiE?m;?Iz3QFvC#2{rzVpj>7e8}7DlxR&2R*|+ z_N70f$gR&#OXUX(wa*r;uA3+npuT#F$A1iXmQ=Lgmh5r{=bQ~SB8e0k7Qw&L@R|M0 zKdeez9Cus$JP+E4=!Ll*xK7{H+500ILUBqTs&p+W)+ z85mrGu%f~S2^UCEFku0Oi3A!{uux%S0|pHmFe#8yPc8u}MmtD0SwffbwPo zhbwKWWTFyfNG1^nFhMx5VA6pLh8$cH(IEpOC<~x0;xePo20eZHOv&WmS+r@@u4UWS z?OV8U<<6yB*X~`sdG+FTQKE&37A5))7F_u6;lL(5bSUY-WQCL_aaMp_870W045)-9 ztFtJBnG-9R@c>yO5rqSsG8htZh(Xp2phj$Hkmoc*Gg$GfZhL;KtpTi^bD z{Q33o=U=xlVZ;Cv>@WcbGou5NC_4@^?;u0T!JHWA3Bm|h`f9QcOwiB*l#+Ugh^9bX z2qC2&QVKQNXp>Df-4@7gBH$!gU;>Xqny93c*dt)N_F8J`C;1`-62hHs`i{6Jj4H~i z?+{vwpsH3h2t^hb=q;ivzsl;R3oG2Ig8sr3b4)VJG&3&3()^FW7TEktF~%0mk+Yua zB<`pO+4B;o4$N>t!wxbtaRC%1vJIhyJXDb(2C8yuDMTk~DL4gWq|rtON_xzw=(;Lk z$>yk&ZN8lHG}R&A2-q${Ls6AY)zolfD60SS2=c8Z_*&W#G(C0tiM=y}6?Rx+i)HJu z0sm80&A|XOp@TS&t23+$8K{f_?{w;EqF;B)P_RFbJMuO2o;;1#+fv0!qJzqd62=LH ztIS{EoKX8u*pA=VluyAygeDfLwwUA`anDzoIV4$rvzp zV~#uaI4@@d12ANgTVVECl8oaFr-F0(%)yqqQ;7l!GBmjal)amn*4$`AbBL(4^`zs_E#iYT}huZFQ;u<3$I0w@8tCBksFGe`9zzM_+Wc>3)Oq zZ6OOI>+NH@>$cltHVZUN?=(fmS+V~LtWaN( ziLli?7h`*oH{W?%&-L0fy8C(PqYtyMybl}9`eg@n!Hj3)oHORd4fj{iZ6(B6^1d__ zmpBp^K2lwRRa|J+rJVBcs2Mw&ae|2>I}YHOur4V_YhC!bv#np11!(W{5bS``q1U0V zT_rl(Ldazsi80AyQ{$G)Od~xIhERn585y$FWWr<>=vkVQ*2+>+K0LLIRo3c&8weyh zXi4UGwlNfw7B~?PDT-XhYa0J?Xq2=gj%_3yI!Xa|qAT8YQQ{7KJ*8;A$lm!cGH5_(nL!ky(BTS@!w{m_M1o1&bLRgeYX1@fm4s zRp`KWAK@G~WIUcfP*8@!6q?t!WR)7Kuq9{d46_J|h zQICT;q~uVBBMRtjSJ(7S5tkQFstkZdUfkaij|dXtSRqHSv_JV>v{?`K?!n*Ah24X167cW zpu*B86SzU4h}5HC;6&E{%@AQW5?lXh(-eQg4PG?LUlJGhKj`Q(Ih@2AH)+}}02W}R zs=CwSJQ+Sz4dhDhtCjI0i6x0ZkvRRD%u%TNS$MgfaY zH**sseQJJF>{b!G){udOhq6&Bh!>GJz-pnS3MvV0d)D-5oGeh11h?>o0o&|f&9Q`wEp^8-V$VcZRVo5Y z%Wgtc6ea(~Tnu4I=aQphRjRWnp4D-m{j99&X%*1)MJ@L3c(aZg8pwD=bhA95+h{3x zW`r}1_<;D`gUoXxFWqt`Q6keOex{}u4HDFdBrcOMv$|Q?38M%*z7`8jcbJ1nXYZv~ z*zLK4e&%(K=ZIAk8rqJ9CfQn(%xI1#(va5sQwc1f+XOwPh1-(MwzkDPIn#7dIWe9n@J{s%)+C!*udhz>?vcFnJ#kBlNqd#6pasn#2=UPIlt`I(zGONa zbP0WWeelo%bI`!%TcH`s){bf~a*+cUei3ck6?y>5=CsUXn6S*BvhO@A-O2ut`|adr z(pvwLxk}tDZ7`#>yUb9VvdkSs-F>M9SHk1X3`Yqxe)m&&Ow9>kvm~nLY7F5^pK1vk z9-!(al-L(4eUW>{PV(ACs-wM(W)zMy_tc*7rFGGSXC zT>rs(#2=dEWDf|BTz_)3rL9b{7tUWLf{mkG)=~<5yX`c?uwx|^lJ->BB<+UUyC2h8 z-;a7F4lMZVxV4jb0xhy@Bf5nY#36}DQJtKTeD!(htYI4)h4m%$!?()hWJ{CcR`35P zL>Ut&7H+DAl7Ve-309t_;ZMtLe<@4}U=kx)&1GetxpAh99F^d`JNt_H2t2nL3C!r9 zZ2}q!G8EBRqQ!$7R0$aCtH2RrllT%nzp0+g`!T9(GDH)-^2{#@gYk-%`@ir( zoy23nR=N`wq>N4C72laRgR?*`gdPFGs`(jn<0;EXiLJ=F3Q-mLsDNy-5qtj`5xk*9`mYMmxYGMN7G%LA zm>M*>4d8$sq>+PsL5cW@WPGrBO6mxqNBuf~l1&?OO|`1c?b%J+bOE(8 znc^hQ+iZcqgw4p=s*S=;jf$KyST+MWG-)yeWlJPvnmED8&cgpFPdC6BWN9b?Ii{{M zkP=u;_!N`hv`r#Q&ieFC^tsRc+|B(gF#a4t{!C8EQLErYw*1O3?b#~)QqBVnvPAQX zAbZIsJEUR?8S7~%2!+YH{53!;PYl$X0wGUiLC+Gv84@kgt}4;Lh))*XkKf!+#8IAalv?3&mk_ zfiegTU^5I2l}q~y4DY18#Hi2`ZBa7458jkf?Yv2kn$6qXPu+yk82!-z#n0f(&(TX0 zAJxk>1yI_guT-o_LmIHE6I4Vy#hTQ*5L763JRv3@(36Em0Iz(f2G< zP0foJWmDL!Q{U7&A62&4#7!mB(@}-f*hEnB`%xm>sQZMt%^NTxL#;$(wuaJEL+dCY z13@-H!;8BwCNnMh>e8;l9x(mF0>M&3!&02tRA{vePn}i*lTKZCSVY)Hu!7X+79L#nwOtJ=_0$Q~NB~n~haiO;tA4&mwJDUA?2ux?b!0vSC<`Iwdm9{rPel` zO=SC1i1SZX-Pxe^RNEZav=zZ>Ro7b8%iFrIzObRB<$&00TES)7$Ansabwy&j9x4sA zbWP8j*}xMejIgC1Osylbz1)9@S(%m1Z5`MlCD_ijQ*bRmSp8YHbyJ`P+JoKO-K;pH zwN$1JT-h63!A(jIINV-+$6%t%lIhTsjmr{J7JVJwt)0}suvE+?TQr4Jnhn&mHP~=_gwiyWTH5~|T%`ou*lk*2yxlU~ORE)Gkr~-RW)4ds9xm?*y&0l{tTh9$(1~yJy<=;-dQP)h+>y6pD zUDc{v+ls5&C+!QTLk^JI%lp9I9jz>7IQiY$(kf5NEf5uM zS;uZhqTt`OR23FH*-CP#NR=AxwPqp69wNo0!SqB9_ zA`@RCMo|INkiRkIBU`O|EKwqUTEHzxE+~QX)V?SF;I*2|W6kA2d&v`~+!SWyO=V$W z9%i+L(O3mzJ+)qk%~Sl8IA(t1>_tw!)L1!I<-eg+I=<$v%HuoUNhCJk*po*)`qe;= z;z72rM9$?59A0(qQeci&(0yLgMNT%RhW4FJ!E6`&~;wqcMj$lwd75PTVft*v-RZt zTw4QvSZQ8nhh0UX{S&0+fII)*S5(&KXW40Q&g0g4mQ#-Crd<~96T|j3XNvp667J|q z-Pd0Z=@#u@c@}1pMro^dUAP6+>MhthRq5#UUI)FIg1+NyM&+OWmW3{2pWf;J@+yt( z9@&G??%O`2mf~S6XQLLhWQA%?MP}ekPP(N}>D}s+F4zU`)dSYysD@Mpw8onjy)$%)a=6^#%;+A3}MQv-}UU$r{-(;v}$iH>={Ps1*O?# ze$Lk(ShvMdzAQ3J6|igO=5FTZ)>`OR_U5*3t)0~DB6ix4ePXYLSIGrl5{*kk9#hti zYR~OrzxGzG-e3O3*arVK)n_Kv2NvB)-roC^T1v%cY({IZ0&30nFXJ|1B3_L5ZeW@-6Z1#7F~+d=Jh`4 zvc?(CPU|D~>HAJ@`qtw;zEZ&OPUxOXVjZ@Wl~;Q`?Z7y21lR86z3l|Q@dXd)xOHZP zebvz2-UOvhsfFx>rflFw?#;e$_$G1WhL&gHX0ICRSp{UL6XX}?(qmm}E%oTtrty{R z-!RT`@4n|V?e5bn8T(GU~E^mQDU(MSd^G9Cvf3|frm+EHLbqoJ%A!lU(S3s!0I-cxo-btxl z47L{WwKnd`MsE8a;#MvLKmTJhY;mb$byeS5u#I)qgk-ALbx7`90R>g@*3X|UZ*af5 z&|Od%W#volD(+eCAa?c==z`+*X;O#s`Udq9{@S3U6EO)Ywr@QMf)LjtCCZ5n^W_ z`KPyFryqIF_5u?}Vz&F^qIUWJF68XFU&{OPo9Dt8_VyReb)G+Io5fy=Z`EEmW^h$s z{#sgbqLfNe0R5qvsCRY_=mMJg`+{`(GC1xdCSt)QUeMOQLBHBSt0Sx$dzDQ4g@0tV zhuHt5x|#J+3BP>VwA6f`a=wxg{n?-6;(!X6de=IA)u$O65sv+F`l}z}^YvbUcX2}Y zo0+fQL^jcbhx|`0Y+JY4$(Lq^&(WzC*udslWOLn7w$v{8Hq!63zjyiysNfE$nVLC$ znFMtCs`jVT{V@Cw-#q@ zs&y;Ytyj5%RcX>|)~{Msnms%9E83}J*_v$Yri4ej9uabA=#auhz7#rej2Q7R!h#DX zSX3YZ;{*kKJ9v!fkOO6%C|y`qIdUdvmM~9#W_gqDN|-fEmPi?OHS5-{U&D?qdnwr3 zUDuNT<(gJ^SRwiYuu{4#onGe5_en^bRm~0Gca%m!W9xyXc*B$2@jI76FiJ~ z!QzV&7Cep&k@CO|n{k4MpE@(jk|*b<^juTF=+e$h&K9760}@!Efk#ylMO7PXK?YrQ4haTP7Xwj&R|OE6&|-@bU3bs~3`{@)0|Zep zMR?@Z*pXzE@#PYHoMpC|PWt61Uy(SW*5rXtLK&r$Qwjx^f(~NX;D!xmNnvfpDaT=N zCq1YcRc}$XoLhC3U;=f5SNv76jX#RyprKOi*n(0$pU8&`Qym@NjmcdL8S7~W zk$MS@_g8l=zBp@jIHGq@LxfR~Vt9Xr2$-Ri8EId$HG$^nk@AIx8cvb^m#wDTa@%dD zQ+0Y%T{~9bX6*?DOozaE;WwWyEjnwkRk4`%plSk%9Q=}{Zk;W6p zTXWsDQd)J|>B(c394eQmf-2U#pLSTGS?^)(k)Ci4gjh!CvFNX?a|exBLPoE65Q+rZ zsw`j35*gp3I$i8p<1=}NU$&-sUAg6#Q#CGEnrjX+*`A~Psk&&dyyeNmo%x(|k+DZX zVhSv8+a+TgsXE}64?Z=XSz^{%w^i^&8pe1Jq_Qw$szK<{eO@kQY79};AL@kd^ z>W>0zY0h&N#RcQC!B@hDNYa%po`>vEgTzOiGySGiD(Qe3y6B=00&Q-2${o+{CB`zS zQ80BW5s-{lxb-M&E{Y4204dcmBJqgXOCl37_)bHPOi1?}4(gUe zMcVxnnJ9$Fin=gOJ*{X(g7JWNYULe0ImdnwO`}I@I4=S^tCgjp6gc_FRIIh2qf$Mm z+34A&3LX-xP{iVe&Sjwrt&Woae5Re0<^ew8O^iB?kxpTx(A$X-pe0ZmLzUGqwJ}bI zppn`t@sktN05&I69qcUC`O)6!^01xLWh2pMpL~MOrDXB{l9?8?%{#@klY(jMbrc`~ z0l>~+*P%lG7SLAUp^=~}R45Grh*zZEF3fR${^F-cf=RZzOp)L=|#i~@|sLf0uE0G^#d1-j6XTFH!On2gLB1){9v3F(^! zbgE65bi-<;Mz`{9AQTgOJ^Om~q`MR*7JXyB(`kry{Op-{H;b&EhKF}Dst86v%Yg6Z zWv90C&NGuG!ex~qhfcGPUYqySrt$|> z%(#m6l5jdmMC>G|#8iaA7m1zUvg44prjbQH@(%0&&f6@9WoAgObQFkv7@C@xpu}4C z8c18rVvyn2#bVyz=vWF_7ep6@wHwTJwo@}1;SYA_SqzYag{&17&7fxl;d&}#98=x3 zo2tYk^FHj}`fNGT94l^CKNV&x-qK{ZQ5B%ermlZgU_~b^aK8LkGawZNF^i#YMsk)j z^gJZO!V1iu)zf4f8cDWLo^A4?2E;s0?Y4^Ewe@}*(#3u`*q}QphDK-HtW@#1?yB@u zW|iqX0rXBmvu5!E#iP5Gx;!;<-(Y^l5Q9p%s5V4jdf_8mK?~4;SOzQ)Rm1Cde=DTw zJkChv4bOU`)Hcbcrv}ADW4AEG0yy4e&;}C!${K}Q0{CO_3t=~8#pH}=)4mRp`P}54 zwWuwDHdDF>Xuv7^F;X1+0m*;hgOZ~>j!V}c3@yqN_p9@6j98< zsQdr`321o&T>o-+);-MlZji5Se)k#wgO5zd1-KYz6+%4;Oi-rQ*|#&Do##{BScb`n zK@h&`ii6umy4t+MT;d$1s`r~29cSA$MuM=Dfy6(ky%b)K%W{!S_bA@I?}koQ+gKMb(k#fuEs0PY-d- z`2heakk}uDoff#Cm%&|^8CD8M;PJJR6qk9M8>TbO=KN6LE-p`*pDDjw#QFh1`?;O`rJ&fH zR0N5c6nzO60T>#(g?D%Xi^$FYuN<76aX|tygm*ok4?bXw+@X-2nw??aH2uW^8jp~0 zSbVI~#AMXDA>vNJ1jled*nyzsXyI#!AOK8334R&wArdun*){ed#NoKO4$HKN=f2*o58#WHGRC3+!HU?a+LV^477GLl?5W(;q| z9B`qa3jQ8Sv0&PK&Q}BzCc#hr5Qd-B2rH@;PgTHKJ=+8-U@abo3(W|RRa~b0;HZuD!>NRfHwX_>>68a%RN?A0#?M(lor3# z2#M?>2f$@q8qa%hn5kGGNd#t<*;>{dBLJkIQvAXOh+P6mK}?Pv2LMG&0>Dprpx8-3 z1R$n424(FbfCNZE?a3Yqs3TDTW$n$R6p$SNNB~g$fCOM>Xo}qiK;=J>9BMwMXtHK) za*HRjW9C%Iqxo9@_HgAbjn6#B3oO|QU)YqvECka@Sp9g11-RlXPGF2MK#<`NE_#~M zOb0_U#C0@>DzVZqhF{20OO|cS6@K7SFlN{V#TJBJ0zjn){sb3@T?7clYjWgI%w|%M zTz~e2e2N`X{y_j7B~Yj)YjUG9%3e^2CN%b1R@{K60GsD9);l%U=!{}0iVkM@%v>c5 zWekh!OaQA@SVXv`0XE;$?IXkWj?UByi9q1a#U*5r8wPe5ZB@&ywHx$oTs z)5g4K03^V@-s|bs%hBSf;l$k zCfI}j<%Cp)nxL=Fsc#l5Jh9;TPz5t3Ap;P=$r3=b0?pC|o#E98p*$yIECIw}8|10T zLi|OFIG*+K7@-so-sBXr)X8IIm=h+-A=bx5@~ES9VA!$3YS;rAOo2#_;7dfR(LE~wJ16toiAl|+3oPT{E zyDFl(F^|XDRwL3YGA@NZ$fRzP-M{vPXbNnXYVD@dZek`Z>H>wUvZhb4F70CGkDdJ1S#^loD&0otbRtoFo$w&v{m zF4@`cP{f|W1_c?QZU6dinzqB3t|r~Ksouhz1O+Ro5G(V>V}zK&33NaMoUGsyZWCC* z2{QoUR=`0T9`+)giH`3K6CDG%53Z2M<;o7^5uKc^)mf>PPEnYP_(qiJD7p>Whe3*Z zYRr2k@KGRWV|FbmTx`PvZ>avm1cY4_2t^e818Xd>1?TPq?=Mr>!xr>z8)yvw$9`f8 zCNIpn>CKrRqJ@cx4pM=TZ_rR*wc>Tv;U$f_y>#h8Yp zDX&H=Z0#C<)ZGr}RNSpd;cZ#S-H8d88J<*`WyJ}Yfb7n0pPJ7KQrOVA`!TAI|~`)VsFHq8ZIWPoDCsDiihEq+Uvly z5;ziV<_k;rju-KvXfQsEcyzamnG*)km-D>bJ!*O1BG@b6(=a_&6^sxiz zu?09l$)2pqo-7j(KvCy#c{sLAi`oK6fg(HHoS9l8^UGzMN95-4T;7Oxb$~1q^#Tw8 zX*0k8D7HH{z*|OSvtTO6-I_+VSA1>EsR};F3(>ED;6AY@Cj-a1tF&kyujZHZUH#61*GsZ zvosM90DH?~JI5la<*;H{#5j+dW|P`Z2ePRla^zaJMc9aG&*A_K!B8{70JQXbANFbo zq>E6<9chMnDzS4M<`^i2b<1AYe(BhyDyaH403bB2j@@I1EdWS2Qa~vJJmzYqDeHnJ z1rIbpJ9pRWCckPlSiHcM^zsdsEzxCJwWhp7X^%u9f5weg8HtF@A;zZ_ByW9j-y~ObMOjE zkc#bf6zzrxCm{-3fE5tA9;3M|t~Pp8r}Sc1wn_PwZ+Vr|HzQ+&__8`qFF=8hHUZc= zf+IMY$6`{mvzqf96T*3+J>-ERb!p?eJ9B(2n(Ub) zHGDS!W=UlDrKdPCF}$g~l;kZ}?(N4Oud#Yci%72%0N%kDx%4)G1$Y2@@4U`4Ko!^` z!#8|JfbY@!_huXY(#QIc&B#y}b;TF;)I&YSuk$)H0W`n2JF_=@!?Un6$;p2cXRLhL zM~MnjdR}v-S;Xm!omhBdh!-Sbk@x!r_`C`4yajv!s26tM3oZkAM}CK|(wCa}BK_b; zysXRm;3oiRnO1-gb%9rW5=^XEaiT?v z3IbFNuo0t2kRvq;NbqqY1(ggKG^o&W!GHk@1}qS;L?%uGLkKJ&(2ym8CM+2cX~3ib zfu9{rm~dmFMF|%rq_%*1)oNC$Tebf4`W0+gv17@WHG39qTD5E0wsrd!ZrrynY`CyX z_paT#cVFzy`xo$Ezb;zjE&TT|-oT0f12?{V!c2t*P7oeEn9zZR4;Ka!JZL3h6NL;O zdgwqwLPm@uS6?(KvLi^76ivQ`3UNW>e8F_MXfSw45bh^=Y1gfD5q=E`OAiIkSyziVGmDEyA zJ$0-stz@q~DFt(^OZ^C|^1j5}ueC~U6cCXDMLFm#rk-4C&upkWeeww>pMDaJx}S)su}3pJCDOYg zKRpuFe*OIy;JI8?Rm&;ydzG;L5H^_L`B-(~1q2(g>;oqnFrdI;IqS@_g&c4*(`HYj zbGAP3%#B(lC^Y$_*sNv$V8qipU|@kEd}@e-auv1UCE|KxBDvmPob<&*TVkmI9fw-V zg?vjWk~>hJzAE6Vt-c!I_TU?s%7YtgAwI4f=JMgYz!Vcr2QcGo;|sp9%mIs$Er6&v zIe3VI2_*FJPKoxWw$BUyyr@qVN35V*E)0!{x^We48uY$#IXB=w2LLy=-gN9IVw zuBuN(hZ^hBO+OvUvb$zD%7Vvc70a=0xUa4gyfE+sD+qF+fCktmNX>!{TIkIN=6wjF zhdAhfi@f*NmRf2%bdAH>wxvR)3hwS!LgUhHpo(#M-U+$onk$N3NoyLKp`{sOse?|Z zh8k)hP5%Y;{Qt%OKRwsI4x3?LQ=JQHpsFpgDpqzmoA7`qreO)sARV)qLYhFgpTO)v z%R`);@>U^f{cTzox=_oeSD^(6Dti<-4F_Ukvzjz#A)gtJ`Obu~H=0&&9 z$?snK0#CsB$3OiYkyJ)ZovRKQKqqP~Vg7sA)*RNDGw{p-YPvuKEpUZm4J1vMp=mz1VQCeh>jQl9p)@R zd&yhg8b{>+Mh{V_LV_D1M?RF11uy}HcBFtBDIfqA$)s@%2%lsQQURdVY&n3W)TCaS zE}q;dDHR+F1Fl0PMoMie+$oh3DOpZ)mIZbVt5OpOn59kHyC({02KsqE|!RfnQ-gPacah{0T41$ zI$4)8PgK$_3`t-5BGNfo+ERZ>k)4@@qGGnh&cq~;RbL9zDK8_+&2Y>zVRBRNSjjoV zohFULT%#JDWy@)4$U}6bqc24Svz6FUqAFq$0X+A(iCM-96<9(=l^_#Cl@EvM`lwIF zn5^FaaT9bvoZoi5!z6OL6tCxO)d2yRmm9FoJ+A{`Obb{=7kt43nc3poaQD+uBIIM3 zaZ@5e$^h(jKzrTVo*EHH%x8g6H6r}rwp1h{6hc&(6kq^NfKt+(S)c>MW59)GB9j5& zB&3mwi6ZAkJmSSKboi2*aPwMRB)7UTW&W{PP7*X5T zoM)=!ZYxx3XEm!5LFw(F9`q$?ODm|VrdF7XLl!f?YJtQK#h7Egi8OWlLK+RtIikTR zT!rh+du;_tKVSg~YVeO=D3}B-Xu%J_@`E4PpawSh!Ck*%VG?Wr#2aVT5@L%we+p;KL;N#~&mBV+rJ#EH#GliYH); zv6R@vW3dB{D}3QU{K3Lm?w@jHH^nT)bT75S3r+!JI{;}qNh~>c=ptY+L;N-Bh zIsvWNwX0k44+#t#04Ej;36Py?GT{2y&EA4qPz?YnkfGT#7E2qNooum0TMA?U!8QOA z0G1Xw+r}mqGJ3x3wdNv>or851*dCUcz0eat!mG?cu5czV7-WkGA)cFbbU^~l%dER8 z@AghJqPr2ZmU;WE-t?v-y{Xo{Dp^9rM+7sPwe~mkZRTaF04@OxfhNbnt#62ML8Mf` zO)&2xsGC-pZU*s@NV3DO5g-K>yP5>iPJk3zo$7Lf<-tWC`p;dh?XMKw)lwijuZ2E! zVuxh|w3dL?Q;lS=M4Q|`PXeuq1ER+XX^Fg?n83VofSP8*VcY#t9o7hoiN*!kZLE$?h?78<@ zhZdBf5uHcVzt_;t`&mOys{E!dDQjHbH zA^=iN3jcxqurJlT4=e^y@3e6I#v>P5?~0=V$ z4x$WDQWtS9Jk&${((x7>r*IMe5@ju|cg(<`QuC!a3Wl0XWyU~!s`6q&AW@5!7*44g4h0)7weIrt&eI_!GG3CYEM4LtJYe_AB{X_x zUJOM6isNRC;x~wAnMl&UIt85O%A1(b98D7d{_ZPeGBmr5)?o4)b@De$b3qx@?!Lkv zV3XHs(ky86C;N~z%dsb)5-eC@4L?*JFNrJtXPpKnc9<(KJODv}CxQY*;1*(Y7NQAu zkc|2@{V+|qNM!1`PbTgSrvY7-~>Z~*Hx zCJ9hby&@{7RZmZp@G@yp+l@ZrNiYuog8}WrD`AgJ)JCzoi1#eTR*?lM8X}RJBOpmj zN#{~76;3=;Xha~Ys)BUT9*SlvjwJ@xwNMcihwvb(phm-Ff<%L>lp<1c4<8vMtgO=m z;;Ph)iWI)?a?sNAgi7mOd`m$B zGgJLYZg$U)sz7btN?y>VCA^mbH1J~zB+`J(kq}oaOf5a;4|M@xS@BLz=PxL^FdZv5 zH=}l3$2AKDP)>_(Hz5>I$$}aOSPy}+S{L^p`0#$Awm|=Z8pBXGhtq1Y@^uF&%rIC1 zDV1V=%8PzScqWEAZ^RLg=0tSFC`NWhxRbrEDtY5ldBLkZBa%rc_Rva82p7U*T`zC3 zh(Q7b(uB&b=By!@LutbQBxPghJv{*UbP;N(rWcbn)f_i0IAIN;4qKtFCiS;=3S3NRx9|SG@Qq2dPvwu+D41H2i*_$~Y7dZXa%xhW0`|_t zv3`nceZ>iQrBlJyN{8Zo)RGlLBvxZEW>i&%W7v*7Zb>KB6Lt7zl0^fbeyG5FjloGyAwsG?Do;pD--0@RyY?X4#d2*$sosCPiEH9owUW1$jX>rdWQb z%`9~XdCxD22Ps1TGAWE0I%dS=N(&+vmWF9bvr;uxVNeCR1&0l%ZuirxE>Hq3Bi}Uk z0#gy@&es&Bw0+Q5AuJ{pSJuEt?PV!5)dC=X|F?lFmqEqVi?gwE&3M=n02nQlK@;F~ z&%*tN4%rX@S^>D(7}y_jx@W`ii``XTV}~8B);|6sU-PzY4B3#`CJ`$m&WguYe?zLr zwmEEqy;?Q3GST7I_IWq?6Dd}Qu_-h@Lo#?}p&#u!{Ye6SxIvzSj0CI#Y)~@dEC-Je z=MFbWkmQ!LxsK)dna6?@kU0tNw|`x-n0r<b~D zxFTxK`?#dh#MQ#x6vH^X>`}8MVmiP;48jT`h|Sn+sSDyvEH$Veu{wRL;2ilM5l$d4 zZqS1N3BE9qZOe1OrI&7j`$iSwm3yz56ePQLMZ(?l%!sE5`l!jSIe3hl7;H9Gd8z{K5z2vEv9W z(Q}w?>()~-nt1vMG_Z)ek7XgsrJtnkSo$Y&z>~TQUMwQ%TbFj%TZ=@fkS~~&UpcTEz4IR-F{dsdZLKf{eQW<=F%VWIP zdz;{Vb#+RoJA8)FwMf!B3D>)`W215I+|NltOCH_hjV~Ny-IMbjPaw7`fX2r~2Ng@U z(InS**P$W4qQh3IJMF(Iao9J}I}^V1G#SwpEr<2lw=5E>Nz%6aDZfQ>q1RfGqvOFP zW8?G9zJyhNM*eB81Le!9S;rpT{dkY>qQza^VCadISN18kHpl6)@j!zz_C2?g1>o`V z=cl75NNWmG@3ab?pN-zC%xj?Kc2;eKI@=m}!$j~p7JO~YP-%V|J=^uNEHBsKNf zUJxM$l>J8bn+HW1c!a}D1Zr;6xlTqAQ(^>I8Y!#3JfMB zWU!!N!v;+nG;mTuVgm*RB3j(oz=1}H3>pxy=%ix70{VEo$ z*{?5Lyg2c}!UdZi;(BoVwys;7crRFS>m;Q|2OJqR328AT;gBO4Fd495f`Y~Z7Ze;g z0pY>Rm<=A(T(I&&g%cVQ<~SInL?#d+dbC)?a04b8B?3-)5^x2Z7H`Xp*+8a+oF=%I z_}Q~3QJz|pD__pMx%21Hsk$i3mAdunXQyW`d%bJg6DB@*cst(0_zxd0w0-L~C3~BG zEqIily8da25iz0`e34;eDieSl+TTj`;9SCej~X8}qn?G;~27C1p)ihvc?#Dy2(M_6JE3D6h^98e%2L6uEL zP=aq3=-Fj(y15WTp^2uEOCsf0KuCXL*g$N9M%dw>5g8y`P4xK|(}`1_*gypibl?G3 zKhda@jW`Zhf{s6ou)zjEmTKy92_ygj8K*Wkq;^CK2`iFby2Cc@d$}35 zT@^{O#jlbT)_3UTn(Gx8j8|S;4qTaKqrK5bX-6MPgqX{u^{0RU2~-ws7in5c=Rt51 zXyDG1IS8Rc5l%Xh%Nb$hq0%4bcPs-VeK@E|6P9=`rMgj?<-Pv)>otu*)i@(^(FqIy z0un1l!oU%i+Qz_1I6N?`X=|l%#Tj=;F~w<>b;1cAbgW*JQrd-AUk;!o-)y~U+1o^X z)~69{;#$PS0t#dfEe9Qx;JLIqW7feyR1Bys&4FLm(iO~a!x|$C6HE{a>g?R#Ys&9S<|&B zPz5=8t08$Jj7#)0wWtYZBo{(Weh82*5S>eY8(9f%UNR~7nI~Vu@!GzIqdXneVqj?7 z-aoQ;Dk%(13I?kl#ALXYSY6CWc*`4CY$doRy~T*@!%O_O)R9P;#5N|O9e!YDxd>%W za}+>R3I6A~5|kl;(;6LSIDjoR9Yi74G7xAILWK@g#A$~4QfbbWAq;-2Lj-6-Y?@$z z34KI25~+|yBsD1ym?2*~X@gEwsKT9iDqzn4D35k5O}dEiCl5{yFa-!#OHPC};*sbjx9Qy1dNMY# zB~M3hI~xyaXsRt-vQ-Kgm?k$VmF~&vd*3_K-H13!Bo=Ocwkb&k7Fv;#!AF%W(Gaq( znV*a3?}}OMB>;Q*%U^Z?beAC@n-oOA#$*wipL63y5|f&x=`mThOAH?6D5!{(L?d{a zNkmVXn}vG7Uv8*TryBV$NCMz_O8LeA1~j062uMHzWcWo>+8}{crAh)Du!U4~IIylx z&nR}N>QyB`f`gGjtXGXHQn=bx09+5O2|z1W+i(?zS#<(hrDsykYSp;Xl_^T?Yh1q? zox2(KpP!tSC@`YyyNW}j zu$8-SjfySa3xH8bFDbT|Z&wTdrZ)Z(j7MkrWLmuEPp*Kch~`6|UDT&INOiyrB{0KW z@~6j? z(+?h@W+=*KBsL0t$zEVmKjA&@Q8>wozox6NPU*-ET}_H5=_>&xh&L%*O@I`nklyh! zMFKXo-k9V2kG6`rs%`zNQPA7fD4;pLQvJsk$UHDHOMweUv1gy9Ab}*bHNQ^T?|{b~ z-hH;h&0{Vvfsf)|Kf@V@JL+T*6WcvbuO&T$19joflRhPyrvpMUfo>jJE)CTuP$PyN z<{Wdy1xTQO9pGhYsk>{PB{{Bar>wA>0vN_OMj*1QwU=O53pso9CYdetgXmlUtVFWiy#aE@H?f8(>8neOQ zLYAw>PIy$Cfj06o173{VDg3_dW|gw~ND9DfUbiQU*@(yB9oFdtZus8=e$H>+>jrmbX&u z(bad)a9~R@bO7k?sv?2hu-%~!5lc?Wll$tFa7j6QG?Jl~NzOE$ZHNRKlQ~;IE0?=u z@lRaP>n;|3=)Deh?{l2{Tz`}Typ7$Mpxx}NTbcK|SPr}9sm#$dIg7U5BPNMtzg0W2tYN+?kw=VEOfaW2;sA&n7&60ii%@+?{; zV=LB0ZooqSjl@F!;(INoQJ$kqFxEL$kbR!@A*gX%tTHBP5}CK5=5^bueZ zIWeI%tEL-q(KW*{e)(b}R|Ypnv48D1Fsz_)1GWiTac>Xfg-qdo?Ir<KaUKySVe7*lZ_z6(AusZhA{Mbn7^E5< z_7VHxAE7Y;OAs0*2rZqXYcc3K?X)Sqc3MKUiK6I6A{J!h@-jnKbprr>9U>4_FdEpl zP?Itm-L_=+f>R51N~<;(9#D2GG$Wr99oL0a|Bz1vGX+wxXJ|HN?KTB|hhJy-6gu=( zUA2t=%y^9khk%QQhgbM^M$vB7xCL?u6%W%C^hQY=hi2+XXp!cA8#iEEpnwQwF^T1Q zdpJbl5n-aHD;0Qw4~2S!R6j`bTh}&y7G-OV5g^Y(dlRrlIF@TT)?%B|FU0YJFgO$~ zrdk?BiYtX#*z{XO=5&m~7(>vC0x>$S)NQbn8|0*jEfHB*Q!h&W zVBtk@_8?$=7L7}BZ#>y({0Ee7C6C`|J!r^Z2~dDcQI2QUcmF^JMaf-A5qavBf36Zl zhm~MwF?uEkCH*KLdw~~#p^LmjI}vdxxzi=CHy8}?7_&Et2q^&*uu-MOOBz`toak%+ zJP|fkhLNdO2EW%uGS&fzQ5voxVhq4rc(eclu!>OAiWEQvjoBZvvm#THHI5=574edu zxpJoz7vh&ZI{{B|=Xh7?R!LD03E+0&1(i$ThDOnvU1esZfRqQ9hDqTM;Mi6H*A!B@ z6lq3D{fC=?$C}(_dC%cVvhsOiu@-EhkLLqw<$+2lS0yWQmMM~1fl&k_K{>x8MHT@; z3pt7DNrR&Jg1~5zo^o`-7HnPQmwwq|99cW4@h3WnJC6y3CdL@!*&hgTLE5)mpJ^{P z5fNG=NREOvE8>La(Tj^j6vLr*k+hQlAcj{_4_h!_w5e~87l&C<3Vha9Y>0*bOtEM9 zMUMWb6vtVA?spZWaH90L9J3-&pu~Vn0*LzWP=5C5oYFY^QZ}7I~k6*`5K^1w8g8qoFL=L}Wy^1ObXi4S*1$0bDVcprnZ# z_M)J+ks@K&a;P^K?x`;(U~ZVUlmNh$Rk3kw*A&wjJye+-n~+=MQ^A_*pP;IecxY06t^itmRN>5Z6vNwt9xjF19 zip#U5zI3H8cAsAQIiAH?7BU#pHiXkQ1Pd^Pk;ni`5PkQubuDM7E!iUfG{Ge^X|3N@ zn!V^wVN-?J#ebH16bKLi2tY{>2LP^MoHq)0lZtQO8i0M)a6kE?i0Yc|nsFbxLrTF4 z;mWRvhJc#Hs7n!e*;NYTTBryZqIT1%4aTsd7dS>_au(1QXqhr7(Hm)LN^>zzEMs#Z z(t5JdQ1D_O7DcN8;usUaKYFQqzeIGtwx_=qiZ9l(FSdyvb&3UWNRUE3KT(uNju&zfDZ>7+bVygw=dJh98qx4Fm(9voCo%(r0RFFX*x|`?5u6pQeR$h{<&6 zauKZ|M>AD4L`DEX2$KE@H4I7Em+kCRiV2OLr8IT)&wfa<7O*;Pu= zs98ISmni`<%NflH-GhJ6zx!rO0jM(s)fm$Z$<&B12eZrVGjr}qit2T z{W>w58Y?==Bx7kl*{PkqK_$Q97UiL;GI3KNRxTw|FK`*M6k<`&a1O9|3psX?qu^BQ5YL3i}Cf%zA&c7a*7(GgGV$GqXia7ls0;gtkb46nkOzDS9@NYTXn#d+a% z6wDc3+~^cenPy`!hdfz;Q^1oP+P9yiqYYatfFptb{P-5}k-u9aA3zGEsmE%vkr8QW zw8CSg5c)VF_*wyCd_8x;LFXwz$Ihbbg1t93fB9kyMJ5(P$*AaAwgZw*2PUdkDu~$rQVpw@ASW>6HLU z5X=Y%X~8_NGujGCFwz+P!;+>jjt7-mFw#;m%l2?zV%8&H$)f@_dJ$VVWeJ*kF&m}E z9u$igl=~N8N18>7O63WfsbNL|A{n~Wa~oB&-0IMV?3ajq!48e37o5ShGf{&w7_C@Q z5fX_6V0DyCLX>jA-Ind8(s&^6e`ecZ^66=2z5^f*Ll9I>F9 zL>7oj9Z?q)co(Yr&03SKm|Zfzd!Cu=*`K{@y$XZ#`Il(dQCF&^e;J=QYZ!EF5xfPG z^^uv1adoW9k}vWiQ-UJ5fh?}XC*0>Q#DiQa@xs1wVadJV4Bp^K;kQ6EBm@=If~a~{ z@{b^M)R^sZrncc$GA}1lEId}#&ve!Q5b3}`L3G?I&soaVT>Y0q(FKZWo;q9B=+Yr_ z*=z*a+toLrav>fbz!3ypD2+%z#N#O2hb0Qya+c!YPX6SA&7%;G7PsP~<`X4%L8R0z z6BoO<+DwS+bCz+s;r>e-B~z^qfF~zQ0lZXfNLSvTxZ>jmY}^WbQ`T!72_|j1gZ^w0 z7&H?7+-xKi5i89pOqM9`(zQ(v2Hf zl9tz5YHlIsL%rdscN={Hp`dxWp|Js6;Eu!`ghjGt?F?|sM z8yXZ-AlWi5LZQ7FW#-X4)+AZ~6hI&+@xm@a&@MqDzmwZ7g2I>H?cV+){?yDw@?a7; zv7~O64&Xj}(L|*F9(Ccrs6N?DI6v}1BHi{MHiKggJhO@%*1$-}KmqVB9zaY-i?UNY z8d3ndr5}IN&lhro$!-F2;YOA9eb4SP01_Z8QBJliiyWctU&rm=KJp~rl@5D1eiI%O z3t{hm7mCB`Mh$9%hNKf~SrXTela>kL*}S9y8ZYJ0YqLIdTRQMJsp6kYvjJZQ z3#BXo9^bH(H1_c&%=Z#x_k@;G0Uh8QA#}h9!Ud0||Es2!xY76LbRuewiTYkzql=MQ3KWDnZt1P!o06Zf zD3D#kT)O2-stZ#QA7z!5^={-SGs(LQz+-p4@%JJr-R7ix!gXh__Nu@7O~LjIyB4EF za*dTl>_P8oc_MppP_?f(?k?{e9xohUGAZIXRRBSl7}|>Lg7XYEr#x;)Z`wk!f+~d( zt%e_~L9(vbVX?DN5?=y8#q114%02$9gk)UK-WwJ2rYpgjtl$3b{|~SNxD@kX&)qQ- zYdDD*MULa;?e32NalyhsD+3K4G+3~Lg$fRuG;mPCN&^cJD>9g{U;>3QBubR<__2hE zksn)-EYYH5N)swwq%85W|K&`TEn%8)L9#-H20eZLtOyZe1t$y&^n5t+CxMg9xdCGfzO6qCH{jOSMFT8b?x58n^*5%zJ2}v z1squL;J_{nA4crLM&iRST%7Q5;e%w#lp}kvAn;&=i4i?p_yAg9XoC(0UNBt{p#{~e zxl&x%bD#q!4I?&~kb6Q0j~zssg!z&saN)&cvUGX;CeNq+&!TW~(?r$~Jm~ zwN5)cEz!Y4)e7UaN=KS?>-w}_*E0+n+ozR=W*agjoL~Qb{{8*`2hcCX99v8=#0o6% z1rt7CP_)QEyX*qZ{|<5jyN5nI4YbTGaNr6KHw1CE58EP$EBLs2sDUONxUQjzDqujP z2{;fbq~B0FZaA89lqosnNRlZh6Tb7}123SX$bu>=Vv-{6d}6XKue^9_$f>Thil>2o z+OCPUh*)ba^(rXKg0Z+XF*b%4svtl&-vp411Q1Xlt~LNjAb~C5r0dQ+`2?(m4L0~; zu3zRdFj2-5bIb(DD4R?m%Px2@p)Ij%d9oiJk0PzfOw8qip|GDKZD=pV+pvA2wQqt5`EdZ3iUnCf#UH!-a0MEGSt(OdW;lek8efg3g z-@F!048g`0oQy$EN0UrLgiuvcwhu!KP14LL(o8ecP+gZZgD6r6zKR}V$_nbFq+kLG zX!PwP8*yCjBb01vph3~lorb?gEA`2ZJF?v0H~jS z(pqtE%WkVv7m`lRe+MI>-aWq#jFfr-h|BDHH~AOe0LacOU;xIxi!mDzD*$0qnJk3=G? z0I*Q^9i>^t16|X-gWC+P-8*?)`gGi&A~B&fpgQlP)cX)Znh#YDQ>PlHsGMZTiV&az(z%Y4(33I> zkb!fw3XYB>D8U`^Q8~}bk|0y(1!{6lYYYjQctnUhtJJdtRT$5=yal}CZEIUiU`m+W zGbW~tr6L@Jjq}B%sw(-Q}T^nMcq(clc1P5m*6e@aqSrl8~`E!~C!8fn=#kF%@MF_3|6$dOSi$Q&W1 zE_FL053$^`r6j4UXCj1(cO2Os|#n`cqv#OIkZ5KmjB8haEPM*$wD5q7}8QWG72EyF^w2 zd75lx4Ml>?N?-$ra_GQp>CwY124PqV{y7Q~Y7 z6x=Ns_7hxX)lONm5|N3B<)Be2S`P7p7r9Bnu}u8OA2jgcvu%JbcBt3)>f*z=`0&GY zdl!j`Xa~Cd!Nng=Kr8$bHWCM5v~roA6ymZ4+|tFga>17r@P%U<%cXm7o681dTrUpP zbWf)s9S3nZs_E^@0Ew$G*o zL+RSs=&m(n-3@PnefgFIYm^5fHQm*Cs8r1S;!tSAQs_Etae%{4eS{)j>_QAX1%a4s z2#7VzrEGKGjM-3YMN~v9fCIm(33L1iX-E$%T3*0R$``^jd1@MIROtW(tYQU!jyj;E zPSKgNVkY&xYCG={C5tFB7W(ZZZr85M*$|M#w4F@?POcY}|Bc*jAlK`maEZX#u3p+A z{{vr1pv&1vdlz2=K*(|V_OIzeWU5acZP|mix5X~^c*kYfW(W4!${?2sbR8~i2LLOa zNJOT?CDvM3ZowAyf?k#xx@RuUs3Z~;V=8>4(G{;~AYPpc#f~$As}IA)i=Ao4<~l)- z$c#YJx!)M)fh94t0wyrJ(c!GoB``xhg>|$lIi*U_0+#PZIFhVdsR9%@z9VNyRu!F9 z=U0nOTXc?{uy_!8_ z?}1$}S;zZazCHH2Y}@T}IU@dRhqDnpeyJDxOE&nM|BJ(WJGf{p0H_|fdpfx29whR< z_KTwCQal$>5XY;SgHVl9iM-jcjrqwYGBSwjTAWH*IF@Rr60`s>S`qqSjrowi>1dJ$ zpa2RGDsUP!;V`NR*nkEC!aiz=oLC*F7?vS<5D5|1g2xtOa8hB%58VT?QL+E4x*w8@VdFm|Dl#8BJHhyc zvk5=9L%_PgmpPn^_k+56DZIf0fI87b@3Fh?OFH?3i&h8#1dzJ97`8s##JU*3daIjz zGmI9{n+8dkEBcs+NfQc_pTZf4!~r-mdNU4L|B;8NK{GLp3z?3dl8+>DlJ%GfP@(|) zY8gF}83rms+*64OD1*>39h-p0k$@@j3lJxsT|@F8~F3%2V+49vTH%)kxws09HHmzofPNVUL$2&M3h?cj=$ zWDV0mI42>!!BL}>8X5X&m6b{tCpo4#(!m~VyyZfZ9NT*d4|oV+sYYs{ zLZyj{@bHam^nw!Vf;9<8Gen-9D8scP|0VR`4jDR%GjtEHs17Mv!#;$&Jd6uTWP<~= z#|DH8AF8agiGX**ODRCNW+Sl#I5xkqHno%sSE$Fk-~zbhHn~hPyRZjI^gl1Fi(#8U zek6k_V8D#L$2xq&3@jgxauj`2pMvX**C9dExDM%9DTolk6cjJ$`Xc$6qt57z%K61; zf)Wb*MYe*CZel&+ARRp-2@V)S(ix5k!Wo^=8k94kMpwl8t2{ zFVh3YF=PrUc?h1+x%b#1ym&{3RJ%5$#DAbiNKDL)yt*lyGAJSiEIS(osE3Q3NV_mU z^E5=cK*XkN#JiBhuhYkXjEnD^{|kHgtOq19x`{_k1Vy{Z8^%x&eUl7|VVsR|5fL1w zaghxRnUB?gDS@zv=uk5=Imw!Y98ls6QaTUM7z-Z6xYmn_X6zM}SQ-2x&X8-M<1hoQ zs0yi2Fiw*>=PV&3oeHVEk`wBnt`N^M0YmL`(Vn0j6_FCkvyg<-Id{xYxnR5gL{9)9 zw}0@zjdV|nf=?3Ly7`>4y{oo*Q33&FPrDdMx>!iK6HGL1z$1!_!xOGMM9jIIG6dkm zw#>{(HE1;^9(h_ixC5W$pp|$47;|ArAd@ae0)zu9E?^Fw+~yyx?sB~kW;pV z3xw3xxcJXU%u{D`Oo>cX2+hBL_^@!30w5~S2W3Rws*5lqMKNnUNRg2Csi|oqL6gaf z)U1#cQI}Ccrp}-|nfy?mxHF}IIP@5t`}oBbDGLMgNg8zl5>OeBn2|Ct#z6zh2+9>n zVhh&M)t%VYo#0jJR4@*xf?%CWsgz1#;mQ{g&$a+ZCIL$s%1$%^QR^EMF3nfC`&PQ! z)BR+>dxT7U{L{by|2%|6Jf4c2F5;3kW2q(Kn03*N`G69wFjd$%OPf?U7fBw{YZU_uDx(4? z;V1zG2mlF~f<&V)9?iI4@q+n*k3jm>ohVXXmATffLYX7hB`qP$@QOJ?E7=h`RqKgP zS`RJEIq@`0o>;>;-Bth?1-rn%(;{2?!&>z_P_dPZ#>|r>vV~w1#Ju>!L;VK?y$en# z%((zO^PJkYRo6#srSR3y^eoiG>_fR3L_OWwyOkoyFvU|Gqg31)Lvka^)51|@SeM)o z+Ke5ClaD6B|H+ja&2&WC>}VCeM+UdLM=IyCV7$TgNXJ3sH_=Wa*3E`-3qv}i}I{P00=~?ecMMIUl-fR$~vO? z)5ivk+XVDlx8uL7Jx{q{1%Smz#Y8%ItQS{+yE$x3u}RDZT;I7^&wTwhBc9^Tl+are z#gDqszQLmEg4B+&E*!iTF2PCkFqX@M5{ca@rC^A&3@`dIrd!O-p%{u)#g$q82oCry z*BU~ZxQUv0WaK!K87d3RsLCM?;d|mVswiRBea_gm&XI`^o=P4ksjzcY$uqH!^~j+H zSVL^p|5Gt7w+D?oMr>XHFykraf{o-z7c*kOJJ-6{zp{0#yqG(=$hCMpA^@<+N<8LA z%*4ABOc$dY20T~5i&|gyQpd8}xR9ccDl;*9ko$cr*`Yj9ZGa*WwUpAcmdp@{qdZ^a zxr1`6FIottIMvF@rihuNs(9d$XoJr}G}j^llz>@Ai$(`RlAhTan?*jKy^=_}M%~HT zV6BSAt&i_?VRQLKZpk_IxQ&Ux7N1Cqv4Gn5W!_u+EXQ&Od`-7v6T5r7y9AJcb}-Zw zQvz6XG1A&%mA<>EB~N8rX>eP^bkob2rs7vC*Rxr~FAY;-TWUBJUp$evzKmX7yQ>CG z|2)N85DOJaUkV&esaz@Xm|Faa0stU50}-nly>Tg)Qr6HG)Ra;l%gU<&&cPAjIJ8Cn zt&fv0m|Y1X91^e?78FjfVm)jWj$LX2(u5nR+qhC}F$x*(U+s7jZ_yTRNz1!fW)d4y zUjDFen+qo{GJBxUDxPW*V_UnxX2;qDu-#$DLIBYQP`{kAuLXc0po^dWusm&TWh=jX z>}ebuwk4L|@~P1E>7@%jBR7VRRP$Jt%FQMa%Ot6(Gg9k=a8b!2WSlZ4udrB!iAz@& z3MV%ycF3KUf+XT_>|s+P%4N8nQ*X-?v3qg5NO5;#y0h_GY)$}4_=n=&YQ%69WU}8a zT8*5#j$?_Kk?sj~_83vInANnDgRmSa;bZwZ6~HC07)Fnscwj{yLPd5h*+WLWUh|bO z0j-!JrgTo5-DJd`3KK?bCuLe&v=1%4Ic}-$^q6A@H_;`5s6#)cGDY2h;dF`x!PVGFJ+o(+q(Prx3i5t0qACG05W<#-|KL1P?;M#R zNbXUqSiV=R*>tKW*ezDq1=gtiSrT$u6J6!pHFY9DWo&};QCkZpSPM}yl|`5K=poQ) zXY@pIuI1j_$Ky8=}wxV;XV2I;S+cT5NmYz5YI4ZABXG#3IJY-spVmg`6 z=*4eg5#150L-P$cAc28afR)i)nAo^uBncBJ1DORVqEIWEwI}lM|J5pVq=rYn*zIp6 z6;jg64xXS~a-nVp$aGs|Yjs(YZn@!w82Pw&lO>aT!ob_dFaa#WP*fxhH^#G1{h}tJ z?iA@H`>vb}xquMVa-4S`#*w_a-m@wv{N?lKV-yMDY{m{awDwj2f5!v zQnUK2zjK)DRjO!sBz;Z~;1Z(q3RPYnvSJFuFFJ%s6P|E(G1;)X2Y&q!`QYD+Qe2px zQ6>=ucQ;zrJ)U98sgTU@kc3Tlm6xveaqh*(khZq?Z-I?25VU420rBU6)lz^Y_^sKS zRa}7?@voN2&dmad2<0?vJJ)(UAC`#uInon4>;MP?44O13|JcAm1q%u-Bve=dp#v)h znGk4DrNY0A8aHz6=sD?H6D0(@?aHmKmC!{ZK;4O6Bd*>V@kk}FJ> zT%z-2D@hR}uE4lT1AzsaNOe#Jsg;JY6;^R*p~+eX3=+od?fWuKtyT=F?1DC4HT7-h`0$<#c?&-cq5KE>gZB(AADdzbIl=jffYQx=i)<1Dh5%K zB5p@oghc}R<3c(iq1Bgi=D4puIHX~ zI!*WLX!ET_Km~1e;8qzVNRXzQ9FQQFfo_m6!Cf4*;a7on8fZqe0~th+RE#z77`&Tx zU|FG@P3u7kk5Nzo1yoQ#0S5phO4N(t84RjgOC^Qr!Y(>I)@=nFZ|kJ6zzRI_Sx&`g5Q(xL^*a?6?G|+qAgY;t-0%( z*!oU6FyyaZ8M)PVG*@oH16+Q2^YIlCfEz+8Fo6l!Wdl!B9k~Kit}_L|Xnir)TNqS? zrL-$Tw-a6P&enl0PzW;i+1+PK(1p*Stu_Z?h(yFgvH!6pdW~_7rW$jp3YgDv$zy=_ za;U={zT^ddW7TtvWF(SNM>Nza|A^WYR~`1%%_8w32;3ABM6e(PSIiQh&Ne3&BSHm5 z1(8Y>z{MZfJ&;^?A{PNAu)4pPpbRFOU<1-pklLxQ3Ko(~qres~eBmo>g7U!crX|S8 z1<)bs3zKRJVzQwOUXmO~03K4Zl9t@aa&W?&DSd?})=@}omeddxy)a3OX-WzW zf*SU@>LxccqOd+GviH0va}D!Z@<_&kU25x2WjrHard9%`sVRXG)DvrJS3yNGr6Bv_ zn!O|wJP%~%F=Cs{*dWuG6+O&^rkP_A)&jT2C~+u*V+ePW;vL1{@RII)C-#=ZDoyHy zO65sP;a+H+RW7kQrfgx$|H3n*nC)yu@EKoLK*qoDrA;wSsEFJC7p)GEfTGhP7oK8A zt}^sz0%SlSeoPbup@#F-8f3Q@!BKusMMpI7nBwGJz#43Pv$hUls(pnWfVg=0@Gxu+^P0GvO*Rs~FV8x5qwq3595BM1_Ed!4FcA ztqkTOb}5Wq1bLqnaTb=Koc5r)CGx`1da3=MMM7&q$VEG_rqw-=1aJ9eh5Zt#UaibE zW1$`ctSf*4{}62f6OhcH`1m2k5^9@BGTF&s%$EF;42rZG=fVi0PKW)t(T)zueD4>X zB`;Bw+JOjbT#Htzz|kpu@>R~{CzPwq3}lLf$oPn&*+UA1ViQD27X&kbU7Fdra~Yi( z>y*(py`>A1jF5|Pr77AGKmkJ_TAD)aQo-mMM4%yIz9_KG#w`U#%sL2a8h7b&LMYpn zt!xt>E$(su!>d<>4-?5b-sXL=0dS1iYB<|&r2EP)vU>6vFUR-FC>@M3Hu zxsmY{|Ijw1_7e}2N{o=Z<~|nn%4<2A^EFdK_=FH=M?-)Dz>(950ZUbYL}gkAD|4!T z5tG1^=&00gO#GVG2q_#)zu;A_a^b+NgCadXH&%T5af_uL8A?6paus{i7GHGK!mqE<>A0jjGr8ITu&%!)_8d%}+5OXK>>R~d*Rj2w08BtN zeURO4(A{x>ZnW4qB~L}zR?ZQNu0RpJq_8YFJX5i)d|Vqz8zU&yap>O2Ci^mrY**53?05<9`cDrLVOa8IM0)ehRei9 z9uh?8C?YR;27xG$fehgzzFq{G* zB^QoZE*(Zv#N(ao|#{1)nS=Rq7400G*qe-@?3KyrtZ04F%Bg$plT% z?KntJ$d4D))(qlX^bBJ%I?>}i*bNy3BQhc{g-~E9&`XkwAc@^)RLyhcj*STv`{X3s z^`rnufHZ+d9&rH!h!_jCmxQ3kn0V!~EQ?XvMncraiqr;4HAYp2X2t*uFt$uWyk&&& zBNRc16ROZG4rEkth5QiC;>}<>Eg7b9A5{2HM4jCR?NVK89UD1Zg~46~eTFMG1wX0G zO-?2l4!{y5TPQ972mEAkQUJJwSZ>H4wao`YM$tle#rZ8xSgptm|1A!rh^Bg;O7&qy zm@HG{6xmaBrTUChDly~j6oLP&M$$>y!d&1R5}CE747QEPVN4J~w&KbN5-&Z?Ma6|9 z?&T3$l%AMmpD;-smIygPp>&4W1pJFifhYwmfC2=-oZ&_;v7(G@CtE;=KiU?jz)d6# z+IrULs308%=2Gp%)|%a+@j-}XQIIS)z&F5j#RA+?dS&E2|)rRfQc#qiHewrf#TaKKm^XEm#q+e zjE8hMhBS6wLMRS5u~+WcD52&^vIL8#DcO_Zr;<6&YY{}z|D{D9Mow4!r;xQJ)TN(z z+0asilUh7WUxiRbRg{CC5pkv&C90V#LS8_*+eq=_QZT_`1^}A|fQg18f6yv_0M}yV zMov-;u-2(qctz)E%BH-C<(N=G6e_dUNU`X|d3hP`P|#`|BG1*>VHn*-#+$MPMMNxV zP&{Mg{F}o79o9sJ9HA&v6b3~BC;eR%e(a^#Rg}S5sTWWHLY`e~K?yUe5?|>?f6ywM zvT2D5KoW%50Jx2`)ef-gBolODg06^os@x0`h1>|$qS0KlZtQQIQ1w04nmH3^O-coM z5y>RRxnj*^Z4tPZ;0$6)YORv!xhig`h5s-ih1KP#|HA8qz2p%F%|%6vKsd!ixJy(x zzyyh<`alH~mZ+{0?AwjlcCN)L%?AN=AzFw@i%RUu5$hIEH^?+14xFMjS#6aV!dY6srH}P zJg=}B;DAnwFlyGY(=#?c(bS+dR90)S2~|EcS4NLH{?jN2^lu}V%t5No&^MNmbG z6M^RI-fu}*Dk!nf=LkeDejzha9Y8LsgdCz0Uc@to$kHXLM>5Pwk*C8j1|C|dy3Swo zl4`xiq^jKm#o zsm@jO$`v{`ZoNtd1=0};GKLG%EEuWJzn(}0ek#MhFc_jm87Jql^67MtoyvXNi@A%& z_AnrC1hV?6D7~MU04twB*SXT7I`(Ta|Jkf=Gz4cd)XNfYQ^n}?h=^j`A?Wz=ztG=Y z)a%n|FsfD}(2g-8yH9xJE|XbnyfG|e#IbzfqI}F{o#sZuJW8~voCPj$NgYPxKt&)A zvqogeGfv8KGUM{NG4VMR0ff_7O5PW(MW>Nipk!)-O=DR+Bc}vv%1p`xQ4HWZ$ozqF z2stj|;+laFXG}WoDR;n3nrtv9YJ`xb_Etd!lGIvI05`(c=dOh++D)*csJdQ6`!+-# zpKi&Z7s%Q#F$c1HBE@DI1asofiNNuWre^4{P_;(LK!}qGh}Ixe8QKy|h{S00%yYXX zlN?1LLVU7tI&Z3$$>J6lI$|&d{|xk?WtFQA=^?&y3TY{qB1c6H2)9yorU=}K*5=S8F)aj5sXuh%ykmTEMc$e%EI2z3dPyg zZYNULvaaZz1ttXXK=CfKSWlG_RYUXzJVYtj0!5mn*)bVz_=7#zLn}CeKTOP781N&f zhDi=>2bh5iyub$>23Z(Ua4#2Ra#C^u| z{xz41GSE&8SC4FJx@ysN^iJ0)1yY1j8#Rj)z!IQ^9LL{oFw!nJDc8=g@H)iRn1+1! z@K>0EJv4wl2)RF$L2J7L0dzrYw}L%XKt0%lEtrBUP{2J@fGfCzl)FMLN@{D{13xpl zJ@`WfxPUv@LTj5rlNXL5p^*M^Q|cPjNo{g!T(}aBhgtuN0qync$+Tah>P`2xm1c;T zSjsA^ON3P3q(WD;|Dfo^tk438$rVfXullq1nq0J0)Q*WFhFTrggtbDS5r9wlr{m_gBxJEEtG&Q*un`2 zxd*6uup~)sK=_aio0};KIu$TYg3kZgRKRSzTnQ4rS{MhD%g$DmuW9X0x7*w@k2F)A zpEU&yr^bsXY!|jot5vr0x=ZuwgX`(k7~X8MNNyb!9ifdLIvYpH=@Jl|Cq69gelb; zbwM`l3+skK-trAK4z<~oL5YTV4(+JncnaN(z`rg%3AqEJUU z0dT=R5I`%q0u$W2DU<@mxI-yKMaNe?6@YmI6#U8C!m`)H0~CBi8T0x;U5rL}lg6QZ ztSGk4-wy(PD35V*7RDCaC32!gE`N$gb1$&XB4r8cm{7g?Mmh|C@1%l`IN6kq1JxZn z$ZW8+-U;g2zixRHyaU+7;H$XRa%MwL1>>Ia$^Oxd&G%9R5% z^&E7$N1%&6d#>ya^jE-Ds|xn2m}+IuRw)8p+z}{X)>ems_G;NH;lh?14`#HQ&}xCE zgPe|?Sg=ylf`bZ{DXyfLxnj(k0v#gU*uaYA3LGe)R?VSAYu6=M!!ALhb(z*JUc2rv z|GPDZ4kS8s!AO8)0|%f5auhg`A;$tD2eK5%aO6RV3_UWzK7D&emMXt*#+kF`=HQQAIOuZ==gJk0&HDbE;#}SEX5T92^ip`0Tv*zBMMZifC3X* zaNz{n zHQ-)jO~@KIV!|PT2pZ|Rgd%F72!sw=$f1{9&et+I+%3w1Xifdno`A9JHkNZC~SC?w6O+pfy(pmV4S)26eM zp(MLIXeI2p{PMCeRkCa+hK}4xC!W@e)7fXCjaFKsF7NmTHxn48$v!(Pt%*N)Gdpfl&9>#pAcrJVDYevO1URjFsSQ? zawW|%fd!V)w^T=EZPbHD&2iN({37W{SfM+KI+AFuPGjjTPH9(`PWm__hDdfP@Rv+X z{8y1&CNVvn)Vx{p$tkZ{=bbxT$%zIwH;#dBH&T&^i5zTX=)^d#0D}Pt7=VHS7#M(s0l5FkLlFQB0U!_n3ISjc02Tq@{&y)9 z1;9`M0tKK@00sqMQ2_3LnxGf}h5-;50EGcC7yyd_aQ{;e#R4!afWQJMEP%lRSS*11 zA0{XcfZ+fH4nW}m3=Y8J0Nnorg+l>241gm5I0}Gc05}$a;{Z4Sg+rlm7!;0x!ckB- z1`5YQ;W#K9fWe_KI1C0yz~Cqt90P-6VQ?G_4j|xA1RREdBM@*D0**nzu?RR00S8cU zC<+ck!4W7p3I)fY;8+wKhk^qbI1~eiVc-Z19EE{nFmNmej>EtKEF6l3!?17!7LLNg zF<3Yj3&&yM01ght!C^Q!0tZLo;20bni-Y5EZ~#C<0W=IiBLFlCKw|(j7C_?wGyp|I zp=cNsjew$2P&5XL#zN6JC>nsFp)fQIhDN~9C>R<8Lt|lR91IO0&`<;#hCm|_XcPjC zL7=e+G!B6VP-rL$4MU+3C^QO%#-Pwx6dH#@0~jM&ZyH92$#5<8WvIz(WB%48S7*JPN>L z06Z4J;{ZGW#Y3TZ7!;3y;!#jM28zc*@i-_RfZ?GqJPd|M!0;#-9s|Q;VR#%24rEFOx*!?1V+7LUT>F<3kni^pN{01gku;bAyD0*6Q8@E9B(i^Jn^cy2to zp{ALsx~h?;l$Zno=s$zvzJ)*_04E^w9}WD!n*bzuK(D})8?`$SO+eRfG~r({98b;B z#jMaAmqN=VEf(yQ$)m}{t{M;V%B-Hqx@TIcA=pwgoiE`sRie{cJ6o&}G=v*(t(z}X zi6P_A#ndlW!Lo(yrZ5d3>I^7#MJ+3jms6MVO?G)jBHopdT*Mk#mtIy8dR=xWSNn1RAXG)^cV>U#)PV2jD??~*4PDIHA&a2bp z?z1k@B$_^rBOyuRavi*myrV7Oo9klOb@=kq6YAf575;3^c_lFpTYSb(*+Y-^61a$X z7oL)5!d9%xLuxA3d>baLE&NBH?!0&dC*cadrV%J}elcri7cf34Qyx4zfjv;Jeps4xGlYEj?{UrjpW^Llr>^?dUz;-YG+WJa%uI$u)G2$tG0 z2cH|3^$qQqxws7&xp|n7{&O-bXpG?@eqza60~}hL&UZ$-r%S%X%2qW%Bzzi@ZG9yG z_sOllYl8@Yue6S}*DMxQ911P^ioA$8eC0`oW{o2EF8HWZeJ$V++|;G(liIkQbL`af zTedo6c-7~7ug-%;H?`c0Zl2b%C{j^kUjG4AVj})j35?rw@+!Nvxnou|BAHd7QzTAF zAm%07y7>LCaGa1n=2K$+YmLf3Xw94U(~D_PPy;U< z^c9V*O*SP?efVOy=(>D;gny1c)o9Fllht6CwIxG z<{zyHf1OGbvM(6?nkV^F(lN-3!W$W-Y*zXl2k@SSp0o{-3WPepz0)Anb>A@6*7+p) zqpf}a;*?A_7PH{obb~E(hXoG9s6qhoIP%gzcAYh=pI@`&~aZFNN1yh%g0=Invc{5GkMrh(f=I zG@Wd3Q)_kf(wsj3qe|K4yv!MHe5OwfHmk69E*_GZw6&mf`qL7c&Cs>~QXuWArc!E#Mk^-ChXGYY@Mulo$Gw9<+i_c2wGn}Yun*0d zJwsy(M-%5Mj!<0>wVxd9eT1UnRRdrfV%6?|?|vk7Jk;DUQDQGiwdX>pz;6?hfdPKn z8rDXQBfpsZt}?@AX{rsTLMHNJe`KO?+Q3>~CEInQCDF#fi2zFFuJ?t<1J`@o$9&_f zvZ?oe1Qsm93Y4}Ac5_vPHe*{?`7~S(9~+k>5if)8i*$#4%(JYksm^uY3bXgEKIG?qM z|3JWWjwBqqjS74fWJV{sDe}aN%c*5Shbw#2k>XZ6m*X+?Hnrhr3H-I5Sfe9($!C=f z5+nI*RFUnj*HCnXgrcOcyngVY{3xkms`oP3=&atXj?6H~I;4aX;MWv97Tpoxe|)cJ zCv}%4TgC3w2p(LmzvkT@BcK;S!?G1lCI^!D4om~dS~4L87Gf1mD@dN#vL*@00U-H(1mXN+_hh+O#MkGwLu?4S~YD*lmf#E@JVhJ%!EDC8oga6Q(!_f|3wBW zDcYu|)8)Cf?Tkm{OXhe#4R`3~v2u#|c(K}Oi3>LWstZ|&8)}a#QD%1V(sLlAr*D68 z^_Bli=YW*|jK9s*fcbr0D{_T$5T(BwAvHVvz?mLR=?D;zEC6JWp0+H_o(C#fFWMT` zwN6x3zS^{^yLAglN|1b)97C7~yZtHs_G(*|#&YM|ne4mPkaE=(7$H*8sHyPul}fVo zBAvvq%DW3krWM|V5T*B>AKC_@g(db#rK12^F@T^15%pQ?3d{)vx%L;@QE!aY4EQ=F z_I8&rbX(z#A^e?#pHdDI0OeeNC0 zQtkz&F5j@Jm8ogOc@cT!bg_?pEBs6fRqtaBM{M)FK9fF)h^epb)FQVcle789*zMPQ zxPNkU>f!Xbe17DcVDpbZrmFl_T?_UyZR(WAL^2iAh7aFr@%9{~>vfV+gk84rvhQWl zfu?Qn>BnZ1UWR!?MJvd_TfG(B+wUL$9I`7`+3NhFrXA_nX=A{=BY0){`wmCn)q!+6 zXXj2?U^$r8KrFDr8YB#RHpn}FQ`HD~CtEm8+fu#93U3CaSnMw9H+9C6sz4x**TD`d z9mI+y%As{3uHp&d4&JY;wfRg- zPb|gnk2m!A^1E>C^L|mD)?yKWO5y0>#V&S};GUaMX@IX12QNZGG^ip-%(jYzlI`9ygW@r7w~U+@XrzVo;g zp60dk@ARi1C+i;HcbhMTOU?IaCqv$l`eX=fZE#9?HdIHnRwC}QZuVvJ`%?z{Bl(ah zCjY+n$cZl&FX8fLV*#JE0rGR-yB2|K<{>8SZVcxkbn$LQppC|KRJt+9^moS1b|B`(VB6UL2f=I&L zNHZ=Zd17#Lh`iY7!rYtrs$V;=EY9w@l>B{1?*_xIu;iK=D_-C*>y zmkXI8j1iG}Ci#n&i_iM<3oUa+OeB`x)zzmUfTmyD1}slVEPyaIiuKk&c4_)g;p<|P zJ7T9-pS=DYS!ofC^>|U77g`Y-Q2)y}M=r`kAfB!ha8dv?9KHC7lYO)UefdMniQ%IR z?j~*UkY9G;H!r+Go;}B==tQX__5_C7U8b}X>9`^x1*z)eDjG2V(N&)WtZCF3^09|R z;dlh43aDJ(k2^n&UH%341SC%@S)Dq%Mj@TfJ((^(nGTy=l;B8KYq=`>bSKtZc2TxN zJBE8zwkYmd-%W-(w+F$<%dw8w)J_m&E!A)$5%n}xlO#N2BC=gJiK599T3E6MS2C?Y*6aE#_^Q`C&j^ZD%PMoL_WGxanHk6UoD6;tN|}Xz z92(}cXRXK=n_Pg>NJMFn_@^^vf}SQC7I?hKm1i(AurG*vGm%Bm1hJG$=UvbIYU%Y! z0U+m!_f$yFm5Xw_$%W^IIIV>;>_UW?+;e50KF?1vqknQ1n#-!>UKRpjSGDL|%bayr)jQvrc+tn3p;-uhcw!^DxTC zDgt5zl$+Z+6S=d68U_nEhZm-7!#SR>=TBdV&vYh&>m#RbinRp&rw&ns2}tnMk`EJ# zCSGZ)Fi^f$G68kbzCct%L9Vkv>8G2L`S*Yt7vRhiU7D0GfFBRwO>pDsh`&Sa{mINb z-OW2N?5S*&JBGOIb)|X7WcEK9rXZTMk=tVO@>I=96h^aPtRrmH(;paD@5wb{%+caf zfb6{osL7(wu!Ub>Kvh95m_ks_aFcC$`*I4 zx+#3}JDhr`5IJyLHNaA>JW>^>1F~sCWfhcXGZ*UN6;-_z{9N-x9SSPznVjkrAhyR9 z&Sa%7=yY?hh%%x;O{60n^(w{ON>tbIn6bFcHQzngE{qI?#4>Uqb3m;1QzZ2e1;SzG zf@D&M{_CLeeE$rqvOWCxq_2iWaEu7c2>FMX6brP;|H?S*y}h zYY&HJlCQcI$h!#&`IfF(u9~~qbwRejmb!G+aO>8v{|=yUZ=zgqt@~Y@d+;hi=w&!l znIx;v*;GP=qQwKnf~%s`UqbK1$;-RHrjp{lkpF}{$Jddx`&x4$O<%17>c?LTz#?pq zTs478GA@8txPn~~@_4#}O%YI&0Bq4wtdnj}1TyR;yjisDz9*Sq)@4KG=ma-XUfyTo z_0O47ASCyH_vB9*nFJ_^yqbKVakQ{id%Ws-*Sr2}mF!Lnf@c!fvTn=ynQr+ZZgsW9 zp^lq;@oXO(=r?MXk1@+a0EF6$aUi5T)OSY6Ep_$P-ev7xwcn*q9dBG$*U?jt;+XfO zjB$mH!Aji$O5Jo^AZeeD8IOX<>F#hJhxz*YKSBja!Tq=V+_$UBRlfl zL)O-yXZ;wZ)=B0_aAItKeup88ks^5~)qXXHBhg()BE#fN7OMuqDF80<)MFPk-tFoA zG;e#d25i)uBivR>I#|Kzm3Hu+k+{pO&XP(ig=6Ivn6X%KvakM6pJIJbKy&-Q@a{mp zj(}(HI#b?tkt4^G>g7&iHS`l7Squ=IfQVj?*!gE3)peE?!z~#C>_Qzi{k`lzma_I> zOp1HW{6kQ+nLfYsDmE&8S?#Ra+~2JBp~t$UN}m1E7L58`rrZPEkk>!x=|3mz8NO*G z3agGESN!AcU}z2EIBzXCpP0paM>}AF`8?NMh+V2%fF)6zeZ-_bTPba_Tgm}M(#w}Z zYiudBPZV4EK{KD$?qY=HzP0W)3(|Q2&yg?#kbg!HVt_WX_kz{;}{ib6`5rl;r#WY}q!mwsvkK+ECNZIS1ab*VOvy+_%(^vL0fi0D?;_a6BEg zz_k`p&a!A)QQ}Kot>2UiL~l>`gwDu6_60g%i~7zw;q%NpmM>^077}b%l2;by z5TJ%|x7tKEv`)h=MW4qPPjaHU9}}H?6n2ww#tu!dj+B{i&%i=k;A`K{q7_R4rJv=> z*&i8d{z(g(gfcb%*`W2G-m-aT;_pu(fhF4BeQdF;Ha<=+HZp{8xG!2bHyLmZCp0@; zCbk1D^!PF?j3nr<5RNSrpLuc%I+cVumi+0lI%)dwv?=Yt)~MamSbk}S*YSxFbC6xT zN_zIJ^!_#8T*YxH^^$G3oxED_0d}IaocQ5{%IkM22Fn^}v15^i4Zm>kc3t)3& zGr6XC#Khue93^FlU9B6xMLhN>ob9dSdj6}7!`c0f2+qITl!s;qABO^aKVOQ{%KM#; z_#GjmkFMQWy`8|_rNfeq{Zn>l{}9-*=U-DEEDvqEfDCr$!s9CbVb?vehTdSEP_TXZ zRzu&h4|?$*zvy`%0Y8`=o_vrN)qXLYwY{4scA=QE$t`{nBy)i>02xdGM!$FO z`!?m^DQE8jvq$z5UT;VEDZaDD{g(*GvyvX(-57XpzrDWpo?|vT{LT*H>J|&pq)+Pk z@T(>Ms~5a`QZE6(y8p^{=gNNmidKS`w&}|0WzhQuMjxdD6!C;v= zVm-EV2Nonh7tU-S*NxEYuPBxs=F}KZygoLlb>j=`;nHqk{u0WPu)P%-@Z{@>{Xi}2 z)g=qzhD_$UOxWqf!z&qMf>2*^EBsaM%ip9Dylg7h3gg!IV;TC3zCx*fVKOchZF@66Uvcd+7chOc}*UVkO-`>_>AZ*_72{pti+w`0bt>w7<6&)!Shi7yj` zrl-i3fj%J z{{yJ1?yB4Y^OJ~RqoUQ~$vGHf6;P^#2^5SXjw(@~G?H1B%xgkt`6+=_G zJP%|%7pheW$t6f-xEIPv^a~|8%#bW*0!G4==w&l6?gkTbCKJWD<2?c$d9l~lZ2>Eq z=C3W@`>n9HH?A_ej&{}4tZJpa^xf)kn|y1QXw>7WOZ?~r!p7pbBM?*vHLd;Pl5#0JzueGSipvNY6=)N_XH z4jL!oP$95XBPbeaM8?_2M8&6HLTMxS=*7F6_b+fAf&8 z&m%DL$m2)gTVa1S`K{mTgQDBjt%ge9b57MLZ5Emy&+7_Q#Hi@qTb5a_7dXPpuREu_ z8CmzXSsaT)Ct{YO=*j#P(&DA>z|xH9l4`!F2{l0TtOMVHPLjEhi9~@}Iuqp)5iKBM zckjyD@BY3(gZ-Nx6TREFxPgaq5$(jw&(nw)Bg#bZj-E+zDaD%_iICP*^2R)rX0WrJ|rD?Hn~;KPdNmVU@{O%;mDm zRbjay^|sFp9t(=Z@#a;FkNzf`mCZO%aPj){`C6stE#-UH?8kX}(vK|OQX6H?h+f(S z>$qCjecTO^AEj5voXN9v-^|LV#mfn5XBkF(TRzC~soaIaD|5}iN7O{%SHF20pe=-7 z>ythd=@(m#m5_g^=OQ`IzHsVd{OXj6kk@fzz~NJ^QVW@+NX6@11L}Nr#t_p)Svubr zn60hQpkE)tIBDz2Y2=SZtBB$mt?!jrNPn%)DzA!mIB*Qit-Xr&z7hBt7Ok@fjXF-! zO^gXic5XQS{P?UjTQ*zxZ>62NNc*ulV!x;9`OgGSn9AK-#uo+8-f~*2{L6UxBHTWl zt@_C{5h)br7}E*Ea^c$RAKMQcey-e(-`DZ1hF=;V$lhyYBLlxxryR?eh^b0K&LQ2`gN z4fhOCis{GBaI$|^pXfPYT2|trExzey6C$$x*~(c?l>3OGRLlR0b+htVR%JyX*7J^W zi8tg|F`-10NAa;^fSTrDCATl{Ev*h|>*s9##VK=h(=1|Be%_0MCf&j4$4%xFL(Exc zaT5D>yc^4!?>p06X@8GWw;idII(`?egaCqCq(Fy+al+%}ls43nhC)SP?lVbVe$%|d zhhJx<`+`9`5W?1h=Oh9Cr#n@AC>mhMlZ!*}u!i}I*5Lb0Q!0EUA4FXfoyk?_sbO=+ zC=o&zD+}l-JC%}5d%>0|;~orVS)TT2C^g0k`sSOlA#>bx(!ZLB-G^?+ypYrs>bj5& znB-x|F37*%Hkyk;)G$(dr*z;3%ENV3v@+{8UQQkOIUua2$K2k!n6$o(PD!g>N*s_E z(lE&~F+j*IsZ1I>29AD>?w6~3pTRy3EmJo!oN1^or$2>hDtMT<4M75v>vY~_yPm=V zYknJDShjzt zBu-HTm<+^GnBjzME!+7~7o;y=e0Hc#yZ(hx(}v%G2qQG+K;dvr}ow z(KDc27`sOmS&pux|3iu#m(v)yOS@BJ7e1|b{>`piQ}82-HzPx96A zB%$z6A-O-dR0I3px}_r7Q1CC&lEh6cO&QNmp6e-?0l(V)hb9YPj&n873?gWLn3H2W zhtR#4mePBL*|7D16@!l~cO3)|G8v0q$FZ?1jNj(;XD+6~@!Zok?Up?>D|(@yhdv3l z$GxVmd28>FqvGttzT0?{BJ9JCC10F>d_{MUg$_@c88%xlHyzu;`n?;NmU1lQQ={=J zoQV>w3vQ*NXC)4GMU(NoffC}ph)Izgr}U&slvq}HZcFK@L`d5v%hY4THS48C4Ix_T zyaGQXTh~GArz4`p=4R}5jPgYk(nL~r6u%kIuiL~j;{)tZrM$Ya>V{wb3T&%!h%Kcq zBcqDfvN_z`u$F~WOwA&QW7t8c>QD8C!P7=@;gU2G15aM8S3ffkE!{r7yqI7VAw3L2 zBw-Up>4+{%2?2`>DAmhPCN&lmRi7((DGTW9=;%Aft2wwK{;A5Z&$K_536N}Z^1T$2 zr(rrb!HC(woN2kp>_;7o-V)c4r-=4?;gQ7c`A+O@FS0g4Vg`p=&uMVP&CmIpoNs88ZANhwzUv?PgQiO)y#ba5VO2DWMVkzB9+C)p8Jpz#p|2Z4ea#mr({PTX2oPpU(Nz97$ zmLdP!mdk7g*}|~wD7PQBl>1L6q4H1=@^X)&(C*wUM1m@G13C$+%1p?L1X)H4vjZ!ExfE&~wOphU zUWzzo8I2EUX*0>N;eo080sJU+%Zr}_`Znqb;6XTRXS!6&m6`$tX{{t}Qj|a69sd&P zELoNu)#+nZvM|}c7};Ff#J^ehk`qOu1{6{^9!i`b=_I1)6r^*XJ<5;hpO7Xc8&CsV zf(awqO?A?j(CyZRO~STFP~xck#vQ6I2I3}w7|Ytwlo8ZjDy59sO;%wAzpWu4CrceB z@KPTQQ@GebfYG;l2ngw#kjnUZ4C zM{CsDKmWWN`EWl=BF5y$$jn|t1_?8HIhY8kSu~uUiyT@~OEQa+w*4_~IWy#LQ>PvX zCYGR*C?PX2>snLC;GbWVevHbKvDKRFR3YGg2w(@e^tA2@Pwo*YF%(lA3J?0=vL%I- zVQJI?2|X@GJ+Ky? z6z%oK29t%&NnStAaxQF_UWQ>m*F6iIwg{x|q3DDK)nw+3?Iopj=A@V#QB%~AU+4nQ zeUxbT)rVRP`)*SM3n#Vd6Tb=12j?uZDEFUrOZ|AAws+onN-)KuOcD*9s9LX@x!*c3 zG-2GFxa=&=;+1aN05*FKxZIB-BN=!r^5DdA)>fYzTT+^oW3axgVK7oxbFZ1mEqix) zfmpQ>FH=L_a?$19gXu!dy}UQqb&koAQJ_Wi%?(ih5hPIa%3N_Y)-@aHm0tdN`H+3Y zczq#f8r)NC23GGCd2zp~id`*oWM=Hca)Tc07-*MjC11z$;n06dZp!6%7=^8(i z$m(Em*>3|Nf5Q7T_v)o=p?CROYliHgp(Y9jM@a|d|~khj7Nre5^E}c&@qc$_=Wn;V4TCZq%}`(W*cFhE-kq04|ejL>z8ta0111 zcBw1OF7#p-?$>;9jU#s_1it@9-)6412$26-WWyFjlXfa_l>i!~7FHV%PgA6bBGT|I znR}g!R;D9o`r7Kab-YyWU-c$msiiM~oMY>_kfl))^idf;S#B+j#vspVkY*V5UX?>SD7ePndMn~>OCt)h)PeMvWbN_E{OICA_ zOKkT_ig#>E(sT2UuKI9cPH zq_hYqM3q|=IuqRWRT>SXRZ>VkthMlQ)I%lkgsP<7ORje_j9N>ht_%l1h05-Y%&*L(Y8sWVDs|--`|E>|}Zk zoOl-5$b4?XAm4mti1z(#dG&FR;n2EwR(b?Z6BI=<>yn-eKA)-=_1x>|G*XCka$8Ap zX-hFjMW^V31r=Nw?pbx{Esnk^J2|C}E6@mdv&nNfNn`vaq+QB_+-`|O`%mxAl3k*s zu$*B0n!)q_!$eKcz`R&(VoKt{v|`=cR8reM2H^r`+a9Dib{GE(*v3YF7C*}}aIGL* zh96LBkp^!c(SOZ!XM4cA^WawC1j0urle9#V$_Cv z(ISJiSToZA+9ziQ#huZyz?*PMMh}jmf;N7GZ4#$`OzEn0pdgg0FG(<9M%EcoHSa>0& zR^7HQS}6~+9=RkhuI|_I|&=T8?Nn~Jm2rw@aVSD+2Fy?DqBRgPSKT*N&c}J-#~itJ#g_fmo2@X-QF7* zYhHst*>!w|LpmHXdZe(5rdeIl)DFEzd`@P(54;R^CuJ&+zQ_xm>8Vn+j^|Qhy<@P` zJ@n1X=vUzIw(gRk8puz%^fTMbJ8~yP%;2ACLMuHAbytO!$ro5R$J?v7i&+ct$=HBo z@lH=Fb4!xTqxjxlSM8g1t&6P}*JEvDrOyuVNd?#JP#Pf{zb9!{hVIV(Uv6+5;J6pG zCQOdt)o-&E!P0s~M_4AI#Grat*i6csAYHPeU5U5ve-ur0a z#C{PgACYNpo3G*J-jPv)7PW$SN3ye*d5sjcKgEsq2k=lyGPQpZ z2**i=>l++A@Lo#8>ej`Dm)W!mI+1+`^04c_ZW5)17rj^WsGRO>s0fF-KD?=tkIaRf zL%$5Si#hz)g7~vBB&?AhpmUF9&`V(0Cwce;`fYt^Kg_?*Z-uOjJzTk!pS0$TZ9ZZR z&N)QpZ~evNk_o4k7=O^!wMnX!Xs`6&lbs zne#Jy75d^@qu^xuP3$f1S9ytLvNec=987F|?zlIk5(5#9?A+ZO9*n=st{8i>H$0re zY*66;Vyn5!KO+vCMzvqoy z$Y==Y@>sJ;9*HE>sFe~}DA$d_lNkt@oqw!owxHtB50h9NR8N{r=Tyo&Ee!fh2A`l^ zoQn0%9?~bH_FO2}i6deZvJBW7m^zIEGaSE7T;Neprc7{HxN-YTn$2gNZuSkwe|fZ2 zXZp_XZ-im3Rs!Evx>S-P z0K}1jfRf&ymG12*9|Hj@{D8}y#(ovg-H}-BY_qq$cL^%V%Dp9-3{SXhmnbDSBWR zrpghLLu#a{xsqV&)TUvMCwRSPZ+SPXZ3Gf`-q=poz{TP?| zsMF~rgBQ?DMlv*7qd&qjiPab<*>z_Ge?i~%{{Ai8B%!lzm!o4~mE%@cD>vYE07tI? z=g$vbB{*KK@fF|p-ny4OaaPI)>z-fbI}o%Vvi>*W@y9xf+Zp@HB`=(dJFeJ()yjfh zO_LEspfBr8pov{oiEiO_S7o@tb9l zA(w?blbRB2+{_Ne!|!U+o9J;|Svn`u9DavGkcF?n$GN183~TKTWgUU-EFLAkpRU$k z{*$ZlcYe2S&P5lyPR>$6%jfMxTLSv zE=YeD;Z;K}p)zPrr>_FCrtK_TYlpEJl-b_w@v4A3Kld>q!Swaz&WzB*%0&3{-onZP zuT@nhs%@oEPX{|$mHwDqfvbU*QO_pdCLNK;ji)hBgr0OalP#jD4IqsfEMAv`r0tA` z&`;d5>tFzX%P$cg%my34>%ZUzNdXdk!$l@D&Wv}N=#!NzhSz6txeTuL@FZrY3DfDw!Orez(N&A6b! z9Yc-3e1qm;_UhFXv1MRq7Cl5@D(?wY#{?AHW%!j%Mo;5Ycs&i0+2X>*ct)dWzpc zj%8Igkj)u>p5SJj(5#xWUk;?}81XmEBi^GN{l}P@x_9v$etN+0bhKKO_Cuj8jmy6Y z%NaR;8US)xpCeSabjIZqL=nh%l*gs(xoC#+y)ZwUy3GU4Xx4=^lk=!|@`t9G*a@fZ zC%j!^e%qWNooMpPwX^*$@z%Lf+TvdLc0&X0plDtw-Q7*rV;JHn(sdkQ zVCpFG6WOh_gD*JOY48m=obN9wb6dS?C^<|&Y2N4kS;)e!cx->a8b~B@?Zy24mhAt%{hwB=vZY$6R1h z)bbWifs&+>x0)gN0K4A2%y+jwe7baDDl^UW>FhsL{C%&*3#G1wYQh;GXN$mAN1vkH zTQY29$i=9ImVzr7-n=B11{SVPFzHtQeTt4mvoq&vxKw*j1(i4|!pqV^shQ;#i{g)1 ztqxjK>Kj)ANwaTSBloVsJB}gu(ifAH%_($}^?0_@KS9Ps0xlnMalAgMZ7ygR@Di@R z=f&H+XgQK)ueS44#3GZBM) zu5JryEfM!)F7C9v9RM;QZmum|yI>-Gz7ELp5#tN8bpUPr-8ifv9sh`2W^8`-Z0Fj}`Z_aa$>_=Ef zf`8e-s=P{c8CC_%BjTmgKu)J*%W*>6)V1t%LEcjQ-~`$f1L6fjn^OKRBIdhRZO(}u z&I+2u$lLm(HUmRcFVbb+l)DfNo7xB?!R(%$2_oeA_siA$AmCW@YmDh5DXD)804t(;%N9UH4_4)Gry2iAgnb7IH1J z+L_qdiDWzAkPw;zB><`tUH>8WcrET9QG~P0(HC((xz2x^ybDBO9RMzvvtKWL^6yh^ z>%S*Ez-Af5;JiBL-z&f5Cyz%U#AUyi=U=oFiUPyUbCHn?`v=+`yQKDEIwmx*e&+QA z#4Cs-P~b-N$ZogEi>No4(85TC$v-Y;Fb~KYed&~)0-Z=QqMRAD6<#TfJ~!V~0M$b* zzCB1)zooSCO4XW~>Y=xj5GB=KUs)#H`^^myS8q{u?)*N$KgJzs*uB}&6Zt?JXk61! zN-O3h)jYzW=Aeg*z75z}y-&)^LfgL%c8lKN#O%sU&-tOXuu;QR0R%TF66Ba(DxTab3DH`yJd)t zrpGyB|5mQOk7ZKZ5sS8Ctlim6T4V}bdxTM?g+*<0XG@sxJ<@l!PvJ&$M2GhiCZLNFpU8J z5pu4%N)Ymb=HAvGvmOd8H8et%lOy|fgmJ|6@j|t}qYG?ZT@M>Wk1Umb8_N-Er_>qy z0LiKEncw?<#K3UPxII=>z%3gG&!yHgiDfd5O(4C=%ZofXpCDc6OD1Ty;JyUKnvYCIZ~ zg>ib^K}k`%HMT{aS)b_KK#^Z2XxvCLPUnQz2pWY8x9sSiyBf4Z9>;U*;Xrck*80fO z$2s(AZ6kDi$j4&52qBk$ulMyJyi9IodIPSe?IR&8c6vAN|0sAvBdZ*LV0R=nO-C|` z!$5VZ+FgkxSr0ZWz2h2vjXGiMoareJ5}%QgcZ&b+MHILMFSX68 z(T134wlXKyM(X}5C+Fiab7q`ymeU`Sp%?hbMOy(^Ri;1B#P;+I2C;K^`IRv)XwY)m z>CHgB+DA+esf71k?MFwh79s!9{w*UR@1gp!TY5PHK)rxo4t;7DBqg*8Ov9LqsF^_= zWEfL?@h?_t&?9f~DDd=iv|lYdAx`ertInM0KMP%nyJCB`i4nOv@mWnzyd zZ6S1D?V5tH!otbYhW{hQOLwXyM6%Gz-6u&r)JeKS^fdmnL?e+5iK2_Q`@6pf7$#F| zb^AsVmtr3vEc6gN`t(AgLaHoC&wtQ+ddhpLeUQgpkeb<%HO(rP$)n^u9#29uYo#W2 zqZ0azKQJqf_6R@{dS9I|yt1>_ReG3b3pH5sq|Q#)V+t__Zk#ezzqSf)e}T>Z2rkc) zOO6UBbWwg)I6*4U;N1FpYyeBqQM&swkWAIr^2ye0skLfpaz^Uus|~29Xkn$=xq&}P zDMP7-E-QcCr)6jiJmsxbyKW(1B3CL9bQAuGXLlh91?V*}B?$$8*aoR&!>zP2~ zb5a$+ov_d(F4w-mxig+Z2v&CE@lw~|qrb3OZ1FI)u}Dbr0O6X}C(1WjYU-QNo5WBeu}LIpJMa=8(MPG&hc&_8#O6+ zLW>>MksKjBbrcn+kE15X9~Qsl%2K=?4LcMH2ger_W!t@N@V(@1?)!3~@YqtI8d&CL z*E+S$VpJxbd12j1ZjWc4zhgXb1;6OVo=f?uQv4(fKDLqJ(EDXQ zw@I|QHI$u-q_i}|&!W^)j%N0r1=N+CS15vD)R&|5C&%|yv!+XTzm}{{1!jGoTD0g% zxG&lG$w_lAb#;bSYcQv%P3T*akx!Imfp42Zc-zE{OlnyngDUgPOxnEl9!$*2>_^f_ zm$eYN_#P=+3yI#q`LV_itz+(YWdRQ>pxWOrry#sR4q!wyZm(YVRzlB>H%}rKy&&ll z|HMy2Q$vk5vtpb@df!&W_S>!|^=8~y`ojJ-#aw6nfQox9;s>!%LG+dBJ@bL0Ler8S zgl)XJ&+9SsMUiU}l6wZTGkxm>-LQHIvteo)!B5SdtFwcr=IWC5n$$&F)ah)1(32@k zXwVL`2=7lZ{GQjRk$dlA``dqh=Q$wvkhU zF8zU#J)Qpg+E@Ru2<>=e$#WWzOc0haupXc}lz2_O=KsK8+4Xz`K_Pguqz={Q=Ja@I zsx6F_!1|sURG;fDv$5KZGmc0z5qWge9$Sc41lVg|3!&u4&Zf(c(@%dyo24zN#aVy_ z_YC6nHFq_4+Spt2M<#U~{dGW=f=(Nk1J%3cIiyUT<1R8874_TuhHq&xRr(35R}(+3 z&iOT|@Dxt@CcaiDVPQ5#Od-d7p0_h4Lkbkc*{)n4bloDGObxF>P|@^}PLCa3dj6?n z`E-O4QSjlT^+Sy(F(HA;Lj7sS=J7=bkx$YWWL0HJs!>nu#9`h>&MS$l;eS6TaDCe+ ziz=v$7t9sB9$;A>X=61tFOsI-r8Z-!5pCTZ9>A0vE~rJXw`%qtw7eUqIQN}}9- zHmk+HwtPzs&LBiKmNz6bkvMRz>FU01U2(n&iS@su6qwkjktUUtLbj*J>irmTWA$H= z|M2Kq*A%Q%Hzejs9y)iGlS|XFq;3i*r(yax+fcOIqop2FN{(~`g)gL<=7jtPU#D~} zMR8U(lKXXAzvu;IX>{%&l{7x^| zTzMt6!4#<5c#i}-Ol5kQ_Q(qQtj{gciUmYtm~I&rp`sKQK2@o++82}7&+f?5HP4e`v*hD0;ez`YbD-nfmkasi{p z+PFw;2n?)4rip0or_)zrC+k&JMP!fQ1Ysu;Ok!d&h>vedi} zCk$ekm2k<(M&5>P)D4<{=0uHTad<$IKw4b|!KXHQyu14f!@EmxK}nT@pHty$V%kjH zb4zT(Zp%bTtut5aIfrKb)K5Bfd>X;7b>=X4DbrFa3z6N5N^r&asGAx-5=K#7ca38T ziS+lt$lwF-tR?nPyAYLGlnJ$*9MULU0ZY)?$oGiIET6y)mH%fCT@RFp&h;2O%{BkK zomD#@%V4#;O{qz6L;we?w8}#Xj<GJLa4?M^MIy0lY(Vo1cVpD%W+|TzBZ)I6W!8y5#-9D9p{S zyzK4lxnwy4tBb5{v3nddPq}PdvL2Q-%ax~wk1tH;B2-CR>A$cGoJqX1J0?I>Xkej1 z!72^}B5XpiNNEeRRH`|z z4i!7rMGF%xT$Ct#Hf`CqZq>Rl;lTsNj~4LewNPPi!3InUFd(oHFW(A>3sPvnfbn7` zf*~__ynw)h0ge4ODX3X8#JlFfC6g@uPLlvAYj1|+5;{#7{G)8 z5y8A66ImR%z~6$XI~S~wJUN5F4F)?$Jv_7W1_H4wye<*DW`TYyI3XB*;Ds*~JA%~f z@q^tjW8sS>Av1_ds5ui<%^4IWDV_lG%a5l7;!CNh|91K>Km=3LFDn6gItnERWg@U7 z3R_w*!U8!wi7mC%I_pEZ&?>=%wdSJhF1_k9?7JpH^R2k+T*Pj<&=~*Ak+Ixze2jqK z3P{c`iMTti2m(qwt$`U;+YGhVUSrL*1uVO5fF*X*?Z+G|LlUwkkYwUGAsG~OLAC_Da>c0PgQk2pE5V)t% zUr1_$QCkvxG^=)m(v+u~Qj&mClkCCpQBV!#u&ub%GRv(J;c`JPy40&nuf1?R4m#*i z+p7XA__D4{92fhsGT$J3Y`QvAgJ?5?>|Bfi;Y`CZFf%oKt^p`vV_<>-6u5E#%f@A_ zOUaC#HZ(7Zn-0c1n@laVc9A3ixI34WleC6DyG}VFJ5$Yx@9_U}zyT}T<0vDJ^781e zjM__;!x3Z(V5m|(O+Z4STJf|cR3&ceQMkER5BH%lpkGL;ttJ%wdS@& zgcU`)II>kQzV<@MG%*K5QaOYU6Np&Gd{Y)U9jlXww1=?sH(eZ?D2};mheM5l)m~d- zfpD#~j4|MzPS;-O-W9WfBI0x#O{39t?lE2mb8^=*^(8H$h%m`kG#WG+p0Nd5^;8cR`v3-wZ`kDGwny^f<5eA9k>7F60ajQ+Y$Ozc703U&Su3o>qJ`>+HcLmN^`%BBZ+JNzeFExdxGgY{i z!a{-($64TTEYjTrAs9gkPLP5Xq+stv)VsCl%vE&xKwW(Hv%*{lG`ymg+mhz5G$AW` z=Hi=Ywv(OfsYW0TDTw|=GpzA}25w>^pp>XY8v$U6GEBIPj|S+%AMplE!)gGv0Qe>X z4ktNC63(;?qN^o^25x&x(z`|@9nByqaSc=8pW5RyVBM;L6{M5};TT6b&XJBo@f})j zW}*%9E=B2a9MBGftM9nYT=pAJwR8leDf%U7hoS$P_VT1XzwoAL(s_=W_Le-r=x8L0NF#3axu151dRlZGd0(=+U8dx}pJ?@ORDq{ojQb%D9 zlbFRcW=b%~yFIc6Ehd=D2OsA%Ko&-5-(k#}p2s|YsmoYMypv(}vc?KrZ#tu|(M1ar&J?ajd4jRmCH?h0E}6zV z1Njy98ktkoj7MsC>)X80)EPF3Qa7Kx%n|>$v?XaZFU!U`yeb-_WotFPPSkKrgokwFB1Xg0>yeOa0aujz4h&HE6BUJ+H6E8@?b?%ide!b z%}Cs|qOhWqJk=CVoOsO>P9gc7sYX?*2;Eh>N{G*+8j%5*_05^=MoOPLb~;3B=W4H2 z5M+I+G(>yo-o84o7@@KOhZD~NKXU(tTb0##h_gTyfSX_iFIZKrT1!af%1pX4tZ^t+ z?u-7?uJ@%2y->RjV)1&|ydq6|3rP}c>}Az7t%-#~Eta$ha2d6|Sch%WCzxa_rW5+@ zIb8%`DSNXtmTs{)n}nN}ddRDG7RSJOx$SK$dIeiqp{{yi@RhNgW#0|=Rcy&1t;otE zlpasJ((#Sj_%^KP04=$O5wXy$upJVTMz3rumYYDszM-{KOg<#SkLbC?B_2nXu5@Zb zSxd{V!L&@q+8=4$wn^5?){8zg$iet>SODYJx_HgLu$$&Jry~aM_!d^p%8wV-9(H_{wC2c3{>dOE~RSzcYdx-z-f^ z70at@UF!_dh?YE+3oZYgHWeh*TAmRB6XZIFJB-Z%A9xAooXZZ5cdCEZ0HigLF9vKR zLba-IV-0}TNE-Je2-DNa@Tl4&wOl|7!0{!mi}5YF(`D zg_fm$aPMrUr~o&Qk)~^>tm7br55UA}`6%!TuMn<&9Tj|r>h{J1JJaPNECX8>I9g{}y+>?TYggYp)@;_xRrtVpm-V>PM(YfuR_sAY%X zPkd@AO}wXTrikwf!cK&QaI}YN3dV7&K)VnJ3q6rTBp^WYL%|3yR_-W89>!Mcq6$0! zko=|00_R=!tvEK(tR_O>RPGfe!q-~RiNr4Vl1C4(MzeA#38f`4h(N}!CQZDA*4#-o zj*v563(5bMruSqF0Jr5j#Dt|@3inzGHLwE#{U(d1FwUGuY0!^G{!W5^U;{>g14e)( z-bmd@KmzPh0%{IXWP){i3;IChEt)AsG6ICgOog6~kaFaGyob#$%J1k-AlA^t_|D!) zBiq<%t6u9kf`bH|$XdXMn`CS^0BwAV1x6$d9G_(OENQ#OWWUfwHy&f4su7<~qx3FA zGakZ*7-9tr5PP&Ekp}UwCTKon!saw!CQM=;NunJW%t2UYEPg=($e@@kP_8!UL{Kqd zq)Gdbr&~eZ)bI&S^R|KOw zy#rW)4_ACmAbjL9&I>#mfG$j6g7gspYz}5p!Un2BG=ED!^m8bFK|eUBj)ZGKU1csl z!eJP)&8jB6N^YkJGK7HTn-&mF2q#{uBhBEZdp`0Q(atft>8SEjGH&l!K(r6va+Loz zQnf@wF<5Uk_Nr*Ms5X7WH|P-17DF*u^z}6NL;o*1XH+-nX#j=*o{nmLpmTrR$6WuAj!;d5 z0-i@2`6@e~hdIYH8INu;D!`kzRazGbM_foV3`pjbFh_=9{RZ(mJfH+RU`Zv2C|kl4 zp_EjauVZ9lOXo-nTcAt9lwodjMH)|#{0{pDj9`5R^Mo`q`{fk_NKQv7Ob|(0SjtDB zYFz-$(VjEVic}<<%16LN^`7X7Hq?8}6`>?+s(i?YFzYhLUjU1wMv-}Ra?SeNx|a8?b^mgzjAO&gR1|ILv1b#Pie5A z;!psisv47O0F?;$n#vHtHC{=;Xd%d6o%9MvwLfi+U!RsL|8cIGsmktRnyzOc8~}t= zgmeoQxx%gSga$_tLxn<@PMYm8WD5ziQCVhdIu;69#wE~1vJdSt$m;fr>ZOVHZ6-z3 zI1aV6#OOEhl=57U)@FBCM$c`6q$U#=UAE+A$#pT{Mq4UiUOS)+9%vrt(-W7r`7jp% zp0bYMt)wQ(!Z?v@3)YWrb%DM^XxL6~2`2{UgnM5P5?5BH_6#!ym#=n&TxOQ?TxxFn ziZ|j1etM5uYiVo^cMod=o@njNp2nacBRdc6|Jt_l7|w-m2$ui+f@mMNQ2by6G(ZAc zcmqh_jmq~V+HnKiaV%Qk9!+y*exV+9SOPXcRfU2C7Q`e%(Nyw7h*1JGH$aDNxDDK> z4eU`s@?#4yMI|=CR4Sw-+8{u7SSV}&hDo3W;A22_u4+*#Lcv3R{Ro;~b0AlwMI>Un zgmjU#i{RX*HymSWm>_TEP{kDEmcEMtg2*zu#9sVV1S@W{<_FD0RJHmzXV2u8;72#$ zX$Zz;4(s-kHf;N}#%O-X^pa{?zht5OM>)WkL+n6{0YC%(VG5G=ADq@=#G-O%<_}o8 zB{o1Pn$#q6xpqwA4@Ol%lsIyFIF}RPilsDTN@9kG!j}KZVsj-7R?8|_q(gqws4o8G zHSHHKIs*i!sMgxBZ`|Y~B{>OgaB%adm8c|K#08O4D{j$jBo$KMO0U+k$ zfMlZdA3P>CTi~Ms;EN^ZKT$e0hgm^N!aqhDi?}w{eYb3Q8S&9mV%}d%w_nOf%6krL$N|uw`SbBbF*nrVU^t7nr$&+qFFWUu95N$BB6H+rQ31!NO?r@Qcg91FD3^)Kj zoVFzt;ABW402st1(swL2I#q@_H5Wyt|KUCwL?)OvCFTNomR?aNas)Ye|PZ z3<)*Ey(&Wh6kx~6qCl`s!kKwFwK?P$W}?DLA}1Pqrb&W7RYJ{;qElv~mlTID!bC{dcC}3N_m$i<^w=vggZuTW z{OU@niNGZQ6ks+igOXBolgf|;yJ>&oR(995yj50k%J7qP+>;a-lwGiF0fRc!tk`&u z;qa%dcin5gw*$sP&xe9SP$Iu;nZW-IMZ;A>3ub~9xB|}qK|c!oBpd{4OTy15Mb3xf zKDHFl{T0y1qR=a_gV4$+%hlMT<%4zNsx>!u>C`?1;J%W+cu#f%4_dl_%j1oZzqI&2=+>?r;-q zhh!=?9M1Zpao{dWxG(|If(M%_r>b;WQ>Mt7BU@Uq62HpLDl{WEsZdx@Oyt$sTZ5UD zQdL?-#UN9hjVAw5>{9ZI9FkX8P*qMhCM}8 zWhpW+K!uIfh>}z({iKps4H(svXaZtZqI)T6by<#Cm6(!fQW5pnY~mpVTp6zs^c|J6 zO^^^0(N(ltm;gwzMR->dBt=3=RD^(-Zo2uUKyAE9r$Z8Kmk>k|#ipg12(5{mc^#!! zK}|^6RE17A!35uY^TF4WPBvMfD0?p60dQPF@WSgZyZgQ= z1w#&%8Bvx1;5KExtd)0O2O(LIC{*kfYM-JwH9DW7mr`2jq#jogtY<|D7$8 zRlS9mj--O78B>fYFa(D~C}7rDiSf0Wh_lwZ*Hxaz_19&QnN(G%lM$wsQAjOdqgo8O zHEW4SL*`zLKB{P$fih4T?i!r8 zLje<%E<$?ZS+7P@-o3DS=!Fz&VfuYMDaJTK9FwFRTQPA<9fvw(fSwCG;9#Yhcq$QC z?ZyApfI=}y7!heHpcc-qo&{@-U@e8}XP@<4n0pbDHkpaj+O*_~5~mn-vpBw$G^mg* zS=Y5n1sP;jnnq^RgGTlk*=%X5YcBZz@OiM=f4Z$vD^dhN=RyS0TYf?JDm)PT=c6B| z!S3TPkip#*e71rl3^?X7kHcPalAlECCp)2(d>*B_lJKY{|B+OpdZMYqxFv(a+LZH9 z6}nw9h(#>=3`%a47}$+P05{uET7G7$S{bV^T_NF9fF!n+03~8Bg3(m2XSxy*VOeTP z%hb5$o(pc~D%acAlUhVV23)X7C*cfa0y7)dBV7DW!=<+IFCzXR#rJkYzbXHH zaUcq4*SqjF#^~6=A%o)|`RX_j@*&KPvtgJC&|?zORPZOEav;VY2&s-a&{90=k%3Th z8HuIpQ2&9Ms6eyC5l&K5YFWz)o29d}jAaS7t5vNebQBf^i#?(<438S=6_ar0GP7J6 z0d6D!S?R@e3ayACz1a9CLkvSz~ixoLs9KE-jEuL|W z0*Qi}DzeRM;$}Jt`P&!`hR6OngqjxlCT?2bf{v5`bKc?+$0)Zb`Y@^`{7e+c>^ZTo z@$xRod>-x^Km`fyidI(%3=M_$Gy;$kmmCty>uLuz2HeVIR|y?tgcYq9wetU;?73j* z0MnilfoqtvV$4Ks=OIrW4W&Kenh>AlwUkUzFh()nd%8CpheQB35jfW!XEQ&y{h|dM zkU#?dcN+NBaSCYRLZz>=Q%!7|9AZy8%SVF6!lfnoc^4m>B z?!nxM{Ni2!K-`zqm_@7(1ji9MBZ~z>WL8v}9GjB7ai~Ad%qZgxeBq1;RgXKq-Du%7Xv80l0Z?6mF_|C(8*)N~Jdj_Unmh$G zLE~()Kx7xnfm^;$qu{z;R)z|&ha&Sy_Usu7L2)an1hKYn8MXa(5_Yjd%VVF#6bcZ? zL#%ZQ_S_1p(g^yWz-wg#cu6Fs%qlSgP=eHIG%K&Ml6cjMk$XTlnq%hZdPgb^aB6|Z zI=11~q7L;2q%-j_p&F^X0d{b96Wmr8gl!1%xIl`^8$7}fA??7Qk?oXgd)zv>1IcDJ zJ1!kEP<-P95!89QfW6JVrvjMU375-D(nf}=t--t<42l1FV3!$Kqm%ULLyruGVZQG@e{ZuV-f^fo3W&KColJogIjd8fiaXhU} z&ufhrEa6#}gf;UMkrc@y|vUNpNQAPxPi=h`Y zav4G7BRNEu*wZ9o({S&m6;t7phjD~c;eIsYUt=*uQv-hY=7U-p6@xW8S!fx3Rg6k0 znUhJGm1&trS%EEJ9*Go?my%CgMih4yPz{DEq%%V?B}|P8 z7e+%pE|L=7DWW4vq9ytznJG^g=!nmDNR5INiWE?iNG-ADQNIH=DM3)3k~%54Zt!`Z zW*HW@$EF+jwuEk4qhb&rSX`FHuLIHKIlNg;uW?Bdp8KjBG zn4uemUl1}E(PE-$s-|n&o#4qZF5m?nut?;IkXi;Io+)i;c6IJaDrpvxWvOklbt^k6 zLx1N`RHurGv32D3EV@Z{)&@PTq+o(nV$-7%rbRs(gmxzQm`h?TV&geSl%M2gT824T zt%zFqwxqgKXuE@$hC%-UY$~g>N~=VfnS%&Ojz|+2!ze%znjFI()Y3s-sY#N?AWNYw zr9vvd5;RPZW(=TiQlW0OqKZPQ7S7UAjggTA1|_0#crY?D)U#2Dxgyu887gHNy`vIF zqawvacNRHBi3Np+(wkFrZIEVfIBH@W)fAr zLSaaPD>5k{oPwb2nkooZvvfgBC}LVS0yS?*pB5@!SF;)4mlaluM5v;)lS{d3S{|9H zIAs8}GQl4mNE4w2IRvLk6U%KLWPD<)QC``VUE8r->yU|6M2b-%OJJlK6=AHjBuR>{ zfXR?U!CJi3L|xOa$2clCM4x;IB8f#%dhs(yD2%cAHMyd%S(qb|(FB!?z1hp1x9VN+ z1V{=imCME?d6kuVsuhw}vA*O`#(E;mL${>UAU|s|(>is5ai{~brEZ%dXdyFuRTL@Z zVU*#ra>4&8xq_}-!!^OzDSGuFMi>-(QL5-xL=|FM^6OK$n=%w8xD|;(hXN|v3&J6+ zluSv&CGbb!MOXE)F`P3iLgy5u3%~c38KtY52~~JnQJV{}D?3blr;?RGftC{0Xfo55 zWEYeHH5FL8p?iCmzdN&4q#~9You#Q)bfGCMLja*DE6?&QcOfk zx2A+|3?^ydYH(I+I_^iV!_pa7453A`L?wj9M%C}6cDU?hAm>d`7`a5D1m~LUtER#{XbaqwaA|y2#D>BJu z928QqeXnfK_goQERs!&}&uf*Ua+ft!<&f z*#{wD`g^4DXFY+>KaJ1aYk>!Q9^jR*a}_zK)3t!nVWmmK#pl$ctBH3((XgAAqy+zN zT-;KK;g%uhIbU_y_0-S=OATq)iQzvI5d3N=>ptN{sKcdZG z+tl12p z7@mEWU;($%T()N0ND0EXXZ^(S3~5lZB1Y064>HeC@faZ1%tUlcBqC?wpp2gEq}G>jtjA4`XodghfXfsN_%|J3U}|Liwo{SdBtD$aS|w zp*oy=q3zkv+yIXy0gpu>!U$o1C%vwXb|h2D#l*x;N*cv^Jg|x)UYC}u7^VmYhX)Wj&v2y<-T6*R-;^u2E zyEW~$yYg7)-OPuQbSYKVWA?H`tLK_ToEr<|P)9s@!4}t=sIii`)h30T9C%EEM89Y0 z)gG`+OTup4l$+}XJn?6z(lP5hvGyym5Dgfz%_N<1OW;kLq-f%#NOqx^+h++i+C9jq z1>*}q+HfIsb(_F~$1O*$QIRz4E5jmSQ7sP=80`M2FI3{TV_Lq8rO)G6*b^dt>A_BJ z?HkXg4BpR}TOMXm0xbIJ>>I!YR{;{6m0BLvqfv=@aTjQgLg7uJjT+jtnbCW}#Vy{S z33BVwJgqe{F&Mri-u&wi+^-z$(({cqRMBneceWm~-x8JE`_2E|t5|Iv3`CLPJ6ZcR z(n0_nFZO9_+?d|r$c?a33#@Im)PIN2uIm(C?oeA}H9H;Rvfdautl2G9m}g1vcrn37 zRNHi}0P2P!1>Hz=pM|O2!TGHuf^oiE?m;?Iz3QFvC#2{rzVpj>7e8}7DlxR&2R*|+ z_N70f$gR&#OXUX(wa*r;uA3+npuT#F$A1iXmQ=Lgmh5r{=bQ~SB8e0k7Qw&L@R|M0 zKdeez9Cus$JP+E4=!Ll*xK7{H+500ILUBqTs&p+W)+ z85mrGu%f~S2^UCEFku0Oi3A!{uux%S0|pHmFe#8yPc8u}MmtD0SwffbwPo zhbwKWWTFyfNG1^nFhMx5VA6pLh8$cH(IEpOC<~x0;xePo20eZHOv&WmS+r@@u4UWS z?OV8U<<6yB*X~`sdG+FTQKE&37A5))7F_u6;lL(5bSUY-WQCL_aaMp_870W045)-9 ztFtJBnG-9R@c>yO5rqSsG8htZh(Xp2phj$Hkmoc*Gg$GfZhL;KtpTi^bD z{Q33o=U=xlVZ;Cv>@WcbGou5NC_4@^?;u0T!JHWA3Bm|h`f9QcOwiB*l#+Ugh^9bX z2qC2&QVKQNXp>Df-4@7gBH$!gU;>Xqny93c*dt)N_F8J`C;1`-62hHs`i{6Jj4H~i z?+{vwpsH3h2t^hb=q;ivzsl;R3oG2Ig8sr3b4)VJG&3&3()^FW7TEktF~%0mk+Yua zB<`pO+4B;o4$N>t!wxbtaRC%1vJIhyJXDb(2C8yuDMTk~DL4gWq|rtON_xzw=(;Lk z$>yk&ZN8lHG}R&A2-q${Ls6AY)zolfD60SS2=c8Z_*&W#G(C0tiM=y}6?Rx+i)HJu z0sm80&A|XOp@TS&t23+$8K{f_?{w;EqF;B)P_RFbJMuO2o;;1#+fv0!qJzqd62=LH ztIS{EoKX8u*pA=VluyAygeDfLwwUA`anDzoIV4$rvzp zV~#uaI4@@d12ANgTVVECl8oaFr-F0(%)yqqQ;7l!GBmjal)amn*4$`AbBL(4^`zs_E#iYT}huZFQ;u<3$I0w@8tCBksFGe`9zzM_+Wc>3)Oq zZ6OOI>+NH@>$cltHVZUN?=(fmS+V~LtWaN( ziLli?7h`*oH{W?%&-L0fy8C(PqYtyMybl}9`eg@n!Hj3)oHORd4fj{iZ6(B6^1d__ zmpBp^K2lwRRa|J+rJVBcs2Mw&ae|2>I}YHOur4V_YhC!bv#np11!(W{5bS``q1U0V zT_rl(Ldazsi80AyQ{$G)Od~xIhERn585y$FWWr<>=vkVQ*2+>+K0LLIRo3c&8weyh zXi4UGwlNfw7B~?PDT-XhYa0J?Xq2=gj%_3yI!Xa|qAT8YQQ{7KJ*8;A$lm!cGH5_(nL!ky(BTS@!w{m_M1o1&bLRgeYX1@fm4s zRp`KWAK@G~WIUcfP*8@!6q?t!WR)7Kuq9{d46_J|h zQICT;q~uVBBMRtjSJ(7S5tkQFstkZdUfkaij|dXtSRqHSv_JV>v{?`K?!n*Ah24X167cW zpu*B86SzU4h}5HC;6&E{%@AQW5?lXh(-eQg4PG?LUlJGhKj`Q(Ih@2AH)+}}02W}R zs=CwSJQ+Sz4dhDhtCjI0i6x0ZkvRRD%u%TNS$MgfaY zH**sseQJJF>{b!G){udOhq6&Bh!>GJz-pnS3MvV0d)D-5oGeh11h?>o0o&|f&9Q`wEp^8-V$VcZRVo5Y z%Wgtc6ea(~Tnu4I=aQphRjRWnp4D-m{j99&X%*1)MJ@L3c(aZg8pwD=bhA95+h{3x zW`r}1_<;D`gUoXxFWqt`Q6keOex{}u4HDFdBrcOMv$|Q?38M%*z7`8jcbJ1nXYZv~ z*zLK4e&%(K=ZIAk8rqJ9CfQn(%xI1#(va5sQwc1f+XOwPh1-(MwzkDPIn#7dIWe9n@J{s%)+C!*udhz>?vcFnJ#kBlNqd#6pasn#2=UPIlt`I(zGONa zbP0WWeelo%bI`!%TcH`s){bf~a*+cUei3ck6?y>5=CsUXn6S*BvhO@A-O2ut`|adr z(pvwLxk}tDZ7`#>yUb9VvdkSs-F>M9SHk1X3`Yqxe)m&&Ow9>kvm~nLY7F5^pK1vk z9-!(al-L(4eUW>{PV(ACs-wM(W)zMy_tc*7rFGGSXC zT>rs(#2=dEWDf|BTz_)3rL9b{7tUWLf{mkG)=~<5yX`c?uwx|^lJ->BB<+UUyC2h8 z-;a7F4lMZVxV4jb0xhy@Bf5nY#36}DQJtKTeD!(htYI4)h4m%$!?()hWJ{CcR`35P zL>Ut&7H+DAl7Ve-309t_;ZMtLe<@4}U=kx)&1GetxpAh99F^d`JNt_H2t2nL3C!r9 zZ2}q!G8EBRqQ!$7R0$aCtH2RrllT%nzp0+g`!T9(GDH)-^2{#@gYk-%`@ir( zoy23nR=N`wq>N4C72laRgR?*`gdPFGs`(jn<0;EXiLJ=F3Q-mLsDNy-5qtj`5xk*9`mYMmxYGMN7G%LA zm>M*>4d8$sq>+PsL5cW@WPGrBO6mxqNBuf~l1&?OO|`1c?b%J+bOE(8 znc^hQ+iZcqgw4p=s*S=;jf$KyST+MWG-)yeWlJPvnmED8&cgpFPdC6BWN9b?Ii{{M zkP=u;_!N`hv`r#Q&ieFC^tsRc+|B(gF#a4t{!C8EQLErYw*1O3?b#~)QqBVnvPAQX zAbZIsJEUR?8S7~%2!+YH{53!;PYl$X0wGUiLC+Gv84@kgt}4;Lh))*XkKf!+#8IAalv?3&mk_ zfiegTU^5I2l}q~y4DY18#Hi2`ZBa7458jkf?Yv2kn$6qXPu+yk82!-z#n0f(&(TX0 zAJxk>1yI_guT-o_LmIHE6I4Vy#hTQ*5L763JRv3@(36Em0Iz(f2G< zP0foJWmDL!Q{U7&A62&4#7!mB(@}-f*hEnB`%xm>sQZMt%^NTxL#;$(wuaJEL+dCY z13@-H!;8BwCNnMh>e8;l9x(mF0>M&3!&02tRA{vePn}i*lTKZCSVY)Hu!7X+79L#nwOtJ=_0$Q~NB~n~haiO;tA4&mwJDUA?2ux?b!0vSC<`Iwdm9{rPel` zO=SC1i1SZX-Pxe^RNEZav=zZ>Ro7b8%iFrIzObRB<$&00TES)7$Ansabwy&j9x4sA zbWP8j*}xMejIgC1Osylbz1)9@S(%m1Z5`MlCD_ijQ*bRmSp8YHbyJ`P+JoKO-K;pH zwN$1JT-h63!A(jIINV-+$6%t%lIhTsjmr{J7JVJwt)0}suvE+?TQr4Jnhn&mHP~=_gwiyWTH5~|T%`ou*lk*2yxlU~ORE)Gkr~-RW)4ds9xm?*y&0l{tTh9$(1~yJy<=;-dQP)h+>y6pD zUDc{v+ls5&C+!QTLk^JI%lp9I9jz>7IQiY$(kf5NEf5uM zS;uZhqTt`OR23FH*-CP#NR=AxwPqp69wNo0!SqB9_ zA`@RCMo|INkiRkIBU`O|EKwqUTEHzxE+~QX)V?SF;I*2|W6kA2d&v`~+!SWyO=V$W z9%i+L(O3mzJ+)qk%~Sl8IA(t1>_tw!)L1!I<-eg+I=<$v%HuoUNhCJk*po*)`qe;= z;z72rM9$?59A0(qQeci&(0yLgMNT%RhW4FJ!E6`&~;wqcMj$lwd75PTVft*v-RZt zTw4QvSZQ8nhh0UX{S&0+fII)*S5(&KXW40Q&g0g4mQ#-Crd<~96T|j3XNvp667J|q z-Pd0Z=@#u@c@}1pMro^dUAP6+>MhthRq5#UUI)FIg1+NyM&+OWmW3{2pWf;J@+yt( z9@&G??%O`2mf~S6XQLLhWQA%?MP}ekPP(N}>D}s+F4zU`)dSYysD@Mpw8onjy)$%)a=6^#%;+A3}MQv-}UU$r{-(;v}$iH>={Ps1*O?# ze$Lk(ShvMdzAQ3J6|igO=5FTZ)>`OR_U5*3t)0~DB6ix4ePXYLSIGrl5{*kk9#hti zYR~OrzxGzG-e3O3*arVK)n_Kv2NvB)-roC^T1v%cY({IZ0&30nFXJ|1B3_L5ZeW@-6Z1#7F~+d=Jh`4 zvc?(CPU|D~>HAJ@`qtw;zEZ&OPUxOXVjZ@Wl~;Q`?Z7y21lR86z3l|Q@dXd)xOHZP zebvz2-UOvhsfFx>rflFw?#;e$_$G1WhL&gHX0ICRSp{UL6XX}?(qmm}E%oTtrty{R z-!RT`@4n|V?e5bn8T(GU~E^mQDU(MSd^G9Cvf3|frm+EHLbqoJ%A!lU(S3s!0I-cxo-btxl z47L{WwKnd`MsE8a;#MvLKmTJhY;mb$byeS5u#I)qgk-ALbx7`90R>g@*3X|UZ*af5 z&|Od%W#volD(+eCAa?c==z`+*X;O#s`Udq9{@S3U6EO)Ywr@QMf)LjtCCZ5n^W_ z`KPyFryqIF_5u?}Vz&F^qIUWJF68XFU&{OPo9Dt8_VyReb)G+Io5fy=Z`EEmW^h$s z{#sgbqLfNe0R5qvsCRY_=mMJg`+{`(GC1xdCSt)QUeMOQLBHBSt0Sx$dzDQ4g@0tV zhuHt5x|#J+3BP>VwA6f`a=wxg{n?-6;(!X6de=IA)u$O65sv+F`l}z}^YvbUcX2}Y zo0+fQL^jcbhx|`0Y+JY4$(Lq^&(WzC*udslWOLn7w$v{8Hq!63zjyiysNfE$nVLC$ znFMtCs`jVT{V@Cw-#q@ zs&y;Ytyj5%RcX>|)~{Msnms%9E83}J*_v$Yri4ej9uabA=#auhz7#rej2Q7R!h#DX zSX3YZ;{*kKJ9v!fkOO6%C|y`qIdUdvmM~9#W_gqDN|-fEmPi?OHS5-{U&D?qdnwr3 zUDuNT<(gJ^SRwiYuu{4#onGe5_en^bRm~0Gca%m!W9xyXc*B$2@jI76FiJ~ z!QzV&7Cep&k@CO|n{k4MpE@(jk|*b<^juTF=+e$h&K9760}@!Efk#ylMO7PXK?YrQ4haTP7Xwj&R|OE6&|-@bU3bs~3`{@)0|Zep zMR?@Z*pXzE@#PYHoMpC|PWt61Uy(SW*5rXtLK&r$Qwjx^f(~NX;D!xmNnvfpDaT=N zCq1YcRc}$XoLhC3U;=f5SNv76jX#RyprKOi*n(0$pU8&`Qym@NjmcdL8S7~W zk$MS@_g8l=zBp@jIHGq@LxfR~Vt9Xr2$-Ri8EId$HG$^nk@AIx8cvb^m#wDTa@%dD zQ+0Y%T{~9bX6*?DOozaE;WwWyEjnwkRk4`%plSk%9Q=}{Zk;W6p zTXWsDQd)J|>B(c394eQmf-2U#pLSTGS?^)(k)Ci4gjh!CvFNX?a|exBLPoE65Q+rZ zsw`j35*gp3I$i8p<1=}NU$&-sUAg6#Q#CGEnrjX+*`A~Psk&&dyyeNmo%x(|k+DZX zVhSv8+a+TgsXE}64?Z=XSz^{%w^i^&8pe1Jq_Qw$szK<{eO@kQY79};AL@kd^ z>W>0zY0h&N#RcQC!B@hDNYa%po`>vEgTzOiGySGiD(Qe3y6B=00&Q-2${o+{CB`zS zQ80BW5s-{lxb-M&E{Y4204dcmBJqgXOCl37_)bHPOi1?}4(gUe zMcVxnnJ9$Fin=gOJ*{X(g7JWNYULe0ImdnwO`}I@I4=S^tCgjp6gc_FRIIh2qf$Mm z+34A&3LX-xP{iVe&Sjwrt&Woae5Re0<^ew8O^iB?kxpTx(A$X-pe0ZmLzUGqwJ}bI zppn`t@sktN05&I69qcUC`O)6!^01xLWh2pMpL~MOrDXB{l9?8?%{#@klY(jMbrc`~ z0l>~+*P%lG7SLAUp^=~}R45Grh*zZEF3fR${^F-cf=RZzOp)L=|#i~@|sLf0uE0G^#d1-j6XTFH!On2gLB1){9v3F(^! zbgE65bi-<;Mz`{9AQTgOJ^Om~q`MR*7JXyB(`kry{Op-{H;b&EhKF}Dst86v%Yg6Z zWv90C&NGuG!ex~qhfcGPUYqySrt$|> z%(#m6l5jdmMC>G|#8iaA7m1zUvg44prjbQH@(%0&&f6@9WoAgObQFkv7@C@xpu}4C z8c18rVvyn2#bVyz=vWF_7ep6@wHwTJwo@}1;SYA_SqzYag{&17&7fxl;d&}#98=x3 zo2tYk^FHj}`fNGT94l^CKNV&x-qK{ZQ5B%ermlZgU_~b^aK8LkGawZNF^i#YMsk)j z^gJZO!V1iu)zf4f8cDWLo^A4?2E;s0?Y4^Ewe@}*(#3u`*q}QphDK-HtW@#1?yB@u zW|iqX0rXBmvu5!E#iP5Gx;!;<-(Y^l5Q9p%s5V4jdf_8mK?~4;SOzQ)Rm1Cde=DTw zJkChv4bOU`)Hcbcrv}ADW4AEG0yy4e&;}C!${K}Q0{CO_3t=~8#pH}=)4mRp`P}54 zwWuwDHdDF>Xuv7^F;X1+0m*;hgOZ~>j!V}c3@yqN_p9@6j98< zsQdr`321o&T>o-+);-MlZji5Se)k#wgO5zd1-KYz6+%4;Oi-rQ*|#&Do##{BScb`n zK@h&`ii6umy4t+MT;d$1s`r~29cSA$MuM=Dfy6(ky%b)K%W{!S_bA@I?}koQ+gKMb(k#fuEs0PY-d- z`2heakk}uDoff#Cm%&|^8CD8M;PJJR6qk9M8>TbO=KN6LE-p`*pDDjw#QFh1`?;O`rJ&fH zR0N5c6nzO60T>#(g?D%Xi^$FYuN<76aX|tygm*ok4?bXw+@X-2nw??aH2uW^8jp~0 zSbVI~#AMXDA>vNJ1jled*nyzsXyI#!AOK8334R&wArdun*){ed#NoKO4$HKN=f2*o58#WHGRC3+!HU?a+LV^477GLl?5W(;q| z9B`qa3jQ8Sv0&PK&Q}BzCc#hr5Qd-B2rH@;PgTHKJ=+8-U@abo3(W|RRa~b0;HZuD!>NRfHwX_>>68a%RN?A0#?M(lor3# z2#M?>2f$@q8qa%hn5kGGNd#t<*;>{dBLJkIQvAXOh+P6mK}?Pv2LMG&0>Dprpx8-3 z1R$n424(FbfCNZE?a3Yqs3TDTW$n$R6p$SNNB~g$fCOM>Xo}qiK;=J>9BMwMXtHK) za*HRjW9C%Iqxo9@_HgAbjn6#B3oO|QU)YqvECka@Sp9g11-RlXPGF2MK#<`NE_#~M zOb0_U#C0@>DzVZqhF{20OO|cS6@K7SFlN{V#TJBJ0zjn){sb3@T?7clYjWgI%w|%M zTz~e2e2N`X{y_j7B~Yj)YjUG9%3e^2CN%b1R@{K60GsD9);l%U=!{}0iVkM@%v>c5 zWekh!OaQA@SVXv`0XE;$?IXkWj?UByi9q1a#U*5r8wPe5ZB@&ywHx$oTs z)5g4K03^V@-s|bs%hBSf;l$k zCfI}j<%Cp)nxL=Fsc#l5Jh9;TPz5t3Ap;P=$r3=b0?pC|o#E98p*$yIECIw}8|10T zLi|OFIG*+K7@-so-sBXr)X8IIm=h+-A=bx5@~ES9VA!$3YS;rAOo2#_;7dfR(LE~wJ16toiAl|+3oPT{E zyDFl(F^|XDRwL3YGA@NZ$fRzP-M{vPXbNnXYVD@dZek`Z>H>wUvZhb4F70CGkDdJ1S#^loD&0otbRtoFo$w&v{m zF4@`cP{f|W1_c?QZU6dinzqB3t|r~Ksouhz1O+Ro5G(V>V}zK&33NaMoUGsyZWCC* z2{QoUR=`0T9`+)giH`3K6CDG%53Z2M<;o7^5uKc^)mf>PPEnYP_(qiJD7p>Whe3*Z zYRr2k@KGRWV|FbmTx`PvZ>avm1cY4_2t^e818Xd>1?TPq?=Mr>!xr>z8)yvw$9`f8 zCNIpn>CKrRqJ@cx4pM=TZ_rR*wc>Tv;U$f_y>#h8Yp zDX&H=Z0#C<)ZGr}RNSpd;cZ#S-H8d88J<*`WyJ}Yfb7n0pPJ7KQrOVA`!TAI|~`)VsFHq8ZIWPoDCsDiihEq+Uvly z5;ziV<_k;rju-KvXfQsEcyzamnG*)km-D>bJ!*O1BG@b6(=a_&6^sxiz zu?09l$)2pqo-7j(KvCy#c{sLAi`oK6fg(HHoS9l8^UGzMN95-4T;7Oxb$~1q^#Tw8 zX*0k8D7HH{z*|OSvtTO6-I_+VSA1>EsR};F3(>ED;6AY@Cj-a1tF&kyujZHZUH#61*GsZ zvosM90DH?~JI5la<*;H{#5j+dW|P`Z2ePRla^zaJMc9aG&*A_K!B8{70JQXbANFbo zq>E6<9chMnDzS4M<`^i2b<1AYe(BhyDyaH403bB2j@@I1EdWS2Qa~vJJmzYqDeHnJ z1rIbpJ9pRWCckPlSiHcM^zsdsEzxCJwWhp7X^%u9f5weg8HtF@A;zZ_ByW9j-y~ObMOjE zkc#bf6zzrxCm{-3fE5tA9;3M|t~Pp8r}Sc1wn_PwZ+Vr|HzQ+&__8`qFF=8hHUZc= zf+IMY$6`{mvzqf96T*3+J>-ERb!p?eJ9B(2n(Ub) zHGDS!W=UlDrKdPCF}$g~l;kZ}?(N4Oud#Yci%72%0N%kDx%4)G1$Y2@@4U`4Ko!^` z!#8|JfbY@!_huXY(#QIc&B#y}b;TF;)I&YSuk$)H0W`n2JF_=@!?Un6$;p2cXRLhL zM~MnjdR}v-S;Xm!omhBdh!-Sbk@x!r_`C`4yajv!s26tM3oZkAM}CK|(wCa}BK_b; zysXRm;3oiRnO1-gb%9rW5=^XEaiT?v z3IbFNuo0t2kRvq;NbqqY1(ggKG^o&W!GHk@1}qS;L?%uGLkKJ&(2ym8CM+2cX~3ib zfu9{rm~dmFMF|%rq_%*1)oNC$Tebf4`W0+gv17@WHG39qTD5E0wsrd!ZrrynY`CyX z_paT#cVFzy`xo$Ezb;zjE&TT|-oT0f12?{V!c2t*P7oeEn9zZR4;Ka!JZL3h6NL;O zdgwqwLPm@uS6?(KvLi^76ivQ`3UNW>e8F_MXfSw45bh^=Y1gfD5q=E`OAiIkSyziVGmDEyA zJ$0-stz@q~DFt(^OZ^C|^1j5}ueC~U6cCXDMLFm#rk-4C&upkWeeww>pMDaJx}S)su}3pJCDOYg zKRpuFe*OIy;JI8?Rm&;ydzG;L5H^_L`B-(~1q2(g>;oqnFrdI;IqS@_g&c4*(`HYj zbGAP3%#B(lC^Y$_*sNv$V8qipU|@kEd}@e-auv1UCE|KxBDvmPob<&*TVkmI9fw-V zg?vjWk~>hJzAE6Vt-c!I_TU?s%7YtgAwI4f=JMgYz!Vcr2QcGo;|sp9%mIs$Er6&v zIe3VI2_*FJPKoxWw$BUyyr@qVN35V*E)0!{x^We48uY$#IXB=w2LLy=-gN9IVw zuBuN(hZ^hBO+OvUvb$zD%7Vvc70a=0xUa4gyfE+sD+qF+fCktmNX>!{TIkIN=6wjF zhdAhfi@f*NmRf2%bdAH>wxvR)3hwS!LgUhHpo(#M-U+$onk$N3NoyLKp`{sOse?|Z zh8k)hP5%Y;{Qt%OKRwsI4x3?LQ=JQHpsFpgDpqzmoA7`qreO)sARV)qLYhFgpTO)v z%R`);@>U^f{cTzox=_oeSD^(6Dti<-4F_Ukvzjz#A)gtJ`Obu~H=0&&9 z$?snK0#CsB$3OiYkyJ)ZovRKQKqqP~Vg7sA)*RNDGw{p-YPvuKEpUZm4J1vMp=mz1VQCeh>jQl9p)@R zd&yhg8b{>+Mh{V_LV_D1M?RF11uy}HcBFtBDIfqA$)s@%2%lsQQURdVY&n3W)TCaS zE}q;dDHR+F1Fl0PMoMie+$oh3DOpZ)mIZbVt5OpOn59kHyC({02KsqE|!RfnQ-gPacah{0T41$ zI$4)8PgK$_3`t-5BGNfo+ERZ>k)4@@qGGnh&cq~;RbL9zDK8_+&2Y>zVRBRNSjjoV zohFULT%#JDWy@)4$U}6bqc24Svz6FUqAFq$0X+A(iCM-96<9(=l^_#Cl@EvM`lwIF zn5^FaaT9bvoZoi5!z6OL6tCxO)d2yRmm9FoJ+A{`Obb{=7kt43nc3poaQD+uBIIM3 zaZ@5e$^h(jKzrTVo*EHH%x8g6H6r}rwp1h{6hc&(6kq^NfKt+(S)c>MW59)GB9j5& zB&3mwi6ZAkJmSSKboi2*aPwMRB)7UTW&W{PP7*X5T zoM)=!ZYxx3XEm!5LFw(F9`q$?ODm|VrdF7XLl!f?YJtQK#h7Egi8OWlLK+RtIikTR zT!rh+du;_tKVSg~YVeO=D3}B-Xu%J_@`E4PpawSh!Ck*%VG?Wr#2aVT5@L%we+p;KL;N#~&mBV+rJ#EH#GliYH); zv6R@vW3dB{D}3QU{K3Lm?w@jHH^nT)bT75S3r+!JI{;}qNh~>c=ptY+L;N-Bh zIsvWNwX0k44+#t#04Ej;36Py?GT{2y&EA4qPz?YnkfGT#7E2qNooum0TMA?U!8QOA z0G1Xw+r}mqGJ3x3wdNv>or851*dCUcz0eat!mG?cu5czV7-WkGA)cFbbU^~l%dER8 z@AghJqPr2ZmU;WE-t?v-y{Xo{Dp^9rM+7sPwe~mkZRTaF04@OxfhNbnt#62ML8Mf` zO)&2xsGC-pZU*s@NV3DO5g-K>yP5>iPJk3zo$7Lf<-tWC`p;dh?XMKw)lwijuZ2E! zVuxh|w3dL?Q;lS=M4Q|`PXeuq1ER+XX^Fg?n83VofSP8*VcY#t9o7hoiN*!kZLE$?h?78<@ zhZdBf5uHcVzt_;t`&mOys{E!dDQjHbH zA^=iN3jcxqurJlT4=e^y@3e6I#v>P5?~0=V$ z4x$WDQWtS9Jk&${((x7>r*IMe5@ju|cg(<`QuC!a3Wl0XWyU~!s`6q&AW@5!7*44g4h0)7weIrt&eI_!GG3CYEM4LtJYe_AB{X_x zUJOM6isNRC;x~wAnMl&UIt85O%A1(b98D7d{_ZPeGBmr5)?o4)b@De$b3qx@?!Lkv zV3XHs(ky86C;N~z%dsb)5-eC@4L?*JFNrJtXPpKnc9<(KJODv}CxQY*;1*(Y7NQAu zkc|2@{V+|qNM!1`PbTgSrvY7-~>Z~*Hx zCJ9hby&@{7RZmZp@G@yp+l@ZrNiYuog8}WrD`AgJ)JCzoi1#eTR*?lM8X}RJBOpmj zN#{~76;3=;Xha~Ys)BUT9*SlvjwJ@xwNMcihwvb(phm-Ff<%L>lp<1c4<8vMtgO=m z;;Ph)iWI)?a?sNAgi7mOd`m$B zGgJLYZg$U)sz7btN?y>VCA^mbH1J~zB+`J(kq}oaOf5a;4|M@xS@BLz=PxL^FdZv5 zH=}l3$2AKDP)>_(Hz5>I$$}aOSPy}+S{L^p`0#$Awm|=Z8pBXGhtq1Y@^uF&%rIC1 zDV1V=%8PzScqWEAZ^RLg=0tSFC`NWhxRbrEDtY5ldBLkZBa%rc_Rva82p7U*T`zC3 zh(Q7b(uB&b=By!@LutbQBxPghJv{*UbP;N(rWcbn)f_i0IAIN;4qKtFCiS;=3S3NRx9|SG@Qq2dPvwu+D41H2i*_$~Y7dZXa%xhW0`|_t zv3`nceZ>iQrBlJyN{8Zo)RGlLBvxZEW>i&%W7v*7Zb>KB6Lt7zl0^fbeyG5FjloGyAwsG?Do;pD--0@RyY?X4#d2*$sosCPiEH9owUW1$jX>rdWQb z%`9~XdCxD22Ps1TGAWE0I%dS=N(&+vmWF9bvr;uxVNeCR1&0l%ZuirxE>Hq3Bi}Uk z0#gy@&es&Bw0+Q5AuJ{pSJuEt?PV!5)dC=X|F?lFmqEqVi?gwE&3M=n02nQlK@;F~ z&%*tN4%rX@S^>D(7}y_jx@W`ii``XTV}~8B);|6sU-PzY4B3#`CJ`$m&WguYe?zLr zwmEEqy;?Q3GST7I_IWq?6Dd}Qu_-h@Lo#?}p&#u!{Ye6SxIvzSj0CI#Y)~@dEC-Je z=MFbWkmQ!LxsK)dna6?@kU0tNw|`x-n0r<b~D zxFTxK`?#dh#MQ#x6vH^X>`}8MVmiP;48jT`h|Sn+sSDyvEH$Veu{wRL;2ilM5l$d4 zZqS1N3BE9qZOe1OrI&7j`$iSwm3yz56ePQLMZ(?l%!sE5`l!jSIe3hl7;H9Gd8z{K5z2vEv9W z(Q}w?>()~-nt1vMG_Z)ek7XgsrJtnkSo$Y&z>~TQUMwQ%TbFj%TZ=@fkS~~&UpcTEz4IR-F{dsdZLKf{eQW<=F%VWIP zdz;{Vb#+RoJA8)FwMf!B3D>)`W215I+|NltOCH_hjV~Ny-IMbjPaw7`fX2r~2Ng@U z(InS**P$W4qQh3IJMF(Iao9J}I}^V1G#SwpEr<2lw=5E>Nz%6aDZfQ>q1RfGqvOFP zW8?G9zJyhNM*eB81Le!9S;rpT{dkY>qQza^VCadISN18kHpl6)@j!zz_C2?g1>o`V z=cl75NNWmG@3ab?pN-zC%xj?Kc2;eKI@=m}!$j~p7JO~YP-%V|J=^uNEHBsKNf zUJxM$l>J8bn+HW1c!a}D1Zr;6xlTqAQ(^>I8Y!#3JfMB zWU!!N!v;+nG;mTuVgm*RB3j(oz=1}H3>pxy=%ix70{VEo$ z*{?5Lyg2c}!UdZi;(BoVwys;7crRFS>m;Q|2OJqR328AT;gBO4Fd495f`Y~Z7Ze;g z0pY>Rm<=A(T(I&&g%cVQ<~SInL?#d+dbC)?a04b8B?3-)5^x2Z7H`Xp*+8a+oF=%I z_}Q~3QJz|pD__pMx%21Hsk$i3mAdunXQyW`d%bJg6DB@*cst(0_zxd0w0-L~C3~BG zEqIily8da25iz0`e34;eDieSl+TTj`;9SCej~X8}qn?G;~27C1p)ihvc?#Dy2(M_6JE3D6h^98e%2L6uEL zP=aq3=-Fj(y15WTp^2uEOCsf0KuCXL*g$N9M%dw>5g8y`P4xK|(}`1_*gypibl?G3 zKhda@jW`Zhf{s6ou)zjEmTKy92_ygj8K*Wkq;^CK2`iFby2Cc@d$}35 zT@^{O#jlbT)_3UTn(Gx8j8|S;4qTaKqrK5bX-6MPgqX{u^{0RU2~-ws7in5c=Rt51 zXyDG1IS8Rc5l%Xh%Nb$hq0%4bcPs-VeK@E|6P9=`rMgj?<-Pv)>otu*)i@(^(FqIy z0un1l!oU%i+Qz_1I6N?`X=|l%#Tj=;F~w<>b;1cAbgW*JQrd-AUk;!o-)y~U+1o^X z)~69{;#$PS0t#dfEe9Qx;JLIqW7feyR1Bys&4FLm(iO~a!x|$C6HE{a>g?R#Ys&9S<|&B zPz5=8t08$Jj7#)0wWtYZBo{(Weh82*5S>eY8(9f%UNR~7nI~Vu@!GzIqdXneVqj?7 z-aoQ;Dk%(13I?kl#ALXYSY6CWc*`4CY$doRy~T*@!%O_O)R9P;#5N|O9e!YDxd>%W za}+>R3I6A~5|kl;(;6LSIDjoR9Yi74G7xAILWK@g#A$~4QfbbWAq;-2Lj-6-Y?@$z z34KI25~+|yBsD1ym?2*~X@gEwsKT9iDqzn4D35k5O}dEiCl5{yFa-!#OHPC};*sbjx9Qy1dNMY# zB~M3hI~xyaXsRt-vQ-Kgm?k$VmF~&vd*3_K-H13!Bo=Ocwkb&k7Fv;#!AF%W(Gaq( znV*a3?}}OMB>;Q*%U^Z?beAC@n-oOA#$*wipL63y5|f&x=`mThOAH?6D5!{(L?d{a zNkmVXn}vG7Uv8*TryBV$NCMz_O8LeA1~j062uMHzWcWo>+8}{crAh)Du!U4~IIylx z&nR}N>QyB`f`gGjtXGXHQn=bx09+5O2|z1W+i(?zS#<(hrDsykYSp;Xl_^T?Yh1q? zox2(KpP!tSC@`YyyNW}j zu$8-SjfySa3xH8bFDbT|Z&wTdrZ)Z(j7MkrWLmuEPp*Kch~`6|UDT&INOiyrB{0KW z@~6j? z(+?h@W+=*KBsL0t$zEVmKjA&@Q8>wozox6NPU*-ET}_H5=_>&xh&L%*O@I`nklyh! zMFKXo-k9V2kG6`rs%`zNQPA7fD4;pLQvJsk$UHDHOMweUv1gy9Ab}*bHNQ^T?|{b~ z-hH;h&0{Vvfsf)|Kf@V@JL+T*6WcvbuO&T$19joflRhPyrvpMUfo>jJE)CTuP$PyN z<{Wdy1xTQO9pGhYsk>{PB{{Bar>wA>0vN_OMj*1QwU=O53pso9CYdetgXmlUtVFWiy#aE@H?f8(>8neOQ zLYAw>PIy$Cfj06o173{VDg3_dW|gw~ND9DfUbiQU*@(yB9oFdtZus8=e$H>+>jrmbX&u z(bad)a9~R@bO7k?sv?2hu-%~!5lc?Wll$tFa7j6QG?Jl~NzOE$ZHNRKlQ~;IE0?=u z@lRaP>n;|3=)Deh?{l2{Tz`}Typ7$Mpxx}NTbcK|SPr}9sm#$dIg7U5BPNMtzg0W2tYN+?kw=VEOfaW2;sA&n7&60ii%@+?{; zV=LB0ZooqSjl@F!;(INoQJ$kqFxEL$kbR!@A*gX%tTHBP5}CK5=5^bueZ zIWeI%tEL-q(KW*{e)(b}R|Ypnv48D1Fsz_)1GWiTac>Xfg-qdo?Ir<KaUKySVe7*lZ_z6(AusZhA{Mbn7^E5< z_7VHxAE7Y;OAs0*2rZqXYcc3K?X)Sqc3MKUiK6I6A{J!h@-jnKbprr>9U>4_FdEpl zP?Itm-L_=+f>R51N~<;(9#D2GG$Wr99oL0a|Bz1vGX+wxXJ|HN?KTB|hhJy-6gu=( zUA2t=%y^9khk%QQhgbM^M$vB7xCL?u6%W%C^hQY=hi2+XXp!cA8#iEEpnwQwF^T1Q zdpJbl5n-aHD;0Qw4~2S!R6j`bTh}&y7G-OV5g^Y(dlRrlIF@TT)?%B|FU0YJFgO$~ zrdk?BiYtX#*z{XO=5&m~7(>vC0x>$S)NQbn8|0*jEfHB*Q!h&W zVBtk@_8?$=7L7}BZ#>y({0Ee7C6C`|J!r^Z2~dDcQI2QUcmF^JMaf-A5qavBf36Zl zhm~MwF?uEkCH*KLdw~~#p^LmjI}vdxxzi=CHy8}?7_&Et2q^&*uu-MOOBz`toak%+ zJP|fkhLNdO2EW%uGS&fzQ5voxVhq4rc(eclu!>OAiWEQvjoBZvvm#THHI5=574edu zxpJoz7vh&ZI{{B|=Xh7?R!LD03E+0&1(i$ThDOnvU1esZfRqQ9hDqTM;Mi6H*A!B@ z6lq3D{fC=?$C}(_dC%cVvhsOiu@-EhkLLqw<$+2lS0yWQmMM~1fl&k_K{>x8MHT@; z3pt7DNrR&Jg1~5zo^o`-7HnPQmwwq|99cW4@h3WnJC6y3CdL@!*&hgTLE5)mpJ^{P z5fNG=NREOvE8>La(Tj^j6vLr*k+hQlAcj{_4_h!_w5e~87l&C<3Vha9Y>0*bOtEM9 zMUMWb6vtVA?spZWaH90L9J3-&pu~Vn0*LzWP=5C5oYFY^QZ}7I~k6*`5K^1w8g8qoFL=L}Wy^1ObXi4S*1$0bDVcprnZ# z_M)J+ks@K&a;P^K?x`;(U~ZVUlmNh$Rk3kw*A&wjJye+-n~+=MQ^A_*pP;IecxY06t^itmRN>5Z6vNwt9xjF19 zip#U5zI3H8cAsAQIiAH?7BU#pHiXkQ1Pd^Pk;ni`5PkQubuDM7E!iUfG{Ge^X|3N@ zn!V^wVN-?J#ebH16bKLi2tY{>2LP^MoHq)0lZtQO8i0M)a6kE?i0Yc|nsFbxLrTF4 z;mWRvhJc#Hs7n!e*;NYTTBryZqIT1%4aTsd7dS>_au(1QXqhr7(Hm)LN^>zzEMs#Z z(t5JdQ1D_O7DcN8;usUaKYFQqzeIGtwx_=qiZ9l(FSdyvb&3UWNRUE3KT(uNju&zfDZ>7+bVygw=dJh98qx4Fm(9voCo%(r0RFFX*x|`?5u6pQeR$h{<&6 zauKZ|M>AD4L`DEX2$KE@H4I7Em+kCRiV2OLr8IT)&wfa<7O*;Pu= zs98ISmni`<%NflH-GhJ6zx!rO0jM(s)fm$Z$<&B12eZrVGjr}qit2T z{W>w58Y?==Bx7kl*{PkqK_$Q97UiL;GI3KNRxTw|FK`*M6k<`&a1O9|3psX?qu^BQ5YL3i}Cf%zA&c7a*7(GgGV$GqXia7ls0;gtkb46nkOzDS9@NYTXn#d+a% z6wDc3+~^cenPy`!hdfz;Q^1oP+P9yiqYYatfFptb{P-5}k-u9aA3zGEsmE%vkr8QW zw8CSg5c)VF_*wyCd_8x;LFXwz$Ihbbg1t93fB9kyMJ5(P$*AaAwgZw*2PUdkDu~$rQVpw@ASW>6HLU z5X=Y%X~8_NGujGCFwz+P!;+>jjt7-mFw#;m%l2?zV%8&H$)f@_dJ$VVWeJ*kF&m}E z9u$igl=~N8N18>7O63WfsbNL|A{n~Wa~oB&-0IMV?3ajq!48e37o5ShGf{&w7_C@Q z5fX_6V0DyCLX>jA-Ind8(s&^6e`ecZ^66=2z5^f*Ll9I>F9 zL>7oj9Z?q)co(Yr&03SKm|Zfzd!Cu=*`K{@y$XZ#`Il(dQCF&^e;J=QYZ!EF5xfPG z^^uv1adoW9k}vWiQ-UJ5fh?}XC*0>Q#DiQa@xs1wVadJV4Bp^K;kQ6EBm@=If~a~{ z@{b^M)R^sZrncc$GA}1lEId}#&ve!Q5b3}`L3G?I&soaVT>Y0q(FKZWo;q9B=+Yr_ z*=z*a+toLrav>fbz!3ypD2+%z#N#O2hb0Qya+c!YPX6SA&7%;G7PsP~<`X4%L8R0z z6BoO<+DwS+bCz+s;r>e-B~z^qfF~zQ0lZXfNLSvTxZ>jmY}^WbQ`T!72_|j1gZ^w0 z7&H?7+-xKi5i89pOqM9`(zQ(v2Hf zl9tz5YHlIsL%rdscN={Hp`dxWp|Js6;Eu!`ghjGt?F?|sM z8yXZ-AlWi5LZQ7FW#-X4)+AZ~6hI&+@xm@a&@MqDzmwZ7g2I>H?cV+){?yDw@?a7; zv7~O64&Xj}(L|*F9(Ccrs6N?DI6v}1BHi{MHiKggJhO@%*1$-}KmqVB9zaY-i?UNY z8d3ndr5}IN&lhro$!-F2;YOA9eb4SP01_Z8QBJliiyWctU&rm=KJp~rl@5D1eiI%O z3t{hm7mCB`Mh$9%hNKf~SrXTela>kL*}S9y8ZYJ0YqLIdTRQMJsp6kYvjJZQ z3#BXo9^bH(H1_c&%=Z#x_k@;G0Uh8QA#}h9!Ud0||Es2!xY76LbRuewiTYkzql=MQ3KWDnZt1P!o06Zf zD3D#kT)O2-stZ#QA7z!5^={-SGs(LQz+-p4@%JJr-R7ix!gXh__Nu@7O~LjIyB4EF za*dTl>_P8oc_MppP_?f(?k?{e9xohUGAZIXRRBSl7}|>Lg7XYEr#x;)Z`wk!f+~d( zt%e_~L9(vbVX?DN5?=y8#q114%02$9gk)UK-WwJ2rYpgjtl$3b{|~SNxD@kX&)qQ- zYdDD*MULa;?e32NalyhsD+3K4G+3~Lg$fRuG;mPCN&^cJD>9g{U;>3QBubR<__2hE zksn)-EYYH5N)swwq%85W|K&`TEn%8)L9#-H20eZLtOyZe1t$y&^n5t+CxMg9xdCGfzO6qCH{jOSMFT8b?x58n^*5%zJ2}v z1squL;J_{nA4crLM&iRST%7Q5;e%w#lp}kvAn;&=i4i?p_yAg9XoC(0UNBt{p#{~e zxl&x%bD#q!4I?&~kb6Q0j~zssg!z&saN)&cvUGX;CeNq+&!TW~(?r$~Jm~ zwN5)cEz!Y4)e7UaN=KS?>-w}_*E0+n+ozR=W*agjoL~Qb{{8*`2hcCX99v8=#0o6% z1rt7CP_)QEyX*qZ{|<5jyN5nI4YbTGaNr6KHw1CE58EP$EBLs2sDUONxUQjzDqujP z2{;fbq~B0FZaA89lqosnNRlZh6Tb7}123SX$bu>=Vv-{6d}6XKue^9_$f>Thil>2o z+OCPUh*)ba^(rXKg0Z+XF*b%4svtl&-vp411Q1Xlt~LNjAb~C5r0dQ+`2?(m4L0~; zu3zRdFj2-5bIb(DD4R?m%Px2@p)Ij%d9oiJk0PzfOw8qip|GDKZD=pV+pvA2wQqt5`EdZ3iUnCf#UH!-a0MEGSt(OdW;lek8efg3g z-@F!048g`0oQy$EN0UrLgiuvcwhu!KP14LL(o8ecP+gZZgD6r6zKR}V$_nbFq+kLG zX!PwP8*yCjBb01vph3~lorb?gEA`2ZJF?v0H~jS z(pqtE%WkVv7m`lRe+MI>-aWq#jFfr-h|BDHH~AOe0LacOU;xIxi!mDzD*$0qnJk3=G? z0I*Q^9i>^t16|X-gWC+P-8*?)`gGi&A~B&fpgQlP)cX)Znh#YDQ>PlHsGMZTiV&az(z%Y4(33I> zkb!fw3XYB>D8U`^Q8~}bk|0y(1!{6lYYYjQctnUhtJJdtRT$5=yal}CZEIUiU`m+W zGbW~tr6L@Jjq}B%sw(-Q}T^nMcq(clc1P5m*6e@aqSrl8~`E!~C!8fn=#kF%@MF_3|6$dOSi$Q&W1 zE_FL053$^`r6j4UXCj1(cO2Os|#n`cqv#OIkZ5KmjB8haEPM*$wD5q7}8QWG72EyF^w2 zd75lx4Ml>?N?-$ra_GQp>CwY124PqV{y7Q~Y7 z6x=Ns_7hxX)lONm5|N3B<)Be2S`P7p7r9Bnu}u8OA2jgcvu%JbcBt3)>f*z=`0&GY zdl!j`Xa~Cd!Nng=Kr8$bHWCM5v~roA6ymZ4+|tFga>17r@P%U<%cXm7o681dTrUpP zbWf)s9S3nZs_E^@0Ew$G*o zL+RSs=&m(n-3@PnefgFIYm^5fHQm*Cs8r1S;!tSAQs_Etae%{4eS{)j>_QAX1%a4s z2#7VzrEGKGjM-3YMN~v9fCIm(33L1iX-E$%T3*0R$``^jd1@MIROtW(tYQU!jyj;E zPSKgNVkY&xYCG={C5tFB7W(ZZZr85M*$|M#w4F@?POcY}|Bc*jAlK`maEZX#u3p+A z{{vr1pv&1vdlz2=K*(|V_OIzeWU5acZP|mix5X~^c*kYfW(W4!${?2sbR8~i2LLOa zNJOT?CDvM3ZowAyf?k#xx@RuUs3Z~;V=8>4(G{;~AYPpc#f~$As}IA)i=Ao4<~l)- z$c#YJx!)M)fh94t0wyrJ(c!GoB``xhg>|$lIi*U_0+#PZIFhVdsR9%@z9VNyRu!F9 z=U0nOTXc?{uy_!8_ z?}1$}S;zZazCHH2Y}@T}IU@dRhqDnpeyJDxOE&nM|BJ(WJGf{p0H_|fdpfx29whR< z_KTwCQal$>5XY;SgHVl9iM-jcjrqwYGBSwjTAWH*IF@Rr60`s>S`qqSjrowi>1dJ$ zpa2RGDsUP!;V`NR*nkEC!aiz=oLC*F7?vS<5D5|1g2xtOa8hB%58VT?QL+E4x*w8@VdFm|Dl#8BJHhyc zvk5=9L%_PgmpPn^_k+56DZIf0fI87b@3Fh?OFH?3i&h8#1dzJ97`8s##JU*3daIjz zGmI9{n+8dkEBcs+NfQc_pTZf4!~r-mdNU4L|B;8NK{GLp3z?3dl8+>DlJ%GfP@(|) zY8gF}83rms+*64OD1*>39h-p0k$@@j3lJxsT|@F8~F3%2V+49vTH%)kxws09HHmzofPNVUL$2&M3h?cj=$ zWDV0mI42>!!BL}>8X5X&m6b{tCpo4#(!m~VyyZfZ9NT*d4|oV+sYYs{ zLZyj{@bHam^nw!Vf;9<8Gen-9D8scP|0VR`4jDR%GjtEHs17Mv!#;$&Jd6uTWP<~= z#|DH8AF8agiGX**ODRCNW+Sl#I5xkqHno%sSE$Fk-~zbhHn~hPyRZjI^gl1Fi(#8U zek6k_V8D#L$2xq&3@jgxauj`2pMvX**C9dExDM%9DTolk6cjJ$`Xc$6qt57z%K61; zf)Wb*MYe*CZel&+ARRp-2@V)S(ix5k!Wo^=8k94kMpwl8t2{ zFVh3YF=PrUc?h1+x%b#1ym&{3RJ%5$#DAbiNKDL)yt*lyGAJSiEIS(osE3Q3NV_mU z^E5=cK*XkN#JiBhuhYkXjEnD^{|kHgtOq19x`{_k1Vy{Z8^%x&eUl7|VVsR|5fL1w zaghxRnUB?gDS@zv=uk5=Imw!Y98ls6QaTUM7z-Z6xYmn_X6zM}SQ-2x&X8-M<1hoQ zs0yi2Fiw*>=PV&3oeHVEk`wBnt`N^M0YmL`(Vn0j6_FCkvyg<-Id{xYxnR5gL{9)9 zw}0@zjdV|nf=?3Ly7`>4y{oo*Q33&FPrDdMx>!iK6HGL1z$1!_!xOGMM9jIIG6dkm zw#>{(HE1;^9(h_ixC5W$pp|$47;|ArAd@ae0)zu9E?^Fw+~yyx?sB~kW;pV z3xw3xxcJXU%u{D`Oo>cX2+hBL_^@!30w5~S2W3Rws*5lqMKNnUNRg2Csi|oqL6gaf z)U1#cQI}Ccrp}-|nfy?mxHF}IIP@5t`}oBbDGLMgNg8zl5>OeBn2|Ct#z6zh2+9>n zVhh&M)t%VYo#0jJR4@*xf?%CWsgz1#;mQ{g&$a+ZCIL$s%1$%^QR^EMF3nfC`&PQ! z)BR+>dxT7U{L{by|2%|6Jf4c2F5;3kW2q(Kn03*N`G69wFjd$%OPf?U7fBw{YZU_uDx(4? z;V1zG2mlF~f<&V)9?iI4@q+n*k3jm>ohVXXmATffLYX7hB`qP$@QOJ?E7=h`RqKgP zS`RJEIq@`0o>;>;-Bth?1-rn%(;{2?!&>z_P_dPZ#>|r>vV~w1#Ju>!L;VK?y$en# z%((zO^PJkYRo6#srSR3y^eoiG>_fR3L_OWwyOkoyFvU|Gqg31)Lvka^)51|@SeM)o z+Ke5ClaD6B|H+ja&2&WC>}VCeM+UdLM=IyCV7$TgNXJ3sH_=Wa*3E`-3qv}i}I{P00=~?ecMMIUl-fR$~vO? z)5ivk+XVDlx8uL7Jx{q{1%Smz#Y8%ItQS{+yE$x3u}RDZT;I7^&wTwhBc9^Tl+are z#gDqszQLmEg4B+&E*!iTF2PCkFqX@M5{ca@rC^A&3@`dIrd!O-p%{u)#g$q82oCry z*BU~ZxQUv0WaK!K87d3RsLCM?;d|mVswiRBea_gm&XI`^o=P4ksjzcY$uqH!^~j+H zSVL^p|5Gt7w+D?oMr>XHFykraf{o-z7c*kOJJ-6{zp{0#yqG(=$hCMpA^@<+N<8LA z%*4ABOc$dY20T~5i&|gyQpd8}xR9ccDl;*9ko$cr*`Yj9ZGa*WwUpAcmdp@{qdZ^a zxr1`6FIottIMvF@rihuNs(9d$XoJr}G}j^llz>@Ai$(`RlAhTan?*jKy^=_}M%~HT zV6BSAt&i_?VRQLKZpk_IxQ&Ux7N1Cqv4Gn5W!_u+EXQ&Od`-7v6T5r7y9AJcb}-Zw zQvz6XG1A&%mA<>EB~N8rX>eP^bkob2rs7vC*Rxr~FAY;-TWUBJUp$evzKmX7yQ>CG z|2)N85DOJaUkV&esaz@Xm|Faa0stU50}-nly>Tg)Qr6HG)Ra;l%gU<&&cPAjIJ8Cn zt&fv0m|Y1X91^e?78FjfVm)jWj$LX2(u5nR+qhC}F$x*(U+s7jZ_yTRNz1!fW)d4y zUjDFen+qo{GJBxUDxPW*V_UnxX2;qDu-#$DLIBYQP`{kAuLXc0po^dWusm&TWh=jX z>}ebuwk4L|@~P1E>7@%jBR7VRRP$Jt%FQMa%Ot6(Gg9k=a8b!2WSlZ4udrB!iAz@& z3MV%ycF3KUf+XT_>|s+P%4N8nQ*X-?v3qg5NO5;#y0h_GY)$}4_=n=&YQ%69WU}8a zT8*5#j$?_Kk?sj~_83vInANnDgRmSa;bZwZ6~HC07)Fnscwj{yLPd5h*+WLWUh|bO z0j-!JrgTo5-DJd`3KK?bCuLe&v=1%4Ic}-$^q6A@H_;`5s6#)cGDY2h;dF`x!PVGFJ+o(+q(Prx3i5t0qACG05W<#-|KL1P?;M#R zNbXUqSiV=R*>tKW*ezDq1=gtiSrT$u6J6!pHFY9DWo&};QCkZpSPM}yl|`5K=poQ) zXY@pIuI1j_$Ky8=}wxV;XV2I;S+cT5NmYz5YI4ZABXG#3IJY-spVmg`6 z=*4eg5#150L-P$cAc28afR)i)nAo^uBncBJ1DORVqEIWEwI}lM|J5pVq=rYn*zIp6 z6;jg64xXS~a-nVp$aGs|Yjs(YZn@!w82Pw&lO>aT!ob_dFaa#WP*fxhH^#G1{h}tJ z?iA@H`>vb}xquMVa-4S`#*w_a-m@wv{N?lKV-yMDY{m{awDwj2f5!v zQnUK2zjK)DRjO!sBz;Z~;1Z(q3RPYnvSJFuFFJ%s6P|E(G1;)X2Y&q!`QYD+Qe2px zQ6>=ucQ;zrJ)U98sgTU@kc3Tlm6xveaqh*(khZq?Z-I?25VU420rBU6)lz^Y_^sKS zRa}7?@voN2&dmad2<0?vJJ)(UAC`#uInon4>;MP?44O13|JcAm1q%u-Bve=dp#v)h znGk4DrNY0A8aHz6=sD?H6D0(@?aHmKmC!{ZK;4O6Bd*>V@kk}FJ> zT%z-2D@hR}uE4lT1AzsaNOe#Jsg;JY6;^R*p~+eX3=+od?fWuKtyT=F?1DC4HT7-h`0$<#c?&-cq5KE>gZB(AADdzbIl=jffYQx=i)<1Dh5%K zB5p@oghc}R<3c(iq1Bgi=D4puIHX~ zI!*WLX!ET_Km~1e;8qzVNRXzQ9FQQFfo_m6!Cf4*;a7on8fZqe0~th+RE#z77`&Tx zU|FG@P3u7kk5Nzo1yoQ#0S5phO4N(t84RjgOC^Qr!Y(>I)@=nFZ|kJ6zzRI_Sx&`g5Q(xL^*a?6?G|+qAgY;t-0%( z*!oU6FyyaZ8M)PVG*@oH16+Q2^YIlCfEz+8Fo6l!Wdl!B9k~Kit}_L|Xnir)TNqS? zrL-$Tw-a6P&enl0PzW;i+1+PK(1p*Stu_Z?h(yFgvH!6pdW~_7rW$jp3YgDv$zy=_ za;U={zT^ddW7TtvWF(SNM>Nza|A^WYR~`1%%_8w32;3ABM6e(PSIiQh&Ne3&BSHm5 z1(8Y>z{MZfJ&;^?A{PNAu)4pPpbRFOU<1-pklLxQ3Ko(~qres~eBmo>g7U!crX|S8 z1<)bs3zKRJVzQwOUXmO~03K4Zl9t@aa&W?&DSd?})=@}omeddxy)a3OX-WzW zf*SU@>LxccqOd+GviH0va}D!Z@<_&kU25x2WjrHard9%`sVRXG)DvrJS3yNGr6Bv_ zn!O|wJP%~%F=Cs{*dWuG6+O&^rkP_A)&jT2C~+u*V+ePW;vL1{@RII)C-#=ZDoyHy zO65sP;a+H+RW7kQrfgx$|H3n*nC)yu@EKoLK*qoDrA;wSsEFJC7p)GEfTGhP7oK8A zt}^sz0%SlSeoPbup@#F-8f3Q@!BKusMMpI7nBwGJz#43Pv$hUls(pnWfVg=0@Gxu+^P0GvO*Rs~FV8x5qwq3595BM1_Ed!4FcA ztqkTOb}5Wq1bLqnaTb=Koc5r)CGx`1da3=MMM7&q$VEG_rqw-=1aJ9eh5Zt#UaibE zW1$`ctSf*4{}62f6OhcH`1m2k5^9@BGTF&s%$EF;42rZG=fVi0PKW)t(T)zueD4>X zB`;Bw+JOjbT#Htzz|kpu@>R~{CzPwq3}lLf$oPn&*+UA1ViQD27X&kbU7Fdra~Yi( z>y*(py`>A1jF5|Pr77AGKmkJ_TAD)aQo-mMM4%yIz9_KG#w`U#%sL2a8h7b&LMYpn zt!xt>E$(su!>d<>4-?5b-sXL=0dS1iYB<|&r2EP)vU>6vFUR-FC>@M3Hu zxsmY{|Ijw1_7e}2N{o=Z<~|nn%4<2A^EFdK_=FH=M?-)Dz>(950ZUbYL}gkAD|4!T z5tG1^=&00gO#GVG2q_#)zu;A_a^b+NgCadXH&%T5af_uL8A?6paus{i7GHGK!mqE<>A0jjGr8ITu&%!)_8d%}+5OXK>>R~d*Rj2w08BtN zeURO4(A{x>ZnW4qB~L}zR?ZQNu0RpJq_8YFJX5i)d|Vqz8zU&yap>O2Ci^mrY**53?05<9`cDrLVOa8IM0)ehRei9 z9uh?8C?YR;27xG$fehgzzFq{G* zB^QoZE*(Zv#N(ao|#{1)nS=Rq7400G*qe-@?3KyrtZ04F%Bg$plT% z?KntJ$d4D))(qlX^bBJ%I?>}i*bNy3BQhc{g-~E9&`XkwAc@^)RLyhcj*STv`{X3s z^`rnufHZ+d9&rH!h!_jCmxQ3kn0V!~EQ?XvMncraiqr;4HAYp2X2t*uFt$uWyk&&& zBNRc16ROZG4rEkth5QiC;>}<>Eg7b9A5{2HM4jCR?NVK89UD1Zg~46~eTFMG1wX0G zO-?2l4!{y5TPQ972mEAkQUJJwSZ>H4wao`YM$tle#rZ8xSgptm|1A!rh^Bg;O7&qy zm@HG{6xmaBrTUChDly~j6oLP&M$$>y!d&1R5}CE747QEPVN4J~w&KbN5-&Z?Ma6|9 z?&T3$l%AMmpD;-smIygPp>&4W1pJFifhYwmfC2=-oZ&_;v7(G@CtE;=KiU?jz)d6# z+IrULs308%=2Gp%)|%a+@j-}XQIIS)z&F5j#RA+?dS&E2|)rRfQc#qiHewrf#TaKKm^XEm#q+e zjE8hMhBS6wLMRS5u~+WcD52&^vIL8#DcO_Zr;<6&YY{}z|D{D9Mow4!r;xQJ)TN(z z+0asilUh7WUxiRbRg{CC5pkv&C90V#LS8_*+eq=_QZT_`1^}A|fQg18f6yv_0M}yV zMov-;u-2(qctz)E%BH-C<(N=G6e_dUNU`X|d3hP`P|#`|BG1*>VHn*-#+$MPMMNxV zP&{Mg{F}o79o9sJ9HA&v6b3~BC;eR%e(a^#Rg}S5sTWWHLY`e~K?yUe5?|>?f6ywM zvT2D5KoW%50Jx2`)ef-gBolODg06^os@x0`h1>|$qS0KlZtQQIQ1w04nmH3^O-coM z5y>RRxnj*^Z4tPZ;0$6)YORv!xhig`h5s-ih1KP#|HA8qz2p%F%|%6vKsd!ixJy(x zzyyh<`alH~mZ+{0?AwjlcCN)L%?AN=AzFw@i%RUu5$hIEH^?+14xFMjS#6aV!dY6srH}P zJg=}B;DAnwFlyGY(=#?c(bS+dR90)S2~|EcS4NLH{?jN2^lu}V%t5No&^MNmbG z6M^RI-fu}*Dk!nf=LkeDejzha9Y8LsgdCz0Uc@to$kHXLM>5Pwk*C8j1|C|dy3Swo zl4`xiq^jKm#o zsm@jO$`v{`ZoNtd1=0};GKLG%EEuWJzn(}0ek#MhFc_jm87Jql^67MtoyvXNi@A%& z_AnrC1hV?6D7~MU04twB*SXT7I`(Ta|Jkf=Gz4cd)XNfYQ^n}?h=^j`A?Wz=ztG=Y z)a%n|FsfD}(2g-8yH9xJE|XbnyfG|e#IbzfqI}F{o#sZuJW8~voCPj$NgYPxKt&)A zvqogeGfv8KGUM{NG4VMR0ff_7O5PW(MW>Nipk!)-O=DR+Bc}vv%1p`xQ4HWZ$ozqF z2stj|;+laFXG}WoDR;n3nrtv9YJ`xb_Etd!lGIvI05`(c=dOh++D)*csJdQ6`!+-# zpKi&Z7s%Q#F$c1HBE@DI1asofiNNuWre^4{P_;(LK!}qGh}Ixe8QKy|h{S00%yYXX zlN?1LLVU7tI&Z3$$>J6lI$|&d{|xk?WtFQA=^?&y3TY{qB1c6H2)9yorU=}K*5=S8F)aj5sXuh%ykmTEMc$e%EI2z3dPyg zZYNULvaaZz1ttXXK=CfKSWlG_RYUXzJVYtj0!5mn*)bVz_=7#zLn}CeKTOP781N&f zhDi=>2bh5iyub$>23Z(Ua4#2Ra#C^u| z{xz41GSE&8SC4FJx@ysN^iJ0)1yY1j8#Rj)z!IQ^9LL{oFw!nJDc8=g@H)iRn1+1! z@K>0EJv4wl2)RF$L2J7L0dzrYw}L%XKt0%lEtrBUP{2J@fGfCzl)FMLN@{D{13xpl zJ@`WfxPUv@LTj5rlNXL5p^*M^Q|cPjNo{g!T(}aBhgtuN0qync$+Tah>P`2xm1c;T zSjsA^ON3P3q(WD;|Dfo^tk438$rVfXullq1nq0J0)Q*WFhFTrggtbDS5r9wlr{m_gBxJEEtG&Q*un`2 zxd*6uup~)sK=_aio0};KIu$TYg3kZgRKRSzTnQ4rS{MhD%g$DmuW9X0x7*w@k2F)A zpEU&yr^bsXY!|jot5vr0x=ZuwgX`(k7~X8MNNyb!9ifdLIvYpH=@Jl|Cq69gelb; zbwM`l3+skK-trAK4z<~oL5YTV4(+JncnaN(z`rg%3AqEJUU z0dT=R5I`%q0u$W2DU<@mxI-yKMaNe?6@YmI6#U8C!m`)H0~CBi8T0x;U5rL}lg6QZ ztSGk4-wy(PD35V*7RDCaC32!gE`N$gb1$&XB4r8cm{7g?Mmh|C@1%l`IN6kq1JxZn z$ZW8+-U;g2zixRHyaU+7;H$XRa%MwL1>>Ia$^Oxd&G%9R5% z^&E7$N1%&6d#>ya^jE-Ds|xn2m}+IuRw)8p+z}{X)>ems_G;NH;lh?14`#HQ&}xCE zgPe|?Sg=ylf`bZ{DXyfLxnj(k0v#gU*uaYA3LGe)R?VSAYu6=M!!ALhb(z*JUc2rv z|GPDZ4kS8s!AO8)0|%f5auhg`A;$tD2eK5%aO6RV3_UWzK7D&emMXt*#+kF`=HQQAIOuZ==gJk0&HDbE;#}SEX5T92^ip`0Tv*zBMMZifC3X* zaNz{n zHQ-)jO~@KIV!|PT2pZ|Rgd%F72!sw=$f1{9&et+I+%3w1Xifdno`A9JHkNZC~SC?w6O+pfy(pmV4S)26eM zp(MLIXeI2p{PMCeRkCa+hK}4xC!W@e)7fXCjaFKsF7NmTHxn48$v!(Pt%*N)Gdpfl&9>#pAcrJVDYevO1URjFsSQ? zawW|%fd!V)w^T=EZPbHD&2iN({37W{SfM+KI+AFuPGjjTPH9(`PWm__hDdfP@Rv+X z{8y1&CNVvn)Vx{p$tkZ{=bbxT$%zIwH;#dBH&T&^i5zTX=)^3OiaCdhN?hXm=?h@Q}a0?E>-QC@T2X}XO*FbQGZ*o89T<>$Af8QQv z=$YFVP(2|bKo$Le1_|{E8Vno)=I>sR4sZyt zziR&1z#zdPKnK8ltO5`~<-k!OP(TpgkG`d=_(mg5^nI*|SGItWR5RQVxxCcaVNo=2 zY7zq!$XXpC{cRz)v;W2UpZ^|nJDUYIT5OPOyBrH4XKZ1gXMv>&KvVHzl~lh?uvC;$ z2bf`SAixknwfy{$<8zDY_iqILvp-Wxb*Y?sKfVDu#u!Y4oClqt7Iu4YJmNZtUgD~| z^u#mL&8M^qu<6n>%Yp6IrNXIXBD4r3uqci1UELr+;r|182?9(dufzNR6a}puOmSZZ zhS(H|m;DZ^saY{SzIXo}X)_g~jmxXuel}riJ4YD*zzT*S3k$Dv_U`jA zt@dwJz|Bzao4EAD-1fkC_wz`2cGD@EP1egA4o_;cM~UJK>a7?#6HXV)WWw6bJr&R2 zSk#^Bw=|Rxl~*}gFquVgD4U%6-CpdlMElF|3dz2mN8WI(lXq=ofGBJ) zAwk}v%h1XlE2YgZG9^ux?a5}Jke6BF%nqlzwcuJu8c9pNG@-9o?lK_ z^{-XuC8r!i8sS!y<-)|ZN>O}UBXP4PCkRu)B<>T?p)NQF?7Sk z&fN=OA%mLk;Q}0HEl!3;rVn?5HN_Igmo4(K7zs!fn*2mQua! zvWDS`Y9m149^+(vPX`;Xm28XtO}|ZtC#-+)v2Ti+tJ-eF9DhRK=82*QK~fm1=$;7T zD6bL}=({Rw!cbN!l!=@u*P2>KIb#$CWCO?Y!XQmIOT9kgeM}|<-C>Mx-cu0r#TTsL)}ZeO0y7Hi~BBp~paMxHnt&$a=*uzo)~ z2fDrg33GlV`EepY{#h@{Vrh$eutTyP+TJJrNWB48uUHTtvcN0#ye)z$$7ON-oEvwE zet_KS2A!7I(b~9;LNiR)w=C}MyTV@?Quil)RPrG<0(@wbxRevM9{`co`%rn~Lx-d* z9wrQTpF3p$0AAw!yU)$EItcfQ^mi@9KBAOt~(LJSrF-l5ytpZfv#4@DxWw z5FgmlRM2x&-cP)X_0R`;cAdq55y1%=>)#@VnCFfw7dKh#ZdEbZ>%NB?!y6_mPMj5K z10Bd;PNT}0ps9Iv+=c{G$C7k)%WsH1IyJmq{IrFPZZ5M!YC*{VWzac-=%<_kpRp{r zypA<_olOaNE0-*}mMeygEtcn;a%O<0qxTmWR??5U4|IiC%!@Y6x6@N{)1F6bPDSyj z3A3z@MeWsE_8-entfcn zuq%#Of#HG3iU`b~&j0}b%by&jCi=)Xq$pjjZcC z3Z^-`Pd+ST?vs4;8k@x$XJ_roYio$9;*VoVvWdrI)xX+LCS2sg8?DnEUiBL9y6B#c zt^7db)lxlrSUpJO5_Qof39y!^lwwx;!J2F-I|tWmJSaCSBmn4~@2IDoA>tJsZ7*}K zKeKE)7-R)_b?4U}fUzq@bA+>uz7?Kj3+@LVN73J5n{BGzOxeu!R%@h2vo+&wuh#U3 zqV4EhjylmqcY!_!b{+*&9q%bO(C=>~aLb`Y_KZrgw=9QoN@xC#!sx~$V)g8xezb1m z>33szj6NX}cb3osAo~6&Q991TGr*_c6aGHDWewe_%6#{eQ*WVgXTx-|YX8My4QCFo zTK9rqp}jzE15^8wvBuQal9fxlN4_drwe~DThiwgQb&<$J%Zz#&)T^FM8tMiBRg#Wc z=+{+@XcQtbx@h2$2{I7~PshZwvI>TalS&@5AQjLYGX3ND7^R=M zH4i&)ox47(xNWI*E;6)xpSLd$erAss*6uW5y>Q%z>H?+Oc(?bO)HTK|R;sleCflMA zomMJ$+r^ivzfZQ6G-cjI*GRq8q|5Q@`hg<)zYJOMm3-cm1?i~Xvb8b$z4)a>n-Ak; z1hJB1*}j>U-gr*^=S!_ZHX%ubEBw!8k|PmB&fhy-_Ow+6n0G+AF2PiTOX($9!{P%s zI0bD_`^>Sn^=)Gs1~&lBER7$4G~?v)xyunX z9}{^qAKT;azyYTOd-$f+qVhxeIT%Ex;GdLC5^F=h z<}w)N;VX!s`SHJtjFqaZ6~@*`IL-Qb9PNBBMm-kbv(2cw-_EjKGR{D#Q|J^mrjK;E z{HCKJp$*TgKG)MnbebiP4_x9bMPHNWJwn8$4bv$eJ#95IPaZz07Vy}7n!i4x_^%)a zZ9+^5!QBzKE(f{2i6F}>UoI7Ep0Er#|BgsLU%gP1YO0U&nzxz?8OKmN;#a-JSxN9& z?_(ik9`eyNX9#PukgCtCpPLfwp-5)c(LmOIX3Cmk1pb==z<=|nMk%gs@H@I;(NDcMVgVDtYE15I5wV@ctc_|ZoVf2N1ytSruLjSod8P$lb@SXWgBt=zOC;;P|mht(BPZ^Lk2u2A+NGcZij>@tLpG&B|S; z;=ehdvjwqFSN`zXOkU~(TAaFhsFh* zn@rCgzW$pj3arM88k$Oj_(2?zDE_PLyQG4}_lTo}v&`IoGa&Q5GR>QebN;=gFd4x< zd&Y6I&W#>ydYK-ZovkiAOFMA4IVoyC#ms0RA|8=S`1|2YpwTo}+3$GLG_X*)-AP@Cb(w|!Y%!!stA{A|oCV-fAa zV;&n-7tP1gKMBRFdz09{>HkcflI(Kwf54Qw0C$>@u)QqI0BV?izhp$yKr|7Pk?G_$ zm9T*iKt@C(L9LPY*eA*`YX+d+HFmk&?(v#RG2^IsTNYX(#2Hx+-1i@!6s|F(iIq32ixNht(LNNW~9SfejP zh6#DL_48(2wvlHE%zF(o8*p}*)Sp-l7B!Pw8Dq*FD6&So{~G}Sz;HYI04M{f0iUQK z{{B%&l^-g;A0AI>VACZN(b@(-SUF8rE(LmZwk0qkfT|K^q{;F*=X4#G82Eo?SWu)- zFY})eWc`dZ0W9<+%tmt9_k+BPTD-g_uU>kM=l-73S&hlZDR43vrJz*eqXsz#6 z-Ej|~>B_%MSt!Rx(yu>IYgil&au5M0wI_^S|7VO(ll2pa-gJsh`^=R4QmXS{B9C%iCp z?xa1ivS`=b3!+;sQXNiFKutwiS*yFH{vR~(Y+R`)esCgL5N_od^FQctGB-!%sA2wO zkh_{`Jz@U5xv*pnX5?#YNWV2a3cRv4@GDOZPk>1lVKs1LJ{2lkT%$VQ^y}yQ>ljR( ze02QDFBU;ld)5@cQ>DJ+YhkH4Ec#tLB}ze0&FV3Ns*xE}kO+*Fqbapm=15sUmT4F) z0^UKA+Zo?XXXE`_wnm7W*G{5uLD@y{0&l%-v({iW&`v||B}e3yBM#YUibJ&nOD;uIzSt}C+(o)zZ=vkR6{HXyKLMu};b`<`^ z2jTO~{me!ARt{MCRN6^M|C-}Tv|*naJcsl1(Slsl*aK((*5pm`rdzZ)cQPgL?SJIJ z1vQ6&Ct;#pficj{_R*t7l2LYRh(6Yglv)0d8f6N|PgKmN+~Td0%r5O5AApj(7=m;1 z4IiJ1r$_AEYYVrtS>2lzfH<63KSUtqmR;BF=8Ae&rH_Ck(jE0X6NHVG2;Z;8GhUDVZ~Eg6QS-*9 zwjKo=_U&>JMJ4VNyGdtk1AmHi_4SJ;?!H4tv}=OZN<%D<^1@6~lfK5p7#rj|;EO^A z84!sI+fWj9|I=o%Xy6cNy|C8Vs~>6H} z!%7m=Z@`;{1XT;VditwSUY0`m6J@nlp5I8x_C4rJ(n|}aAK}73->y4OIj(OP&8wrc?(_NW-otv+Xr_xy85WUp`ihI~ zS_@&=QYuYOATJ)U_hX(v>d3JF#?lkH4{%L}79Ps{A39+G>_lM63AvBXF};h*<^0O* z;*@I|PQg@SX9{^|)hLJg827leZSk5H!QM>C7Gdp#pu3>c!*$=+EZ8N`jCGzzGimHU zegsF72Zf0#ksrVg15OwanBWKc`i~}I$pF*PqSJy7#uv3WsdJ|_UTmey`2@RaI-I$E z+i%2;jK8ZixY+fw>attT_S$Z+by}xfC#6rR&T3fsPL?{+jXV@+c9f$*;s4E_4Ah%% z91T(9`#+14+rkn_IUUAGK)4)6y%PL-=gycp3w))M>*HaY&NnV_je?4 znLfwAP24;%E&O@~1uMkFK7A6hF|11h`6QI9RM-kKk<^G5mZ3$qGdDs|?Ys$nz~cXi z=KkG?aPhL3vBKfZ!L6M5QZe|l!t0dB5vZ@vYS@1?_UPfZ#3#Cal#o4A?$cat-|@3g z0kMT|y8d!%Im7!Tlc_|2qwqDFDX%klyHIa67vo2!A!WaN1MJG-O-p7%T)ZY*7_5g4 zkqbFxq38$;9%WGr0E+VIX5ODi%u8@0{y{CJ>YHW?9-oJKN%DjbN1xAYhAnWPAcmB2 zXEe%b3AQIPDusTbb8YcvEt?u+be3ON4xeKkL8A}9kWee=_n8T2zL~dP{ z(RM!opfrNnk(PL>GdC-?^P$D?#D0m!O5h2=|>cB>F3vSeOLRVmhhkZ z6EpKSQ!7ilLv0<28McLW9kW?>JPT1S7lZAb3zj1;-apf{^yUcO#LnJr5l(=3!#i=0 zP2rmM%)FUUC3$e&fl>YA-^mVKxwA%Md!>H(x8{Kh0D1o^R$lUIL_7B!B&yE#Fj$)j z#=Let+@G3v&g3?^tQs@>e0)RoZa=a|Yj|>+=;(GC4sr4(UB2LMQ`5;!w}5AACA4^c zZp>rdqL%Mz3~E?nF27qItS^cL(PGuY{g9AeR0CF?^SSWz`S8M~BC;Wn0mVXiI~%;vzsg}$(E+pqY^~R%C9;sGX$9QzNCA3n<3RL z)Y-trG;zfgaAHGaWD3gZ1aJp)tWKxbdML<`;AJU<~rx2)7YyP%}idSMVF?{ zTUkB5VO#51psU-o-Ldr@b=lL;=Odc`jW2L^DdE4{$keY1=g0JRW@lD=4MaM|$(pxw zO*%(6R>wO{JUbM-bF*{R>}K!wLp&;DO)y)=%A*^+FH4?7bjlOvlat;%;-x1cEgt}l zru2ouwcrKEGxRZ&{MwmXq23wg!@C=! zNDezsueNkJyfJ^b9(!2A-<2?i^lC#9QajVI7$sibk$hZF`v9c>+^`}SsQv&DuI=;d zRSKlabrH2)-K7*f{W^Rg`F~7*w;%>T0PHWizBM{}2}3qj6%nSd>#cJnd;2U3P0DK_ zXNMKql<#hlFJn8MPFFkiJO_v=wqFD!YS$Rnk907nxRxXcriw3Brnz(n?GJuC4=S$) z-ILF~cOA}Uto!|&3K{S9?EIY2M#-+SoyKNz(THLlj_%eO!Ew=4AQF#vrBQo^`9_zP znmW3(lg}9T9?yO)z|&XPZez$yhIU@0DSNItTRzpCcKf%^H+Ifz`!1rgyKfws`uqQ; z0eG1A_^8yl#TOr7tc-IhD1RxB3hv4KW_i!DZf6^0Sk;wRSHIax3_mXO=)FPFEK0o^ zeP=H!fLwmmY|ei$m!(&ISoq?gRIO`acA#L?!IRfO=b}*TGc{q()k^YjE+Vlfh1KP@ zwz)fYcI}B87ju168Tjoj{4YZWWoo!k0Dw3IyrQ#d0fo_=YPVi&d) zv+BtO(MdH)I+T`%d1bnUL4efBWBTw6c?oxTixfpvSh<)W1@Y(yAkTHbN{O|YC+O{I z_h_GI3IgCzGroaI1w(be0L{r$cb2PyU?NFEgO68P4?bv7f;A;w>rJDO>?=ZbQ@wv` zo2CB&`19_+EjI**V`L}7500!m$g!pOEUdLGL7o6 z5sPG#=a+W`VMM(K$G7KnhxV`|sPzWfOV+?-sOo?V?#_qJW6rceLMTjGQ<-Qh6gT|~E)dX2<;k;F5`E_=Njw(6y{bvNG+tu}oo7Jkh=M(9d^ zzbF)6F9cFV$45M_0ih|;(&QhFwjVL1ai<_1HX3d-vMCQG`;HXdTqv6xzpDfCg-*so(e}lrIxlMfFVT*(cnk-W9DE zDO*#dR7;0?ZK-yi?3;U(?ZrM&_*5SZvO%hm35=?MEP-d4$4u2 z*~qaBu6glhN5knm>0DVECCt0H2ut;Sqg!C1+;`}Suioa+e&>sQ-Vc3VnqY>^sgxiXtE-LI$ z#DYQCF_FjJ^z*<9fhsf{?ZH2$y`aV#!=pjSAW0z~b zWBLK0Q5|EjlRprTZXwA|KP5MzF!)1h~NIntrM2`~F5nQy(XHPp_A#M3#w9L(xZ25IPhd!@|j8M^`%h8Y_CRqS*Id zwCcd_?>l(35%-`H3zU-|&4~ku$&$pjL}X`UbORrIUz?w?qoFE1xTNWTbQPxGXTJ<{ zbC+bV^1(&W1_Sdox3`^GEX?UJn}xM_L4!kk;x1o63&iTTFs)|9D~wUNmVI40eKAZ& zwksN9IB%Q%5jZPM#XrGM_L1xD7C3DKX~ES(+l)J(N{1xtlg%&lIIvD7wxRvQq3M50 zQj{06AdqH0^sglLV~7Uq`G@sG9`HyiDZ1BkCtat8HPbzf*`ztPaGe|B8$$i4Q&~?H zvCG8=JgV#<2kFX0tp{wPbTM4b`{p|vpL{`~LCmlJBqzE^#Z%kOrdDvMF!yIsO7dXa zc~hJEVvuM`TlTmzBB*Zu79CS-cxX8JyEIRbYmAim;BaBNb#Y^S+lqJ%o}kRObUr-C zF-01tNXsq~rZA?On4=gU@CNg1Il)yd&LqaIsO!KGklR63(nYMd%|YGrMYqj?lo06Ly3` ziY(p{vD(7#`5qN6+%1dgw$dTw@aM0M+2c!MB;m`5OofY43fXRms>LVH6t@I#Xr3ud zrq#7gy_Svgbc>g2g}O`D)7nD%9%xnr`GMAt$P)+Ol{4@Iq;q%q^QrBe{|v+Uuax4L zAmBu3Kx1gbBo;yrZ#>D0s%{bgB6nWrQ(K9rq9FA14hICc*7*!9==v6EjHoQr4QrFA&P|9^W)&B2e2z~2^;Im} zT4Q$A@m9wDX+`D(u&$>zg2>P{W;|MsjwyD#_@t|ZDAB2|L7$;jzWBp?a!<+JK3V`> znQo7`+_ihS$R^?4#oGix~lhu%9 ze{xZdA;>@M9__~`0uf_FNMV>#bAG7%$=Vz|DmWS^H?mEuW_PB)%`f(z*xWllQ)OYT z3!DB^++MXRy;;|X2~&IV6T%*&dLsws!gr=~P1!}x(UvmH#`n+5HFqmk6H&>HJ!$3P zlU9ud%BR()6^#tq)|i-Xzo5>Oevpf*S-6JWTG}dvx)}ZlUi>j_Y@Op&RzDN@J{k3p znGyau#_3@Q5`aPIFeF$;VJe1|DXaqM^K;yL$`?7e4aDZn4>y_QIR=_N+6H0VQ9nOz z)9{Ro;^rIl+UPQ0Go`jFUg}=~7aHbqC2FH2g%Kb$DpQB^Bb@6dJi&G=_l)-NvPkCj5A-geDIMN|c3`$&wA*MG)u>v^ES(9&x%Rr82lRbzjWot5 z01HHp`eGUs7DvFE>a<--5Gl;*!p!++H;jd4UkRDjv=7>VK$VX|P#(vgkxKzg7Sk^` zKC{-dXw+>kXS!V{KJ+vL6H0`ezP12OcmOG$^3+aVGe7GI>D>uDSC{O?pi&ndc0h>6 zclLMSI>ds~a#hs&U>^(yx|*sZWB9fq8F%|ZD?90ua%n0h*bcV~deBUnrIbRTuc@&w zw5%=bWYg>uHFatBb5d)?-2sNOU3Bi+x+*yxa<;hG_9KFt5hcYe+%2?PRo(vyF_sz=zq!heQwoWG+MP z#hp5@FA9n~#j(m*oek{kTG>3q9GfX@9+K7Ylwv=n7cK?&Zue&QFi6as_m`ZeJH=ey zOWav-sz*RZ=L||~p|q;Wx-bJ>;f18|87Ks$%CF;L7lTX&}+BCm4*IOJ1~YL{p?mMcq3sQmQA z{gl+M%8EXXhnvE*@oUk(+?%7A^g1+T(LxN3f)eY5r_xvQ#BDmMYg0};PAm9pplg|G zzDc8c9OIDaR=JjUqhvN&Ye|##f$7Lye14u~{dw9cXR~*H@U64krJa_L2R~KJtl1A& z>Ri{p7@w<|hd=9_htP=qE8Q)|7^(Heg0@i+t;Ldk*_JjClcKLGH_ zc_pd|J|(wh^A`*IrB16qT`&tRLDipL({gbMn6kptjZ(G)m&Z#&>QkUs;)HIsiRN## zmJ+<+)4a1vH>uG&y>9BTBOSyGzI9v=lCOU@3Chs&(f*SxvWnx+N$R7aQV55Hvs{wu zZVrZkx(lUJTaHtT+O>)yF*c{PZ$jd$%<)T5PFYd2mdoeH<pbr3CW?lVbr}?yoZN0E}IKBh(;U+kLLoq%+ zx@>EILA2st5HgFewCTFq@61}c%us*?7j5l(c*!st0mP3T)B$E_8ydeT{1f|QEYXVM z9druw??x14CPDm&t+jAa5X9K35^zo-n5GZ{xw5JeM+m|I$D!zDIMvD#H>lfkL zs}aB6!5xGAaAM;jgRg_1d}0U#;qh|}2cmt#u!BRQsC7>iya7ufhd*6c(G7r+&nGjnBDp9doO2r-BItU36?}8s{{Sor5r4kY>aM^^_aKUc zCLqfpu+nn`7mN+UpKb`7Xfm6|gL z^k-_&*mQO2KMCE9{(u`}R5o1SMep$Dzj0Qh>!#xS6dr~TE+P9X>*ek;(N~AUk({EL zj7c9_O$th#q|VtG-X)gJyp-Sv?-szVUtJEgaFE$+;WE){aqK31|7e%6hHep7YWI;d z{d-5sW}EI{-fMF(1nCkZV+>`i)i#)kOsMEiw8}d9xX%-q^nT`?aSPi+#TLy&H6#Ad z1^bR98(hf`KttLFQy7p-qIcYTFjQuSg&gH`$Xsd};N@_0hWWJh+V z+*GIjfxWeoK~;`w8oQ}en3smB_54WFe1ykuh7UmKGPrnuSt9h5GVu2nbtyNh!@Zo- zHm@uA=ocmI3pko)r#aI7jsgVHc*v67A((tC=yv@li4G5=Ss7I!1dHW6x;OPYOoJ{N zW`B802Ca~{{lfPnYZ^LpVzbkC%YO3XFxi>!goq|5wq;^*%1`%pHPI@ct8f;z7Vofr zt;V@|8F;<&q_HTTUfDrL@zklWQNh_z>DZjv2Wc47)n@SQAOMRi!!MLcN*c^-aQ8m* zO2gokFhzMC5ZxY#%S+!ROdl)si!X5SqE-rK%YI$cRNHFo(x78?#Kzati>hbf-K@x+ zO;fN|j2ZEyn6rGcRMNs=CmD!I`p1pLX>odo!pY5A({w z{b+YkN#_sdGoOf@F}OLBT#MextSe9>Bs}Rz5D1F)Q(-ly9oLl-jf%UT+#A45a7YRE zIv}2JamY}OEK5=>Eso}Omxn8hEBF0zK*mFMo@8gZue`LY>TqIc!Zko*^EKC(P ztBbKE;K+Phq>JuF3_>8HN{l3LYM8c9aS`}5;DEx+mlYJF)*f;(gR5CzJ!yp}CT4>| z(=x<~^U0c`+?wj%h>U%FA4f6)J3iWKyNT{;X-MS{eX^K|E=5qGafyP-o-x>Zq7&Fx zAm&(2xFI;^OD?dz1Tf#ZTJKkOWo&~Q`T@ZA=C%(f`7#*>Czv+B4Bt9A)gn`{2mu!M z108rf$EY#n?EQI*=IUoZmYdogV-c)Y7$J9cnR>bArnse;8X@NkX9+bXw67Z=Dn^5Y ztd&sR#duD7j4pR&YtRzPr#K-Gy+pZ++;$whs=&NL{Y1KxgUVNyHW&`ozkQql<&Ba%0}_F5z!i2i`-xe*o0HVGNBir z9|rZ6ABm@z$pgp?zcekYN+#pqsJk!llgfWVf})_gx~lOm7#RKl9ClbdtN6Z`$%g5> z$M&7y9axm4CtHPvROxcT8`7&*B&5Q@yFzG;Xhs}H^01tsH5(odalmrb8@$|i zNG!5zdP*Pb*iEp77=V*k2YKIH4NxI~gDnR*71Nc}7AhwWP*@=A^mbgwphiYv*BCEL zQO-!@j|v1?$#3UTVA{-7P=pcnaK#wyQPio%>rqwV)qVLpO&%r*RL$<|AHhv@_O@hw zwSNuBghXR>oQH&8h!ev)5r~XRpy}>Ot5|LsVG1Luww-L3XZQ4 zIK@?&WWT#wO`0Xt79J-zE~r)7P6-OmC*{LS?j10>NQW>q(P83UHjBeV!}|-p`E~M* zCJ6i!>^c#2lEhqX)2PVD-TG*o$Z%3&QoH59<(W;vwEn~6^s;2t$x_uSqmpECF<}{9 zG00GsU^5$*XwE^%{kCqRA3r9=uI{81XUKqD+V8?(-P%|Qdna%UOz)%F(M;c{QeQBb z9~sbDw25S3@n9=Guw-%i`L-L^sAEhg8&!541ydAF$&F@ZvX)4<_~S*_t=s#kSc!Qj zrZw8`YyG-oZ@!I8+#HWY%o*IX7eIQ9Ta7ToV} zT~H;*?Q-3C#OzLOwMoT(3_sF1TzLxJ3M>;?Qs|;qW6oc-uM5lDQt#f& zB-yIwsMO}}Ywn~oR|5_FvTZNRb1BkC!^Z1de7aF&VUQw*bNv(1IF_O4Pf|m}WYI(* zI45dF5b!Z)o~xr;b`k(&hO?|N{s=0z;h8UBPqF;_QeOrc`#yv2&|K-av->F3%~v8+ z0%umUfbwf1{E_%6ye;p7Nm?&uP>GLx9fC^Qjco;-hs_@CBYJcV(M3gTp!KLx$*~3L zbS^Jq*~J5c)nY7j&k3VrHUjz^3K{8DRvgjtHwr$S?F%lhT4C&06vs28r}LlbFr{8$ zUM`j}6BQkee}_Ss ziy;k|+yTS^*U5yY_cL#eUe$^on!rSja!$Li#hj(}ugC8O1>hkBF7r9Hshk4pb<-MFm`lDmwiE3*5xv@nv?7!zqelDj$pIY@s zGh8p7EIuIe6Y2vKjs?CnN)6I?;Qg7&5lC6!e| zO6^TLB|m#Gqa33eYfoFDHu9d&uqS<(E2wq2(NY`kopGGn)YS0-2r6*Z0rq~VW_l%vPsFX0 z_$5TOu-)GA>w0yiz`#JnFKikl3DiUKb7@U15N(chl{vT9%eZji(n6WWHxEo+F(-yXjW9*Qp!XBCMWJ>UD}NEr0D5J{e~KDx1q%t1wk0 z;=LITB*#ElvAZUz)LuHQjr~-jUUL8syxG;XJmRza5ZLp+T9(Wpp3qNG|d z-uoFpZmhnT+=;C7X_)!lpdb`)=w?wBE-z{b@j$biG~_x>VF~w8Pia}`q_!_akiLYi z7Q)y;azINkkGW7aT=Kze>o)8jIx487LV!+O)ooxMwVtMwnhf4SSGWRIX!M6hnF z6ycfBlq%c~3F~lp;1rk&Ivk~93FA@tI;Nro%d zC>G8^oWqE;R-{keT=t?qV&6f1#aM2Rw{Tfeh%5u~_|F=b<+Cc$%TYBvJLKT&uQMlF zblQ1Y*NH1(+E9bdq}!>RmHcT(!)RWLdsTuaoQD!`1o=ELa$c~QFSv~Ufs;^2b#UB| z?clVqqP)a0M%sU+v6Aj`U@oSFV0JXM(edSn(us;}5b>TMX{^%A|te;6#4oDER zhi(=I#z~`d_#Csu&=pTo$OB)){2-@=PBi8pX|W03Lkyn^k;Z)`x4*}Yu&k5`P3wLD zN}~r^ghjjYZE!yTu+ifJSUJbYcXQt}-hDwiIv&t-SASDTi+`6^#@M zg$13AO%a2H^^20Se;qk9$5%s4_D{khj(IzOjQ+{efu6z=0{Z|6dF%;MuJ;5&D_nEm z+4Gz4+eR!&)pI75%wVl^7D>4+_H(QK!aYtTYs0LpI=sh*&41f}WEvj5SF?R9dP?c! zyQZQX6RbwUr1NknmEL7pfvZfb*_F4w!^jVs{~Aapn54>Ca=0l`2^E(wH4by zCDw|;27ZL6Y}y_y?K?$tF_vMfjqk#7uOJ(&v4ysxR(``mDySeiA)#O(03KXssz%?AMCK6{X-*s7O1OHO&HEJpce=)0KQ4Y2zHeU&UhXE?H9w9=K~ z%=E-NVcniud9z?H0KI3enI8Dt@~E`vI)0LMEWNt$<_SBS@0#L|xK#FTXR9;qpu_Rk zgoN>+T9b_BNg^d{hmr+Fs|3=2&HC}MN7GpDlv^}U`yLrUD3nLdoQVO5W@*reb2_orBPoUCvfqgfy9y6xkGr1l@>1c`s5q zxz`u#D?2N977a4rm5dS)HOg&b8^iI==y9<-+6)tq&Ms7kVN&*DMa~9(#W}Si+D$%s z47|h3QK-LWL{+E^8DuOB%4|ZD@{Dnu!bde`9{@&=&x^%VUH@Q_O!^8BGlq^%z(Swt zbqDvi2u_s(R1u|kyvTaIQ6Ppy@QCfmFT4@AV1An+HN4D$Y47|$0yBcaJT{~|WN3-J zap`fiG||5buh5id2$i|3^fxb@J^&m1p&{BeQB?_>UYI23zI?b7%rV_3 z5G*gz_%4}1OrKtBwI5lin&5>dYFu_gZyX$e(i8Q>?s5=st?OJLU18Ps?W@4Pf$XH% zSo8{Z}pqdbm{ zcU{=ixR3tB%6Yc|dw^k8UOOL_w(NZsCqXEECuGGTg_^;Z)GBA0Ca!H)gw7L&WE+)+ z%BdQ!lSq}0lf%H5>GmI&eg0fMsQv9rhxO-#eNbGrDvM~D`AZn-V02WCjLGdFn}kvc zJPjmJq6vlE(=N_OrQUO}Me}dXKl`M_t>_!KvRt+u_{&InIG@VEhCgKFp zFHAj%$$K?0aaKCjI>0hQ$#)^Lo5Anj2#2r*V#LDa=>(vsYp?|aTr649RJ5q-n1+8{ z<)q9K`3$BvkP^a7DycB9M`;erAe46fEvK6-tvIA)JBpcj5W@FETw9B=g%78W9`hei znFOIYbBt3v(8ZEkRiTTyiUm=G)&;Lx>96{%ULVOu3RYE9!4Q_SP4}r$$I~@4))Cqg zPH8%2S}{^F^yoEg_C?kR4|Y!Fi=>X`zXy%vR0Oa9SFkb}jMctO2Sg`+`!ZcQ1N%^~ z){@eqf!Rq3-`Y{AtELU7#vHvcA0N&hUz@RkUcmc(_O6EC{J>)8myq48Nt=x;!^I?* zUA&5Tfz~Q&S%|y`Tfk_}b4Vj&5v>>!OZ+8f3(%`4A*k$^%sfbZ(w{NLl`|ihKEq1% zxPH7c21-x)47A~sRLeAmW9f!>cyHwk($(_p5jZ<01Z783CD4k%D3|ymE_v;5d{ekj zYE{3g&5J4VP@4n%?kUNtzE(Dl)E9B6l<}e!-*ZWr(`8tEc@kUlx$a{B5k> z$`>um*0|3LBe|%xf4e}%&MlkmI$gC$?Ig_Dtjh8OKv5FdI7+7gHKE5cB6lkODO8?5 ziao>^s)~U|iSc&_SvFj_Dqm$&$@&;t&%oZS?j>kW^{0sTg(k1pTJ5aPysvES@{+nv zDUIs-+gN*HN&OH%(6ow6JrB=Q7R_Buo4JPQniN{WkUmo#w;=m3yEQzAi@>Pr@!EqJ zx{18#=AKEK6XR^n3;cp<7Sz}5Zz}4tCMn&r8IP#TyZDOUe+kQY_{l>Yo)dE{$!d_* z=*pvRIVhxcK<6N$gST}HH*DpM$B2X@d!*TN(VP|$E1JU0Y$-|%LpD5lQt#6a)RRe2 zd`UKY5wL}nGR~T@CzzKEHJxiy431zoTP^ZDB$UzJaSU&uR*KgXOc%$|9q+6p$$j-O zbKp63r==%zL0?NuHV(KLbvFG+fIO<<>R4mi43dZ$dFGzuNJO4iBQ%Asde(TOYzW(_ z$rK~Lf}DUjTq8SuqS*n`baRUf=@ype%ms6yzQY1#b&9f#Odk_SmTU6GZhqL;NQ)tu zGA4h*5z+#MuH=LtI((i}+hWG?cW7e_JNfA%lo*Q#G=;bIS(Hej@={^fyXx9qSWuTS zOk|O|*{FRsd-e#O1!+_&xDS-rc zywaAN%k(Dh$Bg;gGJ$m1cWCc|W5X?CHI@QEG)?>i!pKNttid^LnRK5d4`KbPNOFu~ z<6ppQ;b5-!3rfS9*Ep+G1BzMbQp;e^emlH5#MbrB=C!h z^GiEk4_A*F)kn%L<0@9hs7tGO}oIf&N%pMjMK*{)nc=YbHFO>mDJ zpNt2WE!$fkuj=N{0j;GLso=s3TWDBF0aXKFvQU6xHV7b1FAS}&wO&C zwswWKJ3fVRqPiGH98EMXf#c-am4!6**BVbA23|qcy>cm(!1LSuN?rZ^dixR9%*Gzc z?g>O3qvS_(!ndy_f6u9bT1;3bf4HV71q;kP*dQqCa9NAKB|7WL9l8Q@@5w1C6Sb<; z;?PcWtifgQagHo*q=5R<2cyD<7t)ObA} z77>xL$MpF7PY8ola+{@gZDD~I=^p|i^55dBYu@3#{iNrfC~_TrDlViF^-OC7_! zSoWWmAOAn5z5=Mtp!u6pDAGc4hvM$;uEB$Aafjksq*!rHaEAcF-KDs@yKAvRkz)PQ z_kI5}-%MsQH&1S#&EDPK?(cT@hGjXm!V6%BFN*zz^YIud?g~zN>Xq6hwk(O|n;MzP zoYu+wm#4V@c6ID5vw4G!c-O%2M!s6vYp`P>^=omTw=@&PKw<_ZW;oJmk`;#FlU1hN zCXxjcGNUi1R4Suw14k+8x>-9~?*B`LM5p<}Q{Y52{g1KOQOPxOg(NUriN9A|hMu)rS749Bt)g>I-1fw%f@qLlRN!l2u8c-jtOoCARpRWcfd=p?FXd zl@eR$$*h&W)IG|N=4yu`BUB30N`}dVLxF10-%o55mP~fMf6np>bAx*Xoy!^~EODXz zm1kMR1E~V87O0sM`(Ic3zM8sowG55iNLl#0{@>XAb4x`q;b6r@V3DH;C$AB*J!Im#;r5h5S;5mVrPhjUYGv&EA*6vDd-AEtkXAs zV%i{evmUcDhBYAvFICgnWe}CiGW`kJO_}w(uFg?_`d4$54s;*HAF4Z?a``CpY<6Fr ztp379o^|&Y+}w&HDy!IiiuwR&wvk{rAieI#A%kPne{JZL-Wx$wozLwQ3Fn#tWnf<@ z<++ooM%0ub>BC3UvPNabCuWS&Alv#5BeVODjEw3?w9%+N9^Tm(Uy(Q!hN}ADxU3dK z@R$vrQZTI@wj_m+@}lX*G#%Wb;Aw5Aoo~QZ1XW;PchCd;v`N?Ikd5_rnbQ4dXto5O`;V>|FQ$}@j3N`{Ftk2U%)u?fJ$%W1ueEQ) z@02Rc_6#i@DHQczMBxexb@pjH?hiRHi3JEAjHNYvLX43D@&9AzFI?gkEq~2A&ghGp~+ZwZ$0Sc z7-c3{oC8YlmAe%B1)9$ay=c`A`bm%-!NgMgsKr=Ezv*mn<}CJzoNMZaXbVZ_8x|Kz zqrcqwr~G$(NlCF!H;ERsq)!#Uf~?NfhxIkb(dWr~Gob0SAzIRD%`)0!3aJzFvuPTh z>Y9g}24KvmpXAKtPK3_2?XG|58fDi6FvB6j_zdI|0+8^bGd~vC;QW)u+Z6@m9P!x} zel zL=?_r>Aj$3h8!iUQ@Evd2Gjl(UShi<%k^mNjN(vv>^7SP4ZmyKM<;+&LCw9Y$)l0^ZsE7G-wjPJ3oi&x~= znuf*AJbDw5PICmY)1pz`9J1yg>ZYN29H&Ae{}a$BbkG3HQ>wrvd95642#trj%7_Oe zFHa^dmnJbJg(jOuPdkCaP2*jega^ig1PXW&l|GcY21rF4T^g#34xMN^c__e)r+)C8 zOUuTf98kq)STr8{%E%_R{}nyK-a~p9=i;lY9rR}e9z#9P&vdhNA%OkdQH)bjsxj!^ z%Aury#Zwu`IU1KfCnSSNWxJZQe_h$4Ucp*SWD_A%M7cXZgp{p0ZN{4QGZRtRaJn|DP?hA4AQjioot(U>%sNAMwU~DI;l7w;q9l=4d>jmm7|~AylufuJbZ83zQc#c zgc^-H(cild7TOMLzmiY>pVv}%1WJ5m25ZO zcu*12j!ID*wKBAPdjfO*h*kkRlR&hfSGI{8l35mj&hD^z;jCBXv;m31f0xn*-A%E!EZ0%$s9&K!uwswvkgcq!2&r$um~ zY(?RKU9{kYr%zSZLQf1Pth42<%VjDSFh0&>ts_Rb`yP$kXO0PMjQtDeafOaG>97oK z{^5{&EhCG^2u?w+P+%fK1BXaXjKr|2*YNNk7x`yY7}c@$??%rgto9&b95{Rq7&h{t zf=`6RDfur(PX3`^*({n-`wJ)0^`_5ie-cG+qrU|Ay+GI~H?ap{Kdaf~F&|}2AT`w` zBOedK3pk{KNj4U{(PJ(nYl0O!O(mb(N-&{iM*1g?Z`gdr2wn;)wi|uuJ4T7kQswP0 zL2oS;H73j$Bb!}Nd6!rC#On--gC+onv|#GE6$^dn;gs}C$`nwvN77X{Z;e@8rd%zv z&HgMWLN#TTK5WKuu1WLLTJsN6Q2);`oNv3Q3A?xC4H-=3#Ve&rznAA-!V3mLX7;Hw zeQ3QtGuUQ0Q&f^rzb_W|71aeM3!-WpAfI;kLukRJy5Mjo!dVexSj&%@ZO!`YY_q(; z5&n(0%ZM{>l#c7reTRZ`39N5=hES3D8mET`xwd)IkNMbwgLs!Z_WNssH= zdhBXzS;QvXSM<30x6$*QNR=3N)IlwcUOekfr0_djFVpWSEIpF!(ic&NWYiZ37}1En zwfQdaQf;P3a|7!;;bljvT9j4rwSjaArGa@{2;p_Qo>EcWH?+S7Yr9U%cIW0lc#>v` zDw!*lQq#`UjwC8;kg9vBqpa41efr&NA0;9P9{)qdQ5Ua??pQZmy5TNFlbYg`<>uJy z#;W!4H}MWP>xq&eZA+Qs;^-HDfFou6W}Qt>6aAP!yr<5BSHap@p&b%d8CukL`{J%+ zupVVz#tWkSfK(CM6}ovU#~5cl6J_1M4-Khwq8|jEN==Nf;Bm6#x!WXt;3r{yw@Fu5 zHSAzuIq-yxNB49v^}>>p_)R|Xo*LPl93x!i_d5%1@x6C$JGFlv zb1}j>E(HV*j(L!$9g}JO__Wx0`Z7OlKM7ndKfkDc9~|GXkeLXM|30r+nGF4eS)YP# z*bHLjQ$As=LRb8~{EAecixv-4VE$BIu0f{1EaAJJwiX9wCC6rZ_ z)wrjj+w4MEW#)$xf8joTJ3Hz#hZ%UElnZfGVpl~*8oAx~iucRfnl;B%LSPo|0H}e_4_}bkmE-A6_Y8J$Zq+N_gA(z_(F#7tmcoSWuE5jt*ug3 zbJMUV3dFvhZS_&X-a#rpeKIf~LU#a0d{_N5p^ki z3V0t>5Q~S-pZKnZVgEej;|~b`h{uSaFd7cfoOFHxGrL)RG(e$_`)L#@z+jzmFq+ww z7Zp1M{P}j{?j`fV0=6ym!L`k&ayIB~gtKoDQPOW*2OX; zVM?Y@VD0||f!}9~FnK7pfxIfa?{1e;G&Vf}CKWJuD$g+xlE2V|Wd?g(RP=7>X{xMx zzLq5x7t*!*v&xg+Z-^fgdOrZ3Hkq*$zJHThtw~-4=J5;UJFW|ApGj5Y@gz1KQ_S}Ui`q*dB(jq|d? zXCmeutyytyzV1b0(X4737CHRG$|=}$e)nZ35jM4v>T&`M2P)0#TMzDzr!!N`AbaWMsp=2q^aAS>M z(vfHvIfuy!T0?m`TUM`xpK_sBcKln|bwK!gBVPCyfTI9WY36$H%-d+iF8PHfw}R2* zJhm0GQk(gnbeRZt9)bZ-El)&)|XRg_4hn&t@bS-eJ>;AEN5 ze?Eg@s{kQoy?`rH6>uEc{G~qd!@t!`Lrv&`1MlF865Ee;fI#tBN&r`{nPOj2RUNg5 zg)yDux`BDEf5$s4T!qyaXUT2ElMgt17hQSYo*YeFo{&XKfa$5E5_ejV+*!7`;rHJa z^{sz=!;+W-50&8C1~+_3GM5STQ*=elL@e~yNHGn$Mdn9z6&3B5p_)4*Bd*dFV0|jG zoo$VBYT3z98f$SfMTCltAie%Zl)E>sy?`RVZ+Y?ax$(p^ub7y|wv?7CMlAH3#*hcc zeq9f@5qeVex;8{Aug-eJg?5i-?*0j1^TVMM-YT6uO94S+*&ZpbrLFA&%q$ui1})Vs zU8``j!K(|Tcz?36<5)Q z^xA3GWRdxdb2j}N%pT-U-2YijAJHSr?2yLFt)-46xFf%=7X>-7(YaJ!JYd&@$nt3I zU5s9;iQCa)qTlMtdplThIvJfT!-s!-WJfhY6yzS($T$QOZxA^Z95-^)eISg`-HkA0 zd(!^%`0!R%wnqjzHU%YCy`h+Mwba1_725Wmfz-<`w2GKQBkq(jND`@FlC&|>bSG0nI}7uk4{gO@R8p{qQyoXU$-PiavZF@I4$YCpiy^tph~3& zl`Nnv@+h1L{u$Pt4p<7Dsty85{TVeuEKe?o?Zj7Jlb+keseY<=M_UgOR5zoS--bqK zlWT?lqJOY;IaG1669zKUx*o3`s#kj5s6pAIRn9=EwiEmm#dpWljTFuo7bP)n0>R%8OSpnx!gUG z19;nk(uDEPj9n3Pd=jfH({VpRP^$W>7EoLqQ<(N2$eY>B;#-@h1)>&4m>Ez?YHry# zP=a#d<{@)1I2wRMLpab@Y8tLYEzKQ^M7B4vs^7j*E|<}^Fe03 zMcMXJ+!BL=&uF?noJLmAK?nOJhJIk$GZOlZmxq|$u8MC)gc7h**1unye5E z=73Hx&(oI~FuA053I)$)>$j@SG!xt#<})Q1)H{^ikH+rXWS}Uu>!7`^bYBJrAsg{+ z@^C=D@x&%uj()W+r5hx}>(QQ*Ro1qllqEKU z%UrDK2ZE`jeU*b9rGC_X(Z}3&1p;*E++RGj)kR?H1+w(NH#n!m0)^MSzWjw_sPC0& zc-~@TyYJ+gFdb7gVy`ps3B1dCmwKa-0`J)w+w>RimkbSYS$v!C?V5wkxqrA$?O(WF zXqvpabJObDk!!^g4%KO!x8}#LFqLN_K*E0Z^b?&2`d}5A=rhBuv(Au=KX#-;6#jBT zOvp8qrY%D;nhs$RUl>u{`s5oK#ZMI5>)O}>jsA6-(W#-;UXL2lEK>WMcH zHcBv<&=BLlDdkA-P~IVOq@|i*Qjkd}Mt#Ry=59g#1vl4VQ;cGRpv4u_2T&HHb{XXcKcwRw zw9Cm6)lbBXD}gVr7F&Mtsg0FEr@a6Q6gFo=KK?{MReAX-A^N*W@B26+sCt$)iVo%k z1LJW-UY9u>_7<@VZ!}#y z`Ln}Bc|M~2s6A4_S&jvH8d;+DF0R2^4|Vl@z1z;c>-SZcC=1FShx2r6q`b93YSU-Y zb00P&qUVd$2H)}4qcYgX6SQ$XHR?=8m#|U(hb>jR?|k%qpM9dsjFwqS=VM}!oL~so zEGmA4CSH~UEn+Ebfk_S)XZk9z&#A6E#W7vux1asYOctC}GDH%vPy zmI{b<^wLIzGD4;@vZpp2(Xml^GEDNlg0k%MMStG;fARi<(vCIST(Yt{;jki}sgJ?5 z?i_#gVe0j8Kaiic`<|!&csBjWN^>`{wwu!!!en^8FEj!6@$6YG5X$;{E9fbomE8ID(2i z8k6@4VItZ`x=j+jFvGgBOV9K+b~0itCQ(=?pHeu^R0K~xfP5r#A-z`|P`;DGt=x1hwR7=+9J4Cghrr#>kfA@s+x9xg;Y{?}Ra6OG)%wa!aM zo}LCavX7sZfDe2KL4ffr{)&_BJjjW`0t0CV11kZJ0FHu4i^=xdzB>PgHJpp8GWP4m z`7g>GPK76#K2FZkw)wWVHl)GKs<*ipu*H5V;~%P@5}fdUWTgS@tN;~LyNU+*hZ%V^ z$xD9EfVfNC^^f0HGjX2n9;blTOm#53IXT4K8A>cF5%bMXlZr7UNCc-5Qw*J^attbI z-V?0z&?C(vCAU<>;D9}p%mLc0d1`V4-%er+2WypO(fZa937Id0Yv?Pl^1HA&$$J%a zG<$fc-yj-Ntbn>g8ANTja5dkM){1{MZ_fF*BFM!m67Su}0_Gl?vNPSmB*Dg&3tsM_ zno{~)h1aug3QST=z)S1~IueOt|3PXobGcPEt;pB?GqguWjILWtqe1;p!_W04ar zcuR017uUoY0Io)?riOf%*I~V|J%qpozgkmPJ;tnA z#N>OA8D#>{_tjmiTNq%>@R>5jC{o0F9_t3DspadK5Pt_T=?#U_?|1GZ3zk+$TbE^2 zXXR0LDp7{BeZy8ZX;tIa_P$^2$@QgQ0vHQ7 zKG0XBZK8v&y%ErY-q28qii@gHDj1EOa*)#(`6GV>L>(`|(Ug#7W{C?q%z95Y;iz|g z7gL|iqDp5oN{VQUkDuYTgJ+bI2~?YOSa>!R&MwiDE6>qyvY#d9VBEHv`CNtdyS>z< zaTlC7Pbw4n(@xf?CxbLiQuQ0VVf_*05STT_8uo4HBdzarDwvIX*I=~`(|gXtY{ql0 z!4e|5BCg;+UvMW<^F7^#m3JEzkYtC0{tGcZ+IP~ne;e3Z1TRwCoRnc_+ELw5lfNq* zsq!+2mpTXZz6hy5c>`5&*e*RuD|*|@*5r>F!@E7gNYYzi(pISxk2(M|CD6$U^0p=s z=`h~}urF0!l379@8=iK_URncosUAL=i>lMlg+a`vOG~O6UEX@V?CvdQJ?54iU;(i| z!z#8R*OrvLU$p2!c%BU-a)eu#eLc1UN(?l#-lO8}dXaySD=u8aYRbAT;k-#!{w@|> zNr6(GnbVU>l5bQh6Xk@G;qB@S~&}Cb&>CQ(^fGQP*~)8aG@h4h;?xA+eWQ0 z=vG=!UpItf%!zpxRb4JfnyERE&Lu;yfka%1PMjik!+(HhzNEu{s*7H93j``l-1^rH)Y`1Nu?lc$8JQ}) zA=tM=Qv&DH735H`s_?U7UvTDssh7!{IF& zM1FU-Q#;kBVU=OUU6kV`*?Rn73J0BFZ@rot~c-HWvM*h5qim`=QL0+ zc-XOU%WHTHG|r*^gY)K> z!)xku8fB&Isu}tGvTC)c9FFJTs!vaU;ja4vQEfkDZH_kc&Z$(LyFt{KDPl<*!CK9% zv%Hmmsvz7Q6sk72dB&=Q)?`?u{Qn^leplR>e1o2r1qSL2d)Cz@WQXBJU6*KUq1jN54U4*4RI`ZbSzSbL^%H=Bj zP}k^gLtY<;FCvJK*fxWmfr0948D`Ev@!pnuB;jT2OvkxBg!b8FwgY9 z*~z#a>VlCb(j1Oj4}TiTJLs3sTmRJ>b01&-N&1ZXe@EJH0v28!2<>_ZAnd;z|f9W z5+mXH4Ylf7Oe>qr*&F1H6W&yMUTYq-+q2PknYuQNmMTaoK&Co3|H}!TEqT-i=8?ri zhA4d$eN`7~DLYH>=t%uc2ZtisCC_HzgB1LrRM;9{X|Dp`8U*>A|Dyw!#o9F&4KNao zVo{t&ei%a@LaEu#(}&%Ams-jscT)nNI`EAE$LVh zKN#@1!Kei&Mj?={%ni7wwfwNT=dO|C=dpvYqORV>`i+!D7Hz$d|Ac^#>#2~S^9Qov zDbE`MyQ0t92BD_uQ(8)ZPjmNE9KgAx^RCgyiI#+-T#4X;Z0i1Ui%ojVns3J37_be) z4bxv=$O_kmGxilD#d1~3u@E62KFE%3QrFY(f{CY#5oNkr&4hl$=qTZj*nQW^ZWJ$<`Xfx<;IaQ`TIZrNL`3f?i>5ws%ekK*&jIkiPr zBm&SCclsykPazd2dIl?JdH|-K(s9-0SuR#s-b@=_H5LWuEUc4!54|HFFlU>*oy%lp zvQih!s)dki;ZQ`KmLhSZ??CP+9HfeTT+F3pt}M}J3X2Z5tP02Vn;d10=;I%9*TyA% z{E`6E4c(X7o*}U;^7@uW3_xXMJ{1o8XF6MD z<+DE`6YZl$tLIFBdmo(of}j3eS^11Y_;<7iXfCB^kplkY8fCdEb9P2vHdSrVS!fkb zsLhyCek6m}XWJ?vixGD5J>@5_0Dt8!hsJFB_9*`FREblZzII(IJMdp)J;Hcb7@aZZI$r zsPF^%K}ed}MNopA#RfRmT@bp5jpvkVvjb9EdoPI>p0a|ApdCFf)BIZbvafJFhIMTR zPWLoI1x{B&@X9_3=1c$=J+fJ-_r54XW{o8yD-X~{Nq7pZEE|Py`XMPm+ko`F7CFZH z1_^Y|3b%}?c>Drx!Zr>dhgjmq^4~{@kql^et@=csd=b^8JFSJS0p}pGeBW(t6 z-UiAK^*mCTU(fk|8-M^-1ER2Fcq?gUG#h&V!p-oHhzw|9M5~N@J}LeP2~Mic@bjn| zsip4!y^8B%N0$e7?!zU(PAQJ0Xf-PSoPfT1rW`3zva-9 z_EP6|YRK}T?2_3B>r^Z=D!v`DHC@XwI_lL~cTZcHc=`o}OI1 z0e=H?O^IvF9Lqv-M<0F>tkp4?oFkzsy@E`$@8Mxh~Keqk5_H4t0U;$s%_? z)=y*jv41-`~|=|prjCRbB>E`fB`rF zSlPTY6?j4sjd&nv6OfLYclxqYy4XeCzfthCQx`sLAC*-ijSNG<7P>nki6wfZn@4gH z4y3DJr%4!MoKhtT8eXwV{U1vNFAWp;UE6Z|N?lgSK}nI;uo@u^^11w5UnV#6+TIz19u z=*_a_*^ke^4Txj-3m1h=$78NnwTfjau~E^6(^!-dW+r5N{JoOl{8OFU7)nRs@Y)pt z3>m8X&8t1S%robo5M$>oi$cP5ykINOom4`as`Z1f)C?&ivYl+TzQ{OT4_z@m99R(G zD&tS!)#EZjS_cG0C0P>Zkzr&~4oyc38+ypJ!W_#2jaOhQqp;bO>!q|(f~u|RON^da zeFPUa4ND1F4SXO+oF@igG&6QpFm-sQU|!Ya)LMg9*Xz%6ky4<@7XO74&^#g{7(&il zl1GqHGFotcq)hZd;;$6CHCkE>QED0B`OkPDGU6g}d_u8_Eu+@*y>hezdRpITXPJmV zd}V2qW|jNDXStSyX$n%cv3v^M0=t3FsvK|%6`RZTzun|FI<|7}!G&+M>&ItQ4L^u< zGTTChn`|WrG=gR)^-(-klSql?7_986c~+YWI4q=u#@F{&G0ZIX}a3F^*q z-j)KaavTCJkd><;c&WV~^S%1a$^hU2fHvbr=t_!P1@E>$tJbb~9#W97naWVM3#5~+ zp+ld#1Q%-XV-MY+O~j6iwHe%?<^qtAe1Ist!?(5-K4n2l*?p855X4z|Tks|B;Xz8e zGC=l=v7!@$!b(8YTnuk4#cc7WDbn*zHO@UE90jjOR)|+cV|m4HOSXNZgF?gbc*UkZ z@T;|Ij}7&SLc5Sc6Fp?Ykr zs&NAcA!|;p04;2l4ITyDcF**T9}O0V8cf2V4H|_qQsVNyE^O;nLBkxW1$w2v^5fS? zIGJ>tm5+d8Ss5j$=|Z_(9au}Q9B{*!1MRm{AdZ3OyP;1jF3Z*lMZOSz=9wNq&>Y~= zrtbE+i~56*uLiR+ET3*N_74fkP}okX2Z7E{On6rK4@ zVInBWfZ%dyC{CTWQmS^tRN6cAc6^9MM%YA~SDxR^Th@hIOb zN;4)D_Ar-T+%4R=DDz?uwQUnNcWtJsGYpUa_EPo}$eym$f_d#-vA?v;31le0&s3f4 z;G2~gFO$6hYDXtzAgr!?64fwFZ z9^-O$D}RnL{nuwmCdzk^zS#aJ!K)&y*+nh|atyK47vhtduQ1*=)w~I3PwtT#=J*GQKlPFD;2tKT z+BE1>u`YjT)mT%aOfNdXA5*9%C{s3ld(#m@1_M`AoQw8A?^k9~0X0evmYLjVn1Kbk zN?Hol?hcP-n4SnoMm>~lAL2#g4K{`U_@QgaE!lLk|M1}>Ypc-A2N;R*iv6*KWlcB+ z{w}as_2uERZ~!I<>Z=jiH)C6+ERPa(PzTd_^#4O0vBEbo}}B!Uw)y zfPPA8^#q;qOg-v<3u}TzkFbMc00mKPpjQVEFs`jfZ1H$g?Rk)ru~1&rp15hobI+9d z;(femZyF4~(U-16P1&u2i14}5ie)wFJnaR>2-w41y*kIH62%F|N2d~DSswydKbZz6 z#RNnUjfUb0eY_s~Ym6;V$~ri27LZ(DxuD_svbeb^!qkYw}bbgm8a8FLoJ zUS*QME_x(i#oPFYFD`ZpOQSU{a3;A7gt__yC(|VOc z7)xFN8~>EHi~hiJ{}4UO83vJ0pF}CE(P&BNyTi4X0MFx&5H+6|-_2h~E56FCziU#G z9Fbj^fYlic)*l#-To$;@$1CNfM;W|*iW`yoB^}zi6dZbJSA>L)%aWK@LvH)4623C8 zKRPjiD{paHAf@!g1>e!D9vT{;Lzd%3`=yr1s6yg4n`WRJ^oPdZ!ImeMic?!F5LB&S zTER?VA~g;t19t)B=lJ?7;6B3;00R0b7&=wf(|;nTCHSSFWRr!=(Nhp6ESz1!&qRgdL>LBiP7L^2}q>7 zLY4%f#GwrLSiGTTX5Z+@HY8bD(GbmxK3L)!8mXvZ@zFA9S$AO_O%e>MhtiQHnJSmw z;)XZDH1>_?N3B9;TBx6ik;-iP;)TnIMP)kS_xL}&#TXFpwuA zB9I##^%S(|HIZ@wj3Vqt|3F$bE)7=1c&p-~L+gVK|G#h}+|AD8Cn#6Z%NF|}Q6=Bs(ksz3bbdLi?tI$Rf z@Er}y*n_@vL)Ve(=K6YI&!gsNKK_)YTbvY&{fH1p#BzZtjkk4}{XtZU4T9F5?A(Hq zu}$XIN_8vOX5Wey~?51EH9cmJT57>vB z3?<)O5e~tt3Kkp}Hr0@Fjxe0M+U++Al6@OX-2umEurqeLIP<~3T?ZC7sWK2s~Q zbh3w*UCdB49q0TU;IL4&nZ>p4xLyo4aM9b5I_D5PE6P7`O*;Lm#4up2E)T6bv&GVw z5be@@u~_qLDJ;&vC?`B)$%r%idZm_Xa8k6l30iS zk+&RTI^xHx>^RB0!XnZ@1JEV&JTqPCtZOyb_=H69_&X?%ul*uJx?!Q3-rA~!NO6+I zi5_@WiTFVze_W|@P0$5#F`<5*k4>i=UdTC?=H+rVqORLkX9161vZ}OW8|k|?K~_RN zl!rAle|I;M2Zv732T=MA-#|#lS?Q~3TW$tb(U*{xh~I;Rrzm?kM~0ZQl;MnEf;JC0 z&M?e~3ThXkWtb&04thy@iQ0)@OT1uZ`U|)A7p^_pcnmynWCc>=hf*}YISbWWRW~07 zta1k8oCJttwSB2ve^`94&r^^BWQKBRsk&l(w^w4#UJ&>KG23{pmYeU_{ao$#irf@f zekeNL59&y^b2T$^Qle-$Y!g0^`^NsG$)TK6+XM7&Q!&L`9T@aelP)kud18f#$#O&w z*r=$X07CW$?0EaCdSVKh{e=rHrv>Pn>FMax8Ub)F`{Q^B2h#t-^}STnIz?wNFts51 z`a9UF!fwWFNSJXS`)b*9r0ydXzv5Qr>oRyeCd7kCV;y%!u|gX4$1VPuJcVI)_;!h?H%zU< zuXCu%jFjNuM(3zY{vLb|0k46%73BZQ9xuKApw$Eio0$5Xv&29+kHcn!gL|1Tn9PA$ zC-#G@V-l~9lVSTzdv6wbt+fIN;|gCCp#!;2EP~_FnJrZM?p7$l$sHU^-td&kaG+ z(gKo^YDucSDh`m#lSs>~IlJG`ws+M-RsWrcVx|Y;UKK2rbozE2R4zLP%3#1jJOs9R z_c%=^q=Esp6e+=Pt`-UkU$_G8s8V>$hAB;m*EGk-Sv%~NWz9VM6a42gHc}+PyV5i% zL{g4<>h$7y7@$?{uMN|3nxeBhssvcHgNd9Y#?xFQGtNv$Ku`tM4zZxVy=4^d1dW$p z`N4ZCvSlE>pxzEX(0RVl$kxIml_2J0_9VQJO0Ch1%CH3LV9Or9eb?LapH650(M4w5 z^0i!}>oQmE(3RN}ZI7x8l0V@UD~pF8%7RH-BaphOjt{FmXEL0OKvsz>po%B~40Ufr?il$8`rmOQfJ=?&L zCrM*9j~rIAh~IfqcttRqCrx>OUhQ6LZkE?PCFFdgoi#+VtrQ(8)*s_{XlKw_AGU^+ zBR6=4*|hs(7h0Iv@(o`9wHRZ#GQ1Fz)Jgc6qHk|TZShu~iJ%>LsVSJ|KsvL2Zq6!Z zj3*->Vv83xwNf|9c(GnumcxL_Mm>;KLT$7%9=Tl==Bp`d$T5j8_C>dPrLM`Mok4Q` zi|aQ4d=`>*jO(Akt3Vq88pWOS{DDtGP?Sb$HV9v|6NNbrv(sHXsbWn96ROp6hE@Ld zY*i>`+VH@47A{LAz4|)0KvLGb?Sd!_=N**voUUflQcI9W7S$=CBpr(*Vgn5|Nak~w z@|!b;Pllw_2Yf|R1_mda{9a4w4+pb?Z*0WqA{E!9qP%aZc2M3AGiVLzf7XMYcTK#? zS>@C&$O8-pyETp4@#p;tN?f7_y!yU-!^y&&+*^-OGkX+As&bqKU$`$2902QGT6r{W zLYBQQrptQEfb>7-DxKkp?T7-Pl-${^lk%5k*YwJCydLm?vFO_W`fFGYGg zmLBKqEyFU+8zGuQnRmoLPZsQ6=S52!=za(MNNFHR^V{3>*@uW9DQWWe*Sq=BG4~}^ zITCw7Q!dfRbvAbJoRW2&8Wzf_r%`RCfvr33oNjTdC2i>I{dqtMH|y!nA>v`WUh2b& zu@3N1ItxM+TxMBsW`X|5YWTXVau{!Yg04K(Rd|ur*}HQA1!s(~1~%fzb2)3Az6;$Z zMQ!^^dX#XCWff7|Quy{;eT`GClak_#);K;%390)%vPSB_UDH2=*{BIDO1#DM0su~`+eEQ~#Z@1wDN)S{ZSb@^j$qM_ zH-XbsK%d=0aw;+J{B)NSUD$eHLt464vU$Cg5_kTno|G+#jU629MjCQ$6R2KVUU278 zL0V_Gm%BD+6!M9LGJ9xsWVK*TNDIq+ zP?6$$zb1WDuQu8^eigqH5Y9i7?rxM0b`FJ%cj9p4o(~e&vFM=)(Mp#x9OO@z&tIt1 zwK1Ovy)&uhGXD!l+f~)21^u)9R@ZgRPp;zb?)*%Lqe)g;E#vc3emjRMk}(r&M}DH- z&hcA~CO=QnYHA&T2>y&w62B zC{Lj_pf@|IrTEgcQEjTNk^L_2ggS)RKB?3?QSdu_@TdeSQ<>OXO(a8d6>5z7wiAg8s02yOlGv zkP#HH<-R%y9z~mRYt!{2Qqi+FT@kM`_m9vD^9S)?zs*tW3~Q-r-kz)oaHb|3v_Idd zA{$2)+duS9E_cWBZiVAqgrB9Hy%+Vs8d>3f%u!(=^w~R&{Hed@(agf6JW<%pDNFsN zaE(K%dCDHOpXjIa)wHaA&$btN+h>&Hv$Qe0AGuBp%J-jcu4cQih$#p+icn+}7=tpB zy}ger%M>e2jx4t;K(Ym$F}jzL@+#PmY6TWT{>fHRFB>@`TXTySeS{kT^^sj+lFC2BX#vV~Pq`Lhx7v!Ee9tQfLp0X@h^ zmT{IJo7?A3#IA?jQ!B6Na|ZzfxPpc#u#;2Px9D3Q93c+Vxx6K1NSG7#8?_}qf;m3& zp9dgXIM3TY=c>9lhS>+oGKH!fL`b%wLGuw7w9TXLHVUuuK%k*nQhiy5&0#&+&3MTu-Zd8X4y28XX??;{UOWeV-^#t8$GGBf)8?x= zCQNB(C%YanSbJc|(pXcfKb04i0c_dP1#3YaMI3Z*qFNv#zy|MRsgwLzq7-lgt)7|b zVqYciX%hI^X8cRE)*Xq46CdScLPG{lLWtxCF3$5-{m2?+b(!jf=F^pIt%5FbncT%)n)@O z?E{)ysvVLnR3%)&v&Bov3^Gcaf4&p>F%XHL^|H1#X8`AVJ`?ITLe3Og8;BULPF$k_ zv78Jg$o0k6v_}31-`V(2M?nD`2IB_2Zpm|~AUhdGDa5{dg+l(&gN}!R>cT~tR?a?v zdRL=h0nI8-9{zX+ZkJZ zJ2>XQaLEeXggcR2ZQ%kADLGS0s=RDx+KmqL0ZxpML!rw0Dx>(0#KH`$oU_VCT7ukf zyi9CGA%Uun;C-&@^na4z_!wJ`4>&^cZ(v|BJh`-BaUV1q0? z6kcz(G^y?eUm?;(ZOEveQ<8{&29ZDC+&Yw`WoSg%>Jq7aG*zh3TjgTNI@vkd$;Nk*o$LfodUL8)uU-K*rNILU7wA7U%6-m>Jm+!p zTFuV3BlbN=me!zdWuUas)IwyQI+q4>uK0raE#|n?K|!fzn5LOzB@K@Qy(bLcr%;>C zhJ|&cVh~~?Bq4e*P(x(2$L=sjZo{21rL#51@03CxV<^@`f$ z?6o8t6xEaRI2t1(Px-SNa#M3pOc;Cqr?X2jB`V&R9O@46n)n(1N#V@?s2)Zt&yE8`Uc>E+FwAS8qp|B6+1YG6zJ{J>WfNk z-!$Xa7HkOp5AvER-KX{0dlpm!9>eL*B5j!4^Hd)P^<=rW0EbtRLhGB)ZfXN6-1fL# z#l4L9;RgLQ(Zg`caJlS)i(uap$_Wi$JBe$ieo_)8h zxENDM5VwF;FisT7st-W5j~KlB6=JKex={Ompa4i#DDy9?z%(oPdDWZ_)?yl9O*c%) zJRB_{fqGS1l4>DL6XQ#KPn4R;U9ASVt)1B=MH#)NC50I-!cRQ>T9n>j0#Q_=Y zrzPyKxz>}VPhVpZt@uT@j3`{(vujFLP1_bd*0RR>E0b)cFQ0U9UF`>>sO-c!i}jKW z6n3s_j8)eghwkHKiVl=FfSEURRs+c&+i%0RnsuDoHU^j)tE$Qo*L37En$-`+`ONr} z>LIUd1QM1SVQ8#C06Dj~tuz9+PJ@Xt9unJQ)Ll6wVzKZDo};AbM&u4G^(mIqeGe)L zH_SvWyXBDC7uG2qi4HVMTuId8)jSQ476K5B;%vZ*rTJS`qJEl$oNJYAtu;EeWehv z`ysS1%XyV7Z*$EWn%<91UMRwOV<`3Xg5+#>pqI)4GmMv<;h_@lgh^ zG;8aFKy69pK-{2{j(|f%looiJIY`an>JkTwPpa5=F7V4YU_TQ<{kMk0;`?4*BPPDN z9J&IS8#FBXdoG_}ySZDha2og<>ShG=Kvj6PKfbX7QzVx@jUoEH5XaPDc9{NnqS`HGoO}!CQ(e{P?ByD|^AOHNrbf37I=bdE_RDJKLmDeu z`sm;6feV#e0?5vz0Ckk}=pP|p_~rGHkyvIgL}N5m4q*&(AmCLd56GbDmP)G}qc5hD zj5`QfC^4=5*sd_{QN6^c;CM!W!wp1}$fgwRlleCtl%0twW0J`g77`&<)87gRx zdIWJ7{CLGi$nRe=pwPe;zkhkod+QYjUP7To2IiqA^IfdKjY_cvD!3JHsdiV?C? zU?MTIa$&>m!2JH5@P8^B3Xwn)#fGi_;FDaJgbHb;uz3zd z_ygcH4+I2n8HM)e57%k?lTwv>FHfe@YFq{wReX!5_nCzQZ9I2g-_JqZx7CNq&`>@5 z`hWu7)M#BdZMxS#Tff+$4|-b2M#iO6S?164P1ZM`NBFkRpj5Tb7yvxUTI`7Or`410 zNS6Fcc!Yj(tt+p17#Y<@(2-G5Ram*ZjYCgw_MGmV8U(x%uJfu~N zqARlDMI@X0qE>0pu%FD7ZEoZ&91c0NlhH{ilKA%kV zbJFFakuxuiks>p4U1*nb3F2p9i3s1tl7)@TU`CC+*kc$UpY#$ zs4ZKE1YHlUCYJ$lo`CkU%DIejgwAwD^0ZA|OH6usEgfxr67dj_q1V*9Gy$6@U%C&O zZ-mBLCpM{c={>Jm$dKTbVQ$C7#J>VZ&4lwu=)I7>&#|mYlt)m;x<4to{cgl)92KkZ z(G|00qh8%I=i;om`Cu)OjlXOMS6`6eC#Wa+J`fgZWhG(3OfZ}k+!V28wRRztxS@;P zJVX2~5D+l=O&C{lF}w z%2F$vS0vOBwFUD!nHxDvtZTE6MB2ORlqv?}4wZ6z zbzB>G4#z8FW0Rqtib(8*8J{i6wG^$MtXz*cA!M9G?l78np2k7f;zkd^g3SzzOu()w zVq?nKjDAW9C~Ls)=Ysbp7(?0ZrHI&>`vVw&u#gTsQu7459Zp;)1$g9(GUl4u=NgKL z6qVeeJPHbUV>Ze$48k?Jj<%*+ME4KY8`XT@lzs~w*Gjbkbtt)YOw|A+V}pogA|&-1 za+kx2NWlww)o>Q>j8L-(*ftV-peH|8bWf5MMWEg&k76=J@qxD=b2N?&0eUqvt(Q0q zRaK_R~pDg^+c?=n@7ar8ozo*tty5KKkZKu}ZYjeCSeyn1= zK@|dw;hh5x8~Bk}<6H=XVy4E8t%_>P$oC#$;S5d;A@1CUE7n2Z3!aGUZ?3&E*%$m> zXbaQ$R=dAHMfsUw^2>tWhtUeC?-c%We<1Lf4#oWgFl8peM=^x1vC4l}x`Z(H*0i`8 zep;|ljWW-<^$OYgu7{U)KIvb%=GNRE+nMJRy4_zBUA0$ucZMu({phwi~?V< z?ZA?S=$S%w9NUpkUzn*wCEz8*pSzX^>WJ*n+=5_yYndvQ_Xi-}ioh*U1l8Fhp z@(Z(tnq-H>yz�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 V#4i{g=vX5dhGQfN`Jb>a|Jn0^7#siq literal 0 HcmV?d00001 diff --git a/test/e2e/media/image/artifacts/image.png b/test/e2e/media/image/artifacts/image.png new file mode 100644 index 0000000000000000000000000000000000000000..96fa3533152fc8c75603a3e8cbf39deab8e43356 GIT binary patch literal 286092 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

9%f)cL7+uMc)+OM^oub<9 zxMmBgT937*-Z;kY|w5W(&XCj)5O$bwKdKZGGx5DbMOs3;Ul!f|N? zLyT02ekWR9PV47i*X&JK<>-{`3s{_|;_R zbH((rM=hAxKd-c6e&JH@GN@O?IKE1`zbatnHPHX0N%jxTW*z_2^Y^!L5!0bVhj`7- z`_0|m-M`1i1?RiA_U9`?JR*PEXC&Z#;(}*fxPgC4cvlbr%{R+~Tf6-}5%+>4zEAgr zp7igJ(6aV*;Wq7ouz&bX|KR%me}}iOybkVE(HBv;U(^WsD|yn!!>DN&SGR*9a6h$y zDPP49vX?Ex#YDNsLSYQ#FNB;3APmh2hT{R6gzP?aB`PI5uiWW0sm3|;GKJ2goP2bs z{|#=M)vX?w$n8uYl;w}IgHTooB3RE0#>A*{f6n*fFhs~stT3GV-}53+Za5}GPG&F= zxMu|6G=JKq<32doPn_e)W;no+`RI@ZBx+_>vt7j}9M}vybiy9;Tu{CnDso4q?zl{2 zwBo_#dqaUAQxSn17c+GcP#egd@n;$$2+Hxz^|J1GmMHqVP(-eDEP*TQ;Kn9&aXC{T z1gG3_wJTTUj_QJOdo+7_1$?+v+-=V`jgd7DRo4tqR2ZmARfEd(l{JG6>qZ+jj5BDQ zV9+p0zjnN;dbG~zQL3t8y2PkjH`60PZ<(swGF48q4op+Go9huHd~cni;;nwNw05Gj zc7m*KA{_(jC&-$oC^}}UFU`{-cFj_9!$$mpJtw$jo(93^!T9HzICqT^YBSh{CWGCI|Gj#E7_ThMs z)=2Zxj=f#w)o`Z{ciap2BDh=xR|_OiruOs4d8LVb~DJ`zqJGHk$iubL}hILxu3u-cqvnyaw)?l#p1njtTK_ zzg{G|aFT1jiCObd__dx30?5-eY1MWL8C3inVl48Tbu z+k-Uk6Tt-TT%tD(ygA{+=K3aQSOD_(i|5q%?f4CN7**0$cZU+ zWlEe;fj#8gLy;qw>kc{YxWFGZFO@b&&c!jO{h-1HRk*NK?ojs}?l%|X%kEs`I8~*AQKg}}d7SFv9K#Q6^>5keU$xfn znyYS@B0n`wO5k2QUaxMfs&PDBgW54e*=?b^Y^hIgDCt(9qEH9D>>t zvwX$K$Vdq6Nk~W_R~|opY-3|17K{0&NISD<&n6!UMAnW4nlfcd&x=kKQiNwYj^nR4 zH#bk7JQ<#^?HW9I@T^(0^78V8E(rwZzon(6#m&ua$dDnV1tB;`Pfu^us8P|;(YJ5k z=9}ej{=wJo{y&!2!JT0J65)Fp-LHe#jWWr#Lay~Ns(lY?wlLM}*ou`<7Ej?`xC9l& zQipr~0_t`WsiB%@c9$oxFA4u!UZK; zGY4m}2d1HeGvLT(xzCZ zHVB;!B+4DNL_=3Ry0T8v5Dlk8p+1^xSd7|Np{^CEeGzlY56WCoxf@&Mg&IO}YYe)y zlDQFwt`NAJsw&k+rwk3+%v3k6jBdLaUbEIcH%r_wRa`S(d}@rOW~_pU@s>$)!tw4o z>Pr^t%k%Uu%`@nlt>130B4b1C7{!^k>j3HpXbLUPU7dB5uLqkJhC`wOH@95|- zF)`s!`PK+td5))~r0`!Vyp)img@r}Wi~bqXtoF|*S5i|`1>6e*1Gz%l?0Hd!|K%@# zX>DyK0|vQ)3@XBJ;UDB1;V+Wmhy0=*EnQE_TPogP*bZA*zI3^y7w$AprnL9UjdGS) zM;bKjgHu~k^?F>n3d&bdzLzXv3y5rAh-h3&1ZcxO-5>LI+>hqz zF|orgG~WvkcVVto19#xzp5~1+ycs^j`}2gr_@qA~maW;}L)&tLFwyT6@j=vALlixY zz7Il~fwVKJfjA|QrMV$B;qzI(lEMI;6RzT;7VN?4`0#X;WPvhm*jz_xi91w!aRly# z_KegvGHD>Io zapKcvI%mw}^_uJgo#x65)78WX;@hU^Hcy~i>zy5~IyGELtZKNTdW7z&k&08M3Njd+ z8K>J|rs5+eX)HW-*C-n&(Rj+HDdHA$amQ@&MN1LgwZk3X_rZ??na4rsX%PM_2z?Pu zcaQok3_gp1Pov=TWr)T>?tuGg=utJRk>T+86=c_jJE1vmk6NfbXnnQVe;MLm1$XV$ zu-bb6HC~;!9qxw?9nz+ozrX+Y+dhvlawKwCrBZ1Vvk%#|uai4ZoH#+0zP6WxG%{@1 zFw#|?n~8~uL{n=&E*!}iAUM#qIcslk-^OmjC;$Ku07*naRL93cPPNB|y1F`vM567d z5}GA11U)a#*>2ddfxlTh8&Ch`zWfSa(xv0akH5Y1s6u%q+%FZQt7W)bvwjv@yP(fg?f#(-V#T>?L>*!heBHnTwKmvTE%rNWojazG8F3Kn5K9* zzY?`BW-7=lg&P#Q(UnkVL!oIQfj(Sb#GH4;m4n$*m9oM>x73iW89~upWvWv)N?tie zSu;+rZk)P#obEX@Wjhh?V^u`v*N;-w5SkB`R}7R_nCMmvQB@9ARu5O78lgH(J{qk) zJ4RhQRp2gG*6eDpCi3!ExzF>`q+cH=Z_u* zV;=6G2Eu2-@M#F$8t_>Zd>W0PE=P~nqI>V5yP3?xGpxqV0?(S6*TY>PyEfdlt&gs! zZv&d!gwt0E^FDAF5dR~F`{Bcf1-KK6g@lBBzwPrdy?y&O(bRn;Eh%!j+|<-``0(MZ zrtrF(zm0JJ(W6IwCMStb=SfOBtW+umn(OK54H`5^UteGN6~aq{Fm90wfqRdZyIhd= ze2M~6QLEMboum;XBcp)>2l4|FDdpwm+Gvi9jO3fuUL-}@8Kx=Y#*GtRBZP5_oMvWb z@{beM|NZ`*|83=);m(V9a?jOrxLHXM&$XxEGw-6)8*%j-s9Fh?%W>Hf5g~g{6l6tc zmi|ZJ-nhdcN_I_F07NaYH#vKXS8rm-qt6504?4jCM@Vo0ZMgGmmw31*x#47YCdq^5 zhCHT8G{#$+2Tt>V2|{E!jh^9b{TU#vC{~kE7{jY%$%T$qn*dAjgHvbcMzx zvi4<6VDHj-2g(JwHO6%NrY8KGBcYIJ(6L9MBp?yEOeerB-hl!>y+ zNLg*7cY2^v)j-3_fqGSg^vj0oRt#5Fjnq3mQlD7OD1$Sj4bPHiN9tD(r>k4bhsmo( zkugJAH$h!LS-*9LZrdzHmxb(-jfBAcLk~>g{xAq>+%o7%AUq9%XQA*c0ui!*x`=(e z9Nk}!ZtsG-Se{0SQ<{(0h31t!4CP`}!6aJBJ}N)vcRnvyn(WU;fmrhii+_%XC})V%w=t})t&QnFU%Kr&&Sv8L?1azZ@WqFc}Z@2 z<2#l=o#rVk*=F>Rt!CJVT0QU;elRELEM&^DarSRic#G5veUlT>6 zoq|R{xnSQgN!#+uxSBVJmSMEu{`PIwK}bj7F8D_HytsWlBm(vNC;07C;^X7Bqr!#A zKO%AoF$M1jAv;mQ{5`yO76J+%K743wY^oH5jtO>9p#*cFf9Iu-P0EY?%|D(sW1m z&~!)`4@W0MvN@zqgS1%`?wQso#}@MJpuiCdU8rj%*NrU-;Lfdbm3c!{MMKmjgLNv0a;*~-S7#Vqn4xN&glosbSyQ%p1TGl} zg@$ao@jwFc%0Y$|1C7YB%tTpeC@VCS7w9XC^>vF46=j2TD@Q2Lj8oN5Qni}X#j8ZQ zcg~e}&6Qr9Bfd6IcFU5OV^AD>HHc%Ylp`7f%`W;`+B&4)6DAI4R=x!5)yc<3vQD)DcY>(pCT1Nn#Ns5=;{2 zbSX7}+v6gNp8?A!v72V&BhGB5hbYY&j+n!-DUdb;r%gj?vv7tb%5lJjj!@)CH`pun zfI=d`J=oGzYvIa9@ul_3 zGYdo|{-`tn&Msu@W1wv%<@-nLm6w8)xx?VNN_yNtnPenOGn8izl;sSS9$Q(x0|avW+=L5DKE^>?K0QBI90EEin?>Mv~x1oJ`HuuhHH*+ zCjg!-WS+$`j~Czv5pZiU+rhqdhMMzxPRW^R1LS&v!mou=eXh&x>yZd;}-|x+9axdR|O# z(4*yO>Uq8;$knS?`LUB975G`}x0LVS4(`;-;bsMQF^g+C1U1{CdLx|PASz$Qlr2U1 z3#nTsBM_zgm+e%r2h){J6`{CTv*IZ?1TyJLEAD`&c*QJ;GuK&W4x8t~5l8O0 z1D9^eWLTh#Ign)`&YZ_l+3o-Z#OyUkSDfz(dF~8>d&hdk`E_tEo?^XzAv7*R?aSce zYTUI(ToDGPq3BdJ(-O~huSHijORjHKwJg&q3xx6@+z=xoa3`Yv;s);K2AwOB%7U?w ztd=B5bq?vNlMVFJjC8Vx=;RENa$}NwPw=BNwTJ?s%CR__Y6H^ z=O^p8j@54-W85&x;Or>HSyP?53CuYQ_J${OC!Bk zdvoQ^-$33B`m`w=$q+(%($>}n&u0!uC&|l-c7wt+DKFvqxPHDqY}hdVuSW*Lp+kqh zrDX5v1NT=sWd2EZ4cu>4bJvSRovFBX7o6Gzr#G@yYq^RQsCW_0zeupo!#yXASTEcO zZlMPw~39-|;=t;0-5^S7~66T519ppLo>`6<= zwq&xbP!{#ZVCrpm4MO#MPpLo_rkMVHod)QuCXES`kZ2gnb~boc4V z59=Bvs%0kz%1#bc=9m~}8_5bszy&+z$#U7V_3YE_aQ7W}xE+4JQ~vo{!!~OuG?8Yh z#n~!lmQs(vz0k<8z|f$?WI*viW#v$sS*&iXZiAU_^CVTv6#dqz1|5?P+9v4NjZ{|+ z(knADEE=F+Fi2T6Tz+-}ciu+!et_(DxTGVV=>Px_07*naROC(wd&>uI_@NIYq__6K zy-d-=(;W4uw`ok1*Y{O`em%Ig<7fKYYsCIb-7>GwQt;z|d(ZP|8F)UIXlG}amzS54 zl9H5^M07Fv^x(mRd|qEtNzf|$_wV1gZ{MChdv@>My>;u>wQJWB@CnTdyc<4zxG-R- zRH~jA^S211TRVcK|Dx8O=Q@{n%kW?|GBV=Vo%UZWs@;t@fx9qP+1S`!7!~F^m_cG>EHf}wPs<#sH zjw;vEY1NV?P_PhZg;Kbm2wL5Cn)6mbd(1bvLpkYG(%;Yo+{lyR5l(idr0prm3|lxAFW64 zZ@}-bhkKjQFWymK4}$8EqFjB*QHf6~@HTb#2S4{x^<9X>rSmBg_ObEr9GiQ#l;$OSLKIyu&b-m!f=6fY5cY1oIYWjF8LlY<2M#2sg9i^b zFfbserlzLkboA)am@|E;`Iv(sdd{bhR@zEX~9%uE^FEERXBi_h+) zo|%euP_Yt9mqAe+)#=Cm>DGD~{+L*rALV;aID0Y#5xCQ6$meiB;6gXH-sJ>49nnq) zZo4hF$%b8SDP1s=^Ph-3$AZTg@EZ%E<6*%hSUnwWBJ$i?L^S(m3$%JVEHj6t)7TZ$ zVa;sVYKeB)GW#8AXnYEtR%Lm(=lU}FzHFWkB1Tj^u>u-7!{qv7!sU~mG=?(CN4ncd z96ya&I01#3p{Vi9k}0rl4obCW3thP~H@3(H=Qu)+Efm;6i8Gx|&2oZ5H+;eoWqYHR zH9F_lGi~wIAyXHN>lSe>OQCZW5V+UJNyv*rC0(bAT9>n(>(S+{%*9PQry@|fKRy)< zjSHZ0G1o}$Uk+E6sETLc6GNq0!;Di0st>DGht={UN@q-ST#sk3EQa@&!n1XW1_o*ay${p>@nR9KYbW{Y^N98aPlCf;yTLx0!ulr#6YeC(VZ(+AtqmPIwCB0+ zUfaF%9enP>1S#pE_RB>78CnYq3m)s*`km1fzAnVJlZxQl;y)EWBBxunY_mxn-9F;C*@}g);847nlHrc*saVjA=Afe74B zdI5oNju*9DZ=BwLFC=cOyyWP-w7XFZzqSgP7~l+=U3Zu|#}*5q!J^o-Eh77p1sn zt=nM6HPBrX@SJnkKqFoxN|R^U$5U7Y&cL!?RNO^epqJ3H>v) zTtnekN%e0FckLG5#4YpYaDQ%ZH{1ya4<9}(tY8wPYk!^okA6FH^eKWjqmMsbz#qY! zmzP(MRywWz;=RA?T)2%t5}*q(C7^$4>|>v9zxjkJ5$|qpZrc6n(aKf8AGKc{gb`5~ z9kstpcp1_j-h`WX?AY;^MnitHxBW%s4p%GSvgY{yY3_px$)!xTaTlCg2UV+4`7$V9 zhRfpE6M>LSM6n;6>Mc6x4k^Bn8zCu<*2xP+>3%d9W0D6)H@5c1hkfuKci3nT@pB<+ z3JM&DY(_CQBf()f_>6++iLhY~`<|6(j}^1q3btD@tLMrVOp*DFL>@yS)D#v^W8Rrh zHTwY<(k2bUIsV*EdY~*%%o{;4u`CViDe=9SOm`;T4U#o6@`>)^J@(v^=}d$f1e-$0 z1U70K<@>7Xkl>&wbZ7IN*dk}P)D5n$W}hWUpY3NqKPdfZhpcV^R0l)bQhDbpNz*c@ zkAvE15kdT!h0wHwZCk;$uM{;brW-a@hl$R{LgzYB_j-J3ole67okDl03dA*G(6B(# z634X1L)#KI+fKCEh})=?Z8a2a8)Eq0AbHYglca@a2FHfzZ&gc{%Gkwf`7#6b zN~L16u57PbH&v~lZDd$vVq9)wcxI46!(fB<;Rao%1FnuWygpHVeX9J!IpX^ck|)0G zXVLKG8vOIa%vV|BuPUUUo#h@kiSD=Jy9BjuaQFGt=#xfb=y5ZCOlMi~cSttyCZ?T{ z=G#5^61e}*TLgDu5tG23?>*(OHsHv}!Rz8aToQB-*bS?^SEU*aL8D29||smz;7hP zOkvkp$cUWZwB*b}R70IDOzU!dZZ(aQsS1P25cc#!Xk7v4SHtD?vX+JN zLT4!V!l#1ShDcF!G;Uo)lLKd4i?$hy*DItObYX*@biD$0>TwBr(&PbL`83?@0v+Da z>;>)q&=CY(3!pm&U5>#Y$BFL8itai{uFX@NpCN6V%$%Q~=$NEiJ4vT{ipe2k)izz} z8XeJUmF`A;z3nR9{VLrgeRaNpVVTK*>OlkQ1{pOEHR>2{cwwZ$m2rkQCmOtOuJ^$# zo!ge8$F8E!0@$C$z*lRTFSf%k55Uh;;b}HJDQ6#_;hr{%p0=_Nv|KbqeLrc@@V()? zWRm#_?yo8TYPb{qDYKxzoL;NM*DBFvP1rjT@7Ho9=MvddTbYWrP_}|CS;FQmq(P7wK{(Y9 zA9CdmI1(Yx=10hiBE=^HXnJ>Yddw4!crm+OMXRmY(5cwj6y^`bvj%hXhHzFxIlJMk zt0@yWfr&K7u`|)4nGi9F@iPTiLiQoxJqn^Gv8(2a-?5VHb;JjpnWOGBrEsdo_*4W$ zm=nuzr>0#$;YJLnIYO!vBstNoTn{*KTjoH#IU8;Ye#5|L1QR+z8aYWEHX0U~!aFli zlA~_AJv2sfPj(vJS`Am1!nLLF{u;QyL+AE3@s%}jVI|S;_-quMj-*bQ(~*d%_~v-% zSi_uOBR#W#De*^iJ!&ivg-+oft&{HvgzuF;?AZ{yw6!$`8Y7u(OYU7`c7u%Dq=a{r z+!h7Ar-D5SCdmX<&E;C%nPv~v=mD+1&>jHiBj9`#Tv&i^#E5T3h(58Dd}OWao`pKh z;mTaY&Y1(sO{JNG!#{kX1X7mt8dRy-nEuIa$>*m=DrNUzgz^rUd{Y&6Z+i_^!0A|Vn2MIjK0Vb ze^w&?tWx}GE%&s6d)$hMioe%RY5ueco;9F<5!~;$`~>%2x_$2{f3@L0ZQ8V+7sJwf z`t8rBy=JwiU-ZkrU%3mN;g2pZF4|s~p68M5+WFu4ijYcPxaXz6`mHP91@1R08N&C= zNGQ}<*S&|rA$$5Z_N9NAUNp4?$)d$%?uFbgo=*)!ZCMz%w6Y@ z7e~mx&Wc+wmGu~dt%fmk2D3AVaQ35g>_>=3!67AuT zJ=$l>Zkh?pCgUhG6gZmk8iokpgG^bX;sZvaMdO$)vqY(`Iz?V^aXI(F8qxVk=m>}I zg>ZQ>+};ci-VA(iRfI6xY&`~Hw14}GkXS#6O82tOe9AJ$qpKdQikDbORmY2 zY4pJ4*zAP~-`j$rB@EgkpetP5=7Y~ogRAotopab$3uu}ru9+n+n7}2Q$o42?d*zA* zx$>B)1t1$R1crpSZA}d*fdRbH9mXe-np(yNdbiJJSDtSNzBA=r`NptKI0!1MFvs`14f! zvpnYKm7>oYxkv5zb{pJnqfCF+%>3)%{vC&ew;b+0TA`49@$~fk9^p=)#wSznZE?6b3zfmq~Ka5Xrfyy;(*)p~`7K&o% z{zrMC%<(|kL1!AFnCeZ9P=2=+?6KmuJ929++1RPb-xRqFL$-sFmBt)~v5vzzrx7BT z;bP}uBB!C8<6x1~5HV5f0b{9tUp$RjGaK))gakXPyZQVCiEec5(lL!CyF!W^PIaZ0 z;(~h3nc*$T9#S0eF;Hs!*mTim8jGaPL@y zE^m>yuTT{GL0N$0bQnwSxv+xkj2E{o#La~DF--SLnrQ6mYU!orI<$Cz9%St@!t!;Ql?9K5+kj^SP5^Wo4!9ZhrRc8BcRo;L*1A$W6aIX zd*1fMVc){%UQUk$?o_{5XjoqXx2nb6>C(zAP_|ZF8n06ni;JQmHyr1NiI4dp0{29B z$O>k2LM3TF+z}U9f`fAP9K3ic3Lgu8BY=oy_o2vjFm}1M2W#-1cO+NVvJEj%w-8Q6FlQF9wK1q^DV$r4FK*K5 zT%)K6fg&GV83c6;pnVzYUd3Em!(Ca&UERRGzm2)Njv9fh%8A7nzc&)7p4E&Lp*RQl-ABkh+D!9^ovMk7}m z8yopJNd75>Lh+W)ruKXXxD%AqV>xrZf~9qhbLM81s4H8UvmUbJrFlzKnNe(J1WFHN zQhY=iA+n4>XfF}Yi7Hpc-2&h8HWQ2%1s%s5jbcBiZ&BPjOTn! z=`iCt41!0(@+mqy=gX4qQT;-l_C>fQ49+iPFGS<3%ixnO-20o^b4#H%k~-YaEMU$? z94@YbYa7vxE%@ek=H_;EZ6kAe9lo#v+G0_m z9k**RylWsjY@*y}DBh*d?i;|In1ZXEpvDzyTsVq&7gX=cGir*SP6mqAL8K;tMH$Qt%kp>#edr*{`(fu z-`~N1e;59`i}~Xo^xOULbu#*89{aP?qGydF&34$|8{EGazW>PJPGs`;zF7zFV-YeC zkO~p+eViCQT0ZDIckb{h!+5_3k-FL({5Qj0d;OF!BkJJbAcQ#*WKWzpQTyw9v_fly zFETYX1+878{QUfS{&SQ&O&mt~j<1#C>t*Oh1)^@5O0G3ac`P0hquJDj$|HgJs6QNV zqf1YZdU8o#Y-W%oFI++sb@|ZrFFUQ!d$YxxrV+jq$;?EXu~FlwEimI2j%TCCqqvD^ zxj9-pli4tb-7=5cZYg=!7WO&Os2D2JHA%-3-PuHUak48)?u9$nz#UPz6QdP$)B%pz z!x19YZ7I_aTEjjo4c0ASpC#UB&Fr*cw$A64O@c^M>^B1Wj23$jXa6sIZyg`S)%O2i z=ZviH%dg+eJ%+Cod6;_cn$ zcg`-|d+#7E&+qx(_rvq_ysp>0CbP4%Gx_6vK69N*hB`n*OMXHdet2sp+y%m%Aj|=c zX(3DRD$MePt;5mYSg4DH>akEi0Ue2hh7>rR1IN>(WfRz<@lZS-mrO)eaa?r*+Ly*1 z$rj3EP+1JBh^2X|htinC8E_;Mj%LHDsc<|Oj%V}44kklgG;9r#&UIq)b<$a)bh^mQ zuwWNC$=>cJEexS>-_uW46aqy-P#VIP_d~^fp}0T0(_gjB1?E}8LK}XeJ9%M}zd4!T zm<0Qh)VqCfpR4>hwn>}-3ih5n?Q<>^*dXIeU(b+f$W zp|};w-;Lsbh~RFGfiFkE_Z05(`?1X3M0gy}KZwJ3Vu67EVJiDLi+_{@zf6I<)8O88 zxHA*Jod-9U!xx+2Mlt?x^trzvTlN1Y+)b4ohYlV3-~JQh$B#D`?|Qxd>eZ`8cSn_* zXL_Kl9<;(tUQfvPfoXntUT;_!Xe{zhD*!JyR199#m)58uWHhAp7mk@@)a!?l6{+y)*=%_Tu~S*>I(%S+y-yiqE`4dC%njBvc#QV8>oIQ zNdB51)C|>E^w3r~YIf-qyY-qHdz&g7%f0p%hg~cWJBue=t(%Uco7LAUXcNAVYv7}5xKIU`tMTP({^Kg?ldRDi^id7j z(i3O^<+EBc8O^-B!SfJro(A>&)K>ISm9nw%E?p}#q%XZ%NlaucT(}U-+THc))obI% zjceAdS+#1_vSrH%`pF4|u*UK-3!XFP&Ye4B#*FFHrza;TZ{EE5_dnWOn|{T-gObsk z5g#9a>Cz?h)22ZJ2#q9lI$3pei%X7r2K&SFh{3}?Bs%d`}TdhN&%Qv z1qcfZGkx&|o)e?5$pm-ubwLo4l9CAGja3SaUth9hiL0xt>8;54_~gMGUs>7S_}>Wk z(>vq`H_ErnlFc3^ndAw>+tbkX;jJYD++b*H7}^{XyTbbM76r+=4P)39M1TjdgtoJN z@YJ46t|ybzgIZn>Jf#Pp@5zya1iLeQV5T4Su+QiTf*{x#g6OsnZ1aP49hup7u*^<6 zUoV~A43_tjEDB_o_`+5{*xgaOw}tf{TcOliN8nCnyS?QRXUjv)gySySGw%8eo%A1c z7C-D{eWtDDhuyf_gVDVx_Fgpi!vu6|6nry|`zca#H;%a<2ltZTegYvo^W#K(FNS@T z%>0s$e>Gs8NO-!Pg74cC`3`)oocpAPxm5E6!IvwW=BYk2ZvA;> z37)6Q|4Mf2s}6U97-NHMFl#ku4mg$)0PPQ8#it=i3c}ks2XP@W1pty4U=yK{>YC7Ll0GxPuvuNZn_{j zEhs4HFSf28J9aF&rm@C=`G3jY-k!`lWUE%I!7OXZ_^H3Yzj?I#t2mwu_dl#@2GjH4 z-az|!Fb6hEw$0_2C%~d;cHVd)HAp_V6O8MDB0M1757v%X>`anv9uKegrEZfYfv_-u z*7%*}$IS3SGkd~}o-oIopX1HW^CO1l6SdwO7Wa8l*nMdzHiS_=Av=wC>`VAgdvq)_ zHexlv-B<{ode{xJeSr_mCFYF?*=HKCKGOqc^vfg^ePmhD_*+6U5-wuy+f$Wa(cDNQy5CBO;K~%aniK~o8HIcYB z0`|qgp~-M6mu<-7s}s=fNl-Wrc1M8G?OvZo1UsCV#vPx^o|wWM%f&~t{t5TP8E`C{ zIg!O3Os4MmnrOv4A!2?rCRNR4s+GAKfg9pDo5Eu7-Vg;eNAcWl&jCKaV7H?)% zYi^1K%+bo{T8a6NFw2WJt6Cq13VK0ZH|YU)`wDw)g^fj>gKfRN%>hTNBhFSwoHWN; zh^Ja>E_>-N`zWvWvO3*CdA=LI70wX2KZxOeia=kFA#i7YoW$RY!9=+~NX8Em**lTw z`?2uTM0gm7f0>MaNrU^@h%T{aqF*!7<4kyv1@{cTn(yYr?N#i}Et2cI`74#^(`ukr z15b7gW@ND;x`x_|Rrw1_7nqv)8TsPD|4*Ne%ne4FZ(?hcCEO+r zvdz1HydclWc##PcCYYYxobslWRP&b=G6oJD_*X9eKYY9h?#H*`rn#xlhdVj{)Gl_Tr$eQ(;X%OpH)|RbP6-(kIHDeuc~j zCO-X&!7^SIOAcT!<6&wqvPCw`F{-8EMTMbMw(khS+xo!P0KCDIo7bF85+Fq-&$JTLU0_ZC zvuvnh(-3KOsN|%tuD-c7fqSL3)dWNyEPzI+32ZpUAiq8rudYTZ98{eEiF+SSG)>|kzx z3il@UYM$A2`+pPM2|e@j^30Rz%?bXeKsOCj$y@@m?%lgLacG#A;v#r8!H%%csHu%* zDbXK2QT_blqATD5xmKW3Whj0ed}#=?aQo7Cqq&vJT&#&h9rAp1+e{lpfbVFyp(eyUJ%duX zMY{r_D3mGe2XsL-6zvFMwgsVg`>?A$xt!+wcnun>l8#fc@y@Vxpl1C@+ZEnW;V(Ph zLsxCDtFRGkZ7lZN+a7YXJ>qPAyt#ElE9>L#y3-vs7kp)343K@^Uva@ld8!k-+DHDw zIDB^!_wyu76#92#;Kzyh=O}zX7Cnroa3_NOr*ZJzNceFK^B|J>J&C)Q1P_wX<0Skz zfo$QIROWF8`yie9Er)%SgYV?S4|CzW6>xhq^Ft^zM{QgJ73c`1jR=sfH!nkqc zI(P1@*X!Yr>MK&I)Ya8>=+L33PoHl5*KAeuLA1Z=hcp_^^B&4PWz_Ug>I|1wQwN9c;r+XefY_1vL1*VF#SqCf~P4Q8t||&PCf((R*>QB@y;yLvaeTc^rOo z2)Cv`vm)3Ccl=r}me>+MW{w|i+%dNoA~vr#%(QM{qp6pO6Um1-{ z#vx*5QK)t@B5*&F4M%hS33npf3EB5ehJ8u6E`b&>IGk#L`$Q-h&b`y0%XNh)C5}>X zGhE=^UZ^mL*&W6g_J@)%C<*6w^<%e%GVcZRE4(BrF6;;`GeX6VQ{fbQSnj7>?k&!1 z4tqS*b*+SQYfY7nZm*p+k?k}{#>MJrOZ~~VHb>mWQ=P>Re7GBf`7egZuZD;xyWor7 z{CA_-yOU)1CvgPg-;YHRDg1gc1AclFIK-45b;|%;uCiTewJQcoK2shv0KHo0;w3NAC#a*l8KB+|?oB86OL*!?; zV*by7edCd5_B(wh^^Bq7O>XQjDr@tvJl&SsQR_2$U?SV|yF+d_ zl+}evXanO~g2CaAJ#8?N=ib)X*P8LOVSQ{EFDs(lp@S84&_jC*rh_F*C{N~qVNOhh zGr!cEt4UPvOM&`CZf}gFJ_!z_!+{L;Xcq02dN4&&8I5Q$nMAxlojI5VhclTYS@>8k zKAy)M&%sAB(E;+^B-)>^E}kx>9!SD_V`+u=lF>}jNN#Bl9IJ&$B{RJ_QSMOS55;}? z?fsyjFBJAi1^v*rAb772UfzvKaYSR(Y_yWiwG4*c$R`eHkw%u-Wr zWwF=BYM;H;K_~qoSIfh#EKanyZs;JM?xsHP$6N`ATcc#3hl}St@%bL`^)T+I@v^%U zxSz&iY7_9C2)Gjo52DcHSRi&clKFNN`{f|?^>DZ!%|47}3HKkxkWVq$-i?Bvqu_2V zcQ+pHC*ema+~YLvUON1kN7Gqvui`#`2X5}-zO0a5tu`#Q*8WS~;1{>qd*0%zIrRUx z!rjEvXVxxnG?S=LC*qrrCRseDgGNWWiR?|bMyfVGMQZaUP1C}oc}-yB!57?5lkOiT zF>d+_Ibyz~X*zCnmAs%iiTU}a|A~26rzx<dT zPVV?t{?s<{%r@oet#E!jK1;jt@g*~1D}j5etRRgm&x7i0rZ5^dj>K;ahSg!z^G<_X z0`TGhw6HfKLYqb_`ZBY7GDK)k_k(g+5ay4(N*{6G;Y2ATXUKb!_PwmJ?w}Mg55axva?KuMOu9o0o0bZ8a+luwFV!G>5 zXC1V&g4R0JO2f9Xly=fH-qtX{9*wer+3j&`!27qd20z_ouBH01FO zxpE@OYl$RJXO8A^NAl324ECRV&!NiwP#W5wOyN$fK90uD?~P_EC!#&0p=>PkZn!$b ziHp@q=eA+q?+v>G@a{0_j{ZRSUN{g_zK6n&AZ~4UKG%_r7G*i2WVwyy21nI<&Wd#w z%1w6q9ZnY8wVF~3O_koF*2;3Pt>pnn%l)nvhupNsI$59hv^eV}d>Fu92!*f4@HYl2 zKJ>w7y1^F%nIA?;?u_Gp91TB?K|h<|J_$dJhKDh5FN*zcwB+*v=*z)iaL}`Njp&a? zk0Rmc@zm}`V1oENG3ZV_b3d88pT^$Jggg0gXEuDf9KPNNw+h*7<bZP3 zccwoN?oXWfHHg^%R=As>)1)oj^F;KYUhSF3P3xlOzhz>pNtK&s5%c4XW5jupbGo%q~)`1C4i*%T-zI+ z3~)E{{g0JZ>X}*En_1+CY51czJF_P{tp_54eQGzD(Urg*r*@J?wvi5XWx|>7IwJdnuloeVXx zP#eqDCZM_$*f$v+PN(=jnM)It8m7R>Y3Sq(?qojw(+~uSj%Kn)GPr}OnD+EY!u9d6 zpNRKZrg|c-7>BAR(49Twlq<+fhCM8Fmu>E)+TIuM41t0WcIQC0pg*%S3~%d)H}_%I zbmymA!(40iO1-ewM)$Uz{`@Xlv}O>g}!eH?!E+N?YGv zam+_J?JqeOByH%0Pxod%8!EXqlD!-Vr@Bb4_QSV^@!yZ*zaPsG`*}S7^LX~BaX=7% zpYT13dl1Rrn<)Jv94-gIH$#+n$4T!+u;in=kyPe?GZKG00^J!Wxi^8kODI1H9>l`K z1h_vL(FE5t?uUH#_FVks8up9r{EbrXY6V=Xpm4uXO&dHB(0@=3A6DZFwX~Snh2&Yim8Z{ zywjIi-i2M-k$a;j_kJ+i6^4t#*@A(HD))hSXE@p%g4TI*Gp%8Pm13oZdX=TH)>2rn zQ@<&yHmJqTg8p5>W~a`&KxT63_w5*B_}kHl@cqs>hQR&D3GnkId@qWjs(d_4;C`t$d=;+vc`QfN z{m&DqivMvuL&$!6D11Mh`F<4oVKm&OL6bm(CNtpIEc|OO`zVk7aVp%J54YCBt!?ZV z#SD?~hD;?)o$rRcr;ls##cJl`KkMA|H{Aaoe~%Z8XOsQE0Qb||(dn(s>22((UCePR z+kujOmGoRbUpJYr%urY4O7>(!RSvU%n!GF>wnngT4Wki_tNR(q-q)CvL^G0z^d|a! zaUh=WPu((E9U#>mVq2jEcfw`rrCAsNtNLRyH@rC%-Wb5H>rVsT$wgL#Q2B3+mRZ&d z78`@yz0qt>JktYD?*`MlLUuPu>Hy>2aJVyFLG>hN$MmpaJ6cos`V*iV%-vva8pch7 zT57;Wi`{h4OMo;BX0xMM)J$IP!JU|>+8YbyNzCqerX&{aiAB|Mv?Ir{Tzq;OduAp+ zI~$*!%buIZk^NKC@v&TVC=(8(89Hbu6XlNTC(|B#b@4?0Bid4R0@Oy*@Eh_rP(G30 zHbAn@2d(M>Z~4L2zG&9~R6G!N4~F8QXx9*UFAU!7$;`8b*Yxr=dT}-3yGHT4s8}be z-WGM6MEyI0%@)CSyT*FAl}&}URlT$I@s8FFJ%kg!k~5+FhhfsQ!Ls8%>}h{=br5^C zKYO|-Tnd5D2I1SInA@Z9*CP>8;syy%D39(;WQaT`ye4q}Y9M^l8@>pZ|2PWY8B0TG z?u?aD~%)99Pa>eot*Zb4*yhgac zPD`-^ZLexDqYr&?07Y|tCpMuCCU8&bfbu+O($mrqX3aom-4J*)oLL`+*7h})Zb!6p zo}peCf%{TFSmXl>dZKw=Xr>1k;EuAoGx6>5$d*j7BY0XtH)1wSS1Yca6|}X6)_Mx` zR+hw&(OQbQm6gQFiftx>rwXF9{0hCS$WBr2DBI%>`v>xSqnYx_s3ZxMCva6UOcl}K zDTc6_sT`HUuxBDI8(ABT z_r=o2d-aJ-Rit#=KxVx!yx{|z17UlAC=Q2`K~Ovlb`6L32f$n2c%cofv{bFP(h|O} z(kNGoiq(Q@ouGM3t>37&-lVd6Ut_h?LSJa9t!kz_*2VIaud<;RIvv7%5YC?uQylKe z9qIuW!`N$sxpTeY<6yWx5Z@fZ+#G>!4Z~lJK;Mp{{u#ph@5kdi5$Mi%8YgpmFmu%( zKI$&W*FQa1P>zlN74K*iCkkE*O`me{qOPjFb%?V{O5i3 z{sP=j6f(yO&{0EKvD5Fu*%i!*40i7b{BCDh*%o#VQC22PsG1=YusXe*bz1Y`+*_Hjc^?hMo zsL{~c5ZZ`ibst#iZ-hH~%?B^^#`8VVoE~U;H%#E3(~XO5ON&tUvB%x@(8&@y=}|{Z z*4+vbbJK&H9=EhaEi9n9C3dwyZd$gP4R33U+h|~vC|hD7ZnIMEvEyr7sj50~RRM4? zT3VR^rHN3Tz|>5l4VdbZ(V+|)71J;kPEChXvw`sa%p8MrW+rnipE;a~hYpgqIR<=yr)$aJE{(J z7Ek*tP6a_jFgn{Gf6!lk*jv803qBVlxi(04Arvl#z^CE(#!&plFy`~2_{$+gzvFMm zu(yW8*CW9g{Qkpe{LK*dS|GX}AiX^p{VZ4S?^4qI+Zc-xB%Xleoqd zzA=UUJ(c|}4gZpg9;L#=RQNRwH)gQEr!$X?Q8WwDS8KRWOK5A>%eClYHTA+@siY-k zXk~(Dk@^J@HGjkX@A3CA4hr`p?<3Q)>hs9{r*J=301XAqxt+2Px5z(yU3NN8RyBxy zuLCT1lFYGzg>9j5oU}euR-3_e2NSfrQjcH*l$Dr>sQ_jtj+MC8yr(t4Mskk%&6-Ll@9|Z1oF>oLW(eTO?=17{lE=Jfj zn14SQZ3)4OYh+Zd)1qUv#rB1&7gZ*>^fEOg|AzbD&nOOl)Cq zw4fI@+QOd9;-1VRFTBu`!hJ4vyR%cfp_EQAz7?(e=wpXF>Yb-bucvGgBSH*GJ2$l9{pus7Yii zVxiiwtV(qE!895kb0UxEcYJypwUg7(v3zte7xraBT?R2+l@8Szs5*lwo6HnOLP-R! zjK&1+`xA|DM@KTa!zoLuTqg)`YPIVG4cTtAR&95Y)O*WM^p%_rk(>&F)1ipKy|$xl ze;4jtAO4g6{KZiGaXcfB9_ER4N5 zfcbm?x*i6fg~K<)m^Pu_I?Dlhtc>!40Ask8#A6BC!pVwP-8Ol zYZ`k$gZUu~-<%7#-sHb1kzK9gu2f?Jcj|e6Vda@WEjjQv-2Wc`m&d=r-MEfwg!s$C z{nA$M;s*YM*Z5QEux}Xb@#QwR)V!v#$X25%7TR<{KE)2!`$BoNxO*~`Pl57u+13cU zD7vOUw2*_M_JfjiOcgzQGRH`6ihDx%r>L<_|tt$L${X1krX&{-^X(-gGFMeclQ zJ85wbsGp#yoXi%)LTNHz5sRy0pf(Qb6VbuRlyAr_$h=hN*Bg9|+v*vte&G z-kZ%_t=Cw-Wnul6 zUbE4jFYhKj6ev9#DnA(v4MA|kM^@cVR^1kkd!x%?k_#c|LMRZvUkQgR{Snz-8wfXs z0MYMchk*X`L73QQ;pj>zTgKXsr94Y5q${OaqBL70$+Kl&_f?fdDa$jUI)~pC$7~pZ)`Zh2^>zJV zeP3#8LST7sX0f+oo`+;cXPDC+Ui0CW^yITT;jAu9R(B@Hi=E=b=lgQ`eoVd(p6W}E zpmYzI+yy0c#IbF0Tx%}QosV~e^bTBpSLw{|k~tpSY)_uRJ-;g?bzsJ{K*5fg}BXDx4WfK)=gRA zDcjwVuk51Q*$J11$!nri74fJd0ZM6DB(8{|jIN1c2;vWCzzN!P3C>JshZq79o8@LnSS6KTE4Ba@kf@n~-pR84@=5mdJC zp>RhPqq*%NiaCyuuT{?w)UyO(o*)=}GRjqI|lZ=>I8ZS|gB zwZ~ny&yzpu!=DS0pAM89^5W|{s!Ch&HSOShkmAD-$w#5=hoSIMU-WT*mRdM`IuKnS z!d@8&#I6qpBIiHpi#`oyuLMi31j;`R!JiMHj`({M`TG<3yW`oP$I(#8A4lPz#vp^i zow4xq1h_j9-JgUB<%y_&GzmS9f=4mvVH`m``XLo?z>NR^5CBO;K~#~soyFdm&t83# z`@B$gqe}WoEqq*O3XegbRKS%oAlr*o@L_FJzW){FexX`r4)@;;+yBO4-m|UIEcMZp zd)fG`#QIlsm?sl8J|~l?Npk-yG0bzso|%;U3XPYC`*t|74H~vFCwDRpyWms-oZrG; zcvtb^bV=P>ExnSBGZkbW=oeibj>Kk);XzWD#XL($&tA7*%yHTb9Oe zjbPUixQF1k!enoTN>&HJVlSB45pvt0%r-cqEscZB?F>^o)8O>1E-0%zqLtshsAYNK zOiz^F9Vc~$=#DV49gJxW!&}nY@k3l`>gmLmDBhh(ZHMzZv(vh9Q@i5aju77#M!78*E7=6SV!oAnold=0RISr#-m|qRYN6fT ziNd|StFo+vaz`6xdrw?DNvulXDkj68SX35+%V?lFQyonKeJG9AfIK-3jBc3|Q;-qv z`*VqMH_CPj_sTR}5(|5xaCtN)aIc9)HL*}1Pc{3YM06+t?~g_G(NH^4Qazrj982I1 z9s4qV5D;)CB?`a|1(+ZCJ$vy~?oeO5p1_9yw$NjmF`eM36Xg-j; z+#iS$IRF7c{=R>?A9Fc``y@zuDM0pdZ0w^^i|mj&%vAfu{G9*9t^L=B z`4hdu%{pEd?hV^%veL=z*jOg)%ronLZB=7 zJ45eg5M&Ge>|ux_jB|yA)@)`cNmeH|y*-L?qulRnkG*Y}_LktLqi}DjV+q;yBG`yv zXTe%&p}7ddL|CYit+W$1+KBJ!RBwvvbz0pfTg!r$y0R|1G7m{rS9MV<`TNe?8_l6= zgjky>tw@2ASX2^C1^Avx4AJ0q@#tVGK9UIyQ)#Ly*&fe>!?|FDdwmXLBzsK`u1aTi z#~~BkiB&~IT`cU2g9Gt!Fad~oKN!y(jFaq-;c6qGY9f@4#oPMHr#FKPjWk;&&r`@} ztJTZ2+O-zi_w22AI$3YA7T&d0Z*fpIP;miciE5$w!&h9uQ*h6Ay0hr##5;0fOii2r#UB6e>)JRA>? zC&HshcpO7Z*8CQYAI9My65)0hd^;b1v!4HY2me*M^s@?}A@H@xP)ibB`Lj?NQ}>T1 zJwX0n!`-|%N#h?m`o<%se0NjX#s9Wn{hu+K^x0Tv>hdJ`TwrmFj+*?@S<~pXi7VHJE({OegiJclebdYJo zZ?%?hv1JMzWCix>%~ryC3*imDa!WH+c?a$8uF^dn)!UoNH(N_r>Y*rDS(~UVO@-a@ zOmQ?Wj6lT`X#L*mSY(Kt0V3EN@~Kaz3ET_`aVY zo>&4hB7U!-j(ph!c3Zf7x-+DTY^G9{E0+<1wd zqTi0i-2{pdT zulY?zlSWA9rOg`uwPe^UBz}!AAI5#M^9tSh)8nP#esm|TA#-9IoZE&zdYAifsp4p? ztUQpZ>L#i5;LE$q-fty&O^4?TiusnB**fJCoy8)(Zn{pDrj{lN@_4l@R>j3Bm^eKw z^-&g#7YoMYcZR^*{qeeB8l1k;2d(JM&-P(cx}&I0?8r83e-{XIhOp*nU<*9d4GndN zK`o%4D+IeTL9PgfpH4&dj2{Op069ogY~*|Pz5IM@z{IiR7=?3kAP1b4~k z7R(SAHq=StYsYoeKY=@Sud9%wmgskxv%qziLxd%_%0aQ)n&0gTrEZcvt;Jm}wC^~m z-?ZU3+jB+Dr6nB|1#U_rir=zSF4w}QZd_%Isw4%u<2h$m2 zvEPP#mKGt%Lx=KUUmn!w7_e>-??t7mLzX;w~q}E@ydt7v*tZ@l=5FWB_+Mh(8-5Jr~5C2}A_+ABIX# z2e7AlaUTS#J_^>H@s%I*U@iso*9Y)7hjL#Gh8qLn=3snl2y=4?d^rexF^C37elvuK zcT5ofgz_T|zW7macNFEjQNRBZfgVH|B5ER;hf(a~1onO!{yyK(bbAAQxeeVY<*(N8 zmufIgTdhK5=f!aU_xs#Um8Y8cC`>09KWb8->eU@hu>Q=#jjyQSZT#0JA+PQ-$xFli zSRowSLE--4PWGb>+~F)J4TX}f=#aOt*Gt^hQMuNUU!al9)ukfkc43CL z#(kSZfHU|tqr#lXb85}N-wE}0#JwFDPkUNIz}JpeiRtIS^moLAoY*1Fxc*Mm$dM3R z9B4x&e5eBsYsU3;W`dpg-VPEkTdsqlzyN`}qXs#t7%L0TM#prN!&n(wYNIS}uBmrX z?CrwUc&MtnYpXk3Rm(~$!k&pr0{8MXwloPB z$AB?ty)2qm{XLM%(t40Nv=h_ODfmbp9GrqE+;f3CWDIbx&S3W>GDf)XiG=b-sDQZ_?SFA&6~D)sAX#Rje7eOuM8WXamdrMx*bvas+|ssGI!;{9-0%qg=4+= z27mr+u;NURlz{$RkmP)@tig{z?!%uAP=638Huy-7da_sgDz1e~uMfmm2f+1k_+k+I zf0fB3fkOXH>Cetai1?4q9cv)l3c zja+>u6b8fY9?StBWtE4p!BsI&!_E@r^K~M1$O!5s7UDcXHB+sgp%JI*gj}sEO_V38 zWHCx*tWpvuK#DC)ZOzW{l+X5-P4U2azU=fq+>8)uR&QxUXLe9)CZrYHy9IbVftM5V za>B&C9kHJS4zNRk_Rz-~f^A`dBaCq7#<*}3T)2s@Y-Dq8oC}O`#UorO?g`m_te~f% zp^}%ap}CSZ+eOc|Gr+yMC55}AD6u9gUW6ecEV7pGbQLRF3-uj@1Kkz1J=Ikn;(^W< zhq_o-b+#;Ot1WD<+3F~6vQw|otCs213$@buj!-yOUYrVL>8LaX8!=rn2}&cODjwG* z;{$2PvBk^g=(W|8^3?To$SQm zx+q)|$?h2|*&HOzv4LcjBu^=uEeZ=&!ZM|LogloWRc^MHledi$YULKj!W?k-PvC~0WQlXh(;hu~)c8udDgMeZ&T8b*2+F&6@7|_Oo5p_?zpvIHcizy@;Ogo+YSgI4 zS9$gOrQv?~eK=jn61bmuAI`rgIX;i68UvNVlEb|fC7tD~Z1_2%VxhHufu+TKwXjs9 zTcA}evDD4eXs5|l`6^|Opv(|dsiG!HD@hbpaY{{;Tp6KaBCR0S6%yLui1sk4BP8~K zgdWVuHmF|<2%--q8};TR?jqbg*E^wvCpCLblK|1n#b)%teEIEg;WX zwX3~#SvzrOYi?&pNqt9YRaaGc2YFp9**-T_X&x7%w%PK9PO=h5VTWE>?5L=1$DQ!yJ_?n7 z++TSvNP4ITB5x=AyXvaj>32D)3!14a+6wjEWCy+YW4)ve0SbcnqkbI0dP6UP$o&1? z_Tog^Pj8OChpP!q`vyqpRVB>D=}H_*xiT?+-V^5rO+xL-|`nn9m2m z=Y!y@;f!gm^}FHl{YdJCzdH)u9}WK)gMOL7+>0L)|bANw-Q^z|3cXQIcqSP}V=7r9Uiwap; zSz4`@VHhLa8_oJ%yjss29v*IN)t!`-)Fk5b)f!C-hdrz6z`wTUI9dQFcc3%d@agR| z4)W}K{E4|-?Ifu04LdsUORd?t0=GybE)i@N2%1Hf{34xho>rKxQO(k*rfY?Kt&k(A zvsCJ2L6xLd$Ej73qH>IyAF6@j_Ut$}*|0WfP+J(-5e@Ci4eh}6YXN41D~AjBFCcS7TwA={13a+f8y;36H-csm&D027+Qq?S0z6_VVT#CFn2t+}Dj zxVH^$mDkn^x3YpxT4<+ZU3HARo^#P+Cu_c$z_nEI;Yyfg4O`mtWj!p)+FNdSR=sJ@ zzw4}gubFb2tGcL_uBes8`_95!Hj33cez{gn)BP>fbJUWVf^3!@yKAIaMl+I7c{(C+ zFNrfa&?iyvd5xi<*uE4vlwoM5nvaf5hXd1K?^M`F5T6HiIk+a1Bi|~DgUYBT>c}U2-xtg5jb#bkYa*E4BiS8;g;k!aOg*Ft>?}b&Po-WaYSvq5-?S1o*eJI( zQ|)%wmA16pY9ra{peSypEwESbago=x=Z|_aXZkP%?jM9mPWdy3J@MYolKL(d#q%9z8J)RF^DBv{)>T_fd1xS{MBIidI;Peif;`?Wc%F+ z=EqU&4cvACFl^4DtE zPbz3d_z&xuCS95S$#(OpY<){?X_&#($w49+uPf8dw*q(p~aG~ACFd@`pD0W&9P zqg3|%YWc~0X-xCjWAVI<%uc^ceRir zDwEX81VJ4wswRlCQ5t5HH6G{0k88`0Xp0Ho!`eV!cL-^T0-JOGuDrL4gks$edRs%N z6^yipI5#f6y(HCLk>JWj*aIQ^L?>pFGm3PD*j7xYJ5F!MrnKi{+wfyrF#Q}+PaEiD zja%D52Q9SLG0k*Tvpb03s6#Ck5TJ%M8*Y=Eytt!khr99}Mky$dmBPIu1DB@Y-3izb6G;JG6@@C} zp?)$Va6g&@1n$SC;e!UUo8VrZ!O{u@F%<4aF;E;uzgsp5$|Im^64CF-$oJYPTAr+8 z9IY+$UO&ac4qTcR(v^}Kf@+?iqN}Mo%{nXf20PVOXLX6YuB5qci>+k4y<(T6xXVE( zaZy&cksR`18~oT0Llqx}%0CK`pXx0=*iC9kWm4{Lt}S+zm$#PHb&=F}XAk>Hjt3|X zc(Vt+C5L^){T{lSPQu_4CF3`;>&$mYN5mlAtk_YfPt2 zS?}b*H}m1EHR!AN*e~~R*UFhoRWy>!-uX zpT79>x{R7SF8%paJ^$k7K6g{MZj3Q`Wih|9DH8OVqsf}{(>vyC)PFjf{4>p?cN)!J zts4Jz5!m#v$j!|)wIC;B&YU@>cHyR!G~>SMp_)u2<~|(rkNzXt|E1x6qQDsH&KUjg zr*`5C?Ro72IJ=ZYF)vqf>bDC7&OT(vq&P-P2Z zsz#A4C@9}WAy%u3&`2lfxbc>Fyc3LWj)%0ueOp0r3t~9Hh4FR5p)O3gGYoYCqSljI zOLN+*v)b^ftsuggA7ck2^%U;$%_WH~IU?9o+j9Bs_}mVBMtgR0TQ!D|8wn+ZPDx`J#HJN;*?emD*d0N?TQP}> zcfxmK)svX&2-q_UiiUA-2gs(mqEt0Q-h^g~N^&#HG{Wmzk-+^ed({>f^)5HfPFL|g zd)XFyWr35nsF}rXSE0;Jvahq`u$Sy~Z{_(Q#l^nL4}+B_e3S>fs;k;6N?U4ow@{Y1 zR#bP8*L2|z_Ea40r8>}4deB>TsHdi`i>AD-ytb44NKfUN0P=O!2LTcT+}TV0_)DRZ z3qkCKAOd%MbpS*7PW1by{oz`FFz}s*&=~FWLDWn0#b8Q#!gpdn7`ply>cUg|c_J0> zk7Mz#38*nyLhK(2%!6e3F%!O<0pBlz+nc#t1(MIoC6}vd6`E_c=tecVUjB^6*-!L) z4gQ}7_a+gOO`>Z|F_cZTHrXcx`HQe}MH7Sm%W>#U;z^8t3=`a6>N=)<^S6yA zkNl@oQIig+=5GTgd2V98`Qw}438A@ZmLg;R{P|D+(9{3J#;4u@n)LtsPkE(Y8t#VL z0~GEJ1 zsMQ4SM7d{+>I|(SMU*ECsuYbdSu4bg@)&`SR7Z03&RHz4q0!u!su zP4@El?bSP+EJ~VNQDN>Psca*yr|O$9T}ov8xd6pEfAOTR?qFB3w1r@RyQ->#s;Z;3 zuB-fjm+F9*g4jVXZA~XlX=`~+N7*qS_1QiuqTJ8*k)02eTnyna^_5->k$=#K|0s~T z6v}-%kozPIU+xE2!hrDodbpAA=*9p{?Aibzc6|_hIRw5MhQAs{Gg^(!n|>S%1o1?| z6SzN$p;g8R)_;q`|A(df%el+7=t>>BS_9WB!O+yH zDcnD)MNQ!T`)~hwxIa&jK9dDTS{WBDU;K6BcwUT(IqRF??`4N^HZtCZY3Z1ZfddDc zZooXT>zSj8xHdo7#9i}J$)ZnB1}5i>c^H0^J6y74iD{XHAb#%Lx#m|heZ}}_O#*3* zFH%h=65}v_@!y~9`qFSeS%8g2#7^#Fj};&y-cRm;)7#+O2IkCk=EQL3Xm8m8KXrLe z<@WZn%`S?S*5VQi^*n(Vw3@0`O%=sFL7>a3qC7)Xq>HL_QAiQhM8YSkWyB&i{5TCe zLeCDh#l!4jv=c#W}F zpm)^~uGgsF)TuVxs&}{uB`w5vnkhEeO5d>)wmVX|m$c9pIPt}<((*Ry z+D@waF4FqW=!hr(K_C6O-d0CEG!^dZlIF6Kma_7;%JL5KijMN?uCjeS6#G4u`+I1s zJBkGEb)8kmeT6grDl##g^_QOylztQ1a5Ks9|;Z9q&viD*QjrwANz`ZenA$)(FfPR^bzRQH$ z)8Xa{^x6B|r)7li%wi-b9lksA>H|cZTXr^0DYMp%aQWHRvVg4#W_L~$-d0rIb zUmWH)MlNNH_%tG(Jb0s-*XXa@s_BtUowdy!8h`QiqRE1``M$Z6-IzRVy7NY}|GU_jqqHzeM^$-3Ye{-XnC^iV`JiP!u($`z>Hv9d z*t`z%sa^5x?%b@7%(T`py$zbtjw4u4Z3P7PnQhthc5HHMCZQ!W$(0@M$n>+vy(~FT z3)J2kT3bR(5j$&8Hvw{-bQ|nctMu~MH1egQdZ|uaY%46cQ?Ij8EY(Q~-&a_wR_cZ2 zdi85h;I3Y%66UMLIVu%_`%IOXt!5T?fs#1BG?l`=JOh`eq1}_AIF67S6-Hv}e2>M| zNqBD>b0C{JGKC>zCw3?w?>7{QtRs>?nUjvFTr7)R#T|~4?aib`E!7om#p?D#nH#&egX~N%>(hQV1n&Dg z5xy&mTk<9Dvht2XWhZ4-7kPbmCADsvs`i?)Hj2Gn)c+rI=K&qXk@frPFf*Ow%qZs^ z5E2Lp2_b?&WRY{uIT|q8U`!6iHo;(W5XutD0g;ml1{(|*Fb+8GK6}^M>-Adi_O$7* zJ=oa$J-l!0)albR(^DO!`Q3lrx^?S9x^$_POZc~JcdRWvFTEpJV~+*91z(YiJbtxLmR%;dC1Ia&}ao1&$$XlWy2 zL9BIJBso3|pA?EujvyyS;^RWGF~RuIK%%!F(a{r2x0B5ssFA0Z3^GI{eO0^>k7oM{ z+r5N!b}d=%Do$J@D{H*fbzb62b{=H=20Oda!9VYiHri#t`dUeZx{A|g3_T}s%Xt>y zK3}k|j6)^ksWMlnJHQ>bCDTyh1Z{vce-u$P8XXyjRZP|vU8roQQRz&h=lRVEQJ5D!~Pd5{fHY9K(5JAx& zOBBzy6kl!0T}Y#$UTMo-YtOxw!CY>`!1nbH^z}~E>m96D+mo+nT5fiGvBY=Ntlv(?znYBx&m8p0dg8-_)Vmd~T){QSsK1Db{4ayMUfi6& zM)rbVbyGB$aQ{b$Y;N2wW2KSh=Kn=bnz3d0WS|TlJlHJTAA@hb7+wzjF!Qiy!!IT9 zW7^Rhf$zF`a*RloNB!WBKEs_mcNz|Nnx^;c+2hvB`PJcHw+l8tGVbXA@j3sm%fAix z3x{zn{Xjmtl#jGUu@94%b1mm{@GIHu>)GheUUcIb>U1ysL~C@im8B-xT9zmm#EQED zwZX}iBCVlN;GsSv3X25sY5r%pPnX3hvM^cVXYdqA_(_5|mJ^2a;vh-vrE*S@{D8EtNlHfNA8v?A6gqvztWC9&l6aAIU28WMz!3_zoT(TE^4 zJOB;%M}z&y9^QC6Cu(6Q5}hc<1BKgButa)$SR;5e&4+#2!LD=i%Vp^~T3F8V&pM>l zUdl^OyXJ~fHNmdM|Hu*m9k33veHG8GmSliC)Mo{GfoNOR2=Gm7LGA$e*~ox<-dGph zM`>^`pGZ_q)kONq`9O9;_spDGfC1c(&n4=#33`gp;Yg%set=LEAk@a%k2RK0HIOtSqn!S>Yz^y$;+gU#53JmQ`5|1P-ep@EMH zg*5ATU}Z%`Mc1xfLqb9*iqcgu6h%?O!or3RAAarHwT55n@yGjcw{6?jqD2c&Pfwf8 zX2dBYMS7%pS-%n)sHu6H*ek?F=9k;aImVX`UOB!R;$&^%PT!Sed*Gr#+92jK5P>b5{##9 z9#Dm^>qZOSaXOvmKbA3`{QB#!j~h1*{$%iHGAtZCa9>~FnopY*c7?d3?cDFm%> zpp_!KK(Wl1xTi&Ft|-kG7-0GgPMFEr^$?l~B0FB>#|hjhksT~C{bgGZPr8$W`ud^; zY4nbM{DFSt&dz9CJN$)KmJQAE6$!+g7;;1y(KDFr6i9aPCVF_IKE7Hkd_OLypcrVFbrh-k%3zHV{UhBPiJODB0b3)8ztcrMeA&VUMvgiM1F(By<``*Ic4Dc z%PP0qo6QatiW_UqdrEd zZKP-!2vQtpTRV=XQbn<-q6t;qRH{wjs}tnX7``N01O1s6{ORW6sYK~`5`JEj@IZO% zrB>Xv4E|aM`+9rkN^9!1HneNFm3kvnt2a7oVV5`CQ8(LL-|9rX-Hp88op6QIV6gvw z7Wr;B^dL*)yK9OQ=E_n)>ggl_@!t+1zaK_^HKAD5w z-;CZbv*;_YYW|s{mb;Zui97nbtXf_guA$*8?Puv)rbF94QMl{nSCxBUVBn+L&5Wwj z($XePnjlj#gHqoIPIcdu=V%%U$kgZgUMU<=oSi? zJ+KglyWF@_9oYuB;dF4#4Zrkv!4?dO4s-+S<~!1hF%8Z5F8mE)MvgL`v{bD|TAy?D#clXfupX06!B&$+TVJx}F5AE}_?)0bj#@Y(o3&maK zoz0lFe%5F0mPH~pkK>-^#kmsuluXT(m|2oMlV>&ME@~n0Pyz8HBzmYs^_8g}0^Zx9 z&0<}iVcpopvNqGQtQ9do34b~spBYPx4JUd9piDn3!v}BUfpzmny?jw0Kh(zu_3}nt zy|H#4cuPBK=0J@U6zPeDNLa8yIAs*bqJa)>g9i(6Uo5f91bHc|E@Xry9QT|gX($)u z)x5NV(?(EXe~lom=7hDPeHG7uieJI0i)n5i$1Dp$g(IvLGx3_aT1J8Lr%>rMtY{(* zST7t46)V!>qLQ`BeIKKtEaA)weX~^4r!YzZnJYB*bfA91=03H z!NNX&ZjTSQ2N3VWWCyT0LF}O*CO3qsj(1i@%O$~Fd5BOI!Pi7{B_UK^0AAf#Jf5P~ zrwZi>mZ}7{yb)g+&w`fM;eIrcJDn<>XeQLhaYvhwXHvDmo6|`YApUY|_DX9;!#W_o z9rs42Hp&WQf4#j;uh%oIAms0KvE9qE-pkS)@lfw|CEo6W-|wuc_zzsOoIZIN0{?TO zu>trO1BtJO5Z??VzR@$nk0!qzk9|8{%LxC?Sj%4~qxYAg_g}&89l>>=->yYBE76@Q zLdX5D!~IYAt^Gl`n_)L~>Qp0?(2N+Ml9`hF4oFClgTFb`R@VjD2gjMzDPfheH z?X7NaO1$7ptx~APEVF>)=ZWkb3E-~f6q_XoGezD1E=?DusUkl?X2!_$D1jR$vI8aC z5N~{93_df(Iyr?L+5`=Z#Ro=V{UeATA!Iv0)XE#R^1@qt5M8`bmJ92>y-{~Blgshl~YDsJExIHQ2Gv&Mjf7`8>Z+kQZ~xLSC9LE6aEZ>T*t6 z&WO*k8sb5}ui%AMg8D4SJi`jhIQv41pU2QkgApkA>RGrpBk5^WF$=leGFa{y%`*dh zFP?x(Cu5boXsuukSSs@!IWxWz7RQ-$pw%r0O0 zUE{S4GqUdAIWpY9`yUA zR+|6)N?ZDBJNjBC1@&rsn_gdQYq{Qmeya=pR#)3wU5MMAao6~&R)O;GbtfP6Bp>v` zK5)%-GUcMd|JGm2Mf2rg*P?yHv2TZ1zZv0LsdXg&?Qrt5k?7;8=;I~W+xv(ICARyu z8e4P|Y8_ zQ@DmUZQ5jJX2LC)X$T#esyLF?`p^DWD=tlzREN&00Q zbcSPeBAYuF#y)(-%^1KIBtO`X;NW0r&8+411E2$BcB9XmH?LKzRy}+6gbUX10*--` zwrtrFx)*KRwr$a(Mep9djpJeK?d`4Kg4vM3^@Ev#zcr|J^hkjR@&_O6lPXUR?%C){ zk@Z|YelZ8#JwV=FZadq9sEi}aqDbIEQByj%B`WQOj*g^i`qFu=$^B8<{LeKaw~QAS zOZ?LkJ4(iVmRlx9TU3t-mr<|-_gC;h(c-0A z0#u^Cm$cSj-sBM0^6Wg8nk_JkL}i(v0^b)3>LOlU!b-~+=~-3=$}i=mB?7;c6BlvJ zB34|&sEa6eF-JWIa35l=nu*oT#Q^T*Gc~vuOvG}=AgBf7QPD)KbTX=#{xjT9%+tjC z$vIjE;B$)zZA|qkR6PwV9gpV^M|nfB!$UBD`{6-&et)d651E~1-PPW*DnXd$jYjZj zti(=Mzz}ltC4Px4tX8Bo3b$TmU$6^XoRXe;{uM8JZ=fwNN>KO586QRB-Z26;2Y2f?W7M#mVL%*7CyV%NlxefJNhDP?E`QDDc z*w*SAab>P|v}o&obRutcByV;gU<-2o?JVk@?vyKZQd_L`!#>2veYG6%f98qf4_9;QbkdaspGGz>h0UNbrzfTAP7uDPBIKL zV#J91_wO5@>PJqPFhN(%hQUZlNpYJ(1uq{RCv+>{e*101!(l_Sf5zaTaTms*DC~!X zgqXW2aD2CJ-HsnW-eB@m!An4)afSNvqehK-G@xkUz=67H)bSb~9)9@nVZ%P@_gh_E z-KbF`9r}hN{*5=@XfX8v8eBbt?c28-7Y2Qrty{O6|7!aELK!@GurWda+pw^(+}vDq zv?Xj$oHzjn2@caQPd6Bb5&h4UClB{?Iq2qobZ0eoZHVP!8@?hAD{o9zB-_f{66Kvy zMORea0jq9JmLy0A!o2WiCdwFs}xp)yMy26ly^Agou1q-FXmt{RT5{< zj}i}uFeS0-kvOR!f+~)tD-(pGC~HADRuw0dM{)H{)YB>UvuR3wQzyvw!@hKJhyr{s z455ocsq$!{B$_XZVDdt&rIB1sBYSB$TM|aq$1BI0skI5bHk~!WcD$MGbP97Ol|Gql zeYG_W^->0XxgB+-Jq;ChF1KS~`&uUBV!hQh`-y`3W_#P+42fZgh( z`QqR0iEAppH~w*7TtmEz??12mF_8Q_0DY)y#?w#?h!6Ga;g+|bLZ7}se^SWatHy61 z)!=@+65X%D|J&fM7wFm>5*y0!;lm$wJ{UWIU~~81JP}ln64BXY^aH?h=%4CTGG71~ z1`zBF*|Dd_3LL`q4BNFn>Xt{2K^#meDOu& zHqB2D?2}>4K&_jftub{=KW|1xhS?qOX7>K<^2FUT*wsAZ);{9aa&&7Halfy4EDf(p zMAb>;(Kb|VJF>D3s!7A^Qm7+M^OlLBXVP8ezeMra#BOQ$$@@Y7hgQX+qFQ4KWgibI{4$A{fUmgL>phc ztvA-j3$^yZS~!UW2Z~m)FgqTil3^kiC?Rhd`SXOQ0DQ-TSd=KE0TQ`fmA800*E^NP z5<7>Z=J3pHR(y&PW-;tjEH|6upW^tLyf{OE9)>hm;^wi!a*EwVTXxvl?V(t4FH#>+ zt(uJi+)Jksg_H1{@mTHzJl6&Hk||ilG`xBSRyPYfJ{!~cJ_kEHk32gMhyD7QSnX7z zd>mOg3_CmwX%)nKKXj-E+Sl2(sU^KQ&N5s@!zFCAL`{^vvhVg%_Ie8keAt{YTX}+7+E@j_ek4Yyh?h%Zn1XPkB3=X~o*zmAtji*V%4iw* ze!Q7f8?PP-6AA+Oib!X9gbHxa_9qKMnIkbuVHoQIy;K>kmWK0{G2E%<_H$_-Cz8Zt z&Dayk^qEvvlkKh8bE&phTT&NWQM!1)(w2TLL-W#TJDChrknmTvu~z1K2ky;G?s_{d zI{rpS_GSnEMtfSzXV8JrWRD_98lG=&AgV2-^!!!?x1ch#_x^8KOAbi-h(>Z20M|0A8TQ&NwZe9 zu$4EX3S-IaaDIP~@QSCf#ldXxX14nCYdpBcoOP~9ff@zA1JkE*^mLY;&T2bTMQM^K z0OBW!oVKEqM2)js$9j^3yevI^uugucLm-wJfI0>c9sMmC{$#o@mgbG6dZJ_xl<2@3 zDOjY8g(-x;M1=8JpoqK`6u@J?0^y}vd<85>#2SluciB4A&M)^=p7oID%fcL98}9|C z!)3rVOy=1MJU5=@CUE>jmYc%c=JV_eBA@GEOMIn6;g<3&^2jtx>~lbze@)7DkYzjf9FgsW^--3}(y1?MFhDs#r%&W2GieE{_z8 zgN3SSXH|?HP@WrP%L%4SqMQYxLP!v+ua3s>QZYP@ZD84N4(~CZ)bfigVIM_ueQ}I51@aeJ^w~~@r?}jMtk;l zNBVA8ZN&AxZp1sT)HGVgV3&UXw2!uW-$#A4r9b}Cmw=s5`XNC4X9Lie1Mt5MCO(;r zK3s==kZXIV(t4*FgL?P3qGkTSDtEixZv52 zEl$hJPHLNj+TlqZ2;&aNE4!kkjXv~3iFsP0XA0B|j+wN=rTLOGS0Dq&_VQGc=>Zj2GF_ zEIo>$N73vUmY>L37Kz**PkT+EQXgbL988pUK*d1k8J6-HuIZ_h@ci+3&KQ(ER;xMV zfA-8&PQz z%?_mp$#`!T4H32B(8mj^h7kD_Q5~ti9YBKh$lYnY5k}Np=A&5k9|G>`)VNZ{XpuYk?6f8 z=)peAyQQ`}75H6OX0iXaP{_*4N^>yAlqpjT7l*NRn}Djn85tR=e+!hmkB^TT#KVUV zH^<57sdtSp8tt1y`rKw+nkV|3RsXLR^Xw$^_-C(Pz05!~&>0^ek4#~mW>Ku~xS13E z_FpZagL9Y9I43|BUi8*?$%5|DIbWN1NPqrI>i*5c&3I`pz8e-dJ>Z zIJ!5;db79X)lB?oDk^V+<;Pg}1~A*~%r@1!+aHxB+Kx2T4HISn01yC4L_t)c%ahr% zR7+v9Ex)P!LI}0e!wM39A;Zn%xS1?Hm1U;z>{NjP!48Cl?R1`*4)hnPsj_vfY8&gp z4ELpb`&l~p;H`b}G=FP~pRK7EO7KFlo+!!#3wNS0I|@@#sDi>oGFZd{1>^^O*PJuB zmq>Vt7EjjVC0hMt3w#>Kqc%M1FWbi3xg~b{LPea-Tc`8*1c@9jTKn;~J_0w4MT-T? zE~j$D*HIUs)CclM!fgj)$(;U{@=0v@45DzdHiDWrhCDpVk~@()G!{ENp2(YMDVk&{ zovfvi0lwGHL`SD#Al^?uMV_3AAD>24O&|(K5_v<3y@Sy!eei8r^rnu&v(4%0VfaWV zHdrS6@HT+^1d*L3a0>)(iNJwuU#@WLME-dNx9Kw}^(&f>7 zRUILTllCx~A3v<=5J2fic(G zGp}c|P_MP;uC`-ciN=I0ZM1s1HGeUky^uzORXEqu2KCi8wo4gc25i9n8|~@ao%pvp zOK)}(Zg z^8P-{tqOFr8r`oY?^WYBE2M^>{supA4eJd*Xkh>Ur`(O~vbq2~aNxk>n>Eldc<^A| zD!{h@F=hlGIda4-JdrB|1&+_j$uWi^-KKgPvxFKzA?#x1Ok3;u| zqj!hc-s)$)+SPgh^FR#0x(!j)49kti_6AzEd($})OnocvbVu@Jd&}|m*1C46q7_z} zYCRao>vsB>c^Xx2^o6ZZ zz}wQ*8*A&0rFvtD-dHmSN^l_8LV8%Ziig?pFa?7epc4KH?k8h9+AFny`D4H&Hj$+V*lzQ3NyYx#jY2=I>1`YUbO zi|JbSg7Yn?^DP){c555%^>)JbOySK;4)_ih;&N-^dIqTtx3;(5?uftBLtCKLwT7SN zUKcH#=A*vkr~OF{?)~x4`f5J+zYRfO4MU%gMjy^X4>r5PBCGJ*<=Q0Gn^odZ4WIq= zlS{QX{PRzmPx1%h4g@qpp@9^j$Ag1|!^6Yh_;I({p8Cv519tzriIl$!_wT>|-aK>+eU8x3P`K+rR|$Be zz|(;D;h5;?X#FeZl|ULE8mfwl3ZqSP3@B{vc6)ky`t#2}|LC+V!;HD5Mp(6K)o;PQ z!DJf2h{7p!XF4(k$it4ew>O*=zGxl`F`pM6ubK5`gZjkFlZJafar=Pn=5qAbRP^o` z{Jjz6yMu_^eei2t@$;FM`ZS_Ap2&`{?hj>iqsUjgi5Ifa#UAKv7j&{CR^1j=rlZOv zOHm{1{y^)?Ud;1Oex=GSmiW0GH;ZF5&$}y7@+ncAEeW$^cABiMxII;+rZ{b5ysR$1 z6RkZ_b0d)E1T)de}~Le-j3p(ujc z7fn5%g!cBZ6^`SyAjq*=ggeyiQE2}NbZ8{X8Kq5CEg6r>Ct)>H(9!9{shL#WBvd~M zot#Y8jMgSA<@Ui2_9S+8L@%}`7sun{{n0=L^_8%G64hT42Jp6#0tMZdxq_C+VTH)A zQMBv`dg6hd9@2g<@sN*{=P&2`$-v@6eil&ZbxC|xf>0R77Kduimih!Ooo{I@T^z-g z$12+D*n!j`Pcp}kDT`E#L$oY3`N2{_D13!4j*xQ$dCgk*sbDPt?qy-}(Z=erCPIA^ z+sRbsbQ*WIC4VMOTfqaA_=Q&VrPj2Lcx}|w1@||!%wo)qj_ey9X;%frYl&#|qy?Ia zPo*xlq^`AQ-^gIEwV^M!vb~yax!B68Wg=_K!#g+H+3t3w-sx_2WgpX~vwqx%{7Zk^ zUj|sTK==XZi@{pV`#;87ew<|cdJ_6{D*9v@`g9llpvZcs4Bf6n*K34-HGKXr4edWR z{G@wip8W6X55m1on>J=H7(~W?yXZ$+tyVKh^_=6zDyG1Cee%7z=q($*X;BnG-kM$B zdNKSbKm9xFW9a2~;eP-Aee`e~*nCxwFXoVZ{dj#fTJtdJ=+UE%BaJrovly}bv9YlO z1`MdJt!;QD<%8acPT19}S3d^sW(q@V=#hC+<^q3N=$#B2G^nnw?$NLR_{$|e{v^IX zF}Op$kb|z}lK1v9*B7C?lhOO5@%M+5@AOAEyQ51T(D`=gWE-+N)mGSq&WT~O!>lJV z*jKaAYkkng?)cfxwiE5h`V71_1yv^E!1u%9^xj}@d!YEd7r#QK7YOVefu6xrGkHz4 zYUv~;cBaD3wX<_nYPOwv%7dEXWdjM{&%=`Cz*{--77jd7)n+Y4t5}4c2vLb(1rL@{ zh~|Gs(Gn3Uk)g6S#Of>I0i4B;BQ>C_HV@V2lt|#ak8F!zQM!NzNZ1r_a&b7bK8o8O zVB7CO7Wvq#yd8CZ_Ud4{GEAxr7m6dqLs9(N2(&rXvcDgjJBH2~gB>1)v^o+U7={jx zfE_GHWjZOk4{X+PEH~!hM@eu=uj`~uFm9!mehjAmN9->-n5<~ z(O0Gh$?PDJ8!0mrWM-DcFOoE}yYhwcn^bYDByP8hdz{h%FEQ6wDF{>x1Ay=1VP85w zlsuZu)FuigkxEIZqcohaZz>#ZMpef1g%Mmyq)->HRz?B7E!o~|L70*ktQ_(aa|5Nk zAlULi`J4c8p9g=~Th8&8ihY%uNJo7mrLHl1JW-02o9i1+j94DkIzOY6@r z8do*~R}unR%L&|pf(mfgQqXkJlM`r3C9k%&UP&h}w(nff# zt$aCMxZH}q-rjbz19rP3y4M-g$qusp(>_|{%$Gy4??w~<98WY%Vt<-$`(Xz5&2;p| zQ{-Qk6CduxAC!}KtI(S@5-4}jt3SFj%ji=?pZG8855gV9xZ9L{^lMW+&9E@0%peou z^`+p4h)~#E{cg-G;e=A$$@524rXP-4s(Rwshz^@j= zA!8H}^$n&0Sp6br&YWpD{f!WQx4EzSOFut9cw!)*-Po$@>&LidbdzA@(+BJF^wUop zkxR(bLvp)*%4>&PIj?E&68~Nc`XiouE@+$xCIV&zG_>jS{FO0C7#UF9`tml zCgg{BlLI`6?hdS@9ko?ax{8`BTI%-Z0!ragsz9U&mL$m*Cs_dTArc-aQhp)`cEVG} zd^r?Gqa+4p2-d+eHAP_-OY~~H?L}|;6<;>bldW?pe<*%%s21RuHv%ghsjZJ%HG!y`NF1Mv9d)gI zT{99D_C<$#k~_OF>(YqHQMMtzM3zK!<*6Pb+h1aaiPUI`ny9eT6@H$?FOx-`>@R_A zSA}g7ze9ZpcRvZp4mHmokj>`>5_L`Kqe)VEtR3K96vEXs))GC|HIs^?go03}CQh!4 zQ;I`4I5;<0%necx`bydUN=_hbg&co5+gILW=MQ?-eotf0wxlnlY0;1%%&)Z7@&I4WpsuyEX}x?9H3?{1-xzop!b0C}*Z6DCa1^AJ30uHeC%%{KfG=rgAt zor?7*l_v)G3%Obb;Op6zx3^Mn%|`EzK_3mbd@u;R-w)mEOI+_pp3lIKrDHW|*79Vw zFoDgEw(bc+^=&MddT8SP)hz66Cv-9s)n#I}ZHcNhq9TbXPlT#bK0n5~CtThd#BcCr zR(a6NRceVyEtIGQD))>Bx5RFHMzyYVQc#yWtjiqKbDrEXe|nLxb+#ul&52KN5Tosu zVG21&B6`b~UZS;|VCf`S+ljU`$<|CH;{_bVyPt%DBoxJ=6bAKX(KN}r)WL7|aBO$T zJ5_$a%I11WMcz_{r&{ObJQ56=U9Acejzn`MF+V%`2_YEYohY)$gwIw)8$KaLYh}sEc{Uii%uN{NRhoam*hq~rYQ6@k%le{$o7?zuwD{??AugL`@>}(000mGNkl9T_3g7xKZx9 zBh-RG5oiu@Kj19^-wy}KAmL$Wzn8qvDQ0^~g?{$RU}sgRQW{K^M_P_0^0moyU9# zFY2A1w);J(yIr*b)l2F0=@j;45`QY0JC!UPPvoJOa6Z)n=)cne|DXr;pof-X49Nb~ z2<)HZZQqZzelZODY!Lc-1p02QEC2fh@~4TGZ>L~?osB+Riayz9dpFzJ(D21S8(i`2 z551sI{1^2H;ohiGBXbV)fA=ir>7#B4c3b{!@7}!~I&`qx?QWQ}*=**n!^v_>LSo(g+{?*TYrx%*Aaq(rp0tXQ$)x8UxU`^@O#=$Cr;?p>gKLP7$^ambVk%`i^78H1C4 z^UXI6zg+6?&qMqZgS(alI2XHd(0Xel@%C)&y^-jXA>;=G(A~c1W-oNL3vsS3UY~|n zCX+{+(1mgAfk^8s{-_|%db%SCaDS~2cDW~Uu?ITU2_0{T>RO`O6jak3RVU%)i5B3y zCgG#mo#6~1ev=QgTGbH$tdm>q&9C&NS9wuueW*3wwiQldmD9T3hu<8;ZS<$s_>jvz z$!9z*i##b1^-nqIaZYxWof#xky+m6#!3K!$AlTaR*5*8FEut(D4HMB^*|Oe)-{tL6 z!Lo2rX7;Hx2=)p;rOI0_^%hJ0?G+*Rx=^(?Qkx1?62p{+vxUL@fk3V>NZA!AEcdf6 z2*;K+C)TwiU+73~>q@`eli1lCzotJBy? zVPr1_brA86ysaD0_ZO8Bk~m&ur%Low3OiTg=1W?H%xan6B=K7n0m!~X<+s~;H@FuC zNd*CXzOR<|u{eyXPqf!1*h|8hqEMzV#8%yy1?67dRMOJLgox!~j2em=~r7aTEdyu?3Fg0E98-Wt*zzt4B|!y{8ne;ZZ~aBzI$2Z{T^1}``g|5 zTU`XO0q|WdJz0WK6Du5z=P#u2ueYXex3j*}!TMg7mOK*3{^JBIaQw^R+RIP-li!ZP zz8`D(ezfHuqwyan;{TY8zL<#qIstvOhfHjN*y^qW&PG4U1h5a!=eOW) zz8-k6k4A0k?|k>&cLxp}7&~@sa&ofnATke@AlGCux9k7&LL{Fs+^-+7+*pm?nT@|U z9DO{P_;3JvyFYrP8@iBz&a}plwXl>m#q*+x>@dr&Aj?jF=@oBFO$!QSyGHgb@?v-V z)z0W#CLD}TrK965iMkX^d6KoH30>64nip%$j$!sjirWMEO`gnZC%f89c-~Lh;47>T zU^fPFtNp1Jp2TV|>+}A?rXcGEKg()wY`GV<)SF!5LoM`X=6NzRyu^tf+;D~JE82Pr z)}8`Tp6;W?uoF+o*5wktRpAeNDy4o-5a|aMOEzmgXs1EX9tl@#LhR)}Y_UII66L50 zQtE@Hqv3pc3|$;;`x)-Re6~Vn2Roh*wa@VX2076`CCy%=^7$Bh+*X{t0^(Gu@0 zRD@>~@i|#oCkrpgf(Ca*TUYO8l>@%-cJM&qJb$?;SS<-rii4#BfVCf67{nZH;yBjK zp#{l=GkF12c??^Xz|}Mp%3`^~KoKN)aj;wv#2og4mrfAr`#pthe+A&a&qvzn5D$0> zd46hnkVjd7TI|J?1#-2GV)0yj5Nx3x83c*-{{O;X=^)?DA&YF zWnp}EjCej-x!RI@qXm9F6@AzX|Jz{8596#2Q!L+)MStn9O>6pmu<-pj;@gp0+L`Z0 z;y+A8|Cpc&`G1U|KAMQ$St&Jq^*8t>eeZ(%PcCje@n6&*g!`B=V~}ZSIuOo}C!O*2 zM|a$^6zIh~`QA;2!^?Nxd1v6jfyk8j5VobIr49dEr@=osaE>Abv}j4DW38vA!5cz36XwDS+A#KtAV-p7la2z0pc9%VMYHX%E|Um6{~e zBV?wZNcR?O0|hOt5ajS$2eHkIIpiY%xvG4r&ZAWYotV>{qW=LU;ALfC~tXj&M0I-XpX$gFIE zt!ay1$|Cmkw;Ucw77WIVhTtp~g~!1{h~ZJO%=Kl?5Z z0qP-7AuSQlGy_iM1 z@u1*JDl03YaSsm>*^|$W!L50!ibOwH{m-V&Y#FZZCQa9{EC;W6f?08%J zXluN>C0>?FlqFH1-}Binerp61@7?GJEakEtZS%>nxLpkKZ=KClW z{*I~ur6yQB7VD^u)0UIo?_hI%#3KPpslQYaAXSC{)|K)QsX9z84H9yFwH#Y{L4b7y zfDTwcDFNB{dWbsQ3j<_;dwIB05+oM}azOJVkyLGhSf8j=HsXsytVIzt!2M`b zwWhIpBoyGT>HWeW<*=W0(3{WpmG^n^`#gn%J}QuXx2M)@zOTK+&k1lZ_7UOU%Om;9 zSh1=pSChomq%bw9w%Qidu`~vlek>KXENttWv-QpS6U~KFDg2of;arL2tN!Tk{amSLhT-3jA^$O!_;xh<`$+7; zXzHgQzWd35`x6ayH~(UFn1X=)Ex7CZdTv`i&K-XLZ@>MvTZ3*RoZo!&O>J$h;aEVf zWtEIJFJHcl9u647rvM&F;mrzomx*RBS+%;A+I zMvO4$(#guoGLP9By4ZMz`jx|tAk!f5$dMzBn*#HOOyM#2@85q^v;XwVao5PmNW&AQ z_a4kod*#ZN$TV2JWy=;LwSZx0V`5^EX`NL)H>dHejI09|L6IXJuJ3HyS8!Ye4!`~Z=eK3@GFo1Z!KmJ}n>|P&qw-IwH~$$U8pl1nG@~Eie}dQNbZ2Ib*~SqXo@a&p{{hdyw(%D(j5oBpX-25 zw!@CK#cNv;mFf7AWU{!KH80+Fs1db4mf96TZwaC{`Oxd_%G zgov+%3R?r%7lXMM!?~@|($+|My&wIo2l0%jWsbu(Td~a%YzsvCIhB9WL)q))$n|to z`zW=3&blD4+F(azh+G}5RL0ql#3+XxT)vM4a4!pxtAdp3Fh@nGTI|o~dojgshRFbTpnP!%Qy5~ch-K;%rK1T_S){EnoGy#y zjy9En?-fy!YmSmq7-Y}&ld@fr^3cv+5B`9+0tN%%zRxM<`8f;yV@sCk000mGNklj&ms$xITPmj#rP?T_u94-{mM(SQ zhQ8W@eLcnYc026ze)yMzY+ntv{%sKYv@iOkm*vAO%f~&iF9ut`>W}}uFaFow=r4T` zeERip3}idN{i_k!hofu_|NOq;f0X-=f0A<7_YJp<0e5qOBRh2HpdX-PB04(S+|4)e zWY&YaV?h_5z`LG3dz#g~EX(L&a5o_Dz4zX8OMq^iUC-6EV8H_Y0(5ll*s;TWFOP?g z8kGXT_j*)j)-{$4zHJB`-TPk^Y-z~-lx-1PQ12A^%ShH~gqhcP3 zHQ$TTvOeIc-?Fc-uiM1k`uciv-(u6IO>XT#88vE@c_122YMjwXX5jX$;Nch@g5cm_ zx5x75m4^h+!SwpOa0jdd&|PqMt)!ZZuIG{04&Zm!+HTK7_r{_32cr-A;qUfB_j)2A z`~9BU&YhmbtzN`+P~~0GsZ4aN4XSU6s+y4{(K1NIJx(Go6xF8@=Q~<1cO?Msm$R^Q zUC_x6=vX_frVU=1j!Kg8!lrm`yyajc%l=sFo=9qED7zy_c;1U$t&mVRc+i`Cn3w$d z7yZ}`p5z)Qx!TLR&Y#&7CPQ82%PjY_uJ&VB`0%SewKcD|*fl|#>#LUeszCPYK(!{w zSsUVA6XK`{7OKPf+DNe`LOP(b1zvJ#AP`MD;xCi|(1WDnK(RDL1#TAjOQ7oy`v|~9 zAbVb*n&;2wx*`bk{rRE*VPBASZ3J4Hh%ZmTS0)i_T4FD>LpwU6-CfY$?r2XB>|hV( zrF6^O2sA`RJ$PFdC-f8KA-pu6x6Dx4ISMz2vo7Mv=VWGsQ+Ux!UL$fq_KhWg&{T&?=|sUeN(YEo+}7tiX)k- zIHtadTpOpBh1&}PU7i^~6@)+V9pDbieZQ9sa0lb@iozZCb%1z>{*CrD0_8$~9?V8% z3|AG$RX5?Po6)t&bZsgP`n@j2R@aU(IRu2awnVeC$-G)!tti!>1F_W;cRnW zujf*PGs)cPB=&4`_FN0;Op0_oUN{;f)I~`r6S!AXrHd)dxhDAKB;xIM)aQNaA4f4? z4<)}Cg8#KI`lu)Rs0XRRy%+x3K;rX$1d#pX9$NiNKTX$vHCzj!0m^?ol4|(jI}IbQ zoRF~d1bM}MtIoTW|2&B7y{kr)u z-HmQ=1cWV|LjUN|!Q6>>k)DEG*QYj}bcAty?!YcaSk(SHJ6x8#fwPt_OGi^e}-i6j1$- zb^;nqIEEvQ%Y#$vVWwt3kKUBN7Kd?Fdh$qfmL8)61b1!Z{xnYd=wQj8RQ{K6e>EGu znulG;L$Bqbo7vXu+pyd7iJOzq+e6U@1F#2uiF@7Att|9bFLXBx-O0jkXAw8Lu9sZsrxg1MMSe_i5MLImRz_&)a6ua9yJ8Ii@h&p*hkcmC{#;&|ayVFo zkIDkIDDth*#EL|;BGIynas2C*aS~BP$YZvY;Tqu z#Brl}VH#^)V3!uD;zHK;3};)Ta4&jD+k74Ra(WuvWp11LGu)v9g7IFIOC-mPQKY(L#A6zBGX;Z^l$6Gu5e@ z3m%kvT@qc>%u<_VtxuwlHDix8<&G!taQ6BHjqjSjB~c^3E6kBU(M*qb)M{NkT^Gw7 zj}y-|^E}-|JrnOd+sJV)mbsRMKFP9vKa}}ysO9Tn=!-#`JO{Xc(38+=FHOb&r8fx@ z{y~G zW2~A2Vjm(3e9pJPcV` zSq&!VvfI4;-?~}jn6R)g!*>r@eD1mD8Xg(y)DMPBGI}2R?SM(!zkk2E<-2$9f+9B7 zs6!9eCovDD>huJAraO7eqZc5+-7Y>qKVMH0ORnSdi!!KRx<`70tPtW4w;zviA zhYcHMJUV?RH8u6jnKN$BEjv3KZq5AXfUecmt5?l`HFIC>iI;!dEdxNmco^W0YtETG zbTt><-fOwO7QHncyE7KOGX(o^Ao+e@%e@}h?e3bl{jF~3RyX`+7WqaN@mg2S*>a*a zR?`A2Z3MENKO7+M_jK-c+IL8n{hp|*F?}YDxtK{^>4snEhE9VeXipw(i`BG3<<0Tp zW+W(gknOu8$z9=AQ0}`zgl(bnOM(14;Jeeh%G0*am)#gBz7Q&{3zSy*2+JJw5<8Hc zoX4T%BL0$>kR7BsAIgK($`GhBi1eypp(a?Y4^oZ=tH&bj$D@_HSgxiKR~apW;N5Rm z4thwyyV7uno&~ou$^o?`Oai`FL^^?=s75E>z(Av`rm-`?uXzC#!Nr!u3 zu$H;^NT>q(8m{(8xTxiH47HUj?RzJwX-|vd5F|n2>)^@@%O>lhri^Isx6$?DoZ*H*e}op6bPL=734i^U1g^n`gM`b%O`zb&LDd=MbS^&hXO5 zoT0-M5D;Jve>4tQwrp9$!;H$twZSdh?RK|iX7wF--#84uVqUP&oMZ-W0nP}YnjKKa zr}`+jZifE@QX^)P#!fTt8rHz<^aBWr3L%z;^9v(YHZkJ5v_}FUVY^PGK=R2VD zozSWF_{sLRV{OU0)~K?%r7VdmXhI*1V?eg=472SBrnd*OTZ7qcA>2#;+c9sX}#$l&J2SJh^+nXTR^3+>K+K-+2KU3zN2E z`zFqMAHUCe;2|^|%nXg+`M+n*dk)=~#I(7n2A!@!FZ%4_K#FO2ffX(CjN?#&t#s?Y z_z>33WT%zx_i#h0`eRw9zBfraN{tHk4lSpr|8@HHr&vE2SJh?;9?lG}7 z4tcv#*eX%42xNthtp-hPKyYs|ORYw>&4gkyAi7aWNC%5*`FdD@Z*L5oum}k5i{*RV z6wv%YA`5Uokix-smy_sm@%lf-sN*5}qGSr}w8(htj!2>D2H78W4YEA$?>aJDkqKEa6}Z zH$D}}kFkgT{(e2#A+wf*Y zWk;vMM2;DbL}T-o!bgrDc^DX0*#?8*)~#E!AC3}y8aWvWKETFLfBMtNGsEzwL^N`L ze}A+mfK$D4ZzyZEd7t5cEySnb8cOvszLO%U%Yq`oW~sZ6Mg>Cej5G>oDEDe!oNGG3*hWWh3Wqw z<1?p1p6(7M%=qwgov1svJ=0HnCph>v^G7=36DI&!s$^sW`b3J5hv< z7Gk4C#PLG)(E{w?QXF;pSjYr2*p?KkK2BTfCTpBbwNqOkL)Ut^-8Sk~Be_+tdD%d0 zx3arDerUYi>FJ=9Mk1s zI?O1|vCGbPIjDeL0&CLK4FY(-YtVnf;+hwcTdE*CO=W zgaMa05F-u5^T6o+iS)jB?O-C0IG({C2Em@iz{bH;RI?0F4zEKg!l7h-Fdo$)8;H}P z=h87kmy7O+A&1k&6HDarCEREhK9Yf5&gQS>i09JPm(sCcuNME;W5T~~Mtzt5zeiDc z{l9P4{Q436_4TOW`@OY_J7ua6+!eQh?`xE=tyKcw-`wqqw*@96yOp zF`R!7SFKt#r=(hRMTf|bnVFdb0|U_$lt@rMaqzer?1LqyvmXxNz;Bh5ltg!M zjqI=Zpk_VxL2i3^4Z-|W*ZFtm4>%&tIzC>!2a!eKKGuny=~lw8pj5~%Y{sv?z6G24 zd)3?D#ozw6`pvK7uRn?c?l;$9Giwz$*C}tTQ%EbJ0+#Wl<(?Yyz(rh=Xx4Ec29uA~^i<9bb(>)&4WnzCg zn4T<+rpO~H($N&*NGdmy&K%2Nk1rrcvO>0q00SNkCbL~J=%Hezpxwa}l?Jxa$~9YP z)Vt0lb=a9MC)X1z_9y82LMR6nAFz;KC*yYu9d3Qlsc$!P%?7;9f_1u7{#12q77ly| z@xC<=+m=T?w}kuq1npzI>T3-C=Zxn20`m_d_YO; zi3bvO@IGK2_&$`3stxygN_RcnIg?pk$M`fjZ)t&SHH0a z|K(czjSb3~N66WC|JMVizyEHiIOHE}%=yN`Yf4H=ikb1D=bIB)<|d2(`c zbXgMEwpy)Amo9B=Yz!;?NME{7sO<$G(bUvbP*4DVg<%-Q2VFt1P>d)iC+7!0_`zo_ z+8#Zkry!B-pZ)A-9*<{EQDWffC!8mo2262GCR4Qjh1(Sq6Z6e)eluK*B|Lubc}`DH zfBW0t29mEO&wrIY?hr%Un+O%nCXei=4|40!3xbd0cKG7LUh4i7OsTVu2nKpdp1?Dgf?p zeG7l{N!4qcm0`HwSc3u9udh{ITcfyGhMixHO_nMqid3Wds>3Uk1B;a1scNr>Xt7dl zsM{wGufQfiXTYiLNl*@EVMl@Qg(_4kGGFll+}ZXxrqxBYc<4G82y<$el>~#03J0~< zNyF^fu4m^4LIdam)sMl?@KUtCm4b*q0Pdy z8Y!=lZ81@;W){_EvC42c%|^1th_{**-Z;EH6R%sM+>woKTdsO(8U5o_^4m7-36Xe` z(|m&^|BB~+B=Y|x@z0>rF`6wFRZW~+X%k=JwR>c?+9Xz)m^vE=@9fl59|Lzj40n{b z<3@1rcJcdSP~;taPj|>bzxR2N=ox-t74I@I68jta|!;a+Eu z9>85swmJB&1Yuta2O1pQB*4AP#_e+$;1|P)2fp{ZP}U8&yD-`s@Yexp<|U4maPA*YInYsK2>Qu0PAF;j})DOJ5z zhJ%W~zKNK9_c#9z_xHn92>y^G97~O^uF9#I2 z>hRmoVE4a=0o>pGrt0;tDegUtGGsuuUoXe5m0?rmimT<=#nq_l@7WS;qDVPbphV(* zxoTjcrZb83dYCpl15^HHGuvchLCC|8UbnhC5%{hEH!!kNd1NIvyc|22t?ABWd#+LA-i&4S`yg$B_IlhD#U5dIqk7g6cmuf-052aIsNlZ_yuFWP_i2M$QtK@}d zy%a90<#UOCx76+wT5N2+kpk#9n-S21PNUzhhYhs66ZUjSUZ((>x81Jvr;v?VnjKk+ zm$LAGOwoSZs(MsZJc-IZQs3t2zvbDdCE;0}_`Ht&g-E_?Q8&cORW^2~psj*QgGH(} za}74W)+y~aGOq~4PKg1y*XqT3gV=0B+2{}8ZWF?A?{xDB?jC@w)awzuJVN-LUbg^m z0&RQTn*9l&-;IEKzlrO#hyzZ2mtBTmhl4a2L$wXy_(ln2dzDVx=45-4q``D?Fiq%- zqr07KpGz8aoBM3KZnM~Bm4NS|4k6(TB4EAT@6o|r0VUdd1lYOPDfT!}uaABYhopU+ zxGzo@aBz)!E!;i7O9yT;VAJl4CC3->Q>*y9YxtXm_`Ndi>*eaV*Wv$tv*uqOQK1~i zN3eg{gp_*-?n;3Bopp-qA-G>IL`5jWjaaXjP}9Z4bdmacF@9&Ya%uxL`@8=Q%n8B$ zose?>Lw?z!t3gFX@%;L(A6XJ0x_w0CfO8o1yU_T!fBm>I-x)-n=6$B3zH>(Ov)pK( zG3S`ScXANzU81k({iwx9b8g+ojp&TVXx|p5@O;XD!YM@#7~Q;k_QQ{n=bTcc3&$K6 zHUHASu<@DUe$F3Cg$$waqPjzUSX5Rv;E1C7jGOZ4(*%FHLn#C5I0MPV%=#B(+Uj{a`6hq}C zmtzOAmE8-7KmrGFZ?JP!R(h|U-0MV%?RzW~Se2crbFxitFtkjxFO~;7A4(y{7LgOn znUl-4quKb$TngE8`a}+OBAXmrO2F$xHg!B36-5~f*=V)~SbrpwJd{H1ix)fG`g)^& z4=YvkVv9kB8AgKH$sHnHspC<_O1;=*6j7495v909!@a}B^|@uRUXR@4mQX7t z2jAlqfwRMDx`BA)`3@ur`{VTh<)Df0v%x+R{5o7t816MXq0S)I=mG8;xb5A^(m;kd zkivDlDS-Pxtl@yi(qoZ241AXf@f{8lFrpxShehhLA-;ozMnhj z>~etYAluumtk)s??BJX<9d^yJ4DrfJ!;Kn}*-CeJoDN|i9RbMPb>s>GB(^G}ajbdcii^%ChEgb6VI%f7APVmw%48_%t^y()MIdAZ3p9j)?b9 zKD}t||9|63Ki~N5%02Xm^;9Q{xnK2auD`0h`$NTBf1!N)TiQ3jj^BG!8OoDU&8$&f zD^px5!7i5~vR_=SxKO4zw_16+1P8dESfx0Uiyg|r2Nn`tsdONLLBV$$O3$d(3yo%7 zi(TJp7h0X9KUTRfT{*M_55XPlU7!vm60I(}!9wk|sCQeGd!5`~8&_dw_86#2BUx`F zeX(3u5?-19fog1}Vtf?=Hj%GAnWsLvLOs4*i!6s6%~6jn zC&CqL!2tRrS@dukb0CT9iIsq!dpW*}XF}4LX|kxBP0Cga?z3xQa?s^L81-7|RwLD7 zAYsGrWPC0*;Nb(YQoCDhw)5>qs?nsbwySI6>0OEZKgg;lHQ3jA_B#yqJ(l_b%lwFC zp5eKd^x`(1uvJ1clKNPo(njt!;K*aS#2O1zYh@cfa;2HwAyKOi8g-(vtScboZc2ZB2s zq|wB~@xgzD9^2AYMxxEl0o?o3#J(h^(?fNm3Iyf>r?JZ<1axfBBy^ZXzkvkG_ltf>EAk6Q=lZ-^H%{LjYX~@)fK_=Qjyk(UcP&r8UZ9;R z#O{@2Z>-1P-lTqe6aFCOaU-f4_U0Pw&2`w@8&Sahjfa!~_gm%o^-|T9Rn(YYx&N8x~ax{AB_27?#~+g zp0naKI^YwDw?vP~A1+$*&kqoNVdHazWfZ4_*y%2m?S8#kbK?ctWXFK)=gU-QSK|ooMT)TkY-FW!Xt{b{mbNp6)oV?;000mGNklNfYEQAGPqnT~7lYv-GcQP@&RCO?0J+K(<-{v8k>{OLayT_`ku(A)x zt|#hDgx5v(r!YfV{O|($*iuC5i9F5OV)bN+`c$!MqC|D3RCBsSeY#L}Y88HJr5gVA zR4#csk2BYNUV)M7M& z>5oNa7dxHEdSb=Cc)2f8*PSQ_<3w+a(B={v9q3VKtzJ`UP&Ihy#zez58~W)Em=30UJ(i-;tcYgcFgL^c~B8e-Jcjim=ISGPu;_~5l zB3zz>xlbRxjaIDTGmP}*h#c^9G;5w;Jth)^o=>q)<3i>r>#%m7^R(dio=?R8&3WW7 z=hr`(vymCV96E;&{*ex5j-#F9kiK}$9v+_=?vow(sQ{`yaLJ3^s@2Z?6ubLZ*jwLG zz4d46H=e-nKcc$5L3wj6K2;8IR|4EGm7{=6IN*M|L17vZ{nJ4Oq-M4m!=t9ObsrjyVIz4H`#1w>zsUzo84=rDojMB zkpM04_t5)OnUTezkPE`P_H+S$wn%lpR5@9yI904TQ>vOQRh=zSo-S0LE>NDzR{`8% zw~1VGJXdpaxi<8R)X5xXESou;$qXb=-FC)nqU%JuR-l^owBJtmBygZ!4`fJ(GUcIk z@n9-{Aer5t#2!pVUIe%c%r=?dVHB&ZOoN-RvZ<@Bs`doFEsn3XXlu+=y-TRH(7PoP z;9e;J>_8L0f+LigbW)2>j)uG6Aw3Z9Zq)u1CA^0+XCA~xtN?c@V5U)Ju|#oStk8>+ zY7Bi&U6+aLu^@FHf%_hbuQ2j^3`~ucY>i<%l7y~gwmXSMRWOkoGk`+(0niOxz$AeI z*l-Rx=b;^EYBWx>fmSERP z(375P>s8k_0L@hwixrpi71vg(0PYt;aDV>++{0m+KV-~3S}@MeBj%ika*;PbVa5MP zGAMfgPZ@*$RUg??*0W9&XallYpO8Z!!emK z+%K;QMca!}57mjHP%YmA>{uQ)yj*c$Dc-+8)02k6?wv8H7lhx4AXO*x)uK=(N);ks zA+c3@zQHU8+<0FGHL!>QXVB^-n`~T@ORA5NY8_0qg{U!WK>P1c6ULT_sE21RK3Pbg zFCs3KXfCbBFPEz(OHfVu^QAbD9X3v{!Y1;u@jS(Nt{Sk8I>Y5@0q!W~o=t&lKfZ)H zm_qe>wA~igt7n^aVk?l#D)?+vz)b|==-w2zFNx_(qy`e{!DMzIh3!vbdJ-s*v;h~@ zW@nnMT)mO5))UowZJmi~wCe&1mSBRe$)awxXuA?jjWMQYIs9h~{TxTXBnz+TMZo$? zA-=x?6Bi5H>=Ns2nmU^bkQ#^=>MhzjgBDyG==VJ`wOja9aPRcMB!lVkpy#NeuBswv zZGd~POBb-9Rkf%jq@95u2Rz0O0|Vl{)5@ZPKNfMXp5G<&yAAwqBiv+7vxo5|Z~<_5 zA-IEb@A61KBMW5r8+jnR-za+ZJlrn$G5k)@2&RMA4hs_O9Zm`6XMptzjt{RHdTlN+%K->W`Fn2 zhvEJQ8}n7(?1yXZ&VKkI>YV+fy~0OAVUFkcy`*^m!_ADMKklhjlAfqh`#pO zPl4k(J49dj{D}4^AMFzw1V%q>_`S!8{Og>j!OZ5t8gUb~A7OHyF$?jyKI}WX#@fx`{od6_ll*L+6 ztQMt8L97tPy^?@(QJh>~s?eX#d1Ew<4!XfD)w%T5cCOBW`{S{p#fphM{A?k9u0(aA zTnTnAlzcf^tOW5M*6ASRPp?#+Ua6i~p+2!pJ+@36im+23JVzytFCjuXk!WT7aEf*? zPIWL*8cH&En7MX6Ih1MzTvl>KjU-nasa7Z7Y|#dsWM6{V6)Ofjaw{;=YN)s9stv+k z9bKuXVCKN^wkUN>K7)-*YVwpc@zg?pCJK1UMIv-DOOMcZHE$!#K8 zVG$ecQjG}-|28+>naBm>;W$FQL2R@LO-{phk=n*nm9khPa*d+UDDf?N0hy6+w@9J( zrxI{8=nQwb=Ft)%Cx=?@S;QWT++)`FS&iK`U8e=192F99aJ``itsPc2Xkq*ov_iE` zC&EVn-*?D#jhSe05dL_wD~0GzCVCTDQ0`q$36cFH&7=d?2aFtw#hc_#t3K$E15Uod zMAjRL78~0UXXuXA1?^OijU4pQmvZ>2eCc|jFujVKUd2oo(bFXi%6KWIQK|Pr61Ham z^yT!eHQHMM_i`=p{YEKjsd{Iv`j-#0Z*HXTl&Y?-rlucO-}rNE<~xe(f3Ci|QGK~s zIbEc>wpx3pgbMdh{Vi}H1ol68D&$w=tMMOad}g?x^`ke>2e2D0>gngO`+uW&;~Uu9 zPh$5T!|p$#xVI6({rYO`S~-II^hWiyjY_a98x$8eC@0q{&y?Y(O4Jj@#PNLcaIW^i zQtiG4R9`yRo5**%xqy}O8l)Dz)Fg@ZqF5z}dwHRP<9GA?UY@8kkiHliJV7v#Z}sp^ zKuIUt;KIApi6bk>iG1~Bq3Y6V4NS(*mtzsQ1M5R@M-leZ`5GYmDUj;R)hDvGK=Uxx zL%EL>DsHuiJ(58WrIH7ewMSB!k#z28y6JF=1qj%xQyok(^u|dwl4duftuoMUE(sKR z2cR=S7mSg-F1gvt1JL20z<~bsHWv2rxup>Ixi$yi5w8ozi7j@z$;q|H8CqlXuL$%O zmUx*Zwh8ohkpXJ&F>rNOsnH_U=;;~*(c~iiNi50{vWLpZSR{b^4w->ptkOx~0^weP zJA|9|0o;WsxU*oP$Eth;?%iey!QH0swF2Bl1a~{%?Fe<|LyNOGFrO8zIjGYM;8u4^ z+^Z6`7bXo>qAiZ>NF+KF5!~Tcfb;O1g|G!oLRheeqcmP4dI#X{H?Tpo*yS+7S+!W1 z1`E|}=iy!jT{={{(!~rX@h7uTt@g{g;?;aG_DVjDY!!96kiJ?%UMVK76%kV<#P!w0 z%xZF`OnYOs=6W%HbG7cVZ5@7jEwYPiRAeX=K~H7Ev60SBce(JMjrUyXVD=EZ;?<4J_L7E*b>F)k>2;&*%k|5 zXAmo7VTa6Zm#N*dIuv%NeDRuKyawP7^A%Ks!4}H;x1ws4fOwzjgAlw$?69GEfY(GL z^g9eKHUWH9gM)8(%K?WjXc1t>Fq|Y#EHRwVGfn0SVCQoAi@DszJmy>;d445zv4FW$ zNQ7ExtEWov=~DG{srGsadA)?XR;ayEO5H3+%ao>zvD>BCn`_m-+K3wXjV;4Q^OUF8 zlII@MTzp7zWj$IT4UT`TkO;&5fna~{i;jVQHNF~O& z`%COs-$Es2LU30A)~}c0Q)T$oGWBFJP*pLWuZ%Rz8_K~BEK%%VsNATrR}`?qHFe`qM?&sa1-J0@cYp_1FqLly2Hq8Q5Hk1ml1)5Uft)nsAYoe~)6&{_-1 z6s$CoyA4{DYws4CV#Jmh495QjZB#yx3z2r?QC14S*6yz6u=y z&Z@yA@70NDmY`#H%GxR`-5SHf-zyNS=}Y4J5<$5$FdbV<7rYkUXAB^(P5=N9 z07*naR07$KdO3x>1@E`BZ5FQCBEny-+Drr7TO6p`1o)UkZfQKza5hIewSt8|3V7V{ z9Qtf7b2gVcvw}REOQ43@tH_H*8i4z?)#|A-&2%X_Rm@&p#Z47*(?#r!Qu<~Yb*mh| zTc&uuT=Digq3T!kR8(WTn zULMQEj_0CEkjL^>$MQ8J`NYv&;_z~0L)qluVx}*X?@pFFV)daFK&CdM4#nIN-1#uv zt3?UmzLgSRVMT;^o~_WawI-D>1{+?gxm2zOseZK_yHJFkFT^etGGVxrIjA4d$U^SO0_I4l!uW6oeK>JUfs;9ZI2& zWH7^-LSGDliYdlwhclT&3z&loq`oAf!K?-KU2mgnEc9M8iOfn>!jBHVAx3JB*Ehw; zFv)1PvuKHv6<+B!I|FXa>t^A#J=9Gb!97;?0R%ldFp$6?X#wu-7O7s)qgji@RNJVQ zc+Q*1p&T0wCkcO)L*E}dLLA76}*hJs^gL0PDkHsbqAda{7NxQa#Vl8Q8!OSD%@ z$jgN^Nc(d++{Ii0Hm(#f*Nd5(tF_^hVJP!`JvmcIp3P>Cq^l03Vy9Oqu9Z@k3sBzF zu>x%v?(fZpa*)4@w|_PMQ;*LB_e(zYR2?<_tm6LPU~hjD`{k3GJDc&THEICsnOx=A z671+A?D$fYi*j}qai$nMRf0{FVB@Qmr^+;76RS1jrRrk^*wK~P&~nAV5>^ELtzlxf|Iy;nxupWBl z45 zrDltag59jRhviU54l~v4VcO%kRu9s=jaIJCCe+&Xl?I_Qu@$Q0Im%<%>SIfZk;U}k z#nh1{sHG<${@4=c$U@ZoGYs^DDI5ZKDvvaK99k~lX+xc_`(x?hba60+?297~q=*Rp zsZ@82qA!8npKJm^?~)a}bi{5GzsoFESj1gMrozmCct?o0GnE#i+CtP>sqmvzARSnn zn`?B?EpE>1ky;#FgN3R$(+wsX#4Mn>-o#bvP;=BBBEN$JL+zGojZ`zR(!&7Un*q2M z7Q}m#(@<@a0PaBcI+*B~^-VUu*$&4CH^BH3sg7i-Gld50NZ^C<9H{v2II%k>6jcv( zNevj$QX_zSmr3j}3jvD|4R@c5MGq3JQk5RTeV38nZXou+**X~b2>45NB?w@C5ABN~ z{jn7I=J2P0BMHQC=uhd9{6PO?u`QmdwiCMznmtAWZcBTppZNYHemGS)l1hzapbkwZ zmI|k`h4Cc>#)4m#C zjW23^X1K$fm%ZvMJGB>ofW7fO)!R=h?>?lwTBbTxfK9Aap3c{tD<&?Nkyq9r;7%4{ z6M32wx%kL(#nI)85mW^XKbDUQLmpd69nD28+4hGbGf3jO#5ObEXh3kU)$suLy#j)J zC|gFX;Iw-sb(53pOqB;0i6`>di>2zzrP%dH$n)jc$(7j2JnU?t=6nfxrcikz7aPq{ z1KCHGXo2jY(+@9Zjx1qEve{!xDa86L)cNyZ3WLa=#O+UD4uBN(aG@pgGFowC<9gkw zmf>JJIhf22XXp>52>X+%4j0zpCc9(g_E>p4hrP_;TP1G0PTpzK?KE(E&0>`u5Jptm zv{g23ot*@Z`(j0Zj0jrT7mMKDvO}=1eg;5 z!~^kUFoEhwMEROv$d|;jAnnoP;&{QA#5c#&buO~Tj_MVI1)b~MyBbb&CkkUPFu zII%=Jxl}j4NIH=v982SlB(o!_{8*MWwpbcnB!(Jl3n#NhWQ)bo1^m%8_HYUfJ5MZ@ z&MXtpY1M_Zhaqn^E=x6PvN)L zqjiHf)?+u|8}%^I7Mpq)yZR7zX(M)d19pB5cDfWhQHbgdfKES@qdb_cKD3M+&QXWU z3G`%<-Dxa90e}MHvDqv%=tI$V-cZHr_cB72psm%Zd@jYI1>DIT=4^rL{3?885q7>* zb9o(hX`SM1F@AI@HkzwGTS`t8sm4~Sk1W+5&PF|&j{?e3k2i93F$H#F5n8_rviT^hPB-5ZFZCzr`V&!)p@9^(Cyw^pDW8=K z*k!NX*ksmKNy1KE*vhgm@$@!OxK^psNbb?8D-BwZ+aav;fI={oHscb#F1gh%He2~d zGYgmoYq6qdv-KvSLdU(rvoA693k>}t%WUI>S6FVhK-U@hHiw8pI&P-fLDbvWIuq4m z6I!eWw2oI`8%=ODs?o(X$IxvFgf~g+Pt^u8s6YlANaq8ov^Rkcp!f_Qbkkifw#O-V zTF?sB4l@UQM`jU%Hs0^x+8s2Uc8iDc#<0E^*6ZZJ_v|uqFYDN?Ms}NysxTsl1oQ`d z1JHv>WFU=zkMk#MI+C@WDO5)iVmJ$l z@ui^I*$~z_6op@&BfyoQ=w#hqSdJiJ`!PRI5y#zt0PXYNFZn zbng+4kiSaJJ1*z13; zc(u(R@~XFy7j2)=A)YHk7%wuq`A0Wd#+q_p^P|FLY*j}j;zogT&5aW zqU>L!=wGPrPQyD>aZs1R6h4?N2jdL^x884;TP?;Wqg*HRH9T3(X&Q8RM~vpc0{Zw0 zVzNlQP)x!s;ZiX^wgkIWN&?)^t;WY!;=>EEW6QOtiYOpEYz!}=hnEnCmy$~SHKcR3{_+W~w=K43-}gdH9pb<1;6-LXt> zJl6@-vyyEl+G`PfRsqh|>ohc54WPJR5zykJSM>BQ3$x2aRUq1;lud8E0BRbUn``&* ztxmql#?=AMZK$v%Sc{Esv~pEOlySI)W1pv)=UMgzj(dd_c5wV2k*U*j%~r16DYSdw zAPo9-6ZiwJ*`kNZO|^_tFi~QqhiQ$Yy-5hQ!E|jPlL%xmzBIZcmGLLh!9PRSnGq!{t z&tXmj)>ldA^Vu^iP*X+}ug?+2mhs24>CPlF7^iKuCb!cUcSn>zrCKU(ylAS)`tAa&mIG4@S5p zMR=e2OJTzoKBvRcmu0|JJn_U6k$&G;s7va^#Ki2pB014(h9ebeqH9Y;UL(aOzo?5q z<743-?!5OVg7@bf-~)6tX>@fbV&;i*0cr zgf*F%Hj|;*z%?3FEha4J!49M=PUPa}N;TIu;8W|hSIV$k52>cg@bP8X)pF*_TE(dX z;#jtNXaPRDjG0);0NIZ$p@*{gLyHL57|CWw7PBKD3>PxT7qMW6vw#=WfsJu9Jpcd@ z07*naR1|K10@ojlT8#F2M8rE(4p;23pcV5zgWxryt`}Y#*KAU^+sL4sLu*i-e5;vk zHj=Go+Gi%v;-EMw;6X(nD~98hD8C5CMQ#G zqw8#JlS^v!$n~hefKX{h87ZLsf59+dK=v1Temf`bz_OYBn~6T@K)0Ya|;? zOruEzvRCPOAZD#i1Gh00kRbrIotfH>EFzdm`_ib6G&+#X1QXfLM4>y54>}p(c&A;5 zD)gGfPJ`5;7ttb8lr6(~ohYOZCk%#CdYnRoP26J^wi@^sB{)NJr^M7-g;qP~b&-L1 zZC47>nymDtYl7+OK&lG(-j&Yz61aK?QLR@uSxL0QD^Bi=5!xMWvz2MIvQ;)CxWJbL zWraoEnamzu#2;Hq9a)5*$Ot|r8q@!DShc6w}K5j%V1dyGbogL{+1Q#1!$$fr> z$nSjTJ7%-_%O%^xCoc#>@yLa!N{jfZbTw`=eiAasG$;nBN$Me)vPepex`GUzl z`^mLsK(M2xsX}(N=fFI4lh8AN7varE)Y+oAIoucSS#)2tWAXOPiQTvmLV4BLGjJGFhTVk}0PNK<9 zG+DLHpg@hZ&#vuBP#j*QIF+xuScXq+P)}SMU>gKnh}bAv?4{Jd{O-g6up>j9CbL=fI9;vBL}K1F6*hBz|8UimLaz z`Cb?qgUCI!v1-zfVGlGiA-nYdOn+hiuf*(?E%-0t9;%oM!SVx}sFcc+rxG_^lN>r2Od zDInqD&&svNFjYpp#mab{T!&li@}PyR?N++U0;-?eV>NCwO3%y0OOm?6qzS~)gBi@w zB6cE2M9)r_(GyFxXP1-b^SBH7($!+q*?irZl`=^6iBKZ^Xto9wjaZ?DjicGb;9@42 zDpcChx&55fg6+0ZwK3Y@0;0oLH*wD?ry8q3hLfq zFnqb-4&&KppN)3aYuB!g1YsiOZo+#;Yx4-lH*DAtzD3b(`NDVa3!ce+EZiqT@1WA{ z0c<>o5PvbCoboE~>>#FofZh2z_TRpy`Q^jv*B(~g+oYOVt3ct-V#Q=3s?T-0P&rdtUPg=w%7D4EYmbtH(s7?^Nq8f_Ywc>t`dZN?q4{soSDSzxvc zsGcGy>l!^HPvdI65V7d9MBa~#_iPle%*Ae*iVF3=$HzJT;5YJ7== zKOQ~s>`fLsW7sw;;kSuh7JaAL5P^G_Q|ff{K{t!m(}vRUQKe!l2giR^$80r-FY1IB zdG-}i*lQH)EPS)$fpYhy5h1v1ys27m644q*Ho3@pyS6Jv?)YH6E1CdVLK#6eZm(6^ zZscAzGFy%8cA3~MsTytCo)r1u0%AN@IFm1c9zUC>om{DzT!|JjP3AqYb1S(sdF+WC zVq_^kyhM30i|)^)+mqQncIH`@dRk5VoMpEeb=6M3If3cSB>OW}!;96!*^2#n*!UBg zE5D#my=<7B{nvMX_dijSh>&du<_*`kyr#=(ZYob zquYu`-j6PUnV+8@=_?Izk5m}`QVjU}8jZ%t1-e|W=zk4gW^@=Tn%BW#5N0Zo#<@TG z(T`@Mrxd?_oP6^k&CPWHT;+vT z*x8lXnF4IG7?p0nv=+aFst%|xtX7>X#m*F|0Q4g()WbR2p=^5pLR2!hJB98}Vmsov zfQ$9oDZhj0_7MH?Ty^Jbiu+%~!R|e-y0Ml-%M{D;Tbqb8`S{@l z+JouD$P!IovbHx-IkJSD$YqZ&)edK=_orzGQb~aO;YA$q9mo!99msxo0ZM;Fol)aa zmBbzw>K%c~t%L+SDpzX~Ls%DEjAD~1{LB*tQox$sbd!q;TWbv49>@CULl=U)<-=V%f3<|h!Vfn3`0J43Lz=hzBlHc3xI#e;(%ApDb0CXLV5{dxsGFxi}xN`t^ zZxZE8CVVNlH(B9@iBSfMyn7S0-URXi+|vXQ?|u*Kv$LIc1Gu!HQ3@Cyz`e^Oba+sn z3`%m35!&5igN5BAGutH=;QoS6cwQ8?2>cESm3MD+fLEqElC^EgYF`@VPiKI$%`s$y zL)+%21Mxy{g09meg_kwK)F+(eQ)>oS#8p`79cE&unXa;MH5RTyPrfRtnq63LI(c*% zKbFg$$!8`DC{zV#Id*E9YJ913JX?Kg1${bC7+b-^|3U)`VLHOJCh%2meyf>#j_2Uk z!JMfAypD_YB~m>ZT9~?_(w<9|ht^`3ek`4RMLGBiJNvtTL3P96i}wC+;J=?+S4Y0F z@Cxu+y?S+|BQt!rKd!9#mvKa%h=#8h;I7eV!fl{|-I4Bq;SuIIX!c07+Tn2g$xi)q zjcwbu!D*}2YPd|E=WpG*H5+1jq?T`Z%&FWN{->v(emXLHgZ~+xd+xb8RhR#xl>D6t zDgo~2L)nn0Iu++Tw9{?m?ON^YKhfU#uHybYR5Z3m?iP22!>AlBuCg3T4G)G4OF~vE=nTfOA>+Xz*F?T`$4Fr%E0at>FqrI zB1b*P(a*5V(+u;EEc*=40TW-A>p?j?@hDbtNE&Y#2vlS0WkDNK6;-{@j$ZB!%55#qX%#Ev)t zKBdjh0NI-?Y>kPoG}2XY@-{W>+@2&hx#@Zv+2rJ^ZR{3VxmCcbZ0gQ5ad@eIBpWGo z;QOUg_EI5tHlG2{J-UoJxR~upM-Ppgu#IUEg)hnl%xe zh4pN>%IkjuzDHj|<-I2r_rH$ac>=rrIClFn{KmuJ zA+XcA*mw?hb*=i!27GL#dN5tAmQ?Ky8ZFOB(2OnPPv$VgnfP!9HJFB~s{`D_njM7v zU^)Rp{$M5z+#g5~x&Uo9w!@0nYJ!EMF+QUn!QCtaNt?_9S`*|FQ9^nQ%KZSWwie(x>$U7NSVaB0vGD|f&q@ycXZWk+U7zH`x}?pwkP(Jy{)wJ1E??IMN$SBk`U@?aLJV({*T(kwZc? zzl@w$&xYaN;}%e1P9QQ0yR)rMR1F5;zD=NClDVJB^s@p382trBZWmF{5P-WcNgGU~ zeMu~Mm%Rp}#>9e4=tvL)F;pOiYjcoIRi56BbS6g|&j{@s?@ci)3= zy<9^DMDtgI~jeTMHgY(z3@zC_`OPZ*I%`uuA0kt>b%0kN^M5drJ* zc)naWVNP-OIenexCrU-XxpnK-h=T{;wq?tf=$&W3@c$ox-O4cE!-zi}d|+ci)nteA zTmZ$~PjzBfe8k=D+WUWx{pu;~_08C=_1N{bikS_H+m9##$1{&8u0N)kep~bSdH?_r z07*naR1CZP2sXJ9n_N$vTPK_?BTg1!4yhPFU80;Q#!eJqC-Sh9x!9>Z{8YZ` zOd%@Fdu4;_#v}Nx&6?Yfsb6~%fUdmrxaQX5%A1cO{eEM;=3Jg;G)pcDFx$XR6N$B>`TW-^Qgm16)3%Z5qBVi>P=J~&LqKx(#gRT?O+OdD4jc)#_msI zdOR%Z2V_NwF#(eRy0u*|wi@IXgWP09jYAvkT$B3)!5+gl#%fyHuT$>wZ4f;H&sdtNw-)kq^EvUfyPM+JXH`a)zDq5=GbPnnS8G7eRO=0>S8Ag{uGdQ_15!j} z2dkD*KNHv!Whll7{$visdmHdQ0Wmk2!gnUKzC;FeeUpc3Phh(<_P5GS+ zDgt9fEt9$(I@HR;fim2|W7VKWR|42>BlD8L{6Z3+)lvT>b3aBdN&xo*J_bETPGA~h zxOxx2Lssn+6yOiM9;w+zg-XpZZ7!kNE!VpZdoBDDHXf@oDT7Jm!KK_tE;m|WIGm&JO+#t^;KM2{M6HW%jOQv` z^d5(}MPy%M$OJhyz)YseZBzqi&fmmjLx}rN#(VK&v{i)FX66W2Z?%rXTegA*M zSL_{>C-ZN=dpER5^`jcF%~#yf$}2k0FHE=f>(@u;kj(k@ImzH3dHl$T?(#7|ZT!=Z z_dn=}Jv*DbjHCL*M8_%e3{ss2NquBjT%G>KTGwU_e>r~V06xSb8 z-hNbjbsceG4R*E^J6VX0EXRfyVuvynLm8@xJd{6kX`S-w!}zsF)Ki=A>4&s89-^*q zps#NvrytTFtUso{^MvN!6WY69!|y(Z#QV+7DsULno3NROu&FZQ%yP}>BGp8W>Rhqr zM6UASLiN6M0g&2k2dSvomq{GYr4KH|h8L?3FJ=JlJxQt~3#cf#)2JC<3b!wT?soAg zGsG-D2(lXm6l6C<1UuL0V4FSY5oOrgk`ODy)|yPUB(n7}bhU%5vQu>~8m$|OLlNzc z1RfM?Fivdn&|W7TlLsMRXV5i@QZ3I{7=&ka;?q3yLyr0pPlLfW2=-?=_7}nf%^rsP z4vq!5S8xc~!1pSB=s0=-tU)iKwY#!VBk?toSf`W0!eMvVt=7ynIXMvTaKi1$;DjiD z3W;*wQ)pizke#S^YFlHd&NO~s7C(?h_aucgBY9Mc02PLmQK-s^V(!h3P;lJJ*V%-f zI_7znd{*F}5$J#9`5&|5GmNxdkZSc}tpkO;_gd&3GQLZ~>nv;=TA~FWjs;iebMXlD zZn?@P?$lFzbVR+8^4d@c-tQ1l{Tc8sahgCP(H>7Vx#>zfTWRMj%*+l+vqMl;8S(ZQ zsw;)-O49-TtBji6vU-mZlsi)!PuC}sl^%YlnSNOyUX`eNJC7FDI`~lKHM+;H?{!fF z$;!SI^}ZFFQ~xOTzJ#@IRdl_opMCd#&c6Tdzr+1q^nHuYQJc?;`QPOEv|YP)?I*x} zHcI+M=MH|{h^EY(CwQM@%!w4wewd-rZH6MB5=s1sK8NVj4sS%GHqx{Rb_V4RHz7Qg zNlZ+f{jf`zbCB72nUwSIL->56Z^FkdAo@&WPRH8W5BCfFIENAaczMpA6%`fXczyW) zgvQ3k@X;cd7I}0Lxt!=+$&Vb-j$uwp((fG+&HnFjM|}5T7kuhTui~sOXqMv00&ILKc|KR1 zdPp_1S#|qK{Pv&Wcb-z*4h388KBm0?xaQ8|Y7pu0P^NEXHmlo$U_+bcQE=u3co*z?~P%)9jN7-&nSBhQkxNVw+IP#Ib53sJwEkN&GB?= zB8{+~METMH?pm<+6cV5bTD8tY0o?0jsHS+dk3WeFCK0HXOA^zW$ob=0;A6WL)kAML z@NFVfYhZRdn5T`x-;30L<;fok+)sE8wZrDP=UMi}D6+r8aywa6O9$0T6S%!HTBB4g zbK$1p^`TzaKz7)!m8FoOgc*?S|37o@9VAC}?)~@V4yWVfJhL;iIVqxu5)wj00X7(r z024$u7%Ysz0h2*OLTPiD-Ptgkg8~u~NhlE|kjTO1s<-O?{d<4+wSP8Zf6voL>f4%? zW#LYeTBG}E8+Jz1_rqBr4v$cQ);2$i24ep5m%kXKzV5o~{t?{GO8k50X=8LN>K=$L8F`rxt&2n^^I=Jj0-l`Dll8e<19EeKGzaCTum)IfN$^0%)(qQL3L>5DsAM~=smE)XhTawKtb)U!zVW5f(S4#tBLVt$zr9?Ef z#|TE`CKQBwSgH?zSXQaJReeNLf2pXy6y!%)=_vsx2G%Lc^NRW+5!Z{P z-mf+JwR$(-9+7)8UMyc85L!YC>}Ru^t@H355w$Pj#bB{8#sK$*pgSRbMSQ*(OZTC8 zFX9{GY+ZzG4Pw>SmsIHmS$a{CF%5$(Z_t#jLA5cVwq(SnjH@nV*%ac|xviT6&Rj<8 zNh`T1-xDVJu-X%rMq~b=h&WW_8ZF_6YaP2+3$MQ<<(@qScX*uj=j^Yv6jQ;YW!AaI zzwW>P{+gN^MNwQX7d5KF`l3aPdV726BX`3MH=IMc!=HEGeK#msj^oT8gy&w|Znv>d zRaMXbkv{jeY~8wb&YU^Mv>|nU@%#NCv0?o2)mL8`G&hTSV<$6a%%G=aj!>n*V$NI) z0SkwKjp?6o9{^A0A%gk-H#9WNo;{n+#~KcW$z&3Gi$@-LWO6rrKEt4MEGJFnv%mP_ zi`A=FXEGU{=jqo3Ck(e8?#wmUT(e`xj)D(Pm^xkfZ5U^3*ktJap$q&MelW(3dho#q z>1{dB9|L?!(=_I^udO6WKTf$H$YFz(!(FJ>-|ev-=wS}@Ge>$IA8vDevX=SuCgzKk z%vV=30QWCeIzGG7ar9E=qZQ1t%N<8o2=6Zy-%es8&#RdKwc7rtpD};Bp84)N%eOzZesitu%WEu%^{YU$+kosJ zuRyZH$l(1&ENJ%ev~_p2WB)Am_385V3fFL%vmf+wsn}Dd)rTy-W!(1Za$h;KV;aJJ z*EBLz<{YhXqHjzEH(tt(myod%Z8(L|H2ILH%kRy4J*|FsOHgbKlcuQD98=m-LQ9$h zvbUBv+R7Z+3Rg#^v$M+8T`pxaXntucB8>@QYlsDU0z;eAf-dkm%+ghkIaPWxVy=h) zVzLpjJ)(5^lx__@7oU%lhvT-}Lav)N>z$(Gml6RX{N!n@zaYv6+0jf-4ep8raNnw+ z!;Bg3P2N***DW(LzT?->QAcrY1-TtpniA^Ppa|j@UR#QkY?;zo!FE?ky%m_Mw>`#o zBy_%)i+yE$ZwcF1!eKSk5-DFqy5j=+LB`5U->LFbT#aOTeoGN|}h+`erdZL1+-exemcX11a21<_So>+6TUhT?0PCAHd5c%73u3qycEBmNDeZhE z-~zHk@18Gp<4`FCaF_C7xht#;$9;n#Whg<$GW>A4Yw%L*?k8LW&)NE)*ZzL;|M~uh zzk_B!dGbGhFeyi~&16E?NA&r5;DHB3QKa!K=Ev1ouc)Z_kN^0ORjXE=1MUE$#~ypk z>_>5qk+^{juh$EFp>8LDnDcp<&C6ty@e@xx0iu#Z7G8~H3FbI^Sf)&wa^l1ZV_v~X zAwW?$ckWzz73NsniPOng;7z(8dVc_vX57QS)~s1Ww};)D#q3j0Jq1jMZ2+vWbK_*_ ze&|gT1OYlxMh;e6!=*8yw%=WdGAD8@3xPx=sh6Gv8gye0vQRZ-Nfv%PU|s zV1?c4d$u22&K$)mtk#d0yY|nqZ!fcsq#S#v3UAKTc2&y58FnD!>M!L7YTWrM?YU9Y+~$YiU=XQL`+EC8~Hc<4Br{6e!&$VC*? z>~U{j2Vlh#grWx5xVxS+05v@%=kL4 z>yPB`Km2c;Lxl(PknMJTF(6K#WPlEA`H$dEhwU`z zk&+sgb3c>RG(llUPXN}>^LaKF!|p*>K$aTri3WF!@OndF(xC~g)YsP=S3z+`Zwri9 z%;YtjjG417<{*Cf;C=VqM;*qEDN5klvSrH{lhQBvxN&auh^bTxRJL(G)XM*3Z_dPN ziwcYtKolF_DLqO-w?`M?HJstY4?kS6A0s7$vGL>!fj-sa@fcPe=*f&&0p_16cY33s zZ=jy6p#3DcrDhf>Z%7qVYn!+m$X^UG_QFRo_3`Kbd|zWNCo*=hUwCpKtbU2FRe z+SRsiuC#r1x$TQfZJ({M9baJupntFo5Aoq82=@<`y7o@B3}=|JGVb;1;@&CBXod_G z2?J?l1D{j{Y)s{^N-5JMdt@G7c0C!~oq;!dExLnv#A#E=eG1EXw=}W5J z5w$abF-k1~cXLFg7HSaefa&&9XB)IK2W<%Va<;RA%ce+6oNElTjZp!%Z%qmq=wAX& z%#{*sB^-dVt4PYlmClgT6;QJwPrJ|E;c;*As}K9x8-tcrap$cmezn(nr|fuCmi{0r zPYVi#JK8sN-^W)}J#a}=H=%5osD9t7TV}RtV!a#7RTsd$0q1Ph#t`*cL7aQYqm!j)@D$v!x?Z18>-T%}0dKco&ieWG0N);xx-%NO z-^9@Qy(K2L#AJ+b@(5c!@>VZt2npzQim_T!V}jirwl+seXIkw^<2-6dQ0?$*9RV>H z=DH#p7W)plha;YyNnvL(>7K#tyqnpxL2P}@esbbJzo*a34}Ue_UNCt`?Xd8~8bfU3 ziG^n}kx0OkW{jyP%e}Kss6O+|Gw{Cgsq?WU#9}c6E7V*3$1cVo;5Wbdjd7Cj3Iqp= z5kjKTC|pi5nJhpOTr!C6_uqe?e%v59oc4+pE6kfsm?k7Z)Wd(Tx#k*GRq1KNu>hUd zU3cA;S6;bz@!}aXW^{CP6u6_**4COk0J;K4Pp8vxV(@W8;Ti{36b1PH-%st3&1NU} zaInCbsi>$3I#lSk3%V9~g;CnXnHHf3AAAt5?usj}Sh#SZ`PZ^!$&!^TS1w(;6z&Y% z0pqyOKKm@AYX!!XpXVG4YyfKAI6e5*&hrBQ%i0ct9b`K?&vaT2Wtn$3afg3rdGAi< z(&fv~IEo(nOpD%;`q?tA2Xe5t#>=!O@xs(*FGscPDvE@w_GV?J4i!B8OB-(6~df2rl870f4> z+uy&)xwD!X%rLLk$N=|Ot0W-%aFH@xA`e%q1J&Mb5ywUkd4adU!{3>54piAeylT`#y2%ANC?eb= z&c-N*6_J4HWuVqwxf1k3=`IsGi`mW;n~Rg~m;$m9Mg}0;v0SxVTjy79)|eF)0&GI^0Dd`+vdRry4dHfIGa|;FF-2 z$|ilA++>r7-R5V3dT?oVL1DAkwZUWG6t_301+1Hqabxkk7-lhRj=8c4y=GH}?JdC+ zF~il;V5QtsLb_snHX_z(!pkDNUXh-4E5Fg?2UYoQfxDAPw{YsuSm}C}yOnScO2Tg> z0v*+p0=HfhT4U&p2ykzW@|dt8Ece7QvCLo+Y1Gf#69#5~^+vD|i`J|43 z&>fTVX*ZltE~P-j^lA};^V<dMjTHbk>f9+*)+e6Iv6aO#3{rm5Kpm0BV zO4=6AVLtTGLyT$Q44f(}E8Dkk--O8m@c848Q_FS1a#pxM_uO;Ff6uMljrlr&3y^|h zq96$V{1$hdcKm967%%w52q6a({<LBLxL>+FNGAq#o#>>({S0 zIx6OLvWjzjgK#(C2Ve{$&%dW<4(FUe_WhkWk9xG*d8~zev{5|x2m6P&GKW_($F6XG ze2L}gV(Z~~+`bu>w-#95St{*cAiX|A9W9pI{jO%Wr7zCDR;_%r)OGw)*B4jXzg)>c z`|4`zSGpzr%WJHFa`c$I!ushI_D`;`LHqb}>*p)1pIu`4^b*U7oD|xjbAX4J64>u`*WS?JZWC0?xXC4EpXB zx1%M_=Bv1|>11rGj6pO>cC1R;GezA|E)J&%ASNI8}XAJ9T^T&wUo2nCC<)bXEuXw+POG- z_~jxJs7OE(sK_Rdvf1Z(!mV5`T4uYME92bir2Xe1`<=wLmXK#8&$9xS<5;JOSaeCn z2}7)j>QT3Ow0cd&vayn|RhG6Xa=oHZjyL*&dUBnguk(;?DuI91sY;z&Y6@$);y^>l zy+Ltp(p(Ke(ikQ!38^U|ZS>nW1%%B3XLFp(70bDl)E+0awI=xXBIptMT$;La>Sg)L zFdGb9OS@l$VZjznS+A7lc~BV-NXu2aZLQM!!ft|sJmMf#;6J<7ZOK*$!qx1-3L zOAFbAtuxN{#N~mMGLq4t4J4)hxP-O2!)m98^!VJ}UJV+o(CnKqoXRJ?ongJuc0vMP zx5YS`WDOHZhR`4bTD~=jL9mTcS7XH1lCXEBMCeFhaF7is*#PDO>I}*~Q4PljVKNYx zMnmeZsCOjJ_tr88Zujrsq`tZ#^PeaGV*=CuVrrQmCjR!rq-Yen0*}2p5!n6r-*0|q z3?&OI)F5Lf)LG&F{PWM7IdVQvCX5e^eHs?q^IwdUq|Vm{o($rcy@Tk=H{X0i1Q1M^oGkzR=Rf;= zKE^cuc>3w5jTzB%z|s6Kb3X)Km+^f8H(^xq-FM%atxRSY`v)F)!04{vgoDB0%t5ek7HQH#22xLcC6v_Q*r5i@^5n!~sEkFS7jbXN@gdeUU zqt!}2#doJ%0QcRs3JqKuNT}UWH&%Mmt7HH>+Kaf361D>vUFz&CvtwWsUD-67O%Y7g9#wN81$N#Zl3RnAz+j74 ze$JyltV);4_Ss(MvWRn4!hT!GwMMl6n()s^%JW2eNtV|m*~JZ-w9zfT;uW|0A4@LQ=2&Pzo zkrPIi72(NeBLa}U#ZTHm{`?zLyA8FKi8As|yMs&l|l6bRFxo@eO)* z$<~CYJ|F|!8@wtUXp<_uqH%R$xhd}7_)1+t z(i?R5`ho09mq!N5_XL!lpq%rI&^iJF3>x6*J!uV?j$cz$>_{olEj7lR7=)D(yGykk zwa)tx>w3eRPst7q{VXFgrcwwCBN1i1NbO2kaurO^RAykg2#@T<-@gCPAO5ZvQ2iTy ztPBlHS2CFlom8Zl`}*sz3!WL+%&Y+q960cA2zNu(E?BU@aKQvP(*G8OdQO~XE{J!^ z%}69tSy|cE)@I)4dBQ!BNEmPj(3|&Q^dg^q_8D_}mK9d!&Ye5?5{xNR<8|%YwT66# zm91O1nu8L~x|lumjaQKE#-U+3eE2Y&zmem!AT-G^zo@EeOud$rl$h;!bmNy_e%X9; zfb|7I19bVHgZqJA>wZw~otC5Zt`8rz9l4GP2Qfb9bQI0xP&>n0+hHNIDX<%=F`iWPcO4UJ8`)U_0L zJTg6lKYOYwuIXxZmoe7dlNtitm;2uVsKx;s53MdU;_sg2HR^{$e`CC+Rnc}=a zW0v~t*M(d^4|8{`jz@|88HvY8R8`v`E1Pu94rJdPE|~ExXob!8c-gKmqrNe zvkr)lDHE_}6FQP&T1P%#NuYI=l9nU~qm!<*+?&$+lb-&Vw=>{w^r#y=@(XYjw*(6P zNl{uW$v27YGJoq029Vgoi$$H|6O{YM|V4bQQ;0(`*Wc8rb)A;tVjBKxqj} z?OqK8do}>$B)LP^{@6kyj0^zo11U8hCHW8;OSp&A@(|9uSbD33iU0G1UZ>;a#1ALG z*HgL|$XIw{&7@wsbg5xqiOz21K}xEq85$!VMzyv~_3hi+gn%Uoo`2sHgi z`#c}Go6p>sEifnk1&rQ(_uY)H*(qVi$HynmmhRjT&h$^%gZVzg$(-YCC-2Ib78V47 z9v8$o3?K@&G=i84B8GnQlb^D`f12TLto+Zx{a}~%ot))Jr~Tu4 z?xRO6@BM_qMCzB5PnYxiXV_kw>fCdIuXNp=95b>cIo&E>+wtM$1la?1Rq{x1E3#Xgzd;;D>PhR!W@LQ*m7{8 z<(&($9a>;Jv;bZ$?_JD%d?k1AB7UTb87y^-Pr*)QteWjE!W4su(Xia+7h1foR?%Odf8&%rEQgecBEn-2KW4f49 zK)Iu{*x6mib(hK=#iT9eYAtd?Ye~8Qc1=l6-yT8Vo+hUZ0x6=G%@cAdoRjQ`3%LmC zh$w9ltv;e{^mzWDNOwq%n>BK)sx6mUfcr&$`!zww&0&_p{b`W{xNlO>_i?jZ+3W`> zlT&1m3DD}JVoT7|=u>sFYmFYauG7_qpwbYNo1$uc5cBTVfrJmruXwqaJq}ob1}9J# z)iwtS>UVu8usOgs#>M8O46i_TKzvgSMlGbjLK>(N2dYS41>09m`l_(sY6v@;!z|oq zba9FK@)2*V-woZ*i!u*mk*5>^jqi$lw<@lbZP$tR`z7*%%x}WjC9y9hLWhdVy;c~h zVTWqje7UQ)gw2=8eHpD6P5GGHxfdjM0JD{Kc||M|avJX4KCv&N^~XG2QMD~3v_+8Y zIP05{yGoSqVzD#Dqn}S4>z1JJycf-1K=$?k=?IZ-=v~56E+9b90f-;ai{kc0$zV(w zN@&n_mwNLhDoykIcfCmV_Y;3L!<`1#JonslhLbY9KK}UQ6K4+C3sT_H^_44E{=30_ z;k}X0q~$^Mm_j5=}N=z@F#NpKtC&3r@Qr z5Ol(15UZ-HGEShVsOWr(V3;lGu=4T8AJbbwzvvrpym4~TS7V{xQ}ldtxf~pqPF=ul zG~1Er{$G0OCG*XB;e{6_&X%R%e-7?|^#eJ}yE(_PI`*T7n2)Y!KL06u{A$;SOD%8A zu)j6i4YGZp0%ss!k(t(*ZMat1J4-#XSa|OuocTO*k>%Z`){mAtKU#){m!rDV%f}a6 zKfV}+{PD|}_m|oL=!X_E0Pe#J?a%<|hZb26E@JR?q3ytYY=;&&fbR$9Gw)r(e6Yf~ zZ;rLEgy}7|0^GMxRR+p|ID8h!9s;qZ0M=nt-r}d0Xb#h<2l!Xqu9p@2Hb2{2EDe;fKw)StA+1sOjiGRF^m!UUM+e=Y z!J878*9H0m%!eM6L7Q(1vLN08=pftS&20g)#Ro$f9u#g}zy*Vwj$(8oY){Dz5xzd` z0%8K(hiYUjc3A2F3J+E(edTI4A=G;u&3-l)68oa=-l(rLgke(~BB3ONGHoGF-*=RkOX7z;~{{TVkvu$DMH8DSBPq9Li_CODf#l!=o$uB@_@kq@+ zp(VhzhF$R6=!yxjTi6d4g9ZH_l?IcTDyJ_d4#X5%MzNEZ zROhzaZZqrLH{X2o9NArrPr(5E-w^J`Nmf=?()|>;rtmypR#tZ3efRC%yO+|_;QLvL z^Dn?X7K_n;nN={nLz9b91B=V$s;H<)CX?_cDE(+O3M;8pDi8?3$3vkI>=6Ehf0dV) z8=(g9K^QPioQJoJ`MZOSw`|#Bz63Z{X=y2qgN4IIA`v(otav;gIAU5~;OLo5#_#u= z;~t>nHwW>;QUG@l3g(;he+BM(U@E|Ui}UD%%<&tUuYV>SyVAaIF0*&GWA_YspiFF! zxLU%F?qY6yy87lq`QQ@q-Nnu$3z!2JGKUtUvE}`x7EtbJSVyN9=GZbDw2v>boQ6Ad zZ~>zWbKAiM4%!YZu<9$Wcjh~x9bCj6Sm=6tzV+RUEeDo3c3KI>&3Zu^M+5 zAT>$ZZLt!5y%^%_r33utw+%DbVrsWaOR_9xJJqtE~yXDdftflzbThxDVBU zgm?CpyP*H>FH^fyD1>2P1g#?^bwxb6u(#Et)hSp)OL^daZ&K=s%Y89~FNk-Vn6oP&>*Z>Z z?0x#5?LLBHJSyelSg^Y%MPSed!oMf(?uuwQYvLE01A>ltwl(SkMcy+YfHrm&gd3t`Luhq-2VfX*ZbQ9%?J6z8Nn}9oh@0i#PEHl@G6LLKdY-r zb93{*C*0|2pEz+sRaI(vpB!yV&k8nxYo|dvhGl$m%FG{YmNDQ?7b7rL(=;la4R=qv zV$&CMS7bQgQ^)Xvh3@to%DrGxVM32OrlF+fm|cp_goqJB5`+ixw4JxEb#7 z`s}mM()SC}75opHWwKaN@7-?KC)@Z>9 z+G%@xzWtpAuKn}bH|DW#&gb4f$6T0rD$534i2EhXbzF4AcpTZ_%M#Y0oKFP<`8B^#2i~u zvMnaoB}jczY|f}{X-`u^ff3ARFQ=0oIzkDA@Icyw!nwrNSHTWdtDQv{WRy#&y)ae^ zMe_gv5CBO;K~%V@k;kUWqf^LW7299Np?y3p=i{Evu-xk7Tl^#&)&TBVucuj2HxSQL ziu+L+v!4ChqusB`cZuX7`BVf`QxJ1u;{0}0f}IRi$o=X%j-LL<%{`zk<^>e zKvQ=G`CLHgi)i_X8{r;OdSafTn71dOWIY1FJr_~BV^~ugBzbqj)fM5oBXVCn&=(Iu zf1`_c7JX@=aHBZrr3NeIfs71$?ty+H$`2;B;kaj{$k$(_#x6_JXrbfz}c`~TPAeyG#&PL6rElliPc`Dm^6_-)L`E1CB%avoeNY_H{- ze74qr2-0t~mfg3&v1dNBcY)*e`S!QwI^Uk}czdDqoyGRUi*4^Ow!OC$IsVZyD>U8y zj^+10z03~iKfH+9ujg<-u+Xu8k?YL`jyEo}zj2}C%?0f1^VrvBJNC_W!OGq_&VBP7 z`Fvi%)9}da@C3z26Q%&z1^J zNpuToh&uYJ$!IM%QUgS@=F7Rx49+5Ad5vOcW5(WG;%qBLPxiKAG(b0mg!+I;Jyo`a zg>6v+inu-|*C&*Qq`NuJHAYcUpxPg$X34aHXZdb+SZrh@O^(PU_&0*&~D)%cvct%pztMW#lP#2YSQuB47)=T7; z43@gi6^rc&S98qK5Mj54B;A+}r^iD#&=8ZhgxR{7urImzW%q_8(C=LVsW*%{#d<<2 zNcaw~gr4s~1a5`@fu?;rhF7nVB#@eiLWH9UgK6Nd@z+lXDfE z`*DR4x_Lxj00m<)b`JkF917ty&Oa#8SPJr4(s#1i?35`}jI@PjqA_PCnSpH{dgvje zZ=icH;BKxtW&F!n4~N6X28Opx!LH1D*$DhG++YecdjVc8rVKXcL&k|SXH96?Eb~$j zW?b-RL0$m^{qyF{GY;{C9%@8gA&pNNa5v`U>B)eiH}BItDEvp0!!-Q>bK1M~Jm-+n zAOmne+{t`WPdr$4cOuvFMRo$E?4tpTPd&F-8b?U}>vnq}ED8{qERJJ-JN z0_&S|Z4~Z@7Fpk0WPNuDrX~1rDf+Dg-vREQAlz*LdQk4~%tN@pv%m@R{LT4}ee-Ou z&vk)j-#44xGt&XD@aMic&e!Jx@!`LYS7&hBYoy^ar8}v#1;s`Whbh-}*-mSmwxQFZ zf`O)f(jMjVm6Bc$h^qs*hwXh80y=Ee0@18JrLN8l!RgQv(pKWgmh&LnTXmCqONwB| z7=*h3k{^?Tg`EIRc-Iwk{r*ZIZYd&t8Yxl`g- zi`)&0cpFb{6oqRDOW}T*+qyWwToYn$4zu^T`L%>Rt0)^hGTLN7ddIlNBxxw(TT7+Z zQqr8}I!lB$eMYx2%AqYjEZ0ZHh6s->Od8^PW}Bqg6l1$eR3LRnf=6v$Dt8r0?GYLp z>c-H}B6%Rm52X3gN^!UfA&WY?TFRvboHfnJeKpe1G;VmReYl42&ycPNkJj*zyGOUS z=Ym?hSAvEvG>$y*@5yv_MU_YaPLX* z1I5Bfx%iLZPM;I%N&(A)1q;kha>jFV?ij-3$B+LbxYG~P%ACfNZw9WhWx?DaAkx_W zUyD#RVzLU-#?rY#z;qxGFxYA~dQkGhYePfBglU*UWv`jb=9^#~!jPG;Tl0jfnXnwk z8Ar@yG6lANb0=r~S>UT~^j_zw+>MXldh4x#RD+e>-Q5KpKtXn5V-E$hFXr55bmi%% zpEmbN0QbqGy@}J|%EoY{;PlKVY`jTtsS&L3PrEd_Fb8w?{dzK)kDK_Tzjb_im+RO{ zcK=+iJLYT;F#W~09aFKkHQ;!B3bSu6zh@q|`vTi*GZ5||!vXFG7h2w3XwjV=nGbZn zAHCRuo->zPPF!w+`#dX#LCtefj_;iXWanPH!1d~MJG=tl_kx56zR$OTmZxwBW@RH{ zvrlO9l2$*$9RxeP0@*>x1KhFLX@G!k9jsC?Z7gWgDBm1*bf(y`S_Pi@e3=vAo-5%n z!&j*e_fiz>i1mcj6qOqEtdOlqxjm)Nsb)l+O2tW6Y`A4H+nQms8JdrU(9~Mcnxp7+ z_@Wn6YyDCpcT2+0MgA6%yHOEt7068zxmM(E6Um*bbd_dX8n9d)U~Ufa_j&}hxhu*m zJ}h$q0=zEnYR-s_X}+PDYcAtk%k;t^Ft$hu&2gbILQ^5?0i|(tAkqCVrM@yZoJ@b2 zidZk=K(~%oD5$>U81xTnceK>Ivql>&=ZDLM(HdcVx-dG8ADPOJOpyS)AokmUePu#_ zt#fFKZKRePC=bLx&qgj0*zHNZsHU-*K@&4&0O*EJ{BNcopo`hP4~|Ix{QB#! z*RNj>pr`Sl=Co+c>GIZQx0#DCzSykyCm#qvY(#Ydj9|=B0A;!u9RS>o;^N|o)53PL z&^9_GBiHbNIa%@cU*7duH&jPIK;=!2;{|&eEYj*Sh-x$IfZoXtmN;tm?8|X!4w@ zL)5JEy~!g1?pyp)dq~AOx?(k#a<)XRxs=$Q(VD}~#(=f26qBWZgwL1rU8RW2Tp6D& zcAy_*5wKEiimKcE(&hly5F_oyYFC*I+P}Mk)|kcu7qqpPq0=Pv9I$h&9G#G|Q4q-J zceu`r4kQl~@g5@HArgT5trELR7H%Q@Dp|Z9{uG6~6mp&FxY%!58MNLU5$^SizmoYs z%KR$<8Dop04upF#sY`QPlJnmdZI_Vie_ zU&od_R;l(Cu|sKoSCu+cEa}`-2aDa~RobqpGTg@P({OHi`wV`^EPi|@KR!bqs*yqY zwuI5R1c)4{u?^R{fPncTG=BqFy91uykgqQi=#K_L!UK7;0SRc^>Q^^=q^BkR*E0Eq zDBaEqH#^DwobVWtpOf61M6H2nEh>IN&3*;?A>cdaj<041Yh2J^rLO{Miy7ooGMr~` zOi$&eySJW(y9RKF*6CGg+-Wwdw1n997~7qOUR)ZiP)BN%fl98s*wRyC&6nBx%Fx@j zJI(>wyMhFIi@t;#;NB7AatZ9TMr-7eY67Fcv%-Di%&dnreWRhO9((Mui8JRF&Fk>| z(?6-#_CJFAf{prLcJDWk+$t7G0QWTiYbkycb7-6Fuf$?XQRx9A0<;T<48D8$aFh8is?H3uv$VOxKhyRXdG6680_3?LqG z+*>N=E2ZvoHd}1(EXC*~Od1{&8zWMEP}%GkH~HCZ5m#doN1Y>q=3V71<^?Nt($-my zIUsXs0mz<905a6(pj_uCFL}sQn)IkBK7c`+(j7#)4aGZqv&63=+-h04fv~GZ{%(b= z)*LGWmTSWHn8c%V^ih6GQK&$0Wo_^&}M>guOtH*6+KcwFZ(orY(C^0 ziiZai!S0Bb4T@Pmre&`W$j__X+JFK^3{gSdwF%=g z0viAT5CBO;K~%l7`S#mysZR@ip3NCr&U2xNJaXj7ym|Ags;a`_FzjmW+O>udE-2Mx zEWmdo&K?%%?aVv8^wLYuZI*$BrZA+N8E0;GwS)zbYNQ~B!#(i811C+TGmKqLzU}bs zD2fsY1Zrw(mM>p^)=QYYn74u3%k#Wp+;_X(M$}S4CsAO5x#gBypu2^ugMrla>C;knM*Txefre zFJ#a;eUXh$r2^Tp>fR-%8mt4{4=uLrpU=EG7wznO=Wwsh;$NM`nc&V-xW78Xwfh3+ z&Y76G7frOqVs}ylZQkUQn|vxQG6!&P#I#hd&}V`D`6=VW7<0lkzl& z#4W1p70p&3=30|Ncew<-ZY{R7fiBLV%j32Hx7q93>=)1_9DPol+hR5fcdTAi&SCW; z%=@UfQiAyg;#gcM8&zAw?#+IAy(T=V%D<7wBSZkW-vxZv6XD)Yc+l@R64xyo7Rw0g-2-~aVUA5Y9DH|LoiS%Fh&xhiGoLOO$}-%-N* z5%lmUTHcd#e+jz74p%C@8LlVIqM4;uf>->76w$10m{CbfY5h~Oo2hE-t)imB z>>xz(YBu6i3wwchr}EkOUZCSFu$4de+;ir9a~n5qoH!HNhV{l6lL4|}bXed{Q(&2a zp3iJ9gZ}b-^SK|$G4J#^-t1!DZD+pP>VD%IK9{uhMWlRG=}oXZYPi?uio2#ew@+~Z zl=sYZj!a=*n`J+^z;$Smb^ihe;C^U<<%31eQ(3@tvZHKY0s7raEASm$Y<+8<<@LF? zy>pze&33&yi#Bf091*1Dju|Yx>MKsYv7@!zKsn!=hUZpk3t@U*06LHz_)bejH+m)D zd%GWFnlN>g?)wa~x;v#}Ch-tDhGS5VpWO;0`Vx|>DuZH))m7J|kfUn1IyflX`q=uV2Gx{;-AtO)<4U>FbGk8vXJMGXE&Y-pdMWh`Nek zm-ZkbPY~fbk!%pft+GXt`wTub-oMG`f8m0Rjzy~3#5jx7=xRVQfEvA zKx2xYfCNK?EasUJ;Y>i+=hIm06|F|aY;Tb(pW+8g2weVnt!EJD+a+2T8@d6&I_4k? zVv;iSa8C-*9gbDXaA%++gmFnB+)qxJ8Eg=irrTytJ62a#R!*2oiJFxfeKkUa{t?_^ zId<%rIbk{|eS;tqXR1F~zWnk_LWtpw4*fwooj#w3xnQB7q!rrewSZ#%{PWMv#-D;~ zfp?yG;t6xV0{YZ!C;+i+zF6Z}X2}Vv*7!KhPkYwsXlh3`#sN3pcq4t^D2r;$Fw;>E zjAjf!AG-g1K0k3zCzFXYbG@BBy-+Keu{XFy-+c4U#F;iXx)^=`(xpqy-8210j45CG z`r2!+8K(!=MI%(rcbG0Tua5D1Sh#TES$i^i2R{AuQ={M_J>ef?mgz*ezma3!%QD|J zc=xX4vSI6B)B{g)cgzl0-#gd7^8)Kz7b>8&hbow{Y0T?$9U$8eF0{P8fO%&jb7Yb2 z!^N&+%dN*K*)L^|U5cfeKDyNQ;U)GXOYN}D>+_g>bF8qd-E&;8&T;LY%k8+pwQDx8 zhC8h&d05##(>XSU8>!~|OJPh++QXzJAfF0W@~ZWEu0%{??hyg*Egq@WD>wT@OzPqj zvr(lrB!J*;k9wPe{<^5PDImTQaJ6LkTs7ZbZikh|q@;TvN{vaSsYs?|Z!YHB%0z%{ zTPdF{Cmm&^vjj^lpG!g@R`aZtm4`*)L6Ln3i&v0) z2)UCN?&A5I1lMh{cnd+e-{%(Zar2i4EjrvS_r+Yl4my6PGV6oZ)?zfjbXLiAX;))0 zl6_Nvs|)BAvE2&JAqOyiX9VF+w%76_Wdze<0`5y>(B^<|5U`__!mg?A(F$p}THZO` zv-<+~SS=YYcLC*h)M!A%;k09Stpt1@th9oDH{jl%R@?j>==Z)-ZKw+2K3pXXmP-R^ zPft`&*63CGddP@5O&kH|hM@lQ)+ zy+}5T1ZP%dtyNPyf|x9eTn3w6j00?V{Wbg;3~Qc|bm5;~GF_O%9n66)$Np~ndpXOAt?G`IwvHlZ zFwW&7_I!rfH`n#reCzHxwm0TU+o!n3s~rI7Hy1eHUTELHz;a*#MkgI!WYN#1f$rTX*6K1fA zNHBnC^1HWq+|MiO?;bRAyb!-cZan728@XwYs$YN*MYfWusf&q$t}IwNcaBJ(!@l zGsyu5N2j5FAIQl4MaoDq0m=i@LCcS#y@lIeLjdK2CHB!O*Phwh?%ANkxzQSQ2JJ6) z3=}!XDkRuoe5x=$-9;@kV^hW643N>Ai@9@g2}Ja8IR`u3UZaeaC<94M--zNp;OPxw z;Ame+?T<)FPvRP6e6QtWXZY7a_B9L2n^pE_#EWJRKjiP&-?AxMw8Z{4G zMRyP#)q9Icf2DwK@3nSleKodxwY{gpfmwZu#jZ34ALSw#z6AOmO+aC+);*Zk;JEn^ zARE2oF-Lrvd!SV9$v|K3)TdaLjwES|@X#xC2GQB36MCb#w>v6!$JpT#=m^DuG#M$? z1~OVl%0qLxPxh8EgBu>IUAuM}HJ$0h3}m6BY-3r!em!+)F^Dr+&zjM5(M1wSYkfe8(Mk80J2@LQnNa6zg~=i*P^C zWqmKld{!sFzMAhXwT!0Zp15PE-1f$W2=`ZKTVI=nX7}-Gc*pVfB9{U8Lkkh^?=N*w zn>)b$lgrR7gJGyk97irWJKRCGQ>FuMbga9ejZASu8^V|uj8+HeWWx$pIz{CUa90}6 zfV)JSo;s1#d&NdSwmLt?i?%1VrXsa22E?>&iP&3<#cY|ZxWrGg4=foQ=ygezhqeZS%@6>zNUskjYw+`z7I_0oe_>-$VF2 zMecUO0@H7ngjIy2aKG2>`e}%{I?k*rvi>6NdMxVvt;h00&{3Bn^%-_+f@}=)FME0P zeAm=1x=o|igR(apkSN?orjns*VW1fEVGR{yP||3nI9A0&(}_%WR7*o89HvK}BJY~v zhF1{v&_*iw!ITR+1EBWyX#{)I3tT&93frfPV>RyHw49BA@)f&_gub+1m9R$JS>YKg z!AvY@oC#otfP7d5Ioul}SYAA?^#FW5*aQ7RR30GWH7vP`<$l6(cZg)IBtI=EFAH!L zp3SPeUeVe$wbQHSB2rgM>@DN^%lW|?SAQ+Gz8Yt~3Tun^ln~^5Le$H1OIY(HEapIl zM@Uah%7?}70N)+rK#UKSxY4?jBC2#{}U%p7zLEg zh=&0_?2vjQ(u&yhVZQUuJB>XTB+fmb<%iQHtzmiQnP&`u8kC1KfrEl#g)5>C@8-Te zTTlQ15CBO;K~yj+V3T3!KWmvi>MCj+&gcW+6*>uX{E@la`^7JQVLnONVNFeq@n7>` z1umH;mNCbR(n)D}=Z}B(BS*`J|V=1`CG zKsR%wgE>*pAHG-WtFjCy#onZCyw?8qB6jbEHh}xC8TR2yX4h08JG*}|OW}TSq2=JB zQ*hVAmzWcmTRypx`S23^-kE4*KeEF1&JxSpI^18I=P<*4d^!h>GJUw#F<+ZrSwlDt(xxVI@nG!N|VhJj<0%Y~r{fcVZ3+Z7Y~(<-!FoMfYH zXPj>f+gl^f&ZLkp*1A(_HYm1vMBT^6-4$}ft%HyE6%lB?34S0g4Hj#iY4>Ef7kFqG zUhVMuzyl8$&glgJGB5DRfe<$TX&$f}HXk@pQ&UqxXgi%4G>;PKn|*zKZEbDzPx$Y@ zRzr2dq<>efT4g>iy)Lt4HZMREP1BAaKW=u7pIjgt7NcOEaT{Uf=+UFJ^E38Oz5C(S zC?)#;=?h)2uC6wEHFLLTz|q(hZlOP3noDg7Yb1H5V6L#q1W`!z1g*wS!`F+R?+?C|h#dwaWaE1=^! z&n}HQkh2`=bsWeshqKHlP3*BJw2|4&VA7e-Ft5&ZytM@2ZrMG@Ha^WdQqAm}%K_Qn zS?qjkf$k@>$Z}{g=I?!fsqMXsnD>`4C$6$U``}`BN44eE>9%)QZ~*tW7BQ#c?f|$W z*=IV(rm;HNS@grJabgf7HnzVUGYf(uLpc_a+rn~lNQ9;v-;wfEp@Wo$)))|)0t)}vnj?l$GP@6 zx~9MwU(Z4#>t&|phM=-7q-+i-8@zaIkwR$?;0KZSj#iDSDEUuQ+U-8OQ zg7|_c>dM{IDytyg;c{RQmecbx(j@YI)w<`*6!eb-#N!lemC#qg_m(+(OE4FIKE=be zLw7>+k?EqIWFuTlz|k4u`Y???=yx_7<9pItZ_1O4C|GGPpmz8@xu8e)v=Q?Obo}p) zlYx{nRHAmK)sx@r`N8p*U+4;H4&yZ5guy$tzXR_Il5J5FHi+M$p`nI`2J=%|;QU}t zhzMKK%GYL_kFf%Wfd5ke93z$;-iM?73*<6TLQi1ZwrxhyZ8Jd4B!aU7jd}g`*B4;R z7zfOqJC}Znp1=7(=5F$?yY4aqP|e-pj2Sb`XK37_#~**(NF~OYa)cRHX?i%2`Fr;4 zp`S8*N&mIQKr{4Va8~eb7I55*W;ijR^KG}?WJ-_3+uC&iv`KEKu4V42>KozPAkvS+* z5~=KV&ad0;AlnL7Bq@?&4j@5*1POp3QssmUM#+kn#7t4ivb^4zH6LdFiGF9gZHcq@ zy&wcpQn%e}zKj}Y?NzH#EEKCQfZut}KKnfT%qsio6%Hc_!z0`mVTT9AdNamEqdbqgN22sz@F4(ZZ4gRYY8~-Whi#Q`V>YD1oH6LfrguR09=~$fOFKMtug5z8aB+;cI<3sHWn#|865ms>$s z7HaguX3CJNr!~yROQv0hb*-MLc1Z9X- zBRcjo35u1VW1?1^j;k{bx@qcC2xCp^Xg!v-K#WI~(Fl5T!Xo1+Rkkth5la3E;ZA=* zl*dK7O(N}#bSruvRfnmXVHBn-?3WZ!t6>ea`B+i}{cgbB1u?VOh@~>JzST9^?8M)M z6nr`YA9FOJSL&5qSRD2_M!b$fK&V8pfYPuPlOf8r6yIL0UJAmBhk|l1`m~~-RzeEQ zLu0jQcre|7{W{7C<%@8?{uSLG=07+%IJk1}k>f9K!x+?d1h^&22FnUYSY z*REX)fMAT76f@xq9D%n4imO8?$7Oe1F4rTT?%v6_0Mn5%=aGn;;a4ehd=cD{WsZI{^mEoxoM}}yu$E< zzT=KNJRZ-SJ0@JEmX?+S2M)~rk8{-;zUB2h5$=Du)&Alt2f+Q*3hN2LI)-2vo=EW5KHh{q{DAD$xLmBm zGL@XMpE=vmxt3;X2t>M;WTNs&9R|?cxFcf3#B^L5iAf{%1ZbX#tLd0BWZ-_NPU#Dg zZV%~pV-;hE3ZN&)!`Qz9zCB%w2mNy)ISWe!A06`20i7Px35Hwh@slF~awtR&2FN}? z-Q^)KsALN!X9)0pBN6A|4)J@LJi_FEq2jM(>7OaW{R!&auDUk+`A2H(kJeZWxI4Fb zUHf$Du&#Ae(#J?Yql1bvpX^v^4zj%#l(GyO7Ql3}3E4f9z&%FbJ4jIgAK)H1ekute zo@r#Klge~G8H@1ab=YDMP=0ce>+Ev%WGkCYDxmjIG}6p>KJmr23^$iAsJ>qAUhy_yq;B}Y9WM`sr^jZ&(!rY`I#(z zhtTgy^cNy|PLg*itdprnm~xyd!<3~JmUXL`F!6cN?}QpY?}K=RP3o;gYRde-d(NH&=lIM z8i-0qc7Y*gpJ*1>pYCw=C!H5VKw`7vNsM zLwx&g4&ZK<+`M#)?M0C7D{Uv2TW*k@hre+AlQw(;#!^zHK`h6mB6_TgSYRGSzjZUR zby6lOrt772Tt<#JNW*b)q(Mk0#B_p($TT3|(=iHIPuHQ#d4Jf27GO1`H;89SQ7pR& z+yNEe7m)k>Sn%HC5wOc0+=8Ol<)f-}SP{E5@rW)Q@$kJ7p|@5%8Wj&mrH+Wy9*}o? zgq^yu&4By!Lwt4LB zy3pg+K(HTEqydc#X*8{|tWGh5;bkB^tF`h35*!_4Fl7vQimNB%`b@nFFdgGL}geO>DDS959aY}&=wdEsWyre#xCnrvpn4*Pd1UU zgn|vSYn5UR!wS@hkoHT1Zr7mO0TawPeEftLW|vY}$OqL@L<7FV!lD>KGhql=d=&gj z&P(AIKT()gY9zdX339R-;7&jN1OV~L7dKSrP7==l%fJ4463x#8z?0`#Gv66zeuCoq zJhI;ej`@tZ=?MGv8=JB7_40o$r#!!yZw?tZY3(`e&M)ft^z*0xZ`y61y93k1+$EYj z24&tiFV5VjzUlupDLMD#`HJ|a<4)%5mnV&uTB5nWv@uhRjd<4(`)bk&oKT*wp zg}I&SCe`Ku01yC4L_t*Z`H7mF9-J>1Oyz!4ZTs9OntR&cZghW~d)nXs%V2D%qH&n@ zLY05JYPnM2{*OWZjbGSazs>sEo!skdxIf-wefc)a*%jPtci7I|V|(jv?)*I#lkafn z(mj?d_i_MtRPNufeEePRPv7Lu-!5l7=qUN>t%8wo=jPykW|a+OJHY+qQUTy@kX@K) z7EQ84lwy1-CSugf*nv8R&F!!!hS4S|U61(AG{^w-;pD8@R;F3NNV!HDTq7|atJmw< zU_6R!049 z!hIKW?eg-EMx4K|wQY<$x7Rzidu<0azTbl_mIgFw$W5?jU&jF1ZXDr3xEtwp728nM zNMjLkA|lV!DG-LGEybF56z^oZflS3kAUpgMnwUrQf?F(yr0Ik*k(9<$mJ=-$g!1w7S1uZ;=<%2o^bTsU#hH)#k6p%|n(Wogz_uX=>g1uGacv7rX zrxv4lRCs`3C)h5c?i7_L2>p>Pd{1!xT97u1$}UO|$n*$d{e%oL0^&UneAhIXy70hJ z4W2&&VUFii<7B)6a4*5MQK{97Ax}2oPWzM*pET@sS-}L1d73Cb% zzWD9)zj3}+z5azMWd1PU)tsKasapTPHs;SjUwqA*e0Z*Zes;O(6~6eh`_fNw{R?x$ zO}{F0^ZiY4<{zEIH~{)(V>k6up1WAGT`BYL4m#gE$i4mp?$veNxjP&e*NCs)!M$_` zGWz13PPjdHul4P9DCz;+7uH%XujAf*fP3eD?!$+jfBJ^y!++x5Ty4pDZTW!hrBxu? zA#5-)yncuC54T!RFSndt;W)LN2e_l(NGmpxm`%t)%)%WbA9LkmLMASt7*ELAq|1oe zK1#V1pG!G&jgEY?m~C`sQ`StTb*Xtg*}gVi<1ydr4!V;|oI{K0}h+_#ye}eCg3*AxS zVA!?aM|Zk0^S)6c8zly}>xuL<5ucE-Ch}1xJ;LN)%EIG>->wK98oxf|_+7~IRLr)c z(YhzX?Q-*nuq~>VS3P-EFX$+2i*7xK=?jMP7KCjIR5k$(J{Bfp0d+E@Pew&PK18kggN%%})oPS#@^QuJx@;J3^~y%Y7u(WiPmw>cJ4$AStxJ`N&1Adg3s zsTwyn%?PREhVQOX7=urns`bF@l#P?3)f%l_gGueNn0pkWRvnEf<6#}tG0aT;R6EM_ z{Y>3TRru_`6!?D@TtAcet-Q2HB8O$=m`sNV9bw9l#s;x6(p~ntNB!=Jpf(;*NB#JI zCL(UbcoN&N47nN3c7B!**dtd;(Fr{z^(`aM{^{?=WV3-?+t+{?Xv4?Y5L2jvcMfBzxw zPv3BT@G$qmH@G)eS@S-7Ht0C92qys0`>)@Ld*(=66U zlVUZ2-Hv9v*~PKyJllZA0Ok3^o7KuezC_-25WJP)%0&k*GgDm6ClTZ^q5CJ>Xwga@=*^x>XUoI5|Di;A@w)f zj-{*+$5W1hM!r8K^~Ct@sOw;e?)6FAbWF}{mgNni{H!QFDe;fXSP%(t|BXU^Ma16| zVTURn)P>Cv{?V}gsRsMbCfnYqWtZF4sk1@1lGQvQX$v|lc>sLqhFA(PtnW^esYY_5 z5fd_#5jF?+$%u+!z}@8gcvOKvXM$RSC+{Qf(V%X4=d$sjR*gs?(gDY#LB;H82af|% ziyo=$m8*V=xQ8(KJ`wex&3YIQc}~~4;nk{POv`|x2dzC?uaCz)WANWa;Q3lHpaP5g znbO15PNwZ*`UavrDoQ5b*9+1%i5!%bK3N$eN`@*UDjQU3LD!6#4C^V;q|9feq3~9P z<;##J&yn3ssn67_Q+4u*I62vXpSKcHK$YhLxI2;wU_DhSN)5M8+!6=vKNZs_qB`~} z3D8oAl_OYKIoTl2G_wV`FO2_IgF9ETAl!}Q%!LYy_xFm=)MA-d65$^9j%)R%J{oRK+h*wwHN@2bLqNxc4zV+O_ zj@R$BynH+N(k&KD$SiYAF9ovSIEFr3<}6nem~b~7T`=+uP6$MH!k$Sv3QfrO8{vX5 z;BLj+q$8IQvT-?GhkY&j0y2>OsNdBW=FzPsPKTn>u@HYOBo0JqIz}@MB-cRmG2ECP zjsV}uU=Y23d%Yrv{bNB1d)GCH=&s%-47S<^TC9W3)}a>1NGm_wA`CPM{VCUxsN5Bi z_XeaLy7U4C{f-A#e@`S6?vE+*Zxrb_M0$!zyL7qJEp84wejBtt8nbR|vhJ<7>~!1r ztFU6AS+@pi9bkusSzc@+I*N|ubgEH;IFXW0!~yQ8a3LlmItcBFFx*j%eisZ2LTXS- zj~Nx{VXGjjdg*sgKf^8a*fDWTsx2sh1`q zas|zYY0-~v5PA4qu%xKh;a!z$v1dyz%)>l)G7%Vyy0c!f7&Hv-v0n#SfcwJu?>4xL z6)V8~N^utM=Stj_qUD2<^MC7C-q~O~{{!y)eYW#=+b*m{rk`7jYW>o^woCVdX6JA> zbspT`eb93CK@Q^OmG)u{{H2M7DAviGTjzRh4foQm+?iECcH8t)C)U8VIgOmm=g3}; z3&kW4QAju-a!ES`$n#vI&49aWHkzDfz~gz~eo81NK#40uHQ14^FCg{=gyZ$nV4P$U zG~Gak>V)GFeyCQ=#?)+r7(JMb3_iBdGsHVK*XFSqQ`j|FXY9~6IWw(}>>~S68(`f6 zk!iE#7P&HuT_bIdp;l*qLhOx8hib*WJ`uF}79wpR^eM^!?oR;XRdjOyEfJof2=~Ko zd6VDzh@bmql-ty3-P>Tq^z50N>&DOJ2F`BQr7OWP>(UhkQQ~)28DZ7VXr?l@LXHfLe;vNsz*ctvy84nq&?=TH1yIL zbfb$TL@t0vUCMYp0x^^;HMN+B2EzA(P#gS%A0BKHdg^!~kAMYx|Ya+gZn zpL5d3N63{YY;S*)yZnId%KZ*d>lYuionLFcbie)5ecY9MxvTd9*=<+Wa@X$X-hbHk z?l)}L9_Fq-eNz-}Wf`6lZe&>;%VE(ine4x9`Uav`pyYZM@RuU|M8M(I7Alt)q|o02n0 zX(YxE*9!pje1c^f#7x{U8;J5FH9Ww5AZ)@NTk8$g@gof`AbYySo^G`cws0odM_MfK zC9pob$eLbk9a&__wDN;ZLT>}#8FKA&^V^uXfyw~)Cx~&HNtGW{#NWxT=a{%xlMids zmVo7vfc58f)(y?p{Y|#^u(RDG9`&)b4>tfyUV?DZ5+ZF{YF)>+KEOw9&?V>JI3qfYIrt*gIOK;q((PBv)iiKp1T;Ku*fKdB&?jN z)8O42rjq(Zf{Zn|N=f#&Pv%M?Ke@>ja$zituh~G$U!eJUtaInE;2pj+B>dHq_0Ku- z?k?xs|IA(bj^*;hwsZG!7az8szt4W@e(UA?f$RwPE9-2R*KzOMZ@Kn>{o2FUs}FOR z9(4X;l`~&!9rV}+bo=S$_Vf4AH`m$#?x$9xY@b-{npol-Z*`5e@YP14l9D0HNvV|J zO9^M8(N*|No7;`B7MpE1?%QYK-ZYzq$10jSDP4;u0eyaixMu+FwGh%sjXW43$3wD_otMxdvPsCcIzXonx1werZnY1!*hZRdfO~*@ zZm})1#F|;c<(D|qi=4-soJZ>%2mQ|7ny`_GPs!5nW%3jw`0Onh8&!GrA@=~ks} z0qbu=_Mg_-o@(UwHCx)F_Prjy(<5WkBA<~8_mWW`>Sa8M+B&-@G2JW}t)J0;%S@w> zdey3Lb|2EPFV`w~EK@5RdK`Py8CZu~Gm5&W=++^Og#KrdH}^K-aUH)GUI&D5&Ld?# zj`6568Ph8@QW^MOM<(j1VKuCPIxf{nHyj99L1!6V8Pc^ORUK56K}9>pv`(t*CUiT& z4AoPjxIq-L2_I9BDk{+YxWalB+N&r%s&Z5zN2%PSNTA%|B9vgds?$#<-KQEE`s5_B zRR5(V+E`MoHaJHU!e|4~Un%&}U;ySPOkw$SlkaG65X4-3!H-p&BVHF4N5UqR^qbr@nOntVIhcI_y zv6iL*v-1G=Y`vI?in9eXVYxpj^@s2vYc@qQ%|f~bmHTk36Jn^@Io#xc$TT|v`T+O* z5?gkuCA$P$Tzk~I$L(m>g^U+Vvys|9Iv&6R$EjxHtmab3monbW%CfD4%XYi^?-g$f+f?+Q0+f zCsKHRDi@%64`6+EU1D|wG&d43gOA6TG~8?TiiTA^Iu?}bgi@WW978v{YLoKm_5b@b zxG$t-7RJ|lAk%^G7)7jxyj;Mes^=<}H^(ti^KoAOOQ&@8x7?NQTdsY_e(~X(;Er{W z=kMVz-N#+K&vESm?%X}x+v}`v+#y#Jwh^B->nDXe?$z7nSJ&81ui{Ruuud-FLAg&Z zbphNfO?)ZkLg#ddq_fm$FEv`tl#4-jXTHT@!o39dF*9SGg?ppRBzvX-Gb+adVz1A2 zEan45#erCRFs7}@W8H-C(DK_1xRqKq?NxD|`dPhB8c+Z%b0l0hd(;1(_ zQ}KC?<}GBzBV_z8tfHwCU=dk~J5IEc@mBr%byV)380F&&a9f6g9(26>pyi#1xT_E0#_3heyj!lWvs_z;n*HKB!{B$V{ngu? zV=2o>&^6#y2E+E5<$s9tL>AEo#Tu6(ZwL!9c7?4sP!gSsab$q1M7}rvtaTa z@3%OMEqtMs2Ta3#c*H=q(OV-yhwJ1aEL2Ch_XSkL zD;9Aisd#WtZg=Gf=6ZefTsK_jfq1{*t@;P44|~JFh;>U4D?e_OSKZ!}iPfSud>Ruz2QP4(lV=TF>2s z?vGcoBU2!*&zyziPJbY<6}fT?fOs6FU@? zuy{NyO+=)rIGs$%XI8KiOYJ9C*k_ix(0Hebj@RR{CSz^N-IP-Q zZ2Q!xpf4H)mqr01{wr3Rdp$sQ6Ye=Liee+{?E!&Y05W=|VUG-#s9b9tC5>Y5RyAK99UdbL~~g z0Y;B14B$TKRz@(LqT?noR`<(Oaq(1(aCVvShn4b~<-*J&=ZRL~WE;SpmO@e?K&m14 zMA$zT@R%h)=0`JRyJkL;@$1;RB_P2My4WC8n|PQYUtFQQxI~(41GxX|EZmKZ`vTk- z#@BdYw*5=te!gT>Nsd~sjM_ga^MCG_-`nIo_dmF6-?hE-Ez3LKK)Ap25Y|MVUuSu1 ztwHv6=n?kD8tcoqImTM;=~`hZqWAfoxw!4*O2^sN)-$U>x!W-(v)D1#=Bl;;*_|fb zjp`R8!`{N1WWND-C#v-pm$`{rXcBWt8OS~y#VVIU%#}Nb>V#}U0_Y>qn+&oy*)b=R za^j)Z1|Gl%s6BPmaBoqoV4ZxrWIKbU_{=8@EMmEN6!aZ-mJ?$mA z04YV(YMfT$EEgdI9@n6kFGQ#TcX$tmNkD>5B=EfJL=9Hgz?1+?A5bB*<0>}j=+m{M z9_6q`4!NDZVR|$owY#l*bnAhD*dCB~>P~=rr@{d4$5kw|8F8!d9?EWa$xEt1G8Pq2 zq{Op}#g|r~LGj5Y{HaCKiB@c=U9FX1RWT89j|a6;uWDpt%=1tPcffkVujFAd;nhaG zBoh`&32~xLKDksrvy8sDjGb!phI?K1af znY%Q~eOM4a>=LeQ;4b`tyY?gN2j6$S_mK4+tcK(+-e>vaTFx{ic;hbawKcXs+~$~A z%Cc1r6DskmN^Y@;iw>hRy-}7 z?)MN>^ggNEFZP63Pgv^?Yg?K80+qIEYy;sp5c`3E3|9bzWJk#UXr1M|Deh;jmW^%p z1I^BZwXXe&^{AhlXjP{Y!f4bwkwQO)>7_i*g)42Rm)lP*#%jok7&GBs_Iiq%IuGA^ z{zeqPB1+oLa5tZfdyj5Z{RO|4^|Q2J&IE8lldl&_4YUx0iPJvdwPiy>DT;hY3o`@m zaEpEhFbxE-DsjZ)9@KP`?7f=W=VQl$q&L9#)Yz~TwON5xPH(;36VndXYTJF%9u<}Q z5vCktI3)~g?wsx}X&yYog_WRaYkaDOoLNFnFB4BJ;ZL^7)6EEXxCj$<>O=%&J}YTt zHWj0rOBQs3%zDL)UnqxRwIPotgy}Zv^m6&^a)#FS&GbY{8c%7Te)9j^@H+YH0^AqI z*L!>h_Zxhlh5OZ#{c_0;555H|ew2H!;`r0B@KLw$&hNNuzp%ddecK1$uz&EN_1y=! z%lBE&-D^9ymIJuIey8QtJFN)!CC*ITHCRiJhsm+9t=t4~mjLdVN?wl2eS8sLX>*oa z9eCU3oaK9)%gn7CWVah(!rk0N#d5}xI>G3mBmm;m^#mToGpj)JS+Zj>Whv!?X`s*` zB>DPa9^^be4qk_p6M)zszL7g4Y&?dgqL%T!nJsRDm$h&mqc_KVd9SC=rghFCx z*zvdl_n)+KPqkThw>dlOT?aHvx1SqpQLqh?gBpk6>v9{KBg~xxNB-=*o`E+h7Oc|tr*seVHGZs;jS!Zqpo~hEGA@_6w@`X zOxRVdC8Kd|yq=E6uvyY*OdbazA6BXXtV+!I{DZo?UswCwwAaTEz|SS_9Ew|x#ks+R zb+EyCEb8hCx%PO)Et&*NqHRpxO-LtIj#34?HEDWA^At3%c}BP5$70Z#1ceK7ViCYy zfIHJo@?;Vw72JEkM%X@vCvOe62Fz1=;j=3_k5mXq#Rz(Y!E}f%WS5E9HnxqNYD7cL z6LB`);QjOybiy)fAQ#}iFuvyFb8x>fS2xxXM2Gqy8ro5Z$@WDjL~DBURwyQ$Fb zmiOs4;!g4a01yC4L_t*2UQOQTRzSaRVord2Zv;&ajz;(=qnMWYQJeL5i@0rzYzGsr zgKlf5mn$X7Oe>j6S*KgTK#$IoTk zXCE<6FySU@KraQ|#eiDyD`vobAbYt+uheOkdZipArI?tj<59dPrAi|yB}7bTMMxs05NPA`4MHDQ4S9B2Xz<1M=0FXTzRI$)LPJ!ts7n751^h67tY9wQE zg55%D@I)>=$Jk2MZhT~=;6rzW>4bi|8G(ML4Ud3Lrv#iQV%kj9JzcAg#r@a+X0*!y zyf46gVSL@kSHc~bj>Ydq+oiG{?w>DX(d4y~?V}Ot;!fMSUvckzkNfC5+=u^!o2%#U zx1TqB#0=|p4&Xk$%vxx4W)oyEPWo#dBQfs8O5x;c`{`Q|?m+g*zpI?E?5>AnjKF(0nm%h0+7AbgeCJu!w$Y! z!ypPFmJL#D(HBq$eW)&h?E5LE+BYj?gF>Gs0CfIoNdS5NtSCV|C&>`_C8O(AWj%vA z082iMoQ%9(rrW3rv4g1FMSwfoDPybX9kR58xOOn-UY(zV`}4%L&oB2xu;B7ot@LcY z{fAAq@3&cg*~)ENZ0&61yS&y8-7*{%##4d`cL4h7mA131ttVIUCzc!DYE9BuoK+&m zNhPo6i-~mua5qWvFXZCkdqbem^+HI=2Ps?@L#?aD8nsl57V4u7Y&1#noN$~KV#Zcv zqcqw?OARu>Jzqmd>(xpYb5xgAlX~_{9-=cVjoP% z-8Fo>$F+^|8)X45^5c^02`W5Fu(t_zYa*&+{_C8#3~!WePS6u zzC;GTk1avjJ`49n&SD$f@?V5|uGtE3A89n;9z(tZ*+Io)5~jt0Qr!^jc&;_hqwuW7 zz0+b?0e@ zSxwobvQ5m`R+Z7_aJ#H*l{E;^?7N7zhq-rC9pJu`k)2H1uDY-wL=)%1o%TeO!5TIY z71!50e%x&TUYq4-t=xvimX0RpA-|Ws$UX7{n%yLv33zJd5Qg-V(9lLzsJQ{~p zl#v-*EM*qS1C9J4zp&pe!Zmq;C>yEzoWh<`#V1t$H$;M^(q>uSC6j|x=~mP}RUOpy zv`5Q%JOz)}Se+;(pIEJxCX;l!1ulzgrcE$fFyd*Za=n-fIrBd3h;8@~ct-;s(DD;C z>SVn#71gKeJ(G3bYK>Mg9U20x;*l#JQjW~R-6)dzcU0~Rd|wz}-@#odS}{H^+y8?& zSG2raaQvyy{_cA2>W{hiziog2n~qBlaPO?c_8qTd*k8THdU~m4Vv)1Zilr|japzDy zX3u9%&m7iBA zsPbnCwuM`7NOc4{d`amBLN_vkU9c7T1(j@N@>Ys)2id-ZulANU4F96Qq(70qgmC z0WFskcz(FjB;{h#K#$3gb})gmd1lgVxUaSvf{eEF)8^9b+r4g(X67 zjPDFcdsTHOqc6zhd6{k`cu8>$q_W3#`EgZxQjyjx(l&*(YiOX~t1)aesHjENUD4fR zZg#Cl+phhS z?cKH9`878-R99QhEVE86G0R|hATlU!!13e?$En)^@%;Ew(SW-Xl{@f#vBQKr#tpa^ zS~1&>VZa@|1OV$dGVEr+ivy1eac4g2$kp&hdYuA>GGQ0C(+o)YkeCjVey?&^RSzg~ zyCUpX@H7o}$WthA9DojR-yo9>27t@}7(Gu32=>h?z#SQcMKUskyi;a7sRDclwZ4l| zAp2g80?_y9@@^I34uRQr6_Ys|sSDuV7m|h}Qh$weOTGPHnye<=pIUC;v&hv`?`-!v z4tpHOeRhzgFRc;*>t}DXqQlxsJNodniDQkzXiTm|2p0dTpUb(MaKF*$1L0l{>6NgS z3(&NeKxBQYS?LG}29aI_DA$uh4EtLZPO{{d4mpezA_(K8bKFzg9QFc(=oY+Fh zW~yvr6uXLR$}>8BN|m2t(z8s4E4*7}2UVq8Q~DVlVl1aF0^AqI zf1kn4k^S$4`-M^4`7(E{17Tf2OeGcweD${hM+P#$r zpck73GYU=oSc6)wM+*@=YhJ75B5Wiqfe_AzWQbfy9tzN-I_schFOhaD;%-K_GrEPb zjg)~-H!ESDrwr(`nbJ*!K|C*G|GX^<_QKwwOWPG`Clz;LCPCg!C@>vjFKBiq?^ES= zP1>i5`*aD!`!*(SX3{1_+Nhxe!6wSLdxYa*l8(rOQT~Ov?UzlKpDyNpzKnZvg>}yo zXHUZ35#T#C`%#q}ONxKERebpl>)G46Q!BZd<(8=>j`3DuG{u8nMtFG{wyB#%Io`=@ z3WUk`yoUW(vCnmlUWlk^zYI&3On_jeqfgCXYYW_729*s8z0@F=Q*_qSCn>>wj7G7P za$=G_CL4;LFDHd+GnzvT*Ek3KE|>sDlj2x|0Pm+5;$eAI3Q5I;J=eg&54y61&$SAD zbwayp-y`$8DA`G1Qk0Fgj z6Ek2Lmkz6+{O#WX?#6~Hx(L!hAr^rD))YsfA5&<>So)OUs&Gx z4)^~3wkzxG=k9TUazA?uy8E73VI6O?BHx?&T*8%Uu$5Y@Q!Aao_sNwO6YiLHH{rh2 zSzdyC&$VI9hr7vl%-FQSQb2$}vNwu_lu$@X1;gU1T8piM$|0lwLqN%ea5ps{#*%iB z?H~*fsF*z2sR+9iHXrWKiW127EldUaK)gV)o_({7N%rju*`-sE^X%zsbD7)kn=kfwog-!Xv$HA^(*SIrr|!V zQHc-Bj%rvNHQJBh!o@?&K7yUQYh^UyNoat0tddL#Xdam$mAG1MP{tGP(YOY`7@2?w zvwNYIL6oCvHmVxUIzIWE(SUOS?hE7VJ-%c^^*^P&`L9%?-*yictHxVtbjvvf8pOC9AU z_R?aT33r3<&bdGbu~xfz#OVgvB`jl)ivV%-{|gda#iLE27n{t5luXzKDjrtiJ#M8- zRXQ|fuO@F}{2bgtt%GJa4=8OjatIKhG;!n9IIOf=C3`#y9-3DHSQ22pgD{A8BJZc9 zo$~vc>!9xH^a=;O`~jc5&qH^p@_I!C&AwifpJO6!sA_zlUl{iD1GP>Q?mt5tbOyxe&%wzY#I80p>jcq-j)x(%} z0&{_s_o{gxL%|**#i#}We9s247hNtyM*_k~&{c>^0KxG_T1vT)>}blymzpHFq-gKc zWUVwwAnkDzHH^o4QRXK}x?b$oErTHkX!(g|31C`@yQ&S&nO1t{HeqTdUtKI8uXT00 zod-0yR@i`PH}Kt9=oqD<3_!mF?Pa803S4bW(SUe|02Tj&qU=D0 zzpCfGXlGUpdB=kOiqDH>ohILd*gJ5dju}U*WOzULu3D6_CVjk7nP}9U&2;R+-1W8{&Jc7C@=h}!*%I#tbBj_8%FQ! zyR9$Zj@t9|O76rm4z1f4p-ou6(E{uM)=#c*Os%qxFLR78vtxWlc1+6{WJhyd2!rW2 z5N|l1?vOhG01yC4L_t&&0Du5PrKDsYP|DSbm3qa5do`foHd02;w=%Mc(TxP#R%+gQ6$bPK`dGaj;H-nE&_bVBzwMAF4j@F1COLbd^UmxJMfw&+$&8y zdUG~O7(n?JJA7GA$@zLY9TXw*brc(+)UhLON59`*Y!GmRHz@+#D{;q6D><=J7+)%u zT4-NL>`;Xcg|$;^)-xSS2-z||XXp`*=g zG$})1Qa;JX610kwlLVg#)+^Zt<&*2!X3sDVL%jcW!Chuye0|41uH375z6rZ&m$-9P z?rPQk;Sm2`hx6Pc_P4*!oqv$KxX$+G8txB9-=$M4tW(SQ$)&FG#kNX|rPypKx7x;* z+JWz5%PphJtPs_uHUsVsgX~rl>vJ*3cf@)VKkNVAAeZXRGfHAPEMxLFAOqHm5jk6D zDKFt>?&kjZp#9V>_FU4@8*p}Mu6D%*jNYeddlUxX-b!R_Y>i16tX|(m=}x?zOD4#> z6jb5|{A!1f?NjA_R6aIJn*E&4bbwrCOvcDP@NqIxaWGeCT< zMgq9!YlTuwG`CNy2zQ|jvK^*O1McM}OSM@nHL!G$4Ee-#m}Tlb>8Q8YEB1Nqg_sPg ze=H$a<6=4HoNke)7E?fHx}Nm-4NO46n`|Kee%)xZ_sJ~W{|0zp7z^WT zI{sm}pRaNk@|LRw+vTd|k5%riDtE2q{5a39JSUy|XUoNhxp(e!T)4-MnfKM!(<^P$ z%fzW=&WR<~u|?LB!S_m=9b~%!cWw^uX0|=sYRk0P=ZC>}8>Zlm>@a4ElTyWmdo4P~ zjMh+;?O}DaUeDG$Gp*c9-?jgFi~s+6T7T=CjzTln7vhfioCkHGU1JB_fxQY69N-S( zeXBuvK>2Q<4`zp{8A$mXa6jNT;Z6@y^$^nm?gts|R4^@bK;gT5Vs}XB4Dszjakm$f z>>H_LlOk-^09#~>BDZ_db7ml-^oDGkqE>+WkCxbfw37SPZQRCNt$UYoM^lbN0ehFi z6=Sv+Z?%AOf9-DTOSigCE^{E@nO33utA>=*B~zq!Wx(w&x>+qqM#Ez`?5>?^d?Ras;y zwpxJW<;6mAskOAsR$XQ!+!rIkN1C{y6gS*xNjKZz%UrY7zyRMsAip}+$z&UyrfXQC zK`O>cIYvu(2GvyxJM%U6azw;aivX#+xYwVwUpr{|Kl85teZTzLkGbj+ZX{wqtUJ5B z7D?VBi902<9X}vR9V*$+q;?{kRNBMDeX7{up&cG&ziw=wQn7~3zYrmL_$=Xp+Jr17thEy$ByIAy%5bpM3gnMxPEtwJ+EYER3)9_=n;CRq@e? z_~)bK(lfRj`hOB&OaECdhvGK$yHV(5925;;qr^Q!V+74k)yEK4q;|v41)m+ zz#Yh*G5iM1Y8l)_ZNu`%9Ei#$Y`BrF=W}%;XwQ6&vsCLGt9Mo7*3r1L5Vz-+bFcl5 zT zqm@KEgOCnr62QIFt#lY&gbp$po&)04gnOqV9n@rid#9gv_}E^zv|Yg>_svY&s!@RZ zCdzMDU5EVAPzdwahwHiLQkI`Awtjah_mh>}FK^|3f17R7EqqTCcQ|C}(j90r)5@J+ z>wFuO`<>R)%dOLGj`0L<9HS>U;I8Cv*bJCuGp4g+4p~o(vrFjQTdZN_m{N?>Jdh5z zop}f#`>aAw@_Ep+2|J>^(S_%~0PaZ_rZ190rAeqXl41iJiK?L1kLsjbr$^kZ*TX=Y z18w1DryG@tB$@$K5_&ewj(de(%?0Q`=2v>W=;z+W$bMM0P!T3eV+$JLzFQGtF$8dj z#n5gIx2z3|O@#Xn!&Dg!HJPvtenviWD6I5FSbqpRARhON!}z%r!yCsa+xM`70e3un zdjsyJB)Z69A%7J8Cjjo1lw63T<8(3Utip#%>7N=$RR4;qeZlf~VSLTUSHk_PeBQq* z-mTi+&$-?^EL?n+`{Pf!H^0Tbb)Vyv+wCvkW&!a&xx!XnZp|;{3d^{{Qp~{Q7rD$b z81#*4v_jyW78B^RZUlza3>LQI!KEfKmvDjVEXJi$j4woOrKoi*fi0iVJHCype2cr- zA-!90eKaM!Giv*&gS_!;+sQSyYO^p{URkJHlO;Fg!9$0Q)^`w~Br>c#u_R5L*;+3w7?% zTt@*+AvqJ|yW+NITWmjBX8qnW?nkS*pWn(ocDrT$?arRXwxe|pfcrs>E2Ox$?{Z#T z>v#p>ZkcJdO(tApb<$WZ*8gF0Ij9xB4DP0o2jpcv*k>aXl5$ZzbXrO>m=TR|0pN@i zr-F&{QqodRSu2gmcSGI^`FgBvhi}Qp$Z#z=79>YK6M{K8jmm8Xkp7APakD9+xHB|7jydO*W zVH!&}xC*rl@5e|bsg#rOZf)6^6+ZY_Gt0#2r&uj>{og(@3}zM%F)fU*_4tqA{^dUJ zUlrrrg#!0p*7?B^;oMW)8$aaUddT|L8s}@baxdLtIl0XF{;;%#v19A z4IySSI0 zb6gy>Tpi=Cj&tu$I{(xyy#0IYix1f+SK#@nfjUQjjq`}t)~=yzBi76qwK01M0RREq z&Bo2xyIEDcR0Ti}QXP{pj2I6xEX39sXxMHe0A3IW-Q=Lo_NjC>j}MUYs@rt3RS~yS z#{rE8shbH4*?_Y%VPC)4@v~L7AFkkjx&oE^<9Ars-)`$(W$j5g4|@>q**N#so#K`I z#Mkb!pIyPtv{@z^oZ}|kYiK2+R>E4zZ}!Y%1)X7eyW!7n2IzMH--u5d_KWF=2#hWO z+*2YpqDr{(DW_Q;gPW*$$5L&wk2Ygk1}>>_a7i2q3z=GVAdD&R!ek4RQwaQ3@9uEn}Lj18XJ>tdn4Z!_? zjLDe;Dm&n2odI>fhwM=$bNkxZ$~KFXBr`L!nF(8UagSH-2$IgAeAFi&^-6snVbCLC zizP41c;RCjixpG0-++5ACJog&vARDZ=P^s86cb`LW-lZh<85TLQ5lHvpL~Kz_64{v zjQrW9S0^e%kd>w{Yc2>zm)^EDd_?>r5hY3++m>&!gHd{Fx6V* z7;Y2$S8`)NcU?THyi?*nn&I9Z<31R({;A(~@pCjM< zqHM=aTDINGwrbd0ZZ~yxd&HrToQ?3=u>D}tzF~>|m#Z=1{__>wuWqqC0dT*=a^N;g zca!so&)KDM!?oNixA0f)lV4k70l1%RwT#CdqfyZ~qJ*b+39^MSXJx0tUxVg9kKJ3&YR%(#@gR^k| zcTC9q)##$SFc!wwcKls%|9eiZnzrwkD%NWy$Hy7@<1XpyQ;xTP!u|09?v;BuOd{W6 zpIl}cZL^eH(aJHCw2d@ah8j44JDNM<=~J`2o-5agHZo?1JT!o85OWD>IA+Tw@T@$@ zu~JF^Fy$L9BMGjnl^b|~`(wNIPF8$>-1gCw<>N`qpT@Wkhq%kzxHo>vom#_H7U2|f zJnHNV3WtKM!(*ffsB%Ejx)cpK4lL`|A>?kInxHqMlkr`O0GKtlU> z1!QTr2lF!rHJmCC?u=|v={662L6x>s*M61n3&HNf5S+!}7@om^L&?MTphNav1)xRXol7uQLzt>MnDu%2kPkJi~MHDV<~N;SkZ zF|O8O@n6;>Wi$zoq#D*>BN&*h$oSPv2r&)H9h7V-$%@Uy;5+uQLT_aB7{IhUTvE8O z*|?mpm*7nf2Bl+OzDIZTxv>nf$0POmNPmD~8r@Bg80jgH-W{59#G?#_h*@=$jS86> z#CkT&AVvZ*NciIc*IjVwgG* zW3L-`R<|*6hbr#T#l3FKeRXLbj&07d*nek8}i^s#^elcuF{N8LSNz-0k~&E z@Wy0x%Sp+ll*`Dr3sbGwVQL^Ons7IA?x5TkOd%J>*LnPZ2KOtY*0+mB75u36N}l^D z&HuSuKEH`O|1<8jZ*niK1HM~Mt>z||;h9ws>A6N*Hf2qxESW~@Y++0@MmA+nH`qqv z_Dozz*NYIDm;?+Oi93Py#e@ue&o(%R>bd?ncRa}r-_M4aWHDy91wasuU? zAl@8AosMMoEM+&Yp*~*;=-{<&)*Fwx)@M&4n%artRN;c2u{r6cCTQ+d4c(S4gJ+h z_UqNcwwJh_FT;^_5VKrN3K0^g3h_Qr5&_L?r5kIhhNYrowono*A=wN3^(x%+f^?*! zIx3Jf+^|g1n!WVd-bhswl0AD0Ng1>R7%TyDZjgj98%V13baIn~P)t2abR z+6$7L>WOeCk(|5`eSR=0)}}VP%9-Mk>8(Tlrccvn1WBoWGXCn2&LjuPKn}#d*jh%il9&ssZ7iW-?@Y7_vR_4#r^d(&qR` z2=~GnCWL#gA72zI4#k~jaiw#_idj+_-US9}iXwfKG{|3+R7jS>a9cBBAV8BX(>}cD& z%PCY(1>NVM@8)s+7n#D%7*@Z5tPg)%WjEN=wx3p-Cs%%;8O!wRLV3B zQa)*ll;ABTdFzx|1W}SV0bj;+L)tVMmEor&@|BZ(^a%GD6Y-?zG>?!flG;O_hC_P( z2q{ZI>V;+c%SC>gd_Uo0FtvLD?0%N|{zcgGB7C(PzIl$`@;tNsC2IHc%;}X(;%rEs z4hi0n7cN|RUT%H~uCAc%vm^rX0Bv4?NNjtku5gA>6r?Q;^(YJTE)MX>@sTq!rbHopW#Yjzh*Q?*hiG!~J4CPsm~gVm z!}(^qKFgPQf0D&G-I(l48j+tjYEi0lkDF>bZzAj13dBunScX)g(aXbu8f8P7UPic| zLD%o0yMT95=-Gn|nZderKOI>WFnE#pj7gtoB6TrI^~XT1B~)(?*5*vd-<3piI!PiB zW1Yp8%@RlzhnaGIxKb7JpXvrCbve}yclY?ij^73Ds#Lh6g&)in?j*_Ghc(x}q-x%T zikG4MMW|TIm93%d&qMV~O#LhDwb%LP4N}V+!i`siOKZ5QrEKY3)*8VVhB5^qG(P4B zd8SQgW2ZqvIOM)S)ozr#qILg~uNx?#`fXHy*#o#Me1{*3`8x?*$9Hi1eHK6V(hFSm zb9~veT=`NdFOts)WRY<>;ac+y4chsvP$45ghf47!rC`#Coj0ganzZTq%m71HppjhQ zr_Bn`qrF8-?u7d}1@4FS@<9{AU4PJ^IqV@^#3^AqUaUp9=lKiKA=Iw=R<5bBi|V$4%A;tRv2^0_+eOifW3TM*0^lbuR>oKAA5Yci+lQ>GeY zJq%~Ha+ColLS1e!eo+~zN>UH~_2l*ptc%<k;lGv&e*Smk{o;cw;ox zbiqSUc8Y2BXLY6#R$YnAsC-w*t~-lw^pI7!rv~EPfEND>X}+X6Uz(R*?eCHAVZuo+ z$6v|`k?}q+FF=DcTuG!vGJ+Jim(La}=E$TENx0$XpZ-p`{?DPXjC;7pA9xJG{ZaV- zxNt|Zca>7@R_H6G?pif>&2rC0vE?9l?R&OyD|_`z;nJtfrH|<=A2ZiKVwyhWn*Yq) zcpDmD73)@ujzwZ=gosu>H-Iw-GTFg&`V7I0rv6o^-UuycwEfv0cWv?=JJVmrj3T=t zxNGI^r3&49=*~~rTW|7LUt$~9vNfwY$Fn43#}dJiHO4ub{Mq7A-VU1C08Q$2J|jTR z4kjp1o~lWjB4z~YvqJRd5JP657M(u6nu(P0*C!9d{j6R(rXzco4tnSgc z3qAzy_?AL{Dc4^(A4=_*Pwiew?|GH^{xy2*i}dC-=-laTFT$Qz_~UEo#AS4PB$MO| zd11`8HFC>KRKqf=bcRsir>vs}k_E$}Fq3VTzI3K&ixf*|YRYGl3Ry*@v4+x0Nm*(x zj3AqploGyrWLe$}V{WKtcAzdD={#M?oX%zY3wS3~7*6W?qDmr6wwazK5k}IWBa|x$ zW6S1h5QSy4Bx|^)7_SV}v3p42sd|9OfUr~)8LfIQo_99iXoGzNj6wK!G=FtVqx#H)! z%D+(8cL?3la$mOGQz-V9YWnP4pM&lxXL>3|k)6Q(PAUCECf~Q8>HLIldy~5H5?pQ4)&u2>(@kI;R+}V&537J7$dH{pU4iQLS?_f=eAD`+k;6Zk%Y@Q)! zg=*3Rg>-)s%t`Z;la!b{qUW?hQZ}Y)5bpcE^#?qpL!JV{J=IT}87vnBkizKaLg*a} z>0QrJdtaw_t*5_z8MdsUwyXt&`}eQV2iHQ}N-A?9pW+X>q13fC+SXUtE6gg4nE{$?e_2hQ zu>^|wAta@}Y>wVBPfy+(&KHI9I78Uy7?h`6@eI64qH*THGmhD&vItXgupytoUB-Ke zf$A*@w(1IB8je1*OcdTsVVN9ViHA(ZAbB!ALDW7DgI>`R7n4rlFX-J72~< z{udDQSLw!eP_r5;mO=S4 zreZl?wv;VeK;_MW>`=-aM(2dnd9wtx^X70aBbbD1%ri8W2u*IJloKvyhl$8~gnR0A z5|>Z(*2j41PZ@{d?kOMi(H-)T4||ExQ_L8Ux80?Xr72%%NV152{Qhl>1fF#MJ zPu0d62NiM?40H=hD1_@n! ztcM}mpueE-JxXtw9PY7Bxch4|L->3&;Ip*&W2X9usYW?VZ_4rT$eCiy@h6+G$OPt3 z%A(;+Lki4AO14?r(%HI-*~a1s4NiE(xx2vKJ>26DJbp{KyT)XkG578g=(3Srqn)MD zVIwU*x{JBqVxhZ??X=N7rEH&#?Jc1Pis&DT`TIqD4=R`I%Mu3Cg~4=wFq^(pK;0{) z21@CHa;CS8!3hH)-tU0^a_B1|lpk%|k?#&lg?ryY3gO=ME_7^w&bQgy8>r^j>BbkK zb|qD_f~{W3*;g>7OQ_-nP%wwWdxgUJOz}dlc!6M<&1Xe0=9#2s87gl!d9*|d=1@_I z-bjeHBp*YZ59tANSSKFPi-`3jUb@2`nxkGqoUfD>q{~519VX+gz{zmxyQS=|H3)au z{}$|h9ln1Nw!Z-1BIRFW_pO7d7pRPtVnzg=83a{J`J3ycOZbh=5b~xG%Ulvf@(vO1 z`C($oT)B9TR5DA0Rur*SI?GfXY0MARp-)GkXZVY$)3|hBE^|7ElL}sMixlj0wT^jm z=}f*fl5xxx5$m;!WK_*UseBe^i(nD!mGgwE1w!2tjbo0%7EYG03j&4GFoQk9t1QG& z{G?NsH`xia1L)PO>mC9?uTysMl=b(E5=u-)a*TLC@gqSJ1U9nW|?=&p+Ejur8uXmoU~PP_mdRUc%v_&ge@rhN(u+q;h;{jhkw5OiB~BI5LFYzl(a&au zaz`Uz`!aUt^Ys2V;P5-t!8hsMuh8GUjBp2p``*{-GcQ5vb3)c^J|hrp^QbE?YcD@b z+rs%=UkP1vQGl!#0?Q5IbHhpXV>Iu!*_u+N{Sd-EFGOn&Ad&9O=|a{tAtyk{4<$uo z%H|3+i{;uST6{#TBiyaw3>tRy=~eT^`X%@%mCaP(KA*3g&(o4{ddBJvBsgPY&Hj9D$WX~ivbijhG}JZ+k`{e7YIhkQS8Fe)@Rs&L1rstDOlBsz~ypTK>plor67XOOC* z6-&9wr9A%Z`2nKYL&`SlvONu!sifOfp06&~M^t`ex}qR$Q3zQEzzInWj%5cLe*CY$ z4`<7`7gXKj4?cb~xVw6G=NS?|u?k%!d`A)6UPK|^@k~b<5z@S)gxGncvl_r5!kNHM z-7Zt`jg}mNUdnXZ*v?X}Lm|5&8u8s}r#mZz&T^?oNrLPzqx(vS;NDeEbvdZPa!{Rn z&u7s0KHc{o)B7j-)&{us8iD(zl|yhx*_YGhOK95?uq{QhL(xJgT1*u#Vl8tK?xb6H z{wz9|z@5sQ$yvh1tY8vNj`xs~eN9Qzyv}Rh^Z)8Qxqx|g_+ELKJi8q39}fP^r>`C5J}DJ zstlYOvrPI(Qp4_p<3)a4y&gJVrCQcO<60Op?((gf?aMXiKo+hEmEsEgKeP_<#_lCp9#jtBFb7TX3>I3HZ`y}$d^9|VcD(qTE z?_Ljw-+&7*Lgo@CD;RP@pz=A>_0?L(Y$0a~o99E;GqZi!yil1G0-K@B4cFyG=<&E< zhRzZwTKxDtf1x;lD-97UA|=OM3H^B0LQVA|sd|wHfllHui=~ET@}=ea+C?%tck2wk zG@PxTCp9e5)h&`L=W>oYZ1sGhcA>^G5AD3RX1=awj_in#N`pynZglR&fm&OL0aYAK zb}(i78WTM9=VekGAj8iKA)Zf?Rt?IYST-vZa%YIj<|)}6EM@pf>TfJgr&Mw9GA4O> zBoOm%h}Ov$^(0V3iqGgtw_CNSvRYj^*25I%AtgP1g~=2Wkp}MKU3UOT{y#f|;hD|M~afE_?sw z-l6Iqf9&z(aDS+Ie?+*CM*MFC_d9mxelGvRX|8`W^nXeXe#rIyiS67l1ota1K*MvS z4|V-Bbj`E0<5|k_EL-smjk2#`DweY<-%A#-=;-mFc%D+CGD6IqA(70&X{01pv|fny z)+J8&IE#i|FC6jE9`)3bisT+#k}s*CtHM1ajN3BC9zZb{J#?;#ZV!tkG33kaK-`v$v$cokx3~8K6N^oD-89IA0#g zSIyPb;l&FzRr7chg1&m89;b)02%%zzXb;yp!c1ksrV@Wsp}%Ae)|ZAEtf7XYU{j8t zDai|cw9CNEenj?@>=1*XL}mazh`^N2zQ(gNriWRZ4rJyVX`$`R@VaxXL&f`{)@Z(fP4JW$CJQ)BEJ6` zxIdtL8T?AV4>@-`+|TFlo#pzsBHUr%L%Qc(s^bmle2qr9Ut0^8R>P&0M767+dKFZy zq$?5eD*zuWk?+f>vc**CA|+h2m@b~r7S7@j?v_wFD?p#-i;hx0ujS4g#e`|5nCZsj z9^w(Bc-%)vBJUogHwdZQ70Fv8`1Bdv&KbnH?|hywp8pZbtJ^e1}%I}Dol-LJC< z_x&3n>J>I~mBu`iP4$E98T6$Ua_u5Ret?+mC0cw*+4QVwa@rL1=|Zl*m={2H>!35W zg^7gebF`Nh$f(9e+AGVnmzQZ9mLS~88mSUqm(-AY)dHq^Az!mlBGH&g$r{R`f3KM@ zqkl)+UNw)cT_`Blo-YYutwBP0u)!YcSsvtR^EVdwX-a~01nyz_;!tB=kcpUgPx4EM zHON_hVs0pF3Dy+NlFOEeh4Z+~Q2Z&_+z5?Q>OfBP(Zmx{leduKnnVUvyeF9^@t27x zkMq*TdC75JnpjVfw5IY9@L(A3k~xeon8{Zx;&4j7`aCqf1T8O$_+#cxr&IMzhEa=r zCwo?X^ts+T(wAzwwkU{XXWAkp(ok@=R5;7z0(W<_4)^$jk0*q?Yqgo*74A>KcNOk^ zcDRRdk7E0_L+@t@cdGXts#}43+bh)d7vRboxbhs;xQbZ#y5|(cKTA}#lJMQWoGM!a zgzrlc?qHqI7R~1KBY8x2wx2$IiV3N7(IB4F^RZL(@d2J^y``f@{-n2j%tJ!B$4w=B zh0tl1&eUXt^9tPQoom>Gufxgr>C+!ENB&G7c$eO>9(KP$5WnwD>g;P=`dZ1nfKLe^ zeP8YK&}*AYLUlP)(~MR>1Hv7RFv8tNzOF=i90u!i{0x~>i4#vW>dXP!f^htiNgj)1g=kwM zW`~10oXH6n&0+d9e^Qe@!Anb)puMCdZ?a23RkF8%G<#Ai3@i28UE5%pJ2o%g=Y{4wrv6#mB`1)FCT?cLJ`0LL}I6q~2LWW5s)zdsY)ILoXFA~cl zE2|_el2jwG&ej&pH2w7R|8c|JJ)V;BtKdEg@xLDK`07}=KQ7``xc67V{Sx7R3_rLN z2EK$lA5;DBQGIVxU9UmgD{$i_xV8qaJx7H1`1NZ@2)=G5)F?*2=2=qUjO4;Eh4ST4 zv6LxWB$UkKiy{TGLWoeC;*sEKiZyA^>%w6Fe@hj7YUK5jzFvoYR6E)sC2 zgmBM{5O#&bmL=@&wfw<1s8b)(r#@ki{)ImD9HzX=WH&dn>6TNx0pbd&N-S#0_k}-Nw4bG5~ z`W|?oiStm3{7lg%O_9?4G+DuXUIc5K$J9K-Tz#HG+m3(4Td%NfFH4QjXsltZWvY$G;2Q)t7!lxc64V z4>ta93BujI^x!ve_fxp@9t^zAbiYpBdX?PNUwoa^z@g5$r9)>6_=~War)etk?8090M^U!?XT*uJfpXUXw2SHmZwLSmm$kTZ#L=89$K@v zHg_7{WRUXicvq1Vs{iq)|1->Vcg)>A{@~;B;a*4+jh7<%E1mmq3-@k2+_Q4`6S={C zFt`!!d_v%U=Pj!Hb!dNO2<|smQ#YSuRP%m$71i)8)UQzB{tP&lk<#<1vc**S5>|zK zaU`Eddj04!y^Qf5UNJ_GD6M=>FJ1K3Uz}o$^46X6(w;WSC-i*0mq5z%Mrx6pS>eL| zaO&&%uyZw|I`=c5aVI}PzOx74gS{K*ov#zPAASSQz6vR8xzssaq92oB6f%4zbAXf| zY9M8GgACS4lVh&2a=sQ}UALIOyqv%KjBt60R6S3!&yp&_^cA5RN4VH9N4&H^s$Hl- z8(zIgQa39h=oJaW2b!A2y6S~``&=zfKeh-7?*r^}45-RT1AbI#ptj6kU+(8I1b1&; z!4%S@8{u9Wrtm$Ol+DSTB3Qh%xn5qR`0#Yd52GDRxSCbGeYrMoHlGtNrUi(@(RLjn z^)xv%K**b6ER6Kb4K-y>)24XIi6%K-FUJ~WB?VrW;Gsp4)*Mr{8GgFVAdz%Noz2)5 zGF8i&E328NmngLDsE+ka*9NY8gWUR}(J@Oct-zgbe2%*M9EW_rw30^EuAr-z(~hN-eF;f{uUIOSFV>XK6G~>HbJvinw%(>h z&nXuTrt>f-qy@3{zp4zI?6; z$zFrVp3l`Sge%M7<})0c^xD}n61g}~Zw-{oL&Ta{QvEy)xom-^YO$_v@ld=)38{a5|iEkav1Q(qBgtOzlb2k1(tX-lTa=-H9%B|gR?UxPKk z!xmz)hUiLyC87YSaJrc9qb-^;HFv7cJPitFFjdQh+UEqvGA-HAJA4gSuV9 z-YRB>MWJq&&`xz&8C9gzjFpHqY#L9a)82=r?r9oFIXABc#7`d3Im_A zcitEK-)4K?q`THrw_c{3pC`8c#wuD><0?R1UJ0syuTfO}3s1TUXx6RC)D#;7}G)E+m8$Bdejp4u~Bx??8poDV58SsrP$&C;hv@FzlH<9zsT zB^+80C;kFwzl5l-;mjBG@sFuP?=t(|hMgN=_j)+Fo=bR1PF>6=g+hX-km$i?O~dKI zqjHW{d4ya(gRhE|>Sqh}bNI{ig{zCC8%uT97U>)2NYxQSnV(!1Alrkbsz|wJ4oPjS zS;*EdVe1wV7q1G5uc~^!SQ#nX!!?yNrTY2$x_O3*8KNy%EDe@PG$znk?q@8WX0%S# zBiV~R^{5gbvbb6rU@8qYqO8ICVn1!+R2dz8(R8^eP%H|eE9SEG&&mzY$(1WeIsU9* zO^UCiv^_B-`RLRAwK<{s{0MD9gwY&iO!m>o=%pB)KF(l_Gk7GKjEeNhp4zl2GR|t| z0MQbx$(;#>v%$6qs#n0ZwRFqNT16uM&tF?gWcHsz( zim=}*d7#@?XtR+$rR}y6QtJe$$DO4Q)MX!VE48Iy3@LpWvPPZ+u59^5H!@w69r+!N0ELRtt{ z5H1wV6w+q#Q8QutGJ4k<_V9Y<yLj7{NZmG6tkf8+o2KmPpFFaP<=|NF~7 z|L0G?{D1%Ie}L}c9>3Rs`}N$ox>w7L(%m|u!5Ye`fng2S(oT&&>2m!eshasUx>Lid z>aK=?8n{~tKU7fn%eng%!u?9k{c7oNwe(-Bnfq1j{Yvo%hk&|g=kHc<_Z%z{9y^Hc z*!clf4h}U~i6@1-cKL3(ZqQ~Jw0higXzx@=gXNk5yNK$q5c=%GV3pKgX6z}|_S)q; zmC|1;gdfVdzH+v$g6S;McH88h3aPu2>#k%`T@F%8fs`z^vz-q1b~)8v#`Ki(gC&}Q ze6iQ2@3HFoZQ8*y?VU31fK4-K@N}qinRTO@<6eKZ@**J z4B(YEVX%zvEoMgw&+t7(Tu-6cT_AK9ay?41wyt~>o{@X=HGPVD^Tgg<$*DezOb+rj z_^z%(fjs7mJ$YicMc-}FcI1lf7N$Lq?kr&ORMoKx^QHD&O?$4~ZqeamN1k%V z!gS>F?K$GDZ0S~(w%u&(v=}>b47YN1s5XnXHAimE(X?8GRtw*1VOz2dEoNrYZxAuYV;A7ng-K(cuHR{!| zx>NfY8mxH~J(w8o)Y4A%HbPGW^w+~+9l5N(2KuU@w-yEv`c?Em6+2ihsKR6N)a3&Q z9*F6y1XO>O@odx&}(N<&RY=I+ZVjE!RwvESCs=AuXkQBRDIK` z6yqFk-+(H-sp>2ny0yZ4ulAvPFKTpm++tD!2-T%LB{yxw(55`94Rt$7y?(~I(BfQm zAGL&|-VUl#pSI+Yl^%8d#`RV5((p}WGhUM~w&nA!d5juAM78A7%@(RDn{768&Dlaz z7LUhG*-W#UM%~N-RFfHQX2Fe2xSj>qvf-K;nsVSqy8J(X`M(kF{~T_y_h0|@um1Pv z9`5nG4FdO3Qpx_edKz`Vf#`>N%BedwFiKADk0tVx^7?^>kouS+@2y71&D^nb=*@{q zujKBbsu)*r4~tT6I5?+}%c_vkgEit{El;G}8Q{c#jP7&LeN}|W_}H(A0NPF-`|Qx| zfG&h}6?8h3iJ_8GUZn`KD^Of-g@{74kCwlyob4&+h<`7oyKPigDWj^BR6wKgdVD0; z*!i9cvAbO8EW?-ZB&!|}m2zEWJl+T36rx-|Tw$$@?=IsXT;_5;>XwbUUCN@`tk7CQ zwOMIYOEKMUv$^Zp%(Wc$S{8jX)1V~D{Pfe0|NEc6 z{O2#f{HHrx#y$SPV;s1T_42Of{a!6KN`I}TQ9slXjeJRo=hV}x?$%Kw#Y`Y-Ts@ZM zzoXoC4Av^DgZ>8M;=3B4^V0ASf)fwU0afG?kMX<3NA;w7UKR1_6-0w}qB{-}=TYUn zMiG6-L8;gLP{j{cvV)cUKo#HTK*LU=I(?-SPC5O`d_ZI;O9efO(94sl0#!kw`pW>- zS4zGp`OFGhhd%R?000mGNklU z{+c26RVz`Qy5aNHLn4O#!RN5*=b%W`rII-JUI+9zh;#3$CLhvcSI*c;>}8nmME#22 zR|71r5g4-Itb}M(DdCr)ETHZRn$$EdCp}4=!l#{Ttz+e&qjcz4DSSV)^86rfqhy`B zE_$PGTZfj%ox91}ZIlwOp@uaSz;Q~wzHQ_(yYto7A`-o6EkrX;ga>%01u0*QHeY#K zIP~hUXCJ<7NQ#9oq|v#zUzG9#KO*0MLJ$ArFK*}V9)H|1A>2o~cxUik<-3#VWE!X?y5E2= zfs_73E-rqA2d^iZI4D09G#};YUE}E^HNJDdUq#=qAzxaZPWtO%paJ^ohNgj$F`~&9 za-EY$e_Q5A{E-?4Lp6>P7aQQkuLR^T;UABmg{%>msC z)6v3{9^ZBv&v)ACjtUCZsXQG*xl3M9Z#k)4-%A!<*=`#{I-iuX%2T?Bn0nIIO6hN< zG{7pOJIe^%)mK%i@4_ol&I9$+I!h>2mtx+XQX=VeyOPQ3THblY&Scf;mps__pgQ!S z^F`>jiEbCrc&061$-F9Xk@8Y|Av+vWAM*7GbfR3kC6{f@vw5hmS|An?%f6(r2oI7<}UKE1<6o-_9cF6@0V36+DT>6CveI zt-0d0bm3aMbS+JLIZ3>fC^V)BSF;85wzrB&CtKC#x0h45OX&_$W|`@+X}U`IPG#>H z-YekwP8*_}8ngS18dbZ0RLu$3GtLOisO@iK+rkhPP)@m$-FfV)A>zA;MC5ZuiB^SJ zSH!47)?YJ=|NJMR`OgS;XZbMqaF0Len9R9P1oyG5M?DJMRlYxN^!yR|ez)dv;ST=| za37}mW5c~?_$>%`HJpOBeZavH1741w&kj@yJ!P7fJh3rVtc%wa9fO?xkg*docR|)J z$k_4V*t{3=57A|(xcYeErdiWr)pR>F{Z#^q#*~l`$InE3-?jo-ZdKqus$JsP#w-to z`&c~`?yh`)bhwkunaSWzx#8{}Pv>|@SY|BT$Lb+)A0ss(@;9NpE54r`?&ImVg?pc4 z1l;=^^h8W|=0}nMy%KH5r~Q>23Qc!M8CrM|P5rGx=4vM6h^BH6L&|p$w+Z4mL(DgD z@oR|rnu^=VpyD^v30s)>O>E*uA^s~(%ol9zSA_WGQE)kfZMW&W>|&2Y$$%_@PAlJC zDw2M-F1CH#zUTi|a986qBl$iS?$nKJ+6{O2c-qDz#oQ-{yQ;BpcSh&O<@+P%zzo5< zcEanO0rV$=yDQ&EpLt@wt5NuI`0f~&?=U{%D_AAwJ`^w^E3po)w~8zn)+bRVry+9> z6~C2={u(ZPMT!|9*%9mU-_QvgnZ!+O(q<0Hj*8g?_?Wa+iv3y>^(hne8N_aZ)LmeU zVy>FCT@|{na=P70I$`ycQKYNwcww2bnxs$qM2H_B?h{029vAN8BHjh=;D)<GEo&h$H^Ub3u8(rkJw z>CRH|rdd;;ETL7;-bbf=%fxNwV>gO%n}md|Y{E83*a(RmA!QSlvI!p{S$P`&4J2$O zrXH1mxZfVAB-%Z;u>YMV6-Q@z_C8&kl)CxZ;-(B^%e4o5b^phce zT)3-yn#REW0pHbyRyW+;<7pd@1oyEqmQk6JlZ0pwb1s>g29>3=NHZ_qqXYbcou82NwqE>85t}?RN(52rA3aJaw=^s06-Tk@W{nNT1;MnymbKC1R6UmDc4K)!`H8CNvDd`a9G?a@G2+8`H8IZ#twe z=jq2CNc*2{xzI=}G3iL;BiP~l%P$~kuY(K*yPU_0ctm|_nW{jO;os?BznR!|4SKz_ zXs{K0dfyOw7Yln6RjYw06fRIZkxLH8X3_I2%ko(Fs}lYBu4?$h>(q>9o--I{k{hyc zrdpew=YP68){S1-8Wu}{^v$x zg-=hjCsC>v{DxRiD~&GdglNE}D$)51ZR~}%9vWW0Gbjtv|6;3=<^G!Vj{9gGYfnBg zrJlc!Z8G}w2ttO>t6+RZ0sWV!Pd{LSh`V1*f%&pVyf&~H zT`&l*7;+v7rh?z0ZT9c+Th$Fb{z{#Hs}2`oS)iiIle>ECr5NrHGQJZ3fpqkmbHLHO zj1iCeF%s=L)-Q$om%m}?aE%x$19@lZBndyxfA|9?a`&IRld$0p!sl@cW%4}hED?Z; z2PdW>H2?9!x*WGDqA@keg<#mMdo73Rhu;L}HlBlpO#SOfw$z#B60tC~5}ds*_doa; z>pU{YU8rI+1eK4X>x4sIc?0t3a;m20>bbz^ND1HLR6)PWU=U%e6#0^#_B7mSM8`L?DVt94?|5c@}KTL5= z5Oh~CNBVc> z`N*Gl+5$o{A9HmNv-sL7`PBUoSEt6;FIW5cC%fL;Qb+3leHQxgwV1$4eDFF?U$L-_ zRT{V}gxIyiz7QPM9z^PzOP_RRCn@~a7vh6wsGS=%6>qF38gfD#a3vaY|J68HlGn{D zS@6WG%1-_V)OvK*pRu)XL20h_NChvYP;Taf!b^h>I2^&e{{p?KdoH$t|N!F`S^}WVK)UC*O)m^sL4G) zD=k}EYaa5@-L;<|cOSDE3q)^xm8z2lKrKEQ$15XjpZ{0c5_U$Rut8YJ{7g9$@X6}! zb&C4NLSBb7B$JGfm05xarZx;mITECE5I;VWNuiS$29>=dZ+}*NCvo6|U=kAQC^WDc zm+r5b8OnY*{bj?tohc8NxYur#S*vfK#OO*9X?-47D#G=~^7YTS+;3IG4W#SHm9E|t zLKI9?7fhPv7>UVB(qs;da}-BViMa7P;rVq#zv&a@lvtF-^#$*zMN?}7kD2r_Ts@l^ zWN=dwY|XN>`&ir?^nRP_^(-rXz6P{bF=6(iZ9D)PTOvef!&Fr3Hzj#mw8k28KWX?@;6kCb0_I?9@|3@(?L z-^qZRVZgt~Pz}K^^>nWwKoB4CAj>tw1tK=(& zWgrVO6D=}-yil{SWm2{;>!>UYr+aU-4maBxi%G9IIbSE`zfu3%^LW7nW9O1^odp?J zSN#FKjsie-h>>A*UOg6{;ZZjOKT((n6QXV|NDiV!HNOT63EM^N<{p#8TVnSyG z9Os7>l91tmf!w^|AP0TAtO(KV{ZbT)#~wx5Vk;D}h zCi5%zlfD^1R)C@uwIxYYF9`t`Djswt6prGX489Bh1IFe&mj_H6OZ2ac(wayh=&4CR z;ntsh>5LE=+xdT5z?ty|Lc?9>zHVkiRSt|LG!L)4E5oUU^(hl)64?}R2*&d73O+=H{VvY?iuTm;DpFuK1t;- zkRrkhiPjdZ>0HeSO<9^V?}vTC1jsJ#(q?gx>_Kk^Nf7M<30w0BH${W98hKT6mqh3% z`ML)X1J1OU>|ATn)~#?djpxbxIsZ6P4;VHg40wf84wR>>TlKs7mteKaV(Rn64Sh^~ znokYqzx<0Lob$FeKZ=d1&{0C`f}+GV9DLrJC;4CoUoGg!pgn6!wGA#=pS2=N3T#AP z7%Bg_^M93TxG~_f{ql(KEy^qOS!Xcj`!_ri{wNffPmd(wQ>YX4SiZ0oi?q_(M^WZ2hW45;m{6`I-wqe%Qg)P<@+WXR^upo9z4Q!e%|F=* zFjQ=)2Gwf65&HSb!7x#Z?*T3Y+>(L7VAD|(6#ioCl1Kb%3uVXmdox^MGJNJIYzoD$KX&*}*$aGeJU0+`}G>5_}qPML%_ zEyN@qD%7+1N~7MLgy?|*_s?%&inv>*fY1&@pMBL9NS4})n$s~Cx60w7Rz^2c_am)Z znwkP5V4Vyle008x|5g>9=Fwbqoml23??7a_|4a+0gga^@I@FxEk2a#FF`zjuv*wU2 zHy50BA~e8e8LO&Qp0@KxB!}Eji|1ShxQUXErJ0U3mmm*abvT|?_~q5}tvi)|`bRD_ z`)aw?!_cLCT}QDc$zktu^Bw&A0n5_DyvANgbY*+Tf7N)!*8{9p9o-xBVWik+c-9K8 znPBe!dd%LW?Uic^XG7XvTKi1)9>X&N7{q7oH!ek4G}MRSsiW!my}_FHoxdT9jD@#T zAE#} zlt>$6bhX5qK<@3%ric}Knkw(#%6T_ob>RI=fIhos53FzGugpz(1v7*Bs>yq1#oq+Dgh zue17IsCd7ps;cfc$P0$~=nxU`6buf`sP0>&!aaQy7~QNV?)g$JbDe-FlWua_Jc9%) z;YCnR7Ui4KU5GB56eWc)jeR8_0{!=!S;&iL{w*o}sC=>iFiZFMNrOmRUYl_EzStsX z>?8hkzH%f22vC5z7w3s#vwm0mqdeSPpUk&Tg z5&%cTx$_I_$~)q>e@*xQnjVh@?;j%&MWQ4;+Ha4*8`6FFyaCHu=WUe~#(S!z9)fH2 z`Et?0XWUgV56woWjFV`Ge@KC`y+KrwpPor$r|WOz+fL84U%SWm2|qZZdR*|oovwdW zRfs3wexw6A6&VZAY+@XZIMh9S%i@bT{|}OBeH>mXv-sp+_1Z?VZ@rDm%YfI z`6aA&rrlo~+&=xhepG^nGh8g--31eR+lr;$@EA2@);y>3|IBDusa6n*x8WGxS9nOJx9x}2EQUJOQbRMkk(_(M8Qvp5?3 zQ}%uqjU}jfe>wYK+R`1@q9zr4IEc7+?W$bRPRng7v~|CKR;C9;h zTHdmsIPjLS^1`TmL&*#TRQtaMv{WJGhT z1pB8)8qn$6kwd#Ms5s2U>=W>xG@u<%-jL)FR-6bE#9#c zTwmWw5*t?Yqu2HheUyc55WyjTVYNcIX2-);W58AAE~+vkF$JdEfman$tQIE&N&3P+jJR6gk)HV`>Th_K3o~h^X-8(|imXnsj834+N_WYa zcyy5(^_3XwvCeWU=`Yc@X6(^w=>v937CWrVU0A9;7!LWKzs~t@9wXW0m)Yc@54ff7 z5=-^bG?$rA>P<-(U4cFJ8(6WMK#lylmFS8zT7=9EJ&|^oxgDfUDl`~&mCVJ(1iX;p zefe1Q``M_r9o#!V8c98-0+BHl0-XO&4q=YMQnkX5epB|Aam7CEV zGgv}=lL`?Y>}}8z)vcxCP2?$XQ1}l?JI^A^sz5l(v7Ome#7g<`)AALsvk7MQVs9&3 zOt;x6%#;omAmzCw2i+P!?em_m@CM%MJoKMvk9B-|A)$t_bw`bbjLyehhtL ztGxDP{`cXpIO0k4w--AR3$Y*|VPMyrXHkre479pW{U^BnPPo@mD;IsV%Z=|;yOgp8 zn-YU)XFD&sjisi$qg|H=OjhX@&we_=!-INCw*oj_FkaO^*^sxGEbX^=?LA-JqilZs zp7<852bRc+q*{jz{GTc*GC@M3>hAK67ZH~7El3;jvHYTa479Ya z%nBLtvDdsg1coRNN|3{LDT}h&wOD@bp(pa0OUThc+>9fB(N{pLbGlN6pRj_=DLn54 zo`3tZI=(gbjZgGTSMp6_@=uQo!r*lMGT2IeX2N(9#QCDteN9#xNLO&0?eJ(@zM)v? zDc}9NgO#u87ZQ33@BK?;-Kk&_n7Ppt_H2uAlfH5d;A>kNI9jp=az$%!MGjOoRe*^4 z)2pDp*+3{h^UAR9nFY=zWu}_^<;(&N6Ec^Wgtmq&R_9u-4mi-{K0C?F#qYubNsqu)ePUOH!GZh`A9Ijc*R7; zMD1(9Ku|&4aGf+SgsoZSDEWy%A*@a#yW>@=Ny!id38XoQ)(N_W#h**=GdYh6 zTHZ6(dax)wVCc7q%se)= zN4Yv|wR3lyu-?d=eD*_V@@Dbe_Wl?W|HoIh(+8FFj6s-Bpd+L4yuh9;r3G#FmwJO4 zs+~mW15(@iSOP;wWe5jkB)0Sa;NpkL>&JAKdF=FxhQR#a<7$+iRF7#;uhE(OE#)Nl zPgYSvwf3~&%?hfr&5aTuRo7r;p8E#6G9p}o;zis^Zqr4GmNG#5-2)yNRDj z5SnuTHu;>x8!~Lr3M5=Bv_+Xe-*xP^aq8KrY;8)M%sEq1>62e=ZY=?OTh1HC1joh( zBuw4$*{pwFIEyG9&^~bJ7K}RsOyA@ecc@B_(^R@MnLK0W!f{Jn3bsu{J-K=-4xo3A z$A_#!-RP>drK;7oNj<%kA+cf?c&#UX?kDJz>G8`+`+ZFD7AJf-Pgq8mHGz9?Li{9* zSLGLAw&OkW;BY^_++UgTPv|(X$dUVBc#~l37fh(QhDXUOJ%CcCB%w$$IhIg;{@IDK zNreu7#2jejj57{;&{d^d9^wZs*_bwKZ!kU1#LG7rjMqj?HpZzt&W!pV2=&E_ zG&f2(Yr~7#4tJ^!J)LOoIV8b?uwu8|H-itoa>p<^Fg|9`LBSOgKZUhZE8ij)^`i?7 zlu)SSU7`fa=UX~9=pd=cF$2x9&2fJf&eOY`%{K>|B~#rjdA=&17dF9j82=8GEY2N& zKgiauGYC?elio`2!FS2nR zAumK3q+$_BhQ*z_7ry*CMlQA#PhtO=_*!IOW0fbXN4r2OE(wpYmc?USpdKLfy>iSQ z8cRrB8eN?(MvZV*`<2(31DH|{G)z*PzpKb-k9(lsqnaW z`9ABwmNB*y?Y8d5&DW|ssJ zPVcGv{9n(3@?^tx8*iQwa=X)}6^pZ-i`M6W+O~ZWd~A8Eqb?I;@$%Fpq=yH}L+hrC^&y7Kqux4pwe{UkRbxk?st9&|6+h0vje4 z(+2ttS8cK%Y|PEM@dF;Pws}UPEE|>WrmmDb((yZo26SlORAr3E0)^8!or%FXQ{U*a1&c=3wpOrwo5*@r zV@++fra$g1wg3fFDwRs&>Hd6gOQuM?UaesE{EO zHs%)j^+pK$OVCF0WNqX8k?&72attZLT?)(8YIYJ_@WEgqUjtAyYNLk$brXAdr>gA8 z6bv`43(CE{2cFZ^1z>?LFAZ(p=YhJ-;dXspkCFO-cR>N^7bR6~s=2n~K)X~0Sk4bU zw;*hI2f$iSuke^q{kv=`gF3@yIc;jqq_$4Us8X5|*RT>+bdym~hBC2;`#TDUNEsEH zU|Q!4OgkcJ6H>>Oh(zyN%2+pzg8}i%8V)1#H-z+9)vJTcaF>FP= zl?R>KV*=x3*}dVSIUXQwmN+>kN?Ko`kT&SUfB&uj*-10!)<#87b-;O+?^E=dDiQq7 zdZ|)_F0Xn% z?ytwbM;tGgMv!GgAgF+LF4oXF7ICEUN?x%usvprx-x(nw@F<5td586(kH|MUAkO1jYE0oORiJ>Xo^^<72YIeF)-)gft){lozv!avU z(ag&1Mo2wNGh% zh*c2uVMJ@Mu9V>GqffuIQ}Y#at60ixVn{*E@=p4s<*$MbS(DN zun(cG21V}q)c?*YZi91QP>p;t7}X>%&kdemv1zPSUP(xpb@Tb71}Z39yJ(^~om-zz z3Az9h2R2c(xc)T!*t@;}3}7%;Did3m$I6#= zf?H7YJ3f{lMj>_BBxZUpRx&v}JlquM8|qkBC%T5=v9p}zHQJ(F%1($2&QFSJ;yFF? z4P>W`3Fg{dV1e9+AyM={F_}fw5yQF`o!VcYJMkT7guB=MhTNO7lNgoh0p9iY#iBZj z{#@TyATj@QKzE2`EFvPv)w|2`VO6TspU-$R(e0cbIO1*KY(uJ*EV;+=Q#GpJ)ou9@ z{Umn<^NPUeX}&{RJDQHrZijw|<-K076Cq^dJ-oFr8t|p}X+`y6#r0@T?0QG+@EHr7 zo^b9~l(h)WuG;#}gKv9@v|{(({EG^vm^U2@ihyPbn!{MxX>Sn{Y~uDnsv#zHwXj z13ef{uRezXH$7>|9~8%j)zwkg)Ya9g8wM_A{e7qysL5CHta+Av59i$GqewQvfQ3!G ze0{J?Vgn;AEJ{P_v6r0tTYYBWx0)c(_Ct$$>$?S8%@zl36A`Tx&Z=>KM`J*VM`|;t zlE01EdOfA9YsBNqwcuLG=IfP6x5!18yBXCe)Z4NE=%p*|a_DJiI;Ki?frFSgS3GUw zlkPkBN*+QprPPnr-xe81x#ZZ?kgGllDbP(?JmXwYpgkAUSRz(u3^`|(iGHXSB~;B# zir~YYurL$iC&mgW-jM?GkS^3Eo0>!_@)b~%4qO7eDY-AQNz@hHKHHjfbN>OcEPZ3ZcE77#F;`GVtrP40hJ1(y`S?IsZBu)=Va`sV1?W zM0JWtJ3!@{-r{Uw_;CjNBOkV4)24GNr8CktsBvq7X^2fTa_2er0MU;DgHA&_rrLBh z?4wD>vDBK=iN|D|9#bvWTMtidtnwA!9_e=Lf&`v8nbZQafb zv#@&y1}3iPuA2r9_h_zHq$5X_mJeUSmpbK<5W;^GsiB@S zW^Be*HEOP?RcMYJ#EE70xj;>BPJX8lhAR4cb1H&R48+^>k$g6RZ661*y?9 zIIlfewe&5#=Na;X@R~rMO>gC_iLXq)bOb>41Up@t zeD+;ZjCW>wd~B;ej|^l8)C#3aD-0lZK!lS4R?^;H+;NKn5NW|X=^dLXPnWv(25Otr zmavj0L9OKnq4M}h09&Tp$FY1D?O(PUlTL-+_>LRDA-`oYNB>9)bs!0FhC5yMqW#;u z?(#CYQrs@lE2v77V!_=)Q`2ld3zGq_-t}{b>Em(PBirWnLN`!6SkLg11thqfI zwLQcmri_q&Hk5NFIO<2%R;S_ZSQQ-R#01ZQRS$8?V|<#N+I&NqVhN-1r=Unh0qfRAYV!qm7k{oWGsx#Nk}e4Ah#{K zU$^8qouMkOXr*&V9S6 zT#OZuh4tu}685sO_?lNAy+3re%{GKMs+JJ#$?Y^#OnW`eBZC95;BbvQuJC{*WVH4# z0IoH^Mv3_^d1|?VrV3(R?kSk&U2crjxsu4m0Qb0XYk0 z4e++|muoOpzy_5WdK6%MIbifOK^86aaY&u{Yti_2MitBajkf)m=DG=8Psb;JJ4{c( z`1TH6{0##P!H;8gb*T$>^$X(_WAxfxIa)Apl8oLi_5>{$G2UTQ127QH_;HuoP0aL5CNQf{=cBed_n?-s9hz}3cqfp4+3AlvLaJ;mcDHac?Y?_T!v>o z;g92ay@NAlxo+t&JT<=W;j}R$fG&F8tzy})ay;5{UD*qYt|&;Xgy)@>Qo4*_x2jK` zly_7e8Xdity1gNIP((CoBGBVP-oD{c_KP^p;A5u@Js`0RV9AoeS)2;{$IYB185yij zj);tqJW%`Ya)&``;E0*eVbN>9IzM>8^4Pz#$QrkmTT4|)r!%5LEzMLVYWO|48_%`w z6KGLg#px*Eq@vUtXh#7t#)j~&IH}7pb|*`jjGFVSF4S0~L9UYBRq+BiDOK6S!@TcY zIbR`0JQI&MCfpVGCDsXqvxl`bt>Cq_;na1j=9K&TXsj;tj}3t@|M0A+ILe7){K-pt^Ijg|LbW_8@Pb(*WaaBE|v1;z`+v1%FB(`6W#a^2G=zuD}+4U|7dN&H@>mP&D%c7Qa- ziNsC(ujFz6vnGeNt7FDQSPeQPfx7SO*p+lk{7pR3c6{HrCY%F~urZ-_5d>1+tzlNq zhGhHOQUS<8u0Tfp^P-`+;@g{}LE&yQlTjT&`K0yOoJ8-Fv*-`ElonIV094R+J_5XU zmbT{u>}9=bHQ+3NRh$HtOY^LivbU-0G|+VrxD*-i`12y5TQAsS!sI<1yA!suy=sU6 z!iCI?^FGKS-0ULqpAT@LY&{1Dx?sp{Jp&~efd{43HalsPG3EQ&Y*0sZ+GP$C^r7$S zIP9aB(Q%*m9cdw|k=di#3e+NJW3~BlTBjFyM*5;8BWguUtBnBiOH=G+Yqt#ZD58X6 z@nK$UExIyXO(p?ZtiI?{neRQUT;HZJqafT~?li`Up<_tps^)do=Cx%z*(5-=lq!9o z8|L~ChK^jhbz?abBL#sHXgj}l`a3<|LU(~$GlmMo*sF9cV*JckHpz&^3i?f%c8dz* zh$P_J2r&h33UNKXf%mlByt1w5Hq7oCc~T}a%f^8lzdmlgTa>U~j4G>GvxHditq&M7O_S~@af7n`=>Y6oK4D6S9KJ0Scz&wi&jwV=AC zZx)-c+j~BCvq^qDmo*AeDal^?ob_v~)I|G=vecXS%DQzo`)qzd#rSx9eZjcWQjR}} zMKg_x6VUZW^&e;X8I}J;a?2r4!<)~y!k3ItFN-AKM>hVy8PXU%e@mZ@7xOrZ*)~o9I7cSET}}t1|CMMl z$V2cXBLx`LReHPZ^hMlRqo2=^&`>~J5) zI-XH2^(J#&mlUXx7MweLkX5*(eQ__gkk}Yy-<*)k7Af(8174^4a)-m1k|>G`+EwVv0X z&*1ege*^?&&&xLB;CU(K34U~PJ(zY4tKOe)m%MGo{A2NPSKfhiQ6VmU6`tN1W3YS99d`br;{Sa*=^%%R?|hz z`(wrAW`0FQq(><=p`QolSl`eE;I3_VaFvb{3%w_$peqZUsnfY`?@vQkgl;oWZCmnQe? z8T;R(Vc7?V`$`vEc>KhDPtx`*!#P*mUHTo2QpCXXtn++C(6!ndkmbvb*~^gI1u9*B z#Cpid;Oc6os`!0fJ_-Qp)tztu2%+3QclkFLOVxAcP@ItX}Q5P}9V zi~mb!b``ip-F+~G)*clA*mSpJKo>EZIbsU!h&s=zS0)^10jVIpbfEuxGI%mlqSsLc z4q>k+?j>WLyF>?c2!mT~=Riwuzn?AXs_%`{A0So)QP$gWl4Dv<$yK1^EkpG8l?gV8 z-=B1vx8bwrqQ#eLXf*9&xUfiIWC&93XMSmAnGpOLIC1D#dTp$=8YH?WAk}EzI6sYt ztP(b)Wl`07YF__0@JA=Tt|288hY=$S>WCfURx|d&y_B|tkXActWm-|YY&$3J64wZ3 z#o=3smV1y0Bd|`fOi8QI9yur8Ms-;F-UnjH?x+7rfcWj@qa68mY}~<3fRY8um9}4Z z$ZSMu?be3E>v*>a1i2Ca_boU3m6n1YLi%n>Ps^W-y2(4NIu(MXV*!&#K>t%Q&vMe} z)CnAJRez>4yfN)|Y>lHM=%y(;ccZkmfw0~49v0X=S%rRQ!tnIOGH?P-79oCUmvB}6 zCg5hB1u81d{nLz@)yggVds8_&3+dRBxy6n1^kR2$TZn)bKwi4s{igBh;+>mgOSD&H z3j46>FW+|2z^p(h(q2E>Uv3PAauPyo#Lyk;KR?iUZJs8+;N;hD%tge2c5Om~7`G*z z6t3AngF|Hab4L9wH|%(O3`jB?}Tt`VLHM=Wj0pq1>=liX7MmC3nPd#M&4U^h@{q8;;3 zZlFsgTpN)q%7Qu0(tzj3L9gP=uW0VR2?qRm zO9d*M4&Xr+zy3*WjEj}}U7b*Vfm2>j6ITN!z><@a;KZh367`_T&T5QEJg_B=r2TUs zf#c5hV|&P_Tkz)%!-%ZE;H`;p+N^@k7Vr)&pD1J~@VsxgG;z+hy`1kVKB|K{tp$}c zg9w7Qc%RG2$mn85y?g(N4uaNQc}D^6Q0ViuN|m7@NJ>iM`5hW&#oiJH4;l!WQx4CK zwEdw(Fl3UMZRPF#wpdSd$ZkA@h2nJY3?xDM!o$jr%9M1U7-hwQNxdl*wlF!nVJKF zq`2|`QlC}=UUEps*w;Y`F-U+W^obY|)UTD-6tUXrOeNxVSZ^`#&cV6h_dEM)x6SS- z(rob{5e=BxhtD*Edw{R`hYrF1_zz^WPs=MSxGSpdv_?j2`K>x;W!_on_Z2|m|CUo| z-LQKOd!NQ04XU{WfCu+ebf%s3t#3f<6Ti6>B2UpEEsL;2XBKP(*!1|HDn~5XwBlv! z&-wV`_Q%ulzPQP{ye-MW8I(ouddG<=<8kx-viF)G?5sE=)kHPV>{=WvyGn5=n z;S4^`U;*^}iHe)uqk5Oxf5zp(m$Wt-%;N}RUpOuc<3u$Y0GuAh=q44$c0bM$?I^aY z=|pyFMYf7sN2M}(WGE$44f$~+_3MKfzqX8C4ngh1Tr2gf7P?tdkJE z8|~|Z9=I+o*}2;9kGE}p$>|6mZLdq4B*uF6-3u|c9Tim3&{B)tFHE?%)XcI1bc z40jt(Zx|rA{?ZimQ5XExe>Mr`!C0uV<&^C+HPb(MuP{fwpphq14M< z*KJH><@er*WI+4Vj7{O|ZcRFheR z?XU20LYH183I{(!5Pd%(QW8U9*_ze=oy^92O^Tmv6y@Gc=1CYqW7$)flIgSs?4&x3 z8aiz1L+Hnvh}}Ov>y$O5I;iIjy7$n2@?nW)xOd;qmOqY3BD)wb} zA8M2-?dRn`Q+U28ZatfJp7iE&q1}IOdUC1Qo#YvrYdqieWZv1*IZ8W}L!xV=Axv0_n z*B}{jfJUTeg{UCwQskuf_x*|QIZb7%Ydcy^IF~6{cO`E{j$+h08tuev?4EA0r?hNW zl!!A6?q&J{2=)Xi!#FIU*7~;53dG3{C~M?1G$5f94CF#}ydj-1dS))APw9ADyrBUi zDqB;b!D!v&a>Nk>Ki^bBQia_xqig;+V1t|92BmO0a7Lx!*-sS(Qa_Jj^ENIE`KXyne7zxySU*MNb>Mn4(X*Nu zeX;B8Q~t|8yXQ}ol$8JK_?;Hn-PIUH3+_r0v+fTF^CGFbi9qlE9R<=21?AnDL6sU+ zUn~~IAOO7c*HtpV?vpgqMa7aMVThStkD0NNAl95I#xozZRtpEb)BlZY?C2nM-bzIv z%x!$PN4U&&^vlR-<4DEBO~W6sp^ponCxC2o^^2P|OJzEnD)KDK!A@8An1Jea+>tR3 z<9Ot{kY2kRLXc0Ph@f`RRJynTv1;2uWSjbN66;fD9CC89pK>C8PChd6>1CwBd>hGp zg+We!Mrh(H!ol37d%*s(^KArM&fgL>--?eb<2#JJg*y)CJlr7iyTs_o6zXA8&9eR| z1N(do5$M~tLZAcMkCCFkNae~aPq_@ma1UUn$0ekgHw0%BY94oUcRdo6$YgOiJkE4X=OXh?2( z^vW=>=x$xED$
o-^Wjm;H$UT9&r;al<5T0+nB>iMreVa2M}`+QrqXaCM*fy5qG z%?FKtL$g$0BSQaE^PiDTGFV15;Ieh^)a`1%=48u))ssor5Erc_^R#91bdm!|hv8cD zeStka7qegf-0B!N#nt?9g= zbVXMVOQ)v-OHOUyA`i97d5S$iaUj!im>79eTAZF4PM-NoewD;-wCwjZ*zH2Lh~w@d!B`lxac+2 z)xJ@#D~)^q?yqE`vG&M5aXQ)AF}c2hn)~~=S5#CO*6cU2l0?yrL`Ou}BP-mQ7RJj4 zcaLmO)7CJ!q>WmaVD2_r4SyY-n4nL9-`wmO@dn&Fb3{&oXwo@NviKb|UtKgKnrUTZ zWYpBAQLriPC*28yMH(r{$N-jus2+gA5DI?#Zz(BS78ZrnS3_z~3#;-%Fw*O~x|n1} zGRY?9UmrJL8}jQ?OG$ry#J~2@x^EYMxQsa6Tr{s4t+fQl-`BQy%%u;Q$lfO{U6*fl z|8?T-sx1gHDzTs3ClcsN`7)j+edJN;Di#ogVQhr4)N~j}e=PkW#}xITh@j(Xxkc6f zhJE=ouF=H2<89NlRO2`n)>K44a@+&M*a^?XI#M8rg(0U=IA;)nsX-$^HKnFLaf^iHdv$}zFST63}3bZ(xDG&rI*;E%oKvj|dV3DMH$ z$K7@@-+TYt=aYP31xDff&;SSaZt`gU#@t>Cz3Oj224@cX3pqn;jN%jr)LlxN#Zifc z`eQ5J`|*Ku6DSW9{lKle?mq{!x)Jwkhu~)D5M&J&dT~lo-}*IlBtyg;eJQEX?rw2x zfxIKcO5f9Dv483{zIkQeIOv8Kf3Rqw7LNu?NJs>SOMK1v{{1^JQa*_?Gcz-GPB60C z@2>(-&6VkJo6_>Tanmb4``6nD)OrppF{Amz1Q^Xn^;;7U4xnBFfj|dp&}!JYv)20_McdLyLAEr;Mx0&k1e{zY$7vO$L{O!xt$y-bFcV}I z0sD$R;>e5xBEZJ;#Jk0rQPA>A=T?U-5Eqf@0-3(iHfE_Op=35RG;|HyPUR@vVoc1= z&EY3?Co6q_b*;+LgSnisW>B@#>oXD47trfbr)P=!@j7f2$;IDo#6Z56aW8%d?M@kH zRL%MAnHj>g+!OM88NP%s;NKlj8&+GXHY-DZ@u!3=KD#MMo2MVcl>OI{+N!FmJ9+9! z#^byYWe-rKw1t(GOkS9%_)GQ$5e^RZd(x|(fvvvq`?tT7%w1h!TU(Npq0Sd|;+?oA zFBRW^=8w0B1;7JexS8W52w_w|<>GSKoaovcxqFUMwm41G)OtlOTNfzkRc?`B?a^J8 zZ!Z74!wSh-Prd6+5e)?V!QPKq;#i-#%!v}t5j%f@w&#PZ<>yon#I(< zD`E>SUnHySEbyTG;VT(Qtoh|!JNrXRoT`YGpufLi{J~IVa$oCE-vjuH7%2|MmqV#yi6p&v0K2QJ|_Z?7v@f0U-3p(RF-$d@1XQ zyZ$6ealLB&zPbFse%eb%l=v?w-falOq%HW+6){h!3_0^ z#Kyr5auE0Q6W4)Zrf!gLvpp3!Be33-{Y6bbz)jD|7>9Ww)6S;r_w~m**Q3emOU8A1 zg-3f7V{{E6V?7ki(P(S%r_;R7uMje9ZOa;GFbm_;tn9xhrn7F?#*o!|3z=+YT=lKT z7+gBvSj8U|LLl`wUPb`s{}1*+3BSpH7Z(@48RYZ3@4gd{)ACkVS0^-vAW|!TkvAdS z5gr~cWS(@v_h-+Z@hv2c*}8RWn+{C<{ryRMcpSUAxrx(V_%|M6-rnB)9w9%6KW5gf zS^VSh(|Y+I$HT*e|INu+LexdbnR)*FIr$UmoQSCBulbedLAD8Sf34y2JCXmUmh*RY zoQpv(9PnLzchMW2?3d0K^bilvihGog55`*J{cSb%rs|{2_s%Mgb-3E9hVLJ|vyl4B zGRz^qhAW5gvJzgEQ?Dy%ZsoiR!oRx5x1x_v^h) zlRk|?&*RYB^~~#R^l%eZn5K@M4RN-3oddN$ShjZ|b#M`TEP~w=%C4CQakC(18mw`_ zC&DD9iIT=N_DU*MpN{J@smgSGc?HUeg%c5Q!iSrrddL%wdoicIC1a`-FBqL6FActEyDODs4UrZozzl^?f=p+2yRUMq zJGGTl?r=I3%HnWI3{)gY%9cS%5}b|K+v=sxng&IS*t!_SNe6slI#az6H!hK1@{t$J zgNkH$bW;COsj5knE%T^|t3A+E4EIY=a}hVPdanTSB?pK%7tjLSKb7xYm6z#!Hq$RI z=HAxM8lI=(uytotVx&we>*uhJ=LhHx-BVg>+B;t3sgw&ESEv zv$Fv1Bqe4OHnm&|}DJIHXR4g|CLF-%=5UA>$tO``Ln>7$`&yEoq8O0RTa zR?d*Gn8L(aAmT|A>D0+g)->s62gPn@=71Z0!jsDJVJ-#Ir9tRYFqDT8M* z&1caE?^?Nk65M+-RrMDKcY!Ga(+3O~FmmL`p+kob88T$>;K6(mg8u#c_tO~BlH{*K zKt?z1Pn?lLcJg0+e0=!p6S*orSQqYX?J;-K%}kjxMQEhZRgen~A3mHvDUXfzdN(&eY1+6o>oC56HJ? z^XAR`&SS@p36D?i9v>f1)Oy>;x$}Z``{waASf_9oyEqi13wQBfKgzDrp!}zU`-il5 zt$H%uF45OD+_g^Eiq$;R#AG-LUx8k0fc~_KQ}NF=Rg1r`rN1wczd0&zNyW7uxN3?) zt}%Ol2z5dapOULiDpco&!K20M-))n<+o~>4(TkY{i>IOJnJC5ql3XFfgUWQnD_rnW zd$iCN7TG|GBi^xqJ`>3n$5Q#r=(CIIy#drJCy2Ghi>;&!Cn){QDX($hF^Y5V(a3Kc z1eu{lljx;ZOuP-9F`deGrjE>~&iO-bFqAApmm+Y{LQLSE8$ey~m+hacNU}vi<`8I( zqpYd)IqW)DHfuI)amM?6*hBvKLIj&1tGu{WnZHbVHcqlRNETxY+dY+4ixrncq12zr z@uV*LL3y;SFkDiTgqx4SHw4NhaPKnF>{M$W+gc!NE|j$9Lo@L_;z+ZGD%>xCd-)&1 zz3I~yX6kCa><^&-g~OdUK0-pYCjp$+fGUrwzqXqY_2x~OTq;)U`~gp%JlVN(XINO6 znVFeVsRYe{EdjSU6{kbE&z?P-kA2UXGl$uwZ*T9pbLSG;k}DG~ zySTWxyStM;e0M^WGP%@|BS*T;{~_vq+o0qz24M~@!OM_0y< z9lKz`f_d}iIctoxgtVW0lJ^YKNJB$I{ud4m3>1Dt!gTR_5_zsZefp5c7dkCIAxCSv z(^qRTWLyHK6xeJQa|S$4H2aR1mpEVTVt6Lx=H zLBFYF-qzAwt@di}HG&ZT&1LxhqU>$9`qn~az6Bi9ha4kCp;6z0KJxs&xUdhKZ=}c> z2shm&PnO~DR~t4a^i8ves2Nn)G+1Z@F%CGzS-#wfiM6K|O+`VIdAP$iU;6Mu=J-PT zU=Y1)0lnG-VrD?-6j)$I`%IG9kA+!dz;P_Nm|{0G%H0%PO~8%#SZdxl2sGp7C1p9F z-5zkl7jhQTc?%&Y7;=N?3%=Bu`O=;4GIGEIGw?T~!mUu!Oq}5W88cw@EZE{oZ}+12 z`Ot^MC2-eW#N!tScL81k zXZZ}14g=ZZvvf!K>gwtURfi25#%HDrxg}yF>}wP0{SM*o=;+ArB$M6yb^rhn07*na zRInDOcnhf};tL9y^13FB)~2MS@E7Sq`I5I2{@|@!w`yTsXh2q077u8`ZsA1o9wXdQ zoQ^3@h!m%X5`izY{~+i3YvU>_hICjhxlfG9cDr?5b%ZBRb_fwRNWh$(p$p@8waRrA{9U;?+T4KlDI&u>1^N|(>l0OtlVx{i=rvdx)QlTgGT118u(WU#R9ixkHN9mL9X*8!ngXF#u+)}X zGF=ii6@^=)U`rr;Up5P+xl(IA@p?~K<;JX-jbf$~IgkA(QC{Y(iwSK%3g(PLjw4~t z2yhw!&LhEP6m~VH+(y$bV~Kc2bH_rUIf}NXQ>RfI9H`xHl6_uqzzYs~QG4BBn-iqZ zq=P4dry1=whFjcYnH^5CmoA?!i?O1XSwZYnNS-bWw}QpCkYFzju>^l}h_-?g3)rei zwqY675XH^LBA?fnBJ%k40dU1%emhcqJ4$jpmbtfF*1AUie5dTyA^OQV`dJ?Rw1E0X z6NhQh#NY4d!A~`y+Gz;>7Y_Hf_Q<$E!!293=pOU8b`wr%6U|^!sZ;{m^z`%y@8-;z z6A%zU`iXb%-jTEX{QUTf6KOAA@<|u&o zL_SI9)WdAfpVvBtyH-r5iJm5r12N+zgxnJbq~WCJHd*c6DchHyJfHbShB|3n-# z8KP#O1ZOS;pE?I6&gP;qi>E@k4HaNX`%aX2TS(l;Q*%v$xMp=dZaEHb6CfI#Fn!(_ zPK?9>5~p!%t~!kc*D>4@tWne0xapEu zYc_HM8*YIYThZYYSfB9_XhoVQU0@16V{q(5IOhkA@%Tn8O|X7930+$T*Oo}D{qzo) z!uiR4@~0Y|wV;lVgVPppVJeh+Qa2XLo~)F=+^T$YNdEFP{VWHb6u`qm_(oLtm#_WX zgOb0$uCUC1{KtRr8@y&D(wpd0e%5=3G!*9Ox3#l|fSV^f(VpVc1!AS_F34W54fnTK zaEEZ$tt;6r+_g%>zX$rqD>wBJ?j0?wtqpgv7PMqPP=BHzm=xlVuG{3{Fm0q^luIPrjp{-gXtUUBT?pS8i8Rd;7teF}TqY zH3di>C(E8~VV@qtkIzz%a@YqstN{0xLQ1Q)doSDt69!cIxJ0+di*dQd3i- z`;6oY-rnB)?fUoc|BH#a^E~}1$^8n_oz3)Z{fDm|2HAV!!eXtR!Tkfo`9(agymze^ zf;aUPaei8p5Q1+nHo#5&*W$a7BKfwKep5pc|3Lg2&Oc0d(jfj@;+2^At7_%LGOmE| zt6J6TGWb&|{B8%^;7J$vMK!}zx5f;(J*v;mk&1g}s+P%y_bl}*#>y^@R^|;iIyY?K ziGhRm>ly7=sE->O9n?46*+)Nf02^n*1Wf`@OYpHFyk>kRB3~=yHyMcgTjLNrDqTRMCSUSv&$+b|1BuV9H6OyD9X0Tze@J;!?PYp5k! zVuKTB;FMW-`7DZf(o7sTla8832TrCuO<|5PC;xp&_b`d}F~>yyla~PgIss5eBfUBo@liTowPy-mc~4#P5H6E9{>7$lSd5F*i9 zCEX7lI>cX@&kz^?Nr(lti6${QI5_aH0(@^F7P)-*;^4u9&_4W_mzUS}aYw>$@adA| z%7%u9Z9S{a!mlC=nt4ycHHFEv{Aem4MkjFpYkPHHau{DKnd}b^4sH{@vIvb4(j|$; zfAZuBe`V4s^5X>j5UXwr$?w3QHF@&nuE)2(64Q>P>-tvylnS9Rny1%Fq`{{E8kcZXH?7E1HSLfHVSVU((6V*hU}jhZLOnNa@IF=FJqpDh8M9w0-=&sj8KC7OsbEv^G>7?97+*`)%L3+4 zLi4S_dlDk3UX{P%oV{}6C^kur6I7C9 zr6j{Zw%Sm#xsPhAq26}2YQK@{U?1uJ{`7(VaC9)_nn9hbv=%J8w0sJ5%S_c?b)+OD1Ro-(frF_{z4kYOKiT)d`&SirWY?>4DGo? z)22-ma`rtvJ^5>r6C)xb_=EXBk;~@i=kw7Xa*UAe^OetI>R_a_3%cm8YV za7XQnG<{gpLmY?c4DPRLDdIu}U{NVxUDo5*Rn&_*cv}ZQRIz`$toZ(r@>VE&$&4x; zq^uvw-X1T1YS-tDz0vcTibpe4O|}O0W~ws-`yMtl+^y=fUDjtStJftqVhc}+y~EV1WA@UTE+oA5or78cra5&4C-Tr8gW zLK`O3nhvzo$a8b>(fB+wP4Jz=F(O~*o4p4#IUr;bL{5Qawy?ySTUMK}exVhR{=nND zyP2RlW03PWo<maq{tQNYQuDWX;vTE#(wOM0rH(jitQ@t9z(@}e(FO5<$Dd;oeI2H zk3BI+l4pkN=Rj+y9mC6j{Id^U0ucJlJ@Y)LcEcNO_(sj-rj!7lquvQ0{6*&G4#n<0|pEb zUO~uRh=eB{o4dRFh!G?Be-6?N(v9`#-|s81kI35-xObBw^Tlx2o#@2F{q+YI*BQp5 zEci}msD1?Z8v125rBx8Py(X~u6wJf@O(XTDocd$2`j1DAnif-qW>7wyZZRKx*G%@v zM(?$Q(JKe_qZzUX(~Yi8>|Zcgyse@gPqFX9NaCyYXZ2LA%b@gmApF1ANe)8#Q0v_WyCwwQOK5Q~tY(p)YjKeH}=zSva$$k$LOlUsa z7~D-5*Rh&3N@Fg~W}X>Cx)~3m-!E|Z`gO0zH)<+GP{rL;2`Cp0kYlt^nt#L!-Mn=50o7qpg!2w;DCOg zeM*D<3i@O}xMYGVX0X@%WG&03PqWzSuoakUEaIMS_CLI3~|07*na zR0-dlFS(z`+|A?Rt}WjGx#2Fn?+cf*Nn~={#~CJF zL}rAMOuk~5(0+1#UUZX|6FJWZQfzE&`1T0Dz>h!vNO}T(M4CUB@9_AqmbunSHkP={5-Pv1n!+e|H?-bSv%F4Er2a^*yYTo$Ze?`m7Z|4tcu~*-))vFzgYK>8WIkj)Pa)}kp zv*3a=uBPBV0X!yw%LH&DU(FE#z1I}vI|cl#xo|w`0K6=~XAFXz|m9cU*)lj)+fYB-=gG@c;Y6I13 zJ=toN{yMd4tDfS}AiZNlln47ujto*98>)YPl+o#7dI$Q-cB!T0^<}S;bbHc6YRP^> z`sh%cI{~Waz`Zd1e3j(oe#!IGG`~t;Qvuw`g?srdaV{qF9`5MZ1NXM}1Q?-$d1Pc{ z7Y7STDMA2&-(OZ%Mo1)RTf%fhLqme~7cXA$M+%Xdq@*PNl)rYgSO-BEk-hwprlzI> z(R8`Y|7rE=)yBrgd{tgPN<-wZrKM#_Nr_fAWQP~gdNjVNsi~>v=H~pYTF?|qBl`W# zn>QObZshln?niv0aHHblV$wH=d96?=OiWCYlau)$S$A2~HqDUi*s)`Yt`|B60|Nu{ zV;(wm=&v6yN7d~-+n?7u;IA0v-!-5P;r@AK{}Q;rs_zEwTKfGH;I45#t6dzpe_Ktz ztD^r)i!HZOB)fA{4CBJE6&}ymoYMQ}27v=Zv{U6)vHyG2`P4sVC3@sbd_k=`p zOa=vm;g+rRxd;25ujEf5M*lN#@H@}`jg#~$hO;Gusf)(=yrbT#84QuqE+(wIIrf-{ z-6nyv1g8te-a-ds$)cNqC+)nrF^MZ`{nNIpbi?7|L-hnoZO^`1|ZqD6IY1i?T%Xmac?PZ4iCU8;s`Q+t*^ao>+^Jqj)*En(?N4pwx$?~ov!EFq< zkK@QrxIbqk>p6-JHb!yd(dMZJ34fkO8Mhi3DyM>6jpcOA* zg*|-0UEq!m*p>|H7qHvPuXpf_+LfKmI^5U4P0AiO1L9Uy)s5?)h;yMO%&GaVzCM>!$;R|R)5-#a~~lliM1 z25q$9-oAblC)?jtaW&b0Q%V18p~2hrde>&7s$pH+0-}gSUXO7Tf2luV%dsgx*<0Vz2RK+9J7fn!& zpWzW7cCjtEm@;mrteZLQW`POT9mgXlGs>B8+yXo%g6Bk-YoQtQ)C9)~kqOXejQZd+ zjbYYkG++cNs%F5x9@y++{S! zefv=`eI!gD%D9bysPVAbn%-xl%oq$25(t+=j9L|?kQ0wqDPz^LM15JZfh<`qO;stD zE7eJIWrn_bwV`aa8gEdso0Q7!D(3V^!xGCumn{e8jx#zoM76K4e7BMOXkWb}ee@0+ z_Bp81->+bg4}cOIxZx*n&R}03P`$p$w&rT$Gx^MI9_~5RuL|yMI&0>2O?F`p4qs13 zE9XzEBnuB^@sVOocep@yn`qh*IauJPa8uouYptN&;fki+lAS+H$od!W)Xm)2O8jZ6zjT|Gt8Lmu=86PhM^;xjBq^I7a$xg5kT_iXVL7x8BrSSLIDpS@mGW)lq#a zhtQQH;NcAY{}G_~r(lC0d=$?eQL7!aSWE6t)@!mfx-kJ)k5}f6mYgwxrYL1atR%&S zBe>HT)@d9=1h~UEa2SgmO&BLr#>os5A@5=a?xtK+orrD%VtWnB34f=J0=tp#oqU}+ zf^++kT=qJlzx^0;7&wduex%f$D?7twwL2J7_M$|Hm1XND?d-brKCnf`qa_f_xh zE8janxwnsOj~;c<2%j9r*1E&v6zS{3l1CSS8)YqG?&hNV`M)~23k6%+L=|JYwhl4W zA$EDwEm|uU{(_Pfx1_D3Wv_)>h?j~M8X&%-_$mITv&wd7CVum16Ommkv9)Smio27x zj-cPBL*x#NK8nxPtw!0CJkGDdI;C)DgR8%}g0!;WKO6LKG*h2GQ^J3!F^Sv#eaFy~ zf&@B_U(}(e74Wu}<}3aFzFzrecB8Mn_<{?D7G7c$zRFm^ikZA(}ts&Bd~)p<6w+PmoU>9PalEF zPP<_+W4NX>7{*0lW)Ej)4u%&=| zP*~mvmdMdEwK7IuZz-qWRj~?1v{I3zua1^8@kGw+=_M&uE7khzRC?>x^38_Ioqg5& z`>T%(R-YNJpEF7?*I0digwctC`UeaZ`}8G;jHE}6WJe9;hgI?;eWjPCqdU>~yQBJV z3z=r3*$dgmJg#CvQ$F0j$fZlR6u`Y)j?{PZB;6ohcgekr=;j64U;q05wDEBN+kb2R z@BRY*i}qTteV%Yl7{4WdO z2Y2|^p8aN$6f6lhg3Cn)#2T9`z-(@&T&PJ;^$}dwYp^1 zIBp7c3uRAtt6rQ}J}FQ=C_r~F5VAv4frJS8+ZVV%4F~aDsu%9P)@xl`r`Q$GUDBGz zq~-s3xOY*8?6cwivI^eTFmEcE-_%mSuR?#iDEsZ2zSo_YD`O-r6Z^if9>9@(27K>= z|JBFn?F`vd8@72Ob!$94n}z@PLe-y_O8>l!`u~=o|2IS(?j8s2fCR|HLie5aq|5^iU?aY&xFfObQsIbH0BgE`LrK{+e7MH zfQ5(qtdWRd+I9%%HX6QjWY@r*_>{riPEN=Vf4`smIvDJR1CMone|rbO>3VX2gHml{3lcf(3iYw$DXNqa!8;*~8Vz zdejm*jx|t4sni7VM8y-br|PLPRjRdmymB|(pweHj)Z3_1XY1?l>Z8B6kHKz3)zN;6 zvqSVQ4l}qoT#-LoUSeigVA|*0=ssuq84oau#oul>61li{w*`p?dJ|2(*BExX!b$o@0n{<@0#ww8Tcjoy{Q zzm@9!ahE}pC%!&O*)mb}Xp-!e4gJF$`Va2xzxo*bi(9`3W8ua~cxWkoH(T*rx=)ms1FWP=-%^czg|8cg)cN2znh)3u?>8>!UQ zDGERKQ<0Ih0IL^LA=jzVrNKK@0OFo}Vfx<{H$iocL|N`aOaA9Rb2dAJK1erNObp zY*=HqpRHkL8nNOqa$8sY+*IoFI`#Qd(LeG?DRE-6`WGY2JZ)E||H1u#>Hk{#uXJ}q z_0N&T{usF1#wL4manlo1vQNgG`6d4u;`%<#jdJ{M1^8gQ;^QU8t9_WNAaJHFcO{g* z5l-As03Tt$kLFLrP&o)bVO`)Hy) z$p}vn=}EMAfp8ZM<)SkT@_O_VCq+}e@nm-_(G`nx0nyIZ?21LXiAcT*QUCxD07*na zRQB{Z4>HDsjPMZQ9_%D)`EcjQa2I916C^&~n8jbi9PvM1GUOdzg%ltsN-kYku$u&jsnH$*~*(+)lje>-T+Q*RYQEAg35i}ub)=^AKd?! z{*R^q7VZuIopI*b;eMm4nZT2`s^oA7Ex_G|?>3&1H!8`x{hFKQ#D{ySFE*HNzQonE z1IL1}OW}&UiP}$djQ>byZ-uFDwsSt}!0)5MjW+DV?(Cz1+OPY9&wGNe`h#x<;tvOE zzUr&Fl?pCKV8`32kF*kMeYpKze7U!=%-eB`vto^-Vr?*4F;HDK6jZ(h_75WVy@G9e zNjE7^(WgD0=|{x4i3V{9==Sakglwqdk#kF`7s&9&a(szQA3PoY>H$*Ru@nzH)tgN5 zC16hTQ6_mQquohSp*zA1@eRTpta9F2lW#`9oFY3T6Jo^Tt8q4961#G3ax+cNyV1jmwAJ`jAo=UT?jiKkbQ$soM zvRd&f&A!DjknH2FC?7*>;K2l*8!y70L5Ls4GQ)XpBnP?A%+#t^I0;*P?6-QGH@KKq zxHI$hV6ng~<@GB}>>_*hBp%Fmq4xCw4aMBmEh4y&Y#@$q5Q9n{U)xMK%i@jzOxW-N`qS#2u89T|kssob&A9jz_!TQ7)oeOM<89)CkF*>qis>C_1%PbPOPJ zys>OAEZYaq_9L?c#GL6vCVP@GZldQ*d#KzUK?esA;Rr_y5$;f`hdTXC_7DeawgZty z(9sSfNnZNkk>hKPD&vVKxr&AwNb?RZM7R?c=>&hpMAN(@5JkEJXzM8EAb4Oe z=12!B&s{yZEj=}nT9N@)WP^42*t!C0ZAWrrp>AATWnTt+k<-7aGmOz`M5h-MR@z2! zFj-&KL0uLIPDE36S70KT05HK$MN(8o}8wo=9$zbo{pvd+O2;2HD+Oz9lP1hdA*Z)nH`v8W;SMk z%S#oPx2TS+1E;ovV;jJUb=3dh{=f9U)N=aOIBvQ(lZ5G}*EBTQHM?nrHq)WcuH1j2 zoz=J$@cjvY_8Q`98F;4}+=jT{WA%{PkG&&~7TCunruzd;=fa4Kq2O+o>OmLvKe}rE z*&Te6r$6hb-N%DdKH%@UQboUl%MXP zCtKytRC#D2-1oS0Tb(rP&5BhfVXiY+n?`JV4&OVN-1joE{dsJ2e|&3iVq-6CO&@A; zcg2`AtXCT`9zdKM5#>fixRQ~sWV}0>?uF<2;2nLjd_OYRkIeC*GQ5dY579USnV#uR zq`P9tu4JMM8SjKcphr22^QB0_M_S8B0Lcm|${pqH1ZnVs!?# zE(0sgp|%uKYdV6GPQqJ(Oix<*qE`5upngNI87HWx>ZoPTirsC6V=2!2+pG76fFp6# z<#eVtN;B6?jnD{hXbi(?)dT}On$bX-L*+h&=cjV)R5ADr#61s%{6tPGQl1w^@jT4d z30QW5z|7ODH+t(fc`=*Zg;nuI{iRouE_^x@FUcO{=xJOuppR=5L3R z^sD^eplQ4WY4O+Z6gv1fgS(A*Z+6%0W_D|O=1>H``n8}j=DQ8tuZhc0#jQ}U?-k{I zLluNOal0IQu$#L-mAjIyJQoCR#*lySto*zi^=W79^CJACEbd~E^0+s+pRD|Gfbi2m z)t6nsXC1-c^T5Y>*n>RqZVtGU39iRtCtHC-UP6T{v(J^^?I!GW5w<$A>+R{4cGMCh zGYi5!gWUEUvHK-__aJO*|Hp7I?TxSLjW6%1m|dWLGf~w&2+!~YiLL-jcqrcE-SJc} zEF0={A3WcWN_Ph^C%b_}7m(^I9%s0LOjnTNMnS$OxZrWl8032-@|d)0_D}~5<@OGE zqyrY~2ofDYkry_w4K*@GIV+V~mWi*-#@6QI>+*=w&O}K^usoN2&0En$MGWBBmpSE7 zt!gx*n#7TFbfDM_wzpDk@dstW;B*pwGm|@?Zd&8bj;7f+G`bNiJzikOa}eVE6i%?h z9r2xq$JSqkDV%O1uNy095!}aeqNRSOR=wI)*yg7z^$?cpxg}a24u`8u3MlFqxnY&P z!P#ZtRH@?B2IZ;sqC@0g4epjEXh2KnZK&FmU(y#FUT?FGRK9T3^5jSWk0n^xU|qhx z-)2KQc^Da#P%svG3!k?6oK3R9sC?BZ3aZ|;wx;c|G=^7fx&g@3?rUjoVXYLSvFT2& zPpibH(`^1sC@76ZHiV!HY@+Bi4Y$xVB7*$Uq~4a60ZWnbe~Rp5U`s!+={dZ# z2fn@+Sltt>=uRx{rk+zE42xIxYy)zkFh@ZJJjK`pDefT64PzR)c%ESzMX~)p|QK4zV8Ph{rpE3}?{M4RrM+UTKSsj#SJ@ zQO!@o7pH^eSzu)@Seb{d$;VdZ<8#u~{hdH33hU3&FES*A`&d>zl~>Nw;!BKRo4;mH zkg7V2IuWD3o(CJp|wQCIQG841Jjwnq6$7YDp-cPIt zr=f%|{r_M>6@7u97U&9vYOy>S9?K#Nej=TbFe>L!vmvges+z`=kzdx7J5sQ)pJeG- zpd*h;COwh-Q|Z2PF>6C}sSPcM4UiHNyb{@MqL|5_sD&hTsf207@m~ykX?Zf-f>fJa z{!7EWG$geAyuVZW^@`ZW@X~ljGJ^kFzTc>_U1-|8w@h{OxuFJ!`6&S-@w!S3WwhaH zT?KKg49a%$+CHkjniAn&2HxMJet*4iXCQwn0bB?Lf6r2X(}RNA{PSG=^AzSztm1=I z>hnVC(IB;Dh~~$ah=&8fx6c#b^wB`9f6+tvX?NxQT z)zwhys9k3-tTJnt*s)Ut#Y7jdGE=>!w{lxQu&poH(g!Q;ORVh%*7d|hxOW4^Mby&H zn(0}p5s7%e)iG1$5_^dljza&iSwn8#alf-8~ejwgGPsh&ithZwmR3ienh0LdQZ z^fTN=zB>?*?C^ZDGstxVy}a?40;wTwRpX=ZX$i!}>*ko) zp$z|;mLI~hqdC(UUN;(MK@daD2t1_xG+sM{)6ZeFGg&Rv?-MxD>^_PWo#MwZ+ys`J ztygUcFqF4-EOq8rX}NWJ-3G08ql2*8UR}}_93G=Ow}Cpj4xD+G6{>%RD}R+?&J{!h)bIPi zwSBM%abrJte=q*&M(vGp#Mvm~TqwAkgniRp_3d+tuY0RM&F1cgvvuvkmz{ab3+#6T zz}Nl2cZ0y!1IWL31Mg*nyP4pAHhDXpxD*Law^JPr)K<9*m9Dzo&fGR9uGEoRXJS^H zxD_UTv5^_0rA9e{rK!rbU5QOS!RB6|v?o~86I<7VSYw6zs%~IqAz0CgSW-YP=%^f( z$PNl4JGKHD{vbU-^ml|bhggrX=2%xE&Yeo|RK|N!ac)Gct7vb5+8pL+Cj#XdXEM&2 zjIj##RA*4&0s8vmueBw|v{y}v(9BF$%t*%OB!dNMBH5RvftBgxnrs#1`?5Uc_()|p z9q6hi2kX>t@WdpYW}$;-wI{c$jlMiYI2fs~X|FgQMP5!;T*&~}Gsts^hIM|Xp<3=a zPBoBaUe@SeV};i^ehAOK!Lx619OU?TR+z*H)78RMnw!LkZtn>0kfLv)^#A}607*na zRP5Gp14HD?(aIw*$(wl_MC?c`4 zg*b~%lbp-)z`xQRQOy!MrPqs}n#2Kay3J_|Hq@gLQJc*O>#~eBg?oLaXllP% zf#0eCcXwm|+^YZkOx>Bz;6hufJ`($9C)M};m`@AwTS=fk0>2hQLLvV{AD!hz=HLCm z*Uy0;UQm7AS9330w6NF3k@az^%MqGWL7Ibpe6^=xzl*WlMcC=cY<6VUJ1}cZ^h!H+ znTeZcV20}y!(G6lG<8W4S=t?J?hZro(t&W2?n$RuZQ4cJCIYO$QjY(>@*SXGn2vmG<-=qzATkonXXuq zsV>eUmSn0&g(|vhK`#wCRIi+RPIHcd+A|My`may7Nq5TK62wLdw6uGJ{$Ab((pDW=GK6C=EA3#gC)8vGCYxkbzi- z(4WX@p|qc+(-hlNmBDtELB{QFbd`^}+|6#M3%k#UUlRxpzQLbcOPtvV;jTFPbDVcu zzW-U_2c!_V(wA8tu2vp;&?ZW|M8Kx7KuJQOWDT&fr(2$4nvibY)L0=Y>!(>EesPMg zWplR89i?HwW(u*X@#k3p-E`oQ6aQ%@sivu^bwysk-1a3mcF9ffkDiP;Z+Y?$ZSzF( zw*+}5&p3DeAEe)g>^5+>*@~~($<-$`zMSJvxyv&H{TJX~C(3znyAs^nhkdw-{$#fP zb|3Yb2yiD{`Ed&QZ8zoD-PE@d!1-WM7X{wS1eO8(PyOge{nbA{Pd$2p{BD5i)6S~f zN#J68>S`o?sXcq94S(FrPkP+ zq4>B+VsbP-JrP@a5^m@-%9GvSN4}s<#&FN0Xxr z)IzgroujbPmtOCV?eN1YL#QLMnnRJ`Od_by#;$b1-^nNH;#C!GP2(JNg$&hMOLu4W zT^Xh~%M7IHztPN44F};qTmv&dn%0hF_z^5SoTJ6nOguM<*G&@)Q#jpBj#;8tZ1rGv z`?9;e*!{lx{T{kKUTj5cdVO1P;0^Xn2?pVQX1!9}(4%Fz|9OGKY`)l%bhWvrY0&Uy z&)cX=OLJ3~5~LnIx!r`^1SB_5NTZI;3@{pXY)nQiC)B*A^90RqGa|QsNKKW-t)}*h z7LufhVL_V)+tmEDWHY|PdTh3bwK1f~pVy`mi>yoKo$$>!-`F%v`sh)UjX{2o^q(_b zvYR7nztdbyv8J=HHWRQgizgc=Ma6m1-x==LYE)M%K*N6U?k?iN3ZZ_m>O>^C974Pw zNqn8J`mP)GUNX4W4!f76|GKC4`$51m2z%6@__3er$Nq}%`jh|aNqmrvU5fx0LRD8I zg!3W7aX;-*ABSoe^B%Kqud{xOgRsHOL9(xKV3*nROYC*CjoOJk^P+&i>I&wkv#ScJ z^_{_{BCx(I1~vPN&LY-}yI{+UaH!c=cEUvCOcA!a6M)=bR;Zqptsa*^4v)rPi691b zAYX`Jp9@iR3B>dKuuLy;oobRBo&*)TJC^H76nK+GK6nprtgjE&&j%am3kJ6$UJoMQ z3Z=$HP!prEDY0OBESM1oX2pOxiP+o}(K0h91np<_O#m`!0zx>RJ7F`>Odch*Bp)p7t+A(0`h!kaK95-A4Sx*HcoT3D`FKL1*VA8 z6>>~3mV2JzUKPpCqYazj!EjdlCd?fFCdWd!j~Do9f^N3fZl=~@4zDXVu{^`uegg zi}v9Z1R*OcOFr|~sZ%GdR*Uv>(`Yn4K0Z5l?vzZ%mL^+Uj2t=A-QC@2G@=R>3Wcky zYv<0LAIbI`l1%^bSG3oiot+&#bN%}D=;&yk=V2+d@m^?XDB4F94MK0d^_HinC)$yY zBuRLqVZ(;C@W`7sZED}Xy~$*fb|{56N=!_=bm@}iNz6%a53ou7`}cQna8RjKs0d83 zhSb#5ZQHil3^vUs=~LL%=)SP4;jfb>O>%a2Mvn%QPN&Pr$hdIfLJNPd%a<=FB_)~7 zW>gRCD30UMj(|L00=?%zNJ04)Wj{Y3ub46si|Oc3O+uO8W~3ni4^60 z?>3-&An4voT;1Bu4|Mm(dia8#-rzYO@KP%c!3diV2XiUX4Y)<&}{e9lm{{8 zZ8epls@e$U(RjtFRPuB>xRg&^D#UMQlGi&>$HVjsy!f6BRw&SgJl~z;`f%(Znt6p` zhcfKzobZacvj_LOhJKCFyso83Xt_y(ekO02E$C+I`MDgs(m}b=om%fmtu-sQd(zdd z4Q~gUD_X0|TC1vKz=>ht^m^i4DS5sGKeiDxYjAI2TJ?{C`;Z|+(DxRS<+6Vbo^xYe|e?&&qBvd)PAS^6Q?yDm;2|l27F*=YM2J0Cx zV1Rta5*Pvk9;4qkihHS}}_gF!w-MMOlPTND))NxRfa z`@#O&se)%uzaH*SF}VM^a7U|B<@x%4{6;ka$$qU&+=4@ddj+Voz5(3Z1HRg#y+2BQ zGzpvt12-e_Pm_*UTV`Sw+A;GC;%*g_joe5r z-A||NZx3c9(@S!&H3eWzN3gDlSW!f*?t&w}7h4T7BIT`cU*6d&>I(pb`{F!&el{^X z1D~Fb%}7^FNui*Y9~nmti=keNq6UW(FNI-)g1`%Hu|aLH7X!iIHegr?7~LKp*8!i@ z0h`bPn-~co+@W%Ze4iX`&9M;lqKRfE6!MVoiP-EEVn#AHJ3%!mgc#)k#+iv(CKZHx ziIZZT3%;*4Qx(b`isX;QaYv%DbLr&SbZ|8fyHbEPWRce*s1srORbKiRII0_`hO)f} z%Ra}lFL0bVt;+JRvfN;XeTiWq>tAM6ukq?JT7HIBKUdJt)$(%;^lBG&S8J{!gsBQP z?DS^0dnpeD8x92Os@iDETPbT}z{w%t%sLXn{lYq2+Bo~K19yw{8$NdISoHOVUs}Wt zyi%`nHe7+9~2aXcJW4h zfAPf^e{pJ58b{H)3+fqI7T&!>hYkq|3GgZ818RABxx8B}jkHAx-W_&6dTQ89=p;OV zoosW{$jC_aDZJ7mgTC~0=+L3)j_6g%(r8bIe=O7|@Lup!*aNV~;P?SM8IDZ9pMB;x zK(O3T=C_6Wv$#k;jqf)qC^4524c1t`4ONt=?yJGOmDu06lkZPfoXG@d!ol4X{F7|( z?=I}WIw?QN!rn^-ALZg-bfN!VpuU?-HpGxOV-*ciiiQqkeK@!kskjp-+=$Sf31koY z@CUv1qN&}@u*XHa(^bFCS--{6u*NKiaj#75d?PzkPfs(j;|$y|E!|V6>}v*7;^>8$ z_^Lcmk`LAvlB)`d)rDYnp$K=R-(i-HMdN!%tDMir7v*B}vPAv9Fq@p0LCi|Url(QU z(v(wERTC4bv9Z|j2mtel4)|N)*ogL+i1jFJY7{mtlAIFxGu$8NNT}kmNl{>0jA*41 za{`#2ginbF6C)I(0>DT|FvX-;=)e>^(5oF3s~xfRj$pUHqP9JIGM+uy0bI^f)a6sR ziX3_S=EU!xjA zD<|>%0=;3WR<}sUEU;5<^1*5%)kk7Ar{c`}TCv;Q!QoJCZ6H(AhAwMG9gZhXy$mjt zs7`If&#uRhZ*JaI=1+(FxN+kURuH%$s-%w~u;4ctefg1eg-p41>lV5I5`692wNPmy zd<-5uSUPW!Nk8~=^ytyZR}Vqq&Ye3R9v-M#mSt_G6XkCPZQHiB$foiZELb2JF<^pX zv#P2}dX{U~t~oh5A&m(!Bmo!RchI0g5LM_sASETmhWnDDhn4T!w-1@K;rXRYm%{eL z^9;kl7Z<4rlJ3xl2)q%jHZ(N!`t|G5W$<>eD%4IK8_oa# z5CBO;K~!T#qfuVNh!G>u8x?Fn99rt@>*c$)Psfe+ly7=hrZAAZP7 zao7(W4^W&7WX=aN=UUMhTMHLj>reUV-}ccT@Up9Nx8LV#+Tmi@>ZIG~s9kT?u5{Eb zv*#Duv-9lO>3Yos13TQn4c2K2wTfO2kg%%xX+&`j2Km0W6H(GhbdN!KRU_6>hQxoOiu!n;$X%n#$pqqtrnOlY)T}U z8VP1b5mO_uNgcq1h{wuZ;ycWfW5ASHF;9)hVTJ`qwk3vpfKf&;)1X*pW>-0|Yn(Le z-87|+V5b-Pb{KmihCU48o`&7XBW`uXu4jWA*~$yi%G1HR8eiwdI^CNL^Mb(igK%f) z0USG!=V0#7GW~cO=KegSym~mTo-GK)dc!ImU#wRZ+f&;Dz~NZ@bb|7DlosA-vkN#F z!qo<9Am7Vc5yul1XZnN7#p+X5Klh`he>u1#+w0V+Qzcv`Cnuwi(7Hr;!M%I;B-;g4 zZPFK8nvR3o5b+eMa>-6zSy?HGP|5aUX*6V`DM4g~hnVZ$y}NV){1kx?e&p%t32%ou zD}h+2)1lkJ%MKqtEKO;mh7B7w42>uVxRyo`OOpg}tg^^_P9%>;_@;td3r8=hbMo@? zP^qk}EX$K*gry*tp;(6Pk;bQ%6Y6ToyaV5gP&4FKpz7*s*ap&?CQO(hF&a%0z_RdF zL%NqVJqsJwuU|jukGOmHZt13w(Wo=w16pL03X*XKj=QL4_>N+c&6>g?5cMQ%4;s$p zHZJ+LEz?4vaHpJ|G( zauwh8(tMN;{!u`F(UtsHZ}QVF)XgNt$u?BAySl=euJoj;JvB#t^(X!9PWWh#dkZIh z4JZ6e2fPhc?sny_=G`vl?JmYrC*4{HZHZa8%u&0@EN&b++sIDQ(WCY3t46lJR*@?Z zy_~?PaK+qYVtF>UA{Q^|NUYAsi#r0CR}?&f_*F&N>Ouk@uPy+qtQRcL1B-LO{44+^ zJf!@B43Y11#Ei{O6*CmwFi(z!8Ak+%e4iWvW<=ssIsgQBWOkourT>Hu7(6pcJR@eY zR3tGr47}x!k8%N%jo1RCy4cLEa$wfEFk3zNz23|oZ^e;t;Y76RY&?EB4K(Co^*Nv} z3)E*RM7ReDM|_<(n@qE`!e}EmnAbpv_oY?6SxqmV?jg|Kd37&A)0Y>WBgb>>BCWPW zr(dmOR~wZj4pdDC#n}|i#WeQqP|X$>Y=_#8>*LcL#tINy>9Q@hc1H)9bNQ z8~>tkhd;-UACI5_W!lY~H|1V#$bkgD>?0m^?AWpCGSp6;Iw9JkfdLtdyLIb^ru(40 zwLIy6BBe27#-RJUySt+^h@KLp(A22SJYk0p9gv+w(zfV@0A03f)haY$;OOWm$#ZxT zSuJ2Gx!_kZpxRxDtP;vN@gnANId+5+1sSl+k{;>X- zm>7g(D7sO>)vH%aCU5ux(X3w$JPF@pVB_JH`T6;h2T^KjDk_L-YYKPRBy<6SyClrh z)6>y;*pqU{e@lz+DF1!>56LU}KK_1iZ}|0Q8TrblYX?Llj2M0Zo~Z`+tI3adai5g1 z4_;@lWZ`#{G@qrbzRV=QE!2J4nSYQ6J}tz*=mEay1wQFQ-b$g5wbtx+SC)AwtNes= zcect+chK8-*jszpn?K@jIO=bz@zm{i(eHLN?Qk}4b~3GV)U9?97o#q95Rh!2Wnd=h zn74H73kFR$EtRPSy1^Y^D;09_gN`mMlzTh2PVfo#`NS^LbR<%SzX#AaY?z0OpgNN zBgOgE@!|ORaPfFzwAEr0flq8tjtRova>XXt<8zGEa(lMKiC^Q)Z*=8$d1%XhxILcK z;V|ZS2jXhFx-Of%(^+vdAJk_P_34U>F{;x+{4rmLea`09cDf~I?RbG1#;6CWm3^m3Z*Wo_i!ohHHC#;5*0fdc@>1>(WDbRC z4}}=^xsy8sz{v!~`9kc3XUju{_(@Bw-!fR#%Zz~Tsh5X2P~6>`TL zR2G>~V9LzQv@sE&%h0E=Nz(c3>}+&0A|j&c<0IEhcx*PC(ZDcw?p!42AyuW32EIlN z9z6K=?c4BTxo;2p`HM0ZJsKQGk)gxh-d^5~D4`*6+O%nCrWcN0s9NOE0#CwGQ0}D) z59F^P=rWjme0-$y@O28EjE|4EH0RYL4eb!_@=p^J6Oka)Omxr)zn*$?Be`_bTD z9Cb5>{2)X4AQ%6tm-@?I%KO=h^WkijC%em0xz9sc?x)@B$(Oltl^#ru7k$W|JKomr zL|c2P+#%d|nvGk{_N5NS)%Mzz_QFaB!xA&Uz>c%Rotvm-g>BgzMvXJuX7isk z03~6LH6cu+`M_n%mPs{B=414$JbD3SE|j8({z*wm=mNR3ximJQ0Rx@%_4P%jbNCto zUp^q~b8~ZHOCZ1C+Xie{R#sMCULG>tz{_CUB<~$BFE9B#C$PFsMn^}F7%{@eJko+C zT6%FoG8uMGN=l05DQk%8>gqtFOAo3XHV@4-NSu{?Y2?1Al7Yq5)m6GRQtq(jQdyfn z?t}>wP$~4TBaPXxg_47;JWibDFQVKftlz4|-l=(eC3Dns=9XM`5_V8J}ZHomnz!Lmu6$dSrF)imG3Bv=5>+p1q6gU zveH1fi)7CgX}&CvTAYV1%LihHXR^h5=BA4-jB^voS#j9380#EqG(If~gIJ##Nloqm zrgQ*5!`Q~vEkU*a4o)0wFBQymFaAM1c!NWyOvDC;}o*P(KUa8FgPRrg@ky?M>w)avmZw@9m9snwPkbZgD}QfKWZXL_dxU(=S}=?V6? zBHs=-><`vdg)rs*n!WCdy}{sAqVjw;c5XOvWwR10_fw^RMYzN7Et=(n_;Yb_kw7V5 zfA8$7D|rGvP*IP@um zyVOo;s`e+Vn>?yPDuR5p(QKr2U%7jqbbw?vnv+E0x1pf{4q8$XRI_CC4-5>1%Gbu> zve|?*K7uVf?HeAIq86xkT5EHb`B$uIS@)E)$P*mCKP@?M3d z(4P+$l!kVBL0B6ahorFwnfQP4dH>_olF3_+b;xv^1xmjq#GeGZO-2n6+fyNCtEC06 zYm8xVtrj^rs_HA~8x`ssmE=w9NOKRixl#->aIZ}D!3OmQ6P0&+lJ6u_|L&{&s!;XM zOw~WrRG+0N?ne<90`Y@x#MN-@ev0uzJHEzKRpHL=b>nw?Xm?nD?(@`@d9YB$SNW<87{WTw~%EwoCBp}(5Sw=M7Sk?W~ zJb>U1#rvWxFh5;fVmc=o%u2wac%L3C@_j1ulZhr^o??ajln(gh2r*CSKtRC`X+9wg z8y^P7gn}{cVaCS>krTbiNzUY4vvR4UdbN|X#H`xr%I)+v?(!5iJCb|c38>tw0?686 z{7i!KN~Yp!4uEiP$i^Bnl$T@FXM&j%t@H=Ija44{{qFio7yI3g=JodW3-pGuTIO$@ z>N!r;lheFT^J4|=JiUH}PPb04+ho#ib=B?g)~ok2|X#AP?eWLRlyf8^hDAu1^QH)iEXx@ zf4}q}nqvN&eN%re+|l{#Z-e?8k>hn$;)WYAH`I`~9~)k<`byETegn4i0BowVp^AQI zKX|W-{G^Qja5a5p5vO;`JK2ZOW+gZSD&X1|wyrwdnVX4WGSGll>F z5CBO;K~&pwYwUF^O}b?!>%t`m!#q27j)9(OWX2h|!FslfQJrQWid=|+J_LmO^cZ4p z5``WSA`IY8~eB;W&c(_;z4y2pAO#MzqJ?3MEDa;^RDs$&S<_M|zoAv)ZgFb<^(lHJ1gN z_Xp_9d^EMKv{im=nHO2^0}cdXCnAZ9$y9xgx;_J|OHo~lqE83$#{+bS{Pb`8>1qOm z1D^T{7d?Elfv+_S48mkRKSHm4RjVDMq{p)S9Gzjg-forFu*RS*briOG@H@S9Wq$hI zUdp}x*r6!8HbQwQoUIO`cl(fs+o>+6Xs#Aw=UxU4OSvnXG=EvROIBA2?l!3@+~vh3 zxT6_41TskrU%q_V(#S7qNO&ZReJBU_~XzPTx(iif!*9Mnp|#I zVq)Ba8c<&=@*OtvohtmJa`vN5ng?@L_g|%Mb;56^g7>q)Kf4egCXlznz_r%kMmumn zUhyEE77gy{rn@Olr`u?%J*a9guG-H81^X6f%??jtkEeE@mr&--SNL$%{@R)VUAYgp z%T2Y*mD}#jZ!+`i?70$?c9mIMY!<9ekox&1ezsmSRnLqv@B?+4P6jH+O!n}g2KkF- znQ77ZoJ4GX3brI26lXo2O|^nsg!}Sr05du$&av{nqjgR-4?!PqggXJ@z9ff`;10uLDa1l9R)_GF-N z#9w!$m2fnKJsQp&Z_OR_;SP8jt6WW6?e!%l!y=Pux>i4$X2)viNi;i?5f*UzWm;ji zL9@o5+8<~x^A#%m=_Bpw6LFfuG1SR8{$M-JUT^YvnEGQzpjb;U*R+U?an+@+SMGt=b^=<-p zd4jBI0XjCyU9vDB<(rwADUVh!*V=OG*_^it2rPLMEn2h)YGi3~e+&IA-BhxGNe)8j z7V_;!5N&~Vp%yyRwQE=O!r|iL0{d1T1yeq`+PQOQ^gaPQU#c839SuLp$;mdM@KLJ@ z3ky-_$Sw7jzZ%?|WpN9k!Ty8Xv@BWy+brD0U-yeP^g9(|5F4wR2;8Xw_o~4=HN?$o zQru9fihz{AUj{zdjeWF}{QDB+y-`F%FYrzd_DK%$uTIp%F4Q;O6#vRpew;|&iNxyK zgUg}dau}$OqV6OJ4KXgq1Gs~JLbZ=>kGrtLjo<7-@AQJoowveWyWdM&;jJt8hN52B z?!sDbP88Ko|uxU`XM}kJp{si2SY#$SfjSUeS^F}*jNIUYCR@m#VV7vpi&_TV{MOf>| zlsYlnT-dGd>RsMMZ9C#ZqWVG-c{U!ql1kmoqHkm<>(Z!eDa3_1a4ku3DMoWPRD0ZC zf5=xj8pNKCR-a9#&c@QG+p}le8czD#*Ekz?I~YpM_Qg88*;@S+mYblaC#$&`8tr_J zE7oh)niYpaoeu;V%DssT@y0U=?BNdN(FpcXFk9w{oetMrNuugIVHchQXUBmn>zU(E z--+o@hdUDHX0zGybhyK7#*G^%zd-V(L#75)93^QrseECiO+Yc^3vV)+3aHd zPl5YSjjM8g5$?#IF5Pj&h!LPME{X(k`Cx;bKsb)m>2yY;ambJ%=p(4m1wnwN_U_#) zpSqMPf#{^H3CiAQi6cL1)F@=6QmfT>?%et5$uPpm$`8j0U^Tc$M@OTAB_$=2O$nBg z_n}2*CAYJ)Lp_5cBB1*wCMKejaA1=+Mj9Bx!ouY5ZBl!rf`2C5TTt0ggZqDMet8<) z>zV|1N59^zz@Z+$T`Ahx>#9VN4yF1nv7iFN{Z1A2pjz=+ndY$Xv=jAx52d9KW$8`+*n_Zi!+t0tzb;V!BbUCDptur-Uv8(W3l}c5GadA04h0yh zd<{EX+3jxZRyTIHuL$?OUP8H#4)T4Ur*5x@ZkL;Ghl_5rBe%(khj1^kXII*>EA55l z_WTk%cCLwsaGz!1CfEtD*>PP3JWmh0xZwkRh`$AZx7v!cnls~xIZ629G;CSMV}dt< zJ5ui0V-tKM*+uB*KIZ$f9K0#qXU5_X?$e`j8Qd`h_X%Mb%vQML5bmQzxMNVW|1A(7 z>;;B7g6Z~PrIUJ#E3?ysE%Ro}{n-71nwoZsQ*qSw48^r9a6Jp$$_4M_WAEhR_d2TI z$x~fT0Z_JIh@ejg8;wxiD_DKBJ!vstQh$;_n~yK}*&L!O2TXX6e>`*lXc zVx4Z0-Y`#ZoXzW}so9w-Rk2aM)q_7C<90I2Wt$_o7-u{i!&kQ<4zy+uw=q?CVrL^X za3HzS3A@xAoOu&mEfL}Vw0Q1+F5JhC9gE=pw3U{Uw+x#0w1GQvwt;{{a7PXm>({TB z+#EM<+$f*O& zG;TRmR8)jY!7J

QHN;QbsL=oRx~mBLkzAKA>?W?bDKU$0<{$NYlj`85z_Rkd>EOq z(3FY1sR;=QsGwx5|6|fq;okIoQ}@UJ#11wZgrK(0dmWXWPkrzwr7bxHd0=ag-dXs6^AtocX2A! z%69~JB-=-~15mcV8H5cD#9#FWLtMZZ2e8-y-{hhy^W|y+_#a2W!YB8nVIlRB$Z?+(;+u($weT@GEi5*)aNKkO=n!KJ3vj&ABwi`5bUE6P!)g zoQcz(2-Y9;)m6CZb~ze0o9xyYjjIfX6?TRtdi@-lo~6VWbNG5k<-rb)r()c;JAq5_ z_E5YZXrrm{Vh{Q{Rr})SqLeo>sapl)wVwF7A=tH5%!#K*h5Qq3?iOp*M)VCw%YvH1 zU5cCquY6i@(CE8uX(S->Q9-zQ>#esePfh?rQH(x?WrqzLCckOR%3WFzi`LUOy#_SK zGLwAjEizYkU|mToZznwH-@iX-j3d^*eS68d9+g73d;a<7rADGsrKP24DiW&fW_w1S zP&3e+r&6heeF6)1>())aylcgZ71Eq@P*9M(I2?e{L&2Z0>lzvwa5r;gfCJkJoemSgiP9s_OP@s%t$cYn&7Cen;?+F4(s{ zxF7qfEzc_~1Bpj{iSN7P-**F#x`Us(W8W2lhXvrPJn&Hpbt7DPv5g4#OYKcZTXB^> zbX9a3T2~frFa_6_Za@$>n&93@Q&iZwZ!Wu_@wSxfj3I{C| z?=$VWnR<4bfgfoQ`U=W?EhusT&v|2m{jk?tiDqsH_bGA2j6@O2OVh!!OdRTT#BnR! zA7i~S+v>?aeBO%$CS#f->4Dg+E|3*Kl0 zhWX>e+`&j^Fw+^VbEWpUDQf+NqiuxK?X_p4v?rsvbr9~gzU;B~>htN!vpL{Y8aSV-J{iHh9mpQ^*H?QQ zcbRoN?CrLi95(3nC3d($b_KN#-t%lyV0Zy+?t!%oTNxwQ7Z z*=V|G#Xn3)`bh<^U%w73L?1y$KmJlAiYny2usS`221!U(T7 zttJs0xVI23^0$IJy30GY;Jq6B!G7Z7?bJtWRUa%=-5CpRyaF0}&=<3a(=p&`EO?Mh z{ksosd0u51M1D62|85}leP6|oy@?-tfggK<@4G>)D}N|df7^+8*b#h_hkcSvHiQ$G z+Nv&v@Zti?K(@kLRp!m^^q@C8sdsq_d%SgJJ~{~ZUGA)ucY5&KJ^0No1|-{8n_27H zR30jK1o!EBW~yFzQ_uC}NC@}tuGm0d9Ln~gfg)8WM&MK8$Qg;`ykr33zBGe?d@s&H zt};NDB?BZg!_Ud48h$h+il@48r;J$NcM5<03tgaV}=BYaDUSeAMOq& zxL`}&$ZejADi39?4|gPxI~~fM45tr;P}M=$(NOYoEY$CyK7+iONkX{Srx6zu$+L0f z`6T926nnBQeWI22u%GsTA9EyJeKtdNDjQr%1y@q(6YVu``_o4P?GE~w%bZpBTQvXx z5CBO;K~#+U98BBv_M7$kO(uSuvmUiCK>7$AD#Gcb?bJ0s zsv38`!Vese!0WQf8+q8ZF4*~(@k@(U$2a~J;SQ&O7 zMfym(0G>qbfcUmF+OI8EKwQ0g6|qAKOePs6keo!SP;SV!{1V*TwQGkefd@?=2f-cb zV)<%V)E*QfQSxw?4B6;*@Kpnu{^fR$bLY;X$CrXHN}iplxR;j~e9UJF2?<+*R`bFJ zczb(GfdNoNFbU8O4h~nYTxl970NIY@A%7*8Bvc&IAGTJ0N0csIy2SImJZ7)-`0noR zckbK)vZ#>Ky`&(N&Gz%}m!589x58brmb8HEhQ>uha*f~AK;MEJrF_F{(d1Hv-FsVc zZ9lkLEeiI#2Z-By!QD#m?sn|cRs6?Ogj>%OH;V9^d5UX^*qtQhy#)NDRPaSU`LH|n zV?WiSev0pVV&C<}zwd)X&Hku2@u(;HV^{2lLhOeE@GZ=purG7LSNX~ZX~eyF)#VWC zQZREa)OaX>srF;bd>IJ$?Vhw~aQD;g_2yvSDS9nGdbUcqGjIVDP*zlD5<%6)uId{h8%Dw3%r-Ex)ZOy9S4g6?7Y+uBk29$I$@KMb&DButi8k5; zK6Hf-UFORnxbN{3#B7DTn7xGEUfNwA+HLOI&92%_F1qzj+BFXP60?BxJB0gUdtshY zm~G@I80i;uRDm8Va02~(aj4mcw;@IZV`JLma=0%@{nc=n+hmrc;}YCwMoDlNSEwSm zi~2nhdu)~o5j|u^1>QfzrlkIdhUQC%IS7tWtFbTVz40~Mo{H>acSf&x9QTS_46N=e#QLf zZPD)#`+0A?XM_7Q)-O3h-l-;TR^U*)*TEYd0Pj{3A8lvfE9PzvP+rZ)Z=_NmW@!SFs8}aXM;9(c=U03j9H}GRu@Ix1CF2ueoz`pGW z{+*BgD0`V_Z{vU1owRbItX{f_kBM6 z9&cf%7lb>%*_AJK=GQq2knCc%XCd5|+p~*I{5%6Y)1Dh?q~M9fLPcr~*mCiyU11^K2CcknmZk$J>qXT=w)B!F4X$tr=p4TDa83S@@%5w zSO@H6r1D%0e=?M=^-+~OaaFG7{jS1(7yUjL;c#2yfp*FxG3_uqAFT*?PkxI#SL)2JcM?jR_!0+k$JA90%rY}8#)C9!rklA}4C+Dw6gUul{HedS z!AGxOwV#Mm-G z@|k(;D$@>!vVCM*?5#E!B>T_+@VYOU;0;!IDfW3W2fWx?Pa2MGknc5Z*y`3yZ4iC1 zo$7d``c#zWNT}ji7<(aBcREsaE?#*lnLZb%ITtIOi`AZJ&m0NhkNDXg@^z?k=b&;w z6RSL*tT>lM9SK*w9SqLKsV*n6XCjnGf;2Ur+(936m7A`@RoqFuww1oJ4S6D7zb{C; z(xh2q7PfmD_xR~{c`6P;rQb@u+YOX^Q>UX8u)?!R;BpFnEr*2v374ke7uJGjfIIjj z;ck(sY`I>O#H>V28*L~h>DQkcH@J|;w33$p*esusqf^dVB!O)zkv_6H^OI}|Pg96X zkANCuhm7-bZK`r~yM)uxl z<@HYZxhQZYMR`9*`Efq^AOpV_ueck_+>2G+i3IN_&dix~=k{zp+YmdDKFJ zZ+2C0c2(~1Vs?7dJG{7^-YnAZyM6hc-aLf+CJ%O#E3?6cU*jzDeT}0S_k4*1y}+KG zW1`2}GyU{rz8-XSCkC~qh6G~}?xVx7(bnxuMYzWj(-R)UeQ}z|cLaBNwqd$WM#_D0 z+GDuSOAt4_MsSA*Gh!Oy9)Vfmj*kx|#k{#v|USO^#vCWG<;KLpEVh?&T zZ~L={gY^ePP1QlVidI~ipAsVea2Qh)q=Kluo@#$SmN}oGxs=R8Eq^9bI1{Nm9>N~- z)gAG(f7{zs=Ax=?r8*zapO2@HMi7;OSWPgnDt-0YSmIO!eWVS0C_q=^B}R_i=VB=H z;CFeFN246~1e%Hs>?Rl8ZeLTGpK+(V>QIPXRV#M4CtejupN*j|r6^9tgUe||T}S2R ze#F(8Ew^uv@7IOyK?T!7q!~dDIdC8NT@@k9SxD&sC;m0`l{4y zB^DXhEi%C_jY(1^^3hs8mw?WE^UXIlPw`V@v>D4&`uUGZ&q`s5=@Q>CQ}>epoxL#6umRdWZ_C^Ndq3y1pJjLC&Mf)f-<*5yIaLnI0!vYz zg|Nt41SLFzJG3%;8MIOdS)rXQ-$s&eDap2!Wth`P%;bknB?nB!5biq-B%6$+FRBIi zDZxx5@UT7kya)M;7Xx=D`JyjilIsRx5bhho@J$h5Yc!D(gX{Rt@OmP|xir6FHz!mf z+1WVA9pQ{@-xi8(3uXC!1Mcg5kWU6@N-VkJFFQfFV=p^_4R&~jt)RhP-exavf#Tgx z)Zt2ZPBCcqRM$AuWi}EB*;;35i-)|{Nl@b;91T++3zd&VNRNff`u!w5-ip4-${u$` zyS)~Yz0OizYDP3p5)FiCx~GWiov>hM<8IrHHGhl7cear^D6)? z=fIs+zPDvPcl+@P_XM7Tdvksl@o<}^OP8XMA+}(t-d=Zi^03#=y)(bvEG9Lv+jc?B+K3;P}iZNXr~7yops>fh6~ z@5d@n1PXe5vF`^aDCg7G=vr&)|K)2BMJ ze>si#cM|zUBJo)g@BJv=dy(?7047t|C^TPXhqDmM_8J?y+Fn^^r-a}xuo6R&UTg!g zF24zP2{Z`zB713}9o#^gVX+X5^Xn>tTmJ^p~=}QaGxdqgbVHJF}DB! z5CBO;K~(;V2jh@=eG0)8$_T($2NG*TpyBI7u}u*;ggc}&m+yKI=f=ix4QY19;jWua z-5$n}eMdL}DUbNRH5k94+`So}3?tho5s>UJI)RrQ8QW_wfX^Zwc8X>@X^pM0!9mpS zrfB!pR69wEt@uS|!ZIsqtrHC;e1#2FZ7+aQeK1G{4U)ZkGTr5-?sV34IB8pLm=fVt z7UEJ%s@_%FHdzS=gDM-U&Xwv55gm&oj>UuFXlyWocQjPom|3 zyxcp+Jr3%g-c;>%-Au;B0qHLH`QEhO@w4mMMV(JvZz&VxhGt>9uK zxKa<^&sUsymOdIQJrPcQG)wq?0{M1?6sp38K%!?he&SJbbS}{!iJuPu?}mb}r&8DF z2_e~knFoHI$9UU+oXwE^+nJE;;NR20wW;8nXTj4G#hT`2p3YBJ#l{CweK4K|n;l9m4 zxY9uOunf#pg9q)YXWj5+Zs3i{_?v$GHNi~vJ4p6*p(KR+I;JKywj~O`6WsMs&M{0E z0eNF8byp;&gFC)6jMy1L-UK}Z_sxM2?gWJUDlhDHcg7(D$^L=^<86mS0}_=(w|{}C{jj}EL-)&mfCW4(Xs zDf)>=;|>FQC)IO3v4UN12;pw52TgPzxWfQg_ zJ23IWxm{%)FM1oZQvELX`JS~uq}gwYe&HY+k^LeQ;)2~)hL7Fh;0(kYvCH*LBCzwQ zB1bb0U*B%TPu7FW?c{|z-Urp{PcjY8Jcpf41|P@E-<~Et7KwMpfxc(Sft})!bose8 z@{#+%JHg=d1nkFo;FpEE2pKekI*XY>{WckVnGCK?$398IKTH50#1S9G@!pRUUknnR z@sbZa%8$9I#{#X7`G~uq%duyX1t_x>RojRgZDmb1GRWcv zS4E4DLDOVSiLIpAQVeA~e2A%YR9D-{D{O^T_Tp||b%!^T?zqK;ZgG$|+bf&x)GhX! zI!k$jtES3bRqP~(I~E&L73Nfni=;b<8jj+PM1zqqFdU2xhl)-_$&W>ddqS19o>-fEL7qB;kmA&j6gugraL;j|A zrwQbHaO!*3{$jZQ5r+&{yrV3S7aDO?67O>TjrU{qP`vX$tx&wbQFw77_#i=WdMa@u znH+wIcWk|KAVWQvL7&+qKlLy2(`e$G>D15jDX7_@RR2DinLhnK8GM&Sel->QJOO-? z2q4+ti^1NFBHoJ@TnZPQ^Anu*kPh05hn*E;L6)O_CT-5L8XFmed!?ZGY$lZ`w~Y*iKD#8krD5Cwz6DnI?G&sz*M-$T(sF#yh6iUq~$L#1dHsz zbDsF?lfgP4u+|@c(;w($I}<0v@cky-w?^vVeq&no7FSGKJOMw1Oy2=527?AS+o6k| z((w|YrPqV`|Iw+Yfj|zj`%ZA~?m1iqqk|djmYHcK)9-2NsdN4>b6hs~iqK*X$h61F+A@o47sMSYa=SJ4K z<8_mSmG;a8b-6RY#+#_|1C0ShdkDWblHVUH?(mT{IODy()L5}&z1MflM zmI%(xB9A}H8-7dFpC;|!%{#FIKl3p7b{hG^4C;p&#JAJ%FXN#RUnLM+XYsK~(&IkbK2KGXy@Z8(v86QMT%2nz zf|hM6C^nZASwJx>Erxt&q@Uj3N8)!X3$WCMlRMT{~+#q8P+OrbD>v z3}X-<$&g*A+;2ofZU|)JWZv=ytG&PqPq5sBST>3Gyd!wl9;~s$4%-Rp?C55Dx`~OF z5$l3v469vK%uKSWqQFE^YN4vKHmI~#ms`@+wyFjfgL(&Pql2u)LDA-*Znf7yvNH}D z3uTF=qQpU+Z?DKSm*f~r%S`3U_oDyrpZ;%;YkgLfRl;T zz;tl*5zzlC7~Vx4&lTTHJn#>KJL{z8((2yNq5W>tQ>^!_hk6c>yG%an9%t#dv1wnR<9P#t9~?40Wysyi<>TSOu=-fiJgH zAO8!yHw}D}M7%d0KQ{*)e+-;>8Jv0vTznjSw1Am4{calgcP#ic5_}d(UW?{IE&p*O z_%w?5Q55lR6u24#uEr8qV+2m2YFOl!LCQVf zTmq?`XCa0L|5?fe?a?JRiehV~W>Ar}5?Zc}D&JC?XCi=G9wA9EKz z;tHPh04oBRq8V%bm`q`-gL&(8GpJjl@Xe9LrchkBNEOpn?Z9{4@VVn$vP0V)#|U<& z%976DNC4k&k7W41`=)rm`G#@6>-_JGa%WPy2Qc}<-kOZB)xmw4JNfD)-V09H3-(~E z9bRHDZm^d(*-0C$`AznMRu5%^n-Y#*xu%jrQx&vQ3r(e!w%k%#YA&m=qHFCn5ZTZg zZPZQH&@@ff2KAPjYE#7#6M2@UGRu-aY%I+(logvWVeHMes&+f04qHu^Jw4>1KIW}H z=BpkF()9UC>zsuRlkm|POtpibJjWxQ9dIF_`5rY0OVP`1S76RIX$iZ-fHV;wf zWa?NH7@5WEV%9EEqkHk=ImBQ-(Vb2FGvWRZr1`{lm+66f)3|wEM z8u7_Y?4x<$qx-?94}z~BAg(Wx{yc|)`?VPGVL0|dC{t+Z{V?L)Fz{X&bu|pX90o2# zfQwPY#Yo|WFwxt=l8XVVv)-~(9@0^F>4>Ln$V=JgC`WOSx(QV%Mdbw+QV4Fy@nTyA zN*@Ld!X18|X9jh>tiY1aGJ|7)IL};=X)WJrr+UGRdejEI5F}VLOSLqT_v{q#>J+dp zh`%X>zb+VG9fG0h(`~U#F>6%pbaM#U8qR2Q1ovBgGK{6f;|T7XA{g5osSAzQhdV%1 zvdAFcw}mn*RM-16;q4Ia>n0P+J-{oI@K+|0FFInc+JW7+L^T61*_B0R>LN2$iMbMz9m;kH_fm6dxuv|?LQ!k3sx?zWYp~QbS{qbZs)|gQb-4$O zB!`To83yufjiS^@Q)i}WGFP@)8gyG5_SzX7byD@YNC&;;Bf$!&#F-cvSJ2}RjztLD zys!or(CaVg^2bM`$>Au$KqRj_0(69seWA(@A5mWbHIN97Ef(}HBaa^xkL2S=^FenG z==|rwoo#G<`uK$9IsdfAjj6vk=bAWytT%^zTSfmjHN8co+#l}$M*E9MeP^%woxZwI zk6mhH;C@a=_VX?HrDpO<9r;le`R_d8SKG*+Ug!Pr4F27t;OE7>Z|=iBNW$Nn3O=1d zd^MZ+eje|K`TVcvkl)VZeK!kyGo8AYAp9^~cqNFq5Qtq0qOOGSuY?FLhYHRI^TtA` zGa>wQA)>Kh@!0_3nJMxyU)3pZ^?!CHafUSXqP;a&vQx}CDjMpj`* zSK6yeY-q+^V=Brs6T=O%jYS1k;v5I@ZhOhg7UKDaV37-0l`Prym}L8dqV?0r*F(XZ zL10ZNzBUY77tWx0TP(Icj`5*G4Zb-HYzbrF&P>){t*FjU zRBtbAc9yodtLj{t=+7)eX`!hG%Ju>iMWKnj)SRv`SCpI4C1%X~N;6fpsjAvoS#84P z52&zG6`IL14ETEu<@+?^LuyHuMwY|C-JsFjsNGx*t;fcw&)&GtLD}Ub9QK!;jM8@b z@N1lj{!pmXdBfqn{y-k&dtV?q6pjyugQ0NZShR2?M$j9=YxW}B{HWe=tZM-{y-G5= zS8^<0(4P-FGa0ydGtn~tIJiS3En2h)rH-O$`j0G?s71RM1m?hJ^JXQfA@LsW&3-{eiyq`hcT6vbXBd-HG!** z?i%@X98qr0wkw= zWvBg=qh6{WCvpEI#ekPVn}f36ibim+vQw2=D+(=TdFHZw3%Sk-Bhjs6l0(XuSV@X3 zM9A{ZB?S(my-vJWY^d3$M65Y@*bi)2Al&^p$aqee@su?6erjVfcqlGj*w%rovRoz}-|;X)K4tFSVlctYk;bh3UqM zbd@MmDaqF=3N@-SLxW~>qfT>!b_+$9l|iqqahIL4-AMpt``A?D-e76Ho1{NXH4;mY zM9YUm6+OPffe`-LWa(%O7!1RQLIlSnWkaE|DksnyKz2ugo)^H_Uipbaaeo2m&%?Tp zfTQ_jSKdEyLKU_rpL`OfNJM$b|AB5?$kX25UT0_LdGqFt-$QQ_Hy9kvtir)BDk{p= z)%7|j)7d?f&)gx6&9eE_Q%~K4Q{S`pKP5Oy<)|y1^e4!!bFX8l8tNG1vd7=6AwMa= zuN?y4y~+FfdGO;?_)m+$Z;yfNi^2EzgX<4b*Jp~ZC4g&l@N09aPp4tmlBv&<@lR%g zcO&uhfyC*_)Jae3ln?K$pJ2>ia>kb)^O2qQrboRL18($y2R-6VpY*5C2FfAjhdjl7 zF47)n`lyFt_asfDwY=F*TW3et+pDVW)fKj?LQ6W=ObQJmzR-$Us>);l)@7K1uT0KJ zOCiL4uCs8HBY4mpgqva!j>Mx;NvXXs!vK`o zfwswlE?>GgK+zu}Ivy_^n;{qsC40T8;XuhqsHV~ZbcKt060rW&;8cciun6nO0YinN zqnUz%TwYt&KMw9F-21iHUgIWY{|C1D^XH=;E?KhV9(y6U;qYtLtdYrNKvxc%mGE~G z@_$o9K|AnVTCEnXheB1Z{?D{Ot;BzKGriSM7aI}5nX((_>j@pxbqNgWgk#O%WE)cr z^_^Gyes*10`dbCoJQ_W#&#!z-AN!d5u{ATQsb$#sr;099P<4?S$~s2`ZTaV zfk=xdcEwPe!g=dM$o0Xz4MD_)037mtQz$dDs&nQr1Hj%`Z~*SEvy>=ZC}bd5?@z4q zCRVuN%RQOW97`uL75-jz0_$u+v8$xnLE7Res&|FM6`f-$Ijj|A8B6lb=v))J&_q#W zqAD^|GyWMP#vtFzjI|{uh7kAgt9%n#ma(YJ#UR%~amYfLu2G~b~pbUSp(z zaBnv=?65Lxv($9kDmrYX9rluAe#XZ_OdH)rxh9~-NmS!V^-fXu_^664K;0zlXt-i5 zL46`h);0+Yd8vjyjBBhwcMRD%2aKj*$8-2cOYpWl#wXLCP4(vD9k;Ad<-q+8>zKMS z?!^k#>o*gg08WK#y_mo8Tgf%iH8Igi!VMhMYuuDC+_jzD^-8Sc1<7-$QW40OE?s)3 zMW=c~o_h&;ld;@&uoJtj_c`}CQ>IKoDd7G5{PcF@W;?j;RkPPV@h051v5Qx48?kep zQzB~R%9RttSh?G?@43z;z1+Wg5wQ~|HuNH?{=OmhZ-@J(rke@EAl!9^{&}H+JX_Da zd9RWBxIpmvF6yf{v2R`kKR?cB_8%X?etro2@*wuh{n$_UVL#0WKhNiXH64656?~dV ze3(eSpGdr$2rf?rSCYt!k;0Rcg(tmaBVNKmPwKRv{KRB>z*g32Np{%~$Gv6e!wugK zH9G01J~mk~=&9&+m2^0XdfgO9y$o9HWlap(Y51y39Hv5WFEo=Bnaj&8m8Dip-P8(e zS-Fj<#7+R2UhXI^w-X+Al&rE9-)BigTLEYbJb0_-N_IR2(x1aJUM2G0#0%d7rR(sT z4WjDRl9FYD{SSe?3&8H#AY~@lGm}i4!P}EW>`nlwQyJTn2y|ssbtU(vV*3;EgUJl& zcgBGY;b2V&W9xLbF`T%Ow;-O}GnL$%fbUNv44nB> zXhlY9sNbQ%H+cr~d}BBO$c`9`i|h?DtmyqFqP+@wuUvjaK^JMYRfdN3Mp^{-7Bhn` zD}x?eb*G)Y%aQJOSG2f^%I!gehoC!vZua2!`6-8kO{yKpGF#9(McC~x=$JyaxRaf( zOs2^id(fRg4LwSpO&5)3^Lh(GR}tvTBl?cuJsDVEKKB0$+)>kmCU>noyEI>qnB$zl zN_I=uivoAQtxtbqnkw`L<$Q++gdIZ#PFJm3g*N!+n{RG=cD+>QdMOaNbklp)%WTfR z;a-lvzdtI&6cG`@9`?3_3OALp-stj2u&C!5{f>aXE!_V|$fI6L_e+ic$sak!+2(vR{-C@J!Lw^STaaWVk}K(jCfA~knD%2QTucm2%th=9}3n4 zgSBDUhHzp-1hy^=tPf`*Be%r?G&aB;_a#H6kEO-pyCR7#q15_7a+NRnx;M_4kNEjX zV5uLz)DLWrlT^$!t@anSdQi=t>S7ylrZGR$NDM8GL&o)yWHkRgCYYrGm_Gmi4W0_D_cUZI$Er1a+^s z8JoO!BFos^FD&@<0vsp$H&CrU*tTukb{EmDw=b85dO6w0Zx_^m7Y7SEczk?3;wgN? zj%4ih>YZ1wldM=~d-c0DSJ`oqn}wL|9)vq8>I4V8-)_ytKYqK6#Cq5G+pXE#CqC$K zcVs`&TetOhv^&yy;^()`7xuf9XVcNZPtGs21>kJ$bEAaBU~~`7-eB)8Mzq z@bN|9H)s!nUm)4%Gs)S%okM&*3;Sv&_VoL{paPeq}@N9s3 z)JM_ofVVh-78lU(E*N#8`;A3MZTM#=E3bx`UXCz5;j8L*lXW@DAZ6NZ=?*(ZleKuj z)41J9(PBr}TS^`JZF71oC3Hp)tSd5wbv^1Z-bvd2mK zmZRtaOCrt)L|PN^j?_#i@KOx5?^(&A6(H+%fXH67o`HM$R#3GA)a(KsX?R--uX(Ge zdX>1~Mc(1XVDCbZItQdq=kJ*z*gKP-K7&e6CYf4GOa=mQAc@#FmDn9iZiyl{gj4Io z$n|0Px=@ICYGVX%Yczj%96u$2w?EJ#meau{rnA~uEdRtNKz`{J)m2CsU9 z6@g%NJlOjfFXI`q_GP;FNt3z|VVyIt%u$|gDm-W)IBY0k3YnVAip`iw)ItLT2={!g z3ce!Gdx3#6PeU_UH<4#DQSB_8R)=%QK`HC7m@%AZ# zp%7Jvhq%d^s&fY&QRL8kLC;HIWQ$-#S62_xyf2S&%XDRfTj7rVli|)?Ua$A4J~257 zLK}-_ZgzMsb8njmMz12$_^oaqG!j@^S^`~V)YR0}@mq<*%|FiVCwmsIO1*7LEVLt6 zy|S;@Z%xLMn3#yXL(`^BUTqZ?xOKoyqcSvqwK*eSFXGh%Evhr zW^2h#Ty-_EW503gdrZtu@!KEEa{S-5+Y|YZ!2OSBf4oqyTb-nXI}^{YTf20%0sEwc z{33{W2>aq!b)#Q3B9@rBs<1K|1t_%93a@8{y*%w(|s<#hbt$=K&f;L{}V@l^6s zBy~D~cWjDqz+2MoE+Y_yaOPBw3~S2Wwo>nvo5>~%J(T3c16wX(#V&Nq=2n97UI)n(>d zi1;!)WtqJ!&sv;nEm&s7d&mNdH3tdiSduL-$)1|&37($;QeL2PSCggd@X~b{w6gUz z{z+E=01yC4L_t)bd?TpX0>wM1+lANc1kGun=ODlDprm_`q;aF5d<9kbGM@e*3AOyL zSzu=}fI@!nbUb}J0V%&%m$7|EG!rzrj!8`epk`ki3N}VEQI*@Hv6MJ6HGxP?z)}-I zS~8Y8mA5qpTN}>gv3VmLtd0X)XW?lN3bUUP7O#+$ui;g!1obbGjSEDzfs$HhRhF6P zh_MiA@C;LVwz;&>k}fe<78uG4v|1h38T}5$JCyLbTBzA+i1lm>B~zTlQoYZJPBT!X z$fdibvO}~sOQ9{&7*%SGYYhw`+?z}^trprgD`l%S-QlEdb5d1W@v7|cPJjMj6n{8Y zHW(@C3z0Q@32K~qy@A>;e{oNUus4J^62Zj6_jpKJT!l3*SbGq!BaCRA4LX*9zBS<3 z0l`SV1j4;N2ejp*3Dq0MELi=A!5vkQ;CfdO0%~e%oSmIf-A+`x)4;%B>eQ)2Lqpth zKj?t$pZx<5JOC9pkH#x5)@llL*!W0!1`TP58 zG#XSx9G(&G<>ch_*kg}z2h>0AU-~cF?a6*yzTfb)=t%uX_|68>ynPGY@rw;iY|Lk6 zg3tC6U%U>!c@qEr5%9|+lsWoN2u06PsTr+hJBU{KAR3c zp2oWp%|Gc!4tVi<-6fsQ;&N9|wQ#E|8Ggs7G%8z=QHrdG=Y~-~TvN}sejTK|nR>}%16@+_%u`JJsaWO+N z3ngu#wLH^Cy2FD1nmMt^9G_|o!py)l8*H{cHO&gl@&Yf+2RmN^d8??(^+eSMvSu?` zx0P(zPS)?F>UWa0JBh|LvLOvLrh%4yp#1>oKEUhRE9u-rckWU(Y?Kr)BQl-@2Ob9d z7J|KV@zhz^{#nGH>BNqBVq+w}HjG#oMy(I$t&8NZj|3Z|z}6VBBOcqG0CpvUUDLqs z8DLuyZ|gK_^9+3Zd_46LEaL^L>@7*-Hf7BQLG?yK;R>v3nW$-rvLZ%O>?%2=CUs;N zXPGNrkyDvO}zA>Flr(ooS^_H<9l(Q|{8rb}QwO>?soZ z2!gxHuu@}KYoKj3*0xw^+ieV*ZJ87_?e1#$xRY-R8a#M|(bE2K{AjqSFGMsDrtI=l zmD>^>QxrWxlB41Lky!qz7`kt=pxs&6>>{jk0G)oKW-rhYLv+sp{Y${nH?iSV@nDAJ zXdbVx2tc57?H>hq_?OJWohvO95)#18TGA}DQ0$68Ab9S%=U4^J{>`5}c@jbvZgX2S z!_Q-5W5;h-bYgr$6;tkB=zxf=OP4N1NQLKxr-N9BqX_C1+yIgq?FF}2sZ^UcZyvv? z@!1n?-@YC8A9*&|?b!xD-?nYr_)X_N#4Ea9ws<#6%kJmr$CBO6&5ivQZOk1HpwJ$_ zsd*=QkZ$|C?AoKBa3De`wg`a{0i(z&Phgmr<~XFVVMI-mG{HUY{0 z*;K$3JJrGc^BLIZ(}_=~3*L?Aoed^NeW_7D@u;7)aSCXi4tkgKM-C~E9*~{duIYb> z9E`=@jgwr7R-F#e_Bt~_uQXIu8Eb0I4697&N)u^~xwOaKq|sJZVCp;em6 z%gtoWvK>=JfiazHD9bUB6`M+mOvJh7;uH(PatnO1H9p6dh_?Ze79hzU%yFTTZL#~j z!J7|&v=_nQS3&-p%sgt{R$kLCswIVLO(h#s@Y-FVVINh$4{z8D8ux+b{h;jt)^>ns z+fTOdCpr#Lo%;mssiO9svX;&Anztn7%LRGQ@UoUrdmkjX%>o+|!Py;N31CA! z*qi`%BoVukv0XFq-S^>p?k5gDj%Pp5FMdN-zMihwEUnnWFW-chZUDur$^19*%;!Mq z5@E?SL52&+wi0I=GLxc*j3f~5`8Mi2D_Nd}1U{+c8`97q;-Ok+%utbSsK_*=4;#wU zHS}Q%EyVf`t#pf0v{f#KaNi?id@?x-0|@sDwE+WnQ%$p#rqx#6q2(> zi`u-vKqT+P48e(oME}E}=Or+>Nj#D+9?9e#%_5+&aQ}x)sKV!ZJ-DN<;NLte4`EX% z6v4s4k&%%hAt6GckR|@SdGolQ7Wf{546zTQ!O_tXs`a?IILJPvBGJ_7;>C-v-*ssc z@@WJH2Eu*ejtDnCK0fehumfdfWoVa6moBm56zKA#!yZDl>*?vqat)FZf|9)`_&Pj1 z45dB7E_?&Ub$on09CEC!t>KBpVll!Z+zjnCXU-h>EyN<)1>P1o=D}_(U%nh&HS8qf zAlw~ZKI{YBz}MFo_6<=L-YZvESMF`UyYk(=dpA2&z;ObKZupP^??05%h}5uqNMEzc z9o@`5d-kv#hYfZWb_U)wsN&%PVfWy-@TWX;<_tG$KYZq3cY%*G0RaJVx`t*uP)|^# zEITs&O^Cl6+5c;}k8$DN!mLq3Zg(cNZ#{Xniu$ya|J7#xzh3~~KLD=J$HyPQe|v}t zkNI&S_<1gXvi-YR__ajvX##{her-Cz@I4v-IGOk)ng3n_@9l7KCKNv(DY_g>UrN-R zT*&Wy5%i^z9Vz(HHIn}O$l);jQZx>~9Sb$?cQb9YG^sH)sWLVyH&B!ZIN1Aq1MzIs2fdH zO;)OATUEV_vf5cx>;TH#u;xHXdziE{gx4ER^n_rY0eHO!*6OV+w-c7z^QxRcZ?N!q zl5i+g)a4;=b!BRXGQ_IWFlfN#2MFn z4pENA7^r{QUC>u!V`GrW2xk!A;~am^^y$-4=aZ6>^g4+~JJ<>f3-v;7?!W(jG%~^d zk8`|UcmG|qS}ocIJ_EJ3wxVYa)PH!%>_7rvH*VZG&WWNyLmk`^9w93$i+gE@4jqDu z9_3_0?C$|G>!fKWTr+Z~mu@n<|p2nb!!e zG+?}f z0{&?t@kt{8g9QG2Q^EU**n0`&YYRu(z7ECRn zItwV|6~(rSJS)1$L|SYh&NCF%842<%gq!TBXPv+zSFpefyKgc%#}iAi2Fb4Y9B+P- z3wSyfJMfAua|OtG9b~@-^4`FT*5DPJiMm~6QyLE8uERIc3TeI{v>;0dx_{y=2LRVv z4`R^T4&m(w81GH{ehgaYehhM-wa)#_7{GkE4{uAuT2is5U07WTQN4pG+l&{l#|zi+ z3Rdy*UMF*xVHq!htXDwp^PqeYFUJRDnG3Ux3=|AT5+{WyYwyUk4MiJ3Qn2A7iHV5_AMlMHso^UWjPNUXWV9M~oD(~Emrk0QnW5na zIat`EH8wV~t^=q&$2rrpZ0%EaCFg?=J~)1Jw$sMO26YlCdcBD9C!Tl$4q6b7E-o(I z=Lr-o0~@?Fw)604aL7TQTUuI9oTY@H$mMd#Xn55xz4X!_`B7G^Sb?q=b^{JJ+^^6` z13ShFZK&K?*A^T|5QyPm14mXp_d0BCZEbKAM597&Z7q8zk=qB}Nj-3*BYS&$!@b}D z859&Wv9iZs+x~jEpKH7Y?&p|<@A#!U>}_4H_7BSWU!?H9epMIA&iG-#^@U)30mgXS z7hu0EfXW^Fb_V`M0{%%1ld$)LSnz%{b~O@QiU#k*gR8OF#Yk`=oH!rOKOZiDb|nVC zn#4al4L?2&oR~?SN+3^!5^skH&c%q&gsTQ8Yn!c=l}54(Bf7#wU1eraW5-ydgK>+K z5#yGz5Y|~L8mzRn)^vjvU2CN(wN)2cD@)Ae1;&yirlJCC;XXUTTTaANuHYdL@W5nZ zp%1yho0x8g&-J9{`A~Dbz$-I|!^_0EZ(xOQQ3WfBg17L()u40(sN4$bc7vugh;pnB zk()0701yC4L_t*j0M&Vz*PTK3WD(t&c*h~A=t1*7gm@kF(-HA;WNqoUSjRpB8GPTq zpFp3qr4cPDMAI&!VFyvOovPT36|cwgS2K?e&bS=rs_A?Kd67m|t&y}?Dry|%Rg+|OlcWuvs#Z*fdVU{$d0UX0Zks_K3}75FHNtHvd34{ zA13S#qlThL2=^1o*r}P|+#CW@esCr@{s2Dm3^=`tJe4LI%@Q8Xp^!-L&x1l99L-`} z@Lid@L^RoWPZr*riT`iG9e#M^$Ppyv;2%7@F)I&IyL|aF@`FPLp-&*Ar%juNFu|_T z*IW6*PT#S|yi)`u+gP}xnMw8_GiT03E(rKQaN8rmBd=b)8eJV!@oY2;ggbIxLmKMc z4R%K^ztHqDggY8YqN1X>dm*?}6a^uE<;s=uTc1DBFvE2~u@OFZYL1SM=z$4M*na>0 z_iSg_QH{_w*q;p>HjLk-E!+`ZEPGw-iP+&YJUkrzvheP)KM*@nQBqQ(HzlAK8#D28 z{@V7p!(CT%6~E9xUajYUTrT)>zwn#a$*&hP!H&N!#ID~5#^;0axfrxx=M%ro!+)3w zzDxq2#e$Ec@sDG%592Th_xGZ32=NaRc~H4ui6t*Z2~Gx*qkhEOk+KgGL?2BPzdv2{ z&NRWL1pfIb;rS5h#bDKNfTG`9)of2!nn)NwjG3a+TwM%-rIqGrq=iPZW=F#&J4K}_ zuilD=%DviJQD;uqnA2sJOpfwmGkJ!YFvWtm&58e(EA_Gm@uUy&m@oD46k?GNvB;O4 z<3K#%&70>99t;3$9^_@MfMOYxuH_Z4C5qQ##p^)HdQi3rRBdD8AnQ^vM#85PT}Sx6 zS-id+syCbL%D^Dvk?Ev8rb9f&7?kAcgr2qTC80I%frdAw5{)T%{Vu$IJ6^j5tJ#cK zY{bjf19;w|wT!{DS8M{6o1yWm*6~_a(N*^g3%sdJV_t!|I>T5F;SQBMBzvx@DBDN^ z<$M-2V_BvlgY_IEb*6#(kXDtZq<6{XDJtbwBlTL1WF^gCD-&&#N_L9)yA))K39;7% z%XN|$T1y(NWGzS?VIJnJjJ%mb6Dm8iRP%lgTPiQNv_qwS%_OR#jpl z%QfWX7~vK6!X|HdYXDv02&$c^HZMh|hoZwn+U~;}h!6}!lYOCJI2IpC1gECsV>9_D z60yOl;Mgp1b}l&cD1PEq>i8Dn@q?nFY^o<0v=@M(9BeQf3}ivXgPzPA4jCxq{}+`z znn#5#GBR?U6SuCnc9D%vS+iyhLI8aBXFUc`$v*SUGw08rN4tFc?YHO+H!^bk4@})XDs)CP@r#be zy3vjwKR$8V7EPbRpBr7ciHQl@2Rl1Epqre4h>wVf$jr>--URM>$8Rn!`{j=$Xp7`V^Hew)qI#`}IY_T3!p%Vh9bJoqRE z|1g&NFrN289PxfE`F;%bUIOod_ZNIDvz9GaqOcA}dcRMnPriLtoCLRM?9EwfZ-sicQh^bv(LS0in6Hf?u?TAtrv zt*A1mnW_|K@+wnViJ26lr^sBIZXsB2Lq6vUo^k_E_z+J9^PURfKki39L7C47AfXx@uKh<6^w zp?HT99wMGehoaN+@IxKtaYT7$x|Q+dFtWXMAJ($>hSjHF@KDfdcYvDhpmr;$*$k>T zLB0cq^4stlsN#1JbvLbg8(FiKY+fcUo6gH}!Lm#Qd8W!EMzTy(X}*QL$VSd&Ni$`9 z>)D11hVKRp)(@+hqyqbBdN)mPS1Pw@w9AyzXC&0~B5IXHvQsGCE#~jgVq0yo{n3*A zB%?zf{0cikqm{7UM%d^m>~xjX`0{K01Py`GmSAO5fU4R{S?nOowGtJX2}`X+m3ERk z7g^h6<~rXP=0R|-W33jMuOpZ>|`QwCXshM z8Xt-Vqe=MrX&58q9{|UefKzXgr_zN(xnz4G7|g-?a{#mforLepz?eZa>witTLn1)k zjXt!pvYInz4%Fi_X3U6Ppjxf=^YdG^ zYSnd4wg41&!P4_Cu!9&v$63FAJ@?T;AP~S)!`HyTK-ihMxVXf`M5s*RfE2H5u-mX> z2wSjAd-m)>r@nCE0veVO=1|z5xw$zU(heLrptrz>tr(7`8DN8NzWVB`@tdI|NYtb0 zO7^PZo$>MUdEkKuPM$nDKB3z9#DRp{P=DY-e$h4dbMCc!d3mAEY~8vQ9Xux|hrJf~ zW5F8&?*{A`ydm%>V{ZujA?MKd;o0ALmnFZ6UsU4*d84_;o&$Q2@R|`(+;ZX%0j7Z)W4)%x30J zKa9uUi6P&K6<&?wUyNe>Fqfmq_own1w@d#*O;$C!DjMz8wYI7%OGTx%vewa{#@?{VM0H3mKCDz7QOL8DBB3ay^W^IMpb92gv!0rQeI_6ms!cvZGt;k~ocWK(oSmPeX8d7z(8yd#w_nl-*D%P4xwxm(b zY5c}iKKulNzIrQBxfN8eB5IZhiXw<3mLSiJDXDSTP+DlEDzQ_R+p9}#m`pNIs%IG} zGqv&zwQ9eL-lvqO(b7F~*)D~0lS=iLO8K}#@~DJ*P9|8VQ0|c__bSD^EqR+Kk^ARM z3Kp3h2ow}J@GGr^6}IA9Ct0(zym|_+W{R}hTT$X7%eLShF$K9cpwyLWpCV!c+XEz> zzJd-vUSF8_Xr#C;kQj`T_XZ35f~5U^bc?H~*+bYJ$hc*?fbTfdx}AjfYKEh;Js9X~iY zSg(h0OQ`Ghq7PAnV-Fndpq$rRxq25j6nhZ#Pc~rycNcUz*jTsBrcIl;*Ur92zazI} zY+x&UKsb6m|NQfC1MXhzJ%Kk0jtX#;Vu!uIFLmf&3HPxHaA#76H8B&aAC;2VQpvAh z1>Zdke%1;0ALlXl^IYAVxfru#X*T}lEc}xs;@w#Ca+Kh5wD^1!e=Hn7AHmd7dM{ph zAp%^A0T*M$L*9G{_W>X3LW1IK9PdOpIU2$r_7nBEF`BX6MbTg{Z+A7Uv7sw1=z2%P zdMA@&Gew3%dRR*D7fTOGCE2u~(U$IVQ#Ly=HHqLbP-CaAw^i5KDBxc8R&=$s{D6%B z!u|e9V1WmCU>_M-WyXNPXlZv4-W!hf z$B@IZyx|CPFoZZ34nfZ!oC=O7V&|t3muKJ?=Yo?DgJa8x6FcdVOu^9{US}@Ro}=@^ zX9DDK|6laETUc1=k#S<&I{F;FLe{XZ8`K&a8hm|y+4)R1bQ--`uwcRXA1>_2t|8Kc zJMueo`-Wb*QQ_<>{A&5~<*b56Z`Q6|J9+YCv^#sf2!c?(rl+TKyAc{1inc*;XVo{G zm*&)|Q}gG~NAW7$fN?}&H#awSw79z)ioMU{6Y|51-+btS4^QaGTefULb0Mjzsccw_ z-rZ(-&HV~CZa2_D{`IeaSzBA9L5{mSyc{^*A3uJa`#96iG5@;4dCC-BEFhId=y7sjUXd-VWoB zg)pH1I8kvSOmrp?T#V$u9U<*?C60RXE+)v{nMq!XC(eXpLjgp$7uDj*Z*dg0I!RmX z#qhPpT3BTztG3maTWNAMkm=G4sU}mwq#Z9ck~Z7Q`@PhiZqgcCQKgN%T9-Ji-kz~$ zTSbG7Jkv(B)*gS@6<_3zJ>-Kg_Q#(Hz@PL7Pr=tfVv#qt$d{P!1D=c}c0VU9-VCaD zfU2!jHI(Yxaj4lVx1+=ZOdLx+1g?(kjgaj7u$BXO>p?vH)jH04;UU(M zbsQqv4-;*NaAYWc2Js!jy*V9k+Dk!0?wabIjMc#N?trqL@x@oI2Mwz#$l3!n z1K|b(k@V4Uet!fw8U==9z)%zzj06J_I8(ACTGk&fYw_WA27rNZYB-cX=r3t;5SQcH!bxFT#EN)>H)J zI{$2IYwM$rKI-G+gJQHzk}>bdoi>8dllLAl4h57;AS>w%Mr)>}6Y=c#k_0i{0?Y ze8?vPNXYc31F@$A2_4+Q{SfZn_~HnB)4zy<4WN1#sNKa!F7KOaoj`)UHicQc1Py9- zh-0pyX;RL_DdS;hob2g0ta<-U({10f7a(ie%ZwKA;8nXpC39-3dM6Ht6PEArNuqi) zs9A&8y&$YjmO?3AXeP@yrVpt2xt5AjTV=5|U2GvMGE)^AYjX{>St?D2QgKM7*rSl_ z(nz80RERgLc)g*ZKMXK}JxXvaS`4{78pj)r6AVT2dxLoJSL+Orws=cg zr$D&#heL(KfwC@l<`-=7!a4)NK$N&Eg6fJOdLya6Q0izf*&m9*apFWIaWa-1jRzxB z!RhH>Yz}z)KJfN~VDxn`x|15r6!zvaAvAr^asgEF|BG&!h=>Tpj@Z~(mVgtn&K~6Y z%``0I6VelMskC?RURIWRd3mAF|2yRl&t+m_f`$s@Z_(?Oo=Df5$-HfH71Z-b9(jb- zzt27Q96KqBeD3gbZdOP=?>RSs9lh`D?1W525?HNP>$%Zy+t3U!+yy>Z=-ncARu<*k z0h~}sxD6|`QP2)|4xHODy;4L9F)#4J4F0G0@!p>W-k(ognt`92 z$~zG)7!2n3_z2tG8WUl?g`(EdsNBS;KxgZT9kJ8%cw`ywXmRZ$T|}0gt+Y#eo!r`!hkG;iH#~ZPa zHzOeRjfFeI_kI8Iwzs7*?iXlHsaOMi8er#F;Td-VW)gK5S(8e@4lvWLn?b{BP_c+t z;4MC6MCMz_j~I)O81R{TBMwZl?>uv5zNta3kzuBR24ekyLbi`d8Y4#9S7z&Tr(YfxLBd+o-R>D=*!Z*w%n>FHel_1BIS2ao0 z5h&{m6L*L3n5gy;qCXrTj3$R-FlZw&BBoYqIKMAc&=(}`2@rQq5qJ2Anmnn#VBui6 zXf%>;_Y}9gOMASeU7n2JW;jZ8G*mDU!XF9|^!XFL{^V$+4C?pMXx@o9{A2<+odm|F zgSTg5=V#%k7lE@c;*jrMc~om2=*z$cv#8c1p!*15;C}r}^anov8w2;hd|e=$egMie z_Rs#+S6@Y#P$(4Rx8@&b;RrvJN~I`hec7^Q2p`_w-g3E|&*xWHS9AH!x@(h?l2{qY zT@`f~F~}y#f^w3JIVgmYsD$+4_HCTQvWA8RxDD(f6wwGw!^6W?R#xy6fk42rQZK9p zt;~dHMC+KiK6j+txqx1{aG_GEgh!h@cP{#bt>1)(kkr&vaMSmF+mTYQIXO8Yk_H3> zj88~F1`mGe(j}I*C|U+J_+z0P^6azEj&ov%(7BK*f9RoykdFn$hQjV`-n2HVoo$`hK3BIF*GrH7Z@D0@L@70RFI4u5b4fx_|@a^OH zPY>Y`?vUva?$_tzzs_ZXWPY5b3v8c;f0zK?jRxlkooH*&-iTn-g{5Um<@ z!v|cz#bC`TZ^_Uka3z}m@l4)(Gr=eGsdwjMS7(uzrVGy`2;oD0udfhtp}}6-Xen#3 zR92bma*=Db#TspyR#Tx>R~ado+%o2}W?NyeyR6$y+Ug{2cUD8bw>hcW9aSxMbfb;9 z-cC|$CoZw1HaQW`xq!$0cuNAwr$g|k!@$xw{!5_*g!=*?@K_A7<9XGdmx-(uc*Q1O z-7d!cQoEb6n{dbKQ*i|MhIEVzcQ(A8eUIW~IEJIutt{W0bXeE<){%Q1G{A$W;t=t= z`Bki87gfKTs!7GFQyB4Hw*_lo$8UU;&T$iD8uN0^qzAPki1-RSy4aR3u%vTL6xoIv zNcJNd)j^E{+HQsTu!(BFfpo7%aM)6Lz}jGwRV=MTr$|Soo z7`Xp>E8PFWKPmM0xpe7L)G^}fsHvvV9Ld-!y9 zcY*Rn`T6-Nrjk!S`Q&bQ$QszY$nO^L7l9o>msu=$d7-tn6&_Q5-EnhslaIV)$r2^T zPJ4TM*8{I3r%s(xEK5pAhX1|r1OGj;OZ%ompo3%Ch#dL=13~=0@mvyhWe@Y?$M}sG zzz>gu+j9shTiz6KZxXmQMRI?ls@aDtu>*~s z*x5+^F@LpjFlcn+Al$1Rk!EjjC0=zg9y>D*T%3%bo&ZiyBu-6a+eR_f!C09OQ{*aU z4Ht5(b?F1Ohx=%xkONkhhpjAM{nab8WPR!?h)jVyQD%?93L8R24ZutXsee z`JOXOlQmS8Yp2d1p@E`)s}230EqKnIcqV|JXCUW=V6TKzFNfey`r|Xb!0VHkZ{89& zyn}6i6YTv6k-TD7NnY(T(>lnmi*hMZ&`! zv(_L|{YC;kqmdqm)Y1?l`vSH<{)N!az;Nc--m>?0R9~QOlcrn zZeS`ypbW>#f-s{mmhXY*xX?Mys%&RXrlXiKQb-xW-rvpJm;5)u?g z6c-m4MgGfIcjU+sInJV@#LeFl9#!O52iSOcX+P>vXz}8#i{D%_fE4Dxp1LfqyD@65c(z!-MZ(M~@ygzr%1DUX)D#zJ2@3=lb*V zb@U|rf1B?T&{L&Az7XzBS)enMxU`?Xx)S;2W#pH+;P!On-Yn|w{L9}7K7G=An?t-%v)XHpw1p_k=j?2WTj2+Wtr03Dy6qR zqpvo5ptfj)+UOuwxaun1#R_+(%9Dc&Mh8`aog~|#gwGwJ&#~7Oj?|SpX-h{6hljGu zY>?+2kvTrZ(*f8E{>V$gC`9}-f%sg1uxKv7?rm!GyI|8BVCVa2%5qv}x>E0Z$b5sO zuR}7|Au`;}@%^aUJ-&)5lba-;_w`uTdZ~wy#!*d(H+PGKaF=E_tpcgvNHu*qp79w~ z@S2!9UbB7xx__V=;&`0}nP6kJuRph|pGKOvWToC>soP|wTW_gZYbmU@;@GVEo zuv6!_3VB{^fhUpcN#=P``QD7=_~_3|d=Dlo3yH-W622^v4aO1EJJyU`-3-?yR#+xR<$|>{LQSL*X%PY;0JTmA`^&x}l-rzi7>By#=5x2&7$R_@aK;D=|B+q1B)ndF_B)Gt$!dlNy| z1aNCSa(g`T%Q)<(F~rpv>TDR%ad>j_p?yBPe4zM$J$~+V>qY_rK@~}f{}dYK#TM~x>PHD zMjxxpez59t25E|h=_=d=SZln6YHzyA8*d8c8v;b5BVKGT6xxfB=>?7!@YCq1hGZ|c zr?VY|)x*$v!@x{u@VEzf-UqxCh|CWqp7lqb3jxdLsn)*@w!R0pz72MNNFM%@xo?MA zg-JkP1>_2sGu9(nCMOvg?%f0jGQ{P%OTQ;OP`))+_t_>l8;S4hOtzZ)5*}o)LUX>s zV1>}nfNu$_(X8cU)>0;E2DZ@^Z0ScG7@(HCWo#_=57r+XAnX~S+tEiYIksCs=xaCk z(QWRh-82BwT(`a#zH2C*SWtclA~$ z_R+yZ?Y0&U3>DLdiMbA9uA7kSNfo#e1zrrSh2D}!BNXx_0bEI-$<7`?7WohbZt%vk zX~TsSTXoV<&7q;{q+!|=dm+OaN_DP0NSEP6q>rStocSy_Jl_W|4^Ckm~K0!`6KLmbgEj;V_WEeo)k^|UliY!fKng3EBf{pY}4 z2F?8W^OXeIistR=&K9JEsgjH0WvEzkDl03^4+wh&h)%_<0lLFL0yDol2pVNvuIsHfpk9V&{QUFJWw{D|?=L8`8?K3o ziFvRk^1M*c9nlx|1d7O&W1=Y?Mvnratjz3}eMbMdOM{24s;V-NBd^>>c!7fk4N_cp zdL+n(hlQ608)lAj#Tiuo1?S9}W9~RFFUQBn%QIBvUCe)UInuIhZ8sk||1-+J%`78_ z_B90?0LRj>O9!~`zGAMt1iqUK?##rxX3)2$;Xh7-Y8~8*$9@@y{yZN2X$*EP2D=cB zpD^G@0?C#@rYV4JHmK@-iApzcGD3eQ(yGl{C>jJBMzWp0T!$ZWIgY$G4!t@ay*81! zFcy3}0X;hoIXwg8%lrYBd4u%%Lqv%0N_Sn2 z4_D*I*7`HmerRnV(jLLKhH>Q{NVzjtI+81K6ib}7u$DP%%AHgtP&_(vd+n)@?ZAs} z$g{raYX;)A5Nv)J@{d6D^-<{B*VS9!M|OSycD{@4`heK?37Ybi1b0*PcEnV{{RI=; zP0IZ@vMaF%{#iv8b4`xvAc`&iH;c{vhy_wl0J$&CX8M%M_<+itr9J4Y+S-fU*B5>g zI|d4=4*im>bvvw7+b#JWR>ICcx}E*>+xqD?_t9+XC$6=`ciFIsj>5iS3{>u`EvOYb zd_#YJgSD_~kno8m_mN01)e5UD)myB@J$=+kgZac^V(JJn5B83Zvfm3+p65-J8<^S%x-N>YkK(IB_#$t3SSH_tf{2F)FAJtC!-&dA4D!7?3e-j+ zZKKJiv1r|FwDx_vVg=r~oh#jp7jG5scKvu)@|C%B-z@WQeXii+{p6ER%FjO}SC43g z^0{{I+zEv$d?lC34xe*D5Fnsmdg&!)OU1UU{0X5mbm&kek2Bnt=Xto-7hinQ)ji~B zZjJc^JqWjfd&$G9GJN5(j2LAvcslr=VIKY$lF`x85o-K<55yK$mdB4D4-X|ZMgdOxh* z2R#*OaW1k?)o`?AFgWTi9P>rKjU=y+!7h&mSH>Zi#u4YofQ#|SnX%}JIB;w<=o}-t zJhw*CH33|q6J0P=S75C*T3eJ3)0YpI((F}va^2>BUR)`LcVVuK`r*6-w2{Vh~eJ|$L58C`3B^jaoD=o zR69OIc6|upj_-I6+qp>cZHM9=3TIQ59NQt^CGo!gzFDT*AOmD)_CMx3+^o9~ko3MZ z`nm?>J;J-j6k@DfCr@|hBU8c zDmIcOTg9%fpYHu>aDSA3yw@F8#e4%9cIF*`;ud1=#3I|T6>-|b6H%s{V&m>%Lw{5w zdtCLSCc&FKO7=)@*JHv_kLX?ISnP4Gd%sUlAxAbg|5oV(6x)chOOFiQ$}-&L52F6c zU&(fDbEonL{q&WaY`(Hbg3||MulI;zX1=?!vH9=ypfly4SN=!tG3NDn7J4Kdw5Ng7 zsp!=`*wv-r>OAnnTj{`rAL9ULK82xQDI1>&|g&-#l)UjaZ zNFd$pi`NIDO+na^5Jpn&VSNhwgKArF(pP;t7`;B4yfy}087t-6J0Alsj>XT724}_) zCt{Ifv7lo#I1&fiqN%zduFQik94Z)xsVnUDwT_ncZrVC;Rb3!c8$vXP(M@4=a|GQQ zjkm^t_88DPia0TvI~pc7_%YRPY^AeM;V4!(3#HCnp#xgwO4mAxhi$1ZMq&%R(GOzS zHzLt_Vc^98@YWb)k&qD7xF0S<{hg z+F?U&9jf}KpXzfx|Cw6&QsmcJ2>XZhN*f`hIf+@$e1Rha;hyQv<+uw*XR+8tUE;=; zcoC(6Xqf>w8mL@9Cc}ftaL2RVrF@ky4X{jYRB*IPbCh~Bn(#X?Z+k$6H

    ~FZ4Kwa>hTts2=oJB&WF#PY+*4^ON>ys&b9WF6I~2L<_Vi;B7EpoD?i`=eN@P{jQjOi znw(P!G)ZamkoJuGwKY$2bw8bfUfRQ5Sd3qJ0sZ-D{Pt|nH3RFKD$P{-)nsb_8OruC z=#4mVbrg9n0zY9uI}BK7s1(hyEtqTe=NdymvjH3lr;bNhG`OjAdxJI?>b!xv8jD_y zlX7Ik&u>S8i=)8#IOIYcb}AN}7zIv_0iAIYsoSFPrckQJpD1-Cs@&LGFTU27uMc3G zg4xzErX`$i4JTV8iS}rsJr-||#g2}`JK~6Aapdu6sxy>n_NMBbnHoo-!bxRxVoKcj z5+~N^&gQ!_yGEez4hJuWbI(NLuY`e@f{0h5!Kcrn>)t`PLFK*>?EC=iTS6TE45Ti{ zvR4ziYq6}gQm_F@yst$v)`QITAZx>KQ3MJ%B1Mqen?a8%2O-Eek4(@Vgg_1`ri2BS zO*Ha+*TM}%;aaRjb*>b?VAR6IpI5P2?+F^7W@IoZd;2ihhB#UvWeFE zJ$*IXdh53KvD|2>TchE&^brr*^*(IR9vsFVuoHJ!tJnADHx1D2wzJq_D{dOhZL$$p z_2ZUXNe(kB)WTXVpE#sfrh|~{tj%-NW;%)~!}*k9Ov-RH)ehwQfa)l!eX8onT<*v- ze8;o8mZ_HI;bNK-n&E`ydr;;6Ty?Nm8KBK~RwoW-_73K@_n{A1>kbSO4_S+u4w?)H zO^&OjWSY09(j2HfFSgK+EbzmM1DP^|P!_1paU=5F$zorw%#W@JW@^GI$oJw%qAY@_ zjiAc|rO8uOv3N-=D38ahUZI*-4E_Zw_pV=Wnyl_!@UiOpv!1KJ%irbyy!^{>m$NUm zWlQ;$+D-ZMI#Z>3B+HcZI)T2lioEa|dhH4H=h@ipnV@Sra(4=lCM(5*pT~onV^Iiq zDTQ7P4&i=0gy;+*AytoraLs{ygRiPK05k<59TEJ|5M8AMV;lrJy{Icu%=I{2Ci|69 zzyx>XLM(DF7C9LWAm2~MfsRq&XbjRZif)f$>VmLZZ?eIUZU|%>gP0}*DPcX5XpO|$ zBS}d1BQf}qQTUNK^ynzGBMv(jhaZonJHqJ}Kc>N*t94dExI^V$<{{L0sLNd0Qdc(3 zk^bBs%<};A!ikqd!Texyek54(B)0xtV#h)$^U>~)z@A0ep=A=>v%bM4hnBUbiK(WL z1DR%UmxoLr1$Vj1SeIkYD51pi*8kpPa>H*`lI`oH4x?}fnzISyt)%nb5e`nlb~@ra zZHRq?5tmK%000mGNklcf3yDXi+HU#V5C)k!Q)cjPmj zg$zecq8+z)2!3EV$npW@(P+~Qtn+F1%zWYGt90k9#POF^$Dh-+O&60LK*CUPXb8w0 zjvL+iG9QaP7u_KnCT#$-uQ$E57rmn|x2qSvOAitU5-E17G&?lIfzEKGvfU|T0Ba1O z3;pPFgSH~rGRKX{c82m?RUW9S3gK$PnW}KoXiD~E^aEAFM4buu#t={x0m`O>>Nj=2 z-u?kfDAOxC)b6)${SEiO%m2USUpBu;(FL-=k!++h3+Xfo`QxT~B8~j^5OZwnpFb;e_2HY5fT#W-4W29KVCqn7YP!^KCElAbqr>^l3 zDm>Bp0ID-W*W{}%vaMW_6!pykbdxt<=LX@< zl{-sbk_|rkN@up(i7#;$w~ruS8wOqt#$OHrFB_;ALcvFmBkSLxcP+yAEdqN#mf)W7 zsT3?MV-@xr+}Au3?#9j7qu?&{UD5K=pWR{K6)#E25N`@NBf)*W)B#9aZk2)@WPF0A z{)5~e3APNywhtlp^k?_>V-MS?6K%uaLX zs>3$g1A}z%+l@Lkr2iHxalMY(V99Rmt6FWve{CVGw$iWC@N0F{K5KP~Ba`aH9~!~$ zvBq}|11bKXVk&ZE9)5HIdh8AI*qc=AYoKl(Xm|m%Jxd*(!{vC8X(R9yYcgX9n`Ogi z+l$%Gx^!plL0fvAHL-T2=BpvpE*n0@hRv`c69<88XClvo%W>tPL`#Cuibzm7gYNp} zCWO1mgaMWNo!kFTPxrse-{r4W{$;qgW|?xLLb978`a&TO5q}~BId_P@x`Vy8h`9DN z_+bk2>s0dI4C3AlDQ^3%$>`4$!B6qv`*GmS&$Zi1D}AyUzoCUtU(}Tm6~amOV1qcvJvKf49JI7^9>;G6(5@(_WGO+ z;C@8O?P$SzykHrZ`wz{*NNUqyV((Dlz+irNAM&6zlQ>LFw9!Bnzs*X$qqklP8Kzh7 z)QboEs8a@OQirHhAg_m5?CY)Hq87L5wR`$l?(S`|(^9=jCv371*XV?=wdz$m-Aa*L zqosBaQl+_Q(_O_RC*pu3NDl_pGnw|+nT~gnw)gSoH}Qs-@yh2B<6KZS8`RArTW9d) z;hG{Zb*`N@t-pBCg4)*$**6H=HxykRr1~g`d&U_oGU&JYX_FktYCo|mKvfc;D)i>_ zJo(g-Shgo)3=&fvk>n9bj*B+cPIU&f()_7RSE(l`4-q9t z9dFd=g;p8RiZNu@uXnnne|Nk7y;GR}E`OK5Uit4RcPYP;oF6qysz1KbHo=zPJAm2S zSG9kD#lHUfeSIwwr0j#1X@j&G)?(%m6+}GzbB|uXRaEb`)FlkCg!LfgyA(E3w?V63 zqt&fe>sPAybsB2-KrzkHGTlv;>4y}+dpL*aT)=g_M>V|->fXYt<|C!gqQ*H`{&ZlR zg48@lH%#R6{D_nhNJ2j>(TYjx%O(w>589wR2ZL`W^m-{6eSN(C1s|{@#$xYCP!>cK z`$OH$XS-7c-s*H0F5Q(X4ptZVu-WcJx&xOunArn+tU*MsD+8Hc9LPbSXSy@Vj##EA zTM!`T2k`06AjJWc`!iBl${6aNWNg26yX%fb_dECgt#QNtE`OK5R{8I^Ja(jm4wL1* zIUBTPqn+vanN;e=I_B~R;OZ0Lr|IA}6zsFGTeHBe$HA>>=r2>To0G90CZJcxB9QDC zMx*CPW9MRt6X8^QAl=~0HTr7meJ#pev<1Tjql2cwU(;gH8HW=Uj^N^G{OUMxV=R7S zG0H`sLjUlR9e^re){*QLTLun(0g_fAso&g(`+ZmRZn7)Wkt8>mjYto; zKS+7gpFplXY&BBd1Yj-P2nx1<;%%m>n46Kp)kMzQRN5qdpBuen2)}y(x352!YNt;f zu1=H!<}fKk^@)SD2M4GR_1C2jvdFZy$Q+`9WY4nU(yVod`s(*uSU|of^wmKX4=cp| z!G2bI`&jO<)Ni)1*r3s`5%^7dcJClH>@5zvp!qSN@foz^E#k;KMB|%S-Ro%id|-SQ z6wU^P(?P*wpm-8eIUcWy#j`vl+NKV}az+Rx?p756y-NagSswH^-srB$12#+@v?;## z1|N{%2};6gVP{e|H?3p(MO+Z$3wX9?T4h=V|kurfe)YK zsXk~&Bs(#=KDty_`Y=3^Bgk+D<-vS$7*QQd-IgK`{MyxZSMvOTaQ_ph2mW3DF8{~H z6zc0?^+Bd96~g^kx+xJyHl#d$_7HJp5Aoe%^6HDG7&0@^TQiZHv%s&jv0F3Io70e+ zQ?VZ(!*0Z*m&by0qrjOsNoAjj!H-8!twC&^H&^YYs`8NL4MDgUIcORK)eQlv0z0h9 zo4zy-Gr^sNaF>QsW08xaP$=6^g`y{e(X$5fgaMogL(jyJr(;cl|I%iYGZ%vJxSmsDn zy9#Bl8lwwe>8dJm6V^E5FS&vj{PB4P^3@phi)W}kAJY3x2AO?J@%^7ka6hyHq^y#x z?b*MD0DCZ)jLFUM(KdH8zW)aI->u(dR=0rCZFun()VLYTUx6jf1N$SuHd}DOPP1nq ze_)`H>)1bYq-Bbom^M^hFtTsbKrVHlkTFD)GgO~rtuv9G&#_hI47WPe-$Dwt*2m(| z0BPf_VY;*-`c!L6*dOfcr`_4dVvB`#gNEO3#U30Y?i&u$gFwY>wDk?Vu+t0Q?}_9Da>;IJx)+`0My5J3S#Gcc&?h^S8SYrIfvJuZ8lw7SI|+${xpaFm z&s|mM&E|WF>CWoJ;ga9|;Suy9J2cCMD)#4%{zQQfQW}o5k70h5JRpBH`9gO6d*l87 zUH&eAwel~+z1igP6u31Lzc-V-IRpGS3*4DY-hG_D zISoL*L%3g`fL<64&cuRKG04eL_~~fkLUi+oSlToUi(DEdrD{48jY&)o!p<7#&OmS~LQ2ASG8%`n{a7?6$@W;{ zcq9rze8R~t-Da}$R6<4ygCxhbp_A*BQJ)5Pv>9|?gtiwgG<4IW#qok zk$(#J?gSks19}gymnX)X}%?4c2SvZI*l!lt-@9ADT&5ETaTkPX=1pU88uEb-G9 z`l>RVxPwEvT?6m~L&&6IY`KqBRe(i~GsyD*r9nhhBsevWyM6oCy}Q43{c`75$>M(Z zZ{hxT`Tw}wpH|wVLT&zFS|!sUD$We)gmE^>2@ zWQw^x6Gx%e-0iJNoKA7+B@rXtrT<5%K|^P^BH6>2m%9!qpalkEn!!CS0y)|QR5 zFgj=o?YW|nd{dyV+Jh_^2~I~zVPqiOua76Lj+Hzhzm3H&MiZSu;CL`N9l^EvVjaP7 zrEn&kKH>*D4ak`o3QG7Bu}DV<*%3~6L^5p=R7*J78b!B663vllO9YUHSWOi|zby)H zj=&p25y*?m2(l`iF7soHT*Vwaw%AE%G4!tX)>gTyVc%2fDO9>L)vkP=r+ULk^jRk` z-+;Xui7lEy?D;^mZ3#$N0SPSYm%6d9dC@XCiqBm2E2& zIS8A`-<~fRp~|!8b4PN;?wTT(e!DH`gT1r~R_dgIs(dGX z+HfwPRfjkxU-RCJbYC4`qioA8X z?)v?MsjZeEVJML{lFM@!3%v!S4_o3-R|e7Wg{&?duZ-ck?*1ql+q+ED4)6U%hg2Ur z9klCVlPdqSiun}N9)Wkv=MDXNnTdK7^SP#fYK)ivVR`UInMX%Z?&^cHUhm`kLB2nj z@VdhkI;K-{k3o-SAX1pHH1y(b;?gJBm6tI{_V4E)KhH*gosRr66~OxQOyuWT#80!4 z@1}zrQ^2)J*yZu~xj6J>6gVCUPK=_CMKf)|Or58y(n(i3!ooO0FWKB3Rkc1sg&R`m zMH~yoF2{rG6D7DyBe8MdavXjp0y!20PK4nnLfKXy{CF^SK8iaXMnDOFI+8dyiarsA z9g6@E?nlF@BjHSI7~K+1H%E|7;Y4E?+8mCxMBr@^L~A(S8cDQ7QVro$T_{l%!Ig*M z6`^E#5M-Q~J&en-rTJvioYC)&x=6b8Het8 zTip2xIIvuTJ0!cL+?U@UQ_Wt7{9dgizqicXpP1THx&I;D%@MEsS-b_Q+KM!6A?nv) z6^oIY1$5ifnvO{tV=$Xw3lavCsWxK506f_SFLV)#UBnVkzRW`?aTAQrLZKs{@5CG3 z)D?afd5)I*`!LA^bs0l+nZtwv7ctY3D)1C@T~t!k^$~RP5LIG-_150tpeLw%Qq%Z0 z+xR|F^8qM(2Nb*pa^|5~PhpvJLCOq}H5JRBfagY`*+EE#Cz|O(WjS*Bu0)P2p5;bn zx-*%ce5Qwx;i`f)+r=WoMVIO*Bs)Nn&cS-ffjnS`COa{y?tGdDm+r;p_^a{*`1}B_ zG*m3`5E86GjtgB8Y?3R68!d-bv%_l}alsVZKmWgy^qQ|nx&J_G&B71EueQ~~&h~vjO;N~pk z)=c!*srb!F==bs9`$@=;GjJ%|Z%hN%9|Kn>BA4PNxF3&1J3_&+7y`l_Dt8F?@{yVn zd&@#Q%lu*55+|Y3gN1NE8Y&zK23ID4?;#>@MEDSjs0*)G}HUrrfLbrx7QpkZ&s=2w=y?g(w3BcJC+ z=Xv5q{){n@$Z|)dkO1~nl0BLgf;GIPZTygLSxDA@h*rJ@jIV;+7eL0dcWO9ekQv@orVpJPAQS|M1%B#ce{F^%mF3JptYZ4R=KlQe^;Tk@w+#x6AY--2E%U-F&vX{9v1hH&OC) zcKw-g!2gW$_~Vbu!MUugtQ1Z?_uO+zY_eIiX8kWWNxs$ae$JjfTMqXoCjj|t7CE$o zD2j5pH+Vng^~(Q;9$|30dIS#pufV-sj{cZQoJyuI?_jTgB009-nTg$;4St?3IYIvV z7$s#^iUU{2g6}62-_JlG+^iV#p8#uoc%a~-VqS+e_dQo8LrPpeuFU74Gz#zUxg=BwP;0&jYYGrPbQJRS_@ zMuC+t&iW}P9SGEDEB1l4OCq?ULDFq0+#zz<^D{GH(Tbb zD)ZMEy~X|giDYXIBDlawUFgOYc~d39l+i#G2ZEwtGRqH7^8=OB_#+Fnt&7C6kC4iD zK*igj^fgfUB9ikwn*I!y@)UabDJ1_Xwq%wzJDg5)#|nMKd=E{Yt5v#vuf)N+L~G0a zgZ10{sMlNYYqk73ow#1F`9fsARI@8I{5O`W_5HZ*w)8$HBEcO=@kTTJh)jPn)0fKe zW%7LZ0&gMTOH8yy^F6hB9=fFA#34J7?M{>#_~Ia3vcQCK_2E4HtPQ1Mw_O<`#gVTF z0;Lg5*RMaC!~HLa_Z|^l6oMBP77iOWY}&MGUEKkMyZ)n0G|xZ(yc~{Ejy^B9e8GYR zat;l+UXF|TUkOS7Zz)P-dAR)Ii!aI@j9#z*UpV!@ROJ5v$`Ad}g>X+rp=|&5YvSA2z%NfBccy`#XM$VPAlz{X_aDY$m!rYOSO9VS-4yJ* zY50w4$d$*W2)$><5S@`kOAy)^OdJVgJHpj1{@N;Mz0pozU}FVq;V@O5m(b|TKsuj} z#jj45;C>|@yEKltFj|Tyb21z~AEP-LD%81x6CvE?QQY}R;&doD8v)KnqQ^qe_5j=z zgG`Dc+-4A@7{UQewI2yTn+=?-+*`tF2>1FhvM!u5A%Lk0Vxh{b48#UWVcNA;_bhKySZhiW;<5*4bt#F zsQw2ip99KgfvTCH{&7$@2Xwq3w9gjHBZ)FUP!oXEhe&ygsw0?+P*RGs7|c`z&=o=I z5??Xh5kEMP%68Nix~h#HVzDn@7R;1|Q-vV_-khRvEISUAK0~*CBy=njDn0;tuY-bD zU_}aF!t?)uXFr2xJOxso2FcHYyr)6QY~3C=YR3?MYd>y-6}e-eu&uwaskeHAm3oa{ z{8}fhPzztGRA2D?azVXJ&3vIzt+7D*$7L&LcgM>^dN%lF5NL-1+?DZPi8e$#3L4Qsh6hQEG4D9FW=&fn^ttrHh@z|9Za4u4+S0|!3rV=-%<5#C3 z7bhWS$Kl7K$kt$@){kloV%kH*wm^NYo4(jin{Ta$HP42x^U^}N*L#7B<5(#9rH&z< zxHuX=Hwv7N22h({h}CukauDukBH4?v`1vSAs?p@>Fybf_?0!UxA5-s5wFL03LF#&c zzS^6v_8}Vrp^6t;f+5`LmT;yql&T9Q>q6;T15*=Bm-$dt!BkZ!Ax&QQf@mAKQ%i3X zsWe-z!LLtafJKQXU+gZ{IBRO1xpEh@z=QqT4|_F=dOimG|uG@i{Vcg8GZTV41)#Vfc?3{8NEk%3`01%rb#qCa|BY z`OnqDGL`U|AbzRQey(Pht5qvCn${KCzsW z<^ET-xtj-Kl;Z&R?%i9?uqr2c=rQ8@A5q?X^G!M3=zswO@4x@P+zg1$Kl{A@YB4vq!21K=dt|fBd+)v1V}QL!IOVQKO=6NAW*+Js zc`Oq-lSzDg0Kc-5xbhluV>WVgI(~B+0u}m?QzftVU#22IO+v4ak$`*B04|Qfu1+GZ zPa`f(0p}-yv*U^5v2=R~1%X@ROEm>>tpS<_FN;!pU7od=XRXN_EL1uRwVo7&`=xmP z+GEIf)6vTlh%>S1xj5uh3^)^mpNrA7`O%GD;M^$Y;wW%In%qR3ji5S$NVvY)hiUYJ zeFN9*CpP(Os=e6?531IeZ3ZXNmm-k z7Is*9N7oymc+!~0z7fH>FL>JD)b}S+j zzXU0tqo(|&l6aTkzCy~8l($xztYn^UNm*9lZWfaO$b9eN4K_08ko?l>|w_WFX?J z!|2)w77F?D00r(h|Kf0e=!>?Tj0wJvfB4~t=CR%XgOvM{B}-(5K4{ROu5KhjxGTw? zT3T9^jsF+=Epz1#@2ZlMlXnz4OjH^0$BRf1syVj8dg(sOb-Z`|)J_ zLNaw_7kzOdxb{49b0&RlJb+lgG7-H#8TnxfxH%2{G8Ov)YVBx3nr9RP8I50?iYstG zF^XvqqpQ963J;>zn{4q{H+t*K9MpN%s@x%hDP=229#Xz3L{%TmnXoP;W~%n($~>uB0}r)cX&_(dtuOTGw^auc2JwZS7PY?m zDsR5nPb~JeEOXV@x~L_%yMrA8==&kqiy_GSQ^A&n*rDY}>M|)aHLOs)L%63bm$I8e zxED!50x%iqN?twr&+Pkrzn@jLP!{i79^&jM!(HKf54aa^K`U0^r3-*jnmUAKPe#+n z0f_bdQC#k1B5OJ*oePdVEgqT7RfdD|NUSPCs+FNgRTy4vpbOo}bO$2aNvJefK(bdD zuyO;aiXh4(iONxE`wUg*hnB4$vhB;Lh9#ixW4!ELyzp%_^(Bz;G)S5Y5@vzK*&ul? z$an(Joy!$IVRQxgn}3>4@2^&tEn6n5WB3+gZdjKSLcyYpBK$A7%E(2*qGB@o3&LITl9KP3 zk_7RC4?gJnLrS|vO_v5^FOHK!Kb{+doga&zjwMe< za!tPAL=<*;B7J!Rc6JmbKHU*aHG5NyURLZlW4l)DS1u56VnnczWwX}}hQfcMAYJKpCHd;t!xz|)o^P_VSeD5#oNjB)nvvhqHqJ2y%Lmc5Fn{@H%al_OSd!m>r9b>H=)KYc%j+I>V4vG zzF(nouiJzh-vc>MfP%+C=0uP@21}a+vPTgaqfsd23#NhExmf!gx;_pxgd!D@Ol2fi z83Ae{$g%()l0Dr4D-9G%Bhm6OTsB)*M4+YPLGANI=SSM6PngC}h=wJ2-N!`5J7m$T zMBWQX4wUV)z~PzTps6O$p>pTw%4QEd6v}VsMN~@{by?R z7h3I?8Z8v;%LVncYv=2&(J$_xJ9Ym~ILjcDL(}44Q}L?xL}^_qDPWzrI@E!GJi6=%zW4% zOh5rwLbWUB;r!~WuX-c^d9ZEfhkY>NMvp8`=I83s>_3KV57W>?4`O~TD^{$KsU&Ch zQ}&Y6@AZ(W!o4HoKHNLAFl9isEfYDJ z2F~vwt}G$0J|_hmxH%oYHVHc&1Eg`z(b$#A7=$?dyc|zo98I5zB03Dni3s==dgU<` zigyV2V=;JV6yF#qlsMD*!|76IRh_T8)<;wBsD)V194KY7&bOiKJ<+R=(Kn`nt5YD; zv9oco3&GCBA;%(+&QPk^ADoK8zMX(xo`9T-LrzDN?EyriC)wz!s&(ZX+%@%{+A0^Z z%uy&ANyE+q!oAU-Z4OY^`>?fMbVGm&zBkkb@U{M`Dqoe+l_>S%8bURd0d$EsTM^JZ zV}yE}CCGNtR|UeA(qN;}LrM#0bmvRmRS@pgZd8UFz0MDNGZ4HH2e!P;BrF4mmt!*A zQ_bKGg?awwN5Z{m6P@}s$XbIHY$h{SgTgID_If&VBQWmZ3%6i7rUV^Dn<*)xFC_R5 z!rW~}s@-re--bcBS1clpFOUUuK<+e<{TP)x5oC@*(#A@x&z&j-322!^HBG?kBSA$t z0VRA*B&Z9g%6ynidyq8}R0Pn~;ZW*gRR&NV25KgPBQG+?7IH_IlFdsQNcNhApz?jR z^i3jvKA!m;k_u(}3^Zjnk_Zt$2jo1>=FZS0Me5cL1z+o_FV)O4f&WaXka}N{wcPTKHNme4|#a(Fkias`VOSiSkXL~YP zo@9nQp5?`)y0Cj~h+TuI6c0WxPzA+!Nho17V1+?MK@eFOOcezX#z3+-fGi0lO_p~Y z@*TdNnBdMRaKCr=KHQbZLneZpnpu8$Hg4PqsVXChVHi(OPvx3 z9Xiy~(o)_4HW;>T{P^+8xa)(gtgWq$i;IK2kk3m|6g)osQ_l1GPi-Sg8Y2btu-R|D z^_I1@HOFxTLBI>qYPFLmPlj!f;jWlvl$R2yO4pc}nCR^6 ztkG!X&ETcM>xzkqsjjY8F66U+{9HUZJ_FP}XKuk#`*$5C@ZiL$803fnvI2nmI`(SmhRD*|D>!Pl6)m6J_ z%SVc(Bc*J4O@X>bKVFJZ<|kBo(sh2SYHzm6i-FLu^H*1StBlS>m9NkcY=XNNQx(uV zbtt>L4={T6stgb-`~{;AC*^f>v)SJzBCL!V*!&MF8G}O73QJ{P*XnqDe^|9*M zXH?x{(6E?uvDQ1h7I& ztyr;YTrj$jul&d^lVg6cnT!^YzzXm-m7IRkD&QAp7a3 zpWuRge0Zhivp3}(;mX+9ShfnpQXPbkz4X#f_rPm{VK;BP-=S)(hYY+PL6ss138vKUD(B5Tnv8v2e>;6`{i-; zr`gnZkI@$*z{xNQ%4Z1Q&KPhsN{aDvW)yXP40|$?J7PfFgQbu%7bg# zIaH|h;&N@N%pp{vy$X^Y))Gfe!7z)|{&eObq|uMOIG(sX8C;l%c1D2<6R3+5=@YRC z#Cnr2I2wX{8&6(&3|xB*`*s|0A{@$gtlE*PbnzZd9EUSKvu~83bO918ZMp5<9Ng!SmMU;l)@T<}Zpzc|s{XM>8Dc}4lRlOKU0S4X&@`jmY6gXqc-x;l(5iR8QP z{B&1>`&|X@=Jf?r?EnA}07*naRGft+I5=2-hUEtgswaPce-{@Q`0&r2J6D$B^7xy) z0etob4jdS4DxxSVc!dvhQ&UrySyIgf3l_-RL-Z>-Ma`d2*bD_mN_)b>!k~zQ{eisR z!^0yyJUlcsG$A2D21-Li1N>G-25dQ0yKn<2Q6Z9GGvxJ9y)IwATsarq5o$xYQbq=Z z2z+0GdqqY@LRl>{MHcdvm6eYIhtf|d773^>6_!CR!$!hmLZvD9O!8qN(ct@pB8_F) zYc8T;^WJ#l4Y}Fy#+skb+!UkqL+0Xl@#4kudU$sER>NNezHiCRP_7HMFgZCH-UMY1 zfoztMHFZ~a22}a>$^)42D|m0=k>NXm!C-)0snV$f(~E-ANZFMWDtdFK!xsp+7yKRl z{QThmD5WcfZ!PA(KKz8Zhrf&bQ^M21A2B2(1pXg@Z+mjf6#?;2yWZcy-Nbi9sVzCu z8VK|bQ;t2z_fu)axg_TNO5)oE;N~3AH53132J-z({Q4vk!u>=9b|MPthy-onpeYoz zg@KMJ^mq(UbF0 z;6YS6FjXV9HIBWi94zx~gd#hk%tc+}t%h)~_tVsPaofX;3>4RL=)h zFA=3L5M}e|(&y3I7qQL-s-}MsRWp&Ysi1r+Ryvs|7z2#)pn57&HxpFNAyyY(Bt@lsrddW#DN(gX$HuBoX(3Ew+#oY zEx=kexy?$u-h$a^#c!|@)?2Zg`_a2?nFAyEgZBJB8*ZNsv)_(A&x4 z7Y_-Z>qq4WQaJ&1mM@p(1*>F@$?+iJSD9W!zP~!tUANzwNwDS9M`}{-87Y0XCn+c1 z%lBhtxEJ}-MZRp24_D~T!fN!POZ;gl;UV9PBlxbnHzC~bK)B!g4ep9~ho6Cgfr`BH z_V$)BWFE?+wY61Np#P7(vyPAB$o73T4wFV?Mlmxpni*qejO`>2?oICA>}Ips4V&3X z?AVqpOCxC*#0-`!gN!l64rjC34eZ@m@6?pt+a4wR?tAyIci;A>KBJzV?&|7p^|yX? z>eMMBitTp$fXE07uN^-ZAY=|InA~0hci~(>ZPI9iUuVpiA+E{bE(sPqSfF|kTfN}a z1i^5kt5>g*?c{$6u6pj=xlnPE17CjmW#NGii26%G0hrC^frphbtdLd_xrgxie++jq z-+RsIya_X%Or3he%zR>ye|}v4`AgIno6z^m>HACgAKar)znnvVItfRN!QsFrBCN^_ znBF|9FCSefL^mhPuNF$qr_(*js6UUrGedb}y7GJ>+nLFCW+>VcwY8xd`xuoYK-&=M z)1K(x660kL;GKc!Qoi)#nKbT$osFl^yFCX$FTF8^?aQRvV?enx58ytZ`)sD%~rRk$+|LhZAm@=cT*7Cn>VC0M+tCm&QLd`sOyr{wQ;JtSWQE`t|md* z9iwcG<=#)FewBmX+Q6OsJ$>qR2AkS<;9%~=ClcUJ#;KAp1B2o2Jc`j@vlmAhD}Bdr zWf5N#jMhv-Cx0h%y$1=y-L+rxK)L@DxW7-GKcK4HB&nW>8rQS!Pja14NUr{y?D9*f z|KI8JFY)JI;<}zkJ-mO#I(RuRU%o6xFnN39csR9+aVJ%l`Iwufe5_qZ@&5Fz@vSSq@5wi*k#L>!BJwT3t0B=-!Jam zBbTso<3>0afJp%H&n|+RhHL?gBtwvy;@d@TAn+YMG;6@+dvq)lcYb2BhZSHnsSHMr z97!?(q>6KcJ%x&7K-8HDpcEP_AeP0gB63En)k=1Nn+DAm@#7n`xQKW zq0G=|^SEk~AwZm*j+oknGm_%LvClpC++bHl*a1#Ntbfqp6E^MV)p1^ zhR=wI2vU2&=YPp81046@J4poY7ftR@3%X_EzdR}bd?)+O6X?(DslTpZeq73Zzl8c` zArAlY*$nO$@OLuv(Nym81RTiaY&P4IL-!R>*Cw(zCdm79W#>|u-Zc7hq5Seh)%iks zOBw?t?MT+P#CX>RdRfP49D%y}C_H6HZK$F)guav~yEUD;I~U!Wfv!wqZ_TFf%;6!o zzD%Yy3WtvQYOeh2g#dTS-Kkt(3hIoOw1;b2LiBB6{*8fp>sVD&losT9M~VtQTVhph zv8t|kbz79aHc;9gtG$#xtRqp^6s@X@P}WCkdvm;ca#U@pd{4G_bG%o@Xv!SS^yK=s zWy)I8Weur{x+JA5UR4vTu8;R>N%n0>^y-LJ1KcZ;*w@m~JFDmqU!zaHK^fk81n!XV zlzY2=5$@IlsP+I;yO%ZZMTP@D&o5KFv`kgk z$57v1P2DQFp@6Pk!kpc%1ZrP?k-7LBI`psQo$A`ZQ{LhH88Y#|&tC zhH8F+>3o?#`#ZkpckH=WrM<7QXJ2ExUZvZAi(38zwY-FyU!a-N2kV96#?qXAoZC*-Vh=w50O=bt3aMt#>)WWkg5^^ z)9xq&>2gsC50K4tL_aq(;F~_Swhnk1lnZHk-k>0E8T^8Qah z+`s=1xc?-Yt%JZNFE5W!Lof{!j0zMZt!7w2tBNTm_5evqNg?}y;uh@1q}L84o1dQ_ zIoDw4KSA}AuL9JD4I4&y@w?ysPTYzIIZ0mi(9lp1>V zws=G)5r=8~*+uLpUS3{K%+Ro0ym-;WM@6U<$)%BE2ptl_eG|?lc%6fK6<>>(l7d1P zwm>nU<|C+u?GA@STv{RX)YMdxxzH$qr|`-vuaFFhn#QmKg5g`8ddUj&~sXU-(g8pMQf^MzXkg%qBG;Ee-0*laeTZTDY= zJ4qgJKW{;o%v8UHCg%7%M(GzvC7=HeeY+lq3H$SM_S+@&cZ<$C&}XwHwE0Y^Z=Rw#m2F98+mb*^`!t67 zTF2;2qgA#*bxWMSAwpXh%3aD;-JHhWnT4)R1-Ns!W~1A)xhuu=`AiPrekE7>)m+6_ z^APCw+Y{NYIMg1&cSLAGv$ux&)s55I$7|Z+y!*1eJ5m)O-kYKo0Qc?$O=F1GK887) z=zSq`NOO#`E>d0>p#r$~Dsy0^Jl;GPK zt80zMaJMG%yOQah%g_hELm$3|JmCJo?7s7tmHR5#`KE1b-B#AT7CAObtQ%P?$o!48@o{8-hIT%OAl1JpX?y`eYW_F65UC1Aw!yKQ(mMme-%h{$S5^D~^Adb|UBh>bIwIg0` zi&L0maX`oFB+i(^RHtx|+zMS%n<<4)A-U4|`ZPsdx(pC+PnOz~a9m|qk`Cw$e77Y@ zoau`4FzL~u{1IQ-F@N3=Ag>5!9SI5`yFFP#;0~vACMcZoyel3)RgO3{B-jGt9r#|G z!qw!d0Pa6wxc{dZ?qY-i+zA~rGc$$8vVfI6d-e#rUJNE-H-hpbM~)EE!EOSJfB*a6 zlWJr5@ZsVPG~sZf_(=DrNAO$0q2-T%{NsQ~z=8@UhdlGlGalY`!m-z`T@&PHXAtPc08`MAH#m_GD=FKCyfz}qv;NjxAefxHD38dEaZ~+u{BmOqTvMfZQ5${Ys z1?4U->TiGhTXHu9gP2D<20q~_kjLlk?JeX?lsjw`4g{EzE(BN#3JSy*D+FaE)d1Ar zq^}!psc;q#Z%zTw!hukylAAwa!UW+E;uQ+l1>hE%boWJL0$?5P33;0Tx2}+83es5{ zx?*H5nVAb#bkjtAS|+`>L;C49^zCZqFRPgEm(xEiroLZ5|9LL+)hz0>8PrF`2nT8} zl=f#Sx{{==No;2(d$s_?JGxZFUYnq}TA)6g%r`}$mPAQ!j(2;ycTJ?MHeAt_?AM(< zq&{3{9;K=rrgjB+)rV^uqxs$p=EfBE_6!!(`n8FYk7lCVGpXy7_zRiJ#xV5J1olr0 z_%G(rU(RJdo>R4;UH||P07*naRHSJRW7;C*9Z}k*5Z}7-{?0L4+cTE z-_g|_WNY@bc);o*w&pN)qSuA6dT`#(W(!|uf9)r9z>0AOYDnfrWj>eoTPoV zu6r}xx(>CiLd`3w_Vv=%jf&b;oMR>9Sj}2jP^J}J^$OOof~r_URc~S}+c@hJtYsTx z+s@dYrW{Wr$J4BB8*kjmRjP?*aan7=ZHEw3BHnL@F=;O=K>9shRjBAa& zZob@-i%f~gmB81=ODw4p6DaN!g(ZnMB`~%W+#_m9Q5s`uO9Jai(GCV$^t+r4&t7r1aQG=}~{}VIRe@VN_)(0+9|0Gd)3LiBp?m)Rt(i zHCk_tR#;<|kZf@(sAJ&pnj{rGyZUsMBTF^#_aE>7^p8PI;s!H$NuZfbULK&lm@H(S z^t_36y+@;4kY?ziw}Wsvpoiov94okj2*(QkFycI62cq18K7b*iK7bWa-{g?=^mGt| zlO|095&}iFF?i!ft*SIrh-? zhZWU3)i1A-KerH>_vmc9Dc3&69c_joaCZxT4EKLn+r@A{O0^$FO*@r_Srov%B3|m6 z&G&4SbZ+7rSE8C_$hDlZub`_J;V|pQ6*Q#kWt?Ftb7m1>d zch-?6u_jBLDN47CI%7}8mUImFc*c^%;l9&!DF}9w0P7?@guB9(q{6a29#5g?O3;;u zDBl|@KjNo(&tFk8hOQJ5m-rf`KNQe%mdo1+w#XeB|sBMw{MYvI|Y zDeaj`0`~`j!|)%^0YL)X1x^X?CvlxdkB-Fg;Eup7!5Ko7m;(4!0Cj?mg53Z0Y_S|Pr^z5@4!{gK-dC@Cqava-@+ zER`6q;%kR{MGh}4EF2I?R1d2TITz`)^cYn{_JpPbY!|vWJ$jzSH%hoDasI$NatDZG zrSL4o)#relp^SSG4kV!w;EZF&j1e}HRuQ@9;sTTQ4Y@|h5UNtL8}aQC&IP+ceKvji z^zq}z!-WX75xL1ihbmObg2hj8mmGN5KDhtTQ&z|pYG1O?OE10T@mvN5Ex!o&a~5>f z#Ny$pChqP@=H5Hh-DlCCS0Nz#cgrY{?LRD}1h{`P1ARPMdM%H+kiniyQ+6h(8)GHS zNnA&k1eE*vLK^6NwODy6SJjm!1-REoa}7z#hIn0ll-?DBXV(M1H%II30dmt&opq$f z6)0&<;QEVY{Sz2>4(z3g=*m=tC(O%Mw8Wr~CevRn;69&A-<`!=%8|MPP)nq;JKh)I zZXfAo8LnuE)c0i%?MP8KMr&Q6%ElN~N3vH-oZd2uYm3)i$non;R@a8fYs2ubwc$#D zdv~U+GhNb=rfG`xE+0-iBNg2_`tD3!d#buANl~AmYDo05gvt$LcvpmPO^m)dQrQwG zYfM&DrZPtsP#^pUZ*aq%m}P+MkOa3G<6eNfyy-C84AT3Myyl?Bw$IJwBkG#Nyz>Zs z@^$I@LiUZV$h=qK+AjgPQi{R+yl6j_!cBXE2XDtio-EvC*ap(`F^PcJ~H7NC+v7~kbgVt^ zg^V*D0kWM*5j0&k0FooN!_yCqR-OyoetW4LF?2-$1X9>P6MQIoC!xZ9KD818Pq zJ7N{)aNWrf+QZ(e_lKxUMk}g9XqAR4Y(ZKxEXlZp-LVEK`p7S zNUsJITY$T`{UMY@sLzD^@Y-vyku9WbWY`z!^CZ@7@qdU%;fWm&P8t~*NlpRV`}+Eb zcf8OP6CMqm9qLr#0uOfs=r8;u36IHR6qWeS!@ngl_x-ove%^v-Tlb*GG6cg5{22$=OWR z*-S-Ox~wxr2XL<#K{dtcdb0IhY1+M|tU63hPms z?R{#`^YV3h==kqt#yxD!A&Fz(gFrN7^b>(QuwDov20#a_<6hQ-RQ+M5=@8}kwWPY3 zD;oR~l4P?hOUr3!^#FWotO6O9i=Ax4eQOQ#3%u1$w z4P#ix88)znjf`OY7L(qsVlnhY7Sv*X^>G(~;7 z3iP!rS>Z^OITMwT90>|%tlAKu`@lzcRIfWdMr#UJIbu}xN&32Ytt&=ljRf?|%;E5< zu!iA8;0|QRaF0>h;#64sLvBe@ONRXa2=0Sz?n3xL!B_qJ@4pv3ZN#`2w6K6V;4%U3 z-~c8<{{KX|qlZIR#A+J05F9i%Hj1_IeUW#aaA_V^1;NXn6no#keRJo|4GIbp%YPs~ z8Pe%dPQl_qPMVgMM)nt*Wd;+6R2u}KgH1ic^4xRJk()p);2vYaNEw7?iddM#%^?gW zCbgfv_Vee@3$>l_;C}!6-;=>y;y!1+UQhhW1&oSso!~y3pPx@M6rYqxby7l=N(I$9 z{5oUCj5ptWlXymgU?;y$o;+E&pMtt4Ig97d6RuHcS^l@+-e<;UnJZ@gR+;>(xB0K1 zL|?B$1Isud`;SZLA0I>CFF@bA;r`hy`rb?$_ohx@ujH|P8Pc9qRcD&AEtPLfL2c=% zGYj?PF@1&7bNO-rDE!ocXaAAb#;9wfeH>xlmhnn!pd1hkM6M4UWgX#NHC$pEOLb?d z`U(_11=6luJZsXW30z+RhI@Mwx;d5lbRPZ5T;}6h@~&jg7C<*et9sIg)`jZLqg1wW z>ed7e5WF=(RTB=)2whvUrYl`v8>y-ui_T{Hb!F%pVij1?NBKH}l-2;YH(P^4&0vGO zwk6J|aun5;tnbP8?nu&fBx_rf)OB%+#ssgr81L$FO5-?PYr?SRXkBd--w?yO64jI8@~ z*8Pn2;hfrTpg#)tLk}iwsy&LwyTU%MeN@9iwtX*e+s0R=u~j1(XkIv?>H1{UHCNug zO478Fb1tQ-K(hnc=OAEu*?g{S4tHucbz&AeIgcuNj4oM1pI*+KS;?JV&759Momown ztzt@-^CuT`kV=*@r&rPy>uBR<7Mtduq>N8uxL0kbfb~H3@-3)rGlKQzZSvMNvc`FI zT^eJLr(FpWS3EYM)Tb&Pi4t=>>qx~zlOVa$rSD9VW2QfZ zyFFHYdbIkem-@sIy(PlCK3P|rsB*<=Y+-m(r|Mv3Rgl6MqB4i!Es!wWBUR=ol_gqD z#JeL-3E~}}Jze&{g*)+cM{bwCzdsr#8(PZna*DpBE%aI+6sc3jZl?BdxDgT1P&W~55>zbD|a(}xthLe z;_sZ0ee)aU+t3M}uK)lL07*naR1MhLejmf#-Icls{dFPwW*+69JP*VD)-)Q_^p!&T zTsqU8BEg{+Gq{#?)SQf3Q&D>s)s@QvqdPOC9jS`06b<0DF;49W*V#k$#_@{EF;Z)w z(iQ5}6h7K9-q$o*Q9T-Uq-nZxl-;??)^tfvj`Dngv?qr>mo4u|#&EwkhyHXHe`}ho zC4sgFGL2F4v+4e>5Up{P+!m+?xedCzF;3|SQ8dJRwWg}Ovh+34D(nN3?c1KJhM!zv zn#O22L~RS?da~5L**a)&G(;;~klLQ5p?`DRZ$>H z8OF@bl5Jh!GbJ4DeNJlIuXG-yt^1LE|3kPRK<;qx?kMmFaZF$mDzfGI~=Fk~wEC4(8srl5bqa+muCHKwRw-5xJ@ zB&)0ma(jXlXilWM+do}~{TFdky5besg)vd%OjJ7(G*zM6<3klkbc&J@I$N~9E=lX2 z%2i%I7N;}gq>w5CWmO?cKs=^AsQ3sa;X5|Y#6b0+0KVIjFx>C|^y4p0*5Ltn!5vK) zI77aIm?b>jzJ2?^LtGM(CHPS!CMJ@18-%dH7a)jWa~Egs}xZEbCUKTxJJnM^3afT;No z7eZo~K!IapV?7GvAwNV0m(^jtl&}e)1xuYgyrd{pC%Ve zyk$I23d_26>x8z2a4d0!BsUPCdHM2XVSjOb6CNH;4uo3=tuFEtafO6MQ0}njym|A; z6#?;us&U}a8eQBDc<;UU$VS+ov;zpZ#m5Sn!{Z><6;SSifevmp$t@`<$>Ut4=NT?a zu(Nr<-QymTR zPV2RYc-tZF$g9KWWeiOnr%xP1XNSmVC85$cRn}d|;dW^!aChuOVz@gFPylyqXFv47 zg~q-c)$E}G?oGdyG_3b84dqKlGN;Bd&PYXjirkiknjS-4Yo+ZQWUkemWd&EYhyl2t znubnJLB}VfdNodRzjCH*Vn|nIGq>A7{%qGG{h073-Ob70A2{HLc^D3pqzJazOhmNn4wU=d%XL z0=0|Sq~ z4jynPW6H(C7VrV<5fKptJzA|+9AH2!z={1DcAGP2jv$9&JAnmk@9*#Th?)Y6Fb)X0 zjX7eRd35dxKkeGJOBk|v`0!zY9b|=^nhbz~9fa68uw7^(y!`UZ9u6KPb3i{iYQu&N z;`<|HE0)HvWz?uqr0R-{j2zqr3Ka}->;d=!`#dZy9(dZhb0>P(KYZ!ZCBZ*OID{BX zh>c6QWcU?oKEW6=b?VfCN5>FAVc-#v(Zx{Iii!%M002sIdj)Tq0rya3_YU%3Z9(5JN8hiN{An2ivVXT2{pB(A=lSTXx#)}86oES^_m3vi z*C%k73vlFgtlZNjojH7WmZ~|GZAwFJxomg7tTml)jAQE~*_JpdaI+)Dzb?kt7^tio zr>-31eR`-@)kp>;d~Jl@5+G?#@@h&_faq>WP&CK8dplDx+n45MWL_vR#@rc_y5hQ=N#w}!Kw+4`mwWlOT&8LF;} z@NxI4$_U)+BBh|>JCgiNV=>&@lXTq~{ee&<8YSughOt!{L|)eD`d1=L-7# z7FFjag>@OKT!hLWLuGTQvN=r2H2UN;>eMXe%tG0jrSj8@c}QhTxHC)nvZYMvBId+A z?&wVJz+~pY6#CFKbYKQLJO|79vQ=E=TCQRpeP#{9X%(v6z@Ax)?Ky^Z65|@ix(d10 zpw7YB1ahj@PeWe_s@%7#3)!lRN=K&ph*thvI{51snRa&ps>Q7?eB7 zP%fA6-@kw0Q9TaQm>dO^A>m~PvqLcN5X`;(_S*t?Kpl%SwApMztV;CITSoX*+-MM5 z8$zdUOiYZ}>~QhoMPddK`X|MA>D5K}3g;x{!l2~j!8f6@H;^GUr$3Q5$x(B(UB z+&GdaR9y!S91scvmjDMM(IUXzqtzu|+;L-U%moW~-bCRrVeWV`m&{C`8QnHZzC5n} z>UaD%TinWh83N`0gL^u?zbwRX{~DD093U)pcN)4j8C{?3j@4cuJ)bS@&Xjay;eZ~U zIc!%h*Pg>PW>8HTd|RdpKxqx-YQvSyvAXs|pVoNax^TTMz`J^+-Z0F&e3+zSn94ZX z%RElilA!NQ*VM)!z;s)R9O{Gf>DnuqvYYwT%>wk<4C=F){Pkj0M*;%Aw+6h?v?c4?k~M89N~mV+;kpV?k)sv%AWdVewj)kn zA4=I%dE;8?$={;#*Ks^Z6P{p?vF^evrX6(UTc~m;V|@oT?n16z{Fy!eD`%qg04_TS zB?a;E0Vpj5?f&&J`w^=CAgaS6opJ6(B)RrIn7rxXi6S_G{!x2%^s#} z7gPVdzN$c7I*L6#oT>@7jN9A+jlRYyJRV;7^ z>|IJ%ub`_|QPr#I>a~n<6Jy%Unm~_l;tcC)!&=I)3YD)wr&plTWmvhFET_v>QGoT* z74Q{rfzLB5DZ_fEasvbVTh=l)>-hE}i7S}`loJ5G zHdWM;>B>6ewd|^B6V2aRHg{sd4$SOir)zLabgz`*;%oyok5~Ub$ z8)O8ygBlYQ8G)2AxD=Yk1CQz^qBr3!TD^L;&^m?{cp>xi^PyHC-Jaxa2UwJql?{k` z4&m_B)KnqbltQ6^a{)d;>IyLq0fJ=RgQ0LBVF3tFP>adQ$(5Crq-?-D5@3Mf7*s8k zJU2HN2n*mA!dDUC3K{nF^a$YziDE5qFHj_?vB)8?gU9%t!HZDMKw*TTOmKlJl?sXh zvQ(&h1m{08KzHEL`9=hSlZz7UTF4!{ja(7jD3TT21X5d&AUuN2ohWzoaD)MJcV@z) z$c-Rpv8jVH>$_ClOgCHd#_lJ}Lo`|@PdGpOT z1t%FOFw{nH2$TUTD#3?}ln{0c3=9m(PZjW_ZH^53Ee8;@4PL!x1IiaHTq!%9=P<~at7f3*T?XTOJC1NU(P|F zx&0vT&Y-SixKr0BvR4ZD3%PuECfA z?-nt4i_sU;r1vJvFXu=*6H!+Zx|pN9kf(tbLvy06AyL|yLA9nxYND8$7_KgnaV4Vm z9KA7I0%vbcQ#Gf_8|l`o@C|Ly_YL8k-R?R!}FCl7o-`3D@d-LXe$ z-lKVbsWdx~Ne`q_MtQ}JV8xGKQizL#eFO>3%RSCq-WQ0&8u+)VB1Oxk6l`Vs+Ule z%UJU=-ng7Mt>BC+naY)@Y7J#t&zd(&Ok2o+Cf@P{k3Y9z!wV1}vwj^{zJ|k2HP~qq zyH1v`r9NDWPAowsOWn?t8=0z&taT$_yHVO)$XVl&D_&-gkvn4HQ|gS>Swpo|A)wr` z1G_u$i^7>80TbP~s{jBH07*naRJgkmld&8uMefdK^ z+A4sK5U8ucf7>B!7Vpz!xF& z-rioJpG~MI1pi3EA}_QC$Rz`V$dE{35wtwH3J{e)+f64d9vzIZ^PD+z#1|!a*+b!> zH9(@Kz%{~kkunfV*MO)B6wU~33y(0l1kF(QKvQGXs8M92`0TuwJC}O6hz}&19e8cG+lj%4bh(S? zI){1}3MmAG6F;D_W5<%N3&@tld=`!p_sk0m4jpsBOkXguIM{#{U9`Gm518rC%GG!F zNUlANZZ1V%KSuqyl>1=?3(6hH{+EUHHw&q+=AzH%JRtks>CE-X%+-n1|qy z>&am|vN>S-*=%KZmZCjF(UdA_NRnaq_C$4Kg4Qxl>IhPTW^au0tB)M&3?5<|Kg2q2 zxN($snV-7ETT$xA)JDk8rYu6-;vi4Ru3vDqWX^+OyP_aH=7ZZ%LIxYDkh>!(@#K zLu;bdj!3>IPuH2|T_2@4jaD>8`_)7!YonyjDDG^IAE3V_QPZ92)t;(qO48Is`<9Q? zo%E8K0(_k@J}q&Ic0gDPb7mo`{w-&CgEqd)VYu(a1{VCe6SLm%4s+^t&a{8@yHAao z8i}^d)-9W?i66tnkCUZ@aA`s8wt2{QK-F-7x9`MoA3UMzP(_bRq&1*%y=JJ)c|)e_q(&bR^@Rv_CNnQg7a zx>f>$y>c}LiW`qp-6}C+Pe%VwLZn!wgci>Ab!OrwtO9ZdNotFhIaczQkHE{ z4KNk!IZ*NCtC3+ns@lvzvTR}<8@YxFd{qo`#>t)0N?U})5v#C8sSN=#V~D~LgAFyf z<1}98N|3k%2FPFsoMKcM?g=_`xc=k_?LjZiks(W8kbB_TG7*GYmJ+W9U z0}tIp1=GLSdqnKRL#EHZ?~Yg?++Or>wvE2NKG=seaiFwfPj)iI4E85JlyAND7EoTG z@Q4v3gm6HlY7u1b+O=!RSxEe^!If5dc{%8A64II6rJ+NI!c!CcM1_A0p&0@7G1O1Q zfKDCbgp)b1Oj)lC5{qs@X$N$0HSdJs^elwT-aWVh>a^}y=(6;AB(`diSVZLR)x>MeaJ%~S_tGQaFxmK+0j7I&b^qm6sUIF^F z0DV@#+|7|(PvtJA(bsdiyHjMhrm|Ox(4|6jxrn|}%v~zRBd7Xuc>w+S0=_eg>dBSY z#$fNAwlu0Om1|6rI3lFYNj`O;7NaCx+1j>bU1N+-^(YCHttG*`0az2sc4heh+?x}W zJ=uD=ik1{zecX_Wk>00#bf<>t9kIi@Gkn|Pq@YsEXCvc_l8Vr|U1l z9TYwGlR1Rp4l2HC7j1isuX~xUSu8IJV@rq0PYtEb5o%Wwb9uQG;NG$V)h$D|!VIB6~Loun8QBwMr$`0j|+R|M+c^Yc35?RR{H z-?8D|hrDHbRp_7>V4XQJLV9Mr#t`CH73Ob_9_maSS)VqpE_JLqcF37vuS26{N5?54 zoeI?%qV&~K*cGxNMct7*tR}~M;6B#uKMnkiQ1R~rKZ)nc5IfHerkGg9lA{E}0ukC| z-2)9Cm>{PR90UhMgKGo>v3P&t4CmqQCiW2jNi>4rqoY!s&*1P|9z6;kIeYB$ON;mp zc>FYY^pj8+@z5l(Tjc#m-SdU@!9M$hXdX8N;7&;D5zNx#DultG!hu2z&Vd0>>%UL{ z!8J(OO(+$qD#V!#o`>(JM*6HsiT-tw*sxwXLRmgk z32GhE=^+}!Ft6$n{>G6*DuyU+Ry5&FCc-OFKa zrqlN($nQ*$+?v4LC`MO{(Tz#mjfv7rxy+Rb==vn?+C=W^Wd6o9S${Eib&|3-n?0L@ zK-Bl-aBV4UeJlq>s*jgDqnNgIWlN%}CEmAcBvT)$?MU%!idWgf+4giV(De2a9p3yF+yzDw~T=&qvVCD91xpnbO77$wlboQUt0TWVm4?Q?Y?Qy$)!OO4p*Y z^{`Hru0p3)amSZ3?=PZ{FGldSY7@eNXrAP3&vN!>XvfpE{TXC&C+9Ov?Xz6#N{ulS z*`m3+NUbd#yRTFR%g&6ISR*ubae9DzZLGXD7Q?+Z&OL%OT20_?i&2>(^v8y&_o-C} zbiRl5$|HLDiJ|H` zUGlTb{YPiA7NjewZ^U~FCZ@kXI{m4KN4(hgA9nMIzvz*nxEKQu`$b9I0-oo`j2S~t zCm>jS-v$O5UOdV(xP;Z(m(YJ%N`1Q+eK`+L zegtIyd@lRROb#?V_LG@PU7aMqSjhDPI&JeVH@v@#|O@F$k zBa-R~qwZuYzM3TedJ+R<|Du?>mybTqMW0TT-kreSET*p)p({nywPOB8k+eUXy*`n> zIfc79g}E^q-I>9DG?~6LQ+8uA4@JE(1xF$~m&vvzQQaAGY?_Zn4T)?+oTMpES3R0; zh|+YV`m`o#L9@4|=>bFav3zf?`fRqMBU9Uu;8#7)_kADzKE3vUzp^4g-j(Xxl&(5c zfE-(;rN2SOH(BcrhQQtQE;8-lE8pbIZ-oDPq2Kchq*Z&BcxKf7zRxd_=Y&erg80M$ zlo!dovEAQ(P||#aaqY#_2D01sQP#bPz@6|N;9l$YnQxQso%hjCatG_^A%_E@$)Qtb%W7{l<5st!=uqx3a#KDDu0SCqUa29w?lak5X|^=k=kl?u3u3Y`CUkwCc<#))FQG8QzelBHrbAp;0VG0C~X%%TKYUBXkhPr+BbK+z1c~Hu$|2hTW4L#90ki z;^I!-fk(M4E`|rq|49>M;88(3xDpcAY92og_V5#IL>`sgz@rtIxY`hm^}_9fuj0tP zgA4QbhcP=nau)hF1|Iz%5Ska_VMM|``O9Da;*tM=`=NLQRvTRZ4L(Y!@PwNwHct%< zY6o~cQ}In01a~W*k>jeB!f-dD8&&-0AIR_h5q-Uy{(LU_b|&@XeCeO&vtK-hzFEwC zyMXy>KK1219Ior$O#03YhLHWn6m)fx^iq)&q;XdU-<>4~6n1B+T2iG=sj`+7Ra>$i zk3Nmm)T;P2+4yZPu=9=e%NeN@EWDB}C`=}URk)qLuD0exd4 ze`gB+@ih9@6l^=XJrzNLA$>BJ!V|qtm4UiHmqlI3m-S>z+R~V&6s7?OHB;FFxu#e( zln|05LJDxl9_}%0Z?1@7mK6X15CBO;K~$7KHXc>wV@e)cT>Sb>R+G>@8#6jVx}mlSKHALy7HU;8y~7(D<(1l=W@K^|Hdbjjvz)Eoydq9KuQ&z5u)aGgcy>_nz_lH}|JNf$H| z3+0`K%8nvsbNKbyt3r|_NWs@@#0vsv1<6nSkt-<+&%OY&`u@~sKhIRn)s3S)B;)1Ip8Nbzrs z9&Q@vciLZ9Hbf76H;&evf@Zi@QSPTPj+C{AtNP--+5`FiMD$s)^vlUC!2R=L=8Fl^ zJGs=|0(3hcUClvPbLp#vk}C!L&IH9a*3^HPz#FNBlH9ytKRhybtJ^iV+N`dt)B9ew6+iRsInh*|EF&KE}L9Qu(g@ z_^a$Io24(WMIZdTm+39l>EB6zHBXxpfRY2aq_IrmIFucNUVlpKIK+W4$CjDB67yaJ z$+8D054hXi<5%lI+P{m8e?ayZBxb;L3_3MjT0TN?dL)9%rXxbt8qM1xDSITcB_ewv zs$W1guVx$8agMdDaSiTPb;pKe3`-eopIL;%ij^;R2Z>yXJ4ny0A!Mh3^{1DklZ)~A z)nf~o6N_nJedPwKdNYDl@dQ=1l`?I?u?IlNo42y2&9r$vZFwB^Z1Qp?Q}!S{rtI_> zzHGGI7T^nTw?%qc!xXkKnJY?(yIZ4_*rPE@1#q`Usf}U2?+?-JR>}_RR40acRru;G zqx`I6bj~1UOT4l(lkb4m;RMt>nL9U;?I~uv3u#Da3%Slhwyl6}E@W$Sv?oG!2S)q9 z?W=p!3!Mt*omtA3Vya=X=5IfK|6q2#`)&pQ=zI9HFREBh4yL~c3V+Fl;Gy6Kx5@`A z*}-jp@gnxG@F<(WXpck0We`sBv*LO{B)td!B;H3bWQoh*VHX~pt;f2!Y4WpD*CYP0 z$2F2;@4I`d3Eag)Tg8hQ$NxlJ3x)anqcMBMpW^%DVb2+C#1rb^!4-qJ3_?jfdNO`# zyGL#JGu|@&)!bz(cgcdz8`1Sj?#tuqZ(fysx*mPMSn~aR$u~2&&!>jdoYdQy5zdY%|d>R)EWPN$+t_*c^q6Dzso2Bo`)YnC$`WW1A*_JZ2 zK28g-v@J+w5Ad>va?mgb?zg6R*Trg$;}vH{s>(;|Dg*oshJ=J7YO-3e9-xN8OU&50bq{q`hu zcM7^U6@5A#eKHOE<9{|&_VE<<22=nAp!XTr2amm)h^`dLF6K$jW%4~~d`Al363;fr zF|7&QxeRGX8q`myGXp`p1gfsu7yOOgGG`iRn=i4vptk;o zx4em5dr;jz&as2Hy)CirkU8Gcm%qjsc4^*tPCYFH#RsslL9*yzCTff%C5%rTix%Zd zN_Y5L54*#~?2=peFlM)Yx9sIH-`xXKZM$T6;*QY7OmneW48-nKSE9;V-^{9FyGC$6k zw({m}obd^!`U$FXE2`WCiLKng)@)(h*UEZk$n7D>G)i7MTwgWT#}ueHhk9AUd@R9u zpsy`dWeb<%fL{?hTa3~a3alSmKHg`qUV6}5dE7@^;p=4`KEyWG+ZCd2h*jX$UY_b) zk*v1}Xf6SucNef-`Ak*3UKGpwpi1+dFz6VFD-tk7IQTn*0+k3OQo-Aco zhPEj|iibz0YtLo-G{iEl2);gAgNKPG>g%J`HQ`!Uh|V0OGzUS0U0EBgtBdirh3Sj| z+UoIo!#FQvus5t!4%e0FWR<>>)=*`4G=C?X`FtY(^-S)|ndsB0=X?6piD(v>XsN)B^9pS@Ac+$^SVO++70e!%y;Qz%#mvfrG5uIHnV3elZO+`Z|N zk7r2k%wTU!mRu?3E*J8b3#AwGW$tTX&*ktJawPECl}YvHQRnlSvl)_xc#Sbwd(>aO zQ?K9c<+smIv)c!ij$+I)lyL@A{StD$DYLx6THd1V?;__;RCka!;psb2^Nz4@ZGe7w(LgEgEXjh+aBy9 zS$mLj?xh`j8QVU}v;&!bi>lW$C55PDEL}EMacUUAUEvDT)kUc6fr{#pGSe`nb%fG3 zMrH~{jWgKJ&9dev8Q0^;v5m1mPFvT}rj@9287g0f&Md>xean~AIKb~pRI(B~##F!# zoA~Orv~e8+=r3QzR;=bK*WtlRgzv_!$h3`uRJ9Em9!G|asA2=2*~7k(Zdt{jpQCI~ zk=BH$%ZJJgW7IX#{?>3`bC7q{IIU^C7DpC}(AdJ&pyka`3RAeo8ZqSLDDOR9vO_+a z6MkM*L;X!7wf6CND#YeQd3%PcJ6G9LAnhsS0PfudJR~>S*^XScBL_r1-<2b4%}~}Q zdsl?$N`rilkN4i;L+={GRHtidCyp8z_-^3-kD#nD+;Pw9zn1?w%VUo{M%)CIO69N!@3x@H4((ScWa`e2HM48ay&0xqIXMz zz9|OKqp=408OLdi<5kuWwKG!hit=_u=6r&pj=%WJeawgTEN?%FmuB1sWrZW8*^!0om3v+k11l7R3 zNfe|zP#;X7Zck)CDx%=Pn?=;!sobZtB%jRW?#zH%$~_3nJq_%Q$#}BX%M%&6y30lE z=Ms4OAs4~J^s)#-M758dUX-RCbq;YS-IsH&+<*$b%RKak^H zrWRPd3)Svrth+h$Ud4NFC|=pDotLUk@{=YFm1YH_DXD17V%hXuO!maFRAw+!5W;Sr z!j`_S2B4dFBF7$?bFUJ|7}$&KdwAPk7Wc&N#mXJv?l^$`XX;*8ST`t2^63*JSwn#L z$suaPNH152zcWN{8m%!5)l?5xI!5WOBh=NS>8d!?woKmpyt;NPay&)Zx8ey=G2EA8 zgG}jS>cnCk-W}43#q_a7==fq(zK%9;;mwazw#QlXMg}8(9aiqxG`|WN*3wm*h+3!1 zH&Nv{Rxnes0lQ8*H!{u3n6oojJik@4)*2|S3Xouqhx%2G^D>MCxO-cJb*4atF;Hm^ z)*2&JmMEX?Mb@2Xi0r6-=3`OO7&`rRlCCF zH4(~&7!AO^H9^-HqjHA%Swp={K`LXQ!W^QohHC8LI^a93m_pUIFugUzzhbDS%!jKF zmR-sA`g|h$^-SEO`}I8Pvst($acdHLy$F4jFS(q_Tu5Orrb;fRKsCVkr*qeHC7|eU zyahtOnEt4Uxmm~n*#Yz)PoeKkWA098Zcj%yCgXH-D!Mg;zBQd8 zy~OZ&Z4$aZmFu5GU7n1tO{M#bB^_yMDDaulUOTkP-G2T%d^GQk^eXX}TBG=?X;kIE zQ_k0wRj*R!H!17867##7l0W+YdL6YeTa`5qB@aP`A=HWj^oJ)@CGYwf_W7RLHDudk z(n;|sbu3C9C7%(edipWC^j&YF++F)Q=YBj}lVu0z*w5lnz$Aj$KH9n$*>+QoSEPnT z+>tnRY$#V9?03RnRW;V9Hf*>((64HQmtmN9^+=UtjE`-o7fASuKvXxGKetWY@+5L> zM~QL*T*#Fym6fibN>(tZmNO?;vL&mzvh^&$9rU|v6WzLkX`hU`GEr}q0%}B8wA38T zK#g88Qe8Pp2bH&RobJphiD9hV9OP9Msy0OpDH-RtLnV7hEc#{&V`+6-t8&gIJ$4B%oZ$Zh|yxtnFMuR zoX!=kwuZ^fAu>xSwzpOXD=PyPjz}$hHHT^KVgAOk-j&1n+92j~w))da)K{~pKP^CC zEkK{nMnGgY-05q1Tz@8aK7~J*BZa2EogdcM9ZnaplBs0hy zCys-Yb7s!mdtfG$2i^~QXaT591Vs_t>`dy_$5i`HlXEBO*nu)< zy0?;!O~APgcy^QB+o#Gy5}sY4ZznVGp5(ksZp^0l`;lES#(IAi`eILffHT6_8K_wT zP2CYj*9?<0z~BxscE^bJY;fcb`uHkl;7M%Y3E+JUxE=(yKY$Kju`r12#@j&4GP3b@ z^58AV$Xl0_o@a>O7r@ZV#L$aa-!s7VC*%X$(-i!i~_>L%;9MfdknQ2qJGpQc0ZzsK=Elb8NE2e@Rx zueY;b@8Z9G9{lwl@Z;^|&$luEaSIOp`+qDZzpo{(6@sg!;Kpng!u?teF|HorQcK$yFxu^|4&lo5(vN8E=9N z&HHGcI-DoVNd6BlLh>RBJNTtbES-c`mBPwUWEjWJY@aV zD(v$b@{5`Djaf8=JJj_$aD9$Xvr#?z>u76%K;?_)VUYFLW@FcUhW$bvfUA>hbLfk; z;&`5BjS?G-^mZfrNvO6bm_HQ2b_CF#Y}&evY|2?(E#}Ry$amI&>Ljuv3B2{F(6UMI z-b>khMIv2WK-Wg#{+LEg-%UYZ@7j*ezIMM%wamfyL<9IWbVlh-!E9HA;)*d_LiKik zts}_fjSIAgYFz<}JJjTjHgrUT?n-d%kK)KmeDrZ@a3$$^gs?t}x z>z%|@@_XAoz_}djc^Vsd5gU1x7+noUUIIOjqegvu=7H_A!1mc-&mwZ~Vq)K|_`YT6 z{A$x5LC0gj_Be1q4vsuT4@2i(MVzXnPL$E7%EdF~@{xSFMB}Ydd}o-@9Ky7P@mF*jI54i~Y*MYK;8 z)JQP{HCn=tmI_DULZJv9H}j@Sjzry&7IG-uxXG-(B?6yS|KXQr9n)c%-_Q7M_R(+i zaQ=^eQU8YrxYkME*iV1^4*C5fs6_kUmy!Rq4EyV?sLa4$7m?rAg3n3;#Nv&)?Dab4 zayfRYlsuYGoG9W>m#9bc`0-qn*bc4PWG!{3LKw{y`r`TF6y->kI+Vddxc8=Ws93r#IzA#zDUMl6Tlrfh} z>8s`RwMzC{B@MswOXc8lCAcw*gK&o*=!?>T&u4+pW`S!n(e?8>?DN^kzoQV%Z0yrI zaCH`TWhUBJn5@Mv&LS?)q)wL#!x^Y5mC_S`-?p{t> zAH+KE$2#uCI_?0icY*eM(6!@UXws?PRb>CuVB|%7cr^v#eq=Qmd=5AsM&`YK89LY6 z@c`ZNAl3N@(f%mjz8sO=vJzNV0nano(8H9s224~^C##sFWyJAP>SQT@wpJT0K{_{aT{+?E(5)4MW*6Km8qrWqw9C z|I}~&-|6^m%>AEyfX_R*8{5fmo&$fm&zB*yjQGFr0DoBq{_S?+&r8T}YQeQ~v~PK1 zF8$do@P42pSV#+Uatn1s;EBE?p|^y~hYf@`!r;u68t!CYx>b0fQZ5Pw6|vyy z+r@1!$t`O&=hmRk4Y+5AVEqWUts$HrvbGNqtWjgtouFq6l6wo@w_CApr<*qDFD&CT zL#TOq;G^eR=N`(s30T%)@WWj@0AxCZyK5VweBXA;^Agiii|q>oO(Dj{Af+Q*Z4Z@f z;U-A-wg8hgG{hC**Al?B1~WZzMoR$aiW1vmfF&1<-T_AMCk7s+osZz1Q)StG1>Ygo zJO2Qz_W}1K)W|dZ=yUAwvtaajZ0IF+bTvNqDj0hS^gl&%c@6f4qVjFTo~?@bO&i>`eYxg)o$_+7tQaFajN0 zjaOU3xb_fvuUS~b;F}cbP=J3&h@mIZIFPB06v?B-;&2HwP)PRW(S5nxK)x`T&m*|| z_>Mq-lkzNlGE~G)RBGcD`ar(q$&g$riY-yIC75=H=sQA1WZ6-98DBc{KmKbP?!Tw; zPriNnKL_~o0R7z>>8l6u|LZRBw|kIz|Ia(ve_x9I>n-^A3&FQ@@h__BYgOczbIGsJ z!5`{ukuaV?jAamK%jL;RWi$&LNX93!RcPDKR7^!?SWk@XjWrIYY9ra4CyDWFWIdHzApmYCjDRS;#&nG{t0iV|pmul$K#nh={=|q8YEMGWPAe<@WCrhLYh){aFp`3(kORH8|9#)!3)i;4|poXM-uke_9KmuFfK$F4y3fs)_Se z*y(coTowB6;J17vOLoQRhm1;tQE!aVE%D|Cf3?vp4kW6UJm#%hvMdDT8o}%Y=C%6` z&Fi$z4WNGy@7jiUZ<#70Mswj#I>Y~%Y^t6g>6p)jm9%&#d}Zwye|LJggv z#%6!D*PH?k5RTn;9lCi+)_k!Ojq7ueAk*`epC;pg%3SLow!aYtY0 zM_;9fUcviUgT9x6_eJ1&4tSm=d!7YDkBD8RxGnOtT{eR(Vtbng8HsO{=#u>!e2 zQY1kQ7m7m#93(rO2B40VNGR1kAJq`{q$#ds-I1s_NBV6w3qGp<{Ewf0gtq;cZhO;X zdi*{I_;wfd^(*W*cM}ln|8W=iw>!aK?_~b%R_xEWk|?8mF8HFFyjF#OHIMju0duvQ zo-7fM=TPHW_{n1ae3f>h5SnzVKaritr{SXeRH-7EZYg$S9;7q)d?tCh)_3v;^Fjjp-een#z9>wXD^qr z7fYz~#n`1X^3y8%N+q~ji4x(bgzjsIYctXHYBheP8WpIyQcGN^r7qWy7b{7$bzH`r zu8>ZY3MYzC`Gn3H>K;`*pqkqfLR+K#_Gw&G06UPz^v-1tuhibTUs-)O@!^xqp4TbM zde*icb8Q7q2=VQ>b2IMTM0c*i+uuiU@7_wfd}V>5Al$va274%beH&}tB=31I;;t&P zJRUr>05osZ+CKu_+qkavxN|Fpda>?6F?aWR!ud4QR!trb$6Le94Z%u%fY1^mwTG$j z+8V0bV*}g?CR;QQ*F*iO=H3LcFBR|0VH_FU$8n&cn6WK0+Wsh7A0ey{f!2FK`@KZ_ zy=2$@c+YZbUO~?r~s7r38ME&F!Ta6^7Qa(X7DAV??tTV z1>p6m=XuQY9PWGy^gYD2=7X_n>QoJOw45C*1Q5-mCCqR!F!=CD(Oo*k+`50YJg8Y+N5 z7l#WG*&)_PiUfr9QUTsf3BtWETSWB?pruIGTcb_8g5;n6;XAza^G`qi^tWlaPmkaC z0N<}?K6?y&eGBo|Td=<@1Ao4o_}4q>e_e({xc_Of5AHPt^vK`LC%#!gU9Be17SpGT znB#f$(LDBanR2?+Fq$rVqUnKDaw4BUTcMpSMm1!dk%F&Vo-&y3KbT<{$dE>IrK1Ig zfmGQM!P~+_djjpwU{MR69L13&wM7UJN%kl|cdD^F8Cp)JE0nf}GQAPRnQZDt4fXwE z0?j&i;@{r}zFvwNWM7#HKAS^cnaQ3kA>d4Nya4HJi2!x6T=6+~_HqSxv5dY@O#T9Q z_HsGegS}eGT&>_PSHKsrSKxgWd#QrB@QW^0QJ1Qiia)OTHFs(z3E@6a0Qw7vkz!`Jh#JUayqWybQvGO|Fr3GGk`-&L zsXkEM4S%qju{F@(j#2y5#er<5?-#iLH@@fbgL%?#;g0w|6>~2VZbobhMd%*f>HJjJ zJxhXdf24}y?7m$#R6A@s6LNa|t_S$@`@+S$z?X~2zbwYTUkV`Ezq<`>U4Flm{%#RE z*okt(YtYTt^9ks4Pv(Pj(4m(I6S>?(o_H)@JCdmnB&xmfEb3xfq@IMh&sMu*czZb4 z9VPZ8_z$J}4W=nW8QjrAM*F9&)nV^@^1E!5N%qoc#< z34$|%vjvi#Q0!bD_1#?hUzbww5 zxw9qQ`En7G{URiL1$Uv8I$uJ<>*X>AGW}vHq&$A9oVrxbKwm#4I0u|BVqo$`33F~kaCdJb zT$_Mv3x-Z7?LvWUw}`x*N3J3p~s5p~orrA5j*(`ytZx5N5vz*#3Z_ay0kh zsB_apz_9|jpTs;*0oN+rx)Pua$Q79T84AL^`x)SP8tZ#lK9CMZYs3>X*|9RNzXK1a)sZ53itj@O9MoU|{VUu@ilqKLu{)h{rf_g|XiwE!5>4m?)6FEAAEx0x zJ$~N<{L5SNnOng1dGz-SsBad4?{9@y5*qez7SZ1<1Ya*ehkZV;1z*hvU(G|F_h>da zUBshQnS5z1M;OhNhST)nRP#V0D!Db1%^fRJ#|m`l*^xsJ73^VJZ-Ti$+0dWLkL8Kb zyu*9j47D>%>57nCNorq~HkfPd&oa9bP3<9Sb1*uu=uMD4QKBP=>J7us7f|2LBmZRy z`RCh72>0*rz#-gGHJdr$>Rj?dEqS6CJ5j=%Eagv@vS%x}(-70;+!UkX^=t_Nh2RcN zdO15;0?wC$3#IT04K-QHP6co#OZl5B=O)VpsB@(vTm+mh(~cL*6UEACo;s54ZwZ$V zn1r1Q+ZZ7?L~A=uWP=~+jb&YVU}zQBx0dQ!D>c7`S=KTQuL0`^q;(zEwFNl#0(9tf zE4<>?ji7TKf_ujrVBdhlhbZ-B8-cp5`Z}+o<4Ze$dov54Tek@>E@NuK$y?L;*YBd* z-w(8JAZ_c3t`AYW?Y?co;OhqGLJ_s;@WH($94?6raPZ8x%^nMI9{xb z6>>*P*}fvND?{HLpg)C!$9S;ZNIYr=Z)ecE=gNB*l80_bWx`w!gMpP`}(NwiT#S81(G$YFQ529s(VYVXmi0&vQ70yXRTPeZL6dK2j|n zo5_rpu>%n9g?Mi^JqT@hI@cKiM)SnUI%#qyf3`~POE)wHvwKvw-fXai1$dK816eX^ zev2A5-4trYmm^MTC|{o9yASR+BkzOx{FH_YgyA9??WtyR&J@J=?sTOy)%4R(|M3gl zf1HN<^!R-b@a-$&nZ>BF^*3|y>$Aa)g{UOU7ggZ1+05tjQ2)Fev#HN!f-mQxsw~j$ zj%Sj`a)hI~%CUUI(L8-PUFu7e`V;lx6hmL4(3ir%ckIz(!$^(+`dRx7u`5J$MH+iz z%{}qbV7fSwuOG=W_r&R_v~Qqji_qPP25+i1kZBr7^K(XPZNZ8)TysSz-blq0#*N04 z&~bk`8~c61TXe@- zynQWj?If*JReZOit8EjotOxc@MCUq)a>==c=-y7C;=r3x=MD5nUzy*Y9gKY=+BH4+ z7We9%Z2h}Y_3sm1A5oC(uFZ^VD{bF|+1KK>Rb)#wI1~liBGsl4p*0K@HS115yVL#I z8U*5CmOhd%BDfbqxJ%kd9TTTT|PksCkp~N!Y`9!A;aqBc<#>3Fs?88!b@1X>w;cJ)9$-sbWu8;g{;<$=V=KvQQsD zGz4(=NUb-;FmSUKpEMS}lE}j=Wk2uFN4W*N|7r zv9p!rI^zj1IV5-3rtvbVHYp~)7HFrlDJaPO`hA^II7*01hXGraSd}n}co1r-(WN(5x zm}2gWH+Ic1pbCP4dUvSS7r{-WpRcrY$$qJZzgW$kE2kjeFQN!Lcd>*%TZo@4q|OvEX9~G9g*?>h z0uJg_fpof1L@MH^BKXJhxubdfv0QyTR~*XbdQ+wTl)$ziZNEX-=Pz4RA`b@o@6g4L zAZj9+w-y8UGxXqEz_}T?wjhXGH(>THeB-;A zr>9z>flc)}5>1eAXPaiE1j}!@G1@c4zgu5_YqVyC7Z3|If zQRtN#e~&6I5vW^bW|>akrecrA5O0?;jeiim&(Om!0H~1{h@ltgzGv{BRhaW}R4mN; z7?>iv3-wuraL2kH2T)cNb|<=@hISr!R><|WpgxTnfQFzNA1+}AOQ@ba0n&CLSM5pD zn}dknRQ_Z+b-Wx*)-YG+Ysbn2Pde*}W1X=q`e|n>?sWdYkv$Xj%$t%olZAZm%NF4T z0Ix&&Iu!iOQ|=zpAHD|uTm8AZH%INx5PLHfTZZ|kA5f2lzyAvNf9^vr)8qF&z@Ju; zR~Ml2TVKo~uGE2xb4d73n=B)a7J)OB;L|z8r*-6|8ejHz9df(FN&HZvIGCgy$ux~; z8;8=wzC?a7MeR?Jyz!hjksHVoj})rog@%y~V}GKdCq_dM_cu7h&5lUUn?#M}%43k2 zX=Yon*k%+v{4`6TIgGg0*oCdgELU;nL&=FfKO|v8*}M@xy9EfH+}aetiMugFA^jVnYL1$(*e4-Ir67$g@+IY7pX2myu^m2^4}aVboXWqa@@HYw{9RT z>-k+Tf<3FT?oBMpqS*o*zRn(9n{fM9!nG5#ZKFIpPysUMhop5QaO_|@){@SRSmy>D z!F?l~7=U99>3E8@%wk&OsE%+$lb_TYpmYUmT_G}D8;xcAjpiCh3zU%pZaANXE2?p5 z;ft7|BGH>~-W{6V)Xedrt^>zZ%$9lEbfnu{W{tx9OqR zh|$-`p_fVTb42%3H(O&*ksZ<;!rk^H3bH$&!CmlgpTgj4ypO8;%RplWGX?h{xMC<` z+&PjvU4(KaX|2J`V5WMif}JQqa6dl_oS(y;ouwZsl)R}_ZyGz01x@#VBl~ap4&e?> zx;K+|Lsy>8doyHjhT={|K<~@ZdNSqiGyz^A+&N>9pLMS$j_Ic>gS)=GM8%se2-n4#a^mX&Qy|Ts_=6)_=P(B(j5HqO#E^+ zeWj8=k}32j2z_xH)JQt?;F3Fz?n_mNGt~YR$(tbdCJDot5Z@})NT%kBRlCB(4u8JG zPeILdxBKZGrl2;1pCthOl`~SXhw0W(wJXqQF{!oya54v6s{!B6 z6TZKd`g#%g(=9Z-USHz6R5kzr5CBO;K~w;~T!cfiUztT*m_w~Z4O&{w#KmbQLz14*1DOpZ6VQt zrj5vqLsM_tf;)E*9h-q;o7(ceX4`1AZeqJOQY~wNWh3a^igj+nEE|cg^|YWYr%BsWg!M_%^#rN`>3Ev!dYWi^0=S+Bo@Z&t3exqkd22FoW($3}SZ@jNmUF#D zsw<6jCG+-psWVD#2&Q_{)roTTWDR?w3Oii~&dtTn&n3^+;?P(OWng_N4E(<|kWTfd z(vbDN>8J@GL^hloyjcq5K2n-EC3mXOoyt0rX-6UtUjXUv&Xn94a!;1poyK(~0O;SH zd4`|=@wXp;{NYDmy3F(m)#>s39^k77v1^M_!uS_;%;$3{R2yqHHCaKPs{!X{;^$^! zXRE=vT5u7a>*21}ibr#${y45XLW1gtYyWhmCzuHuXpI|H?LlV7uDXfx_v!3O&bqb<~64bdUo zt$w;Qm^fRAU$4WyUBLh87TgDS@~b7-4PPIqOEV$dNjUdR))Hr`nN!s~Qh7TSUp_(gi+{dyAhflNbx zrqY*-!qbCU>~Id6s0Q;i=w!Qd)NR4y8#=v8Ak3zV=!;ij&A9<4;eVrOyO?Z89cRq<*pTIg+q7aQ`Ic8tQ*`KC6p90pWfc;76 z?uFJn^vwyto-GX&k^|+yQ_6VqA#GV_l3Sj)BBe;~RQXrAQY85KU8#aI zg|jDf&Qv%Dm|SUcS3K#-5*@kv&p-X`W(THexKEGY`v5oY1J{>;FX~V^t*f)JOS8e{ z+4$ue9MwUbPhOluo~{O`Ds_kaABS5xA$eu)bFk9+LLL_Q48(IveX59#{ zZT7u($`Dzub0rD&A}%tA>8R-;7*|) z4%PhWN(Q3gd=1itT8Mb+TonQR`>$|6Rmeh}EMQOMaVPSGEqeZr$e_c`J{}e zD@Rh5(G+UjyeUrT9DQ(Y-2`}9W_PtKGt|MF4fu{FC+eXm#5$N~`@B9#0-vQlE($*U0 zKmce66zl!@mJq2c0#2VMFPx3iwVqU=FI(=<6b7@zp==2?gUwZ;hjnMGpUe`G01SP|}%#oI)29?#8`z${UiD}Xh1Y~N~e=oS3PTioEA)bJZ%=rs(&z4ry+ei}9C zu&l(|9tD<_MAu5%vVw9vMLM6uAl$p2pe!qe&Be^xaL}2~_vX_B6;yX2>B`}uO>8Gb~ZRa4_umuU7U?wtfMDu_+y3aU>b?~9j1uADGEB^ zmZbaOu0yyZz9%cLBpF`eLr)50sREm<0T*VXBbt}yf~yO0=%mipg5zc2WCb}nlfOJy zI$x#@Ch(3R*%4@PN9cp8aQQFvW{_~wNJ)p&?z&W7P-(U|m!dc`}74^kD zR9NPl#i$tMw@bk{w-DbfWiQoYr%Qi@J9efTnfEhQEWDnprYCEs_)b7UxI^;}?fjW? z`eX@lqKG|S$eze&j_2~fkX;(f5=Ya;Bham9sz)-k(KKx+SshH$1`^eY48v%$$s6tG zoDt9#U^-}$_6KmSG5Uc(<`W~+8p!u2vONWO{VZ(TGHly};NWV|{yuK~2>0%!`#+)G z+t4nkV;?)VzHuFBUh8x5>+$Zj)X>Xn-(tNznyn8I4kNgWUGQg{Wb94TA>7?bd~Z5j zC!rIE$GFz`Ay@CpW>xSz$KbGNNT4LVv^OwpWhJPie`PhuU9b9?T_UylT9 zLP2XP=gKDg%NTbNBe?(L-+%h~Z#Q!wr{O+5e%AwhaR>GJT;g&Oem<8tU(8Kb38;i`8G+tl zbHSB)`1v~GSSdD|2gXaVGc%dVO6Y1O_YB<;XmW&TeF@4)t}>9v!&N_o`#^>?kb&wA zcoTV412R%^Mhf0IbpSfwShHh>5xVlOV9gq?*VxTSDuRYLc3-O11Z_*6Sx?i(F zZ!yTN2CdUi>4~B)Rih5qUoHUOEXGh{?xo<{Tj;MB3(&ToDn@XJMi0UrEibA_#P@3I zTn%}CCdz+@WS^|Yr<^;4`{^?3WC?Y=7{UEmJ_q5BayqjFNcNEo2zMD`-A8uANGi1I zhJge_f4n{dXQmjVGt7j(LbGw7&L0XEA>0oJ&<9LRMeE!najI(MS|L!x6Hu)GUA&v5oSZhsIs6u=+! zXPQDdYn*~k52PFVQq`Vh!ILcXrbtRD`X+VRf)o~FtGJjru$iDU^N(d4fMSZ`d`C)SL5i65(>)@)+Y$a^rq#& z@&s;w5|SOWJPvHD=+;M-H8tSX0DM~v+nz4iGns)>p|_ap&gR`|T1TAP9HAZ#*7lhA z!$G7gl^@7QeKs!4rmxIruPh+WLkkZF|~!7T0=}NA*SX~zt$OsmKkzOINuhO>hi zl7kKBgQFGD1&c>>wBAUgGstWYl)IzE;cR_0UmM96hjW$TY!%u==o8^m+7l-_BPIBr z?1@*P+%c*v(r61ebS zoGqN`3{*OT{8|J2>izYDesaCZ|FF@oUN=J>)cg+Ue)~1^KHYrC7;wmBI^<_K6r|OM z=*2Dot>_NT?{mlfQZWNJ8u9!y}zGq`ib z^7(4<;!FlL5v?Q7R5BBV%xDocR*D@jB~BC?2IBp?LlE3;A*clIV1{8NUq*<}(}#0p z6yAk=PgXo}C@0T@+A7JeILQ$$+anFowxdRC5sE7|5W>C1sI{96U4bTxzuDsN-)8cM zaBq-h2>0%A{8A15a(x!Czx;A}M%Hbr(w z1PJ#lv-u0P^w~-r#bm0Ov%dOY$BXHsrTnpC?zeCs&4h55M^bg4rpT^C&)yejfO3T! z;Zmd3U#~YC4w>~`DpxWk^rIS0oHL9Y$f3ICfRFFQH{4Hbz8CCT$?Sd-YkCz} z-UB_G+1{Tvg#YrY1QAtz4sHszLECs z)FJx2)`Rvnpk)o{+<>>N!rAVGM31Yo3NrrqMOx1?d4TBJHiJB)C{@CU2IHfOzgFd<;M&07aeP|Hg zF^JEp+@mVHR2Jtbe3eR-NMLa&c(a!4dP;XcPq<$KJueaP#`z3xdlDtKcRr4FtiZcg z5%Ai&0&87CbUiM%+^c_($3E!~J~Yz@llaC2tUaFW&Jf*Mls8B8W}7+__4*mg9<%zf zuIx6joiU0%k#{6fo)j=zfS;a4om)VhTL>m0;^*Oz?~`@nv0|Yof$IzqTTRAhv;SeU zX}?k3rwV%&{(vGt?bpP8x(u~PlRl9pH~}9pO9uiJsQv!Z;XqWC!I~gh()FKz`1{S6 z`_I#GpB}&S0j@6v-!G-Vtr0F}3KL0ke;n5viw`AY7s~ZZHTv9_U|lh0M_53c(b#G*So};~e*T?)eyzrU7TwsSs%-|@8%p-z{B)8#li*;L7#EM<=s zF~5PkFW{bq`ij7*Xo~E^DTcvBgOBW5Z!F@wE5ffU*wEys9yG|1DX8#3n7J|1?|_+X zGP9m2=|~ahTuSc!BeUfZdiw)l^TS}*6QE%=Xnhm$-LsK(Zy|fOW1j7xXFJ}zjr8~m zKsq;2whsyCW?=aU`+tPHV*_w)WNhmp;z8F2(E2`RUC*|D03h63))G_utDS3s_cg_R zhgP3N>@m|mxRc#!245P9(4D~cCQ5zD;y{WD$=;Ww!&MagWx**H{!;ql2w8T4Cq}+2&SX!N?FpPS9t`9V$7`9%h4kbiaCQNNJ2*d|I8z7C)lw6AqBDYPG4ZIB zafqQISV3K!LfG~hOlLUP87Xu|iybjYmT0XbT5gXPTB79oP+@-nbHJZC6ofT|lFbRy zKmO~NY?+^@;XXZn=L39oJNW)~?#nvn#RTi`mp&{K5?bZ4$KYQ0J`VoU%%I%OStw$AwhpyV zx;#r7%Y}0Q%GN(!&Ypl+FGsT!g!@E3i`qz`BpG=;RUJ>&#!~%;l1u{$rrtP1Pps01 zVlqKJ(Si2xppL+R7JvVP26eB2-(zB-ZQt$B?DMDKEHxOf+48Bzd)TI@`A;4O8y^AN zAHhCeLF|1JKl~!r{ubukNO*Q&Jv$-UF@*RXn0p)M+JZ7?P%)VeIApqQJq87DAjfSR zkl>9434?0?2y{S>ufsalLjR66zfZKS1Fau|<`2pC52&t}$hO7gu4u5&NbEIW?UAB0 zNpmLpG6EA=PqHwWA`hi%{mIC)cSkGEXstWe0OgKiym5*r0or`6C4t=&fo~3?-;(iF zqJEcboGFVXGM*#jxjJ|-lWw}t-~BY-yOQdD3|Llyj#a?E64)N2TUK%nE2x&`MB5|$ z-aEB7%H-uUm}gAf2LW1hxDl1#i6Of(ac2Rr=K^Oo)0ND2BrBE_6Xg4DKXHGc+!Co- z5@lzq)RPL=K-lqGVsasVZUF}U`}sx0nfc)CeDdsU;#3WFw3r&s1Ow^#NUm_a+<3ek zUd3bO^09K1EPu2@J65S5tJaQ|p*DMCrRsR8aj3xHLCu&HIN|l?YL-m(?+ETUs}B71 zAnch@!JXbtXET1UR zCQ39^k|{?VN{7}@>kied=oFHn(`4=l)-7S0HBz?4LB0r{GzBufH%;&Mg$Q~xmA)*s zH&gYdYTXH{BSy1F>k#g3W({J!RWm`pH)~p}QK^@;dQCs9YK=NKlEQs4hxuY5>QW8i z{>^Rpjm6-rCEW1>aI6r*ojN}YyS4zoGKV--0Zvz9(6CR|A-GSXIttW<8et0V7iv*t z=|mZOyn=#oKVHNgEr5LICvwE`4CzR!awJt9@x|F8(;?iwaVos&i}&w|_O}N6wfY;I z%;p2S0^z>bpKpvZ> z0MMR$wqdBH^>)m=1Mk_1L%w%!{eOY`)V+`Izrwv^J=Xc*O}Mu~=l%iNvIaD~51@H( zeUGrdO!eGnIF!mAFjEKpsHu{Wa6)w?^4*DCPm0)|Bn~7iy@{w8r!x{taYU*1NW~S- zd17RDJW4LKrz))}(xF7dwovIMMO<#sZqfKUl`2#COo^;8g9nnqq5Fi6`vv<$tYrml zSxML)!YvQr^$+4r_cQhP@Vjo6S64~5$I|mvutFm@hw6W~_`GE91w@l#ybkKTq~%!K?X5 z>5PE_qdnL7;}8Ep-IJ#pV^2Hx>G8WB;QB4#+uNvb7ZEpRg3l_j3&qTM2G^UwcLs?K zX6BHYZVBa`F;Z`e2A%jowx2gs?8}h*Qq}%M-5YH}k#~PTt0@3_@XkO(N3d)O7g0Ii zc&R&C^QN01<=t>Kkk0q#D1&*ZniYh;Csp$#nyq1ayPw`}@@v-vnq<9E(OPu4}MI8}*4 z?US=G2zTh;ugzi3mC+M9;Cv-FP)-N_<4o z7$4kwAlwt+z1b6GwgsEp{Se&u8;e-i5++rYg`R1@8R7W2wy-3_wFG6H@Mq>1NSLeKSJ5==w`!BLAbYn zh_(4PR3X-z-oqi{Ti0Us?}E1X2*=BG<2>+59N2GW4hOK-Sh#-DyJC1pf(WP8-ZUAK zy+2X)CaBQ1J0fI9xH=_!DCZ29A?x8<%9*M-Gj&^zxgkMY=g+(zC_H9l?^LLHnp&W0 znHp2z4<1PaFXa(yD%nkQ*S+L4TeG;WK zMvJWp^8PT;5DPp-lD9;0xkfcQkjuL^7Jg? z!h$KdW9JuR=N6*)%=rc2(n8|GJPQ7PPgavtOg~ha*k5i6652v|_zpyAcE0l?Jt;E8eSd}NL{LNj#CVPa@5o55%sJ2+>A`RWiN_UFjPD8a@`*S2H=;C|QWp|>%5oNT7m@WQ+ z9frVW)!d|@(@c$u-(khLhZhfu%utH-`5gAMx!~$N@cDfF%O%wH1;l4_*&{jNLyGU{v>-#r+|2OI*O- zQ2CI7wgj;QNsO}!*q&qCUcp;lAoo7Ye*7d31>wH$Y3$GopyhRx)8gJpdbc9PPnmc3 zc2q%ZDnrJ$5pAeW6&`@Hd<3S7g8c$_!t&8gxI>_~plnDQ!u{Zzp!t2G@l9ZTff#zk zzbTvFZ{`jKu$E|)V+!H!N|NCu>djF4lH}e*r6*SDj+C9@sxwS?%+R20L5g#RW(^U$ z!g)(H=SY!VSz1Smcrc3F6(znG#H`Y&J0z}37Sj|y*1%?ppu&JH3ZU+sLEImKKN>?k z8c#eDPuv{>76yYNGe}p6T#;U?Fs}x(yQ8?Kc(E~7+8qq`hJdydp(|7ENL8B>l)d3- z3wMo1uQQ5U{PmrF(mp@FA&7G&VG!TrniDY#EA0%&J-5fXfOejYemhn=he$Ev_Y z1%P}%R!JQ#r^m{XTR&3zi^}LD<=ki)H&ldrHuYo+)+D+m3UnnB9U0xX@ zI-mG#9`?mT^7;Y_QX9hkR2g@snmRKJTv^0ln9HM*VO8XXStvdK;%v0V`e~gwmI+Q4 zP?u`S3p4T471Tr#K2eIDDuZyRj+gLbdE7*SJd`1fWGTZL>TsHh9B#bU6Q_4aOKzwr ztvlQ>1@}giX|E>j(wJRl=3tn%%|JGq7+WYekV4yM0{d#N{Vm+`8guX^?vv;6kDme` zuL66Y0tcQ2jW2`Fw{gch%Cm`>;yZ%-PR!{u?>@MLU*Qg~knEiwqFvTsp5XA_XWJ3n zn?C@D-vW*AftC;O`nN&n`?UKtzI72em`*}O9`xrrA~kfPCr<21)BCavJ(*}v+Y^T} zR-sRaOm~Lrju6crtU5wW&QK#nd{?m09zsLDyVDd`y3moxw!{njqNR1A(hC8?T?V>T zBjZ#$T4WLwHd$dZB{EMWie#)<0;K{dk8eyGCW5S>5UKnvHDxR9FV` z9oqIO^FE1!GblcDW;S-R7K4142?7oP01yC4L_t)CK7Fj58n1w!ogFXd$IGRO3i(*2 z4)4dx_~Bv>I`^SMX{bo=&4u3=*B*;bRQ>pmzeBc9!+m=EGYl}Ei=8UQuFfRCT}*$s zi2h;@bG}R%&)`NgSWgmXi4i)YRZFbi6|ZzANF7jda(kT68bh~6ksXnYEkbsNA-+2T z%v~nkV$>ktQC4_>(&R5R1PGRJ)fH#xN!EK(ZU$$dAly-J&j`KUUu!cOy8?oop<&kG zfEGWkLDvqd@&Qe2GARRz;>Bv}(>W-Beq}BO`TqHQ`syrhG#j9P+|}sx?B#jP#n~LR z?Psfri*+O<`{mhix*{&u3PUNVY1GA;)Z|PQv>7V~<7L>HD)x9Ob+Sx2lFLH4_oZ{_ z+-8OZ%{y|qajGX)L$PUy!Y~Cwu+yxy7_}y|alcXBAE4An7%a)5hr^7AO{61&?@Oob zbAja*y6qj@_9k7wn%egQ*!}dcaK{e62wLC3t?$#_8?dRIcOTqQp>~JQy#EilWB(i6 z;U9ms?M?5a15J(Zf&;HZzEdr4RNOuPMxq?mBK-Cf`wFd|tAsk#|^<>J{G~SxXwZuyY;>-rJ`vUQDjY!srC<7L*VUa2xr;-T>u2s0#RrYn2f7__OXVTZ|%4UP8P<(6h zWD_Sc`O$Q-Hw`twvn3d;32JA&(w3mL#q#a(VtWGD7SDFXa9z=oJyL^+Ml7i6a1`UdYhjL;coHww}%E< zXZUx`Fti2e2aQ6#S!)Y0^d^Xt737sU#HHEHWr%oa;eCDeAl%PYNt3nIWF5FPheRda zE3wIH+?SP)!Pmpd;Cuz!p9s!Z$(QSxvo+vE6)|3hk5^)+s+pr@)bVm*IF}kjaA#0r zzR$e(CQ3fI8(dMU9g;m%gY2^g8QT4HbbLvZc52LS6LUCJ-KG%xjldBr_GB=Y`Jm|q zyyYEWdxva&ojm*szVA7(`zf&h8T{aL5gT@!7Or*AM=Tc zXbltLQmH3J9mp~CW~=UWaVi56!rc|2b%z{NeU+s# z6(t^w6%IwS2O{ZxG1TFBp)E!0$}ly=h&uwAO@7jQqWGFBzb4D?s`@(JxK0u`Dg16f zabJMc83zW7sAIFRePJfq|d@nF2tvTGblxJJ_#oP2>0;{a;%(y{{2W9 ziJEQ~vHiJpPbN8#%?{@Yqf<@z3f18veXu}9T|06mYmWSnAO7>V&V3s0)8ltMz(^{7 zBn>)T{L6XNSBr@o3(3nfsS^eGL<%*Yt_)?Gok@oFNU>=K+ZZl1Myn9+T`7t!Q?q8M z)?}qCRZj=}7$!|i~aa}FeO1_&@pvNg7B zk1b2K<(++gwSKn83Ra{@iWwvb5)8PEbIyTal4Q%-vpZY6Rqwr-v8?_58XVbv zuU^%@Keo0?#;H@cE>X7#pd0=9eb4!w-#JbnZM(02I1-K8cydDZ@EG&(I27p!?t4d6 z5bh6-hbXv<+IZ!6;Y*v>nmD z&Aw8z0?>|eI@5j%H2)Yl&w~E*RQGwtd78Am0m%+!JJIqgW%(&+`5AD%hxc6q1C?MO z?!$Kx+y`#q{ne-kF?;=!N?SSjz{X`82Se!I5%*M?Ly| zjVqVEt0V4cfGdFAhxs%?tk>mo=?IOPswn`3Ef3~h^2wPKVSPoW?gUx5C^^^FzH$}7kEZBYyIpX`XSBfd*Me4}kj;%JQ}c&}rA#eqy%LWS?!ysJ;ojw^^M)Wsx4~%B>gzfuw$;Xxb-Zs zoh2OaQucR1>zkncTPj;Jao3=}qrt3ZsymV!if2ZXU{s+QOwtd=z-3i}u}DA4$ryTk zlrEE@!=N897zd0H^m@1$!(a=F_cmVv9UD#+JCk^8Bx#GHZ4rz!N_59)@Awg~`G8k+ z;7c+nmx(g1x`G2=V!{7vQr!-g?}iAqp!Cl<15RoH0~;oT@8X zXiv~v!VNbR@v_WT>e;KZ`kKsLUlS>4tjEM5Y5b6O@~~k%P416l+CuTxV9*t*8cq=>Gj!8g zy75EOK&JlFfBDbe^7f}`nS-4Bfqj7uJjmrI;;`*f?*1w4<7bKAJcmCyL9QL9C*z5U zSb8c>Gm~hXN-zyXDK0;;Nzc}b;BEk2AHur=X~=YE6y1B+Xpa&)LNusdOtfhs+TR(X z?eJ4PX2oeXIJFvwthH%mr%~<-(G17vCgSwtvATh9-|iqohmWpJQQR7%UD8`bsYzrT z{Yh6e({YIH%450?fu$U9{|L5q9F?v=JV8Aur}j!z8@W)DLzJWK)6H_QQ3AF~@cZRZ z!lT{P2gguNroCQ8QrTXv`0pY%LMD2w;xm-j*zC*arW|H$+>_m!cK2uuE)}dh| ze*yR2AWfIAj1E8f&oF-X?5TC1WyKAqo-?R++tS2H)SA(9!cazA>0#m1JPoCgoMi51GT+= z`ff8iEY_~*dK9I{po0?L3wOOofl-vu?$3=KGIYlCt{B!C%{n7Fca+qbWUxi@cfPK>1qQt)kdaD$5u()O^I*umEAC~NCH!Ns)cgZ>=7^v!F?28KaP9hjz0zZ zU&DR(IJQ+ztrXC+8LEji)kqRGoXn1;Yo;@lnM~8vVZ&g&)D}Xzf>Z?K4(y9;U@?7KrP0$#>}0$& z6|c-B`Aj7E^+%Xn{q?nG{*I4uO-EIV;Fcc0AcET_ydzL{qT@3P1b0s;JCk5WW0ia~ z{W^_HqjShQyQGEM++!5cu#Ry3NQBZIr0?{V+l`ubgP~pVcWeEulA%eEYBWNV58oW6 zc4VsCvcY_zdZ&!vEN3Ca?;oX5p1oAHSqL5-RX;jG-9H94%CHqwE;Cug#VxlHx+A$loC3w=5nRShDzhiiwR zau0k8_YSkkp(u@#d`}eaYQ&ooQ|~KPYw$J=HI~S?=ixWYLG?GumLFo>XRy9XvgZob z{sHNH7i;+$XnqZYaNl&wY_&u-8Px3|Y+saWIDs8WmQnZf7F_y^qqR8OVM{5AlwZdiUGz?tp=gZ%uc5Hxq{W6D9#xmcJ zqUFXQwkD9h>c?I*(${_Xdw!BV%y>6|z3orc_+T|Y#67s`2Xps==-d9-EnnhZAkiE~ z+9Fi07{L*xy%!)~)p5-cdTX>&8_3);F*S;CTgNv0G461BG(*BdNf5Gi08*rwUF<#S!VbO zw1=zQ!DL&QdLWVOO;8u2;CDa z^~cKtP?$#<`@;NM%?gA&6y{FJ=n%C|S%l$#x38|(U+D=@ym=2@r^(c5^z|q{R*kMf z;_u0tI}&?M0aek!T>zF(32Q|~Y+-@`01yC4L_t*SMv1gqjBl5zwoB0PyzOHA(Q*3G zNfnfD8)d|DAy_XZ_l~J{%E4|025+`X3HTeW7hpgCk{ZGtLVvS_T*wEI>=5w~?hARu zY&JQQshY{8m-DrYx$*?sdlW~bWCZsRZU4W+z13*2=`{6{Sg+GI`WWhAs1Xy~=r4EZ ziSZ<^J(s+31grcSS^pnE`@85oD)f#Em>cry zLpk`EB@C6#Si-e8efdjTb#u6AgX=^nTjx*1m$A-=YYf0$(bRaZda{U`EXBu50CcF| zmn*R4qhKAr#V5h$DQxo;yn?M~P%RDo%Jy;8WCAYvYb9`X$Do9VZ{=`;YAjVANfw}w zr^!=?^-!}9Cu`x~WM>rFnXLKrU;Y)%#s2Iw?_}%)xF6UT*}zUAwt7gtmZ_de19OGs z`U&-V5m?XU2P4?gXw7(x8Twe9X*|I=9;-lMI}vW~4mLV`^cJ3L5|}C$T$Hh!ev-vN z-!c<-!szZ$xi2kfJlKEGH_&AYaLQT;cem^d`Hqe$X|-*N4#K6&7oB*5aPKhb+Kh%) zliua4b^3{}K(WPNeK!=`$pjl7500zRyv^hI zS}6&6y^x>K-#O znaZ{2Q`gFgOJAjGUIF$uK>G(cgnQQ|qU{{!d=FUP1kG=Nrq?m(@W%EI=J|l=y+#e* zB!_O}Xiv4qTQlPwp!#`DC;a!QGEsCtHofWRK1wT3@2iv zsqA<&HXE zb`p0#o!lr9*JG95K)xqX?g`NKh8TvT3=r;<@yd9tZaiGqnPBb=F}CYOdx+t(qOQ}) zc3Qq+0JnX~TfW%!K)gFt+Z%1_2{E<%>g}@R)EJzyk5e=|CB>yxP-`%q0)gIU)I*@S zbf_G~ZPv7hYP+IzF#NYgFwN(1KTzsKW zJ(-Em=Bk&Ah53ADGJ_pY5yxV*5blFPdauq^I?M*tK->%WMw7O|tZVVpI|7w@Ej<{Z zo=Rg|^YO}~$Gb?dTYiQ&zk%;(-ai-bgEa&c??ZQ< z!oBw|3f})maJQX7<&VxYgvAT@mN#%zME|O)^?9x?n5vS58jWc2k=jD}u1M7&O3R3S zaRQX>-os*=_CJ#y6?a0ow=23fy%uWrcD-@GV98_ThogfVb(ABR=}M5g6Ge9f(H76O z#_^s6wI_k;N*3ThUD0ZH9OH;#?9sF}nzKeTEm1TSys39op^Albe3?BA!E6@|2=sb`eSci48S-5V;cnFkEs9|E5o`fG4DIV9 zDN7O7^CM#Yruq*zl}9i0W2s;+Ra!nQt!A;?h1^ylwRe=>IZAC-5Q|0RL?&1$BsPw! zAlx^~u$?37#cXUU6>OKO9-Sf|A-I!k#nfURF_#O_R%#wOor5ozu<$yUPc4w5L%zR>dHKFC-cduCo=UR6ni#CXylHnF^8GL2 zzF#flxs0&x?F9K(aJQbu8czeuY25lV!u~U?^L4KCD;mhk>pXW$=Kl)rsZwt|guA{c z7{XnL3X=>9T2PI8j~VrPgJk#UG;KOPggaF35bkah-yaod^W|;9bZ3&>p1@keaJ0D^ z%eBQ)9dU^GtueeimTyfE9gy;goFjp^#xji&)V&~8jlXc+EMCyFr$zETnR<%>rv>6& z8eG;;4I%n_fkJH%e%pWw$F-P`E7?sm2b2nS8Kb zL9HACTSv*=a(W>POr}7%(_XmapTivq_B;wQeJUGUE#py>sX}tOj9DmF%@>GM8Jh6~ zWhmUx7hvdsC{&DY#m5SNctw9lVw=pGW*@mD%%{abx9C)p5fX&EBNtpf4$gmFb>&4+ z`vc7WrT{fNBs+rp1+4W9=6DaYy@R#9NkE6n-TF3gpT#;aLzF|N|9iFj{|wx1XNkr$ z2=12GG0UsK{bR~`g03-uN|w1PaaObB3E>djlb~Xiy5e}aDt8BIJA9B}Z&jc?N8-KJ zr0p>1A>7;aay!bBnP4F0HfkW;dn5ckAsSmK+m)hii)Sn$z#6G;j-VZp1QhJfXtp_& zwnXtQaYA!E<4hCX$x>^o=u8wFqlB73@v1>ME2-b%@HaT{8UxO0ne#GTWfm|kJFFhc(Rc@B zfBJdO{U9xKU|(PZzkXKuMLBp>NZrryos0qfL0}}BSWnb0WcV*d@;xy^TVTMTHn>Ma z*XaP1cr(6Xjxfa;EIACKjrXh5D#I_m^kDm8tv+C*!7|lQ*CMmkl6+eW?(jZ!dd)2* z&~Em%30$pCXO&Eil4Rwi+k$*gt8LbcZlliSFSUm0TcgyqX1qB{eJ@^WDF-X>m_BX; zzqZo<+@SvWZT-e!Y&17g_m8CZW4an6c3s2W)`}Jd^~xWJ=TU=)ICdb0 zM;+Wkv|T=0k0QHtvdiG@#A$#`hpuVYD{VRh6z|?@8OdW5JHzz@iHbV{8_E#7QdnDr z$`;ArF%yga#oBY}4AkrO6^c_|W=hB0DIP~E>Vk94j zDt@{cn=8YY%JIbtYUvohdJL7ouOG*EzKm_0BBqPTwG;5q28Ks-WT)9B`DrY zRIBA+xs)0|M0wz{K#`R?z|LtG@>t~-GY^WaC--Ll*e}(?dm%#l} z_I|E<_PrnM%x?~d32S5HEA>|&?>^jqxH^93M+=LC51;&E$=+0>;ksTrvH4*0{_f-P zrkb6(xsHmwrH4DaPj(iTMwXkbGqx5>&XLDkyN=?t#p=ro7T3VX0VJ%SNreXEMp@Y!da5DkflTzFxvi9l|El zaQIPwcoKVBE?KBr%wwR+TgXKdnJ2T!m2wHf9ZLSC5^}YKS}f!i3i!!%c05KJ4$}7+ z4N%X*n4?*%)XRL6!dZMZ_E5i;Ktr93_XhIYX?hs%w-gfBPhl5dz%P6qTzv`D{*bi4 z3py?ny;T(I=6DfnJ%>Z_?sy07rtUk0d+Rv>#e45{)H}=zcYMFe%wNL221*b4)VrVf$h7bC7-F*gMGL+LqG?L`*0sj;QFJ4&M>(vNbWGnt$GwH!PV4b z*0!6qs5V9~Bk_*Nu5Z<8+=}Ql@KCl7B`dv2>}a;opTTt`^X@q5rUA5s3f<{STas{H z56-j1B~f!h7IBi-d+pFYDw= zg9hTh#!s#bmKs7hR5=sP)di{R{OP73)*42(C6N7@s(~y5l6@$j_#Ez2Mc7OUfP9B= zUnm3frC_OySUZ7lJqMOgfXM=UB9FHCgTWMfzYhT_Z!G{T#T115QVG6P#4Y4&1`;`& zAAsH&$@V1jorm=M$@Whn+r4$}fBf|S@6X?X9oYY827do#`nM;+KNo?WEPSi-C-+yD z2NZsNs&i>!c``<~asA@s%_qwz^H<*e@%;z8eZJ)O()94n>N=ggR#W$QcK!;(cYOV8 zKi^$%*7!{}*NwR9Jtbuy?>wn1N}sAax4XIKDNc136z%Tqbbt57CP8(Z<}8YN;{2t> z{_ZNRapFSdTyNXW2yAP5V$FKJ?IgC#rpJ z=IU!(k3adalzUWR*eYNblfZNqSj^-nQmNStdZmzGDPq=2xTSn{EE$_hS3|YFbBx%k zK#gUV3eD)Hl?xV&vDG7#xBnD9eVCa_kViud-3G;@7;QRTousLi zxCR57Ea8gqhx)x<1|yN;Zia3kOKqtjs=iEK_$qe(8{qP{(RA$QH=))h`)-ik)d<#} z3%Kij!tow*`@6W;(SfG6^Qh(>G98i~`d@FTK5Z}a6!D1fxcdTb{{XX|fwCP~-o={U z#_HYx*4MG#AL`r63^!!#x{j^U@y!OIEm(k9--ml&B;OV!wfT!^??exSEy-=xw)yBf zd^8a5P|H8<{h-si^%{p>a44K3fa{BwM>2%rEY)B(#IDeuC|%crduDZ4s-ZW_R3D!C(s{AKg%aU8JriK)R~qu4vioM(KuGQ|&9?4v_8zLZ&lK z;fyU#Xb5BP1*q!-Nn0e|nMU?!Q+-(gl6@cU(8mzp!Bi1|d|xUj=SsjrDOf3oaK|>D zL2#cgQMX1D_w=AQfm|w8%@<-&tfb0XfAJ`Y#z#qPX{o)1i$#LozCF-qfKm2fZayo)p@As_Us2WSa=iht%{Ug=qtr`WA{SHm94Gj1H^o?qb&}n2jx^ zsAiIxu~=d(o}5adpjuzZW|s5hnG9hfMYWvIY?jfRN67UO^>QIQo6Ah+(C|8uNloM+ zFu9V>r5VKk8>125<6v4e!Z-8)zzhHwRJAw?>5Q8(!x5>b?`jRV$ zjGLKKR}Nlximd)Bb?F6g;qSqfm#~}P!y8@$p7T_HH8oHJda6*y+<6AGzem{K1GaZ@ z>pPhBU0^?rW}-rT_gsg|0KV^kS?b<)^{?O#LxI+dgyTF8;cj~$hsxdZE@6Lm;Z$ZIp6v-|UH+2CPjZ_?ry|--lFL`y=BI7<(|U}e z$0)Zd=m;)!ry@Cxg44vc_^UmU%xI=KkO78r@zH#~GexM@fhrleV#WR(lOvA59l+Q4 zDwTTe1zEVHVa`k9CB=9~D_r(b*G7m95t_ze!)-Hv+gGUZ;cxk&=kEs4bs?w-(we|G zMX>h*iMs*777e;H$bmenCkvpoOfCVxBlMA6l!BiqM0}qwA)sxV^`{=GDk2}HD8gJ@z>t05xIKN|BjFOMp69Z zhacTNl5;a#HCuaPYiE0-lXetpcmVQ?vK6&@6>-Xn=`#k;d6!5kW zq&_+f%Y?QcA>8i@{9P??4>MVU^tC$XHVe7~h&A|q zvlwR~xcxj{^$q;;*RYE(;+J0{s=rIr{upN<)L~b~R>x<*sLs+Mu-0CB{&63L`I(#Lx!x132`O6UZE`tP_?$FD~ z4U)qQ9}uhoDtj<7lp&7fP-BJUL^0EUSgH@eZYiK8jOt1k9P#Qq0eH0!Td4?Fbo>=9 zeN``2`TCsKbLX_+P6*QwD%c|omJn@2uzbg#sqv+52deJ`tLj75mT1&atT9?$7mC-1 z0(TWJhh^PonOU^QB;>5SuDsXA0%+c%dPb`V*4u5b2+OijJrr zgQ z@6om+P+3@<-mbjri7;$hZI32rnoXMZSH83QXtOa;yJWX+Hd@?;nOoay%{jSa*RFlE zw|<9Zx-v`lw(fVm^zCkgv6VJhW%JDC%AJ9p8d*Pj`rO0Wv8oWTF)=xQ?Oan1SRc1- z&G$ZblMl9?k0!2s_#LoU`@_eJy`MY>K6&r?jmIB;RI2{v3Dqx-f%|!2I}=;YVmI^T z2Svu+BK=0Lu$;xsq|u{s)OaF3cSyaMMK5Nl7IM_{Im~PhH(wxs4)^5}c`}=r%E4h= zk2YhEP;2F?vk#hfByhCbx z#k&{oH$c}71o!=+*eDxw`LE!%I)`#$k80Y?V={l4%I{ z&Ik#@eK3XZjpbVd8HcaN=Mw=B97Gu-iSB-_Jhrp50~%H&y3W72Oavo zjqZ=9&aZqA{O00!9xp6yp8~t@KlkwA_;xw>VKKP>JlHD%%h{@xY_OF}?-q#A?-xqD zMcVB`Wi4BoOD9*d`PCd@DU+VhP)(&1lj-WIOl~TR96wBqAEFiuq=^i2CWl%oR-FtIg6Xbt30F}ts5Gs!lS*5;$J`N*~a(Hh8G z1DSdg?vCKbbCl6s)kr=yl+CxrGu9xgApp4Jn6^aT5~*$qtu=+8xD z--ml|Cf1*cL;p*@&y><=XSD<@9w9c4t2a;3qZyRN2h1CC?;7x&dh-+palc#v0g()D^Z8CdX+KxW4HiJS|CfEZd#9)#!2Q6!$OeA%b@2P= zsek@D_M20xU!LL~l!C{nz%NV1l?rS*hkcMEtrZEYg}Sw3dLaRfMHt%sOzt42Ri|0C zw0zt-G8kd%i^O|^{Raay!_nq?gV>;GZwisM3>d$5ezCjnDs8yLNw-wYTUzZqobJ3J zye-o2YJ^Iy;fh4x_Tg${)lG+m_7i+-x$JpHwtN#z-{hC9;KOe4`^)UsNn-nX)uWT@ ze>#FbuAfwZpC84Z6stch<{q8^8~NlK)bIJ!ZUMKO&+gsj<{3ON#uZRBxK%R^tw z6(QWmlEGj+7)T%{GVsxKY$O$jLVhfroX$r3sIz(aVllIFgofgMyOdi@7y5&^Rz+^s zXj=^0u9zTen7+=;I*jyEqWM9N?m?ak{y$Bpu#4XU7ylky`zC(zW#Y`Yz|C)CHQ&eU ze~8)9Xlw{~YOq?>c@=YCLU7;b`+k1rbGUa^;@->*-gV>8aQ9q!3io~G4&m;(M1Br; zDBBxfL+4%XKfxQHhsqt?)2eU!Xm7||qfzLJ(hVeugULcqtc0c{dg1N~ln~Ryh1N*X z6UuvnScr0mzwGeSIs6oRfZpb>wFZcmK;9nAHJDWp@xzDped)wd7B-y2b*J*KaJI=0 z*up7Wgt|Tu_nt@Ps|=9rv@Mo_a=tDQ+%__nF!K!~b~g;v2h%OlQcIlF6wNlp(Uv&I z5~qf4O(Z?(Y+D-Lk&gFfgPttVc^LF&k&x`4!`-Xj!C(#;&cjf{nPSu@a=C(9JE~qN zA$sFMgAUXgNlO5j%ma&M)It%vd<5Tmm1ZFz000UCNklszP1W3AS>E2czq$SK&Xe`=Fw=A_GZ_i7ZX5}h zyCbxoAiYiCY^>&n(SPC6#p$8WDpq@q(_Y}^_j&P6j(d$`_x&_OUglNTb^NVRwkcKB zU2JSE)mp!dTV4iZ)zr3&dejYmQOP_wN!nkd|)|GUN2Nu@(e>Uf>lr5<5VpsO;?Pm*~~ZS@a|x+o~_%>*TY4{ zeFUrd3U%#8vg$?h%1hYgm$Ay1@Jrvpt6qWP9W?$FYdwSS_ke`p?!4-4+xr1#BO1mT9lV{ypJNLf;?8gr+Z@K^2e(B@G!<|jp03LL?Z2pWZc1` zGeEEh3icowV%-)fIYK0Run51>XrdcUs@6z;AWbupB@borgNM0}M9GOdysI2hj4hIF z3TGNZnA$+qy&&LDVq24iwp2}h2yThwY6I!oK&B;3-4dZ{iB>nqs+!{|OCs5lL|GFl zTQcEFAv}l3_6(vk6YuoO_O1*_d2ezi8}HA?dcAOmWFN^zeP*VL@!2wJu8dkgC5~pR zt%0D{K-}{I)-ZA`hg>}h7E5sm_qAi#Od&R3M64Y}Q=B%Q0qZAm2=}Ej4Ek&-Hd@4c zmHVH2%N!{81N#CSg8T2kitoeymnSi#iz~3l<@jz1y;H2-D5O^MREt^k+#z;4S(;1~ zC!?8}7;Y-Yr#HoaK9U_u6o=w`hogKZqs{HX8b_es<%cT78%e>T4ZWfExyR~jINfzl zbDk65XSjD*_AQo!euks3h*Xur+z3)vg@SuARNW!M_IF_9ZPl_xz1K!P>;R9?skV#B z$4977juVjY5bhry#~|6!$i3slUMaqrhi~T*dqwK|MKpx_TDCBgq?$?~Rt_)%Fjzxpz`{t~$QU99SR zp!$CSbw2{mcd?F3psxz_R}c9bsnOF=ad*dZLrGF^jN}U7?S7IC zUV{Z&C~uEsT`{PUuR9XK-4iN0gGEP(Xb+XG!J;iha)xVNVKU@I@6t|@g#8WSk!065yRS|=$3H0F-&ERA=^?R*@gBr*&0JTIxLP_28ho}_|qPa)l@WZPk?J%jAbBs(&&_QRm_5ZJ$gh=+Xd&3p>?pbftfWauL&L4#l<9X!jacr>^ZLqH&$7hRh$oG|_B!v6gGhpo*V)YoY zRE`cq9l-s-{?_a%+<*T(_S-KJzdD8g;usF${^$s{SEAY~q}K9@rEJyQA@x);I~K={ zMhRn4#*sK-Dp5BPDEFrr2g8)n2;Y%NaU@vZYt;0hc3=jpf`*Q|wfaucXctWu(O4%b zH%0ALLAu0Akn$h!;ssHxl!;qDbWNCW$qcTTz`Zmu@DJ4PJ>fwI`KS|r*ar6AAvbc! zCnfC9E9j4*azBMXK7m29KRJm*xbJ%5zE?;;C}APoH}kpW!~A4CF`uNqU!XiH5gwMY z_sgi=GWAvoy;j7o7Bb6)^lBjoeWie1%3~ID*!e7a=CFD)jhsvoM&j9_SY{}O8&A}Z z#+qAw(2NdGps_pJ&}5)23OSy@>=qig3bl(lpye32{&noi%VgC{MCErd=+!Ud*P(L% z9=P#+G$7mhCh(jG=%f;wrAMJ!b#Ge6eU5zh=z{7i2 zGV4g8?a8WrcS287wWd+~aPK%wwx#2qGz|G6yzLOykwHMdqvDwyFqDr$z7OZ1ZPn=# z3SP(ZC`UA?_a_?sq=rD?h@>X+iPhs^AMP6`@c9yQDjzIV;H#&=>a$?&Iehgbv3L|) zDhCH}Kd`?wdkXj8eHlQw|N0pMYGera2c_VCF|k>QLy5YSMa`tCA=gGC`Jr%OF~mF& zLG{MN8^s>Pjv91B0Y+yK(Gn!M&6;k5v0Y=ZYjqAEeX~|T-D5N+m&R<>80%$yjjX*P zX|G8d=$B+|m7cm6K-WcTE}O_J2C6Yfwe+_1v7LF?1s=77CvEuNTdK88@<|cyJ)gA3j4qK1uGBU>o_w!(w)?nAs_yH}bf}bZ$JBm`hYWEH*tUlOWt5lo9vK zh^=CBITu^Z!|VIz?UmT)aQE{4Dco)6 zkaBN$3vc)t-ta1L{iDkE0@;*G-BDC`bV8khc7-y132c7?(-FzG_%R6XA(A~zY6*V| zcf|K-26}5GN~1f%d3yvxKfF4lWJjdr3e!L#-{g-*Vp$`wwj`=EjqFH4MUZXDoF|Ee zS9hG+6-#;&)a}W1dphSzQbBhlQ0^2c)k%AT+8Reevb$5b)>PJ&#<){yR|@5IwL4Yi zNmqH{j;@|GqBRw7O(k2?33nRaeu(JGLVWM@!X5fx7OHulDkewr@%~IzQwXRJpc{g8 zO~IHmikvJU5!}6n@EfOyg;H`n9}W6gJ_X4R*1troK11%$?K^<`f&H!7{{xFr%qwsX R3C{ok002ovPDHLkV1g1&k$(UH literal 0 HcmV?d00001 diff --git a/test/e2e/media/image/artifacts/image.tif b/test/e2e/media/image/artifacts/image.tif new file mode 100644 index 0000000000000000000000000000000000000000..d54802d4a0c92ac3f20bcbc2cfe48bc322089656 GIT binary patch literal 447099 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�{A1w)mgNsXt7~r|o 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 z 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

    3Ia+B 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]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�U6^<@G>APe_OjT8*7kq!!a{)k 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 literal 0 HcmV?d00001 diff --git a/test/e2e/media/image/artifacts/image.webp b/test/e2e/media/image/artifacts/image.webp new file mode 100644 index 0000000000000000000000000000000000000000..c7239776d7fdae8665e32f1b2f215fc7ba15654b GIT binary patch literal 20780 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 { + const user = createUser(app); + const publicMedia = fakedb.createImageMedia(app, { isPublic: true }); + const nonPublicMedia = fakedb.createImageMedia(app, { isPublic: false }); + const publicMediaInError = fakedb.createImageMedia(app, { isPublic: true }); + + beforeAll(() => { + mkdirSync(`${app().get(ConfigModule).MEDIA_UPLOAD_DIR}/image`, { recursive: true }); + cpSync( + `test/e2e/media/image/artifacts/image.webp`, + `${app().get(ConfigModule).MEDIA_UPLOAD_DIR}/image/${publicMedia.id}.webp`, + ); + cpSync( + `test/e2e/media/image/artifacts/image.webp`, + `${app().get(ConfigModule).MEDIA_UPLOAD_DIR}/image/${nonPublicMedia.id}.webp`, + ); + }); + + afterAll(() => { + rmSync(app().get(ConfigModule).MEDIA_UPLOAD_DIR.split('/')[0], { recursive: true }); + }); + + it('should return a 404 as the media does not exist', () => + pactum.spec().get(`/media/image/${Dummies.UUID}`).expectAppError(ERROR_CODE.NO_SUCH_MEDIA, Dummies.UUID)); + + it('should return a 401 as the media is not public', () => + pactum.spec().get(`/media/image/${nonPublicMedia.id}`).expectAppError(ERROR_CODE.NOT_LOGGED_IN)); + + it('should return a 200 and the media (public)', () => + pactum + .spec() + .get(`/media/image/${publicMedia.id}`) + .expectStatus(200) + .expectHeader('content-type', 'image/webp') + .expectBodyContains('RIFF')); + + it('should return a 200 and the media (not public)', () => + pactum + .spec() + .withBearerToken(user.token) + .get(`/media/image/${nonPublicMedia.id}`) + .expectStatus(200) + .expectHeader('content-type', 'image/webp') + .expectBodyContains('RIFF')); + + it('should return a 503 as there is an error reading the file', () => + pactum.spec().get(`/media/image/${publicMediaInError.id}`).expectAppError(ERROR_CODE.SERVER_DISK_ERROR)); +}); diff --git a/test/e2e/media/image/upload-media.e2e-spec.ts b/test/e2e/media/image/upload-media.e2e-spec.ts new file mode 100644 index 00000000..7fdae1ab --- /dev/null +++ b/test/e2e/media/image/upload-media.e2e-spec.ts @@ -0,0 +1,140 @@ +import { mkdirSync, rmSync } from 'fs'; +import { ERROR_CODE } from '../../../../src/exceptions'; +import { createUser } from '../../../utils/fakedb'; +import { e2eSuite, JsonLike } from '../../../utils/test_utils'; +import { ConfigModule } from '../../../../src/config/config.module'; +import * as pactum from 'pactum'; + +export const UploadMediaE2ESpec = e2eSuite('POST /media/image', (app) => { + const user = createUser(app, { permissions: ['API_UPLOAD_MEDIA'] }); + const unauthorizedUser = createUser(app); + + const params = { + public: true, + preset: 'AVATAR', + rotation: 1, + effort: 2, + quality: 100, + width: 150, + height: 150, + }; + + it('should return a 401 as user is not authenticated', () => { + return pactum.spec().post(`/media/image`).expectAppError(ERROR_CODE.NOT_LOGGED_IN); + }); + + it('should fail as the user does not have the required permissions', () => + pactum + .spec() + .withBearerToken(unauthorizedUser.token) + .post(`/media/image`) + .withQueryParams(params) + .withFile('file', `test/e2e/media/image/artifacts/image.png`) + .expectAppError(ERROR_CODE.FORBIDDEN_NOT_ENOUGH_API_PERMISSIONS, 'API_UPLOAD_MEDIA')); + + it('should fail as directory does not exist', () => + pactum + .spec() + .withBearerToken(user.token) + .post(`/media/image`) + .withQueryParams(params) + .withFile('file', `test/e2e/media/image/artifacts/image.webp`) + .expectAppError(ERROR_CODE.SERVER_DISK_ERROR)); + + describe('should create the annal', () => { + beforeAll(() => { + mkdirSync(`${app().get(ConfigModule).MEDIA_UPLOAD_DIR}/image`, { recursive: true }); + }); + + afterAll(() => { + rmSync(app().get(ConfigModule).MEDIA_UPLOAD_DIR.split('/')[0], { recursive: true }); + }); + + const testFunction = (fileExt: 'png' | 'jpg' | 'avif' | 'tif' | 'webp', rotation: 0 | 1 | 2 | 3) => async () => { + return pactum + .spec() + .withBearerToken(user.token) + .post(`/media/image`) + .withQueryParams({ ...params, rotation }) + .withFile('file', `test/e2e/media/image/artifacts/image.${fileExt}`) + .expectImageMedia({ + width: 256, + height: 256, + isPublic: params.public, + preset: params.preset, + size: JsonLike.INT, + id: JsonLike.UUID, + }); + }; + + it('from a tiff', testFunction('tif', 0)); + it('from a png', testFunction('png', 1)); + it('from a jpg', testFunction('jpg', 2)); + it('from a webp', testFunction('webp', 3)); + it('from a avif', testFunction('avif', 0)); + + it('should upscale to 1080p', async () => { + return pactum + .spec() + .withBearerToken(user.token) + .post(`/media/image`) + .withQueryParams({ + ...params, + preset: 'CUSTOM', + width: 1920, + height: 1080, + }) + .withFile('file', `test/e2e/media/image/artifacts/image.png`) + .expectImageMedia({ + width: 1920, + height: 1080, + isPublic: params.public, + preset: 'CUSTOM', + size: JsonLike.INT, + id: JsonLike.UUID, + }); + }); + + it('should not upscale to more than 1080p', async () => { + return pactum + .spec() + .withBearerToken(user.token) + .post(`/media/image`) + .withQueryParams({ + ...params, + preset: 'CUSTOM', + width: 1921, + height: 1081, + }) + .withFile('file', `test/e2e/media/image/artifacts/image.png`) + .expectAppError(ERROR_CODE.PARAM_TOO_HIGH, 'height, width'); + }); + + it('not from a gif', async () => { + return pactum + .spec() + .withBearerToken(user.token) + .post(`/media/image`) + .withQueryParams(params) + .withFile('file', `test/e2e/media/image/artifacts/image.gif`) + .expectAppError(ERROR_CODE.FILE_INVALID_TYPE, 'image/png, image/jpeg, image/webp, image/avif, image/tiff'); + }); + it('not from a fake png', async () => { + return pactum + .spec() + .withBearerToken(user.token) + .post(`/media/image`) + .withQueryParams(params) + .withFile('file', `test/e2e/media/image/artifacts/image.gif.png`) + .expectAppError(ERROR_CODE.FILE_INVALID_TYPE, 'image/png, image/jpeg, image/webp, image/avif, image/tiff'); + }); + it('but not allow missing files', async () => { + return pactum + .spec() + .withBearerToken(user.token) + .post(`/media/image`) + .withQueryParams(params) + .expectAppError(ERROR_CODE.NO_FILE_PROVIDED); + }); + }); +}); diff --git a/test/e2e/media/index.ts b/test/e2e/media/index.ts new file mode 100644 index 00000000..01700cc3 --- /dev/null +++ b/test/e2e/media/index.ts @@ -0,0 +1,10 @@ +import { E2EAppProvider } from '../../utils/test_utils'; +import { GetMediaE2ESpec } from './image/get-media.e2e-spec'; +import { UploadMediaE2ESpec } from './image/upload-media.e2e-spec'; + +export default function MediaE2ESpec(app: E2EAppProvider) { + describe('Media', () => { + GetMediaE2ESpec(app); + UploadMediaE2ESpec(app); + }); +} diff --git a/test/e2e/users/get-user_assos-e2e-spec.ts b/test/e2e/users/get-user_assos-e2e-spec.ts index ab1bbce3..94200bea 100644 --- a/test/e2e/users/get-user_assos-e2e-spec.ts +++ b/test/e2e/users/get-user_assos-e2e-spec.ts @@ -59,6 +59,7 @@ const GetUserAssociationE2ESpec = e2eSuite('GET /users/:userId/associations', (a asso: { ...omit(membership.asso, 'descriptionShortTranslation'), shortDescription: membership.asso.descriptionShortTranslation.fr, + logo: membership.asso.logo ? `/media/image/${membership.asso.logo.id}.webp` : null, }, })); diff --git a/test/e2e/users/update-profile-e2e-spec.ts b/test/e2e/users/update-profile-e2e-spec.ts index 56fba51b..b027e18d 100644 --- a/test/e2e/users/update-profile-e2e-spec.ts +++ b/test/e2e/users/update-profile-e2e-spec.ts @@ -32,7 +32,7 @@ const UpdateProfile = e2eSuite('PATCH /users/current', (app) => { displayAddress: 'ALL_PUBLIC', }) .$expectRegexableJson({ - avatar: user.infos.avatar, + avatar: user.infos.avatarMediaId ? `/media/image/${user.infos.avatarMediaId}.webp` : null, birthday: user.infos.birthday, discord: user.socialNetwork.discord, facebook: 'fbProfile', diff --git a/test/utils/fakedb.ts b/test/utils/fakedb.ts index c368ac9b..99a8c397 100644 --- a/test/utils/fakedb.ts +++ b/test/utils/fakedb.ts @@ -34,12 +34,13 @@ import { RawUserPrivacy, RawApiKey, RawApiApplication, + RawImageMedia, } from '../../src/prisma/types'; import { faker } from '@faker-js/faker'; import { AuthService } from '../../src/auth/auth.service'; import { PrismaService } from '../../src/prisma/prisma.service'; import { AppProvider } from './test_utils'; -import { Permission, Sex, TimetableEntryType, UserType } from '@prisma/client'; +import { ImageMediaPreset, Permission, Sex, TimetableEntryType, UserType } from '@prisma/client'; import { CommentStatus } from '../../src/ue/comments/interfaces/comment.interface'; import { UeAnnalFile } from '../../src/ue/annals/interfaces/annal.interface'; import { omit, PermissionManager, pick, translationSelect } from '../../src/utils'; @@ -118,6 +119,7 @@ export type FakeHomepageWidget = Partial; export type FakeApiApplication = Partial> & { owner: { id: string; firstName: string; lastName: string }; }; +export type FakeImageMedia = Partial; export interface FakeEntityMap { assoMembership: { @@ -245,6 +247,10 @@ export interface FakeEntityMap { params: CreateApiApplicationParameter; deps: { owner: FakeUser }; }; + imageMedia: { + entity: FakeImageMedia; + params: CreateImageMediaParameter; + }; } export type CreateUserParameters = FakeUser & { password: string }; @@ -1090,6 +1096,19 @@ export const createApplication = entityFaker( }), ); +export type CreateImageMediaParameter = Omit; +export const createImageMedia = entityFaker( + 'imageMedia', + { + height: faker.number.int({ min: 100, max: 4000 }), + width: faker.number.int({ min: 100, max: 4000 }), + isPublic: faker.datatype.boolean, + size: faker.number.int({ min: 1000, max: 10_000_000 }), + preset: faker.helpers.enumValue(ImageMediaPreset), + }, + async (app, params) => app().get(PrismaService).imageMedia.create({ data: params }), +); + /** * The return type of a fake function, either Promise or FakeEntity depending on whether OnTheFly is true or false */ diff --git a/test/utils/test_utils.ts b/test/utils/test_utils.ts index d338062d..2aa4e471 100644 --- a/test/utils/test_utils.ts +++ b/test/utils/test_utils.ts @@ -3,7 +3,6 @@ import { INestApplication } from '@nestjs/common'; import { TestingModule } from '@nestjs/testing'; import { faker } from '@faker-js/faker'; import { ConfigModule } from '../../src/config/config.module'; -import { DMMF } from '@prisma/client/runtime/library'; import { clearUniqueValues, generateDefaultApplication } from '../../prisma/seed/utils'; import { PrismaClient } from '@prisma/client'; @@ -69,6 +68,7 @@ export const unitSuite = suite; export const JsonLike = { STRING: Symbol('string'), UUID: Symbol('uuid'), + INT: Symbol('int'), DATE: /^\d{4}-[01]\d-[0-3]\d(?:T[0-2]\d:[0-5]\d:[0-5]\d[.,]\d+Z)?$/, // dateTime from pactum-matchers doesn't ms }; @@ -81,46 +81,9 @@ export const Dummies = { * @param prisma The prisma service instance. */ export async function cleanDb(prisma: PrismaService | PrismaClient) { - // We can't delete each table one by one, because of foreign key constraints - const tablesCleared = [] as string[]; + await prisma.$executeRawUnsafe(`SET FOREIGN_KEY_CHECKS = 0`); // _runtimeDataModel.models basically contains a JS-ified version of the schema.prisma - for (const modelName of Object.keys((prisma as any)._runtimeDataModel.models) as string[]) { - // Check the table hasn't been already cleaned - if (tablesCleared.includes(modelName)) continue; - await clearTableWithCascade(prisma, modelName, tablesCleared); - } -} - -/** - * Clears a table, and all the tables that have a foreign key constraint on it. - * This should only be used by {@link cleanDb}. - * @param prisma The prisma service instance. - * @param modelName The name of the model to clear. - * @param tablesCleared The list of tables that have already been cleared. - */ -async function clearTableWithCascade(prisma: PrismaService | PrismaClient, modelName: string, tablesCleared: string[]) { - // No, the full type of the model is not even exported :( - // (type RuntimeDataModel in prisma/client/runtime/library) - const model: Omit = (prisma as any)._runtimeDataModel.models[modelName]; - for (const field of Object.values(model.fields)) { - // First, check that the field is a relation, and not a normal String, or Int, or any normal SQL type - // We then check that this is not a self-referencing relation, to avoid infinite loops - // The way we verify that this is not the part of the relation that is referenced is by checking the length of relationFromFields : if it has a length, the table contains the FK, if not, that's the other table - // Plot twist : Prisma allows for ManyToMany relations. That means that, to avoid infinitely looping, we verify the other relation in the opposite direction (with the same name) holds the FK - if ( - field.kind === 'object' && - field.type !== modelName && - field.relationFromFields.length === 0 && - !tablesCleared.includes(field.type) && - (prisma as any)._runtimeDataModel.models[field.type].fields.find( - (f: DMMF.Field) => f.relationName === field.relationName, - ).relationFromFields.length !== 0 - ) { - // After all these checks, simply delete rows from the other table first to avoid foreign key constraint errors - await clearTableWithCascade(prisma, field.type, tablesCleared); - } - } - // And finally, once it's safe to do it, delete the rows, and mark it as cleared - await prisma[modelName].deleteMany(); - tablesCleared.push(modelName); + for (const modelName of Object.keys((prisma as any)._runtimeDataModel.models) as string[]) + await prisma[modelName].deleteMany(); + await prisma.$executeRawUnsafe(`SET FOREIGN_KEY_CHECKS = 1`); } diff --git a/tsconfig.json b/tsconfig.json index 12c388d5..0521e04f 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -6,7 +6,7 @@ "emitDecoratorMetadata": true, "experimentalDecorators": true, "allowSyntheticDefaultImports": true, - "target": "esnext", + "target": "es2022", "sourceMap": true, "outDir": "./dist", "baseUrl": "./", From 13666b64c3fbeedebf06a23a4a092f593b758303 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Fri, 17 Oct 2025 11:14:49 +0200 Subject: [PATCH 04/18] fix(media): add cache control on media and fix tests after rebase --- src/media/image/imagemedia.controller.ts | 1 + test/e2e/media/image/upload-media.e2e-spec.ts | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/media/image/imagemedia.controller.ts b/src/media/image/imagemedia.controller.ts index 0fb0d723..2d1d8882 100644 --- a/src/media/image/imagemedia.controller.ts +++ b/src/media/image/imagemedia.controller.ts @@ -30,6 +30,7 @@ export class ImageMediaController { if (!media.isPublic && !user) throw new AppException(ERROR_CODE.NOT_LOGGED_IN); const stream = this.imageMediaService.readMediaFromDisk(mediaId); response.setHeader('Content-Type', 'image/webp'); + response.setHeader('Cache-Control', `${media.isPublic ? 'public' : 'private'}, max-age=31536000, immutable`); // 1 year stream.pipe(response); stream.on('error', () => { stream.close(); diff --git a/test/e2e/media/image/upload-media.e2e-spec.ts b/test/e2e/media/image/upload-media.e2e-spec.ts index 7fdae1ab..aa85d376 100644 --- a/test/e2e/media/image/upload-media.e2e-spec.ts +++ b/test/e2e/media/image/upload-media.e2e-spec.ts @@ -1,17 +1,19 @@ +import { ImageMediaPreset } from '@prisma/client'; import { mkdirSync, rmSync } from 'fs'; import { ERROR_CODE } from '../../../../src/exceptions'; import { createUser } from '../../../utils/fakedb'; import { e2eSuite, JsonLike } from '../../../utils/test_utils'; import { ConfigModule } from '../../../../src/config/config.module'; +import { PermissionManager } from '../../../../src/utils'; import * as pactum from 'pactum'; export const UploadMediaE2ESpec = e2eSuite('POST /media/image', (app) => { - const user = createUser(app, { permissions: ['API_UPLOAD_MEDIA'] }); + const user = createUser(app, { permissions: new PermissionManager().with('API_UPLOAD_MEDIA') }); const unauthorizedUser = createUser(app); const params = { public: true, - preset: 'AVATAR', + preset: ImageMediaPreset.AVATAR, rotation: 1, effort: 2, quality: 100, From 7b180e8f21692133c7f7682f23b99a73fda82a17 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Fri, 17 Oct 2025 21:03:34 +0200 Subject: [PATCH 05/18] fix(media): remove application header requirement for getting public media --- src/auth/decorator/index.ts | 1 + .../skip-application-check.decorator.ts | 3 +++ src/auth/guard/jwt.guard.ts | 22 ++++++++++++------- src/media/image/imagemedia.controller.ts | 5 +++-- test/e2e/media/image/get-media.e2e-spec.ts | 10 ++++----- 5 files changed, 26 insertions(+), 15 deletions(-) create mode 100644 src/auth/decorator/skip-application-check.decorator.ts diff --git a/src/auth/decorator/index.ts b/src/auth/decorator/index.ts index 4b609c58..90ff7cc2 100644 --- a/src/auth/decorator/index.ts +++ b/src/auth/decorator/index.ts @@ -2,3 +2,4 @@ export * from './get-user.decorator'; export * from './require-permission.decorator'; export * from './public.decorator'; export * from './require-role.decorator'; +export * from './skip-application-check.decorator'; diff --git a/src/auth/decorator/skip-application-check.decorator.ts b/src/auth/decorator/skip-application-check.decorator.ts new file mode 100644 index 00000000..3b13bef1 --- /dev/null +++ b/src/auth/decorator/skip-application-check.decorator.ts @@ -0,0 +1,3 @@ +import { Reflector } from '@nestjs/core'; + +export const SkipApplicationCheck = Reflector.createDecorator(); diff --git a/src/auth/guard/jwt.guard.ts b/src/auth/guard/jwt.guard.ts index 43eb79e0..5235efb7 100644 --- a/src/auth/guard/jwt.guard.ts +++ b/src/auth/guard/jwt.guard.ts @@ -1,27 +1,33 @@ import { ExecutionContext, Injectable } from '@nestjs/common'; import { Reflector } from '@nestjs/core'; import { AuthGuard } from '@nestjs/passport'; -import { IsPublic } from '../decorator'; +import { IsPublic, SkipApplicationCheck } from '../decorator'; import { AppException, ERROR_CODE } from '../../exceptions'; import { RequestAuthData } from '../interfaces/request-auth-data.interface'; import { PrismaService } from '../../prisma/prisma.service'; import { PermissionManager } from '../../utils'; +import { RawApiApplication } from '../../prisma/types'; @Injectable() export class JwtGuard extends AuthGuard('jwt') { - constructor(private reflector: Reflector, private prisma: PrismaService) { + constructor( + private reflector: Reflector, + private prisma: PrismaService, + ) { super(); } async canActivate(context: ExecutionContext) { const request = context.switchToHttp().getRequest() as { user: RequestAuthData }; + const canSkipApplicationHeader = this.reflector.get(SkipApplicationCheck, context.getHandler()); const applicationId = context.switchToHttp().getRequest().headers['x-application']; - if (!applicationId) throw new AppException(ERROR_CODE.APPLICATION_HEADER_MISSING); - const application = await this.prisma.apiApplication.findUnique({ - where: { id: applicationId }, - }); - if (!application) { - throw new AppException(ERROR_CODE.NO_SUCH_APPLICATION, applicationId); + let application: RawApiApplication | null = null; + if (!applicationId && !canSkipApplicationHeader) throw new AppException(ERROR_CODE.APPLICATION_HEADER_MISSING); + else if (applicationId) { + application = await this.prisma.apiApplication.findUnique({ + where: { id: applicationId }, + }); + if (!application) throw new AppException(ERROR_CODE.NO_SUCH_APPLICATION, applicationId); } // Check whether the user is logged in let loggedIn = true; diff --git a/src/media/image/imagemedia.controller.ts b/src/media/image/imagemedia.controller.ts index 2d1d8882..6141ed9f 100644 --- a/src/media/image/imagemedia.controller.ts +++ b/src/media/image/imagemedia.controller.ts @@ -2,7 +2,7 @@ import { Controller, Get, Post, Query, Response } from '@nestjs/common'; import { ApiConsumes, ApiCreatedResponse, ApiOkResponse, ApiOperation, ApiTags } from '@nestjs/swagger'; import { Response as ExpressResponse } from 'express'; import { FileSize, MulterWithMime, UploadRoute, UserFile } from '../../upload.interceptor'; -import { GetUser, IsPublic, RequireApiPermission } from '../../auth/decorator'; +import { GetUser, IsPublic, RequireApiPermission, SkipApplicationCheck } from '../../auth/decorator'; import { AppException, ERROR_CODE } from '../../exceptions'; import { ApiAppErrorResponse } from '../../app.dto'; import { ImageMediaService } from './imagemedia.service'; @@ -17,7 +17,8 @@ import ImageMediaUploadResDto from './dto/res/imagemedia-upload-res.dto'; export class ImageMediaController { constructor(readonly imageMediaService: ImageMediaService) {} - @Get('/:mediaId') + @Get('/:mediaId.webp') + @SkipApplicationCheck() @IsPublic() @ApiOperation({ description: 'Retrieve a media by its id.' }) @ApiOkResponse({ description: 'The media is contained in the body of the response' }) diff --git a/test/e2e/media/image/get-media.e2e-spec.ts b/test/e2e/media/image/get-media.e2e-spec.ts index 565a9063..09ed3732 100644 --- a/test/e2e/media/image/get-media.e2e-spec.ts +++ b/test/e2e/media/image/get-media.e2e-spec.ts @@ -29,15 +29,15 @@ export const GetMediaE2ESpec = e2eSuite('GET /media/image/:mediaId', (app) => { }); it('should return a 404 as the media does not exist', () => - pactum.spec().get(`/media/image/${Dummies.UUID}`).expectAppError(ERROR_CODE.NO_SUCH_MEDIA, Dummies.UUID)); + pactum.spec().get(`/media/image/${Dummies.UUID}.webp`).expectAppError(ERROR_CODE.NO_SUCH_MEDIA, Dummies.UUID)); it('should return a 401 as the media is not public', () => - pactum.spec().get(`/media/image/${nonPublicMedia.id}`).expectAppError(ERROR_CODE.NOT_LOGGED_IN)); + pactum.spec().get(`/media/image/${nonPublicMedia.id}.webp`).expectAppError(ERROR_CODE.NOT_LOGGED_IN)); it('should return a 200 and the media (public)', () => pactum .spec() - .get(`/media/image/${publicMedia.id}`) + .get(`/media/image/${publicMedia.id}.webp`) .expectStatus(200) .expectHeader('content-type', 'image/webp') .expectBodyContains('RIFF')); @@ -46,11 +46,11 @@ export const GetMediaE2ESpec = e2eSuite('GET /media/image/:mediaId', (app) => { pactum .spec() .withBearerToken(user.token) - .get(`/media/image/${nonPublicMedia.id}`) + .get(`/media/image/${nonPublicMedia.id}.webp`) .expectStatus(200) .expectHeader('content-type', 'image/webp') .expectBodyContains('RIFF')); it('should return a 503 as there is an error reading the file', () => - pactum.spec().get(`/media/image/${publicMediaInError.id}`).expectAppError(ERROR_CODE.SERVER_DISK_ERROR)); + pactum.spec().get(`/media/image/${publicMediaInError.id}.webp`).expectAppError(ERROR_CODE.SERVER_DISK_ERROR)); }); From af4187caf290dc6d134d456d02c507d37a7de994 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Sun, 19 Oct 2025 18:18:57 +0200 Subject: [PATCH 06/18] fix(asso): remove lexical requirement for descriptionShort --- src/assos/assos.controller.ts | 3 --- src/assos/assos.service.ts | 6 ++---- src/assos/dto/req/assos-update-req.dto.ts | 4 ++-- test/e2e/assos/update-asso.e2e-spec.ts | 10 +--------- 4 files changed, 5 insertions(+), 18 deletions(-) diff --git a/src/assos/assos.controller.ts b/src/assos/assos.controller.ts index 375f9ed9..636339c0 100644 --- a/src/assos/assos.controller.ts +++ b/src/assos/assos.controller.ts @@ -83,9 +83,6 @@ export class AssosController { for (const key in body.description) if (body.description[key] && !isValidLexicalContent(body.description[key])) throw new AppException(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, `description.${key}`); - for (const key in body.descriptionShort) - if (body.descriptionShort[key] && !isValidLexicalContent(body.descriptionShort[key])) - throw new AppException(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, `descriptionShort.${key}`); if (body.logo) { const media = await this.mediaService.getMedia(body.logo); if (!media) throw new AppException(ERROR_CODE.NO_SUCH_MEDIA, body.logo); diff --git a/src/assos/assos.service.ts b/src/assos/assos.service.ts index 3bef6f1d..9d179a3a 100644 --- a/src/assos/assos.service.ts +++ b/src/assos/assos.service.ts @@ -95,14 +95,12 @@ export class AssosService { ...(update.website ? { website: update.website } : {}), }, }); - if (update.description || update.descriptionShort) { + if (update.description) { // Cleanup unused images const regex = /"src":"https:\/\/[^"]+\/media\/image\/([^/]+)\.webp"/g; const imagesInUse = new Set(); for (const field in updated.descriptionTranslation) - for (const match of (updated.descriptionTranslation[field]).matchAll(regex)) imagesInUse.add(match[1]); - for (const field in updated.descriptionShortTranslation) - for (const match of (updated.descriptionShortTranslation[field]).matchAll(regex)) + for (const match of (updated.descriptionTranslation[field])?.matchAll(regex) ?? []) imagesInUse.add(match[1]); const currentImages = new Set( ( diff --git a/src/assos/dto/req/assos-update-req.dto.ts b/src/assos/dto/req/assos-update-req.dto.ts index c962cce3..3307a6a6 100644 --- a/src/assos/dto/req/assos-update-req.dto.ts +++ b/src/assos/dto/req/assos-update-req.dto.ts @@ -24,13 +24,13 @@ export default class AssosUpdateReqDto { logo?: string; @IsOptional() - @ValidateNested() @Type(() => TranslatedTextDto) + @ValidateNested() descriptionShort?: TranslatedTextDto; @IsOptional() - @ValidateNested() @Type(() => TranslatedTextDto) + @ValidateNested() description?: TranslatedTextDto; @IsOptional() diff --git a/test/e2e/assos/update-asso.e2e-spec.ts b/test/e2e/assos/update-asso.e2e-spec.ts index 0b5e85e5..be58500c 100644 --- a/test/e2e/assos/update-asso.e2e-spec.ts +++ b/test/e2e/assos/update-asso.e2e-spec.ts @@ -36,7 +36,7 @@ const UpdateAssoE2ESpec = e2eSuite('PATCH /assos/:id', (app) => { phoneNumber: '+33325000000', website: 'https://www.utt.fr', description: { fr: lexicalText }, - descriptionShort: { fr: lexicalText }, + descriptionShort: { fr: 'some description' }, }; it('should return 403 as user is not authenticated', () => @@ -74,14 +74,6 @@ const UpdateAssoE2ESpec = e2eSuite('PATCH /assos/:id', (app) => { .withBody({ ...validBody, description: { fr: nonLexicalText } }) .expectAppError(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, 'description.fr')); - it('should return a 401 as descriptionShort is non lexical', () => - pactum - .spec() - .withBearerToken(userAllowed.token) - .patch(`/assos/${asso.id}`) - .withBody({ ...validBody, descriptionShort: { fr: nonLexicalText } }) - .expectAppError(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, 'descriptionShort.fr')); - it('should return a 404 as media does not exist', () => pactum .spec() From 4c41350dc4fdc8a02fd5b4632b76c41852b7472c Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Wed, 22 Oct 2025 02:27:39 +0200 Subject: [PATCH 07/18] feat: add lexical rendering in api * missing : tables, nested list styles, checklists --- package.json | 8 ++ pnpm-lock.yaml | 179 +++++++++++++++++++++++++ src/assos/assos.controller.ts | 6 +- src/assos/assos.module.ts | 3 +- src/lexical/lexical.module.ts | 96 +++++++++++++ src/lexical/nodes/ColorTextNode.ts | 63 +++++++++ src/lexical/nodes/ImageNode.ts | 91 +++++++++++++ src/lexical/nodes/NodeStyleInjector.ts | 36 +++++ src/lexical/nodes/index.ts | 79 +++++++++++ src/utils.ts | 15 --- tsconfig.json | 4 +- 11 files changed, 561 insertions(+), 19 deletions(-) create mode 100644 src/lexical/lexical.module.ts create mode 100644 src/lexical/nodes/ColorTextNode.ts create mode 100644 src/lexical/nodes/ImageNode.ts create mode 100644 src/lexical/nodes/NodeStyleInjector.ts create mode 100644 src/lexical/nodes/index.ts diff --git a/package.json b/package.json index 44575968..0ecb4f52 100644 --- a/package.json +++ b/package.json @@ -37,6 +37,14 @@ }, "dependencies": { "@fast-csv/parse": "^5.0.2", + "@lexical/code": "^0.37.0", + "@lexical/extension": "^0.37.0", + "@lexical/headless": "^0.37.0", + "@lexical/html": "^0.37.0", + "@lexical/link": "^0.37.0", + "@lexical/list": "^0.37.0", + "@lexical/rich-text": "^0.37.0", + "@lexical/table": "^0.37.0", "@nestjs/axios": "^4.0.0", "@nestjs/common": "^11.0.11", "@nestjs/config": "^4.0.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d9f87ac1..e4038310 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -11,6 +11,30 @@ importers: '@fast-csv/parse': specifier: ^5.0.2 version: 5.0.2 + '@lexical/code': + specifier: ^0.37.0 + version: 0.37.0 + '@lexical/extension': + specifier: ^0.37.0 + version: 0.37.0 + '@lexical/headless': + specifier: ^0.37.0 + version: 0.37.0 + '@lexical/html': + specifier: ^0.37.0 + version: 0.37.0 + '@lexical/link': + specifier: ^0.37.0 + version: 0.37.0 + '@lexical/list': + specifier: ^0.37.0 + version: 0.37.0 + '@lexical/rich-text': + specifier: ^0.37.0 + version: 0.37.0 + '@lexical/table': + specifier: ^0.37.0 + version: 0.37.0 '@nestjs/axios': specifier: ^4.0.0 version: 4.0.0(@nestjs/common@11.1.2(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(axios@1.8.3)(rxjs@7.8.2) @@ -834,6 +858,42 @@ packages: '@jridgewell/trace-mapping@0.3.9': resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + '@lexical/clipboard@0.37.0': + resolution: {integrity: sha512-hRwASFX/ilaI5r8YOcZuQgONFshRgCPfdxfofNL7uruSFYAO6LkUhsjzZwUgf0DbmCJmbBADFw15FSthgCUhGA==} + + '@lexical/code@0.37.0': + resolution: {integrity: sha512-ZXA4j/S8yLrxjrTnEp39VeDMp4Rd8bLYUlT4Buy1MQlS1WafxOiMhNQJG7k0BP/pO96YPkAebpA81ATKJL0IgA==} + + '@lexical/dragon@0.37.0': + resolution: {integrity: sha512-iC4OKivEPtt7cGVSwZylLfz5T7Oqr9q9EOosS6E/byMyoqwkYWGjXn/qFiwIv1Xo3+G19vhfChi/+ZcYLXpHPw==} + + '@lexical/extension@0.37.0': + resolution: {integrity: sha512-Z58f2tIdz9bn8gltUu5cVg37qROGha38dUZv20gI2GeNugXAkoPzJYEcxlI1D/26tkevJ/7VaFUr9PTk+iKmaA==} + + '@lexical/headless@0.37.0': + resolution: {integrity: sha512-oBMlySHwjl9iJA9A3DU8V4xMqyzkt79OnLI9XP0uvDdJeGM2C+SoV44K54bGRkCow/i/XdHB76tsYMD777ObjQ==} + + '@lexical/html@0.37.0': + resolution: {integrity: sha512-oTsBc45eL8/lmF7fqGR+UCjrJYP04gumzf5nk4TczrxWL2pM4GIMLLKG1mpQI2H1MDiRLzq3T/xdI7Gh74z7Zw==} + + '@lexical/link@0.37.0': + resolution: {integrity: sha512-gglkjE99tKYnGAxQbrUq9TcaVKBQhidXhgPPbVw3x1Fba9biMafkbSJhE/7/pzQTPoQBAIl0w7DOUWmBOv+JbQ==} + + '@lexical/list@0.37.0': + resolution: {integrity: sha512-AOC6yAA3mfNvJKbwo+kvAbPJI+13yF2ISA65vbA578CugvJ08zIVgM+pSzxquGhD0ioJY3cXVW7+gdkCP1qu5g==} + + '@lexical/rich-text@0.37.0': + resolution: {integrity: sha512-A9i5Es/RrZv71tB6dDSyd4TYdbkn/+oUrUdTwnWa+B8EZW26q0h+wgxCGwPtTU7ho4JNP9HOot+EIhe2DbyaYg==} + + '@lexical/selection@0.37.0': + resolution: {integrity: sha512-Lix1s2r71jHfsTEs4q/YqK2s3uXKOnyA3fd1VDMWysO+bZzRwEO5+qyDvENZ0WrXSDCnlibNFV1HttWX9/zqyw==} + + '@lexical/table@0.37.0': + resolution: {integrity: sha512-g7S8ml8kIujEDLWlzYKETgPCQ2U9oeWqdytRuHjHGi/rjAAGHSej5IRqTPIMxNP3VVQHnBoQ+Y9hBtjiuddhgQ==} + + '@lexical/utils@0.37.0': + resolution: {integrity: sha512-CFp4diY/kR5RqhzQSl/7SwsMod1sgLpI1FBifcOuJ6L/S6YywGpEB4B7aV5zqW21A/jU2T+2NZtxSUn6S+9gMg==} + '@lukeed/csprng@1.1.0': resolution: {integrity: sha512-Z7C/xXCiGWsg0KuKsHTKJxbWhpI3Vs5GwLfOean7MGyVFGqdRgBbAjOCh6u4bbjPc/8MJ2pZmK/0DLdCbivLDA==} engines: {node: '>=8'} @@ -1006,6 +1066,9 @@ packages: '@polka/url@0.5.0': resolution: {integrity: sha512-oZLYFEAzUKyi3SKnXvj32ZCEGH6RDnao7COuCVhDydMS9NrCSVXhM79VaKyP5+Zc33m0QXEd2DN3UkU7OsHcfw==} + '@preact/signals-core@1.12.1': + resolution: {integrity: sha512-BwbTXpj+9QutoZLQvbttRg5x3l5468qaV2kufh+51yha1c53ep5dY4kTuZR35+3pAZxpfQerGJiQqg34ZNZ6uA==} + '@prisma/client@6.8.2': resolution: {integrity: sha512-5II+vbyzv4si6Yunwgkj0qT/iY0zyspttoDrL3R4BYgLdp42/d2C8xdi9vqkrYtKt9H32oFIukvyw3Koz5JoDg==} engines: {node: '>=18.18'} @@ -1149,6 +1212,9 @@ packages: '@types/mysql@2.15.26': resolution: {integrity: sha512-DSLCOXhkvfS5WNNPbfn2KdICAmk8lLc+/PNvnPnF7gOdMZCxopXduqv0OQ13y/yA/zXTSikZZqVgybUxOEg6YQ==} + '@types/node@20.19.22': + resolution: {integrity: sha512-hRnu+5qggKDSyWHlnmThnUqg62l29Aj/6vcYgUaSFL9oc7DVjeWEQN3PRgdSc6F8d9QRMWkf36CLMch1Do/+RQ==} + '@types/node@22.13.10': resolution: {integrity: sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==} @@ -1185,6 +1251,9 @@ packages: '@types/validator@13.11.8': resolution: {integrity: sha512-c/hzNDBh7eRF+KbCf+OoZxKbnkpaK/cKp9iLQWqB7muXtM+MtL9SUUH8vCFcLn6dH1Qm05jiexK0ofWY7TfOhQ==} + '@types/whatwg-mimetype@3.0.2': + resolution: {integrity: sha512-c2AKvDT8ToxLIOUlN51gTiHXflsfIFisS4pO7pDPoKouJCESkhZnEy623gwP9laCy5lnLDAw1vAzu2vM2YLOrA==} + '@types/yargs-parser@21.0.3': resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} @@ -2217,6 +2286,10 @@ packages: graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + happy-dom@20.0.7: + resolution: {integrity: sha512-CywLfzmYxP5OYpuAG0usFY0CpxJtwYR+w8Mms5J8W29Y2Pzf6rbfQS2M523tRZTb0oLA+URopPtnAQX2fupHZQ==} + engines: {node: '>=20.0.0'} + has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} @@ -3151,6 +3224,10 @@ packages: typescript: optional: true + prismjs@1.30.0: + resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==} + engines: {node: '>=6'} + process-nextick-args@2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} @@ -3732,6 +3809,9 @@ packages: undici-types@6.20.0: resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + unicode-properties@1.4.1: resolution: {integrity: sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==} @@ -3839,6 +3919,10 @@ packages: resolution: {integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==} engines: {node: '>=12'} + whatwg-mimetype@3.0.0: + resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==} + engines: {node: '>=12'} + whatwg-url@14.1.1: resolution: {integrity: sha512-mDGf9diDad/giZ/Sm9Xi2YcyzaFpbdLpJPr+E9fSkyQ7KpQD4SdFcugkRQYzhmfI4KeV4Qpnn2sKPdo+kmsgRQ==} engines: {node: '>=18'} @@ -4670,6 +4754,81 @@ snapshots: '@jridgewell/resolve-uri': 3.1.1 '@jridgewell/sourcemap-codec': 1.4.15 + '@lexical/clipboard@0.37.0': + dependencies: + '@lexical/html': 0.37.0 + '@lexical/list': 0.37.0 + '@lexical/selection': 0.37.0 + '@lexical/utils': 0.37.0 + lexical: 0.37.0 + + '@lexical/code@0.37.0': + dependencies: + '@lexical/utils': 0.37.0 + lexical: 0.37.0 + prismjs: 1.30.0 + + '@lexical/dragon@0.37.0': + dependencies: + '@lexical/extension': 0.37.0 + lexical: 0.37.0 + + '@lexical/extension@0.37.0': + dependencies: + '@lexical/utils': 0.37.0 + '@preact/signals-core': 1.12.1 + lexical: 0.37.0 + + '@lexical/headless@0.37.0': + dependencies: + happy-dom: 20.0.7 + lexical: 0.37.0 + + '@lexical/html@0.37.0': + dependencies: + '@lexical/selection': 0.37.0 + '@lexical/utils': 0.37.0 + lexical: 0.37.0 + + '@lexical/link@0.37.0': + dependencies: + '@lexical/extension': 0.37.0 + '@lexical/utils': 0.37.0 + lexical: 0.37.0 + + '@lexical/list@0.37.0': + dependencies: + '@lexical/extension': 0.37.0 + '@lexical/selection': 0.37.0 + '@lexical/utils': 0.37.0 + lexical: 0.37.0 + + '@lexical/rich-text@0.37.0': + dependencies: + '@lexical/clipboard': 0.37.0 + '@lexical/dragon': 0.37.0 + '@lexical/selection': 0.37.0 + '@lexical/utils': 0.37.0 + lexical: 0.37.0 + + '@lexical/selection@0.37.0': + dependencies: + lexical: 0.37.0 + + '@lexical/table@0.37.0': + dependencies: + '@lexical/clipboard': 0.37.0 + '@lexical/extension': 0.37.0 + '@lexical/utils': 0.37.0 + lexical: 0.37.0 + + '@lexical/utils@0.37.0': + dependencies: + '@lexical/list': 0.37.0 + '@lexical/selection': 0.37.0 + '@lexical/table': 0.37.0 + lexical: 0.37.0 + '@lukeed/csprng@1.1.0': {} '@microsoft/tsdoc@0.15.1': {} @@ -4853,6 +5012,8 @@ snapshots: '@polka/url@0.5.0': {} + '@preact/signals-core@1.12.1': {} + '@prisma/client@6.8.2(prisma@6.8.2(typescript@5.8.3))(typescript@5.8.3)': optionalDependencies: prisma: 6.8.2(typescript@5.8.3) @@ -5023,6 +5184,10 @@ snapshots: dependencies: '@types/node': 22.13.10 + '@types/node@20.19.22': + dependencies: + undici-types: 6.21.0 + '@types/node@22.13.10': dependencies: undici-types: 6.20.0 @@ -5066,6 +5231,8 @@ snapshots: '@types/validator@13.11.8': {} + '@types/whatwg-mimetype@3.0.2': {} + '@types/yargs-parser@21.0.3': {} '@types/yargs@17.0.32': @@ -6204,6 +6371,12 @@ snapshots: graphemer@1.4.0: {} + happy-dom@20.0.7: + dependencies: + '@types/node': 20.19.22 + '@types/whatwg-mimetype': 3.0.2 + whatwg-mimetype: 3.0.0 + has-flag@3.0.0: {} has-flag@4.0.0: {} @@ -7313,6 +7486,8 @@ snapshots: optionalDependencies: typescript: 5.8.3 + prismjs@1.30.0: {} + process-nextick-args@2.0.1: {} prompts@2.4.2: @@ -7908,6 +8083,8 @@ snapshots: undici-types@6.20.0: {} + undici-types@6.21.0: {} + unicode-properties@1.4.1: dependencies: base64-js: 1.5.1 @@ -8030,6 +8207,8 @@ snapshots: dependencies: iconv-lite: 0.6.3 + whatwg-mimetype@3.0.0: {} + whatwg-url@14.1.1: dependencies: tr46: 5.0.0 diff --git a/src/assos/assos.controller.ts b/src/assos/assos.controller.ts index 636339c0..46ca39f4 100644 --- a/src/assos/assos.controller.ts +++ b/src/assos/assos.controller.ts @@ -11,7 +11,7 @@ import { AppException, ERROR_CODE } from '../exceptions'; import { ParamMember } from './decorator/get-member'; import { Asso } from './interfaces/asso.interface'; import { User } from '../users/interfaces/user.interface'; -import { isValidLexicalContent, pick } from '../utils'; +import { pick } from '../utils'; import { UUIDParam } from '../app.pipe'; import AssosSearchReqDto from './dto/req/assos-search-req.dto'; import AssoOverviewResDto from './dto/res/asso-overview-res.dto'; @@ -25,6 +25,7 @@ import AssosMemberUpdateReqDto from './dto/req/assos-member-update.dto'; import AssoMembershipResDto from './dto/res/assos-membership-res.dto'; import UsersService from '../users/users.service'; import AssosUpdateReqDto from './dto/req/assos-update-req.dto'; +import { LexicalModule } from '../lexical/lexical.module'; import { ImageMediaPreset } from '@prisma/client'; @Controller('assos') @@ -34,6 +35,7 @@ export class AssosController { readonly assosService: AssosService, readonly userService: UsersService, readonly mediaService: ImageMediaService, + readonly lexicalModule: LexicalModule, ) {} @Get() @@ -81,7 +83,7 @@ export class AssosController { if (!(await this.assosService.hasSomeAssoPermission(asso, user.id, 'manage_infos'))) throw new AppException(ERROR_CODE.FORBIDDEN_ASSOS_PERMISSIONS, asso.id, 'manage_infos'); for (const key in body.description) - if (body.description[key] && !isValidLexicalContent(body.description[key])) + if (body.description[key] && !this.lexicalModule.isValidLexicalContent(body.description[key])) throw new AppException(ERROR_CODE.PARAM_LEXICAL_ILLEGAL, `description.${key}`); if (body.logo) { const media = await this.mediaService.getMedia(body.logo); diff --git a/src/assos/assos.module.ts b/src/assos/assos.module.ts index 3c442841..ecbca011 100644 --- a/src/assos/assos.module.ts +++ b/src/assos/assos.module.ts @@ -2,6 +2,7 @@ import { Module } from '@nestjs/common'; import { AssosController } from './assos.controller'; import { AssosService } from './assos.service'; import { ImageMediaModule } from '../media/image/imagemedia.module'; +import { LexicalModule } from '../lexical/lexical.module'; import UsersService from '../users/users.service'; /** @@ -11,6 +12,6 @@ import UsersService from '../users/users.service'; @Module({ controllers: [AssosController], providers: [AssosService, UsersService], - imports: [ImageMediaModule], + imports: [ImageMediaModule, LexicalModule], }) export class AssosModule {} diff --git a/src/lexical/lexical.module.ts b/src/lexical/lexical.module.ts new file mode 100644 index 00000000..a45639c9 --- /dev/null +++ b/src/lexical/lexical.module.ts @@ -0,0 +1,96 @@ +import { Module } from '@nestjs/common'; +import { TextNode, ParagraphNode } from 'lexical'; +import { createHeadlessEditor } from '@lexical/headless'; +import { $generateHtmlFromNodes } from '@lexical/html'; +import { AutoLinkNode, LinkNode } from '@lexical/link'; +import { HeadingNode, QuoteNode } from '@lexical/rich-text'; +import { CodeHighlightNode, CodeNode } from '@lexical/code'; +import { TableNode, TableCellNode, TableRowNode } from '@lexical/table'; +import { ListNode, ListItemNode } from '@lexical/list'; +import { HorizontalRuleNode } from '@lexical/extension'; +import { ColorTextNode, ImageNode, RegisteredStyleMap } from './nodes'; +import { patchNodeExportDOM } from './nodes/NodeStyleInjector'; + +/** @internal */ +export const BUNDLES = { + '@etuutt/simple': [], + '@etuutt/full': [ + AutoLinkNode, + CodeHighlightNode, + CodeNode, + ColorTextNode, + HeadingNode, + HorizontalRuleNode, + ImageNode, + LinkNode, + ListItemNode, + ListNode, + TableCellNode, + TableNode, + TableRowNode, + QuoteNode, + ], +}; + +@Module({ + exports: [LexicalModule], +}) +export class LexicalModule { + constructor() { + [TextNode, ParagraphNode, ...BUNDLES['@etuutt/full']].forEach(patchNodeExportDOM); + } + + isValidLexicalContent(userInput: string, bundle: keyof typeof BUNDLES = '@etuutt/full') { + try { + const editor = createHeadlessEditor({ + nodes: BUNDLES[bundle], + }); + const parsed = JSON.parse(userInput); + const editorState = editor.parseEditorState(parsed); + return JSON.stringify(editorState.toJSON()) === userInput; + } catch { + return false; + } + } + + async generateHTML(lexicalContent: string, bundle: keyof typeof BUNDLES = '@etuutt/full'): Promise { + let html = ''; + const { withDOM } = (await new Function( + "return import('@lexical/headless/dom')", + )()) as typeof import('@lexical/headless/dom'); + withDOM(() => { + const editor = createHeadlessEditor({ + nodes: BUNDLES[bundle], + theme: { + image: 'editor-image', + link: 'editor-link', + text: { + bold: 'editor-bold', + italic: 'editor-italic', + underline: 'editor-underline', + strikethrough: 'editor-strikethrough', + code: 'editor-code', + }, + quote: 'editor-quote', + hr: 'editor-horizontal-rule', + list: { + checklist: 'editor-checklist', + listitem: 'editor-list-item', + listitemChecked: 'editor-list-item-checked', + listitemUnchecked: 'editor-list-item-unchecked', + ol: 'editor-ordered-list', + ul: 'editor-unordered-list', + }, + table: 'editor-table', + tableCell: 'editor-table-cell', + tableCellHeader: 'editor-table-cell-header', + tableRow: 'editor-table-row', + } satisfies RegisteredStyleMap, + }); + const parsed = JSON.parse(lexicalContent); + editor.setEditorState(editor.parseEditorState(parsed)); + editor.read(() => (html = $generateHtmlFromNodes(editor))); + }); + return html; + } +} diff --git a/src/lexical/nodes/ColorTextNode.ts b/src/lexical/nodes/ColorTextNode.ts new file mode 100644 index 00000000..422c30f8 --- /dev/null +++ b/src/lexical/nodes/ColorTextNode.ts @@ -0,0 +1,63 @@ +import { + $getState, + $setState, + createState, + DOMConversionMap, + DOMExportOutput, + LexicalEditor, + NodeKey, + SerializedTextNode, + Spread, + TextNode, +} from 'lexical'; + +const ColorOptions = { blue: '#2d8fce', darkblue: '#1b557a', grey: '#444c5f', darkgrey: '#2e3442' }; +export type ColorType = keyof typeof ColorOptions; + +type SerializedColorTextNode = Spread<{ color?: ColorType }, SerializedTextNode>; + +const colorState = createState('color', { + parse: (v) => ((v as ColorType) in ColorOptions ? (v as ColorType) : undefined), +}); + +export class ColorTextNode extends TextNode { + static getType() { + return 'color-text'; + } + + static clone(node: ColorTextNode) { + return new ColorTextNode(node.__text, node.__key); + } + + setColor(color?: ColorType) { + $setState(this, colorState, color); + return this; + } + + static importJSON(serializedNode: SerializedColorTextNode): ColorTextNode { + return $createColorTextNode(serializedNode.text).updateFromJSON(serializedNode).setColor(serializedNode.color); + } + + exportJSON(): SerializedColorTextNode { + return { + ...super.exportJSON(), + color: $getState(this, colorState), + $: undefined, + }; + } + + exportDOM(editor: LexicalEditor): DOMExportOutput { + const { element } = super.exportDOM(editor); + const color = $getState(this, colorState); + if (color) (element as HTMLElement).style.color = ColorOptions[color]; + return { element }; + } + + static importDOM(): DOMConversionMap { + return null; + } +} + +export function $createColorTextNode(text?: string, nodeKey?: NodeKey): ColorTextNode { + return new ColorTextNode(text, nodeKey); +} diff --git a/src/lexical/nodes/ImageNode.ts b/src/lexical/nodes/ImageNode.ts new file mode 100644 index 00000000..97dabae6 --- /dev/null +++ b/src/lexical/nodes/ImageNode.ts @@ -0,0 +1,91 @@ +import { + DecoratorNode, + DOMConversionMap, + DOMExportOutput, + LexicalEditor, + NodeKey, + SerializedLexicalNode, + Spread, +} from 'lexical'; + +type SerializedImageNode = Spread< + { + src: string; + altText: string; + width: number | 'inherit'; + height: number | 'inherit'; + }, + SerializedLexicalNode +>; + +export class ImageNode extends DecoratorNode { + __src: string; + __altText: string; + __width: number | 'inherit'; + __height: number | 'inherit'; + + static getType() { + return 'image'; + } + + static clone(node: ImageNode) { + return new ImageNode(node.__src, node.__altText, node.__width, node.__height, node.__key); + } + + constructor(src: string, altText?: string, width?: number | 'inherit', height?: number | 'inherit', key?: NodeKey) { + super(key); + this.__src = src; + this.__altText = altText || ''; + this.__width = width || 'inherit'; + this.__height = height || 'inherit'; + } + + exportDOM(editor: LexicalEditor): DOMExportOutput { + const element = document.createElement('span'); + if (editor._config?.theme?.image) element.className = editor._config.theme.image; + const img = document.createElement('img'); + img.src = this.__src; + img.alt = this.__altText; + if (this.__width !== 'inherit') img.width = this.__width; + if (this.__height !== 'inherit') img.height = this.__height; + element.appendChild(img); + return { element }; + } + + static importJSON(serializedNode: SerializedImageNode): ImageNode { + return $createImageNode( + serializedNode.src, + serializedNode.altText, + serializedNode.width, + serializedNode.height, + ).updateFromJSON(serializedNode); + } + + exportJSON(): SerializedImageNode { + return { + ...super.exportJSON(), + src: this.__src, + altText: this.__altText, + width: this.__width, + height: this.__height, + }; + } + + static importDOM(): DOMConversionMap { + return null; + } +} + +export function $createImageNode( + src: string, + altText?: string, + width?: number | 'inherit', + height?: number | 'inherit', + nodeKey?: NodeKey, +): ImageNode { + return new ImageNode(src, altText, width, height, nodeKey); +} + +export function $isImageNode(node: unknown): node is ImageNode { + return node instanceof ImageNode; +} diff --git a/src/lexical/nodes/NodeStyleInjector.ts b/src/lexical/nodes/NodeStyleInjector.ts new file mode 100644 index 00000000..df9912d4 --- /dev/null +++ b/src/lexical/nodes/NodeStyleInjector.ts @@ -0,0 +1,36 @@ +import { LexicalNode } from 'lexical'; +import { CustomStyles } from '.'; + +function applyStylesToElement(element: HTMLElement, index: number) { + element.classList.forEach( + (cName) => + cName in CustomStyles && + (cName !== 'editor-table-row' || !(index % 2)) && + (cName !== 'editor-list-item-nested' || element.querySelector('.editor-ordered-list,.editor-unordered-list')) && + Object.assign(cName === 'editor-image' ? element.querySelector('img').style : element.style, CustomStyles[cName]), + ); + if (!element.className.includes('editor-ordered-list') && !element.className.includes('editor-unordered-list')) + element.className = ''; +} + +export function patchNodeExportDOM( + NodeClass: new (...args: unknown[]) => T extends (infer U)[] ? U : never, +) { + const original = NodeClass.prototype.exportDOM; + + NodeClass.prototype.exportDOM = function (this: LexicalNode, ...args: unknown[]) { + const result = original.apply(this, args); + + if (result?.element) { + const element = result.element as HTMLElement; + applyStylesToElement(element, this.getIndexWithinParent()); + element + .querySelectorAll('[class]') + .forEach((element: HTMLElement) => + applyStylesToElement(element, Array.prototype.indexOf.call(element.parentElement.children, element)), + ); + } + + return result; + }; +} diff --git a/src/lexical/nodes/index.ts b/src/lexical/nodes/index.ts new file mode 100644 index 00000000..3a827e34 --- /dev/null +++ b/src/lexical/nodes/index.ts @@ -0,0 +1,79 @@ +import type { EditorThemeClasses } from 'lexical'; +export { ColorTextNode } from './ColorTextNode'; +export { ImageNode } from './ImageNode'; +import './NodeStyleInjector'; + +export type RegisteredStyleMap = { + [K1 in keyof EditorThemeClasses]: EditorThemeClasses[K1] extends Record + ? { [K2 in keyof EditorThemeClasses[K1]]: keyof typeof CustomStyles } + : keyof typeof CustomStyles; +}; + +export const CustomStyles = { + 'editor-image': { + maxWidth: '100%', + maxHeight: '100%', + borderRadius: '3px', + backgroundColor: 'rgba(68, 76, 95, 0.5)', + }, + 'editor-link': { + color: '#2d8fce', + borderBottom: '1px solid #2d8fce', + textDecoration: 'none', + }, + 'editor-bold': { + fontWeight: 'bold', + }, + 'editor-italic': { + fontStyle: 'italic', + }, + 'editor-underline': { + textDecoration: 'underline', + }, + 'editor-strikethrough': { + textDecoration: 'line-through', + }, + 'editor-code': { + backgroundColor: 'rgba(46, 52, 66, 0.1)', + borderRadius: '3px', + }, + 'editor-quote': { + backgroundColor: 'rgba(46, 52, 66, 0.1)', + margin: '0.5em', + padding: '0.5em', + borderLeft: '5px solid #2e3442', + borderRadius: '0 5px 5px 0', + }, + 'editor-horizontal-rule': { + border: 'none', + borderTop: '2px solid #2e3442', + margin: '1em 0', + }, + 'editor-checklist': {}, // TODO: implement these styles without after or before pseudo-elements + 'editor-list-item': { + position: 'relative', + }, + 'editor-list-item-nested': { + listStyleType: 'none', + }, + 'editor-list-item-checked': {}, // TODO: implement these styles without after or before pseudo-elements + 'editor-list-item-unchecked': {}, // TODO: implement these styles without after or before pseudo-elements + 'editor-ordered-list': {}, + 'editor-unordered-list': {}, + 'editor-table': { + borderCollapse: 'collapse', + }, + 'editor-table-cell': { + padding: '3px 4px', + minWidth: '200px', + border: '1px solid rgba(68, 76, 95, 0.3)', + }, + 'editor-table-cell-header': { + backgroundColor: '#2e3442', + color: '#fafbfc', + border: '1px solid #2e3442', + }, + 'editor-table-row': { + backgroundColor: 'rgba(68, 76, 95, 0.1)', + }, +} satisfies Record>; diff --git a/src/utils.ts b/src/utils.ts index 21d33a36..f8f43d07 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -1,6 +1,5 @@ import { IsNotEmpty, IsOptional, IsString } from 'class-validator'; import { Language, Permission } from '@prisma/client'; -import { createEditor } from 'lexical'; import { Translation } from './prisma/types'; import { ApiPermission, UserPermission } from './auth/interfaces/permissions.interface'; @@ -121,17 +120,3 @@ export class PermissionManager { return this; } } - -export function isValidLexicalContent(userInput: string) { - try { - const editor = createEditor({ - onError: () => {}, // silent parsing errors - }); - const parsed = JSON.parse(userInput); - const editorState = editor.parseEditorState(parsed); - editorState.read(() => {}); - return true; - } catch { - return false; - } -} diff --git a/tsconfig.json b/tsconfig.json index 0521e04f..5cd95c95 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -9,7 +9,9 @@ "target": "es2022", "sourceMap": true, "outDir": "./dist", - "baseUrl": "./", + "paths": { + "src/*": ["./src/*"] + }, "incremental": true, "skipLibCheck": true, "strictNullChecks": false, From d32d3d5ef2ea5b3b21d113980c64789058a0698a Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Wed, 22 Oct 2025 02:47:25 +0200 Subject: [PATCH 08/18] fix: tests --- tsconfig.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tsconfig.json b/tsconfig.json index 5cd95c95..7d4a0aeb 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -10,7 +10,8 @@ "sourceMap": true, "outDir": "./dist", "paths": { - "src/*": ["./src/*"] + "src/*": ["./src/*"], + "test/*": ["./test/*"] }, "incremental": true, "skipLibCheck": true, From 1a8bb5874eb8067d22cf4aa0dd4119ad7d10292d Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Wed, 22 Oct 2025 03:05:05 +0200 Subject: [PATCH 09/18] fix(lexical): tables are now rendered in html exports --- src/lexical/nodes/NodeStyleInjector.ts | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/lexical/nodes/NodeStyleInjector.ts b/src/lexical/nodes/NodeStyleInjector.ts index df9912d4..a16a95aa 100644 --- a/src/lexical/nodes/NodeStyleInjector.ts +++ b/src/lexical/nodes/NodeStyleInjector.ts @@ -20,16 +20,17 @@ export function patchNodeExportDOM( NodeClass.prototype.exportDOM = function (this: LexicalNode, ...args: unknown[]) { const result = original.apply(this, args); - - if (result?.element) { - const element = result.element as HTMLElement; - applyStylesToElement(element, this.getIndexWithinParent()); - element + const originalAfterFunction = result?.after; + result.after = (element: HTMLElement | null) => { + let updatedElement = element; + if (originalAfterFunction) updatedElement = originalAfterFunction(element); + applyStylesToElement(updatedElement, this.getIndexWithinParent()); + updatedElement .querySelectorAll('[class]') .forEach((element: HTMLElement) => applyStylesToElement(element, Array.prototype.indexOf.call(element.parentElement.children, element)), ); - } + }; return result; }; From f99ae4d7554979289e48f1e5df64205ba31f9f16 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Wed, 22 Oct 2025 04:18:34 +0200 Subject: [PATCH 10/18] fix: remove trailing spaces, fix list style --- src/lexical/lexical.module.ts | 16 ++++++++++++++- src/lexical/nodes/NodeStyleInjector.ts | 1 - src/lexical/nodes/index.ts | 28 ++++++++++++++++++++++---- 3 files changed, 39 insertions(+), 6 deletions(-) diff --git a/src/lexical/lexical.module.ts b/src/lexical/lexical.module.ts index a45639c9..de234b82 100644 --- a/src/lexical/lexical.module.ts +++ b/src/lexical/lexical.module.ts @@ -71,6 +71,15 @@ export class LexicalModule { strikethrough: 'editor-strikethrough', code: 'editor-code', }, + paragraph: 'editor-no-margin', + heading: { + h1: 'editor-h1', + h2: 'editor-h2', + h3: 'editor-no-margin', + h4: 'editor-no-margin', + h5: 'editor-no-margin', + h6: 'editor-no-margin', + }, quote: 'editor-quote', hr: 'editor-horizontal-rule', list: { @@ -80,6 +89,9 @@ export class LexicalModule { listitemUnchecked: 'editor-list-item-unchecked', ol: 'editor-ordered-list', ul: 'editor-unordered-list', + nested: { + listitem: 'editor-list-item-nested', + }, }, table: 'editor-table', tableCell: 'editor-table-cell', @@ -91,6 +103,8 @@ export class LexicalModule { editor.setEditorState(editor.parseEditorState(parsed)); editor.read(() => (html = $generateHtmlFromNodes(editor))); }); - return html; + return html + .replaceAll('class=""', '') + .replaceAll(/(?<=<[^>]+)(?]*>)|(?<=<[^>]*(?:\w|"))\s+(?=>)/g, ''); } } diff --git a/src/lexical/nodes/NodeStyleInjector.ts b/src/lexical/nodes/NodeStyleInjector.ts index a16a95aa..5a2314e4 100644 --- a/src/lexical/nodes/NodeStyleInjector.ts +++ b/src/lexical/nodes/NodeStyleInjector.ts @@ -6,7 +6,6 @@ function applyStylesToElement(element: HTMLElement, index: number) { (cName) => cName in CustomStyles && (cName !== 'editor-table-row' || !(index % 2)) && - (cName !== 'editor-list-item-nested' || element.querySelector('.editor-ordered-list,.editor-unordered-list')) && Object.assign(cName === 'editor-image' ? element.querySelector('img').style : element.style, CustomStyles[cName]), ); if (!element.className.includes('editor-ordered-list') && !element.className.includes('editor-unordered-list')) diff --git a/src/lexical/nodes/index.ts b/src/lexical/nodes/index.ts index 3a827e34..0d13a220 100644 --- a/src/lexical/nodes/index.ts +++ b/src/lexical/nodes/index.ts @@ -4,8 +4,12 @@ export { ImageNode } from './ImageNode'; import './NodeStyleInjector'; export type RegisteredStyleMap = { - [K1 in keyof EditorThemeClasses]: EditorThemeClasses[K1] extends Record - ? { [K2 in keyof EditorThemeClasses[K1]]: keyof typeof CustomStyles } + [K1 in keyof EditorThemeClasses]: EditorThemeClasses[K1] extends Record + ? { + [K2 in keyof EditorThemeClasses[K1]]: EditorThemeClasses[K1][K2] extends Record + ? { [K3 in keyof EditorThemeClasses[K1][K2]]: keyof typeof CustomStyles } + : keyof typeof CustomStyles; + } : keyof typeof CustomStyles; }; @@ -49,6 +53,18 @@ export const CustomStyles = { borderTop: '2px solid #2e3442', margin: '1em 0', }, + 'editor-no-margin': { + margin: '0', + }, + 'editor-h1': { + textTransform: 'uppercase', + fontWeight: '900', + margin: '0', + }, + 'editor-h2': { + fontWeight: 'bold', + margin: '0', + }, 'editor-checklist': {}, // TODO: implement these styles without after or before pseudo-elements 'editor-list-item': { position: 'relative', @@ -58,8 +74,12 @@ export const CustomStyles = { }, 'editor-list-item-checked': {}, // TODO: implement these styles without after or before pseudo-elements 'editor-list-item-unchecked': {}, // TODO: implement these styles without after or before pseudo-elements - 'editor-ordered-list': {}, - 'editor-unordered-list': {}, + 'editor-ordered-list': { + paddingTop: '0', + }, + 'editor-unordered-list': { + paddingTop: '0', + }, 'editor-table': { borderCollapse: 'collapse', }, From e426443e5f462820974faacf32a3d820230c3a6b Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Wed, 22 Oct 2025 12:50:03 +0200 Subject: [PATCH 11/18] fix: handle checklists and table header alignment --- src/lexical/nodes/NodeStyleInjector.ts | 30 +++++++++++---- src/lexical/nodes/index.ts | 53 ++++++++++++++++++++++++-- 2 files changed, 72 insertions(+), 11 deletions(-) diff --git a/src/lexical/nodes/NodeStyleInjector.ts b/src/lexical/nodes/NodeStyleInjector.ts index 5a2314e4..b3a612dd 100644 --- a/src/lexical/nodes/NodeStyleInjector.ts +++ b/src/lexical/nodes/NodeStyleInjector.ts @@ -1,13 +1,27 @@ +import { TableCellNode } from '@lexical/table'; import { LexicalNode } from 'lexical'; import { CustomStyles } from '.'; -function applyStylesToElement(element: HTMLElement, index: number) { - element.classList.forEach( - (cName) => - cName in CustomStyles && - (cName !== 'editor-table-row' || !(index % 2)) && - Object.assign(cName === 'editor-image' ? element.querySelector('img').style : element.style, CustomStyles[cName]), - ); +function applyStylesToElement(element: HTMLElement, index: number, node?: LexicalNode) { + element.classList.forEach((cName) => { + if (!(cName in CustomStyles)) return; + if (cName === 'editor-list-item-checked' || cName === 'editor-list-item-unchecked') + Object.assign(element.style, CustomStyles['editor-list-item-check-base']); + else if (cName !== 'editor-table-row' || !(index % 2)) + Object.assign(cName === 'editor-image' ? element.querySelector('img').style : element.style, CustomStyles[cName]); + if (cName === 'editor-table-cell-header' && node instanceof TableCellNode) + element.style.textAlign = node.__verticalAlign; + if (cName === 'editor-list-item-checked' || cName === 'editor-list-item-unchecked') { + const prependedElement = document.createElement('div'); + Object.assign(prependedElement.style, CustomStyles[cName]); + if (cName === 'editor-list-item-checked') { + const iconElement = document.createElement('div'); + Object.assign(iconElement.style, CustomStyles['editor-list-item-checked-icon']); + prependedElement.prepend(iconElement); + } + element.prepend(prependedElement); + } + }); if (!element.className.includes('editor-ordered-list') && !element.className.includes('editor-unordered-list')) element.className = ''; } @@ -23,7 +37,7 @@ export function patchNodeExportDOM( result.after = (element: HTMLElement | null) => { let updatedElement = element; if (originalAfterFunction) updatedElement = originalAfterFunction(element); - applyStylesToElement(updatedElement, this.getIndexWithinParent()); + applyStylesToElement(updatedElement, this.getIndexWithinParent(), this); updatedElement .querySelectorAll('[class]') .forEach((element: HTMLElement) => diff --git a/src/lexical/nodes/index.ts b/src/lexical/nodes/index.ts index 0d13a220..d332d515 100644 --- a/src/lexical/nodes/index.ts +++ b/src/lexical/nodes/index.ts @@ -65,15 +65,62 @@ export const CustomStyles = { fontWeight: 'bold', margin: '0', }, - 'editor-checklist': {}, // TODO: implement these styles without after or before pseudo-elements + 'editor-checklist': { + marginLeft: '-1.5em', + }, 'editor-list-item': { position: 'relative', }, 'editor-list-item-nested': { listStyleType: 'none', }, - 'editor-list-item-checked': {}, // TODO: implement these styles without after or before pseudo-elements - 'editor-list-item-unchecked': {}, // TODO: implement these styles without after or before pseudo-elements + 'editor-list-item-check-base': { + position: 'relative', + marginLeft: '0.5em', + marginRight: '0.5em', + paddingLeft: '1.5em', + paddingRight: '1.5em', + outline: 'none', + display: 'block', + }, + 'editor-list-item-checked': { + width: '0.9em', + height: '0.9em', + top: '50%', + left: '0', + display: 'block', + backgroundSize: 'cover', + position: 'absolute', + transform: 'translateY(-50%)', + border: '1px solid #2d8fce', + borderRadius: '2px', + backgroundColor: '#2d8fce', + backgroundRepeat: 'no-repeat', + }, + 'editor-list-item-checked-icon': { + borderColor: '#fafbfc', + borderStyle: 'solid', + position: 'absolute', + display: 'block', + top: '45%', + width: '0.2em', + left: '0.32em', + height: '0.4em', + transform: 'translateY(-50%) rotate(45deg)', + borderWidth: '0 0.1em 0.1em 0', + }, + 'editor-list-item-unchecked': { + width: '0.9em', + height: '0.9em', + top: '50%', + left: '0', + display: 'block', + backgroundSize: 'cover', + position: 'absolute', + transform: 'translateY(-50%)', + border: '1px solid rgba(68, 76, 95, 0.5)', + borderRadius: '2px', + }, 'editor-ordered-list': { paddingTop: '0', }, From 683b7d9cd07d7b9752f3e368c137b83dc20f5124 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Wed, 22 Oct 2025 14:10:05 +0200 Subject: [PATCH 12/18] fix: fix image height, update tests lexical string --- src/lexical/nodes/ImageNode.ts | 4 ---- src/lexical/nodes/index.ts | 1 + test/e2e/assos/update-asso.e2e-spec.ts | 4 ++-- test/jest.json | 4 +++- 4 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/lexical/nodes/ImageNode.ts b/src/lexical/nodes/ImageNode.ts index 97dabae6..966aca5f 100644 --- a/src/lexical/nodes/ImageNode.ts +++ b/src/lexical/nodes/ImageNode.ts @@ -85,7 +85,3 @@ export function $createImageNode( ): ImageNode { return new ImageNode(src, altText, width, height, nodeKey); } - -export function $isImageNode(node: unknown): node is ImageNode { - return node instanceof ImageNode; -} diff --git a/src/lexical/nodes/index.ts b/src/lexical/nodes/index.ts index d332d515..37d2f8d9 100644 --- a/src/lexical/nodes/index.ts +++ b/src/lexical/nodes/index.ts @@ -17,6 +17,7 @@ export const CustomStyles = { 'editor-image': { maxWidth: '100%', maxHeight: '100%', + height: 'auto', borderRadius: '3px', backgroundColor: 'rgba(68, 76, 95, 0.5)', }, diff --git a/test/e2e/assos/update-asso.e2e-spec.ts b/test/e2e/assos/update-asso.e2e-spec.ts index be58500c..1ac05b3a 100644 --- a/test/e2e/assos/update-asso.e2e-spec.ts +++ b/test/e2e/assos/update-asso.e2e-spec.ts @@ -28,7 +28,7 @@ const UpdateAssoE2ESpec = e2eSuite('PATCH /assos/:id', (app) => { const nonAvatarMedia = createImageMedia(app, { isPublic: true, preset: 'CUSTOM' }); const publicMedia = createImageMedia(app, { isPublic: true, preset: 'AVATAR' }); - const lexicalText = `{"editorState":{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"I want you as a ","type":"text","version":1},{"detail":0,"format":16,"mode":"normal","style":"","text":"lexical","type":"text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":" text that passes the ","type":"text","version":1},{"detail":0,"format":1,"mode":"normal","style":"","text":"tests","type":"text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":".","type":"text","version":1}],"direction":null,"format":"","indent":0,"type":"paragraph","version":1,"textFormat":0,"textStyle":""}],"direction":null,"format":"","indent":0,"type":"root","version":1}},"lastSaved":1760649655570,"source":"Playground","version":"0.37.0"}`; + const lexicalText = `{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"I want you as a ","type":"color-text","version":1},{"detail":0,"format":1,"mode":"normal","style":"","text":"lexical","type":"color-text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":" text that passes the ","type":"color-text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":"tests","type":"color-text","version":1,"color":"blue"},{"detail":0,"format":0,"mode":"normal","style":"","text":".","type":"color-text","version":1}],"direction":null,"format":"","indent":0,"type":"paragraph","version":1,"textFormat":0,"textStyle":""}],"direction":"ltr","format":"","indent":0,"type":"root","version":1}}`; const nonLexicalText = 'I want you as a non-lexical text that does not pass the tests.'; const validBody = { name: 'New name', @@ -134,7 +134,7 @@ const UpdateAssoE2ESpec = e2eSuite('PATCH /assos/:id', (app) => { }); it('should update the asso and link media to description and ignore invalid media', async () => { - const lexicalTextWithImage = `{"editorState":{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"I want you as a ","type":"text","version":1},{"detail":0,"format":16,"mode":"normal","style":"","text":"lexical","type":"text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":" text that passes the ","type":"text","version":1},{"detail":0,"format":1,"mode":"normal","style":"","text":"tests","type":"text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":" with an image.","type":"text","version":1},{"type":"image","version":1,"altText":"","caption":{"editorState":{"root":{"children":[],"direction":null,"format":"","indent":0,"type":"root","version":1}}},"height":0,"maxWidth":500,"showCaption":false,"src":"https://localhost/media/image/${publicMedia.id}.webp","width":0},{"type":"image","version":1,"altText":"","caption":{"editorState":{"root":{"children":[],"direction":null,"format":"","indent":0,"type":"root","version":1}}},"height":0,"maxWidth":500,"showCaption":false,"src":"https://localhost/media/image/${Dummies.UUID}.webp","width":0}],"direction":null,"format":"","indent":0,"type":"paragraph","version":1,"textFormat":0,"textStyle":""}],"direction":null,"format":"","indent":0,"type":"root","version":1}},"lastSaved":1760652246225,"source":"Playground","version":"0.37.0"}`; + const lexicalTextWithImage = `{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"I want you as a ","type":"color-text","version":1},{"detail":0,"format":1,"mode":"normal","style":"","text":"lexical","type":"color-text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":" text that passes the ","type":"color-text","version":1},{"detail":0,"format":0,"mode":"normal","style":"","text":"tests","type":"color-text","version":1,"color":"blue"},{"detail":0,"format":0,"mode":"normal","style":"","text":".","type":"color-text","version":1}],"direction":null,"format":"","indent":0,"type":"paragraph","version":1,"textFormat":0,"textStyle":""},{"children":[{"type":"image","version":1,"src":"https://etu.utt.fr/api/v1/media/image/${publicMedia.id}.webp","altText":"","width":1920,"height":1080}],"direction":null,"format":"","indent":0,"type":"paragraph","version":1,"textFormat":0,"textStyle":""},{"children":[{"type":"image","version":1,"src":"https://etu.utt.fr/api/v1/media/image/${Dummies.UUID}.webp","altText":"","width":1920,"height":1080}],"direction":null,"format":"","indent":0,"type":"paragraph","version":1,"textFormat":0,"textStyle":""}],"direction":"ltr","format":"","indent":0,"type":"root","version":1}}`; await pactum .spec() .withBearerToken(userAllowed.token) diff --git a/test/jest.json b/test/jest.json index 3923f8c6..94146096 100644 --- a/test/jest.json +++ b/test/jest.json @@ -7,5 +7,7 @@ "transform": { "^.+\\.(t|j)s$": "ts-jest" }, - "collectCoverageFrom": ["**/*.ts", "!main.ts"] + "collectCoverageFrom": ["**/*.ts", "!main.ts"], + "coverageDirectory": "coverage", + "coverageReporters": ["html", "text-summary"] } From a08ccdea10b213fbb32edbf6be11ada1a563ec30 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Wed, 22 Oct 2025 14:15:27 +0200 Subject: [PATCH 13/18] fix(tests): i broke codecov report generation --- test/jest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/jest.json b/test/jest.json index 94146096..5f4bc948 100644 --- a/test/jest.json +++ b/test/jest.json @@ -9,5 +9,5 @@ }, "collectCoverageFrom": ["**/*.ts", "!main.ts"], "coverageDirectory": "coverage", - "coverageReporters": ["html", "text-summary"] + "coverageReporters": ["html", "lcov", "text-summary"] } From 61d95646b66723c23e09023ef246d8aa0ba531a5 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Wed, 22 Oct 2025 17:35:49 +0200 Subject: [PATCH 14/18] tests: add unit tests lexical --- src/lexical/lexical.module.ts | 1 + src/lexical/nodes/NodeStyleInjector.ts | 7 + test/unit/app.spec.ts | 9 +- test/unit/lexical/lexical-generation.spec.ts | 44 ++++ test/unit/lexical/lexical-validation.spec.ts | 157 ++++++++++++++ test/unit/timetable/timetable.service.spec.ts | 205 +++++++++--------- test/utils/test_utils.ts | 4 +- 7 files changed, 321 insertions(+), 106 deletions(-) create mode 100644 test/unit/lexical/lexical-generation.spec.ts create mode 100644 test/unit/lexical/lexical-validation.spec.ts diff --git a/src/lexical/lexical.module.ts b/src/lexical/lexical.module.ts index de234b82..80e5377f 100644 --- a/src/lexical/lexical.module.ts +++ b/src/lexical/lexical.module.ts @@ -44,6 +44,7 @@ export class LexicalModule { try { const editor = createHeadlessEditor({ nodes: BUNDLES[bundle], + onError: () => {}, }); const parsed = JSON.parse(userInput); const editorState = editor.parseEditorState(parsed); diff --git a/src/lexical/nodes/NodeStyleInjector.ts b/src/lexical/nodes/NodeStyleInjector.ts index b3a612dd..4e1aa635 100644 --- a/src/lexical/nodes/NodeStyleInjector.ts +++ b/src/lexical/nodes/NodeStyleInjector.ts @@ -1,3 +1,4 @@ +import { CodeHighlightNode } from '@lexical/code'; import { TableCellNode } from '@lexical/table'; import { LexicalNode } from 'lexical'; import { CustomStyles } from '.'; @@ -47,4 +48,10 @@ export function patchNodeExportDOM( return result; }; + + if ((NodeClass as unknown) === CodeHighlightNode) { + Object.defineProperty(NodeClass, 'importDOM', { + value: () => null, + }); + } } diff --git a/test/unit/app.spec.ts b/test/unit/app.spec.ts index 42372ff3..0fe934af 100644 --- a/test/unit/app.spec.ts +++ b/test/unit/app.spec.ts @@ -1,15 +1,16 @@ import TimetableServiceUnitSpec from './timetable/timetable.service.spec'; +import LexicalValidationUnitSpec from './lexical/lexical-validation.spec'; +import LexicalGenerationUnitSpec from './lexical/lexical-generation.spec'; import { Test, TestingModule } from '@nestjs/testing'; import { AppModule } from '../../src/app.module'; import '../../src/std.type'; -/* - * Unit testing is currently DISABLED. Remove the .skip in the line below - */ -describe.skip('EtuUTT API unit testing', () => { +describe('EtuUTT API unit testing', () => { let app: TestingModule; beforeAll(async () => { app = await Test.createTestingModule({ imports: [AppModule] }).compile(); }); TimetableServiceUnitSpec(() => app); + LexicalValidationUnitSpec(() => app); + LexicalGenerationUnitSpec(() => app); }); diff --git a/test/unit/lexical/lexical-generation.spec.ts b/test/unit/lexical/lexical-generation.spec.ts new file mode 100644 index 00000000..3cdef555 --- /dev/null +++ b/test/unit/lexical/lexical-generation.spec.ts @@ -0,0 +1,44 @@ +import { unitSuite } from '../../utils/test_utils'; +import { BUNDLES, LexicalModule } from '../../../src/lexical/lexical.module'; +import { createHeadlessEditor } from '@lexical/headless'; +import { $createParagraphNode, $createTextNode, $getRoot, LexicalEditor } from 'lexical'; + +const LexicalGenerationUnitSpec = unitSuite('Lexical generation', (app) => { + let lexicalModule: LexicalModule; + + beforeAll(() => { + lexicalModule = app().get(LexicalModule); + }); + + const checkExportForBundles = ( + name: string, + bundles: (keyof typeof BUNDLES)[], + test: (editor: LexicalEditor) => void, + result: string, + ) => { + bundles.forEach((bundle) => { + describe(name, () => { + it(bundle, () => { + const editor = createHeadlessEditor({ + nodes: BUNDLES['@etuutt/full'], + }); + editor.update(() => { + test(editor); + }); + editor.read(async () => + expect(await lexicalModule.generateHTML(JSON.stringify(editor.getEditorState()), bundle)).toBe(result), + ); + }); + }); + }); + }; + + checkExportForBundles( + 'Paragraph', + ['@etuutt/full', '@etuutt/simple'], + () => $getRoot().append($createParagraphNode().append($createTextNode('Hello World'))), + '

    Hello World

    ', + ); +}); + +export default LexicalGenerationUnitSpec; diff --git a/test/unit/lexical/lexical-validation.spec.ts b/test/unit/lexical/lexical-validation.spec.ts new file mode 100644 index 00000000..7a207b64 --- /dev/null +++ b/test/unit/lexical/lexical-validation.spec.ts @@ -0,0 +1,157 @@ +import { unitSuite } from '../../utils/test_utils'; +import { BUNDLES, LexicalModule } from '../../../src/lexical/lexical.module'; +import { createHeadlessEditor } from '@lexical/headless'; +import { $createParagraphNode, $createTextNode, $getRoot, LexicalEditor } from 'lexical'; +import { $createCodeHighlightNode, $createCodeNode } from '@lexical/code'; +import { $createHeadingNode, $createQuoteNode } from '@lexical/rich-text'; +import { $createImageNode } from '../../../src/lexical/nodes/ImageNode'; +import { $createColorTextNode } from '../../../src/lexical/nodes/ColorTextNode'; +import { $createAutoLinkNode, $createLinkNode } from '@lexical/link'; +import { $createHorizontalRuleNode } from '@lexical/extension'; +import { $createListItemNode, $createListNode } from '@lexical/list'; +import { $createTableCellNode, $createTableNode, $createTableRowNode } from '@lexical/table'; + +const LexicalValidationUnitSpec = unitSuite('Lexical validation', (app) => { + let lexicalModule: LexicalModule; + + beforeAll(() => { + lexicalModule = app().get(LexicalModule); + }); + + const checkValidityForBundles = ( + name: string, + bundles: Record, + test: (editor: LexicalEditor) => void, + ) => { + Object.entries(bundles).forEach(([bundle, shouldBeValid]) => { + describe(name, () => { + it(bundle, () => { + const editor = createHeadlessEditor({ + nodes: BUNDLES['@etuutt/full'], + }); + editor.update(() => { + test(editor); + }); + editor.read(() => + expect(lexicalModule.isValidLexicalContent(JSON.stringify(editor.getEditorState()), bundle)).toBe( + shouldBeValid, + ), + ); + }); + }); + }); + }; + + checkValidityForBundles( + 'Paragraph', + { + '@etuutt/full': true, + '@etuutt/simple': true, + }, + () => $getRoot().append($createParagraphNode().append($createTextNode('Hello World'))), + ); + + checkValidityForBundles( + 'Paragraph with color', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => $getRoot().append($createParagraphNode().append($createColorTextNode('Hello World').setColor('blue'))), + ); + + checkValidityForBundles( + 'Paragraph with link', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => + $getRoot().append( + $createParagraphNode().append($createTextNode('Hello '), $createLinkNode('World').setURL('https://etu.utt.fr')), + ), + ); + + checkValidityForBundles( + 'Paragraph with autolink', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => + $getRoot().append( + $createParagraphNode().append( + $createTextNode('Hello '), + $createAutoLinkNode('World').setURL('https://etu.utt.fr'), + ), + ), + ); + + checkValidityForBundles( + 'Heading', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => $getRoot().append($createHeadingNode().append($createTextNode('Hello heading'))), + ); + + checkValidityForBundles( + 'Quote', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => $getRoot().append($createQuoteNode().append($createTextNode('Hello quote'))), + ); + + checkValidityForBundles( + 'Code', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => $getRoot().append($createCodeNode().append($createTextNode('Hello '), $createCodeHighlightNode('highlight'))), + ); + + checkValidityForBundles( + 'Image', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => $getRoot().append($createParagraphNode().append($createImageNode('https://etu.utt.fr/test.webp'))), + ); + + checkValidityForBundles( + 'Horizontal rule', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => $getRoot().append($createHorizontalRuleNode()), + ); + + checkValidityForBundles( + 'List', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => $getRoot().append($createListNode().append($createListItemNode().append($createTextNode('Item')))), + ); + + checkValidityForBundles( + 'Table', + { + '@etuutt/full': true, + '@etuutt/simple': false, + }, + () => + $getRoot().append( + $createTableNode().append($createTableRowNode().append($createTableCellNode().append($createTextNode('Cell')))), + ), + ); +}); + +export default LexicalValidationUnitSpec; diff --git a/test/unit/timetable/timetable.service.spec.ts b/test/unit/timetable/timetable.service.spec.ts index e7dd9ee1..b7d17c1b 100644 --- a/test/unit/timetable/timetable.service.spec.ts +++ b/test/unit/timetable/timetable.service.spec.ts @@ -5,112 +5,117 @@ import * as fakedb from '../../utils/fakedb'; import { createTimetableEntry, createTimetableEntryOverride } from '../../utils/fakedb'; import { faker } from '@faker-js/faker'; -const TimetableServiceUnitSpec = unitSuite('Timetable.service', (app) => { - let timetableService: TimetableService; - let prisma: PrismaService; - const user1 = fakedb.createUser(app); - const user2 = fakedb.createUser(app); - const everyoneGroup = fakedb.createTimetableGroup(app, { - users: [ - { user: user1, priority: 1 }, - { user: user2, priority: 1 }, - ], - }); - const user1Group = fakedb.createTimetableGroup(app, { users: [{ user: user1, priority: 2 }] }); - const entry = createTimetableEntry(app, { - groups: [everyoneGroup], - repeatEvery: 3_600_000, - occurrenceDuration: 1_000_000, - occurrencesCount: 4, - eventStart: new Date(0), - }); // for everyone - const overrideEntry = createTimetableEntryOverride( - app, - { entry }, - { - groups: [user1Group], - applyFrom: 0, - applyUntil: 0, - location: faker.location.city(), - }, - ); // for user 1 - - beforeAll(() => { - timetableService = app().get(TimetableService); - prisma = app().get(PrismaService); - }); - - it('should return the entry', async () => { - const timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(3_600_000), 8_000_000); - expect(timetable).toHaveLength(3); - for (const occurrence of timetable) { - expect(occurrence.entryId).toEqual(entry.id); - expect([3_600_000, 7_200_000, 10_800_000]).toContain(timetable[0].start.getTime() - entry.eventStart.getTime()); - } - }); - - it('should create an event only for user 1', async () => { - const otherEntry = await createTimetableEntry( +// This check is skipped, please remove the last argument to enable tests +const TimetableServiceUnitSpec = unitSuite( + 'Timetable.service', + (app) => { + let timetableService: TimetableService; + let prisma: PrismaService; + const user1 = fakedb.createUser(app); + const user2 = fakedb.createUser(app); + const everyoneGroup = fakedb.createTimetableGroup(app, { + users: [ + { user: user1, priority: 1 }, + { user: user2, priority: 1 }, + ], + }); + const user1Group = fakedb.createTimetableGroup(app, { users: [{ user: user1, priority: 2 }] }); + const entry = createTimetableEntry(app, { + groups: [everyoneGroup], + repeatEvery: 3_600_000, + occurrenceDuration: 1_000_000, + occurrencesCount: 4, + eventStart: new Date(0), + }); // for everyone + const overrideEntry = createTimetableEntryOverride( app, + { entry }, { groups: [user1Group], - occurrencesCount: 10, - occurrenceDuration: 10, - eventStart: new Date(0), - repeatEvery: 1_000_000, + applyFrom: 0, + applyUntil: 0, + location: faker.location.city(), }, - true, - ); - let timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); - expect(timetable).toHaveLength(2); - timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(0), 1); - expect(timetable).toHaveLength(1); - await prisma.timetableEntry.delete({ where: { id: otherEntry.id } }); - }); + ); // for user 1 - it('should return the primary entry with an override for user1', async () => { - const timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 3_600_001); - expect(timetable).toHaveLength(2); - const indexOfOverwritten = timetable.findIndex((occurrence) => occurrence.entryId === overrideEntry.id); - expect(indexOfOverwritten).not.toEqual(-1); - const indexOfDefault = indexOfOverwritten === 0 ? 1 : 0; - expect(timetable[indexOfOverwritten].index).toEqual(0); - expect(timetable[indexOfOverwritten].location).toEqual(overrideEntry.location); - expect(timetable[indexOfDefault].entryId).toEqual(entry.id); - expect(timetable[indexOfDefault].index).toEqual(1); - expect(timetable[indexOfDefault].location).toEqual(entry.location); - }); + beforeAll(() => { + timetableService = app().get(TimetableService); + prisma = app().get(PrismaService); + }); - it('should return an occurrence of a new override for user2 but not user1, as the priority of this new override is smaller than the one for user1', async () => { - const lessImportantOverride = await fakedb.createTimetableEntryOverride( - app, - { entry }, - { groups: [everyoneGroup], applyFrom: 0, applyUntil: 0 }, - true, - ); - // user 1 : we should still get the override overrideEntry - let timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); - expect(timetable).toHaveLength(1); - expect(timetable[0].entryId).toEqual(overrideEntry.id); - // user2 : we should get the newly created lessImportantOverride - timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(0), 1); - expect(timetable).toHaveLength(1); - expect(timetable[0].entryId).toEqual(lessImportantOverride.id); - await prisma.timetableEntryOverride.delete({ where: { id: lessImportantOverride.id } }); - }); + it('should return the entry', async () => { + const timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(3_600_000), 8_000_000); + expect(timetable).toHaveLength(3); + for (const occurrence of timetable) { + expect(occurrence.entryId).toEqual(entry.id); + expect([3_600_000, 7_200_000, 10_800_000]).toContain(timetable[0].start.getTime() - entry.eventStart.getTime()); + } + }); - it('should have priority over the existing override of user 1, as the new override will be newer', async () => { - const newerOverride = await fakedb.createTimetableEntryOverride( - app, - { entry }, - { groups: [user1Group], applyFrom: 0, applyUntil: 0, location: faker.location.city() }, - true, - ); - const timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); - expect(timetable).toHaveLength(1); - expect(timetable[0].location).toEqual(newerOverride.location); - await prisma.timetableEntryOverride.delete({ where: { id: newerOverride.id } }); - }); -}); + it('should create an event only for user 1', async () => { + const otherEntry = await createTimetableEntry( + app, + { + groups: [user1Group], + occurrencesCount: 10, + occurrenceDuration: 10, + eventStart: new Date(0), + repeatEvery: 1_000_000, + }, + true, + ); + let timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); + expect(timetable).toHaveLength(2); + timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(0), 1); + expect(timetable).toHaveLength(1); + await prisma.timetableEntry.delete({ where: { id: otherEntry.id } }); + }); + + it('should return the primary entry with an override for user1', async () => { + const timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 3_600_001); + expect(timetable).toHaveLength(2); + const indexOfOverwritten = timetable.findIndex((occurrence) => occurrence.entryId === overrideEntry.id); + expect(indexOfOverwritten).not.toEqual(-1); + const indexOfDefault = indexOfOverwritten === 0 ? 1 : 0; + expect(timetable[indexOfOverwritten].index).toEqual(0); + expect(timetable[indexOfOverwritten].location).toEqual(overrideEntry.location); + expect(timetable[indexOfDefault].entryId).toEqual(entry.id); + expect(timetable[indexOfDefault].index).toEqual(1); + expect(timetable[indexOfDefault].location).toEqual(entry.location); + }); + + it('should return an occurrence of a new override for user2 but not user1, as the priority of this new override is smaller than the one for user1', async () => { + const lessImportantOverride = await fakedb.createTimetableEntryOverride( + app, + { entry }, + { groups: [everyoneGroup], applyFrom: 0, applyUntil: 0 }, + true, + ); + // user 1 : we should still get the override overrideEntry + let timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); + expect(timetable).toHaveLength(1); + expect(timetable[0].entryId).toEqual(overrideEntry.id); + // user2 : we should get the newly created lessImportantOverride + timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(0), 1); + expect(timetable).toHaveLength(1); + expect(timetable[0].entryId).toEqual(lessImportantOverride.id); + await prisma.timetableEntryOverride.delete({ where: { id: lessImportantOverride.id } }); + }); + + it('should have priority over the existing override of user 1, as the new override will be newer', async () => { + const newerOverride = await fakedb.createTimetableEntryOverride( + app, + { entry }, + { groups: [user1Group], applyFrom: 0, applyUntil: 0, location: faker.location.city() }, + true, + ); + const timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); + expect(timetable).toHaveLength(1); + expect(timetable[0].location).toEqual(newerOverride.location); + await prisma.timetableEntryOverride.delete({ where: { id: newerOverride.id } }); + }); + }, + true, +); export default TimetableServiceUnitSpec; diff --git a/test/utils/test_utils.ts b/test/utils/test_utils.ts index 2aa4e471..626381e6 100644 --- a/test/utils/test_utils.ts +++ b/test/utils/test_utils.ts @@ -39,9 +39,9 @@ export type AppProvider = E2EAppProvider | UnitAppProvider; * it('should have created a user', async () => expect(user.id).not.toBeUndefined()); * }); */ -function suite(name: string, func: (app: T) => void) { +function suite(name: string, func: (app: T) => void, skip = false) { return (app: T) => - describe(name, () => { + (skip ? describe.skip : describe)(name, () => { beforeAll(async () => { const prisma = app().get(PrismaService); await cleanDb(prisma); From 8c8bad59fcd4a64598e6659c106fc2c35ba8bfa8 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Thu, 23 Oct 2025 19:16:35 +0200 Subject: [PATCH 15/18] fix(tests): skip generation tests, remove res.dto.ts from coverage --- test/jest.json | 2 +- test/unit/lexical/lexical-generation.spec.ts | 13 +- test/unit/timetable/timetable.service.spec.ts | 204 +++++++++--------- test/utils/test_utils.ts | 10 +- 4 files changed, 121 insertions(+), 108 deletions(-) diff --git a/test/jest.json b/test/jest.json index 5f4bc948..f6ca26d2 100644 --- a/test/jest.json +++ b/test/jest.json @@ -7,7 +7,7 @@ "transform": { "^.+\\.(t|j)s$": "ts-jest" }, - "collectCoverageFrom": ["**/*.ts", "!main.ts"], + "collectCoverageFrom": ["**/*.ts", "!main.ts", "!**/*-res.dto.ts"], "coverageDirectory": "coverage", "coverageReporters": ["html", "lcov", "text-summary"] } diff --git a/test/unit/lexical/lexical-generation.spec.ts b/test/unit/lexical/lexical-generation.spec.ts index 3cdef555..8b98acf2 100644 --- a/test/unit/lexical/lexical-generation.spec.ts +++ b/test/unit/lexical/lexical-generation.spec.ts @@ -17,7 +17,8 @@ const LexicalGenerationUnitSpec = unitSuite('Lexical generation', (app) => { result: string, ) => { bundles.forEach((bundle) => { - describe(name, () => { + // These steps are skipped as jest does not support yet pure-esm sub-dependencies + describe.skip(name, () => { it(bundle, () => { const editor = createHeadlessEditor({ nodes: BUNDLES['@etuutt/full'], @@ -39,6 +40,16 @@ const LexicalGenerationUnitSpec = unitSuite('Lexical generation', (app) => { () => $getRoot().append($createParagraphNode().append($createTextNode('Hello World'))), '

    Hello World

    ', ); + + checkExportForBundles( + 'Bold text', + ['@etuutt/full', '@etuutt/simple'], + () => + $getRoot().append( + $createParagraphNode().append($createTextNode('Hello '), $createTextNode('World').setFormat('bold')), + ), + '

    Hello World

    ', + ); }); export default LexicalGenerationUnitSpec; diff --git a/test/unit/timetable/timetable.service.spec.ts b/test/unit/timetable/timetable.service.spec.ts index b7d17c1b..0e689a84 100644 --- a/test/unit/timetable/timetable.service.spec.ts +++ b/test/unit/timetable/timetable.service.spec.ts @@ -6,116 +6,112 @@ import { createTimetableEntry, createTimetableEntryOverride } from '../../utils/ import { faker } from '@faker-js/faker'; // This check is skipped, please remove the last argument to enable tests -const TimetableServiceUnitSpec = unitSuite( - 'Timetable.service', - (app) => { - let timetableService: TimetableService; - let prisma: PrismaService; - const user1 = fakedb.createUser(app); - const user2 = fakedb.createUser(app); - const everyoneGroup = fakedb.createTimetableGroup(app, { - users: [ - { user: user1, priority: 1 }, - { user: user2, priority: 1 }, - ], - }); - const user1Group = fakedb.createTimetableGroup(app, { users: [{ user: user1, priority: 2 }] }); - const entry = createTimetableEntry(app, { - groups: [everyoneGroup], - repeatEvery: 3_600_000, - occurrenceDuration: 1_000_000, - occurrencesCount: 4, - eventStart: new Date(0), - }); // for everyone - const overrideEntry = createTimetableEntryOverride( +const TimetableServiceUnitSpec = unitSuite.skip('Timetable.service', (app) => { + let timetableService: TimetableService; + let prisma: PrismaService; + const user1 = fakedb.createUser(app); + const user2 = fakedb.createUser(app); + const everyoneGroup = fakedb.createTimetableGroup(app, { + users: [ + { user: user1, priority: 1 }, + { user: user2, priority: 1 }, + ], + }); + const user1Group = fakedb.createTimetableGroup(app, { users: [{ user: user1, priority: 2 }] }); + const entry = createTimetableEntry(app, { + groups: [everyoneGroup], + repeatEvery: 3_600_000, + occurrenceDuration: 1_000_000, + occurrencesCount: 4, + eventStart: new Date(0), + }); // for everyone + const overrideEntry = createTimetableEntryOverride( + app, + { entry }, + { + groups: [user1Group], + applyFrom: 0, + applyUntil: 0, + location: faker.location.city(), + }, + ); // for user 1 + + beforeAll(() => { + timetableService = app().get(TimetableService); + prisma = app().get(PrismaService); + }); + + it('should return the entry', async () => { + const timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(3_600_000), 8_000_000); + expect(timetable).toHaveLength(3); + for (const occurrence of timetable) { + expect(occurrence.entryId).toEqual(entry.id); + expect([3_600_000, 7_200_000, 10_800_000]).toContain(timetable[0].start.getTime() - entry.eventStart.getTime()); + } + }); + + it('should create an event only for user 1', async () => { + const otherEntry = await createTimetableEntry( app, - { entry }, { groups: [user1Group], - applyFrom: 0, - applyUntil: 0, - location: faker.location.city(), + occurrencesCount: 10, + occurrenceDuration: 10, + eventStart: new Date(0), + repeatEvery: 1_000_000, }, - ); // for user 1 - - beforeAll(() => { - timetableService = app().get(TimetableService); - prisma = app().get(PrismaService); - }); - - it('should return the entry', async () => { - const timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(3_600_000), 8_000_000); - expect(timetable).toHaveLength(3); - for (const occurrence of timetable) { - expect(occurrence.entryId).toEqual(entry.id); - expect([3_600_000, 7_200_000, 10_800_000]).toContain(timetable[0].start.getTime() - entry.eventStart.getTime()); - } - }); + true, + ); + let timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); + expect(timetable).toHaveLength(2); + timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(0), 1); + expect(timetable).toHaveLength(1); + await prisma.timetableEntry.delete({ where: { id: otherEntry.id } }); + }); - it('should create an event only for user 1', async () => { - const otherEntry = await createTimetableEntry( - app, - { - groups: [user1Group], - occurrencesCount: 10, - occurrenceDuration: 10, - eventStart: new Date(0), - repeatEvery: 1_000_000, - }, - true, - ); - let timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); - expect(timetable).toHaveLength(2); - timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(0), 1); - expect(timetable).toHaveLength(1); - await prisma.timetableEntry.delete({ where: { id: otherEntry.id } }); - }); + it('should return the primary entry with an override for user1', async () => { + const timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 3_600_001); + expect(timetable).toHaveLength(2); + const indexOfOverwritten = timetable.findIndex((occurrence) => occurrence.entryId === overrideEntry.id); + expect(indexOfOverwritten).not.toEqual(-1); + const indexOfDefault = indexOfOverwritten === 0 ? 1 : 0; + expect(timetable[indexOfOverwritten].index).toEqual(0); + expect(timetable[indexOfOverwritten].location).toEqual(overrideEntry.location); + expect(timetable[indexOfDefault].entryId).toEqual(entry.id); + expect(timetable[indexOfDefault].index).toEqual(1); + expect(timetable[indexOfDefault].location).toEqual(entry.location); + }); - it('should return the primary entry with an override for user1', async () => { - const timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 3_600_001); - expect(timetable).toHaveLength(2); - const indexOfOverwritten = timetable.findIndex((occurrence) => occurrence.entryId === overrideEntry.id); - expect(indexOfOverwritten).not.toEqual(-1); - const indexOfDefault = indexOfOverwritten === 0 ? 1 : 0; - expect(timetable[indexOfOverwritten].index).toEqual(0); - expect(timetable[indexOfOverwritten].location).toEqual(overrideEntry.location); - expect(timetable[indexOfDefault].entryId).toEqual(entry.id); - expect(timetable[indexOfDefault].index).toEqual(1); - expect(timetable[indexOfDefault].location).toEqual(entry.location); - }); - - it('should return an occurrence of a new override for user2 but not user1, as the priority of this new override is smaller than the one for user1', async () => { - const lessImportantOverride = await fakedb.createTimetableEntryOverride( - app, - { entry }, - { groups: [everyoneGroup], applyFrom: 0, applyUntil: 0 }, - true, - ); - // user 1 : we should still get the override overrideEntry - let timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); - expect(timetable).toHaveLength(1); - expect(timetable[0].entryId).toEqual(overrideEntry.id); - // user2 : we should get the newly created lessImportantOverride - timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(0), 1); - expect(timetable).toHaveLength(1); - expect(timetable[0].entryId).toEqual(lessImportantOverride.id); - await prisma.timetableEntryOverride.delete({ where: { id: lessImportantOverride.id } }); - }); + it('should return an occurrence of a new override for user2 but not user1, as the priority of this new override is smaller than the one for user1', async () => { + const lessImportantOverride = await fakedb.createTimetableEntryOverride( + app, + { entry }, + { groups: [everyoneGroup], applyFrom: 0, applyUntil: 0 }, + true, + ); + // user 1 : we should still get the override overrideEntry + let timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); + expect(timetable).toHaveLength(1); + expect(timetable[0].entryId).toEqual(overrideEntry.id); + // user2 : we should get the newly created lessImportantOverride + timetable = await timetableService.getTimetableOfUserInNextXMs(user2.id, new Date(0), 1); + expect(timetable).toHaveLength(1); + expect(timetable[0].entryId).toEqual(lessImportantOverride.id); + await prisma.timetableEntryOverride.delete({ where: { id: lessImportantOverride.id } }); + }); - it('should have priority over the existing override of user 1, as the new override will be newer', async () => { - const newerOverride = await fakedb.createTimetableEntryOverride( - app, - { entry }, - { groups: [user1Group], applyFrom: 0, applyUntil: 0, location: faker.location.city() }, - true, - ); - const timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); - expect(timetable).toHaveLength(1); - expect(timetable[0].location).toEqual(newerOverride.location); - await prisma.timetableEntryOverride.delete({ where: { id: newerOverride.id } }); - }); - }, - true, -); + it('should have priority over the existing override of user 1, as the new override will be newer', async () => { + const newerOverride = await fakedb.createTimetableEntryOverride( + app, + { entry }, + { groups: [user1Group], applyFrom: 0, applyUntil: 0, location: faker.location.city() }, + true, + ); + const timetable = await timetableService.getTimetableOfUserInNextXMs(user1.id, new Date(0), 1); + expect(timetable).toHaveLength(1); + expect(timetable[0].location).toEqual(newerOverride.location); + await prisma.timetableEntryOverride.delete({ where: { id: newerOverride.id } }); + }); +}); export default TimetableServiceUnitSpec; diff --git a/test/utils/test_utils.ts b/test/utils/test_utils.ts index 626381e6..99384b61 100644 --- a/test/utils/test_utils.ts +++ b/test/utils/test_utils.ts @@ -39,9 +39,9 @@ export type AppProvider = E2EAppProvider | UnitAppProvider; * it('should have created a user', async () => expect(user.id).not.toBeUndefined()); * }); */ -function suite(name: string, func: (app: T) => void, skip = false) { +function suite(name: string, func: (app: T) => void) { return (app: T) => - (skip ? describe.skip : describe)(name, () => { + describe(name, () => { beforeAll(async () => { const prisma = app().get(PrismaService); await cleanDb(prisma); @@ -51,6 +51,12 @@ function suite(name: string, func: (app: T) => void, skip func(app); }); } +suite.skip = + (name: string, func: (app: T) => void) => + (app: T) => + describe.skip(name, () => { + func(app); + }); /** * Creates a suite for e2e testing. It works the same as {@link describe}, but it cleans the database before each suite. From bca64e27cd8758faeda745a277bad25afbfdf7b7 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Thu, 23 Oct 2025 21:22:24 +0200 Subject: [PATCH 16/18] docs: add some docs, add doc build ci --- .github/workflows/ci.yaml | 25 ++++++++ docs/conf.py | 3 +- docs/doc_developers/api/index.md | 5 ++ docs/doc_developers/api/lexical.md | 88 ++++++++++++++++++++++++++ docs/doc_developers/api/nestjs.md | 4 +- docs/doc_developers/api/setup.md | 10 +-- package.json | 2 + src/lexical/lexical.module.ts | 22 +++++++ src/lexical/nodes/NodeStyleInjector.ts | 6 +- src/lexical/nodes/index.ts | 4 ++ 10 files changed, 158 insertions(+), 11 deletions(-) create mode 100644 docs/doc_developers/api/lexical.md diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 52ebd9c6..907c08ca 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -50,6 +50,31 @@ jobs: - run: pnpm prisma generate - run: pnpm build + docs: + runs-on: self-hosted + strategy: + matrix: + node-version: [22] + pnpm-version: [10] + steps: + - uses: actions/checkout@v5 + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: ${{ matrix.pnpm-version }} + - name: Use Node.js + uses: actions/setup-node@v6 + with: + package-manager-cache: false + node-version: ${{ matrix.node-version }} + cache: 'pnpm' + - name: Use Python + uses: actions/setup-python@v6 + with: + python-version: '3.14' + - run: pnpm build:docs:configure + - run: pnpm build:docs + test: runs-on: self-hosted strategy: diff --git a/docs/conf.py b/docs/conf.py index 97d25c49..3678321c 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -64,4 +64,5 @@ '.md': 'markdown', } -myst_enable_extensions = ["attrs_inline"] \ No newline at end of file +myst_enable_extensions = ["attrs_inline"] +myst_heading_anchors = 4 \ No newline at end of file diff --git a/docs/doc_developers/api/index.md b/docs/doc_developers/api/index.md index 2950cccd..4abd1305 100644 --- a/docs/doc_developers/api/index.md +++ b/docs/doc_developers/api/index.md @@ -10,6 +10,11 @@ setup.md nestjs.md conventions.md test.md +documentation.md +errors.md +permissions.md +lexical.md ues.md timetables.md +scripts.md ``` diff --git a/docs/doc_developers/api/lexical.md b/docs/doc_developers/api/lexical.md new file mode 100644 index 00000000..a4ce5b3d --- /dev/null +++ b/docs/doc_developers/api/lexical.md @@ -0,0 +1,88 @@ +# Texte formatable + +```{danger} +*Le texte formatable est un **sujet de travail actuel**. Son implémentation est susceptible de changer.* \ +Par ailleurs, il est possible que cette fonctionnalité soit séparée dans un package nodejs indépendant. +``` + +A certains endroits du site étu, les utilisateurs pourront formatter du texte. Nous avons décidé de nous baser sur une bibliothèque, [lexical](https://lexical.dev) ([github](https://github.com/facebook/lexical)). Bien que l'utilisateur puisse envoyer du contenu formatté sur à peu près n'importe quel champ texte de l'api (à condition de respecter la limite de caractères), il n'y a que quelques champs qui supportent réellement le texte formatté. + +```{warning} +Les champs qui ne supportent pas le texte formatté acceptent **pour le moment** des inputs formattés. Cependant, ces champs ne seront pas traités comme telles par les applications front-end (comme le front du site étu). Cela peut donner lieu à un affichage considéré comme buggé si la feature est mal utilisée par certaines implémentations front-end ! +``` + +## Abbréviations dans ce document + +Nous utiliserons dans ce documents les abbréviations/anglicismes suivantes : + +- RTE: Rich Text Editor, l'éditeur de texte dans lequel l'utilisateur peut formater du texte +- Renderer: côté serveur, la fonction qui transforme du contenu lexical en html +- Document Object Model (DOM): la structure d'un document, généralement HTML. On l'utilisera ici pour parler de tout ce qui est relatif à l'affichage du texte formatable. + +## Les bundles + +Un bundle est la définition de l'ensemble des contenus supportés par une zone de texte formatable. Il contient des [nodes](#node) et, pour le front, des [plugins](#plugin) et des [composants de toolbar](#composant-de-toolbar). +La définition d'un bundle permet de configurer plusieurs RTE ou Renderers de manière identique. + +Détaillons maintenant les différents éléments contenu dans un bundle : + +### Node + +Une node est une partie du texte ou un élément visuel que l'utilisateur peut ajouter à son texte. Il peut s'agir par exemple d'images, d'émojis customs, ou de texte avec un fond coloré. +Pour créer de nouvelles capacités/de nouveaux éléments dans le texte formatté, la première étape est de créer une `class` qui hérite de `ElementNode`, `TextNode` ou `DecoratorNode`. Pour voir les méthodes à implémenter, regarde [la doc de lexical](https://lexical.dev/docs/concepts/nodes#creating-custom-nodes). Comme indiqué plus bas dans la doc, tu peux utiliser [`$config` et ne pas implémenter les 3 fonctions statiques](https://lexical.dev/docs/concepts/nodes#extending-elementnode-with-config). + +```{tip} +Seule les `DecoratorNode` pourront être rendues avec une ReactNode côté front (cf. `DecoratorNode#decorate`). Si tu n'as pas envie d'écrire des opérations DOM, cela peut être une bonne solution 😉 +``` + +Lorsque tu appliques des classes à des éléments, fais bien attention à prendre celles du thème de l'éditeur, `editor.theme[className]`. Tu pourrais sinon oublier de les implémenter de l'autre côté (serveur/client) et le rendu serait alors différent ! + +Si tu souhaites remplacer une node déjà définie, tu peux enregistrer des [remplacements](https://lexical.dev/docs/concepts/node-replacement). Cela t'évitera de devoir copier-coller tout son code, et à chaque fois qu'une node remplacée sera créée, elle sera transformée en ta nouvelle node à l'aide de la fonction que tu auras définie ! + +### Plugin + +Les plugins n'existent que côté front-end. Ce sont eux qui vont ajouter de la logique, tu vas pouvoir: + +- écouter des [évènements](https://lexical.dev/docs/concepts/commands), à l'aide de `editor.registerCommand()` +- enregistrer des [transformers](https://lexical.dev/docs/concepts/transforms) avec `editor.registerNodeTransform()` +- en react, utiliser `useEffect` +- rendre un élément supplémentaire, un overlay par exemple + +```{admonition} TLDR +:class: tip +Un transformer, c'est du code qui va te permettre de transformer du contenu dans le RTE au fur et à mesure qu'il est ajouté. Par exemple, tu peux transformer automatiquement `:joy:` en l'émoji correspondant, 😂. +``` + +### Composant de toolbar + +Ce qui permettra à l'utilisateur d'intéragir avec tes nodes depuis une interface. + +A l'heure actuelle, ces composants n'existent pas encore en tant que tel et font partie du composant `ToolbarPlugin`. Leur future séparation permettra d'ajouter facilement des composants (boutons, etc) custom dans cette toolbar. + +## Côté serveur + +Bien que le serveur n'ait pas à gérer l'édition en temps réel, il doit pouvoir effectuer quelques opérations sur le contenu généré par l'utilisateur. Cela inclut la validation du contenu lexical et l'export en HTML (pour pouvoir l'utiliser dans des emails par exemple). + +```{admonition} Structure Lexical +La structure envoyée entre le client est le front est un JSON (créé avec `LexicalNode#exportJSON`). Il contient les nodes imbriquées les unes dans les autres. +``` + +### La validation + +La validation vérifie que le contenu fourni utilisateur a bien une structure comprise par le serveur. Cela vérifie : + +- que c'est bien du JSON +- que l'éditeur lexical le comprend +- qu'il n'y a pas de node absente du bundle +- qu'il n'y a pas de propriétés inconnues sur les nodes + +```{attention} +Les propriétés des nodes doivent apparaitre dans le même sens lors de l'exportJSON côté front et côté serveur. +``` + +### Le rendu + +Le rendu permet au serveur de transformer du contenu lexical en html. Il faut faire attention à deux points ici : + +- les méthodes `DecoratorNode#decorate` doivent être enlevées et le contenu de la node doit être traduit en instructions DOM dans `DecoratorNode#createDOM` +- les styles appliqués sur le front doivent être réappliqués sur le DOM produit sur l'API. Cela peut nécessiter des modifications structurelles dans l'HTML généré. En cas de besoin, il est possible d'ajouter des conditions spécifiques dans `NodeStyleInjector.ts` diff --git a/docs/doc_developers/api/nestjs.md b/docs/doc_developers/api/nestjs.md index 345f35d7..3abf8333 100644 --- a/docs/doc_developers/api/nestjs.md +++ b/docs/doc_developers/api/nestjs.md @@ -228,7 +228,7 @@ export class DummyModule {} ``` ```{tip} -L'API de EtuUTT utilise des guards personnalisés, ils sont listés [ici](#outils-specifiques-de-etuutt). +L'API de EtuUTT utilise des guards personnalisés, ils sont listés [ici](#outils-spécifiques-du-site-étu). ``` ### Les interceptors [_(docs)_](https://docs.nestjs.com/interceptors) @@ -292,7 +292,7 @@ Voici une illustration qui permet de récapituler les différentes étapes dans ### La gestion des erreurs -Nous avons implémenté des messages d'erreurs customisés, voir la page sur [la gestion des erreurs](). +Nous avons implémenté des messages d'erreurs customisés, voir la page sur [la gestion des erreurs](errors.md). ### L'authentification nécessaire par défaut diff --git a/docs/doc_developers/api/setup.md b/docs/doc_developers/api/setup.md index 3c8025b1..82112afc 100644 --- a/docs/doc_developers/api/setup.md +++ b/docs/doc_developers/api/setup.md @@ -171,14 +171,10 @@ Les tests sont tous lancés. Au bout de quelques secondes / minutes, tous les te Pour cela, vous devez avoir Python3 installé. -Il faut commencer par installer les dépendances : - ```bash -# Pour les commandes pip, il est possible d'utiliser python -m pip (ou python3 -m pip) à la place de pip. -cd docs -pip install --upgrade pip setuptools sphinx readthedocs-sphinx-ext -pip install -r docs/requirements.txt -python -m sphinx -T -b html -d _build/doctrees -D language=fr . build/html +# Pour la première commande, il faut la faire uniquement la première fois, elle va installer les dépendances python +pnpm build:docs:configure +pnpm build:docs ``` Le résultat du build se situe alors dans `docs/build/html`. Le fichier racine est `index.html`. Le résultat de la diff --git a/package.json b/package.json index 0ecb4f52..0737f38e 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,8 @@ "license": "UNLICENSED", "scripts": { "build": "npx nest build", + "build:docs": "python3 -m sphinx -W -T -b html -d docs/build/doctrees -D language=fr docs docs/build/html", + "build:docs:configure": "pip install --upgrade pip setuptools sphinx readthedocs-sphinx-ext && pip install -r docs/requirements.txt", "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"", "start": "NODE_ENV=development npx nest start", "start:dev": "NODE_ENV=development npx nest start --watch", diff --git a/src/lexical/lexical.module.ts b/src/lexical/lexical.module.ts index 80e5377f..2d36b682 100644 --- a/src/lexical/lexical.module.ts +++ b/src/lexical/lexical.module.ts @@ -40,6 +40,18 @@ export class LexicalModule { [TextNode, ParagraphNode, ...BUNDLES['@etuutt/full']].forEach(patchNodeExportDOM); } + /** + * Validates the user-provided string as valid Lexical content. Checks both structure and content. + * + * Checks that the content only contains nodes from the provided bundle (you can define custom bundles in {@link BUNDLES}). + * This check is performed by parsing the content and re-serializing it, then comparing the result to the original input. + * This forbids the use of unknown nodes as well as unknown properties. However, the client implementation is supposed to + * serialize nodes the same way as the API does so that properties are in the same order. + * + * @param userInput the string provided by the user + * @param bundle the bundle of allowed nodes (default: full bundle) + * @returns true if the content is valid, false otherwise + */ isValidLexicalContent(userInput: string, bundle: keyof typeof BUNDLES = '@etuutt/full') { try { const editor = createHeadlessEditor({ @@ -54,6 +66,16 @@ export class LexicalModule { } } + /** + * Generates HTML from lexical content. Nodes not in included the bundle are ignored. The output is sanitized (by happy-dom) and + * contains inline-styles instead of classes, for email use. Inline style is defined in the {@link CustomStyles} (./nodes/index.ts). + * + * This function can not be used in a jest context as it relies on happy-dom to provide a DOM implementation. + * + * @param lexicalContent the lexical content to convert + * @param bundle the bundle of allowed nodes (default: full bundle) + * @returns the generated HTML + */ async generateHTML(lexicalContent: string, bundle: keyof typeof BUNDLES = '@etuutt/full'): Promise { let html = ''; const { withDOM } = (await new Function( diff --git a/src/lexical/nodes/NodeStyleInjector.ts b/src/lexical/nodes/NodeStyleInjector.ts index 4e1aa635..cc257900 100644 --- a/src/lexical/nodes/NodeStyleInjector.ts +++ b/src/lexical/nodes/NodeStyleInjector.ts @@ -3,6 +3,7 @@ import { TableCellNode } from '@lexical/table'; import { LexicalNode } from 'lexical'; import { CustomStyles } from '.'; +/** Applies style to a specific Node */ function applyStylesToElement(element: HTMLElement, index: number, node?: LexicalNode) { element.classList.forEach((cName) => { if (!(cName in CustomStyles)) return; @@ -27,6 +28,9 @@ function applyStylesToElement(element: HTMLElement, index: number, node?: Lexica element.className = ''; } +/** + * Patches the exportDOM method of a Lexical Node to inject inline styles based on class names. + */ export function patchNodeExportDOM( NodeClass: new (...args: unknown[]) => T extends (infer U)[] ? U : never, ) { @@ -48,7 +52,7 @@ export function patchNodeExportDOM( return result; }; - + // Remove warning of having no importDOM method if ((NodeClass as unknown) === CodeHighlightNode) { Object.defineProperty(NodeClass, 'importDOM', { value: () => null, diff --git a/src/lexical/nodes/index.ts b/src/lexical/nodes/index.ts index 37d2f8d9..48492699 100644 --- a/src/lexical/nodes/index.ts +++ b/src/lexical/nodes/index.ts @@ -13,6 +13,10 @@ export type RegisteredStyleMap = { : keyof typeof CustomStyles; }; +/** + * Style to apply to elements of lexical content during HTML export. + * Every key represents a class name that can be applied to lexical nodes. + */ export const CustomStyles = { 'editor-image': { maxWidth: '100%', From 34875dc7f4ed1c1d229d56ecfe600a66e285bf46 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Thu, 23 Oct 2025 21:47:31 +0200 Subject: [PATCH 17/18] docs: pimp docs with new theme --- docs/conf.py | 4 ++-- docs/requirements.txt | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 3678321c..06943d99 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -18,7 +18,7 @@ # -- Project information ----------------------------------------------------- project = 'EtuUTT' -copyright = '2024, UTT Net Group' +copyright = '2025, UTT Net Group' author = 'UTT Net Group' @@ -52,7 +52,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. # -html_theme = 'sphinx_rtd_theme' +html_theme = 'shibuya' # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, diff --git a/docs/requirements.txt b/docs/requirements.txt index c00cdf64..268bb648 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,3 +1,3 @@ myst-parser sphinx -sphinx-rtd-theme \ No newline at end of file +shibuya From 2cf66cf57b7552b07f243770ef4d342e6e5c6b11 Mon Sep 17 00:00:00 2001 From: AlbanSdl Date: Thu, 23 Oct 2025 23:45:06 +0200 Subject: [PATCH 18/18] docs: update some layout settings --- docs/conf.py | 7 +++++++ docs/doc_developers/api/index.md | 2 +- docs/doc_developers/front/index.md | 2 +- docs/doc_developers/index.md | 2 +- docs/doc_developers/mobile_app/index.md | 2 +- docs/logo.svg | 5 +++++ 6 files changed, 16 insertions(+), 4 deletions(-) create mode 100644 docs/logo.svg diff --git a/docs/conf.py b/docs/conf.py index 06943d99..1b94680b 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -53,6 +53,13 @@ # a list of builtin themes. # html_theme = 'shibuya' +html_theme_options = { + "accent_color": "blue", + "github_url": "https://github.com/ungdev/etu-utt-api", + "announcement": "
    Le site étu est toujours en cours de développement : la documentation est en cours d'écriture et peux être incomplète/incorrecte.
    ", +} +html_favicon = "logo.svg" +html_logo = "logo.svg" # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, diff --git a/docs/doc_developers/api/index.md b/docs/doc_developers/api/index.md index 4abd1305..b1b0ffbb 100644 --- a/docs/doc_developers/api/index.md +++ b/docs/doc_developers/api/index.md @@ -1,4 +1,4 @@ -# Documentation développeurs - API +# API Cette documentation s'adresse aux développeurs de l'API de EtuUTT. Elle traite des aspects techniques la concernant : outils utilisés, outils développés, choix faits, ... diff --git a/docs/doc_developers/front/index.md b/docs/doc_developers/front/index.md index 3b908059..424d5fee 100644 --- a/docs/doc_developers/front/index.md +++ b/docs/doc_developers/front/index.md @@ -1,4 +1,4 @@ -# Documentation développeurs - Site web +# Site web Cette documentation s'adresse aux développeurs du site web de EtuUTT. Elle traite des aspects techniques le concernant : outils utilisés, outils développés, choix faits, ... diff --git a/docs/doc_developers/index.md b/docs/doc_developers/index.md index bf45e07e..bc9bc5fc 100644 --- a/docs/doc_developers/index.md +++ b/docs/doc_developers/index.md @@ -1,4 +1,4 @@ -# Documentation développeurs +# Développeurs Cette documentation s'adresse aux développeurs de EtuUTT. Elle traite des aspects techniques de l'API, de l'application mobile et du site web : outils utilisés, outils développés, choix faits, ... diff --git a/docs/doc_developers/mobile_app/index.md b/docs/doc_developers/mobile_app/index.md index ad04e552..d199d803 100644 --- a/docs/doc_developers/mobile_app/index.md +++ b/docs/doc_developers/mobile_app/index.md @@ -1,4 +1,4 @@ -# Documentation EtuUTT - Application mobile +# Application mobile Cette documentation s'adresse aux développeurs de l'appli MyUTT. Elle traite des aspects techniques la concernant : outils utilisés, outils développés, choix faits, ... diff --git a/docs/logo.svg b/docs/logo.svg new file mode 100644 index 00000000..19aea1ff --- /dev/null +++ b/docs/logo.svg @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file